@teambit/workspace 1.0.586 → 1.0.588

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.
@@ -1 +1 @@
1
- {"version":3,"names":["_aspectLoader","data","require","_bundler","_cli","_component","_envs","_graphql","_harmony","_isolator","_logger","_scope","_ui","_variants","_globalConfig","_dependencyResolver","_legacy","_legacy2","_legacy3","_constants","_workspace","_ejectConf","_interopRequireDefault","_workspace2","_workspace3","_workspace4","_capsule","_envsSet","_envsUnset","_pattern","_envsReplace","_scopeSet","_use","_envsUpdate","_unuse","_localOnlyCmd","_configStore","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","WorkspaceMain","provider","cli","scope","component","isolator","dependencyResolver","variants","loggerExt","graphql","ui","bundler","aspectLoader","envs","globalConfig","configStore","config","onComponentLoadSlot","onComponentChangeSlot","onComponentAddSlot","onComponentRemoveSlot","onAspectsResolveSlot","onRootAspectAddedSlot","onBitmapChangeSlot","onWorkspaceConfigChangeSlot","harmony","currentCmd","process","argv","undefined","bitConfig","get","consumer","getConsumer","cwd","capsuleCmd","getCapsulesCommands","register","logger","createLogger","EXT_NAME","workspace","Workspace","addStore","getConfigStore","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","_consumer","ConsumerComponent","registerOnComponentConfigLoading","loadOpts","componentId","resolveComponentId","componentFromScope","extensions","componentExtensions","defaultScope","extensionsWithLegacyIdsP","map","extension","extensionId","newExtensionId","extensionsWithLegacyIds","Promise","all","ExtensionDataList","fromArray","registerUiRoot","WorkspaceUIRoot","registerPreStart","setComponentPathsRegExps","getWorkspaceSchema","commands","EjectConfCmd","UseCmd","UnuseCmd","PatternCommand","localOnlyCmd","LocalOnlyCmd","LocalOnlySetCmd","LocalOnlyUnsetCmd","LocalOnlyListCmd","registerHost","registerOnStart","_hasWorkspace","currentCommand","commandObject","hasSafeModeFlag","includes","loadAspects","inInstallContext","importCurrentLaneIfMissing","profile","loadAspectsOpts","runSubscribers","skipDeps","autoLoadAspectsDeps","aspects","getNotLoadedConfiguredExtensions","componentIds","resolveMultipleComponentIds","clearComponentCache","envsCommand","getCommand","EnvsSetCmd","EnvsUnsetCmd","EnvsReplaceCmd","EnvsUpdateCmd","registerEnvJsoncResolver","resolveEnvManifest","bind","scopeCommand","ScopeSetCmd","exports","MainRuntime","CLIAspect","ScopeAspect","ComponentAspect","IsolatorAspect","VariantsAspect","LoggerAspect","GraphqlAspect","UIAspect","BundlerAspect","AspectLoaderAspect","EnvsAspect","GlobalConfigAspect","ConfigStoreAspect","Slot","withType","CapsuleCmd","CapsuleListCmd","CapsuleCreateCmd","CapsuleDeleteCmd","path","loadConsumerIfExist","WorkspaceAspect","addRuntime","_default"],"sources":["workspace.main.runtime.ts"],"sourcesContent":["import { AspectLoaderAspect } from '@teambit/aspect-loader';\nimport { BundlerAspect, BundlerMain } from '@teambit/bundler';\nimport { CLIAspect, MainRuntime, CLIMain, CommandList, Command } 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.consumer';\nimport type { ComponentConfigLoadOptions } from '@teambit/legacy.consumer-config';\nimport { ExtensionDataList } from '@teambit/legacy.extension-data';\nimport {\n ComponentLoadOptions,\n ComponentLoader as LegacyComponentLoader,\n ConsumerComponent,\n} from '@teambit/legacy.consumer-component';\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';\nimport { UnuseCmd } from './unuse.cmd';\nimport { LocalOnlyCmd, LocalOnlyListCmd, LocalOnlySetCmd, LocalOnlyUnsetCmd } from './commands/local-only-cmd';\nimport { ConfigStoreAspect, ConfigStoreMain } from '@teambit/config-store';\n\nexport type WorkspaceDeps = [\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 ConfigStoreMain\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 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 ConfigStoreAspect,\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 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 configStore,\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 currentCmd = process.argv[2];\n if (currentCmd === 'init') {\n // avoid loading the consumer/workspace for \"bit init\". otherwise, \"bit init --reset\" can't fix corrupted .bitmap\n return undefined;\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 config,\n consumer,\n scope,\n component,\n dependencyResolver,\n variants,\n aspectLoader,\n logger,\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 configStore\n );\n\n configStore.addStore('workspace', workspace.getConfigStore());\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 = componentId.scope;\n\n const extensionsWithLegacyIdsP = extensions.map(async (extension) => {\n if (extension.extensionId) {\n extension.newExtensionId = extension.extensionId;\n }\n\n return extension;\n });\n const extensionsWithLegacyIds = await Promise.all(extensionsWithLegacyIdsP);\n\n return {\n defaultScope,\n extensions: ExtensionDataList.fromArray(extensionsWithLegacyIds),\n };\n });\n\n ui.registerUiRoot(new WorkspaceUIRoot(workspace, bundler));\n ui.registerPreStart(async () => {\n return workspace.setComponentPathsRegExps();\n });\n graphql.register(() => getWorkspaceSchema(workspace, graphql));\n const capsuleCmd = getCapsulesCommands(isolator, scope, workspace);\n const commands: CommandList = [\n new EjectConfCmd(workspace),\n capsuleCmd,\n new UseCmd(workspace),\n new UnuseCmd(workspace),\n ];\n\n commands.push(new PatternCommand(workspace));\n const localOnlyCmd = new LocalOnlyCmd();\n localOnlyCmd.commands = [\n new LocalOnlySetCmd(workspace),\n new LocalOnlyUnsetCmd(workspace),\n new LocalOnlyListCmd(workspace),\n ];\n commands.push(localOnlyCmd);\n cli.register(...commands);\n component.registerHost(workspace);\n\n cli.registerOnStart(async (_hasWorkspace: boolean, currentCommand: string, commandObject?: Command) => {\n const hasSafeModeFlag = process.argv.includes('--safe-mode');\n if (hasSafeModeFlag || (commandObject && !commandObject.loadAspects)) {\n return;\n }\n if (currentCommand === 'install') {\n workspace.inInstallContext = true;\n }\n await workspace.importCurrentLaneIfMissing();\n logger.profile('workspace.registerOnStart');\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 logger.profile('workspace.registerOnStart');\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 envs.registerEnvJsoncResolver(workspace.resolveEnvManifest.bind(workspace));\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":["_aspectLoader","data","require","_bundler","_cli","_component","_envs","_graphql","_harmony","_isolator","_logger","_scope","_ui","_variants","_globalConfig","_dependencyResolver","_legacy","_legacy2","_legacy3","_constants","_workspace","_ejectConf","_interopRequireDefault","_workspace2","_workspace3","_workspace4","_capsule","_envsSet","_envsUnset","_pattern","_envsReplace","_scopeSet","_use","_envsUpdate","_unuse","_localOnlyCmd","_configStore","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","WorkspaceMain","provider","cli","scope","component","isolator","dependencyResolver","variants","loggerExt","graphql","ui","bundler","aspectLoader","envs","globalConfig","configStore","config","onComponentLoadSlot","onComponentChangeSlot","onComponentAddSlot","onComponentRemoveSlot","onAspectsResolveSlot","onRootAspectAddedSlot","onBitmapChangeSlot","onWorkspaceConfigChangeSlot","harmony","currentCmd","process","argv","undefined","bitConfig","get","consumer","getConsumer","cwd","capsuleCmd","getCapsulesCommands","register","logger","createLogger","EXT_NAME","workspace","Workspace","addStore","getConfigStore","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","_consumer","ConsumerComponent","registerOnComponentConfigLoading","loadOpts","componentId","resolveComponentId","componentFromScope","extensions","componentExtensions","defaultScope","extensionsWithLegacyIdsP","map","extension","extensionId","newExtensionId","extensionsWithLegacyIds","Promise","all","ExtensionDataList","fromArray","registerUiRoot","WorkspaceUIRoot","registerPreStart","setComponentPathsRegExps","getWorkspaceSchema","commands","EjectConfCmd","UseCmd","UnuseCmd","PatternCommand","localOnlyCmd","LocalOnlyCmd","LocalOnlySetCmd","LocalOnlyUnsetCmd","LocalOnlyListCmd","registerHost","registerOnStart","_hasWorkspace","currentCommand","commandObject","hasSafeModeFlag","includes","loadAspects","inInstallContext","importCurrentLaneIfMissing","profile","loadAspectsOpts","runSubscribers","skipDeps","autoLoadAspectsDeps","aspects","getNotLoadedConfiguredExtensions","componentIds","resolveMultipleComponentIds","clearComponentCache","envsCommand","getCommand","EnvsSetCmd","EnvsUnsetCmd","EnvsReplaceCmd","EnvsUpdateCmd","registerEnvJsoncResolver","resolveEnvManifest","bind","scopeCommand","ScopeSetCmd","exports","MainRuntime","CLIAspect","ScopeAspect","ComponentAspect","IsolatorAspect","VariantsAspect","LoggerAspect","GraphqlAspect","UIAspect","BundlerAspect","AspectLoaderAspect","EnvsAspect","GlobalConfigAspect","ConfigStoreAspect","Slot","withType","CapsuleCmd","CapsuleListCmd","CapsuleCreateCmd","CapsuleDeleteCmd","path","loadConsumerIfExist","WorkspaceAspect","addRuntime","_default"],"sources":["workspace.main.runtime.ts"],"sourcesContent":["import { AspectLoaderAspect } from '@teambit/aspect-loader';\nimport { BundlerAspect, BundlerMain } from '@teambit/bundler';\nimport { CLIAspect, MainRuntime, CLIMain, CommandList, Command } 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.consumer';\nimport type { ComponentConfigLoadOptions } from '@teambit/legacy.consumer-config';\nimport { ExtensionDataList } from '@teambit/legacy.extension-data';\nimport {\n ComponentLoadOptions,\n ComponentLoader as LegacyComponentLoader,\n ConsumerComponent,\n} from '@teambit/legacy.consumer-component';\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';\nimport { UnuseCmd } from './unuse.cmd';\nimport { LocalOnlyCmd, LocalOnlyListCmd, LocalOnlySetCmd, LocalOnlyUnsetCmd } from './commands/local-only-cmd';\nimport { ConfigStoreAspect, ConfigStoreMain } from '@teambit/config-store';\n\nexport type WorkspaceDeps = [\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 ConfigStoreMain\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 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 ConfigStoreAspect,\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 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 configStore,\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 currentCmd = process.argv[2];\n if (currentCmd === 'init') {\n // avoid loading the consumer/workspace for \"bit init\". otherwise, \"bit init --reset\" can't fix corrupted .bitmap\n return undefined;\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 config,\n consumer,\n scope,\n component,\n dependencyResolver,\n variants,\n aspectLoader,\n logger,\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 configStore\n );\n\n configStore.addStore('workspace', workspace.getConfigStore());\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 = componentId.scope;\n\n const extensionsWithLegacyIdsP = extensions.map(async (extension) => {\n if (extension.extensionId) {\n extension.newExtensionId = extension.extensionId;\n }\n\n return extension;\n });\n const extensionsWithLegacyIds = await Promise.all(extensionsWithLegacyIdsP);\n\n return {\n defaultScope,\n extensions: ExtensionDataList.fromArray(extensionsWithLegacyIds),\n };\n });\n\n ui.registerUiRoot(new WorkspaceUIRoot(workspace, bundler));\n ui.registerPreStart(async () => {\n return workspace.setComponentPathsRegExps();\n });\n graphql.register(() => getWorkspaceSchema(workspace, graphql));\n const capsuleCmd = getCapsulesCommands(isolator, scope, workspace);\n const commands: CommandList = [\n new EjectConfCmd(workspace),\n capsuleCmd,\n new UseCmd(workspace),\n new UnuseCmd(workspace),\n ];\n\n commands.push(new PatternCommand(workspace));\n const localOnlyCmd = new LocalOnlyCmd();\n localOnlyCmd.commands = [\n new LocalOnlySetCmd(workspace),\n new LocalOnlyUnsetCmd(workspace),\n new LocalOnlyListCmd(workspace),\n ];\n commands.push(localOnlyCmd);\n cli.register(...commands);\n component.registerHost(workspace);\n\n cli.registerOnStart(async (_hasWorkspace: boolean, currentCommand: string, commandObject?: Command) => {\n const hasSafeModeFlag = process.argv.includes('--safe-mode');\n if (hasSafeModeFlag || (commandObject && !commandObject.loadAspects)) {\n return;\n }\n if (currentCommand === 'install') {\n workspace.inInstallContext = true;\n }\n await workspace.importCurrentLaneIfMissing();\n logger.profile('workspace.registerOnStart');\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 logger.profile('workspace.registerOnStart');\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 envs.registerEnvJsoncResolver(workspace.resolveEnvManifest.bind(workspace));\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.586",
3
+ "version": "1.0.588",
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.586"
9
+ "version": "1.0.588"
10
10
  },
11
11
  "dependencies": {
12
12
  "lodash": "4.17.21",
@@ -52,46 +52,46 @@
52
52
  "@teambit/explorer.ui.gallery.component-grid": "0.0.496",
53
53
  "@teambit/scopes.scope-id": "0.0.7",
54
54
  "@teambit/workspace.ui.empty-workspace": "0.0.509",
55
- "@teambit/component": "1.0.586",
56
- "@teambit/dependency-resolver": "1.0.586",
57
- "@teambit/envs": "1.0.586",
58
- "@teambit/legacy.extension-data": "0.0.48",
59
- "@teambit/legacy.scope": "0.0.46",
60
- "@teambit/legacy.consumer-component": "0.0.47",
61
- "@teambit/legacy.consumer": "0.0.46",
62
- "@teambit/legacy.bit-map": "0.0.103",
55
+ "@teambit/component": "1.0.588",
56
+ "@teambit/dependency-resolver": "1.0.588",
57
+ "@teambit/envs": "1.0.588",
58
+ "@teambit/legacy.extension-data": "0.0.49",
59
+ "@teambit/legacy.scope": "0.0.47",
60
+ "@teambit/legacy.consumer-component": "0.0.48",
61
+ "@teambit/legacy.consumer": "0.0.47",
62
+ "@teambit/legacy.bit-map": "0.0.104",
63
63
  "@teambit/toolbox.fs.last-modified": "0.0.5",
64
64
  "@teambit/toolbox.path.path": "0.0.8",
65
- "@teambit/logger": "0.0.1256",
66
- "@teambit/objects": "0.0.93",
67
- "@teambit/scope": "1.0.586",
68
- "@teambit/graph": "1.0.586",
69
- "@teambit/cli": "0.0.1163",
70
- "@teambit/isolator": "1.0.586",
71
- "@teambit/component-tree": "1.0.586",
65
+ "@teambit/logger": "0.0.1258",
66
+ "@teambit/objects": "0.0.95",
67
+ "@teambit/scope": "1.0.588",
68
+ "@teambit/graph": "1.0.588",
69
+ "@teambit/cli": "0.0.1165",
70
+ "@teambit/isolator": "1.0.588",
71
+ "@teambit/component-tree": "1.0.588",
72
72
  "@teambit/legacy.constants": "0.0.11",
73
73
  "@teambit/harmony.modules.resolved-component": "0.0.502",
74
74
  "@teambit/legacy.utils": "0.0.19",
75
- "@teambit/watcher": "1.0.586",
76
- "@teambit/aspect-loader": "1.0.586",
77
- "@teambit/config-store": "0.0.43",
78
- "@teambit/config": "0.0.1337",
75
+ "@teambit/watcher": "1.0.588",
76
+ "@teambit/aspect-loader": "1.0.588",
77
+ "@teambit/config-store": "0.0.45",
78
+ "@teambit/config": "0.0.1339",
79
79
  "@teambit/harmony.modules.requireable-component": "0.0.502",
80
80
  "@teambit/toolbox.modules.module-resolver": "0.0.11",
81
- "@teambit/workspace.modules.node-modules-linker": "0.0.274",
82
- "@teambit/graphql": "1.0.586",
83
- "@teambit/bundler": "1.0.586",
84
- "@teambit/global-config": "0.0.1166",
85
- "@teambit/legacy.consumer-config": "0.0.46",
86
- "@teambit/ui": "1.0.586",
87
- "@teambit/variants": "0.0.1430",
81
+ "@teambit/workspace.modules.node-modules-linker": "0.0.275",
82
+ "@teambit/graphql": "1.0.588",
83
+ "@teambit/bundler": "1.0.588",
84
+ "@teambit/global-config": "0.0.1168",
85
+ "@teambit/legacy.consumer-config": "0.0.47",
86
+ "@teambit/ui": "1.0.588",
87
+ "@teambit/variants": "0.0.1432",
88
88
  "@teambit/component-issues": "0.0.157",
89
- "@teambit/component.sources": "0.0.98",
89
+ "@teambit/component.sources": "0.0.99",
90
90
  "@teambit/harmony.modules.in-memory-cache": "0.0.13",
91
- "@teambit/legacy.component-list": "0.0.100",
92
- "@teambit/legacy.scope-api": "0.0.101",
93
- "@teambit/scope.network": "0.0.46",
94
- "@teambit/scope.remotes": "0.0.46",
91
+ "@teambit/legacy.component-list": "0.0.101",
92
+ "@teambit/legacy.scope-api": "0.0.102",
93
+ "@teambit/scope.network": "0.0.47",
94
+ "@teambit/scope.remotes": "0.0.47",
95
95
  "@teambit/toolbox.path.is-path-inside": "0.0.500",
96
96
  "@teambit/workspace.modules.match-pattern": "0.0.509",
97
97
  "@teambit/component.ui.component-drawer": "0.0.442",
@@ -99,25 +99,25 @@
99
99
  "@teambit/lanes.hooks.use-lanes": "0.0.285",
100
100
  "@teambit/lanes.ui.models.lanes-model": "0.0.225",
101
101
  "@teambit/ui-foundation.ui.side-bar": "0.0.906",
102
- "@teambit/command-bar": "1.0.586",
102
+ "@teambit/command-bar": "1.0.588",
103
103
  "@teambit/component.ui.component-filters.component-filter-context": "0.0.235",
104
104
  "@teambit/component.ui.component-filters.deprecate-filter": "0.0.233",
105
105
  "@teambit/component.ui.component-filters.env-filter": "0.0.250",
106
106
  "@teambit/component.ui.component-filters.show-main-filter": "0.0.226",
107
- "@teambit/sidebar": "1.0.586",
107
+ "@teambit/sidebar": "1.0.588",
108
108
  "@teambit/ui-foundation.ui.react-router.slot-router": "0.0.516",
109
- "@teambit/pubsub": "1.0.586",
109
+ "@teambit/pubsub": "1.0.588",
110
110
  "@teambit/harmony.modules.concurrency": "0.0.12",
111
111
  "@teambit/toolbox.promise.map-pool": "0.0.6",
112
112
  "@teambit/workspace.ui.use-workspace-mode": "0.0.2",
113
113
  "@teambit/component-descriptor": "0.0.433",
114
- "@teambit/deprecation": "1.0.586",
114
+ "@teambit/deprecation": "1.0.588",
115
115
  "@teambit/ui-foundation.ui.buttons.collapser": "0.0.227",
116
116
  "@teambit/workspace.ui.preserve-workspace-mode": "0.0.2",
117
117
  "@teambit/cloud.hooks.use-cloud-scopes": "0.0.8",
118
118
  "@teambit/design.ui.tooltip": "0.0.375",
119
- "@teambit/preview.ui.preview-placeholder": "0.0.539",
120
- "@teambit/workspace.ui.workspace-component-card": "0.0.546"
119
+ "@teambit/preview.ui.preview-placeholder": "0.0.540",
120
+ "@teambit/workspace.ui.workspace-component-card": "0.0.547"
121
121
  },
122
122
  "devDependencies": {
123
123
  "@types/lodash": "4.14.165",
@@ -114,6 +114,17 @@ const COMPONENT_SUBSCRIPTION_REMOVED = gql`
114
114
  }
115
115
  `;
116
116
 
117
+ const COMPONENT_SERVER_STARTED = gql`
118
+ subscription OnComponentServerStarted {
119
+ componentServerStarted {
120
+ env
121
+ url
122
+ host
123
+ basePath
124
+ }
125
+ }
126
+ `;
127
+
117
128
  export function useWorkspace(options: UseWorkspaceOptions = {}) {
118
129
  const { data, subscribeToMore, ...rest } = useDataQuery(WORKSPACE);
119
130
  const optionsRef = useLatest(options);
@@ -187,12 +198,66 @@ export function useWorkspace(options: UseWorkspaceOptions = {}) {
187
198
  },
188
199
  });
189
200
 
190
- // TODO - sub to component removal
201
+ const unSubServerStarted = subscribeToMore({
202
+ document: COMPONENT_SERVER_STARTED,
203
+ updateQuery: (prev, { subscriptionData }) => {
204
+ const update = subscriptionData.data;
205
+ if (!update) return prev;
206
+
207
+ const serverInfo = update.componentServerStarted;
208
+ if (!serverInfo || serverInfo.length === 0) return prev;
209
+
210
+ const updatedComponents = prev.workspace.components.map((component) => {
211
+ if (component.env?.id === serverInfo[0].env) {
212
+ return {
213
+ ...component,
214
+ server: {
215
+ env: serverInfo[0].env,
216
+ url: serverInfo[0].url,
217
+ host: serverInfo[0].host,
218
+ basePath: serverInfo[0].basePath,
219
+ },
220
+ };
221
+ }
222
+ return component;
223
+ });
224
+
225
+ // If components were updated, create component models and trigger the onComponentUpdated callback
226
+ const changedComponents = updatedComponents.filter((updatedComp, index) => {
227
+ const originalComp = prev.workspace.components[index];
228
+ // Compare server information to detect changes
229
+ return (
230
+ originalComp.server?.url !== updatedComp.server?.url ||
231
+ originalComp.server?.env !== updatedComp.server?.env
232
+ );
233
+ });
234
+
235
+ if (changedComponents.length > 0) {
236
+ // side effect - trigger observers for components that were updated
237
+ setTimeout(() =>
238
+ optionsRef.current.onComponentUpdated?.(
239
+ changedComponents.map(comp => ComponentModel.from(comp))
240
+ )
241
+ );
242
+ }
243
+
244
+ return {
245
+ ...prev,
246
+ workspace: {
247
+ ...prev.workspace,
248
+ components: updatedComponents,
249
+ },
250
+ };
251
+ },
252
+
253
+
254
+ });
191
255
 
192
256
  return () => {
193
257
  unSubCompAddition();
194
258
  unSubCompChange();
195
259
  unSubCompRemoved();
260
+ unSubServerStarted();
196
261
  };
197
262
  }, [optionsRef]);
