@teambit/application 0.0.755 → 0.0.757
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app-context.js.map +1 -1
- package/dist/app-list.cmd.js.map +1 -1
- package/dist/app-server.js.map +1 -1
- package/dist/app-type-list.js.map +1 -1
- package/dist/app-type.plugin.js.map +1 -1
- package/dist/app.cmd.js.map +1 -1
- package/dist/app.plugin.js +1 -3
- package/dist/app.plugin.js.map +1 -1
- package/dist/application.aspect.js.map +1 -1
- package/dist/application.composition.js.map +1 -1
- package/dist/application.main.runtime.js +4 -0
- package/dist/application.main.runtime.js.map +1 -1
- package/dist/application.service.js.map +1 -1
- package/dist/build-application.task.js.map +1 -1
- package/dist/deploy.task.js.map +1 -1
- package/dist/exceptions/app-no-ssr.js.map +1 -1
- package/dist/exceptions/app-not-found.js.map +1 -1
- package/dist/exceptions/index.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/{preview-1689995873460.js → preview-1690254961496.js} +2 -2
- package/dist/run.cmd.js.map +1 -1
- package/package-tar/teambit-application-0.0.757.tgz +0 -0
- package/package.json +12 -12
- package/package-tar/teambit-application-0.0.755.tgz +0 -0
package/dist/app-context.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AppContext","ExecutionContext","constructor","appName","dev","appComponent","workdir","execContext","hostRootDir","port","upper","envRuntime","components"],"sources":["app-context.ts"],"sourcesContent":["import { ExecutionContext } from '@teambit/envs';\nimport { Component } from '@teambit/component';\n\nexport class AppContext extends ExecutionContext {\n constructor(\n readonly appName: string,\n\n /**\n * determine whether to serve the application in dev mode.\n */\n readonly dev: boolean,\n\n readonly appComponent: Component,\n\n readonly workdir: string,\n\n execContext: ExecutionContext,\n\n /**\n * A path for the host root dir\n * Host root dir is the dir where we run the app from\n * This can be used in different bundle options which run require.resolve\n * for example when configuring webpack aliases or webpack expose loader on the peers deps\n */\n readonly hostRootDir?: string,\n\n /**\n * A port to run the app on\n */\n readonly port?: number\n ) {\n super(execContext.upper, execContext.envRuntime, execContext.components);\n }\n // static fromExecContext() {\n // return new AppContext();\n // }\n}\n"],"mappings":";;;;;;AAAA;EAAA;
|
|
1
|
+
{"version":3,"names":["_envs","data","require","AppContext","ExecutionContext","constructor","appName","dev","appComponent","workdir","execContext","hostRootDir","port","upper","envRuntime","components","exports"],"sources":["app-context.ts"],"sourcesContent":["import { ExecutionContext } from '@teambit/envs';\nimport { Component } from '@teambit/component';\n\nexport class AppContext extends ExecutionContext {\n constructor(\n readonly appName: string,\n\n /**\n * determine whether to serve the application in dev mode.\n */\n readonly dev: boolean,\n\n readonly appComponent: Component,\n\n readonly workdir: string,\n\n execContext: ExecutionContext,\n\n /**\n * A path for the host root dir\n * Host root dir is the dir where we run the app from\n * This can be used in different bundle options which run require.resolve\n * for example when configuring webpack aliases or webpack expose loader on the peers deps\n */\n readonly hostRootDir?: string,\n\n /**\n * A port to run the app on\n */\n readonly port?: number\n ) {\n super(execContext.upper, execContext.envRuntime, execContext.components);\n }\n // static fromExecContext() {\n // return new AppContext();\n // }\n}\n"],"mappings":";;;;;;AAAA,SAAAA,MAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,KAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGO,MAAME,UAAU,SAASC,wBAAgB,CAAC;EAC/CC,WAAWA,CACAC,OAAe;EAExB;AACJ;AACA;EACaC,GAAY,EAEZC,YAAuB,EAEvBC,OAAe,EAExBC,WAA6B;EAE7B;AACJ;AACA;AACA;AACA;AACA;EACaC,WAAoB;EAE7B;AACJ;AACA;EACaC,IAAa,EACtB;IACA,KAAK,CAACF,WAAW,CAACG,KAAK,EAAEH,WAAW,CAACI,UAAU,EAAEJ,WAAW,CAACK,UAAU,CAAC;IAAC,KA1BhET,OAAe,GAAfA,OAAe;IAAA,KAKfC,GAAY,GAAZA,GAAY;IAAA,KAEZC,YAAuB,GAAvBA,YAAuB;IAAA,KAEvBC,OAAe,GAAfA,OAAe;IAAA,KAUfE,WAAoB,GAApBA,WAAoB;IAAA,KAKpBC,IAAa,GAAbA,IAAa;EAGxB;EACA;EACA;EACA;AACF;AAACI,OAAA,CAAAb,UAAA,GAAAA,UAAA"}
|
package/dist/app-list.cmd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AppListCmdDeprecated","constructor","applicationAspect","report","args","json","apps","listApps","JSON","stringify","deprecationStr","console","log","chalk","red","length","yellow","rows","map","app","name","table","CLITable","render"],"sources":["app-list.cmd.tsx"],"sourcesContent":["import { Command, CommandOptions } from '@teambit/cli';\n// import { Logger } from '@teambit/logger';\nimport chalk from 'chalk';\nimport { CLITable } from '@teambit/cli-table';\nimport { ApplicationMain } from './application.main.runtime';\n\n/**\n * @deprecated use AppListCmd class\n */\nexport class AppListCmdDeprecated implements Command {\n name = 'app-list';\n description = 'DEPRECATED. use \"bit app list\"';\n alias = '';\n private = true;\n group = 'apps';\n options = [['j', 'json', 'return the component data in json format']] as CommandOptions;\n\n constructor(private applicationAspect: ApplicationMain) {}\n\n async report(args: [string], { json }: { json: boolean }) {\n const apps = this.applicationAspect.listApps();\n if (json) return JSON.stringify(apps, null, 2);\n const deprecationStr = `this command is deprecated. please use \"bit app list\" instead\\n`;\n // eslint-disable-next-line no-console\n console.log(chalk.red());\n if (!apps.length) return chalk.yellow(`${deprecationStr}no apps found`);\n\n const rows = apps.map((app) => {\n return [app.name];\n });\n\n const table = new CLITable([], rows);\n return deprecationStr + table.render();\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AAEA;EAAA;
|
|
1
|
+
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_cliTable","AppListCmdDeprecated","constructor","applicationAspect","_defineProperty2","default","report","args","json","apps","listApps","JSON","stringify","deprecationStr","console","log","chalk","red","length","yellow","rows","map","app","name","table","CLITable","render","exports"],"sources":["app-list.cmd.tsx"],"sourcesContent":["import { Command, CommandOptions } from '@teambit/cli';\n// import { Logger } from '@teambit/logger';\nimport chalk from 'chalk';\nimport { CLITable } from '@teambit/cli-table';\nimport { ApplicationMain } from './application.main.runtime';\n\n/**\n * @deprecated use AppListCmd class\n */\nexport class AppListCmdDeprecated implements Command {\n name = 'app-list';\n description = 'DEPRECATED. use \"bit app list\"';\n alias = '';\n private = true;\n group = 'apps';\n options = [['j', 'json', 'return the component data in json format']] as CommandOptions;\n\n constructor(private applicationAspect: ApplicationMain) {}\n\n async report(args: [string], { json }: { json: boolean }) {\n const apps = this.applicationAspect.listApps();\n if (json) return JSON.stringify(apps, null, 2);\n const deprecationStr = `this command is deprecated. please use \"bit app list\" instead\\n`;\n // eslint-disable-next-line no-console\n console.log(chalk.red());\n if (!apps.length) return chalk.yellow(`${deprecationStr}no apps found`);\n\n const rows = apps.map((app) => {\n return [app.name];\n });\n\n const table = new CLITable([], rows);\n return deprecationStr + table.render();\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AAEA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,UAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,SAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAFA;;AAKA;AACA;AACA;AACO,MAAMI,oBAAoB,CAAoB;EAQnDC,WAAWA,CAASC,iBAAkC,EAAE;IAAA,KAApCA,iBAAkC,GAAlCA,iBAAkC;IAAA,IAAAC,gBAAA,GAAAC,OAAA,gBAP/C,UAAU;IAAA,IAAAD,gBAAA,GAAAC,OAAA,uBACH,gCAAgC;IAAA,IAAAD,gBAAA,GAAAC,OAAA,iBACtC,EAAE;IAAA,IAAAD,gBAAA,GAAAC,OAAA,mBACA,IAAI;IAAA,IAAAD,gBAAA,GAAAC,OAAA,iBACN,MAAM;IAAA,IAAAD,gBAAA,GAAAC,OAAA,mBACJ,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,0CAA0C,CAAC,CAAC;EAEZ;EAEzD,MAAMC,MAAMA,CAACC,IAAc,EAAE;IAAEC;EAAwB,CAAC,EAAE;IACxD,MAAMC,IAAI,GAAG,IAAI,CAACN,iBAAiB,CAACO,QAAQ,CAAC,CAAC;IAC9C,IAAIF,IAAI,EAAE,OAAOG,IAAI,CAACC,SAAS,CAACH,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,MAAMI,cAAc,GAAI,iEAAgE;IACxF;IACAC,OAAO,CAACC,GAAG,CAACC,gBAAK,CAACC,GAAG,CAAC,CAAC,CAAC;IACxB,IAAI,CAACR,IAAI,CAACS,MAAM,EAAE,OAAOF,gBAAK,CAACG,MAAM,CAAE,GAAEN,cAAe,eAAc,CAAC;IAEvE,MAAMO,IAAI,GAAGX,IAAI,CAACY,GAAG,CAAEC,GAAG,IAAK;MAC7B,OAAO,CAACA,GAAG,CAACC,IAAI,CAAC;IACnB,CAAC,CAAC;IAEF,MAAMC,KAAK,GAAG,KAAIC,oBAAQ,EAAC,EAAE,EAAEL,IAAI,CAAC;IACpC,OAAOP,cAAc,GAAGW,KAAK,CAACE,MAAM,CAAC,CAAC;EACxC;AACF;AAACC,OAAA,CAAA1B,oBAAA,GAAAA,oBAAA"}
|
package/dist/app-server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AppServer","constructor","app","name"],"sources":["app-server.ts"],"sourcesContent":["import { Application } from './application';\n\nexport class AppServer {\n constructor(private app: Application) {}\n\n get name() {\n return this.app.name;\n }\n}\n"],"mappings":";;;;;;AAEO,MAAMA,SAAS,CAAC;EACrBC,
|
|
1
|
+
{"version":3,"names":["AppServer","constructor","app","name","exports"],"sources":["app-server.ts"],"sourcesContent":["import { Application } from './application';\n\nexport class AppServer {\n constructor(private app: Application) {}\n\n get name() {\n return this.app.name;\n }\n}\n"],"mappings":";;;;;;AAEO,MAAMA,SAAS,CAAC;EACrBC,WAAWA,CAASC,GAAgB,EAAE;IAAA,KAAlBA,GAAgB,GAAhBA,GAAgB;EAAG;EAEvC,IAAIC,IAAIA,CAAA,EAAG;IACT,OAAO,IAAI,CAACD,GAAG,CAACC,IAAI;EACtB;AACF;AAACC,OAAA,CAAAJ,SAAA,GAAAA,SAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AppTypeList","constructor","name","appTypes","context","compute","map","appType","from","options"],"sources":["app-type-list.ts"],"sourcesContent":["import { EnvContext, EnvHandler } from '@teambit/envs';\nimport { ApplicationType } from './application-type';\n\nexport type AppTypeListOptions = {\n name?: string;\n};\n\nexport class AppTypeList {\n constructor(\n readonly name: string,\n private appTypes: EnvHandler<ApplicationType<any>>[],\n private context: EnvContext\n ) {}\n\n compute(): ApplicationType<any>[] {\n return this.appTypes.map((appType) => appType(this.context));\n }\n\n static from(appTypes: EnvHandler<ApplicationType<any>>[], options: AppTypeListOptions = {}): EnvHandler<AppTypeList> {\n return (context: EnvContext) => {\n const name = options.name || 'app-type-list';\n return new AppTypeList(name, appTypes, context);\n };\n }\n}\n"],"mappings":";;;;;;AAOO,MAAMA,WAAW,CAAC;EACvBC,
|
|
1
|
+
{"version":3,"names":["AppTypeList","constructor","name","appTypes","context","compute","map","appType","from","options","exports"],"sources":["app-type-list.ts"],"sourcesContent":["import { EnvContext, EnvHandler } from '@teambit/envs';\nimport { ApplicationType } from './application-type';\n\nexport type AppTypeListOptions = {\n name?: string;\n};\n\nexport class AppTypeList {\n constructor(\n readonly name: string,\n private appTypes: EnvHandler<ApplicationType<any>>[],\n private context: EnvContext\n ) {}\n\n compute(): ApplicationType<any>[] {\n return this.appTypes.map((appType) => appType(this.context));\n }\n\n static from(appTypes: EnvHandler<ApplicationType<any>>[], options: AppTypeListOptions = {}): EnvHandler<AppTypeList> {\n return (context: EnvContext) => {\n const name = options.name || 'app-type-list';\n return new AppTypeList(name, appTypes, context);\n };\n }\n}\n"],"mappings":";;;;;;AAOO,MAAMA,WAAW,CAAC;EACvBC,WAAWA,CACAC,IAAY,EACbC,QAA4C,EAC5CC,OAAmB,EAC3B;IAAA,KAHSF,IAAY,GAAZA,IAAY;IAAA,KACbC,QAA4C,GAA5CA,QAA4C;IAAA,KAC5CC,OAAmB,GAAnBA,OAAmB;EAC1B;EAEHC,OAAOA,CAAA,EAA2B;IAChC,OAAO,IAAI,CAACF,QAAQ,CAACG,GAAG,CAAEC,OAAO,IAAKA,OAAO,CAAC,IAAI,CAACH,OAAO,CAAC,CAAC;EAC9D;EAEA,OAAOI,IAAIA,CAACL,QAA4C,EAAEM,OAA2B,GAAG,CAAC,CAAC,EAA2B;IACnH,OAAQL,OAAmB,IAAK;MAC9B,MAAMF,IAAI,GAAGO,OAAO,CAACP,IAAI,IAAI,eAAe;MAC5C,OAAO,IAAIF,WAAW,CAACE,IAAI,EAAEC,QAAQ,EAAEC,OAAO,CAAC;IACjD,CAAC;EACH;AACF;AAACM,OAAA,CAAAV,WAAA,GAAAA,WAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AppTypePlugin","constructor","pattern","appType","appSlot","MainRuntime","name","register","object","app","createApp","validateApp","includes","BitError"],"sources":["app-type.plugin.ts"],"sourcesContent":["import { PluginDefinition } from '@teambit/aspect-loader';\nimport { BitError } from '@teambit/bit-error';\nimport { MainRuntime } from '@teambit/cli';\nimport { Application } from './application';\nimport { ApplicationType } from './application-type';\nimport { ApplicationSlot } from './application.main.runtime';\n\nexport class AppTypePlugin implements PluginDefinition {\n constructor(readonly pattern: string, private appType: ApplicationType<unknown>, private appSlot: ApplicationSlot) {}\n\n runtimes = [MainRuntime.name];\n\n register(object: any) {\n const app = this.appType.createApp(object);\n this.validateApp(app);\n this.appSlot.register([app]);\n }\n\n private validateApp(app: Application) {\n if (app.name.includes(' ')) {\n throw new BitError(`app name \"${app.name}\" is invalid. spaces are not permitted`);\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AACA;EAAA;
|
|
1
|
+
{"version":3,"names":["_bitError","data","require","_cli","AppTypePlugin","constructor","pattern","appType","appSlot","_defineProperty2","default","MainRuntime","name","register","object","app","createApp","validateApp","includes","BitError","exports"],"sources":["app-type.plugin.ts"],"sourcesContent":["import { PluginDefinition } from '@teambit/aspect-loader';\nimport { BitError } from '@teambit/bit-error';\nimport { MainRuntime } from '@teambit/cli';\nimport { Application } from './application';\nimport { ApplicationType } from './application-type';\nimport { ApplicationSlot } from './application.main.runtime';\n\nexport class AppTypePlugin implements PluginDefinition {\n constructor(readonly pattern: string, private appType: ApplicationType<unknown>, private appSlot: ApplicationSlot) {}\n\n runtimes = [MainRuntime.name];\n\n register(object: any) {\n const app = this.appType.createApp(object);\n this.validateApp(app);\n this.appSlot.register([app]);\n }\n\n private validateApp(app: Application) {\n if (app.name.includes(' ')) {\n throw new BitError(`app name \"${app.name}\" is invalid. spaces are not permitted`);\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AACA,SAAAA,UAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,SAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,KAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,IAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAKO,MAAMG,aAAa,CAA6B;EACrDC,WAAWA,CAAUC,OAAe,EAAUC,OAAiC,EAAUC,OAAwB,EAAE;IAAA,KAA9FF,OAAe,GAAfA,OAAe;IAAA,KAAUC,OAAiC,GAAjCA,OAAiC;IAAA,KAAUC,OAAwB,GAAxBA,OAAwB;IAAA,IAAAC,gBAAA,GAAAC,OAAA,oBAEtG,CAACC,kBAAW,CAACC,IAAI,CAAC;EAFuF;EAIpHC,QAAQA,CAACC,MAAW,EAAE;IACpB,MAAMC,GAAG,GAAG,IAAI,CAACR,OAAO,CAACS,SAAS,CAACF,MAAM,CAAC;IAC1C,IAAI,CAACG,WAAW,CAACF,GAAG,CAAC;IACrB,IAAI,CAACP,OAAO,CAACK,QAAQ,CAAC,CAACE,GAAG,CAAC,CAAC;EAC9B;EAEQE,WAAWA,CAACF,GAAgB,EAAE;IACpC,IAAIA,GAAG,CAACH,IAAI,CAACM,QAAQ,CAAC,GAAG,CAAC,EAAE;MAC1B,MAAM,KAAIC,oBAAQ,EAAE,aAAYJ,GAAG,CAACH,IAAK,wCAAuC,CAAC;IACnF;EACF;AACF;AAACQ,OAAA,CAAAhB,aAAA,GAAAA,aAAA"}
|
package/dist/app.cmd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AppListCmd","constructor","applicationAspect","report","args","json","appComponents","mapApps","JSON","stringify","length","chalk","yellow","rows","flatMap","id","apps","map","app","name","table","CLITable","render","AppCmd"],"sources":["app.cmd.ts"],"sourcesContent":["// eslint-disable-next-line max-classes-per-file\nimport { Command, CommandOptions } from '@teambit/cli';\n// import { Logger } from '@teambit/logger';\nimport chalk from 'chalk';\nimport { CLITable } from '@teambit/cli-table';\nimport { ApplicationMain } from './application.main.runtime';\n\nexport class AppListCmd implements Command {\n name = 'list';\n description = 'list all registered apps';\n alias = '';\n group = 'apps';\n helpUrl = 'reference/reference/cli-reference';\n options = [['j', 'json', 'return the component data in json format']] as CommandOptions;\n\n constructor(private applicationAspect: ApplicationMain) {}\n\n async report(args: [string], { json }: { json: boolean }) {\n const appComponents = this.applicationAspect.mapApps();\n if (json) return JSON.stringify(appComponents, null, 2);\n if (!appComponents.length) return chalk.yellow('no apps found');\n\n const rows = appComponents.flatMap(([id, apps]) => {\n return apps.map((app) => [id, app.name]);\n });\n\n const table = new CLITable(['id', 'name'], rows);\n return table.render();\n }\n}\n\nexport class AppCmd implements Command {\n name = 'app <sub-command>';\n description = 'Manages apps';\n helpUrl = 'docs/getting-started/composing/create-apps';\n alias = 'apps';\n group = 'apps';\n commands: Command[] = [];\n options = [] as CommandOptions;\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n async report(args: [string]) {\n // it should never be here. Yargs throws an error before reaching this method.\n return `Please specify a sub-command`;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAGA;EAAA;
|
|
1
|
+
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_cliTable","AppListCmd","constructor","applicationAspect","_defineProperty2","default","report","args","json","appComponents","mapApps","JSON","stringify","length","chalk","yellow","rows","flatMap","id","apps","map","app","name","table","CLITable","render","exports","AppCmd"],"sources":["app.cmd.ts"],"sourcesContent":["// eslint-disable-next-line max-classes-per-file\nimport { Command, CommandOptions } from '@teambit/cli';\n// import { Logger } from '@teambit/logger';\nimport chalk from 'chalk';\nimport { CLITable } from '@teambit/cli-table';\nimport { ApplicationMain } from './application.main.runtime';\n\nexport class AppListCmd implements Command {\n name = 'list';\n description = 'list all registered apps';\n alias = '';\n group = 'apps';\n helpUrl = 'reference/reference/cli-reference';\n options = [['j', 'json', 'return the component data in json format']] as CommandOptions;\n\n constructor(private applicationAspect: ApplicationMain) {}\n\n async report(args: [string], { json }: { json: boolean }) {\n const appComponents = this.applicationAspect.mapApps();\n if (json) return JSON.stringify(appComponents, null, 2);\n if (!appComponents.length) return chalk.yellow('no apps found');\n\n const rows = appComponents.flatMap(([id, apps]) => {\n return apps.map((app) => [id, app.name]);\n });\n\n const table = new CLITable(['id', 'name'], rows);\n return table.render();\n }\n}\n\nexport class AppCmd implements Command {\n name = 'app <sub-command>';\n description = 'Manages apps';\n helpUrl = 'docs/getting-started/composing/create-apps';\n alias = 'apps';\n group = 'apps';\n commands: Command[] = [];\n options = [] as CommandOptions;\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n async report(args: [string]) {\n // it should never be here. Yargs throws an error before reaching this method.\n return `Please specify a sub-command`;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAGA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,UAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,SAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAJA;;AAEA;;AAKO,MAAMI,UAAU,CAAoB;EAQzCC,WAAWA,CAASC,iBAAkC,EAAE;IAAA,KAApCA,iBAAkC,GAAlCA,iBAAkC;IAAA,IAAAC,gBAAA,GAAAC,OAAA,gBAP/C,MAAM;IAAA,IAAAD,gBAAA,GAAAC,OAAA,uBACC,0BAA0B;IAAA,IAAAD,gBAAA,GAAAC,OAAA,iBAChC,EAAE;IAAA,IAAAD,gBAAA,GAAAC,OAAA,iBACF,MAAM;IAAA,IAAAD,gBAAA,GAAAC,OAAA,mBACJ,mCAAmC;IAAA,IAAAD,gBAAA,GAAAC,OAAA,mBACnC,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,0CAA0C,CAAC,CAAC;EAEZ;EAEzD,MAAMC,MAAMA,CAACC,IAAc,EAAE;IAAEC;EAAwB,CAAC,EAAE;IACxD,MAAMC,aAAa,GAAG,IAAI,CAACN,iBAAiB,CAACO,OAAO,CAAC,CAAC;IACtD,IAAIF,IAAI,EAAE,OAAOG,IAAI,CAACC,SAAS,CAACH,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,IAAI,CAACA,aAAa,CAACI,MAAM,EAAE,OAAOC,gBAAK,CAACC,MAAM,CAAC,eAAe,CAAC;IAE/D,MAAMC,IAAI,GAAGP,aAAa,CAACQ,OAAO,CAAC,CAAC,CAACC,EAAE,EAAEC,IAAI,CAAC,KAAK;MACjD,OAAOA,IAAI,CAACC,GAAG,CAAEC,GAAG,IAAK,CAACH,EAAE,EAAEG,GAAG,CAACC,IAAI,CAAC,CAAC;IAC1C,CAAC,CAAC;IAEF,MAAMC,KAAK,GAAG,KAAIC,oBAAQ,EAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAER,IAAI,CAAC;IAChD,OAAOO,KAAK,CAACE,MAAM,CAAC,CAAC;EACvB;AACF;AAACC,OAAA,CAAAzB,UAAA,GAAAA,UAAA;AAEM,MAAM0B,MAAM,CAAoB;EAAAzB,YAAA;IAAA,IAAAE,gBAAA,GAAAC,OAAA,gBAC9B,mBAAmB;IAAA,IAAAD,gBAAA,GAAAC,OAAA,uBACZ,cAAc;IAAA,IAAAD,gBAAA,GAAAC,OAAA,mBAClB,4CAA4C;IAAA,IAAAD,gBAAA,GAAAC,OAAA,iBAC9C,MAAM;IAAA,IAAAD,gBAAA,GAAAC,OAAA,iBACN,MAAM;IAAA,IAAAD,gBAAA,GAAAC,OAAA,oBACQ,EAAE;IAAA,IAAAD,gBAAA,GAAAC,OAAA,mBACd,EAAE;EAAA;EAEZ;EACA,MAAMC,MAAMA,CAACC,IAAc,EAAE;IAC3B;IACA,OAAQ,8BAA6B;EACvC;AACF;AAACmB,OAAA,CAAAC,MAAA,GAAAA,MAAA"}
|
package/dist/app.plugin.js
CHANGED
|
@@ -22,12 +22,10 @@ function _cli() {
|
|
|
22
22
|
class AppPlugin {
|
|
23
23
|
constructor(appSlot) {
|
|
24
24
|
this.appSlot = appSlot;
|
|
25
|
+
// TODO - this matches NOTHING
|
|
25
26
|
(0, _defineProperty2().default)(this, "pattern", '*.app.*?(ts|tsx|js|jsx)$');
|
|
26
27
|
(0, _defineProperty2().default)(this, "runtimes", [_cli().MainRuntime.name]);
|
|
27
28
|
}
|
|
28
|
-
|
|
29
|
-
// TODO - this matches NOTHING
|
|
30
|
-
|
|
31
29
|
register(object) {
|
|
32
30
|
return this.appSlot.register([object]);
|
|
33
31
|
}
|
package/dist/app.plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AppPlugin","constructor","appSlot","MainRuntime","name","register","object"],"sources":["app.plugin.ts"],"sourcesContent":["import { PluginDefinition } from '@teambit/aspect-loader';\nimport { MainRuntime } from '@teambit/cli';\nimport { ApplicationSlot } from './application.main.runtime';\n\nexport class AppPlugin implements PluginDefinition {\n constructor(private appSlot: ApplicationSlot) {}\n\n // TODO - this matches NOTHING\n pattern = '*.app.*?(ts|tsx|js|jsx)$';\n\n runtimes = [MainRuntime.name];\n\n register(object: any) {\n return this.appSlot.register([object]);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AACA;EAAA;
|
|
1
|
+
{"version":3,"names":["_cli","data","require","AppPlugin","constructor","appSlot","_defineProperty2","default","MainRuntime","name","register","object","exports"],"sources":["app.plugin.ts"],"sourcesContent":["import { PluginDefinition } from '@teambit/aspect-loader';\nimport { MainRuntime } from '@teambit/cli';\nimport { ApplicationSlot } from './application.main.runtime';\n\nexport class AppPlugin implements PluginDefinition {\n constructor(private appSlot: ApplicationSlot) {}\n\n // TODO - this matches NOTHING\n pattern = '*.app.*?(ts|tsx|js|jsx)$';\n\n runtimes = [MainRuntime.name];\n\n register(object: any) {\n return this.appSlot.register([object]);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AACA,SAAAA,KAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,IAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGO,MAAME,SAAS,CAA6B;EACjDC,WAAWA,CAASC,OAAwB,EAAE;IAAA,KAA1BA,OAAwB,GAAxBA,OAAwB;IAE5C;IAAA,IAAAC,gBAAA,GAAAC,OAAA,mBACU,0BAA0B;IAAA,IAAAD,gBAAA,GAAAC,OAAA,oBAEzB,CAACC,kBAAW,CAACC,IAAI,CAAC;EALkB;EAO/CC,QAAQA,CAACC,MAAW,EAAE;IACpB,OAAO,IAAI,CAACN,OAAO,CAACK,QAAQ,CAAC,CAACC,MAAM,CAAC,CAAC;EACxC;AACF;AAACC,OAAA,CAAAT,SAAA,GAAAA,SAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ApplicationAspect","Aspect","create","id"],"sources":["application.aspect.ts"],"sourcesContent":["import { Aspect } from '@teambit/harmony';\n\nexport const ApplicationAspect = Aspect.create({\n id: 'teambit.harmony/application',\n});\n"],"mappings":";;;;;;AAAA;EAAA;
|
|
1
|
+
{"version":3,"names":["_harmony","data","require","ApplicationAspect","Aspect","create","id","exports"],"sources":["application.aspect.ts"],"sourcesContent":["import { Aspect } from '@teambit/harmony';\n\nexport const ApplicationAspect = Aspect.create({\n id: 'teambit.harmony/application',\n});\n"],"mappings":";;;;;;AAAA,SAAAA,SAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,QAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAME,iBAAiB,GAAGC,iBAAM,CAACC,MAAM,CAAC;EAC7CC,EAAE,EAAE;AACN,CAAC,CAAC;AAACC,OAAA,CAAAJ,iBAAA,GAAAA,iBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Logo","height","display","justifyContent","width"],"sources":["application.composition.tsx"],"sourcesContent":["import React from 'react';\n\nexport const Logo = () => (\n <div style={{ height: '100%', display: 'flex', justifyContent: 'center' }}>\n <img style={{ width: 70 }} src=\"https://static.bit.dev/extensions-icons/app.svg\" />\n </div>\n);\n"],"mappings":";;;;;;;AAAA;EAAA;
|
|
1
|
+
{"version":3,"names":["_react","data","_interopRequireDefault","require","Logo","default","createElement","style","height","display","justifyContent","width","src","exports"],"sources":["application.composition.tsx"],"sourcesContent":["import React from 'react';\n\nexport const Logo = () => (\n <div style={{ height: '100%', display: 'flex', justifyContent: 'center' }}>\n <img style={{ width: 70 }} src=\"https://static.bit.dev/extensions-icons/app.svg\" />\n </div>\n);\n"],"mappings":";;;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAMG,IAAI,GAAGA,CAAA,kBAClBJ,MAAA,GAAAK,OAAA,CAAAC,aAAA;EAAKC,KAAK,EAAE;IAAEC,MAAM,EAAE,MAAM;IAAEC,OAAO,EAAE,MAAM;IAAEC,cAAc,EAAE;EAAS;AAAE,gBACxEV,MAAA,GAAAK,OAAA,CAAAC,aAAA;EAAKC,KAAK,EAAE;IAAEI,KAAK,EAAE;EAAG,CAAE;EAACC,GAAG,EAAC;AAAiD,CAAE,CAC/E,CACN;AAACC,OAAA,CAAAT,IAAA,GAAAA,IAAA"}
|
|
@@ -179,6 +179,10 @@ function _appNoSsr() {
|
|
|
179
179
|
}
|
|
180
180
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
181
181
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2().default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
182
|
+
/**
|
|
183
|
+
* Application meta data that is stored on the component on load if it's an application.
|
|
184
|
+
*/
|
|
185
|
+
|
|
182
186
|
class ApplicationMain {
|
|
183
187
|
constructor(appSlot,
|
|
184
188
|
// TODO unused
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ApplicationMain","constructor","appSlot","appTypeSlot","deploymentProviderSlot","config","envs","componentAspect","appService","aspectLoader","workspace","logger","watcher","dev","ssr","watch","defaultPortRange","registerApp","app","register","listApps","flatten","values","mapApps","toArray","listAppsById","id","undefined","get","toString","getAppById","apps","head","calculateAppByComponent","component","listAppTypes","listAppsFromComponents","listAppsComponents","components","getHost","list","appTypesPatterns","getAppPatterns","appsComponents","filter","hasAppTypePattern","patterns","files","filesystem","byGlob","length","appTypes","map","appType","getAppPattern","loadApps","pluginsToLoad","flatMap","appComponent","file","path","appManifests","compact","pluginPath","appManifest","require","default","err","error","loadAppsFromComponent","rootDir","isApp","allPluginDefs","getPluginDefs","appsPluginDefs","pluginDef","includes","pattern","plugins","getPluginsFromDefs","loadedPlugins","has","load","MainRuntime","name","loadExtensionsByManifests","seeders","getApp","appName","find","getAppByNameOrId","appNameOrId","byName","byId","BitError","globPattern","registerAppType","plugin","AppTypePlugin","registerPlugins","getAppAspect","getAppOrThrow","AppNotFound","computeOptions","opts","defaultOpts","loadAppsToSlot","runApp","options","context","createAppContext","port","runSsr","AppNoSsr","result","run","preCompile","catch","errors","getAppIdOrThrow","maybeApp","host","resolveComponentId","env","createEnvironment","res","results","data","hostRootDir","getComponentPackagePath","appContext","AppContext","provider","cli","loggerAspect","builder","createLogger","ApplicationAspect","AppService","application","bind","appCmd","AppCmd","commands","AppListCmd","RunCmd","AppPlugin","registerBuildTasks","AppsBuildTask","registerSnapTasks","DeployTask","registerTagTasks","registerService","registerGroup","AppListCmdDeprecated","onComponentLoad","loadedComponent","type","applicationType","CLIAspect","LoggerAspect","BuilderAspect","EnvsAspect","ComponentAspect","AspectLoaderAspect","WorkspaceAspect","WatcherAspect","Slot","withType","addRuntime"],"sources":["application.main.runtime.ts"],"sourcesContent":["import { MainRuntime, CLIMain, CLIAspect } from '@teambit/cli';\nimport { compact, flatten, head } from 'lodash';\nimport { AspectLoaderMain, AspectLoaderAspect } from '@teambit/aspect-loader';\nimport { Slot, SlotRegistry } from '@teambit/harmony';\nimport WorkspaceAspect, { Workspace } from '@teambit/workspace';\nimport { BitError } from '@teambit/bit-error';\nimport WatcherAspect, { WatcherMain } from '@teambit/watcher';\nimport { BuilderAspect, BuilderMain } from '@teambit/builder';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { EnvsAspect, EnvsMain } from '@teambit/envs';\nimport ComponentAspect, { ComponentMain, ComponentID, Component } from '@teambit/component';\nimport { ApplicationType } from './application-type';\nimport { Application } from './application';\nimport { DeploymentProvider } from './deployment-provider';\nimport { AppNotFound } from './exceptions';\nimport { ApplicationAspect } from './application.aspect';\nimport { AppListCmdDeprecated } from './app-list.cmd';\nimport { AppsBuildTask } from './build-application.task';\nimport { RunCmd } from './run.cmd';\nimport { AppService } from './application.service';\nimport { AppCmd, AppListCmd } from './app.cmd';\nimport { AppPlugin } from './app.plugin';\nimport { AppTypePlugin } from './app-type.plugin';\nimport { AppContext } from './app-context';\nimport { DeployTask } from './deploy.task';\nimport { AppNoSsr } from './exceptions/app-no-ssr';\n\nexport type ApplicationTypeSlot = SlotRegistry<ApplicationType<unknown>[]>;\nexport type ApplicationSlot = SlotRegistry<Application[]>;\nexport type DeploymentProviderSlot = SlotRegistry<DeploymentProvider[]>;\n\nexport type ApplicationAspectConfig = {\n /**\n * envs ids to load app types.\n */\n envs?: string[];\n};\n\n/**\n * Application meta data that is stored on the component on load if it's an application.\n */\nexport type ApplicationMetadata = {\n appName: string;\n type?: string;\n};\n\nexport type ServeAppOptions = {\n /**\n * default port range used to serve applications.\n */\n defaultPortRange?: [start: number, end: number];\n\n /**\n * determine whether to start the application in dev mode.\n */\n dev: boolean;\n\n /**\n * actively watch and compile the workspace (like the bit watch command)\n * @default true\n */\n watch?: boolean;\n\n /**\n * determine whether to start the application in server side mode.\n * @default false\n */\n ssr?: boolean;\n\n /**\n * exact port to run the app\n */\n port?: number;\n};\n\nexport class ApplicationMain {\n constructor(\n private appSlot: ApplicationSlot,\n // TODO unused\n private appTypeSlot: ApplicationTypeSlot,\n private deploymentProviderSlot: DeploymentProviderSlot,\n private config: ApplicationAspectConfig,\n private envs: EnvsMain,\n private componentAspect: ComponentMain,\n private appService: AppService,\n private aspectLoader: AspectLoaderMain,\n private workspace: Workspace,\n private logger: Logger,\n private watcher: WatcherMain\n ) {}\n\n /**\n * register a new app.\n */\n registerApp(app: Application) {\n this.appSlot.register([app]);\n return this;\n }\n\n /**\n * list all registered apps.\n */\n listApps(): Application[] {\n return flatten(this.appSlot.values());\n }\n\n /**\n * map all apps by component ID.\n */\n mapApps() {\n return this.appSlot.toArray();\n }\n\n /**\n * list apps by a component id.\n */\n listAppsById(id?: ComponentID): Application[] | undefined {\n if (!id) return undefined;\n return this.appSlot.get(id.toString());\n }\n\n /**\n * get an application by a component id.\n */\n async getAppById(id: ComponentID) {\n const apps = await this.listAppsById(id);\n if (!apps) return undefined;\n return head(apps);\n }\n\n /**\n * calculate an application by a component.\n * This should be only used during the on component load slot\n */\n calculateAppByComponent(component: Component) {\n const apps = this.appSlot.get(component.id.toString());\n if (!apps) return undefined;\n return head(apps);\n }\n\n listAppTypes() {\n return flatten(this.appTypeSlot.values());\n }\n\n /**\n * @deprecated use `listAppsComponents` instead.\n * @returns\n */\n async listAppsFromComponents(): Promise<Component[]> {\n return this.listAppsComponents();\n }\n\n async listAppsComponents(): Promise<Component[]> {\n const components = await this.componentAspect.getHost().list();\n const appTypesPatterns = this.getAppPatterns();\n const appsComponents = components.filter((component) => this.hasAppTypePattern(component, appTypesPatterns));\n return appsComponents;\n }\n\n private hasAppTypePattern(component: Component, appTypesPatterns?: string[]): boolean {\n const patterns = appTypesPatterns || this.getAppPatterns();\n // has app plugin from registered types.\n const files = component.filesystem.byGlob(patterns);\n return !!files.length;\n }\n\n getAppPatterns() {\n const appTypes = this.listAppTypes();\n const appTypesPatterns = appTypes.map((appType) => {\n return this.getAppPattern(appType);\n });\n\n return appTypesPatterns;\n }\n\n async loadApps(): Promise<Application[]> {\n const apps = await this.listAppsComponents();\n const appTypesPatterns = this.getAppPatterns();\n\n const pluginsToLoad = apps.flatMap((appComponent) => {\n const files = appComponent.filesystem.byGlob(appTypesPatterns);\n return files.map((file) => file.path);\n });\n\n // const app = require(appPath);\n const appManifests = compact(\n pluginsToLoad.map((pluginPath) => {\n try {\n // eslint-disable-next-line\n const appManifest = require(pluginPath)?.default;\n return appManifest;\n } catch (err) {\n this.logger.error(`failed loading app manifest: ${pluginPath}`);\n return undefined;\n }\n })\n );\n\n return appManifests;\n }\n\n async loadAppsFromComponent(component: Component, rootDir: string): Promise<Application[] | undefined> {\n const appTypesPatterns = this.getAppPatterns();\n const isApp = this.hasAppTypePattern(component, appTypesPatterns);\n if (!isApp) return undefined;\n\n const allPluginDefs = this.aspectLoader.getPluginDefs();\n\n const appsPluginDefs = allPluginDefs.filter((pluginDef) => {\n return appTypesPatterns.includes(pluginDef.pattern.toString());\n });\n // const fileResolver = this.aspectLoader.pluginFileResolver(component, rootDir);\n\n const plugins = this.aspectLoader.getPluginsFromDefs(component, rootDir, appsPluginDefs);\n let loadedPlugins;\n if (plugins.has()) {\n loadedPlugins = await plugins.load(MainRuntime.name);\n await this.aspectLoader.loadExtensionsByManifests([loadedPlugins], { seeders: [component.id.toString()] });\n }\n\n const listAppsById = this.listAppsById(component.id);\n return listAppsById;\n }\n\n /**\n * get an app.\n */\n getApp(appName: string, id?: ComponentID): Application | undefined {\n const apps = id ? this.listAppsById(id) : this.listApps();\n if (!apps) return undefined;\n return apps.find((app) => app.name === appName);\n }\n\n getAppByNameOrId(appNameOrId: string): Application | undefined {\n const byName = this.getApp(appNameOrId);\n if (byName) return byName;\n const byId = this.appSlot.get(appNameOrId);\n if (!byId || !byId.length) return undefined;\n if (byId.length > 1) {\n throw new BitError(\n `unable to figure out what app to retrieve. the id \"${appNameOrId}\" has more than one app. please use the app-name`\n );\n }\n return byId[0];\n }\n\n getAppPattern(appType: ApplicationType<unknown>) {\n if (appType.globPattern) return appType.globPattern;\n return `*.${appType.name}.*`;\n }\n\n /**\n * registers a new app and sets a plugin for it.\n */\n registerAppType<T>(appType: ApplicationType<T>) {\n const plugin = new AppTypePlugin(this.getAppPattern(appType), appType, this.appSlot);\n this.aspectLoader.registerPlugins([plugin]);\n this.appTypeSlot.register([appType]);\n return this;\n }\n\n /**\n * get an app AspectId.\n */\n getAppAspect(appName: string): string | undefined {\n return this.appSlot.toArray().find(([, apps]) => apps.find((app) => app.name === appName))?.[0];\n }\n\n /**\n * get app to throw.\n */\n getAppOrThrow(appName: string): Application {\n const app = this.getAppByNameOrId(appName);\n if (!app) throw new AppNotFound(appName);\n return app;\n }\n\n defaultOpts: ServeAppOptions = {\n dev: false,\n ssr: false,\n watch: true,\n defaultPortRange: [3100, 3500],\n };\n private computeOptions(opts: Partial<ServeAppOptions> = {}) {\n return {\n ...this.defaultOpts,\n ...opts,\n };\n }\n\n async loadAppsToSlot() {\n const apps = await this.loadApps();\n this.appSlot.register(apps);\n return this;\n }\n\n async runApp(appName: string, options?: ServeAppOptions) {\n options = this.computeOptions(options);\n const app = this.getAppOrThrow(appName);\n const context = await this.createAppContext(app.name, options.port);\n if (!context) throw new AppNotFound(appName);\n\n if (options.ssr) {\n if (!app.runSsr) throw new AppNoSsr(appName);\n\n const result = await app.runSsr(context);\n return { app, ...result };\n }\n\n const port = await app.run(context);\n if (options.watch) {\n this.watcher\n .watch({\n preCompile: false,\n })\n .catch((err) => {\n // don't throw an error, we don't want to break the \"run\" process\n this.logger.error(`compilation failed`, err);\n });\n }\n return { app, port, errors: undefined };\n }\n\n /**\n * get the component ID of a certain app.\n */\n async getAppIdOrThrow(appName: string) {\n const maybeApp = this.appSlot.toArray().find(([, apps]) => {\n return apps.find((app) => app.name === appName);\n });\n\n if (!maybeApp) throw new AppNotFound(appName);\n\n const host = this.componentAspect.getHost();\n return host.resolveComponentId(maybeApp[0]);\n }\n\n private async createAppContext(appName: string, port?: number): Promise<AppContext> {\n const host = this.componentAspect.getHost();\n // const components = await host.list();\n const id = await this.getAppIdOrThrow(appName);\n // const component = components.find((c) => c.id.isEqual(id));\n const component = await host.get(id);\n if (!component) throw new AppNotFound(appName);\n\n const env = await this.envs.createEnvironment([component]);\n const res = await env.run(this.appService);\n const context = res.results[0].data;\n if (!context) throw new AppNotFound(appName);\n const hostRootDir = this.workspace.getComponentPackagePath(component);\n const appContext = new AppContext(appName, context.dev, component, this.workspace.path, context, hostRootDir, port);\n return appContext;\n }\n\n static runtime = MainRuntime;\n static dependencies = [\n CLIAspect,\n LoggerAspect,\n BuilderAspect,\n EnvsAspect,\n ComponentAspect,\n AspectLoaderAspect,\n WorkspaceAspect,\n WatcherAspect,\n ];\n\n static slots = [\n Slot.withType<ApplicationType<unknown>[]>(),\n Slot.withType<Application[]>(),\n Slot.withType<DeploymentProvider[]>(),\n ];\n\n static async provider(\n [cli, loggerAspect, builder, envs, component, aspectLoader, workspace, watcher]: [\n CLIMain,\n LoggerMain,\n BuilderMain,\n EnvsMain,\n ComponentMain,\n AspectLoaderMain,\n Workspace,\n WatcherMain\n ],\n config: ApplicationAspectConfig,\n [appTypeSlot, appSlot, deploymentProviderSlot]: [ApplicationTypeSlot, ApplicationSlot, DeploymentProviderSlot]\n ) {\n const logger = loggerAspect.createLogger(ApplicationAspect.id);\n const appService = new AppService();\n const application = new ApplicationMain(\n appSlot,\n appTypeSlot,\n deploymentProviderSlot,\n config,\n envs,\n component,\n appService,\n aspectLoader,\n workspace,\n logger,\n watcher\n );\n appService.registerAppType = application.registerAppType.bind(application);\n const appCmd = new AppCmd();\n appCmd.commands = [new AppListCmd(application), new RunCmd(application, logger)];\n aspectLoader.registerPlugins([new AppPlugin(appSlot)]);\n builder.registerBuildTasks([new AppsBuildTask(application)]);\n builder.registerSnapTasks([new DeployTask(application, builder)]);\n builder.registerTagTasks([new DeployTask(application, builder)]);\n envs.registerService(appService);\n cli.registerGroup('apps', 'Applications');\n cli.register(new RunCmd(application, logger), new AppListCmdDeprecated(application), appCmd);\n // cli.registerOnStart(async () => {\n // await application.loadAppsToSlot();\n // });\n if (workspace) {\n workspace.onComponentLoad(async (loadedComponent): Promise<ApplicationMetadata | undefined> => {\n const app = application.calculateAppByComponent(loadedComponent);\n if (!app) return undefined;\n return {\n appName: app.name,\n type: app.applicationType,\n };\n });\n }\n\n return application;\n }\n}\n\nApplicationAspect.addRuntime(ApplicationMain);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_cli","data","require","_lodash","_aspectLoader","_harmony","_workspace","_interopRequireDefault","_bitError","_watcher","_builder","_logger","_envs","_component","_exceptions","_application","_appList","_buildApplication","_run","_application2","_app","_app2","_appType","_appContext","_deploy","_appNoSsr","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","ApplicationMain","constructor","appSlot","appTypeSlot","deploymentProviderSlot","config","envs","componentAspect","appService","aspectLoader","workspace","logger","watcher","dev","ssr","watch","defaultPortRange","registerApp","app","register","listApps","flatten","values","mapApps","toArray","listAppsById","id","undefined","get","toString","getAppById","apps","head","calculateAppByComponent","component","listAppTypes","listAppsFromComponents","listAppsComponents","components","getHost","list","appTypesPatterns","getAppPatterns","appsComponents","hasAppTypePattern","patterns","files","filesystem","byGlob","appTypes","map","appType","getAppPattern","loadApps","pluginsToLoad","flatMap","appComponent","file","path","appManifests","compact","pluginPath","_require","appManifest","err","error","loadAppsFromComponent","rootDir","isApp","allPluginDefs","getPluginDefs","appsPluginDefs","pluginDef","includes","pattern","plugins","getPluginsFromDefs","loadedPlugins","has","load","MainRuntime","name","loadExtensionsByManifests","seeders","getApp","appName","find","getAppByNameOrId","appNameOrId","byName","byId","BitError","globPattern","registerAppType","plugin","AppTypePlugin","registerPlugins","getAppAspect","_this$appSlot$toArray","getAppOrThrow","AppNotFound","computeOptions","opts","defaultOpts","loadAppsToSlot","runApp","options","context","createAppContext","port","runSsr","AppNoSsr","result","run","preCompile","catch","errors","getAppIdOrThrow","maybeApp","host","resolveComponentId","env","createEnvironment","res","results","hostRootDir","getComponentPackagePath","appContext","AppContext","provider","cli","loggerAspect","builder","createLogger","ApplicationAspect","AppService","application","bind","appCmd","AppCmd","commands","AppListCmd","RunCmd","AppPlugin","registerBuildTasks","AppsBuildTask","registerSnapTasks","DeployTask","registerTagTasks","registerService","registerGroup","AppListCmdDeprecated","onComponentLoad","loadedComponent","type","applicationType","exports","CLIAspect","LoggerAspect","BuilderAspect","EnvsAspect","ComponentAspect","AspectLoaderAspect","WorkspaceAspect","WatcherAspect","Slot","withType","addRuntime"],"sources":["application.main.runtime.ts"],"sourcesContent":["import { MainRuntime, CLIMain, CLIAspect } from '@teambit/cli';\nimport { compact, flatten, head } from 'lodash';\nimport { AspectLoaderMain, AspectLoaderAspect } from '@teambit/aspect-loader';\nimport { Slot, SlotRegistry } from '@teambit/harmony';\nimport WorkspaceAspect, { Workspace } from '@teambit/workspace';\nimport { BitError } from '@teambit/bit-error';\nimport WatcherAspect, { WatcherMain } from '@teambit/watcher';\nimport { BuilderAspect, BuilderMain } from '@teambit/builder';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { EnvsAspect, EnvsMain } from '@teambit/envs';\nimport ComponentAspect, { ComponentMain, ComponentID, Component } from '@teambit/component';\nimport { ApplicationType } from './application-type';\nimport { Application } from './application';\nimport { DeploymentProvider } from './deployment-provider';\nimport { AppNotFound } from './exceptions';\nimport { ApplicationAspect } from './application.aspect';\nimport { AppListCmdDeprecated } from './app-list.cmd';\nimport { AppsBuildTask } from './build-application.task';\nimport { RunCmd } from './run.cmd';\nimport { AppService } from './application.service';\nimport { AppCmd, AppListCmd } from './app.cmd';\nimport { AppPlugin } from './app.plugin';\nimport { AppTypePlugin } from './app-type.plugin';\nimport { AppContext } from './app-context';\nimport { DeployTask } from './deploy.task';\nimport { AppNoSsr } from './exceptions/app-no-ssr';\n\nexport type ApplicationTypeSlot = SlotRegistry<ApplicationType<unknown>[]>;\nexport type ApplicationSlot = SlotRegistry<Application[]>;\nexport type DeploymentProviderSlot = SlotRegistry<DeploymentProvider[]>;\n\nexport type ApplicationAspectConfig = {\n /**\n * envs ids to load app types.\n */\n envs?: string[];\n};\n\n/**\n * Application meta data that is stored on the component on load if it's an application.\n */\nexport type ApplicationMetadata = {\n appName: string;\n type?: string;\n};\n\nexport type ServeAppOptions = {\n /**\n * default port range used to serve applications.\n */\n defaultPortRange?: [start: number, end: number];\n\n /**\n * determine whether to start the application in dev mode.\n */\n dev: boolean;\n\n /**\n * actively watch and compile the workspace (like the bit watch command)\n * @default true\n */\n watch?: boolean;\n\n /**\n * determine whether to start the application in server side mode.\n * @default false\n */\n ssr?: boolean;\n\n /**\n * exact port to run the app\n */\n port?: number;\n};\n\nexport class ApplicationMain {\n constructor(\n private appSlot: ApplicationSlot,\n // TODO unused\n private appTypeSlot: ApplicationTypeSlot,\n private deploymentProviderSlot: DeploymentProviderSlot,\n private config: ApplicationAspectConfig,\n private envs: EnvsMain,\n private componentAspect: ComponentMain,\n private appService: AppService,\n private aspectLoader: AspectLoaderMain,\n private workspace: Workspace,\n private logger: Logger,\n private watcher: WatcherMain\n ) {}\n\n /**\n * register a new app.\n */\n registerApp(app: Application) {\n this.appSlot.register([app]);\n return this;\n }\n\n /**\n * list all registered apps.\n */\n listApps(): Application[] {\n return flatten(this.appSlot.values());\n }\n\n /**\n * map all apps by component ID.\n */\n mapApps() {\n return this.appSlot.toArray();\n }\n\n /**\n * list apps by a component id.\n */\n listAppsById(id?: ComponentID): Application[] | undefined {\n if (!id) return undefined;\n return this.appSlot.get(id.toString());\n }\n\n /**\n * get an application by a component id.\n */\n async getAppById(id: ComponentID) {\n const apps = await this.listAppsById(id);\n if (!apps) return undefined;\n return head(apps);\n }\n\n /**\n * calculate an application by a component.\n * This should be only used during the on component load slot\n */\n calculateAppByComponent(component: Component) {\n const apps = this.appSlot.get(component.id.toString());\n if (!apps) return undefined;\n return head(apps);\n }\n\n listAppTypes() {\n return flatten(this.appTypeSlot.values());\n }\n\n /**\n * @deprecated use `listAppsComponents` instead.\n * @returns\n */\n async listAppsFromComponents(): Promise<Component[]> {\n return this.listAppsComponents();\n }\n\n async listAppsComponents(): Promise<Component[]> {\n const components = await this.componentAspect.getHost().list();\n const appTypesPatterns = this.getAppPatterns();\n const appsComponents = components.filter((component) => this.hasAppTypePattern(component, appTypesPatterns));\n return appsComponents;\n }\n\n private hasAppTypePattern(component: Component, appTypesPatterns?: string[]): boolean {\n const patterns = appTypesPatterns || this.getAppPatterns();\n // has app plugin from registered types.\n const files = component.filesystem.byGlob(patterns);\n return !!files.length;\n }\n\n getAppPatterns() {\n const appTypes = this.listAppTypes();\n const appTypesPatterns = appTypes.map((appType) => {\n return this.getAppPattern(appType);\n });\n\n return appTypesPatterns;\n }\n\n async loadApps(): Promise<Application[]> {\n const apps = await this.listAppsComponents();\n const appTypesPatterns = this.getAppPatterns();\n\n const pluginsToLoad = apps.flatMap((appComponent) => {\n const files = appComponent.filesystem.byGlob(appTypesPatterns);\n return files.map((file) => file.path);\n });\n\n // const app = require(appPath);\n const appManifests = compact(\n pluginsToLoad.map((pluginPath) => {\n try {\n // eslint-disable-next-line\n const appManifest = require(pluginPath)?.default;\n return appManifest;\n } catch (err) {\n this.logger.error(`failed loading app manifest: ${pluginPath}`);\n return undefined;\n }\n })\n );\n\n return appManifests;\n }\n\n async loadAppsFromComponent(component: Component, rootDir: string): Promise<Application[] | undefined> {\n const appTypesPatterns = this.getAppPatterns();\n const isApp = this.hasAppTypePattern(component, appTypesPatterns);\n if (!isApp) return undefined;\n\n const allPluginDefs = this.aspectLoader.getPluginDefs();\n\n const appsPluginDefs = allPluginDefs.filter((pluginDef) => {\n return appTypesPatterns.includes(pluginDef.pattern.toString());\n });\n // const fileResolver = this.aspectLoader.pluginFileResolver(component, rootDir);\n\n const plugins = this.aspectLoader.getPluginsFromDefs(component, rootDir, appsPluginDefs);\n let loadedPlugins;\n if (plugins.has()) {\n loadedPlugins = await plugins.load(MainRuntime.name);\n await this.aspectLoader.loadExtensionsByManifests([loadedPlugins], { seeders: [component.id.toString()] });\n }\n\n const listAppsById = this.listAppsById(component.id);\n return listAppsById;\n }\n\n /**\n * get an app.\n */\n getApp(appName: string, id?: ComponentID): Application | undefined {\n const apps = id ? this.listAppsById(id) : this.listApps();\n if (!apps) return undefined;\n return apps.find((app) => app.name === appName);\n }\n\n getAppByNameOrId(appNameOrId: string): Application | undefined {\n const byName = this.getApp(appNameOrId);\n if (byName) return byName;\n const byId = this.appSlot.get(appNameOrId);\n if (!byId || !byId.length) return undefined;\n if (byId.length > 1) {\n throw new BitError(\n `unable to figure out what app to retrieve. the id \"${appNameOrId}\" has more than one app. please use the app-name`\n );\n }\n return byId[0];\n }\n\n getAppPattern(appType: ApplicationType<unknown>) {\n if (appType.globPattern) return appType.globPattern;\n return `*.${appType.name}.*`;\n }\n\n /**\n * registers a new app and sets a plugin for it.\n */\n registerAppType<T>(appType: ApplicationType<T>) {\n const plugin = new AppTypePlugin(this.getAppPattern(appType), appType, this.appSlot);\n this.aspectLoader.registerPlugins([plugin]);\n this.appTypeSlot.register([appType]);\n return this;\n }\n\n /**\n * get an app AspectId.\n */\n getAppAspect(appName: string): string | undefined {\n return this.appSlot.toArray().find(([, apps]) => apps.find((app) => app.name === appName))?.[0];\n }\n\n /**\n * get app to throw.\n */\n getAppOrThrow(appName: string): Application {\n const app = this.getAppByNameOrId(appName);\n if (!app) throw new AppNotFound(appName);\n return app;\n }\n\n defaultOpts: ServeAppOptions = {\n dev: false,\n ssr: false,\n watch: true,\n defaultPortRange: [3100, 3500],\n };\n private computeOptions(opts: Partial<ServeAppOptions> = {}) {\n return {\n ...this.defaultOpts,\n ...opts,\n };\n }\n\n async loadAppsToSlot() {\n const apps = await this.loadApps();\n this.appSlot.register(apps);\n return this;\n }\n\n async runApp(appName: string, options?: ServeAppOptions) {\n options = this.computeOptions(options);\n const app = this.getAppOrThrow(appName);\n const context = await this.createAppContext(app.name, options.port);\n if (!context) throw new AppNotFound(appName);\n\n if (options.ssr) {\n if (!app.runSsr) throw new AppNoSsr(appName);\n\n const result = await app.runSsr(context);\n return { app, ...result };\n }\n\n const port = await app.run(context);\n if (options.watch) {\n this.watcher\n .watch({\n preCompile: false,\n })\n .catch((err) => {\n // don't throw an error, we don't want to break the \"run\" process\n this.logger.error(`compilation failed`, err);\n });\n }\n return { app, port, errors: undefined };\n }\n\n /**\n * get the component ID of a certain app.\n */\n async getAppIdOrThrow(appName: string) {\n const maybeApp = this.appSlot.toArray().find(([, apps]) => {\n return apps.find((app) => app.name === appName);\n });\n\n if (!maybeApp) throw new AppNotFound(appName);\n\n const host = this.componentAspect.getHost();\n return host.resolveComponentId(maybeApp[0]);\n }\n\n private async createAppContext(appName: string, port?: number): Promise<AppContext> {\n const host = this.componentAspect.getHost();\n // const components = await host.list();\n const id = await this.getAppIdOrThrow(appName);\n // const component = components.find((c) => c.id.isEqual(id));\n const component = await host.get(id);\n if (!component) throw new AppNotFound(appName);\n\n const env = await this.envs.createEnvironment([component]);\n const res = await env.run(this.appService);\n const context = res.results[0].data;\n if (!context) throw new AppNotFound(appName);\n const hostRootDir = this.workspace.getComponentPackagePath(component);\n const appContext = new AppContext(appName, context.dev, component, this.workspace.path, context, hostRootDir, port);\n return appContext;\n }\n\n static runtime = MainRuntime;\n static dependencies = [\n CLIAspect,\n LoggerAspect,\n BuilderAspect,\n EnvsAspect,\n ComponentAspect,\n AspectLoaderAspect,\n WorkspaceAspect,\n WatcherAspect,\n ];\n\n static slots = [\n Slot.withType<ApplicationType<unknown>[]>(),\n Slot.withType<Application[]>(),\n Slot.withType<DeploymentProvider[]>(),\n ];\n\n static async provider(\n [cli, loggerAspect, builder, envs, component, aspectLoader, workspace, watcher]: [\n CLIMain,\n LoggerMain,\n BuilderMain,\n EnvsMain,\n ComponentMain,\n AspectLoaderMain,\n Workspace,\n WatcherMain\n ],\n config: ApplicationAspectConfig,\n [appTypeSlot, appSlot, deploymentProviderSlot]: [ApplicationTypeSlot, ApplicationSlot, DeploymentProviderSlot]\n ) {\n const logger = loggerAspect.createLogger(ApplicationAspect.id);\n const appService = new AppService();\n const application = new ApplicationMain(\n appSlot,\n appTypeSlot,\n deploymentProviderSlot,\n config,\n envs,\n component,\n appService,\n aspectLoader,\n workspace,\n logger,\n watcher\n );\n appService.registerAppType = application.registerAppType.bind(application);\n const appCmd = new AppCmd();\n appCmd.commands = [new AppListCmd(application), new RunCmd(application, logger)];\n aspectLoader.registerPlugins([new AppPlugin(appSlot)]);\n builder.registerBuildTasks([new AppsBuildTask(application)]);\n builder.registerSnapTasks([new DeployTask(application, builder)]);\n builder.registerTagTasks([new DeployTask(application, builder)]);\n envs.registerService(appService);\n cli.registerGroup('apps', 'Applications');\n cli.register(new RunCmd(application, logger), new AppListCmdDeprecated(application), appCmd);\n // cli.registerOnStart(async () => {\n // await application.loadAppsToSlot();\n // });\n if (workspace) {\n workspace.onComponentLoad(async (loadedComponent): Promise<ApplicationMetadata | undefined> => {\n const app = application.calculateAppByComponent(loadedComponent);\n if (!app) return undefined;\n return {\n appName: app.name,\n type: app.applicationType,\n };\n });\n }\n\n return application;\n }\n}\n\nApplicationAspect.addRuntime(ApplicationMain);\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AppService","run","context","appContext","Object","assign","dev","errors","transform","env","apps","undefined","appTypesList","appTypes","compute","forEach","appType","registerAppType","getAppTypes"],"sources":["application.service.ts"],"sourcesContent":["import { EnvService, Env, EnvContext, ServiceTransformationMap, ExecutionContext } from '@teambit/envs';\nimport { ApplicationType } from './application-type';\n\ntype ApplicationTransformationMap = ServiceTransformationMap & {\n getAppTypes: () => ApplicationType<any>[];\n};\nexport class AppService implements EnvService<any> {\n name = 'application';\n registerAppType: (appType: ApplicationType<any>) => void;\n\n async run(context: ExecutionContext) {\n const appContext = Object.assign(context, {\n dev: true,\n errors: [],\n });\n\n return appContext;\n }\n\n transform(env: Env, context: EnvContext): ApplicationTransformationMap | undefined {\n // Old env\n if (!env?.apps) return undefined;\n const appTypesList = env.apps()(context);\n const appTypes = appTypesList.compute();\n appTypes.forEach((appType) => {\n this.registerAppType(appType);\n });\n return {\n getAppTypes: () => {\n return appTypes;\n },\n };\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AAMO,MAAMA,UAAU,CAA4B;
|
|
1
|
+
{"version":3,"names":["AppService","constructor","_defineProperty2","default","run","context","appContext","Object","assign","dev","errors","transform","env","apps","undefined","appTypesList","appTypes","compute","forEach","appType","registerAppType","getAppTypes","exports"],"sources":["application.service.ts"],"sourcesContent":["import { EnvService, Env, EnvContext, ServiceTransformationMap, ExecutionContext } from '@teambit/envs';\nimport { ApplicationType } from './application-type';\n\ntype ApplicationTransformationMap = ServiceTransformationMap & {\n getAppTypes: () => ApplicationType<any>[];\n};\nexport class AppService implements EnvService<any> {\n name = 'application';\n registerAppType: (appType: ApplicationType<any>) => void;\n\n async run(context: ExecutionContext) {\n const appContext = Object.assign(context, {\n dev: true,\n errors: [],\n });\n\n return appContext;\n }\n\n transform(env: Env, context: EnvContext): ApplicationTransformationMap | undefined {\n // Old env\n if (!env?.apps) return undefined;\n const appTypesList = env.apps()(context);\n const appTypes = appTypesList.compute();\n appTypes.forEach((appType) => {\n this.registerAppType(appType);\n });\n return {\n getAppTypes: () => {\n return appTypes;\n },\n };\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AAMO,MAAMA,UAAU,CAA4B;EAAAC,YAAA;IAAA,IAAAC,gBAAA,GAAAC,OAAA,gBAC1C,aAAa;IAAA,IAAAD,gBAAA,GAAAC,OAAA;EAAA;EAGpB,MAAMC,GAAGA,CAACC,OAAyB,EAAE;IACnC,MAAMC,UAAU,GAAGC,MAAM,CAACC,MAAM,CAACH,OAAO,EAAE;MACxCI,GAAG,EAAE,IAAI;MACTC,MAAM,EAAE;IACV,CAAC,CAAC;IAEF,OAAOJ,UAAU;EACnB;EAEAK,SAASA,CAACC,GAAQ,EAAEP,OAAmB,EAA4C;IACjF;IACA,IAAI,EAACO,GAAG,aAAHA,GAAG,eAAHA,GAAG,CAAEC,IAAI,GAAE,OAAOC,SAAS;IAChC,MAAMC,YAAY,GAAGH,GAAG,CAACC,IAAI,CAAC,CAAC,CAACR,OAAO,CAAC;IACxC,MAAMW,QAAQ,GAAGD,YAAY,CAACE,OAAO,CAAC,CAAC;IACvCD,QAAQ,CAACE,OAAO,CAAEC,OAAO,IAAK;MAC5B,IAAI,CAACC,eAAe,CAACD,OAAO,CAAC;IAC/B,CAAC,CAAC;IACF,OAAO;MACLE,WAAW,EAAEA,CAAA,KAAM;QACjB,OAAOL,QAAQ;MACjB;IACF,CAAC;EACH;AACF;AAACM,OAAA,CAAAtB,UAAA,GAAAA,UAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BUILD_TASK","ARTIFACTS_DIR_NAME","AppsBuildTask","constructor","application","opt","deploy","ApplicationAspect","id","execute","context","originalSeedersIds","capsuleNetwork","originalSeedersCapsules","map","c","component","toString","result","componentsResults","mapSeries","capsule","length","includes","undefined","apps","loadAppsFromComponent","path","compact","app","runForOneApp","merged","mergeAppsResults","push","componentResult","artifacts","build","appDeployContext","Object","assign","appComponent","name","artifactsDir","getArtifactDirectory","deployContext","defaultArtifacts","getDefaultArtifactDef","applicationType","concat","errors","warnings","_metadata","appsResults","forEach","appResult","join","CAPSULE_ARTIFACTS_DIR","nameSuffix","globPatterns","rootDir"],"sources":["build-application.task.ts"],"sourcesContent":["import { join } from 'path';\nimport mapSeries from 'p-map-series';\nimport {\n BuildTask,\n BuiltTaskResult,\n BuildContext,\n ComponentResult,\n ArtifactDefinition,\n CAPSULE_ARTIFACTS_DIR,\n} from '@teambit/builder';\nimport { compact } from 'lodash';\nimport { Capsule } from '@teambit/isolator';\nimport { Component } from '@teambit/component';\n\nimport { ApplicationAspect } from './application.aspect';\nimport { ApplicationMain } from './application.main.runtime';\nimport { AppBuildContext } from './app-build-context';\nimport { Application } from './application';\n\nexport const BUILD_TASK = 'build_application';\nexport const ARTIFACTS_DIR_NAME = 'apps';\n\nexport type OneAppResult = {\n componentResult: ComponentResult;\n artifacts?: ArtifactDefinition[];\n};\n\nexport type OneComponentResult = {\n componentResult: ComponentResult;\n artifacts?: ArtifactDefinition[];\n};\n\nexport type BuildAppResult = {\n componentResult: ComponentResult;\n artifacts?: ArtifactDefinition[];\n};\n\nexport type Options = {\n deploy: boolean;\n};\nexport class AppsBuildTask implements BuildTask {\n name = BUILD_TASK;\n aspectId = ApplicationAspect.id;\n readonly location = 'end';\n constructor(private application: ApplicationMain, private opt: Options = { deploy: true }) {}\n\n async execute(context: BuildContext): Promise<BuiltTaskResult> {\n const originalSeedersIds = context.capsuleNetwork.originalSeedersCapsules.map((c) => c.component.id.toString());\n const { capsuleNetwork } = context;\n const result: BuiltTaskResult = {\n componentsResults: [],\n };\n\n // const componentsResults = await mapSeries(apps, async (app): Promise<AppsResults | undefined> => {\n await mapSeries(capsuleNetwork.originalSeedersCapsules, async (capsule) => {\n const component = capsule.component;\n if (originalSeedersIds && originalSeedersIds.length && !originalSeedersIds.includes(component.id.toString())) {\n return undefined;\n }\n\n const apps = await this.application.loadAppsFromComponent(component, capsule.path);\n if (!apps || !apps.length) return undefined;\n const componentsResults = await mapSeries(compact(apps), async (app) =>\n this.runForOneApp(app, component, capsule, context)\n );\n const merged = this.mergeAppsResults(compact(componentsResults));\n if (merged) {\n result.componentsResults.push(merged.componentResult);\n if (!result.artifacts) result.artifacts = [];\n result.artifacts.push(...(merged.artifacts || []));\n }\n return undefined;\n });\n\n return result;\n }\n\n private async runForOneApp(\n app: Application,\n component: Component,\n capsule: Capsule,\n context: BuildContext\n ): Promise<OneAppResult | undefined> {\n if (!app.build) return undefined;\n // const { component } = capsule;\n const appDeployContext: AppBuildContext = Object.assign(context, {\n capsule,\n appComponent: component,\n name: app.name,\n artifactsDir: this.getArtifactDirectory(),\n });\n const deployContext = await app.build(appDeployContext);\n const defaultArtifacts: ArtifactDefinition[] = this.getDefaultArtifactDef(app.applicationType || app.name);\n const artifacts = defaultArtifacts.concat(deployContext.artifacts || []);\n\n return {\n artifacts,\n componentResult: {\n component: capsule.component,\n errors: deployContext.errors,\n warnings: deployContext.warnings,\n /**\n * @guysaar223\n * @ram8\n * TODO: we need to think how to pass private metadata between build pipes, maybe create shared context\n * or create new deploy context on builder\n */\n // @ts-ignore\n _metadata: { deployContext },\n },\n };\n }\n\n private mergeAppsResults(appsResults: OneAppResult[]): OneComponentResult | undefined {\n if (!appsResults || !appsResults.length) return undefined;\n const merged: OneComponentResult = {\n artifacts: [],\n componentResult: {\n component: appsResults[0].componentResult.component,\n errors: [],\n warnings: [],\n // @ts-ignore\n _metadata: {},\n },\n };\n appsResults.forEach((appResult) => {\n merged.artifacts = (merged.artifacts || []).concat(appResult.artifacts || []);\n merged.componentResult.errors = (merged.componentResult.errors || []).concat(\n appResult.componentResult.errors || []\n );\n merged.componentResult.warnings = (merged.componentResult.warnings || []).concat(\n appResult.componentResult.warnings || []\n );\n });\n return merged;\n }\n\n private getArtifactDirectory() {\n return join(CAPSULE_ARTIFACTS_DIR, ARTIFACTS_DIR_NAME);\n }\n\n private getDefaultArtifactDef(nameSuffix: string): ArtifactDefinition[] {\n return [\n {\n name: `app-build-${nameSuffix}`,\n globPatterns: ['**'],\n rootDir: this.getArtifactDirectory(),\n },\n ];\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_path","data","require","_pMapSeries","_interopRequireDefault","_builder","_lodash","_application","BUILD_TASK","exports","ARTIFACTS_DIR_NAME","AppsBuildTask","constructor","application","opt","deploy","_defineProperty2","default","ApplicationAspect","id","execute","context","originalSeedersIds","capsuleNetwork","originalSeedersCapsules","map","c","component","toString","result","componentsResults","mapSeries","capsule","length","includes","undefined","apps","loadAppsFromComponent","path","compact","app","runForOneApp","merged","mergeAppsResults","push","componentResult","artifacts","build","appDeployContext","Object","assign","appComponent","name","artifactsDir","getArtifactDirectory","deployContext","defaultArtifacts","getDefaultArtifactDef","applicationType","concat","errors","warnings","_metadata","appsResults","forEach","appResult","join","CAPSULE_ARTIFACTS_DIR","nameSuffix","globPatterns","rootDir"],"sources":["build-application.task.ts"],"sourcesContent":["import { join } from 'path';\nimport mapSeries from 'p-map-series';\nimport {\n BuildTask,\n BuiltTaskResult,\n BuildContext,\n ComponentResult,\n ArtifactDefinition,\n CAPSULE_ARTIFACTS_DIR,\n} from '@teambit/builder';\nimport { compact } from 'lodash';\nimport { Capsule } from '@teambit/isolator';\nimport { Component } from '@teambit/component';\n\nimport { ApplicationAspect } from './application.aspect';\nimport { ApplicationMain } from './application.main.runtime';\nimport { AppBuildContext } from './app-build-context';\nimport { Application } from './application';\n\nexport const BUILD_TASK = 'build_application';\nexport const ARTIFACTS_DIR_NAME = 'apps';\n\nexport type OneAppResult = {\n componentResult: ComponentResult;\n artifacts?: ArtifactDefinition[];\n};\n\nexport type OneComponentResult = {\n componentResult: ComponentResult;\n artifacts?: ArtifactDefinition[];\n};\n\nexport type BuildAppResult = {\n componentResult: ComponentResult;\n artifacts?: ArtifactDefinition[];\n};\n\nexport type Options = {\n deploy: boolean;\n};\nexport class AppsBuildTask implements BuildTask {\n name = BUILD_TASK;\n aspectId = ApplicationAspect.id;\n readonly location = 'end';\n constructor(private application: ApplicationMain, private opt: Options = { deploy: true }) {}\n\n async execute(context: BuildContext): Promise<BuiltTaskResult> {\n const originalSeedersIds = context.capsuleNetwork.originalSeedersCapsules.map((c) => c.component.id.toString());\n const { capsuleNetwork } = context;\n const result: BuiltTaskResult = {\n componentsResults: [],\n };\n\n // const componentsResults = await mapSeries(apps, async (app): Promise<AppsResults | undefined> => {\n await mapSeries(capsuleNetwork.originalSeedersCapsules, async (capsule) => {\n const component = capsule.component;\n if (originalSeedersIds && originalSeedersIds.length && !originalSeedersIds.includes(component.id.toString())) {\n return undefined;\n }\n\n const apps = await this.application.loadAppsFromComponent(component, capsule.path);\n if (!apps || !apps.length) return undefined;\n const componentsResults = await mapSeries(compact(apps), async (app) =>\n this.runForOneApp(app, component, capsule, context)\n );\n const merged = this.mergeAppsResults(compact(componentsResults));\n if (merged) {\n result.componentsResults.push(merged.componentResult);\n if (!result.artifacts) result.artifacts = [];\n result.artifacts.push(...(merged.artifacts || []));\n }\n return undefined;\n });\n\n return result;\n }\n\n private async runForOneApp(\n app: Application,\n component: Component,\n capsule: Capsule,\n context: BuildContext\n ): Promise<OneAppResult | undefined> {\n if (!app.build) return undefined;\n // const { component } = capsule;\n const appDeployContext: AppBuildContext = Object.assign(context, {\n capsule,\n appComponent: component,\n name: app.name,\n artifactsDir: this.getArtifactDirectory(),\n });\n const deployContext = await app.build(appDeployContext);\n const defaultArtifacts: ArtifactDefinition[] = this.getDefaultArtifactDef(app.applicationType || app.name);\n const artifacts = defaultArtifacts.concat(deployContext.artifacts || []);\n\n return {\n artifacts,\n componentResult: {\n component: capsule.component,\n errors: deployContext.errors,\n warnings: deployContext.warnings,\n /**\n * @guysaar223\n * @ram8\n * TODO: we need to think how to pass private metadata between build pipes, maybe create shared context\n * or create new deploy context on builder\n */\n // @ts-ignore\n _metadata: { deployContext },\n },\n };\n }\n\n private mergeAppsResults(appsResults: OneAppResult[]): OneComponentResult | undefined {\n if (!appsResults || !appsResults.length) return undefined;\n const merged: OneComponentResult = {\n artifacts: [],\n componentResult: {\n component: appsResults[0].componentResult.component,\n errors: [],\n warnings: [],\n // @ts-ignore\n _metadata: {},\n },\n };\n appsResults.forEach((appResult) => {\n merged.artifacts = (merged.artifacts || []).concat(appResult.artifacts || []);\n merged.componentResult.errors = (merged.componentResult.errors || []).concat(\n appResult.componentResult.errors || []\n );\n merged.componentResult.warnings = (merged.componentResult.warnings || []).concat(\n appResult.componentResult.warnings || []\n );\n });\n return merged;\n }\n\n private getArtifactDirectory() {\n return join(CAPSULE_ARTIFACTS_DIR, ARTIFACTS_DIR_NAME);\n }\n\n private getDefaultArtifactDef(nameSuffix: string): ArtifactDefinition[] {\n return [\n {\n name: `app-build-${nameSuffix}`,\n globPatterns: ['**'],\n rootDir: this.getArtifactDirectory(),\n },\n ];\n }\n}\n"],"mappings":"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"}
|
package/dist/deploy.task.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DEPLOY_TASK","DeployTask","constructor","application","builder","ApplicationAspect","id","execute","context","apps","listApps","componentsResults","mapSeries","app","aspectId","getAppAspect","name","undefined","capsule","capsuleNetwork","seedersCapsules","getCapsuleIgnoreVersion","ComponentID","fromString","component","buildTask","getBuildTask","previousTasksResults","envRuntime","componentResults","find","res","isEqual","ignoreVersion","_metadata","deployContext","appDeployContext","Object","assign","appComponent","deploy","componentResult","_componentsResults","map","filter","a","taskResults","runtime","task","env","BUILD_TASK"],"sources":["deploy.task.ts"],"sourcesContent":["import mapSeries from 'p-map-series';\nimport { BuilderMain, BuildTask, BuildContext, ComponentResult, TaskResults } from '@teambit/builder';\nimport { ComponentID } from '@teambit/component';\nimport { ApplicationAspect } from './application.aspect';\nimport { ApplicationMain } from './application.main.runtime';\nimport { BUILD_TASK } from './build-application.task';\nimport { AppDeployContext } from './app-deploy-context';\n\nexport const DEPLOY_TASK = 'deploy_application';\n\nexport class DeployTask implements BuildTask {\n name = DEPLOY_TASK;\n aspectId = ApplicationAspect.id;\n readonly location = 'end';\n constructor(private application: ApplicationMain, private builder: BuilderMain) {}\n\n async execute(context: BuildContext): Promise<any> {\n const apps = this.application.listApps();\n const componentsResults = await mapSeries(apps, async (app): Promise<any> => {\n const aspectId = this.application.getAppAspect(app.name);\n if (!aspectId) return undefined;\n const capsule = context.capsuleNetwork.seedersCapsules.getCapsuleIgnoreVersion(ComponentID.fromString(aspectId));\n if (!capsule || !capsule?.component) return undefined;\n const buildTask = this.getBuildTask(context.previousTasksResults, context.envRuntime.id);\n if (!buildTask) return undefined;\n const componentResults = buildTask.componentsResults.find((res) =>\n res.component.id.isEqual(capsule.component.id, { ignoreVersion: true })\n );\n /**\n * @guysaar223\n * @ram8\n * TODO: we need to think how to pass private metadata between build pipes, maybe create shared context\n * or create new deploy context on builder\n */\n // @ts-ignore\n const _metadata = componentResults?._metadata?.deployContext || {};\n const appDeployContext: AppDeployContext = Object.assign(context, _metadata, {\n capsule,\n appComponent: capsule.component,\n });\n if (!app.deploy) return undefined;\n await app.deploy(appDeployContext);\n\n return {\n componentResult: { component: capsule.component },\n };\n });\n\n const _componentsResults = componentsResults\n .map((res) => {\n return res?.componentResult;\n })\n .filter((a) => !!a) as ComponentResult[];\n\n return {\n componentsResults: _componentsResults,\n };\n }\n\n private getBuildTask(taskResults: TaskResults[], runtime: string) {\n return taskResults.find(\n ({ task, env }) => task.aspectId === ApplicationAspect.id && task.name === BUILD_TASK && env.id === runtime\n );\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AAAA;EAAA;
|
|
1
|
+
{"version":3,"names":["_pMapSeries","data","_interopRequireDefault","require","_component","_application","_buildApplication","DEPLOY_TASK","exports","DeployTask","constructor","application","builder","_defineProperty2","default","ApplicationAspect","id","execute","context","apps","listApps","componentsResults","mapSeries","app","_componentResults$_me","aspectId","getAppAspect","name","undefined","capsule","capsuleNetwork","seedersCapsules","getCapsuleIgnoreVersion","ComponentID","fromString","component","buildTask","getBuildTask","previousTasksResults","envRuntime","componentResults","find","res","isEqual","ignoreVersion","_metadata","deployContext","appDeployContext","Object","assign","appComponent","deploy","componentResult","_componentsResults","map","filter","a","taskResults","runtime","task","env","BUILD_TASK"],"sources":["deploy.task.ts"],"sourcesContent":["import mapSeries from 'p-map-series';\nimport { BuilderMain, BuildTask, BuildContext, ComponentResult, TaskResults } from '@teambit/builder';\nimport { ComponentID } from '@teambit/component';\nimport { ApplicationAspect } from './application.aspect';\nimport { ApplicationMain } from './application.main.runtime';\nimport { BUILD_TASK } from './build-application.task';\nimport { AppDeployContext } from './app-deploy-context';\n\nexport const DEPLOY_TASK = 'deploy_application';\n\nexport class DeployTask implements BuildTask {\n name = DEPLOY_TASK;\n aspectId = ApplicationAspect.id;\n readonly location = 'end';\n constructor(private application: ApplicationMain, private builder: BuilderMain) {}\n\n async execute(context: BuildContext): Promise<any> {\n const apps = this.application.listApps();\n const componentsResults = await mapSeries(apps, async (app): Promise<any> => {\n const aspectId = this.application.getAppAspect(app.name);\n if (!aspectId) return undefined;\n const capsule = context.capsuleNetwork.seedersCapsules.getCapsuleIgnoreVersion(ComponentID.fromString(aspectId));\n if (!capsule || !capsule?.component) return undefined;\n const buildTask = this.getBuildTask(context.previousTasksResults, context.envRuntime.id);\n if (!buildTask) return undefined;\n const componentResults = buildTask.componentsResults.find((res) =>\n res.component.id.isEqual(capsule.component.id, { ignoreVersion: true })\n );\n /**\n * @guysaar223\n * @ram8\n * TODO: we need to think how to pass private metadata between build pipes, maybe create shared context\n * or create new deploy context on builder\n */\n // @ts-ignore\n const _metadata = componentResults?._metadata?.deployContext || {};\n const appDeployContext: AppDeployContext = Object.assign(context, _metadata, {\n capsule,\n appComponent: capsule.component,\n });\n if (!app.deploy) return undefined;\n await app.deploy(appDeployContext);\n\n return {\n componentResult: { component: capsule.component },\n };\n });\n\n const _componentsResults = componentsResults\n .map((res) => {\n return res?.componentResult;\n })\n .filter((a) => !!a) as ComponentResult[];\n\n return {\n componentsResults: _componentsResults,\n };\n }\n\n private getBuildTask(taskResults: TaskResults[], runtime: string) {\n return taskResults.find(\n ({ task, env }) => task.aspectId === ApplicationAspect.id && task.name === BUILD_TASK && env.id === runtime\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AppNoSsr","Error","constructor","appName"],"sources":["app-no-ssr.ts"],"sourcesContent":["export class AppNoSsr extends Error {\n constructor(appName: string) {\n super(`app \"${appName}\" does not support serverside execution`);\n }\n}\n"],"mappings":";;;;;;AAAO,MAAMA,QAAQ,SAASC,KAAK,CAAC;EAClCC,
|
|
1
|
+
{"version":3,"names":["AppNoSsr","Error","constructor","appName","exports"],"sources":["app-no-ssr.ts"],"sourcesContent":["export class AppNoSsr extends Error {\n constructor(appName: string) {\n super(`app \"${appName}\" does not support serverside execution`);\n }\n}\n"],"mappings":";;;;;;AAAO,MAAMA,QAAQ,SAASC,KAAK,CAAC;EAClCC,WAAWA,CAACC,OAAe,EAAE;IAC3B,KAAK,CAAE,QAAOA,OAAQ,yCAAwC,CAAC;EACjE;AACF;AAACC,OAAA,CAAAJ,QAAA,GAAAA,QAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AppNotFound","Error","constructor","appName"],"sources":["app-not-found.ts"],"sourcesContent":["export class AppNotFound extends Error {\n constructor(appName: string) {\n super(`app \"${appName}\" was not found`);\n }\n}\n"],"mappings":";;;;;;AAAO,MAAMA,WAAW,SAASC,KAAK,CAAC;EACrCC,
|
|
1
|
+
{"version":3,"names":["AppNotFound","Error","constructor","appName","exports"],"sources":["app-not-found.ts"],"sourcesContent":["export class AppNotFound extends Error {\n constructor(appName: string) {\n super(`app \"${appName}\" was not found`);\n }\n}\n"],"mappings":";;;;;;AAAO,MAAMA,WAAW,SAASC,KAAK,CAAC;EACrCC,WAAWA,CAACC,OAAe,EAAE;IAC3B,KAAK,CAAE,QAAOA,OAAQ,iBAAgB,CAAC;EACzC;AACF;AAACC,OAAA,CAAAJ,WAAA,GAAAA,WAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export { AppNotFound } from './app-not-found';\n"],"mappings":";;;;;;;;;;;AAAA;EAAA;
|
|
1
|
+
{"version":3,"names":["_appNotFound","data","require"],"sources":["index.ts"],"sourcesContent":["export { AppNotFound } from './app-not-found';\n"],"mappings":";;;;;;;;;;;AAAA,SAAAA,aAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,YAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export { ApplicationAspect } from './application.aspect';\nexport type { ApplicationMain, ApplicationMetadata } from './application.main.runtime';\nexport type { Application, DeployFn, AppResult } from './application';\nexport { AppContext } from './app-context';\nexport { DeploymentProvider } from './deployment-provider';\nexport { ApplicationType } from './application-type';\nexport { AppDeployContext } from './app-deploy-context';\nexport { AppBuildContext } from './app-build-context';\nexport { AppBuildResult } from './app-build-result';\nexport { ARTIFACTS_DIR_NAME as APPS_ARTIFACTS_DIR_NAME } from './build-application.task';\nexport type { AppsEnv } from './apps-env-type';\nexport { AppTypeList } from './app-type-list';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;EAAA;
|
|
1
|
+
{"version":3,"names":["_application","data","require","_appContext","_deploymentProvider","_applicationType","_appDeployContext","_appBuildContext","_appBuildResult","_buildApplication","_appTypeList"],"sources":["index.ts"],"sourcesContent":["export { ApplicationAspect } from './application.aspect';\nexport type { ApplicationMain, ApplicationMetadata } from './application.main.runtime';\nexport type { Application, DeployFn, AppResult } from './application';\nexport { AppContext } from './app-context';\nexport { DeploymentProvider } from './deployment-provider';\nexport { ApplicationType } from './application-type';\nexport { AppDeployContext } from './app-deploy-context';\nexport { AppBuildContext } from './app-build-context';\nexport { AppBuildResult } from './app-build-result';\nexport { ARTIFACTS_DIR_NAME as APPS_ARTIFACTS_DIR_NAME } from './build-application.task';\nexport type { AppsEnv } from './apps-env-type';\nexport { AppTypeList } from './app-type-list';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAAA,aAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,YAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,SAAAE,YAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,WAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,oBAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,mBAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,iBAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,gBAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,kBAAA;EAAA,MAAAL,IAAA,GAAAC,OAAA;EAAAI,iBAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAM,iBAAA;EAAA,MAAAN,IAAA,GAAAC,OAAA;EAAAK,gBAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAO,gBAAA;EAAA,MAAAP,IAAA,GAAAC,OAAA;EAAAM,eAAA,YAAAA,CAAA;IAAA,OAAAP,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAQ,kBAAA;EAAA,MAAAR,IAAA,GAAAC,OAAA;EAAAO,iBAAA,YAAAA,CAAA;IAAA,OAAAR,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAS,aAAA;EAAA,MAAAT,IAAA,GAAAC,OAAA;EAAAQ,YAAA,YAAAA,CAAA;IAAA,OAAAT,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.harmony_application@0.0.
|
|
2
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.harmony_application@0.0.
|
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.harmony_application@0.0.757/dist/application.composition.js';
|
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.harmony_application@0.0.757/dist/application.docs.mdx';
|
|
3
3
|
|
|
4
4
|
export const compositions = [compositions_0];
|
|
5
5
|
export const overview = [overview_0];
|
package/dist/run.cmd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["RunCmd","constructor","application","logger","name","description","render","appName","dev","skipWatch","ssr","port","exactPort","errors","runApp","watch","code","
|
|
1
|
+
{"version":3,"names":["_react","data","_interopRequireDefault","require","_pluralize","_ink","RunCmd","constructor","application","logger","_defineProperty2","default","name","description","render","appName","dev","skipWatch","ssr","port","exactPort","errors","runApp","watch","code","createElement","ShowErrors","Text","exports","Fragment","Newline","underline","pluralize","length","map","x","idx","key","toString"],"sources":["run.cmd.tsx"],"sourcesContent":["import React from 'react';\nimport pluralize from 'pluralize';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { Newline, Text } from 'ink';\nimport { Logger } from '@teambit/logger';\nimport type { RenderResult } from '@teambit/legacy/dist/cli/command';\nimport { ApplicationMain } from './application.main.runtime';\n\ntype RunOptions = {\n dev: boolean;\n verbose: boolean;\n skipWatch: boolean;\n ssr: boolean;\n port: string;\n};\n\nexport class RunCmd implements Command {\n name = 'run <app-name>';\n description = \"run an app (independent of bit's dev server)\";\n helpUrl = 'docs/apps/apps-overview';\n arguments = [\n {\n name: 'app-name',\n description:\n \"the app's name is registered by the app (run 'bit app list' to list the names of the available apps)\",\n },\n ];\n alias = 'c';\n group = 'apps';\n options = [\n ['d', 'dev', 'start the application in dev mode.'],\n ['p', 'port [port-number]', 'port of the app'],\n ['v', 'verbose', 'showing verbose output for inspection and prints stack trace'],\n ['', 'skip-watch', 'avoid running the watch process that compiles components in the background'],\n ['', 'ssr', 'run app in server side rendering mode.'],\n ] as CommandOptions;\n\n constructor(\n /**\n * access to the extension instance.\n */\n private application: ApplicationMain,\n\n private logger: Logger\n ) {}\n\n async render(\n [appName]: [string],\n { dev, skipWatch, ssr, port: exactPort }: RunOptions\n ): Promise<React.ReactElement | RenderResult> {\n // remove wds logs until refactoring webpack to a worker through the Worker aspect.\n const { port, errors } = await this.application.runApp(appName, {\n dev,\n watch: !skipWatch,\n ssr,\n port: +exactPort,\n });\n\n if (errors) {\n return {\n code: 1,\n data: <ShowErrors errors={errors} />,\n };\n }\n\n if (port) {\n return (\n <Text>\n {appName} app is running on http://localhost:{port}\n </Text>\n );\n }\n return <Text>{appName} app is running</Text>;\n }\n}\n\nfunction ShowErrors({ errors }: { errors: Error[] }) {\n return (\n <>\n <Newline />\n <Text underline>Fatal {pluralize('error', errors.length)}:</Text>\n {errors.map((x, idx) => (\n <Text key={idx}>{x.toString()}</Text>\n ))}\n </>\n );\n}\n"],"mappings":"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"}
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/application",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.757",
|
|
4
4
|
"homepage": "https://bit.cloud/teambit/harmony/application",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.harmony",
|
|
8
8
|
"name": "application",
|
|
9
|
-
"version": "0.0.
|
|
9
|
+
"version": "0.0.757"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"chalk": "2.4.2",
|
|
@@ -17,17 +17,17 @@
|
|
|
17
17
|
"core-js": "^3.0.0",
|
|
18
18
|
"@babel/runtime": "7.20.0",
|
|
19
19
|
"@teambit/harmony": "0.4.6",
|
|
20
|
-
"@teambit/builder": "0.0.
|
|
21
|
-
"@teambit/component": "0.0.
|
|
22
|
-
"@teambit/isolator": "0.0.
|
|
23
|
-
"@teambit/envs": "0.0.
|
|
20
|
+
"@teambit/builder": "0.0.1115",
|
|
21
|
+
"@teambit/component": "0.0.1115",
|
|
22
|
+
"@teambit/isolator": "0.0.1115",
|
|
23
|
+
"@teambit/envs": "0.0.1115",
|
|
24
24
|
"@teambit/cli-table": "0.0.41",
|
|
25
|
-
"@teambit/cli": "0.0.
|
|
26
|
-
"@teambit/aspect-loader": "0.0.
|
|
25
|
+
"@teambit/cli": "0.0.747",
|
|
26
|
+
"@teambit/aspect-loader": "0.0.1115",
|
|
27
27
|
"@teambit/bit-error": "0.0.402",
|
|
28
|
-
"@teambit/logger": "0.0.
|
|
29
|
-
"@teambit/watcher": "0.0.
|
|
30
|
-
"@teambit/workspace": "0.0.
|
|
28
|
+
"@teambit/logger": "0.0.840",
|
|
29
|
+
"@teambit/watcher": "0.0.127",
|
|
30
|
+
"@teambit/workspace": "0.0.1115"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
33
|
"@types/react": "^17.0.8",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"@types/testing-library__jest-dom": "5.9.5"
|
|
41
41
|
},
|
|
42
42
|
"peerDependencies": {
|
|
43
|
-
"@teambit/legacy": "1.0.
|
|
43
|
+
"@teambit/legacy": "1.0.526",
|
|
44
44
|
"react": "^16.8.0 || ^17.0.0",
|
|
45
45
|
"react-dom": "^16.8.0 || ^17.0.0"
|
|
46
46
|
},
|
|
Binary file
|