@teambit/application 1.0.383 → 1.0.385

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.cmd.js CHANGED
@@ -11,6 +11,13 @@ function _chalk() {
11
11
  };
12
12
  return data;
13
13
  }
14
+ function _bitError() {
15
+ const data = require("@teambit/bit-error");
16
+ _bitError = function () {
17
+ return data;
18
+ };
19
+ return data;
20
+ }
14
21
  function _cliTable() {
15
22
  const data = require("@teambit/cli-table");
16
23
  _cliTable = function () {
@@ -41,7 +48,10 @@ class AppListCmd {
41
48
  if (json) return JSON.stringify(appComponents, null, 2);
42
49
  if (!appComponents.length) return _chalk().default.yellow('no apps found');
43
50
  const rows = appComponents.flatMap(([id, apps]) => {
44
- return apps.map(app => [id, app.name]);
51
+ return apps.map(app => {
52
+ if (!app.name) throw new (_bitError().BitError)(`app ${id.toString()} is missing a name`);
53
+ return [id, app.name];
54
+ });
45
55
  });
46
56
  const table = new (_cliTable().CLITable)(['id', 'name'], rows);
47
57
  return table.render();
@@ -1 +1 @@
1
- {"version":3,"names":["_chalk","data","_interopRequireDefault","require","_cliTable","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","AppListCmd","constructor","applicationAspect","report","args","json","loadAllAppsAsAspects","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 await this.applicationAspect.loadAllAppsAsAspects();\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":"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","ignoreList":[]}
1
+ {"version":3,"names":["_chalk","data","_interopRequireDefault","require","_bitError","_cliTable","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","AppListCmd","constructor","applicationAspect","report","args","json","loadAllAppsAsAspects","appComponents","mapApps","JSON","stringify","length","chalk","yellow","rows","flatMap","id","apps","map","app","name","BitError","toString","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 { BitError } from '@teambit/bit-error';\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 await this.applicationAspect.loadAllAppsAsAspects();\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) => {\n if (!app.name) throw new BitError(`app ${id.toString()} is missing a name`);\n return [id, app.name];\n });\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":"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","ignoreList":[]}
@@ -102,13 +102,6 @@ function _application() {
102
102
  };
103
103
  return data;
104
104
  }
105
- function _appList() {
106
- const data = require("./app-list.cmd");
107
- _appList = function () {
108
- return data;
109
- };
110
- return data;
111
- }
112
105
  function _buildApplication() {
113
106
  const data = require("./build-application.task");
114
107
  _buildApplication = function () {
@@ -486,7 +479,7 @@ class ApplicationMain {
486
479
  builder.registerTagTasks([new (_deploy().DeployTask)(application, builder)]);
487
480
  envs.registerService(appService);
488
481
  cli.registerGroup('apps', 'Applications');
489
- cli.register(new (_run().RunCmd)(application, logger), new (_appList().AppListCmdDeprecated)(application), appCmd);
482
+ cli.register(new (_run().RunCmd)(application, logger), appCmd);
490
483
  // cli.registerOnStart(async () => {
491
484
  // await application.loadAppsToSlot();
492
485
  // });
@@ -1 +1 @@
1
- {"version":3,"names":["_cli","data","require","_lodash","_aspectLoader","_harmony","_workspace","_bitError","_watcher","_builder","_scope","_logger","_envs","_component","_exceptions","_application","_appList","_buildApplication","_run","_application2","_app","_app2","_appType","_appContext","_deploy","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ApplicationMain","constructor","appSlot","appTypeSlot","deploymentProviderSlot","config","envs","componentAspect","appService","aspectLoader","workspace","logger","watcher","harmony","dev","ssr","watch","defaultPortRange","registerApp","app","register","listApps","flatten","values","mapApps","toArray","loadAllAppsAsAspects","poolIds","apps","listAppsComponents","appIds","map","id","getHost","loadAspects","toString","listAppsById","undefined","get","getAppById","head","calculateAppByComponent","component","listAppTypes","listAppsFromComponents","components","getMany","list","appTypesPatterns","getAppPatterns","appsComponents","hasAppTypePattern","patterns","files","filesystem","byGlob","appTypes","appType","getAppPattern","concat","BIT_APP_PATTERN","loadApps","pluginsToLoad","flatMap","appComponent","file","path","appManifests","Promise","all","compact","pluginPath","isModule","isEsmModule","appManifest","loadEsm","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","AppTypePlugin","registerPlugins","getAppAspect","getAppOrThrow","AppNotFound","computeOptions","opts","defaultOpts","loadAppsToSlot","runApp","options","context","createAppContext","port","instance","run","preCompile","compile","catch","isOldApi","errors","getAppIdOrThrow","maybeApp","host","resolveComponentId","env","createEnvironment","res","results","hostRootDir","getComponentPackagePath","workspaceComponentDir","componentDir","appContext","AppContext","createAppBuildContext","capsuleRootDir","provider","cli","loggerAspect","builder","scope","createLogger","ApplicationAspect","AppService","application","bind","appCmd","AppCmd","commands","AppListCmd","RunCmd","AppPlugin","registerBuildTasks","AppsBuildTask","registerSnapTasks","DeployTask","registerTagTasks","registerService","registerGroup","AppListCmdDeprecated","calcAppOnLoad","loadedComponent","type","applicationType","registerOnComponentLoad","registerOnCompAspectReCalc","exports","CLIAspect","LoggerAspect","BuilderAspect","EnvsAspect","ComponentAspect","AspectLoaderAspect","WorkspaceAspect","WatcherAspect","ScopeAspect","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, Harmony } 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 { ScopeAspect, ScopeMain } from '@teambit/scope';\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, BIT_APP_PATTERN } from './app.plugin';\nimport { AppTypePlugin } from './app-type.plugin';\nimport { AppContext } from './app-context';\nimport { DeployTask } from './deploy.task';\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 private harmony: Harmony\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 * instead of adding apps to workspace.jsonc, this method gets all apps components and load them as aspects so then\n * they could register to the apps slots and be available to list/run etc.\n * if poolIds is provided, it will load only the apps that are part of the pool.\n */\n async loadAllAppsAsAspects(poolIds?: ComponentID[]): Promise<ComponentID[]> {\n const apps = await this.listAppsComponents(poolIds);\n const appIds = apps.map((app) => app.id);\n await this.componentAspect.getHost().loadAspects(appIds.map((id) => id.toString()));\n return appIds;\n }\n\n /**\n * list apps by a component id.\n * make sure to call `this.loadAllAppsAsAspects` before calling this method in case the app is not listed in workspace.jsonc\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 * make sure to call `this.loadAllAppsAsAspects` before calling this method in case the app is not listed in workspace.jsonc\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 /**\n * list all components that are apps.\n * if poolIds is provided, it will load only the apps that are part of the pool.\n */\n async listAppsComponents(poolIds?: ComponentID[]): Promise<Component[]> {\n const components = poolIds\n ? await this.componentAspect.getHost().getMany(poolIds)\n : 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.concat(BIT_APP_PATTERN);\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 = Promise.all(\n compact(\n pluginsToLoad.map(async (pluginPath) => {\n try {\n const isModule = await this.aspectLoader.isEsmModule(pluginPath);\n if (isModule) {\n const appManifest = await this.aspectLoader.loadEsm(pluginPath);\n return appManifest;\n }\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\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 * make sure to call `this.loadAllAppsAsAspects` before calling this method in case the app is not listed in workspace.jsonc\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>(...appTypes: Array<ApplicationType<T>>) {\n const plugins = appTypes.map((appType) => {\n return new AppTypePlugin(this.getAppPattern(appType), appType, this.appSlot);\n });\n\n this.aspectLoader.registerPlugins(plugins);\n this.appTypeSlot.register(appTypes);\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 * make sure to call `this.loadAllAppsAsAspects` before calling this method in case the app is not listed in workspace.jsonc\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 /**\n * run an app.\n * make sure to call `this.loadAllAppsAsAspects` before calling this method in case the app is not listed in workspace.jsonc\n */\n async runApp(\n appName: string,\n options?: ServeAppOptions\n ): Promise<{\n app: Application;\n port: number | undefined;\n errors?: Error[];\n isOldApi: boolean;\n }> {\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 const instance = await app.run(context);\n if (options.watch) {\n this.watcher\n .watch({\n preCompile: false,\n compile: true,\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\n const isOldApi = typeof instance === 'number';\n const port = isOldApi ? instance : instance?.port;\n\n return { app, port, errors: undefined, isOldApi };\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 = await this.workspace.getComponentPackagePath(component);\n const workspaceComponentDir = this.workspace.componentDir(component.id);\n\n const appContext = new AppContext(\n appName,\n this.harmony,\n context.dev,\n component,\n this.workspace.path,\n context,\n hostRootDir,\n port,\n workspaceComponentDir\n );\n return appContext;\n }\n\n async createAppBuildContext(id: ComponentID, appName: string, capsuleRootDir: string, rootDir?: string) {\n const host = this.componentAspect.getHost();\n // const components = await host.list();\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\n const appContext = new AppContext(\n appName,\n this.harmony,\n context.dev,\n component,\n capsuleRootDir,\n context,\n rootDir,\n undefined,\n undefined\n );\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 ScopeAspect,\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, scope]: [\n CLIMain,\n LoggerMain,\n BuilderMain,\n EnvsMain,\n ComponentMain,\n AspectLoaderMain,\n Workspace,\n WatcherMain,\n ScopeMain\n ],\n config: ApplicationAspectConfig,\n [appTypeSlot, appSlot, deploymentProviderSlot]: [ApplicationTypeSlot, ApplicationSlot, DeploymentProviderSlot],\n harmony: Harmony\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 harmony\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 const calcAppOnLoad = 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 if (workspace) {\n workspace.registerOnComponentLoad(calcAppOnLoad);\n }\n if (scope) {\n scope.registerOnCompAspectReCalc(calcAppOnLoad);\n }\n\n return application;\n }\n}\n\nApplicationAspect.addRuntime(ApplicationMain);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_cli","data","require","_lodash","_aspectLoader","_harmony","_workspace","_bitError","_watcher","_builder","_scope","_logger","_envs","_component","_exceptions","_application","_buildApplication","_run","_application2","_app","_app2","_appType","_appContext","_deploy","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ApplicationMain","constructor","appSlot","appTypeSlot","deploymentProviderSlot","config","envs","componentAspect","appService","aspectLoader","workspace","logger","watcher","harmony","dev","ssr","watch","defaultPortRange","registerApp","app","register","listApps","flatten","values","mapApps","toArray","loadAllAppsAsAspects","poolIds","apps","listAppsComponents","appIds","map","id","getHost","loadAspects","toString","listAppsById","undefined","get","getAppById","head","calculateAppByComponent","component","listAppTypes","listAppsFromComponents","components","getMany","list","appTypesPatterns","getAppPatterns","appsComponents","hasAppTypePattern","patterns","files","filesystem","byGlob","appTypes","appType","getAppPattern","concat","BIT_APP_PATTERN","loadApps","pluginsToLoad","flatMap","appComponent","file","path","appManifests","Promise","all","compact","pluginPath","isModule","isEsmModule","appManifest","loadEsm","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","AppTypePlugin","registerPlugins","getAppAspect","getAppOrThrow","AppNotFound","computeOptions","opts","defaultOpts","loadAppsToSlot","runApp","options","context","createAppContext","port","instance","run","preCompile","compile","catch","isOldApi","errors","getAppIdOrThrow","maybeApp","host","resolveComponentId","env","createEnvironment","res","results","hostRootDir","getComponentPackagePath","workspaceComponentDir","componentDir","appContext","AppContext","createAppBuildContext","capsuleRootDir","provider","cli","loggerAspect","builder","scope","createLogger","ApplicationAspect","AppService","application","bind","appCmd","AppCmd","commands","AppListCmd","RunCmd","AppPlugin","registerBuildTasks","AppsBuildTask","registerSnapTasks","DeployTask","registerTagTasks","registerService","registerGroup","calcAppOnLoad","loadedComponent","type","applicationType","registerOnComponentLoad","registerOnCompAspectReCalc","exports","CLIAspect","LoggerAspect","BuilderAspect","EnvsAspect","ComponentAspect","AspectLoaderAspect","WorkspaceAspect","WatcherAspect","ScopeAspect","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, Harmony } 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 { ScopeAspect, ScopeMain } from '@teambit/scope';\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 { AppsBuildTask } from './build-application.task';\nimport { RunCmd } from './run.cmd';\nimport { AppService } from './application.service';\nimport { AppCmd, AppListCmd } from './app.cmd';\nimport { AppPlugin, BIT_APP_PATTERN } from './app.plugin';\nimport { AppTypePlugin } from './app-type.plugin';\nimport { AppContext } from './app-context';\nimport { DeployTask } from './deploy.task';\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 private harmony: Harmony\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 * instead of adding apps to workspace.jsonc, this method gets all apps components and load them as aspects so then\n * they could register to the apps slots and be available to list/run etc.\n * if poolIds is provided, it will load only the apps that are part of the pool.\n */\n async loadAllAppsAsAspects(poolIds?: ComponentID[]): Promise<ComponentID[]> {\n const apps = await this.listAppsComponents(poolIds);\n const appIds = apps.map((app) => app.id);\n await this.componentAspect.getHost().loadAspects(appIds.map((id) => id.toString()));\n return appIds;\n }\n\n /**\n * list apps by a component id.\n * make sure to call `this.loadAllAppsAsAspects` before calling this method in case the app is not listed in workspace.jsonc\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 * make sure to call `this.loadAllAppsAsAspects` before calling this method in case the app is not listed in workspace.jsonc\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 /**\n * list all components that are apps.\n * if poolIds is provided, it will load only the apps that are part of the pool.\n */\n async listAppsComponents(poolIds?: ComponentID[]): Promise<Component[]> {\n const components = poolIds\n ? await this.componentAspect.getHost().getMany(poolIds)\n : 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.concat(BIT_APP_PATTERN);\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 = Promise.all(\n compact(\n pluginsToLoad.map(async (pluginPath) => {\n try {\n const isModule = await this.aspectLoader.isEsmModule(pluginPath);\n if (isModule) {\n const appManifest = await this.aspectLoader.loadEsm(pluginPath);\n return appManifest;\n }\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\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 * make sure to call `this.loadAllAppsAsAspects` before calling this method in case the app is not listed in workspace.jsonc\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>(...appTypes: Array<ApplicationType<T>>) {\n const plugins = appTypes.map((appType) => {\n return new AppTypePlugin(this.getAppPattern(appType), appType, this.appSlot);\n });\n\n this.aspectLoader.registerPlugins(plugins);\n this.appTypeSlot.register(appTypes);\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 * make sure to call `this.loadAllAppsAsAspects` before calling this method in case the app is not listed in workspace.jsonc\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 /**\n * run an app.\n * make sure to call `this.loadAllAppsAsAspects` before calling this method in case the app is not listed in workspace.jsonc\n */\n async runApp(\n appName: string,\n options?: ServeAppOptions\n ): Promise<{\n app: Application;\n port: number | undefined;\n errors?: Error[];\n isOldApi: boolean;\n }> {\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 const instance = await app.run(context);\n if (options.watch) {\n this.watcher\n .watch({\n preCompile: false,\n compile: true,\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\n const isOldApi = typeof instance === 'number';\n const port = isOldApi ? instance : instance?.port;\n\n return { app, port, errors: undefined, isOldApi };\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 = await this.workspace.getComponentPackagePath(component);\n const workspaceComponentDir = this.workspace.componentDir(component.id);\n\n const appContext = new AppContext(\n appName,\n this.harmony,\n context.dev,\n component,\n this.workspace.path,\n context,\n hostRootDir,\n port,\n workspaceComponentDir\n );\n return appContext;\n }\n\n async createAppBuildContext(id: ComponentID, appName: string, capsuleRootDir: string, rootDir?: string) {\n const host = this.componentAspect.getHost();\n // const components = await host.list();\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\n const appContext = new AppContext(\n appName,\n this.harmony,\n context.dev,\n component,\n capsuleRootDir,\n context,\n rootDir,\n undefined,\n undefined\n );\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 ScopeAspect,\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, scope]: [\n CLIMain,\n LoggerMain,\n BuilderMain,\n EnvsMain,\n ComponentMain,\n AspectLoaderMain,\n Workspace,\n WatcherMain,\n ScopeMain\n ],\n config: ApplicationAspectConfig,\n [appTypeSlot, appSlot, deploymentProviderSlot]: [ApplicationTypeSlot, ApplicationSlot, DeploymentProviderSlot],\n harmony: Harmony\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 harmony\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), appCmd);\n // cli.registerOnStart(async () => {\n // await application.loadAppsToSlot();\n // });\n const calcAppOnLoad = 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 if (workspace) {\n workspace.registerOnComponentLoad(calcAppOnLoad);\n }\n if (scope) {\n scope.registerOnCompAspectReCalc(calcAppOnLoad);\n }\n\n return application;\n }\n}\n\nApplicationAspect.addRuntime(ApplicationMain);\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.harmony_application@1.0.383/dist/application.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.harmony_application@1.0.383/dist/application.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.harmony_application@1.0.385/dist/application.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.harmony_application@1.0.385/dist/application.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/application",
3
- "version": "1.0.383",
3
+ "version": "1.0.385",
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": "1.0.383"
9
+ "version": "1.0.385"
10
10
  },
11
11
  "dependencies": {
12
12
  "chalk": "2.4.2",
@@ -15,17 +15,17 @@
15
15
  "@teambit/lane-id": "0.0.311",
16
16
  "@teambit/harmony": "0.4.6",
17
17
  "@teambit/bit-error": "0.0.404",
18
- "@teambit/builder": "1.0.383",
19
- "@teambit/component": "1.0.383",
20
- "@teambit/isolator": "1.0.383",
21
- "@teambit/envs": "1.0.383",
22
- "@teambit/logger": "0.0.1053",
18
+ "@teambit/builder": "1.0.385",
19
+ "@teambit/component": "1.0.385",
20
+ "@teambit/isolator": "1.0.385",
21
+ "@teambit/envs": "1.0.385",
22
+ "@teambit/logger": "0.0.1055",
23
+ "@teambit/aspect-loader": "1.0.385",
24
+ "@teambit/cli": "0.0.962",
23
25
  "@teambit/cli-table": "0.0.48",
24
- "@teambit/cli": "0.0.960",
25
- "@teambit/aspect-loader": "1.0.383",
26
- "@teambit/scope": "1.0.383",
27
- "@teambit/watcher": "1.0.383",
28
- "@teambit/workspace": "1.0.383"
26
+ "@teambit/scope": "1.0.385",
27
+ "@teambit/watcher": "1.0.385",
28
+ "@teambit/workspace": "1.0.385"
29
29
  },
30
30
  "devDependencies": {
31
31
  "@types/lodash": "4.14.165",
package/app-list.cmd.tsx DELETED
@@ -1,35 +0,0 @@
1
- import { Command, CommandOptions } from '@teambit/cli';
2
- // import { Logger } from '@teambit/logger';
3
- import chalk from 'chalk';
4
- import { CLITable } from '@teambit/cli-table';
5
- import { ApplicationMain } from './application.main.runtime';
6
-
7
- /**
8
- * @deprecated use AppListCmd class
9
- */
10
- export class AppListCmdDeprecated implements Command {
11
- name = 'app-list';
12
- description = 'DEPRECATED. use "bit app list"';
13
- alias = '';
14
- private = true;
15
- group = 'apps';
16
- options = [['j', 'json', 'return the component data in json format']] as CommandOptions;
17
-
18
- constructor(private applicationAspect: ApplicationMain) {}
19
-
20
- async report(args: [string], { json }: { json: boolean }) {
21
- const apps = this.applicationAspect.listApps();
22
- if (json) return JSON.stringify(apps, null, 2);
23
- const deprecationStr = `this command is deprecated. please use "bit app list" instead\n`;
24
- // eslint-disable-next-line no-console
25
- console.log(chalk.red());
26
- if (!apps.length) return chalk.yellow(`${deprecationStr}no apps found`);
27
-
28
- const rows = apps.map((app) => {
29
- return [app.name];
30
- });
31
-
32
- const table = new CLITable([], rows);
33
- return deprecationStr + table.render();
34
- }
35
- }
@@ -1,18 +0,0 @@
1
- import { Command, CommandOptions } from '@teambit/cli';
2
- import { ApplicationMain } from './application.main.runtime';
3
- /**
4
- * @deprecated use AppListCmd class
5
- */
6
- export declare class AppListCmdDeprecated implements Command {
7
- private applicationAspect;
8
- name: string;
9
- description: string;
10
- alias: string;
11
- private: boolean;
12
- group: string;
13
- options: CommandOptions;
14
- constructor(applicationAspect: ApplicationMain);
15
- report(args: [string], { json }: {
16
- json: boolean;
17
- }): Promise<string>;
18
- }
@@ -1,56 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.AppListCmdDeprecated = void 0;
7
- function _chalk() {
8
- const data = _interopRequireDefault(require("chalk"));
9
- _chalk = function () {
10
- return data;
11
- };
12
- return data;
13
- }
14
- function _cliTable() {
15
- const data = require("@teambit/cli-table");
16
- _cliTable = function () {
17
- return data;
18
- };
19
- return data;
20
- }
21
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
22
- function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
23
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
24
- function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } // import { Logger } from '@teambit/logger';
25
- /**
26
- * @deprecated use AppListCmd class
27
- */
28
- class AppListCmdDeprecated {
29
- constructor(applicationAspect) {
30
- this.applicationAspect = applicationAspect;
31
- _defineProperty(this, "name", 'app-list');
32
- _defineProperty(this, "description", 'DEPRECATED. use "bit app list"');
33
- _defineProperty(this, "alias", '');
34
- _defineProperty(this, "private", true);
35
- _defineProperty(this, "group", 'apps');
36
- _defineProperty(this, "options", [['j', 'json', 'return the component data in json format']]);
37
- }
38
- async report(args, {
39
- json
40
- }) {
41
- const apps = this.applicationAspect.listApps();
42
- if (json) return JSON.stringify(apps, null, 2);
43
- const deprecationStr = `this command is deprecated. please use "bit app list" instead\n`;
44
- // eslint-disable-next-line no-console
45
- console.log(_chalk().default.red());
46
- if (!apps.length) return _chalk().default.yellow(`${deprecationStr}no apps found`);
47
- const rows = apps.map(app => {
48
- return [app.name];
49
- });
50
- const table = new (_cliTable().CLITable)([], rows);
51
- return deprecationStr + table.render();
52
- }
53
- }
54
- exports.AppListCmdDeprecated = AppListCmdDeprecated;
55
-
56
- //# sourceMappingURL=app-list.cmd.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_chalk","data","_interopRequireDefault","require","_cliTable","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","AppListCmdDeprecated","constructor","applicationAspect","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;AAA8C,SAAAC,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,gBAAAH,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAJ,CAAA,GAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAI,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAZ,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAM,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAhB,CAAA,QAAAa,CAAA,GAAAb,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA,KAF9C;AAKA;AACA;AACA;AACO,MAAMgB,oBAAoB,CAAoB;EAQnDC,WAAWA,CAASC,iBAAkC,EAAE;IAAA,KAApCA,iBAAkC,GAAlCA,iBAAkC;IAAApB,eAAA,eAP/C,UAAU;IAAAA,eAAA,sBACH,gCAAgC;IAAAA,eAAA,gBACtC,EAAE;IAAAA,eAAA,kBACA,IAAI;IAAAA,eAAA,gBACN,MAAM;IAAAA,eAAA,kBACJ,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,0CAA0C,CAAC,CAAC;EAEZ;EAEzD,MAAMqB,MAAMA,CAACC,IAAc,EAAE;IAAEC;EAAwB,CAAC,EAAE;IACxD,MAAMC,IAAI,GAAG,IAAI,CAACJ,iBAAiB,CAACK,QAAQ,CAAC,CAAC;IAC9C,IAAIF,IAAI,EAAE,OAAOG,IAAI,CAACC,SAAS,CAACH,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,MAAMI,cAAc,GAAG,iEAAiE;IACxF;IACAC,OAAO,CAACC,GAAG,CAACC,gBAAK,CAACC,GAAG,CAAC,CAAC,CAAC;IACxB,IAAI,CAACR,IAAI,CAACS,MAAM,EAAE,OAAOF,gBAAK,CAACG,MAAM,CAAC,GAAGN,cAAc,eAAe,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,CAAAxB,oBAAA,GAAAA,oBAAA","ignoreList":[]}