198
263
 
@@ -205,4 +270,4 @@ export function useWorkspace(options: UseWorkspaceOptions = {}) {
205
270
  subscribeToMore,
206
271
  ...rest,
207
272
  };
208
- }
273
+ }
@@ -72,6 +72,14 @@ export function useCardPlugins({
72
72
  compModelsById: Map<string, ComponentModel>;
73
73
  showPreview?: boolean;
74
74
  }): ComponentCardPluginType<PluginProps>[] {
75
+ const serverUrlsSignature = React.useMemo(() => {
76
+ const serversCount = Array.from(compModelsById.values())
77
+ .filter(comp => comp.server?.url)
78
+ .map(comp => comp.server?.url)
79
+ .join(',');
80
+ return serversCount;
81
+ }, [compModelsById]);
82
+
75
83
  const plugins = React.useMemo(
76
84
  () => [
77
85
  {
@@ -105,7 +113,7 @@ export function useCardPlugins({
105
113
  },
106
114
  new LinkPlugin(),
107
115
  ],
108
- [compModelsById.size]
116
+ [compModelsById.size, serverUrlsSignature, showPreview]
109
117
  );
110
118
 
111
119
  return plugins;
@@ -106,6 +106,7 @@ export function Workspace({ routeSlot, menuSlot, sidebar, workspaceUI, onSidebar
106
106
  </WorkspaceProvider>
107
107
  );
108
108
  }
109
+
109
110
  function useComponentNotifications() {
110
111
  const notifications = useNotifications();
111
112
 
@@ -125,7 +126,20 @@ function useComponentNotifications() {
125
126
  );
126
127
  setTimeout(() => notifications.dismiss(notificationId), 12 * 1000);
127
128
  },
129
+
130
+ onComponentUpdated: (comps: ComponentModel[]) => {
131
+ const compsWithServerUpdates = comps.filter(comp => comp.server?.url);
132
+
133
+ if (compsWithServerUpdates.length > 0) {
134
+ const notificationId = notifications.log(
135
+ `Server ready for ${pluralize('component', compsWithServerUpdates.length)}: ${compsWithServerUpdates
136
+ .map((comp) => comp.id.toString())
137
+ .join(', ')}`
138
+ );
139
+ setTimeout(() => notifications.dismiss(notificationId), 8 * 1000);
140
+ }
141
+ },
128
142
  }),
129
143
  [notifications]
130
144
  );
131
- }
145
+ }