@teambit/application 0.0.488 → 0.0.489

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.
@@ -61,6 +61,10 @@ export declare class ApplicationMain {
61
61
  * list apps by a component id.
62
62
  */
63
63
  listAppsById(id?: ComponentID): Application[] | undefined;
64
+ /**
65
+ * get an application by a component id.
66
+ */
67
+ getAppById(id: ComponentID): Application | undefined;
64
68
  /**
65
69
  * get an app.
66
70
  */
@@ -292,6 +292,16 @@ class ApplicationMain {
292
292
  if (!id) return undefined;
293
293
  return this.appSlot.get(id.toString());
294
294
  }
295
+ /**
296
+ * get an application by a component id.
297
+ */
298
+
299
+
300
+ getAppById(id) {
301
+ const apps = this.listAppsById(id);
302
+ if (!apps) return undefined;
303
+ return (0, _lodash().head)(apps);
304
+ }
295
305
  /**
296
306
  * get an app.
297
307
  */
@@ -426,6 +436,18 @@ class ApplicationMain {
426
436
  builder.registerTagTasks([new (_deploy().DeployTask)(application, builder)]);
427
437
  cli.registerGroup('apps', 'Applications');
428
438
  cli.register(new (_run().RunCmd)(application, logger), new (_appList().AppListCmdDeprecated)(application), appCmd);
439
+
440
+ if (workspace) {
441
+ workspace.onComponentLoad(async loadedComponent => {
442
+ const app = application.getAppById(loadedComponent.id);
443
+ if (!app) return {};
444
+ return {
445
+ appName: app === null || app === void 0 ? void 0 : app.name,
446
+ type: app === null || app === void 0 ? void 0 : app.applicationType
447
+ };
448
+ });
449
+ }
450
+
429
451
  return application;
430
452
  }
431
453
 
@@ -1 +1 @@
1
- {"version":3,"names":["ApplicationMain","constructor","appSlot","appTypeSlot","deploymentProviderSlot","envs","componentAspect","appService","aspectLoader","workspace","logger","dev","ssr","watch","defaultPortRange","registerApp","app","register","listApps","flatten","values","mapApps","toArray","listAppsById","id","undefined","get","toString","getApp","appName","apps","find","name","getAppByNameOrId","appNameOrId","byName","byId","length","BitError","registerAppType","appType","plugin","AppTypePlugin","registerPlugins","getAppAspect","getAppOrThrow","AppNotFound","computeOptions","opts","defaultOpts","runApp","options","context","createAppContext","runSsr","AppNoSsr","result","port","run","watcher","watchAll","preCompile","catch","err","error","errors","getAppIdOrThrow","maybeApp","ComponentID","fromString","host","getHost","components","list","component","c","isEqual","env","createEnvironment","res","results","data","hostRootDir","getComponentPackagePath","Object","assign","cloneDeep","appComponent","workdir","path","provider","cli","loggerAspect","builder","config","createLogger","ApplicationAspect","AppService","application","appCmd","AppCmd","commands","AppListCmd","RunCmd","AppPlugin","registerBuildTasks","AppsBuildTask","registerSnapTasks","DeployTask","registerTagTasks","registerGroup","AppListCmdDeprecated","MainRuntime","CLIAspect","LoggerAspect","BuilderAspect","EnvsAspect","ComponentAspect","AspectLoaderAspect","WorkspaceAspect","Slot","withType","addRuntime"],"sources":["application.main.runtime.ts"],"sourcesContent":["import { MainRuntime, CLIMain, CLIAspect } from '@teambit/cli';\nimport { flatten, cloneDeep } 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 { BuilderAspect, BuilderMain } from '@teambit/builder';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { EnvsAspect, EnvsMain } from '@teambit/envs';\nimport ComponentAspect, { ComponentMain, ComponentID } 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.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\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\nexport class ApplicationMain {\n constructor(\n private appSlot: ApplicationSlot,\n // TODO unused\n private appTypeSlot: ApplicationTypeSlot,\n private deploymentProviderSlot: DeploymentProviderSlot,\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 ) {}\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 app.\n */\n getApp(appName: string, id?: ComponentID): Application | undefined {\n const apps = this.listAppsById(id) || this.listApps();\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 /**\n * registers a new app and sets a plugin for it.\n */\n registerAppType<T>(appType: ApplicationType<T>) {\n const plugin = new AppTypePlugin(`*.${appType.name}.*`, 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) {\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 runApp(appName: string, options?: ServeAppOptions) {\n options = this.computeOptions(options);\n const app = this.getAppOrThrow(appName);\n const context = await this.createAppContext(app.name);\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.workspace.watcher\n .watchAll({\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 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 return ComponentID.fromString(maybeApp[0]);\n }\n\n private async createAppContext(appName: string): Promise<AppContext> {\n const host = this.componentAspect.getHost();\n const components = await host.list();\n const id = this.getAppIdOrThrow(appName);\n const component = components.find((c) => c.id.isEqual(id));\n if (!component) throw new AppNotFound(appName);\n // console.log(comp)\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 return Object.assign(cloneDeep(context), {\n appName,\n appComponent: component,\n hostRootDir,\n workdir: this.workspace.path,\n });\n }\n\n static runtime = MainRuntime;\n static dependencies = [\n CLIAspect,\n LoggerAspect,\n BuilderAspect,\n EnvsAspect,\n ComponentAspect,\n AspectLoaderAspect,\n WorkspaceAspect,\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]: [\n CLIMain,\n LoggerMain,\n BuilderMain,\n EnvsMain,\n ComponentMain,\n AspectLoaderMain,\n Workspace\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 envs,\n component,\n appService,\n aspectLoader,\n workspace,\n logger\n );\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 cli.registerGroup('apps', 'Applications');\n cli.register(new RunCmd(application, logger), new AppListCmdDeprecated(application), appCmd);\n\n return application;\n }\n}\n\nApplicationAspect.addRuntime(ApplicationMain);\n"],"mappings":"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"}
1
+ {"version":3,"names":["ApplicationMain","constructor","appSlot","appTypeSlot","deploymentProviderSlot","envs","componentAspect","appService","aspectLoader","workspace","logger","dev","ssr","watch","defaultPortRange","registerApp","app","register","listApps","flatten","values","mapApps","toArray","listAppsById","id","undefined","get","toString","getAppById","apps","head","getApp","appName","find","name","getAppByNameOrId","appNameOrId","byName","byId","length","BitError","registerAppType","appType","plugin","AppTypePlugin","registerPlugins","getAppAspect","getAppOrThrow","AppNotFound","computeOptions","opts","defaultOpts","runApp","options","context","createAppContext","runSsr","AppNoSsr","result","port","run","watcher","watchAll","preCompile","catch","err","error","errors","getAppIdOrThrow","maybeApp","ComponentID","fromString","host","getHost","components","list","component","c","isEqual","env","createEnvironment","res","results","data","hostRootDir","getComponentPackagePath","Object","assign","cloneDeep","appComponent","workdir","path","provider","cli","loggerAspect","builder","config","createLogger","ApplicationAspect","AppService","application","appCmd","AppCmd","commands","AppListCmd","RunCmd","AppPlugin","registerBuildTasks","AppsBuildTask","registerSnapTasks","DeployTask","registerTagTasks","registerGroup","AppListCmdDeprecated","onComponentLoad","loadedComponent","type","applicationType","MainRuntime","CLIAspect","LoggerAspect","BuilderAspect","EnvsAspect","ComponentAspect","AspectLoaderAspect","WorkspaceAspect","Slot","withType","addRuntime"],"sources":["application.main.runtime.ts"],"sourcesContent":["import { MainRuntime, CLIMain, CLIAspect } from '@teambit/cli';\nimport { flatten, cloneDeep, 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 { BuilderAspect, BuilderMain } from '@teambit/builder';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { EnvsAspect, EnvsMain } from '@teambit/envs';\nimport ComponentAspect, { ComponentMain, ComponentID } 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.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\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\nexport class ApplicationMain {\n constructor(\n private appSlot: ApplicationSlot,\n // TODO unused\n private appTypeSlot: ApplicationTypeSlot,\n private deploymentProviderSlot: DeploymentProviderSlot,\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 ) {}\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 getAppById(id: ComponentID) {\n const apps = this.listAppsById(id);\n if (!apps) return undefined;\n return head(apps);\n }\n\n /**\n * get an app.\n */\n getApp(appName: string, id?: ComponentID): Application | undefined {\n const apps = this.listAppsById(id) || this.listApps();\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 /**\n * registers a new app and sets a plugin for it.\n */\n registerAppType<T>(appType: ApplicationType<T>) {\n const plugin = new AppTypePlugin(`*.${appType.name}.*`, 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) {\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 runApp(appName: string, options?: ServeAppOptions) {\n options = this.computeOptions(options);\n const app = this.getAppOrThrow(appName);\n const context = await this.createAppContext(app.name);\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.workspace.watcher\n .watchAll({\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 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 return ComponentID.fromString(maybeApp[0]);\n }\n\n private async createAppContext(appName: string): Promise<AppContext> {\n const host = this.componentAspect.getHost();\n const components = await host.list();\n const id = this.getAppIdOrThrow(appName);\n const component = components.find((c) => c.id.isEqual(id));\n if (!component) throw new AppNotFound(appName);\n // console.log(comp)\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 return Object.assign(cloneDeep(context), {\n appName,\n appComponent: component,\n hostRootDir,\n workdir: this.workspace.path,\n });\n }\n\n static runtime = MainRuntime;\n static dependencies = [\n CLIAspect,\n LoggerAspect,\n BuilderAspect,\n EnvsAspect,\n ComponentAspect,\n AspectLoaderAspect,\n WorkspaceAspect,\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]: [\n CLIMain,\n LoggerMain,\n BuilderMain,\n EnvsMain,\n ComponentMain,\n AspectLoaderMain,\n Workspace\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 envs,\n component,\n appService,\n aspectLoader,\n workspace,\n logger\n );\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 cli.registerGroup('apps', 'Applications');\n cli.register(new RunCmd(application, logger), new AppListCmdDeprecated(application), appCmd);\n if (workspace) {\n workspace.onComponentLoad(async (loadedComponent) => {\n const app = application.getAppById(loadedComponent.id);\n if (!app) return {};\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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"}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/application",
3
- "version": "0.0.488",
3
+ "version": "0.0.489",
4
4
  "homepage": "https://bit.dev/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.488"
9
+ "version": "0.0.489"
10
10
  },
11
11
  "dependencies": {
12
12
  "chalk": "2.4.2",
@@ -16,17 +16,17 @@
16
16
  "pluralize": "8.0.0",
17
17
  "@babel/runtime": "7.12.18",
18
18
  "core-js": "^3.0.0",
19
- "@teambit/builder": "0.0.846",
20
- "@teambit/component": "0.0.846",
21
- "@teambit/isolator": "0.0.846",
22
- "@teambit/envs": "0.0.846",
19
+ "@teambit/builder": "0.0.847",
20
+ "@teambit/component": "0.0.847",
21
+ "@teambit/isolator": "0.0.847",
22
+ "@teambit/envs": "0.0.847",
23
23
  "@teambit/cli-table": "0.0.40",
24
- "@teambit/cli": "0.0.564",
25
- "@teambit/aspect-loader": "0.0.846",
24
+ "@teambit/cli": "0.0.565",
25
+ "@teambit/aspect-loader": "0.0.847",
26
26
  "@teambit/harmony": "0.3.3",
27
27
  "@teambit/bit-error": "0.0.400",
28
- "@teambit/logger": "0.0.657",
29
- "@teambit/workspace": "0.0.846"
28
+ "@teambit/logger": "0.0.658",
29
+ "@teambit/workspace": "0.0.847"
30
30
  },
31
31
  "devDependencies": {
32
32
  "@types/react": "^17.0.8",
@@ -39,7 +39,7 @@
39
39
  "@types/node": "12.20.4"
40
40
  },
41
41
  "peerDependencies": {
42
- "@teambit/legacy": "1.0.345",
42
+ "@teambit/legacy": "1.0.346",
43
43
  "react-dom": "^16.8.0 || ^17.0.0",
44
44
  "react": "^16.8.0 || ^17.0.0"
45
45
  },
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.harmony_application@0.0.488/dist/application.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.harmony_application@0.0.488/dist/application.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.harmony_application@0.0.489/dist/application.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.harmony_application@0.0.489/dist/application.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];