diff --git a/src/commands/build.ts b/src/commands/build.ts index f9557f9e..e28a96ee 100644 --- a/src/commands/build.ts +++ b/src/commands/build.ts @@ -19,6 +19,7 @@ export default (api: IApi) => { api.service.configManager!.mainConfigFile, ].filter(Boolean) as string[], }); + await api.applyPlugins({ key: 'onAllBuildComplete' }); }, }); }; diff --git a/src/registerMethods.ts b/src/registerMethods.ts index 9525eab6..7a848ff0 100644 --- a/src/registerMethods.ts +++ b/src/registerMethods.ts @@ -6,6 +6,7 @@ export default (api: IApi) => { 'addRegularCheckup', 'addSourceCheckup', 'addImportsCheckup', + 'onAllBuildComplete', ].forEach((name) => { api.registerMethod({ name }); }); diff --git a/src/types.ts b/src/types.ts index 7de151e4..fb973ffe 100644 --- a/src/types.ts +++ b/src/types.ts @@ -68,6 +68,11 @@ export type IApi = PluginAPI & */ config: Omit; userConfig: IFatherConfig; + + /** + * lifecycle + */ + onAllBuildComplete: () => void; }; export enum IFatherBuildTypes {