@teambit/workspace 1.0.219 → 1.0.221
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/artifacts/__bit_junit.xml +1 -1
- package/artifacts/preview/teambit_workspace_workspace-preview.js +1 -1
- package/artifacts/schema.json +2017 -2017
- package/dist/{preview-1712174136349.js → preview-1712287228511.js} +2 -2
- package/dist/workspace-aspects-loader.js +6 -1
- package/dist/workspace-aspects-loader.js.map +1 -1
- package/dist/workspace-component/workspace-component-loader.js +41 -8
- package/dist/workspace-component/workspace-component-loader.js.map +1 -1
- package/dist/workspace.js +12 -1
- package/dist/workspace.js.map +1 -1
- package/dist/workspace.main.runtime.js +5 -2
- package/dist/workspace.main.runtime.js.map +1 -1
- package/package.json +23 -23
- package/workspace-component/workspace-component-loader.ts +43 -10
|
@@ -323,9 +323,12 @@ class WorkspaceMain {
|
|
|
323
323
|
commands.push(new (_pattern().PatternCommand)(workspace));
|
|
324
324
|
cli.register(...commands);
|
|
325
325
|
component.registerHost(workspace);
|
|
326
|
+
|
|
327
|
+
// mini-status should be super fast. login/logout don't need loading aspects
|
|
328
|
+
const commandsToSkipLoadingAspects = ['mini-status', 'ms', 'login', 'logout'];
|
|
326
329
|
cli.registerOnStart(async (_hasWorkspace, currentCommand) => {
|
|
327
|
-
if (currentCommand
|
|
328
|
-
return;
|
|
330
|
+
if (commandsToSkipLoadingAspects.includes(currentCommand)) {
|
|
331
|
+
return;
|
|
329
332
|
}
|
|
330
333
|
if (currentCommand === 'install') {
|
|
331
334
|
workspace.inInstallContext = true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_pubsub","data","require","_aspectLoader","_bundler","_cli","_component","_envs","_graphql","_harmony","_isolator","_logger","_scope","_ui","_variants","_globalConfig","_dependencyResolver","_consumer","_component2","_interopRequireDefault","_extensionData","_componentLoader","_constants","_workspace","_ejectConf","_workspace2","_workspace3","_workspace4","_capsule","_envsSet","_envsUnset","_pattern","_envsReplace","_scopeSet","_use","_envsUpdate","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","r","e","Symbol","toPrimitive","call","TypeError","String","Number","WorkspaceMain","provider","pubsub","cli","scope","component","isolator","dependencyResolver","variants","loggerExt","graphql","ui","bundler","aspectLoader","envs","globalConfig","config","onComponentLoadSlot","onComponentChangeSlot","onComponentAddSlot","onComponentRemoveSlot","onAspectsResolveSlot","onRootAspectAddedSlot","onBitmapChangeSlot","onWorkspaceConfigChangeSlot","harmony","bitConfig","get","consumer","getConsumer","cwd","capsuleCmd","getCapsulesCommands","undefined","register","logger","createLogger","EXT_NAME","workspace","Workspace","configMergeFile","getConflictMergeFile","loadIfNeeded","getWorkspacePolicyFromPackageJson","packageJson","packageJsonObject","policyFromPackageJson","getWorkspacePolicyFromMergeConfig","wsConfigMerge","getWorkspaceJsonConflictFromMergeConfig","policy","DependencyResolverAspect","id","forEach","depField","reduce","acc","current","name","version","wsPolicy","getWorkspacePolicyFromConfigObject","getRootPolicy","pkgJsonPolicy","configMergePolicy","mergeWorkspacePolices","registerRootPolicy","onCacheClear","push","clearCache","LegacyComponentLoader","registerOnComponentLoadSubscriber","legacyComponent","opts","originatedFromHarmony","newComponent","state","ConsumerComponent","registerOnComponentConfigLoading","loadOpts","componentId","resolveComponentId","componentFromScope","extensions","componentExtensions","defaultScope","componentDefaultScope","extensionsWithLegacyIdsP","map","extension","legacyEntry","clone","extensionId","newExtensionId","extensionsWithLegacyIds","Promise","all","ExtensionDataList","fromArray","workspaceSchema","getWorkspaceSchema","registerUiRoot","WorkspaceUIRoot","registerPreStart","setComponentPathsRegExps","commands","EjectConfCmd","UseCmd","PatternCommand","registerHost","registerOnStart","_hasWorkspace","currentCommand","inInstallContext","importCurrentLaneIfMissing","loadAspectsOpts","runSubscribers","skipDeps","autoLoadAspectsDeps","aspects","loadAspects","getNotLoadedConfiguredExtensions","componentIds","resolveMultipleComponentIds","clearComponentCache","envsCommand","getCommand","EnvsSetCmd","EnvsUnsetCmd","EnvsReplaceCmd","EnvsUpdateCmd","scopeCommand","ScopeSetCmd","exports","MainRuntime","PubsubAspect","CLIAspect","ScopeAspect","ComponentAspect","IsolatorAspect","VariantsAspect","LoggerAspect","GraphqlAspect","UIAspect","BundlerAspect","AspectLoaderAspect","EnvsAspect","GlobalConfigAspect","Slot","withType","CapsuleCmd","CapsuleListCmd","CapsuleCreateCmd","CapsuleDeleteCmd","path","loadConsumerIfExist","WorkspaceAspect","addRuntime","_default"],"sources":["workspace.main.runtime.ts"],"sourcesContent":["import { PubsubAspect, PubsubMain } from '@teambit/pubsub';\nimport { AspectLoaderAspect } from '@teambit/aspect-loader';\nimport { BundlerAspect, BundlerMain } from '@teambit/bundler';\nimport { CLIAspect, MainRuntime, CLIMain, CommandList } from '@teambit/cli';\nimport { ComponentAspect } from '@teambit/component';\nimport { EnvsAspect, EnvsMain } from '@teambit/envs';\nimport { GraphqlAspect, GraphqlMain } from '@teambit/graphql';\nimport { Slot, Harmony, SlotRegistry } from '@teambit/harmony';\nimport { IsolatorAspect, IsolatorMain } from '@teambit/isolator';\nimport { LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { ScopeAspect, ScopeMain } from '@teambit/scope';\nimport { UIAspect, UiMain } from '@teambit/ui';\nimport { VariantsAspect } from '@teambit/variants';\nimport { GlobalConfigAspect, GlobalConfigMain } from '@teambit/global-config';\nimport type { AspectLoaderMain } from '@teambit/aspect-loader';\nimport { DependencyResolverAspect, DependencyResolverMain } from '@teambit/dependency-resolver';\nimport type { ComponentMain, Component } from '@teambit/component';\nimport type { VariantsMain } from '@teambit/variants';\nimport { Consumer, loadConsumerIfExist } from '@teambit/legacy/dist/consumer';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport type { ComponentConfigLoadOptions } from '@teambit/legacy/dist/consumer/config';\nimport { ExtensionDataList } from '@teambit/legacy/dist/consumer/config/extension-data';\nimport LegacyComponentLoader, { ComponentLoadOptions } from '@teambit/legacy/dist/consumer/component/component-loader';\nimport { ComponentID } from '@teambit/component-id';\nimport { EXT_NAME } from './constants';\nimport { OnComponentAdd, OnComponentChange, OnComponentRemove, OnComponentLoad } from './on-component-events';\nimport { WorkspaceAspect } from './workspace.aspect';\nimport EjectConfCmd from './eject-conf.cmd';\nimport { WorkspaceExtConfig } from './types';\nimport { Workspace } from './workspace';\nimport getWorkspaceSchema from './workspace.graphql';\nimport { WorkspaceUIRoot } from './workspace.ui-root';\nimport { CapsuleCmd, CapsuleCreateCmd, CapsuleDeleteCmd, CapsuleListCmd } from './capsule.cmd';\nimport { EnvsSetCmd } from './envs-subcommands/envs-set.cmd';\nimport { EnvsUnsetCmd } from './envs-subcommands/envs-unset.cmd';\nimport { PatternCommand } from './pattern.cmd';\nimport { EnvsReplaceCmd } from './envs-subcommands/envs-replace.cmd';\nimport { ScopeSetCmd } from './scope-subcommands/scope-set.cmd';\nimport { UseCmd } from './use.cmd';\nimport { EnvsUpdateCmd } from './envs-subcommands/envs-update.cmd';\n\nexport type WorkspaceDeps = [\n PubsubMain,\n CLIMain,\n ScopeMain,\n ComponentMain,\n IsolatorMain,\n DependencyResolverMain,\n VariantsMain,\n LoggerMain,\n GraphqlMain,\n UiMain,\n BundlerMain,\n AspectLoaderMain,\n EnvsMain,\n GlobalConfigMain\n];\n\nexport type OnComponentLoadSlot = SlotRegistry<OnComponentLoad>;\n\nexport type OnComponentChangeSlot = SlotRegistry<OnComponentChange>;\n\nexport type OnComponentAddSlot = SlotRegistry<OnComponentAdd>;\n\nexport type OnComponentRemoveSlot = SlotRegistry<OnComponentRemove>;\n\nexport type OnBitmapChange = () => Promise<void>;\nexport type OnBitmapChangeSlot = SlotRegistry<OnBitmapChange>;\n\nexport type OnWorkspaceConfigChange = () => Promise<void>;\nexport type OnWorkspaceConfigChangeSlot = SlotRegistry<OnWorkspaceConfigChange>;\n\nexport type OnAspectsResolve = (aspectsComponents: Component[]) => Promise<void>;\nexport type OnAspectsResolveSlot = SlotRegistry<OnAspectsResolve>;\n\nexport type OnRootAspectAdded = (aspectsId: ComponentID, inWs: boolean) => Promise<void>;\nexport type OnRootAspectAddedSlot = SlotRegistry<OnRootAspectAdded>;\n\nexport class WorkspaceMain {\n static runtime = MainRuntime;\n static dependencies = [\n PubsubAspect,\n CLIAspect,\n ScopeAspect,\n ComponentAspect,\n IsolatorAspect,\n DependencyResolverAspect,\n VariantsAspect,\n LoggerAspect,\n GraphqlAspect,\n UIAspect,\n BundlerAspect,\n AspectLoaderAspect,\n EnvsAspect,\n GlobalConfigAspect,\n ];\n static slots = [\n Slot.withType<OnComponentLoad>(),\n Slot.withType<OnComponentChange>(),\n Slot.withType<OnComponentAdd>(),\n Slot.withType<OnComponentRemove>(),\n Slot.withType<OnAspectsResolve>(),\n Slot.withType<OnRootAspectAdded>(),\n Slot.withType<OnBitmapChange>(),\n Slot.withType<OnWorkspaceConfigChange>(),\n ];\n static async provider(\n [\n pubsub,\n cli,\n scope,\n component,\n isolator,\n dependencyResolver,\n variants,\n loggerExt,\n graphql,\n ui,\n bundler,\n aspectLoader,\n envs,\n globalConfig,\n ]: WorkspaceDeps,\n config: WorkspaceExtConfig,\n [\n onComponentLoadSlot,\n onComponentChangeSlot,\n onComponentAddSlot,\n onComponentRemoveSlot,\n onAspectsResolveSlot,\n onRootAspectAddedSlot,\n onBitmapChangeSlot,\n onWorkspaceConfigChangeSlot,\n ]: [\n OnComponentLoadSlot,\n OnComponentChangeSlot,\n OnComponentAddSlot,\n OnComponentRemoveSlot,\n OnAspectsResolveSlot,\n OnRootAspectAddedSlot,\n OnBitmapChangeSlot,\n OnWorkspaceConfigChangeSlot\n ],\n harmony: Harmony\n ) {\n const bitConfig: any = harmony.config.get('teambit.harmony/bit');\n const consumer = await getConsumer(bitConfig.cwd);\n if (!consumer) {\n const capsuleCmd = getCapsulesCommands(isolator, scope, undefined);\n cli.register(capsuleCmd);\n return undefined;\n }\n // TODO: get the 'workspace' name in a better way\n const logger = loggerExt.createLogger(EXT_NAME);\n const workspace = new Workspace(\n pubsub,\n config,\n consumer,\n scope,\n component,\n dependencyResolver,\n variants,\n aspectLoader,\n logger,\n undefined,\n harmony,\n onComponentLoadSlot,\n onComponentChangeSlot,\n envs,\n globalConfig,\n onComponentAddSlot,\n onComponentRemoveSlot,\n onAspectsResolveSlot,\n onRootAspectAddedSlot,\n graphql,\n onBitmapChangeSlot,\n onWorkspaceConfigChangeSlot\n );\n\n const configMergeFile = workspace.getConflictMergeFile();\n await configMergeFile.loadIfNeeded();\n\n const getWorkspacePolicyFromPackageJson = () => {\n const packageJson = workspace.consumer.packageJson?.packageJsonObject || {};\n const policyFromPackageJson = dependencyResolver.getWorkspacePolicyFromPackageJson(packageJson);\n return policyFromPackageJson;\n };\n\n /**\n * @deprecated\n * see workspace.getWorkspaceJsonConflictFromMergeConfig\n */\n const getWorkspacePolicyFromMergeConfig = () => {\n const wsConfigMerge = workspace.getWorkspaceJsonConflictFromMergeConfig();\n const policy = wsConfigMerge.data?.[DependencyResolverAspect.id]?.policy || {};\n ['dependencies', 'peerDependencies'].forEach((depField) => {\n if (!policy[depField]) return;\n policy[depField] = policy[depField].reduce((acc, current) => {\n acc[current.name] = current.version;\n return acc;\n }, {});\n });\n const wsPolicy = dependencyResolver.getWorkspacePolicyFromConfigObject(policy);\n return wsPolicy;\n };\n\n const getRootPolicy = () => {\n const pkgJsonPolicy = getWorkspacePolicyFromPackageJson();\n const configMergePolicy = getWorkspacePolicyFromMergeConfig();\n return dependencyResolver.mergeWorkspacePolices([pkgJsonPolicy, configMergePolicy]);\n };\n\n dependencyResolver.registerRootPolicy(getRootPolicy());\n\n consumer.onCacheClear.push(() => workspace.clearCache());\n\n LegacyComponentLoader.registerOnComponentLoadSubscriber(\n async (legacyComponent: ConsumerComponent, opts?: ComponentLoadOptions) => {\n if (opts?.originatedFromHarmony) return legacyComponent;\n const id = legacyComponent.id;\n const newComponent = await workspace.get(id, legacyComponent, true, true, opts);\n return newComponent.state._consumer;\n }\n );\n\n ConsumerComponent.registerOnComponentConfigLoading(EXT_NAME, async (id, loadOpts: ComponentConfigLoadOptions) => {\n const componentId = await workspace.resolveComponentId(id);\n // We call here directly workspace.scope.get instead of workspace.get because part of the workspace get is loading consumer component\n // which in turn run this event, which will make an infinite loop\n // This component from scope here are only used for merging the extensions with the workspace components\n const componentFromScope = await workspace.scope.get(componentId);\n const { extensions } = await workspace.componentExtensions(componentId, componentFromScope, undefined, loadOpts);\n const defaultScope = await workspace.componentDefaultScope(componentId);\n\n const extensionsWithLegacyIdsP = extensions.map(async (extension) => {\n const legacyEntry = extension.clone();\n if (legacyEntry.extensionId) {\n legacyEntry.newExtensionId = legacyEntry.extensionId;\n }\n\n return legacyEntry;\n });\n const extensionsWithLegacyIds = await Promise.all(extensionsWithLegacyIdsP);\n\n return {\n defaultScope,\n extensions: ExtensionDataList.fromArray(extensionsWithLegacyIds),\n };\n });\n\n const workspaceSchema = getWorkspaceSchema(workspace, graphql);\n ui.registerUiRoot(new WorkspaceUIRoot(workspace, bundler));\n ui.registerPreStart(async () => {\n return workspace.setComponentPathsRegExps();\n });\n graphql.register(workspaceSchema);\n const capsuleCmd = getCapsulesCommands(isolator, scope, workspace);\n const commands: CommandList = [new EjectConfCmd(workspace), capsuleCmd, new UseCmd(workspace)];\n\n commands.push(new PatternCommand(workspace));\n cli.register(...commands);\n component.registerHost(workspace);\n\n cli.registerOnStart(async (_hasWorkspace: boolean, currentCommand: string) => {\n if (currentCommand === 'mini-status' || currentCommand === 'ms') {\n return; // mini-status should be super fast.\n }\n if (currentCommand === 'install') {\n workspace.inInstallContext = true;\n }\n await workspace.importCurrentLaneIfMissing();\n const loadAspectsOpts = {\n runSubscribers: false,\n skipDeps: !config.autoLoadAspectsDeps,\n };\n const aspects = await workspace.loadAspects(\n aspectLoader.getNotLoadedConfiguredExtensions(),\n undefined,\n 'teambit.workspace/workspace (cli.registerOnStart)',\n loadAspectsOpts\n );\n // clear aspect cache.\n const componentIds = await workspace.resolveMultipleComponentIds(aspects);\n componentIds.forEach((id) => {\n workspace.clearComponentCache(id);\n });\n });\n\n // add sub-commands \"set\" and \"unset\" to envs command.\n const envsCommand = cli.getCommand('envs');\n envsCommand?.commands?.push(new EnvsSetCmd(workspace)); // bit envs set\n envsCommand?.commands?.push(new EnvsUnsetCmd(workspace)); // bit envs unset\n envsCommand?.commands?.push(new EnvsReplaceCmd(workspace)); // bit envs replace\n envsCommand?.commands?.push(new EnvsUpdateCmd(workspace)); // bit envs replace\n\n // add sub-command \"set\" to scope command.\n const scopeCommand = cli.getCommand('scope');\n scopeCommand?.commands?.push(new ScopeSetCmd(workspace));\n\n return workspace;\n }\n static defineRuntime = 'browser';\n}\n\nfunction getCapsulesCommands(isolator: IsolatorMain, scope: ScopeMain, workspace?: Workspace) {\n const capsuleCmd = new CapsuleCmd(isolator, workspace, scope);\n capsuleCmd.commands = [\n new CapsuleListCmd(isolator, workspace, scope),\n new CapsuleCreateCmd(workspace, scope, isolator),\n new CapsuleDeleteCmd(isolator, scope, workspace),\n ];\n return capsuleCmd;\n}\n\n/**\n * don't use loadConsumer() here, which throws ConsumerNotFound because some commands don't require\n * the consumer to be available. such as, `bit init` or `bit list --remote`.\n * most of the commands do need the consumer. the legacy commands that need the consumer throw an\n * error when is missing. in the new/Harmony commands, such as `bis compile`, the workspace object\n * is passed to the provider, so before using it, make sure it exists.\n * keep in mind that you can't verify it in the provider itself, because the provider is running\n * always for all commands before anything else is happening.\n */\nasync function getConsumer(path?: string): Promise<Consumer | undefined> {\n return loadConsumerIfExist(path);\n}\n\nWorkspaceAspect.addRuntime(WorkspaceMain);\n\nexport default WorkspaceMain;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_pubsub","data","require","_aspectLoader","_bundler","_cli","_component","_envs","_graphql","_harmony","_isolator","_logger","_scope","_ui","_variants","_globalConfig","_dependencyResolver","_consumer","_component2","_interopRequireDefault","_extensionData","_componentLoader","_constants","_workspace","_ejectConf","_workspace2","_workspace3","_workspace4","_capsule","_envsSet","_envsUnset","_pattern","_envsReplace","_scopeSet","_use","_envsUpdate","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","r","e","Symbol","toPrimitive","call","TypeError","String","Number","WorkspaceMain","provider","pubsub","cli","scope","component","isolator","dependencyResolver","variants","loggerExt","graphql","ui","bundler","aspectLoader","envs","globalConfig","config","onComponentLoadSlot","onComponentChangeSlot","onComponentAddSlot","onComponentRemoveSlot","onAspectsResolveSlot","onRootAspectAddedSlot","onBitmapChangeSlot","onWorkspaceConfigChangeSlot","harmony","bitConfig","get","consumer","getConsumer","cwd","capsuleCmd","getCapsulesCommands","undefined","register","logger","createLogger","EXT_NAME","workspace","Workspace","configMergeFile","getConflictMergeFile","loadIfNeeded","getWorkspacePolicyFromPackageJson","packageJson","packageJsonObject","policyFromPackageJson","getWorkspacePolicyFromMergeConfig","wsConfigMerge","getWorkspaceJsonConflictFromMergeConfig","policy","DependencyResolverAspect","id","forEach","depField","reduce","acc","current","name","version","wsPolicy","getWorkspacePolicyFromConfigObject","getRootPolicy","pkgJsonPolicy","configMergePolicy","mergeWorkspacePolices","registerRootPolicy","onCacheClear","push","clearCache","LegacyComponentLoader","registerOnComponentLoadSubscriber","legacyComponent","opts","originatedFromHarmony","newComponent","state","ConsumerComponent","registerOnComponentConfigLoading","loadOpts","componentId","resolveComponentId","componentFromScope","extensions","componentExtensions","defaultScope","componentDefaultScope","extensionsWithLegacyIdsP","map","extension","legacyEntry","clone","extensionId","newExtensionId","extensionsWithLegacyIds","Promise","all","ExtensionDataList","fromArray","workspaceSchema","getWorkspaceSchema","registerUiRoot","WorkspaceUIRoot","registerPreStart","setComponentPathsRegExps","commands","EjectConfCmd","UseCmd","PatternCommand","registerHost","commandsToSkipLoadingAspects","registerOnStart","_hasWorkspace","currentCommand","includes","inInstallContext","importCurrentLaneIfMissing","loadAspectsOpts","runSubscribers","skipDeps","autoLoadAspectsDeps","aspects","loadAspects","getNotLoadedConfiguredExtensions","componentIds","resolveMultipleComponentIds","clearComponentCache","envsCommand","getCommand","EnvsSetCmd","EnvsUnsetCmd","EnvsReplaceCmd","EnvsUpdateCmd","scopeCommand","ScopeSetCmd","exports","MainRuntime","PubsubAspect","CLIAspect","ScopeAspect","ComponentAspect","IsolatorAspect","VariantsAspect","LoggerAspect","GraphqlAspect","UIAspect","BundlerAspect","AspectLoaderAspect","EnvsAspect","GlobalConfigAspect","Slot","withType","CapsuleCmd","CapsuleListCmd","CapsuleCreateCmd","CapsuleDeleteCmd","path","loadConsumerIfExist","WorkspaceAspect","addRuntime","_default"],"sources":["workspace.main.runtime.ts"],"sourcesContent":["import { PubsubAspect, PubsubMain } from '@teambit/pubsub';\nimport { AspectLoaderAspect } from '@teambit/aspect-loader';\nimport { BundlerAspect, BundlerMain } from '@teambit/bundler';\nimport { CLIAspect, MainRuntime, CLIMain, CommandList } from '@teambit/cli';\nimport { ComponentAspect } from '@teambit/component';\nimport { EnvsAspect, EnvsMain } from '@teambit/envs';\nimport { GraphqlAspect, GraphqlMain } from '@teambit/graphql';\nimport { Slot, Harmony, SlotRegistry } from '@teambit/harmony';\nimport { IsolatorAspect, IsolatorMain } from '@teambit/isolator';\nimport { LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { ScopeAspect, ScopeMain } from '@teambit/scope';\nimport { UIAspect, UiMain } from '@teambit/ui';\nimport { VariantsAspect } from '@teambit/variants';\nimport { GlobalConfigAspect, GlobalConfigMain } from '@teambit/global-config';\nimport type { AspectLoaderMain } from '@teambit/aspect-loader';\nimport { DependencyResolverAspect, DependencyResolverMain } from '@teambit/dependency-resolver';\nimport type { ComponentMain, Component } from '@teambit/component';\nimport type { VariantsMain } from '@teambit/variants';\nimport { Consumer, loadConsumerIfExist } from '@teambit/legacy/dist/consumer';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport type { ComponentConfigLoadOptions } from '@teambit/legacy/dist/consumer/config';\nimport { ExtensionDataList } from '@teambit/legacy/dist/consumer/config/extension-data';\nimport LegacyComponentLoader, { ComponentLoadOptions } from '@teambit/legacy/dist/consumer/component/component-loader';\nimport { ComponentID } from '@teambit/component-id';\nimport { EXT_NAME } from './constants';\nimport { OnComponentAdd, OnComponentChange, OnComponentRemove, OnComponentLoad } from './on-component-events';\nimport { WorkspaceAspect } from './workspace.aspect';\nimport EjectConfCmd from './eject-conf.cmd';\nimport { WorkspaceExtConfig } from './types';\nimport { Workspace } from './workspace';\nimport getWorkspaceSchema from './workspace.graphql';\nimport { WorkspaceUIRoot } from './workspace.ui-root';\nimport { CapsuleCmd, CapsuleCreateCmd, CapsuleDeleteCmd, CapsuleListCmd } from './capsule.cmd';\nimport { EnvsSetCmd } from './envs-subcommands/envs-set.cmd';\nimport { EnvsUnsetCmd } from './envs-subcommands/envs-unset.cmd';\nimport { PatternCommand } from './pattern.cmd';\nimport { EnvsReplaceCmd } from './envs-subcommands/envs-replace.cmd';\nimport { ScopeSetCmd } from './scope-subcommands/scope-set.cmd';\nimport { UseCmd } from './use.cmd';\nimport { EnvsUpdateCmd } from './envs-subcommands/envs-update.cmd';\n\nexport type WorkspaceDeps = [\n PubsubMain,\n CLIMain,\n ScopeMain,\n ComponentMain,\n IsolatorMain,\n DependencyResolverMain,\n VariantsMain,\n LoggerMain,\n GraphqlMain,\n UiMain,\n BundlerMain,\n AspectLoaderMain,\n EnvsMain,\n GlobalConfigMain\n];\n\nexport type OnComponentLoadSlot = SlotRegistry<OnComponentLoad>;\n\nexport type OnComponentChangeSlot = SlotRegistry<OnComponentChange>;\n\nexport type OnComponentAddSlot = SlotRegistry<OnComponentAdd>;\n\nexport type OnComponentRemoveSlot = SlotRegistry<OnComponentRemove>;\n\nexport type OnBitmapChange = () => Promise<void>;\nexport type OnBitmapChangeSlot = SlotRegistry<OnBitmapChange>;\n\nexport type OnWorkspaceConfigChange = () => Promise<void>;\nexport type OnWorkspaceConfigChangeSlot = SlotRegistry<OnWorkspaceConfigChange>;\n\nexport type OnAspectsResolve = (aspectsComponents: Component[]) => Promise<void>;\nexport type OnAspectsResolveSlot = SlotRegistry<OnAspectsResolve>;\n\nexport type OnRootAspectAdded = (aspectsId: ComponentID, inWs: boolean) => Promise<void>;\nexport type OnRootAspectAddedSlot = SlotRegistry<OnRootAspectAdded>;\n\nexport class WorkspaceMain {\n static runtime = MainRuntime;\n static dependencies = [\n PubsubAspect,\n CLIAspect,\n ScopeAspect,\n ComponentAspect,\n IsolatorAspect,\n DependencyResolverAspect,\n VariantsAspect,\n LoggerAspect,\n GraphqlAspect,\n UIAspect,\n BundlerAspect,\n AspectLoaderAspect,\n EnvsAspect,\n GlobalConfigAspect,\n ];\n static slots = [\n Slot.withType<OnComponentLoad>(),\n Slot.withType<OnComponentChange>(),\n Slot.withType<OnComponentAdd>(),\n Slot.withType<OnComponentRemove>(),\n Slot.withType<OnAspectsResolve>(),\n Slot.withType<OnRootAspectAdded>(),\n Slot.withType<OnBitmapChange>(),\n Slot.withType<OnWorkspaceConfigChange>(),\n ];\n static async provider(\n [\n pubsub,\n cli,\n scope,\n component,\n isolator,\n dependencyResolver,\n variants,\n loggerExt,\n graphql,\n ui,\n bundler,\n aspectLoader,\n envs,\n globalConfig,\n ]: WorkspaceDeps,\n config: WorkspaceExtConfig,\n [\n onComponentLoadSlot,\n onComponentChangeSlot,\n onComponentAddSlot,\n onComponentRemoveSlot,\n onAspectsResolveSlot,\n onRootAspectAddedSlot,\n onBitmapChangeSlot,\n onWorkspaceConfigChangeSlot,\n ]: [\n OnComponentLoadSlot,\n OnComponentChangeSlot,\n OnComponentAddSlot,\n OnComponentRemoveSlot,\n OnAspectsResolveSlot,\n OnRootAspectAddedSlot,\n OnBitmapChangeSlot,\n OnWorkspaceConfigChangeSlot\n ],\n harmony: Harmony\n ) {\n const bitConfig: any = harmony.config.get('teambit.harmony/bit');\n const consumer = await getConsumer(bitConfig.cwd);\n if (!consumer) {\n const capsuleCmd = getCapsulesCommands(isolator, scope, undefined);\n cli.register(capsuleCmd);\n return undefined;\n }\n // TODO: get the 'workspace' name in a better way\n const logger = loggerExt.createLogger(EXT_NAME);\n const workspace = new Workspace(\n pubsub,\n config,\n consumer,\n scope,\n component,\n dependencyResolver,\n variants,\n aspectLoader,\n logger,\n undefined,\n harmony,\n onComponentLoadSlot,\n onComponentChangeSlot,\n envs,\n globalConfig,\n onComponentAddSlot,\n onComponentRemoveSlot,\n onAspectsResolveSlot,\n onRootAspectAddedSlot,\n graphql,\n onBitmapChangeSlot,\n onWorkspaceConfigChangeSlot\n );\n\n const configMergeFile = workspace.getConflictMergeFile();\n await configMergeFile.loadIfNeeded();\n\n const getWorkspacePolicyFromPackageJson = () => {\n const packageJson = workspace.consumer.packageJson?.packageJsonObject || {};\n const policyFromPackageJson = dependencyResolver.getWorkspacePolicyFromPackageJson(packageJson);\n return policyFromPackageJson;\n };\n\n /**\n * @deprecated\n * see workspace.getWorkspaceJsonConflictFromMergeConfig\n */\n const getWorkspacePolicyFromMergeConfig = () => {\n const wsConfigMerge = workspace.getWorkspaceJsonConflictFromMergeConfig();\n const policy = wsConfigMerge.data?.[DependencyResolverAspect.id]?.policy || {};\n ['dependencies', 'peerDependencies'].forEach((depField) => {\n if (!policy[depField]) return;\n policy[depField] = policy[depField].reduce((acc, current) => {\n acc[current.name] = current.version;\n return acc;\n }, {});\n });\n const wsPolicy = dependencyResolver.getWorkspacePolicyFromConfigObject(policy);\n return wsPolicy;\n };\n\n const getRootPolicy = () => {\n const pkgJsonPolicy = getWorkspacePolicyFromPackageJson();\n const configMergePolicy = getWorkspacePolicyFromMergeConfig();\n return dependencyResolver.mergeWorkspacePolices([pkgJsonPolicy, configMergePolicy]);\n };\n\n dependencyResolver.registerRootPolicy(getRootPolicy());\n\n consumer.onCacheClear.push(() => workspace.clearCache());\n\n LegacyComponentLoader.registerOnComponentLoadSubscriber(\n async (legacyComponent: ConsumerComponent, opts?: ComponentLoadOptions) => {\n if (opts?.originatedFromHarmony) return legacyComponent;\n const id = legacyComponent.id;\n const newComponent = await workspace.get(id, legacyComponent, true, true, opts);\n return newComponent.state._consumer;\n }\n );\n\n ConsumerComponent.registerOnComponentConfigLoading(EXT_NAME, async (id, loadOpts: ComponentConfigLoadOptions) => {\n const componentId = await workspace.resolveComponentId(id);\n // We call here directly workspace.scope.get instead of workspace.get because part of the workspace get is loading consumer component\n // which in turn run this event, which will make an infinite loop\n // This component from scope here are only used for merging the extensions with the workspace components\n const componentFromScope = await workspace.scope.get(componentId);\n const { extensions } = await workspace.componentExtensions(componentId, componentFromScope, undefined, loadOpts);\n const defaultScope = await workspace.componentDefaultScope(componentId);\n\n const extensionsWithLegacyIdsP = extensions.map(async (extension) => {\n const legacyEntry = extension.clone();\n if (legacyEntry.extensionId) {\n legacyEntry.newExtensionId = legacyEntry.extensionId;\n }\n\n return legacyEntry;\n });\n const extensionsWithLegacyIds = await Promise.all(extensionsWithLegacyIdsP);\n\n return {\n defaultScope,\n extensions: ExtensionDataList.fromArray(extensionsWithLegacyIds),\n };\n });\n\n const workspaceSchema = getWorkspaceSchema(workspace, graphql);\n ui.registerUiRoot(new WorkspaceUIRoot(workspace, bundler));\n ui.registerPreStart(async () => {\n return workspace.setComponentPathsRegExps();\n });\n graphql.register(workspaceSchema);\n const capsuleCmd = getCapsulesCommands(isolator, scope, workspace);\n const commands: CommandList = [new EjectConfCmd(workspace), capsuleCmd, new UseCmd(workspace)];\n\n commands.push(new PatternCommand(workspace));\n cli.register(...commands);\n component.registerHost(workspace);\n\n // mini-status should be super fast. login/logout don't need loading aspects\n const commandsToSkipLoadingAspects = ['mini-status', 'ms', 'login', 'logout'];\n\n cli.registerOnStart(async (_hasWorkspace: boolean, currentCommand: string) => {\n if (commandsToSkipLoadingAspects.includes(currentCommand)) {\n return;\n }\n if (currentCommand === 'install') {\n workspace.inInstallContext = true;\n }\n await workspace.importCurrentLaneIfMissing();\n const loadAspectsOpts = {\n runSubscribers: false,\n skipDeps: !config.autoLoadAspectsDeps,\n };\n const aspects = await workspace.loadAspects(\n aspectLoader.getNotLoadedConfiguredExtensions(),\n undefined,\n 'teambit.workspace/workspace (cli.registerOnStart)',\n loadAspectsOpts\n );\n // clear aspect cache.\n const componentIds = await workspace.resolveMultipleComponentIds(aspects);\n componentIds.forEach((id) => {\n workspace.clearComponentCache(id);\n });\n });\n\n // add sub-commands \"set\" and \"unset\" to envs command.\n const envsCommand = cli.getCommand('envs');\n envsCommand?.commands?.push(new EnvsSetCmd(workspace)); // bit envs set\n envsCommand?.commands?.push(new EnvsUnsetCmd(workspace)); // bit envs unset\n envsCommand?.commands?.push(new EnvsReplaceCmd(workspace)); // bit envs replace\n envsCommand?.commands?.push(new EnvsUpdateCmd(workspace)); // bit envs replace\n\n // add sub-command \"set\" to scope command.\n const scopeCommand = cli.getCommand('scope');\n scopeCommand?.commands?.push(new ScopeSetCmd(workspace));\n\n return workspace;\n }\n static defineRuntime = 'browser';\n}\n\nfunction getCapsulesCommands(isolator: IsolatorMain, scope: ScopeMain, workspace?: Workspace) {\n const capsuleCmd = new CapsuleCmd(isolator, workspace, scope);\n capsuleCmd.commands = [\n new CapsuleListCmd(isolator, workspace, scope),\n new CapsuleCreateCmd(workspace, scope, isolator),\n new CapsuleDeleteCmd(isolator, scope, workspace),\n ];\n return capsuleCmd;\n}\n\n/**\n * don't use loadConsumer() here, which throws ConsumerNotFound because some commands don't require\n * the consumer to be available. such as, `bit init` or `bit list --remote`.\n * most of the commands do need the consumer. the legacy commands that need the consumer throw an\n * error when is missing. in the new/Harmony commands, such as `bis compile`, the workspace object\n * is passed to the provider, so before using it, make sure it exists.\n * keep in mind that you can't verify it in the provider itself, because the provider is running\n * always for all commands before anything else is happening.\n */\nasync function getConsumer(path?: string): Promise<Consumer | undefined> {\n return loadConsumerIfExist(path);\n}\n\nWorkspaceAspect.addRuntime(WorkspaceMain);\n\nexport default WorkspaceMain;\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/workspace",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.221",
|
|
4
4
|
"homepage": "https://bit.cloud/teambit/workspace/workspace",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.workspace",
|
|
8
8
|
"name": "workspace",
|
|
9
|
-
"version": "1.0.
|
|
9
|
+
"version": "1.0.221"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"lodash": "4.17.21",
|
|
@@ -54,43 +54,43 @@
|
|
|
54
54
|
"@teambit/explorer.ui.gallery.component-grid": "0.0.496",
|
|
55
55
|
"@teambit/scopes.scope-id": "0.0.7",
|
|
56
56
|
"@teambit/workspace.ui.empty-workspace": "0.0.508",
|
|
57
|
-
"@teambit/component": "1.0.
|
|
58
|
-
"@teambit/dependency-resolver": "1.0.
|
|
59
|
-
"@teambit/envs": "1.0.
|
|
60
|
-
"@teambit/logger": "0.0.
|
|
61
|
-
"@teambit/scope": "1.0.
|
|
62
|
-
"@teambit/graph": "1.0.
|
|
63
|
-
"@teambit/cli": "0.0.
|
|
64
|
-
"@teambit/isolator": "1.0.
|
|
65
|
-
"@teambit/component-tree": "1.0.
|
|
57
|
+
"@teambit/component": "1.0.221",
|
|
58
|
+
"@teambit/dependency-resolver": "1.0.221",
|
|
59
|
+
"@teambit/envs": "1.0.221",
|
|
60
|
+
"@teambit/logger": "0.0.952",
|
|
61
|
+
"@teambit/scope": "1.0.221",
|
|
62
|
+
"@teambit/graph": "1.0.221",
|
|
63
|
+
"@teambit/cli": "0.0.859",
|
|
64
|
+
"@teambit/isolator": "1.0.221",
|
|
65
|
+
"@teambit/component-tree": "1.0.221",
|
|
66
66
|
"@teambit/harmony.modules.resolved-component": "0.0.497",
|
|
67
|
-
"@teambit/watcher": "1.0.
|
|
68
|
-
"@teambit/aspect-loader": "1.0.
|
|
69
|
-
"@teambit/config": "0.0.
|
|
70
|
-
"@teambit/global-config": "0.0.
|
|
67
|
+
"@teambit/watcher": "1.0.221",
|
|
68
|
+
"@teambit/aspect-loader": "1.0.221",
|
|
69
|
+
"@teambit/config": "0.0.972",
|
|
70
|
+
"@teambit/global-config": "0.0.862",
|
|
71
71
|
"@teambit/harmony.modules.requireable-component": "0.0.497",
|
|
72
72
|
"@teambit/toolbox.modules.module-resolver": "0.0.7",
|
|
73
73
|
"@teambit/workspace.modules.node-modules-linker": "0.0.166",
|
|
74
|
-
"@teambit/graphql": "1.0.
|
|
75
|
-
"@teambit/bundler": "1.0.
|
|
76
|
-
"@teambit/pubsub": "1.0.
|
|
77
|
-
"@teambit/ui": "1.0.
|
|
78
|
-
"@teambit/variants": "0.0.
|
|
74
|
+
"@teambit/graphql": "1.0.221",
|
|
75
|
+
"@teambit/bundler": "1.0.221",
|
|
76
|
+
"@teambit/pubsub": "1.0.221",
|
|
77
|
+
"@teambit/ui": "1.0.221",
|
|
78
|
+
"@teambit/variants": "0.0.1065",
|
|
79
79
|
"@teambit/component-issues": "0.0.142",
|
|
80
80
|
"@teambit/workspace.modules.match-pattern": "0.0.505",
|
|
81
81
|
"@teambit/component.ui.component-drawer": "0.0.397",
|
|
82
82
|
"@teambit/lanes.hooks.use-lane-components": "0.0.260",
|
|
83
83
|
"@teambit/lanes.hooks.use-lanes": "0.0.264",
|
|
84
84
|
"@teambit/lanes.ui.models.lanes-model": "0.0.216",
|
|
85
|
-
"@teambit/command-bar": "1.0.
|
|
85
|
+
"@teambit/command-bar": "1.0.221",
|
|
86
86
|
"@teambit/component.ui.component-filters.component-filter-context": "0.0.222",
|
|
87
87
|
"@teambit/component.ui.component-filters.deprecate-filter": "0.0.220",
|
|
88
88
|
"@teambit/component.ui.component-filters.env-filter": "0.0.228",
|
|
89
89
|
"@teambit/component.ui.component-filters.show-main-filter": "0.0.213",
|
|
90
|
-
"@teambit/sidebar": "1.0.
|
|
90
|
+
"@teambit/sidebar": "1.0.221",
|
|
91
91
|
"@teambit/ui-foundation.ui.react-router.slot-router": "0.0.508",
|
|
92
92
|
"@teambit/component-descriptor": "0.0.417",
|
|
93
|
-
"@teambit/deprecation": "1.0.
|
|
93
|
+
"@teambit/deprecation": "1.0.221",
|
|
94
94
|
"@teambit/ui-foundation.ui.buttons.collapser": "0.0.219",
|
|
95
95
|
"@teambit/cloud.hooks.use-cloud-scopes": "0.0.3",
|
|
96
96
|
"@teambit/preview.ui.preview-placeholder": "0.0.516",
|
|
@@ -109,6 +109,8 @@ export class WorkspaceComponentLoader {
|
|
|
109
109
|
}
|
|
110
110
|
|
|
111
111
|
async getMany(ids: Array<ComponentID>, loadOpts?: ComponentLoadOptions, throwOnFailure = true): Promise<GetManyRes> {
|
|
112
|
+
const callId = Math.floor(Math.random() * 1000); // generate a random callId to be able to identify the call from the logs
|
|
113
|
+
this.logger.profile(`getMany-${callId}`);
|
|
112
114
|
const idsWithoutEmpty = compact(ids);
|
|
113
115
|
this.logger.setStatusLine(`loading ${ids.length} component(s)`);
|
|
114
116
|
const loadOptsWithDefaults: ComponentLoadOptions = Object.assign(
|
|
@@ -134,7 +136,8 @@ export class WorkspaceComponentLoader {
|
|
|
134
136
|
|
|
135
137
|
const { components: loadedComponents, invalidComponents } = await this.getAndLoadSlotOrdered(
|
|
136
138
|
loadOrCached.idsToLoad || [],
|
|
137
|
-
loadOptsWithDefaults
|
|
139
|
+
loadOptsWithDefaults,
|
|
140
|
+
callId
|
|
138
141
|
);
|
|
139
142
|
|
|
140
143
|
invalidComponents.forEach(({ err }) => {
|
|
@@ -147,24 +150,35 @@ export class WorkspaceComponentLoader {
|
|
|
147
150
|
components.forEach((comp) => {
|
|
148
151
|
this.saveInCache(comp, { loadExtensions: true, executeLoadSlot: true });
|
|
149
152
|
});
|
|
153
|
+
this.logger.profile(`getMany-${callId}`);
|
|
150
154
|
return { components, invalidComponents };
|
|
151
155
|
}
|
|
152
156
|
|
|
153
|
-
private async getAndLoadSlotOrdered(
|
|
157
|
+
private async getAndLoadSlotOrdered(
|
|
158
|
+
ids: ComponentID[],
|
|
159
|
+
loadOpts: ComponentLoadOptions,
|
|
160
|
+
callId = 0
|
|
161
|
+
): Promise<GetManyRes> {
|
|
154
162
|
if (!ids?.length) return { components: [], invalidComponents: [] };
|
|
155
163
|
|
|
156
164
|
const workspaceScopeIdsMap: WorkspaceScopeIdsMap = await this.groupAndUpdateIds(ids);
|
|
157
|
-
|
|
165
|
+
this.logger.profile('buildLoadGroups');
|
|
158
166
|
const groupsToHandle = await this.buildLoadGroups(workspaceScopeIdsMap);
|
|
167
|
+
this.logger.profile('buildLoadGroups');
|
|
159
168
|
// prefix your command with "BIT_LOG=*" to see the detailed groups
|
|
160
169
|
if (process.env.BIT_LOG) {
|
|
161
170
|
printGroupsToHandle(groupsToHandle, this.logger);
|
|
162
171
|
}
|
|
163
172
|
const groupsRes = compact(
|
|
164
|
-
await mapSeries(groupsToHandle, async (group) => {
|
|
173
|
+
await mapSeries(groupsToHandle, async (group, index) => {
|
|
165
174
|
const { scopeIds, workspaceIds, aspects, core, seeders } = group;
|
|
166
|
-
|
|
175
|
+
const groupDesc = `getMany-${callId} group ${index + 1}/${groupsToHandle.length} - ${loadGroupToStr(group)}`;
|
|
176
|
+
this.logger.profile(groupDesc);
|
|
177
|
+
if (!workspaceIds.length && !scopeIds.length) {
|
|
178
|
+
throw new Error('getAndLoadSlotOrdered - group has no ids to load');
|
|
179
|
+
}
|
|
167
180
|
const res = await this.getAndLoadSlot(workspaceIds, scopeIds, { ...loadOpts, core, seeders, aspects });
|
|
181
|
+
this.logger.profile(groupDesc);
|
|
168
182
|
// We don't want to return components that were not asked originally (we do want to load them)
|
|
169
183
|
if (!group.seeders) return undefined;
|
|
170
184
|
return res;
|
|
@@ -219,8 +233,8 @@ export class WorkspaceComponentLoader {
|
|
|
219
233
|
|
|
220
234
|
await this.groupAndUpdateIds(extsNotFromTheList, workspaceScopeIdsMap);
|
|
221
235
|
|
|
222
|
-
const
|
|
223
|
-
const
|
|
236
|
+
const layeredExtFromTheList = this.regroupExtIdsFromTheList(groupedByIsExtOfAnother.true);
|
|
237
|
+
const layeredExtGroups = layeredExtFromTheList.map((ids) => {
|
|
224
238
|
return {
|
|
225
239
|
ids,
|
|
226
240
|
core: false,
|
|
@@ -233,10 +247,11 @@ export class WorkspaceComponentLoader {
|
|
|
233
247
|
// Always load first core envs
|
|
234
248
|
{ ids: groupedByIsCoreEnvs.true || [], core: true, aspects: true, seeders: true },
|
|
235
249
|
{ ids: extsNotFromTheList || [], core: false, aspects: true, seeders: false },
|
|
236
|
-
...
|
|
250
|
+
...layeredExtGroups,
|
|
237
251
|
{ ids: groupedByIsExtOfAnother.false || [], core: false, aspects: false, seeders: true },
|
|
238
252
|
];
|
|
239
253
|
const groupsByWsScope = groupsToHandle.map((group) => {
|
|
254
|
+
if (!group.ids?.length) return undefined;
|
|
240
255
|
const groupedByWsScope = groupBy(group.ids, (id) => {
|
|
241
256
|
return workspaceScopeIdsMap.workspaceIds.has(id.toString());
|
|
242
257
|
});
|
|
@@ -248,7 +263,7 @@ export class WorkspaceComponentLoader {
|
|
|
248
263
|
seeders: group.seeders,
|
|
249
264
|
};
|
|
250
265
|
});
|
|
251
|
-
return groupsByWsScope;
|
|
266
|
+
return compact(groupsByWsScope);
|
|
252
267
|
}
|
|
253
268
|
|
|
254
269
|
private regroupExtIdsFromTheList(ids: ComponentID[]): Array<ComponentID[]> {
|
|
@@ -281,12 +296,16 @@ export class WorkspaceComponentLoader {
|
|
|
281
296
|
// Ensure we won't load the same extension many times
|
|
282
297
|
// We don't want to ignore version here, as we do want to load different extensions with same id but different versions here
|
|
283
298
|
const mergedExtensions = ExtensionDataList.mergeConfigs(allExtensions, false);
|
|
299
|
+
this.logger.profile('loadComponentsExtensions');
|
|
284
300
|
await this.workspace.loadComponentsExtensions(mergedExtensions);
|
|
301
|
+
this.logger.profile('loadComponentsExtensions');
|
|
285
302
|
let wsComponentsWithAspects = workspaceComponents;
|
|
286
303
|
// if (loadOpts.seeders) {
|
|
304
|
+
this.logger.profile('executeLoadSlot');
|
|
287
305
|
wsComponentsWithAspects = await pMapPool(workspaceComponents, (component) => this.executeLoadSlot(component), {
|
|
288
306
|
concurrency: concurrentComponentsLimit(),
|
|
289
307
|
});
|
|
308
|
+
this.logger.profile('executeLoadSlot');
|
|
290
309
|
await this.warnAboutMisconfiguredEnvs(wsComponentsWithAspects);
|
|
291
310
|
// }
|
|
292
311
|
|
|
@@ -295,6 +314,7 @@ export class WorkspaceComponentLoader {
|
|
|
295
314
|
// It's important to load the workspace components as aspects here
|
|
296
315
|
// otherwise the envs from the workspace won't be loaded at time
|
|
297
316
|
// so we will get wrong dependencies from component who uses envs from the workspace
|
|
317
|
+
this.logger.profile('loadCompsAsAspects');
|
|
298
318
|
if (loadOpts.loadSeedersAsAspects || (loadOpts.core && loadOpts.aspects)) {
|
|
299
319
|
await this.loadCompsAsAspects(workspaceComponents.concat(scopeComponents), {
|
|
300
320
|
loadApps: true,
|
|
@@ -305,6 +325,7 @@ export class WorkspaceComponentLoader {
|
|
|
305
325
|
idsToNotLoadAsAspects: loadOpts.idsToNotLoadAsAspects,
|
|
306
326
|
});
|
|
307
327
|
}
|
|
328
|
+
this.logger.profile('loadCompsAsAspects');
|
|
308
329
|
|
|
309
330
|
return { components: withAspects, invalidComponents };
|
|
310
331
|
}
|
|
@@ -439,7 +460,7 @@ export class WorkspaceComponentLoader {
|
|
|
439
460
|
workspaceIds.forEach((id) => {
|
|
440
461
|
idsIndex[id.toString()] = id;
|
|
441
462
|
});
|
|
442
|
-
|
|
463
|
+
this.logger.profile('consumer.loadComponents');
|
|
443
464
|
const {
|
|
444
465
|
components: legacyComponents,
|
|
445
466
|
invalidComponents: legacyInvalidComponents,
|
|
@@ -449,6 +470,7 @@ export class WorkspaceComponentLoader {
|
|
|
449
470
|
false,
|
|
450
471
|
loadOptsWithDefaults
|
|
451
472
|
);
|
|
473
|
+
this.logger.profile('consumer.loadComponents');
|
|
452
474
|
const allLegacyComponents = legacyComponents.concat(removedComponents);
|
|
453
475
|
legacyInvalidComponents.forEach((invalidComponent) => {
|
|
454
476
|
const entry = { id: idsIndex[invalidComponent.id.toString()], err: invalidComponent.error };
|
|
@@ -849,3 +871,14 @@ function printGroupsToHandle(groupsToHandle: Array<LoadGroup>, logger: Logger):
|
|
|
849
871
|
);
|
|
850
872
|
});
|
|
851
873
|
}
|
|
874
|
+
|
|
875
|
+
function loadGroupToStr(loadGroup: LoadGroup): string {
|
|
876
|
+
const { scopeIds, workspaceIds, aspects, core, seeders } = loadGroup;
|
|
877
|
+
|
|
878
|
+
const attr: string[] = [];
|
|
879
|
+
if (aspects) attr.push('aspects');
|
|
880
|
+
if (core) attr.push('core');
|
|
881
|
+
if (seeders) attr.push('seeders');
|
|
882
|
+
|
|
883
|
+
return `workspaceIds: ${workspaceIds.length}, scopeIds: ${scopeIds.length}, (${attr.join('+')})`;
|
|
884
|
+
}
|