@teambit/workspace 1.0.667 → 1.0.669

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.
Files changed (98) hide show
  1. package/commands/local-only-cmd.ts +2 -2
  2. package/component-config-file/component-config-file.ts +3 -2
  3. package/component-tree.widget.tsx +1 -1
  4. package/dist/aspects-merger.d.ts +5 -5
  5. package/dist/aspects-merger.js.map +1 -1
  6. package/dist/auto-tag.d.ts +2 -2
  7. package/dist/auto-tag.js.map +1 -1
  8. package/dist/bit-map.d.ts +6 -5
  9. package/dist/bit-map.js.map +1 -1
  10. package/dist/build-graph-from-fs.d.ts +4 -4
  11. package/dist/build-graph-from-fs.js.map +1 -1
  12. package/dist/build-graph-ids-from-fs.d.ts +5 -5
  13. package/dist/build-graph-ids-from-fs.js.map +1 -1
  14. package/dist/capsule.cmd.d.ts +3 -3
  15. package/dist/capsule.cmd.js.map +1 -1
  16. package/dist/commands/local-only-cmd.d.ts +2 -2
  17. package/dist/commands/local-only-cmd.js.map +1 -1
  18. package/dist/component-config-file/component-config-file.d.ts +3 -2
  19. package/dist/component-config-file/component-config-file.js.map +1 -1
  20. package/dist/component-tree.widget.d.ts +1 -1
  21. package/dist/component-tree.widget.js.map +1 -1
  22. package/dist/eject-conf.cmd.d.ts +2 -2
  23. package/dist/eject-conf.cmd.js.map +1 -1
  24. package/dist/envs-subcommands/envs-replace.cmd.d.ts +2 -2
  25. package/dist/envs-subcommands/envs-replace.cmd.js.map +1 -1
  26. package/dist/envs-subcommands/envs-set.cmd.d.ts +2 -2
  27. package/dist/envs-subcommands/envs-set.cmd.js.map +1 -1
  28. package/dist/envs-subcommands/envs-unset.cmd.d.ts +2 -2
  29. package/dist/envs-subcommands/envs-unset.cmd.js.map +1 -1
  30. package/dist/envs-subcommands/envs-update.cmd.d.ts +2 -2
  31. package/dist/envs-subcommands/envs-update.cmd.js.map +1 -1
  32. package/dist/filter.d.ts +1 -1
  33. package/dist/filter.js.map +1 -1
  34. package/dist/on-component-events.d.ts +3 -3
  35. package/dist/on-component-events.js.map +1 -1
  36. package/dist/pattern.cmd.d.ts +2 -2
  37. package/dist/pattern.cmd.js.map +1 -1
  38. package/dist/{preview-1753809186996.js → preview-1753848836384.js} +2 -2
  39. package/dist/scope-subcommands/scope-set.cmd.d.ts +2 -2
  40. package/dist/scope-subcommands/scope-set.cmd.js.map +1 -1
  41. package/dist/ui/workspace/use-workspace.js.map +1 -1
  42. package/dist/ui/workspace/workspace-menu.d.ts +1 -1
  43. package/dist/ui/workspace/workspace-menu.js.map +1 -1
  44. package/dist/ui/workspace/workspace-model.d.ts +5 -4
  45. package/dist/ui/workspace/workspace-model.js.map +1 -1
  46. package/dist/ui/workspace/workspace-overview/workspace-overview.d.ts +1 -1
  47. package/dist/ui/workspace/workspace-overview/workspace-overview.js.map +1 -1
  48. package/dist/ui/workspace/workspace-provider.d.ts +2 -2
  49. package/dist/ui/workspace/workspace-provider.js.map +1 -1
  50. package/dist/ui/workspace/workspace.d.ts +1 -1
  51. package/dist/ui/workspace/workspace.js.map +1 -1
  52. package/dist/unuse.cmd.d.ts +2 -2
  53. package/dist/unuse.cmd.js.map +1 -1
  54. package/dist/use.cmd.d.ts +2 -2
  55. package/dist/use.cmd.js.map +1 -1
  56. package/dist/workspace-aspects-loader.d.ts +10 -10
  57. package/dist/workspace-aspects-loader.js.map +1 -1
  58. package/dist/workspace-component/comp-files.d.ts +2 -2
  59. package/dist/workspace-component/comp-files.js.map +1 -1
  60. package/dist/workspace-component/component-status-loader.d.ts +3 -3
  61. package/dist/workspace-component/component-status-loader.js.map +1 -1
  62. package/dist/workspace-component/component-status.d.ts +1 -1
  63. package/dist/workspace-component/component-status.js.map +1 -1
  64. package/dist/workspace-component/workspace-component-loader.d.ts +9 -8
  65. package/dist/workspace-component/workspace-component-loader.js.map +1 -1
  66. package/dist/workspace-component/workspace-component.d.ts +5 -4
  67. package/dist/workspace-component/workspace-component.js.map +1 -1
  68. package/dist/workspace.d.ts +31 -28
  69. package/dist/workspace.graphql.d.ts +3 -3
  70. package/dist/workspace.graphql.js.map +1 -1
  71. package/dist/workspace.js.map +1 -1
  72. package/dist/workspace.main.runtime.d.ts +15 -15
  73. package/dist/workspace.main.runtime.js.map +1 -1
  74. package/dist/workspace.ui-root.d.ts +6 -6
  75. package/dist/workspace.ui-root.js.map +1 -1
  76. package/dist/workspace.ui.drawer.d.ts +4 -3
  77. package/dist/workspace.ui.drawer.js.map +1 -1
  78. package/dist/workspace.ui.runtime.d.ts +14 -13
  79. package/dist/workspace.ui.runtime.js.map +1 -1
  80. package/envs-subcommands/envs-replace.cmd.ts +2 -2
  81. package/envs-subcommands/envs-set.cmd.ts +2 -2
  82. package/envs-subcommands/envs-unset.cmd.ts +2 -2
  83. package/envs-subcommands/envs-update.cmd.ts +2 -2
  84. package/package.json +47 -47
  85. package/scope-subcommands/scope-set.cmd.ts +2 -2
  86. package/ui/workspace/use-workspace.ts +2 -1
  87. package/ui/workspace/workspace-menu.tsx +2 -1
  88. package/ui/workspace/workspace-model.ts +5 -4
  89. package/ui/workspace/workspace-overview/workspace-overview.tsx +1 -1
  90. package/ui/workspace/workspace-provider.tsx +3 -2
  91. package/ui/workspace/workspace.tsx +1 -1
  92. package/workspace-component/comp-files.ts +2 -2
  93. package/workspace-component/component-status-loader.ts +9 -5
  94. package/workspace-component/component-status.ts +1 -1
  95. package/workspace-component/workspace-component-loader.ts +15 -14
  96. package/workspace-component/workspace-component.ts +5 -4
  97. package/workspace.ui.drawer.tsx +6 -5
  98. package/workspace.ui.runtime.tsx +22 -18
@@ -1,22 +1,22 @@
1
- import { BundlerMain } from '@teambit/bundler';
2
- import { CLIMain } from '@teambit/cli';
3
- import { EnvsMain } from '@teambit/envs';
4
- import { GraphqlMain } from '@teambit/graphql';
5
- import { Harmony, SlotRegistry } from '@teambit/harmony';
6
- import { IsolatorMain } from '@teambit/isolator';
7
- import { LoggerMain } from '@teambit/logger';
8
- import { ScopeMain } from '@teambit/scope';
9
- import { UiMain } from '@teambit/ui';
10
- import { GlobalConfigMain } from '@teambit/global-config';
1
+ import type { BundlerMain } from '@teambit/bundler';
2
+ import type { CLIMain } from '@teambit/cli';
3
+ import type { EnvsMain } from '@teambit/envs';
4
+ import type { GraphqlMain } from '@teambit/graphql';
5
+ import type { Harmony, SlotRegistry } from '@teambit/harmony';
6
+ import type { IsolatorMain } from '@teambit/isolator';
7
+ import type { LoggerMain } from '@teambit/logger';
8
+ import type { ScopeMain } from '@teambit/scope';
9
+ import type { UiMain } from '@teambit/ui';
10
+ import type { GlobalConfigMain } from '@teambit/global-config';
11
11
  import type { AspectLoaderMain } from '@teambit/aspect-loader';
12
- import { DependencyResolverMain } from '@teambit/dependency-resolver';
12
+ import type { DependencyResolverMain } from '@teambit/dependency-resolver';
13
13
  import type { ComponentMain, Component } from '@teambit/component';
14
14
  import type { VariantsMain } from '@teambit/variants';
15
- import { ComponentID } from '@teambit/component-id';
16
- import { OnComponentAdd, OnComponentChange, OnComponentRemove, OnComponentLoad } from './on-component-events';
17
- import { WorkspaceExtConfig } from './types';
15
+ import type { ComponentID } from '@teambit/component-id';
16
+ import type { OnComponentAdd, OnComponentChange, OnComponentRemove, OnComponentLoad } from './on-component-events';
17
+ import type { WorkspaceExtConfig } from './types';
18
18
  import { Workspace } from './workspace';
19
- import { ConfigStoreMain } from '@teambit/config-store';
19
+ import type { ConfigStoreMain } from '@teambit/config-store';
20
20
  export type WorkspaceDeps = [
21
21
  CLIMain,
22
22
  ScopeMain,
@@ -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 type { BundlerMain } from '@teambit/bundler';\nimport { BundlerAspect } from '@teambit/bundler';\nimport type { CLIMain, CommandList, Command } from '@teambit/cli';\nimport { CLIAspect, MainRuntime } from '@teambit/cli';\nimport { ComponentAspect } from '@teambit/component';\nimport type { EnvsMain } from '@teambit/envs';\nimport { EnvsAspect } from '@teambit/envs';\nimport type { GraphqlMain } from '@teambit/graphql';\nimport { GraphqlAspect } from '@teambit/graphql';\nimport type { Harmony, SlotRegistry } from '@teambit/harmony';\nimport { Slot } from '@teambit/harmony';\nimport type { IsolatorMain } from '@teambit/isolator';\nimport { IsolatorAspect } from '@teambit/isolator';\nimport type { LoggerMain } from '@teambit/logger';\nimport { LoggerAspect } from '@teambit/logger';\nimport type { ScopeMain } from '@teambit/scope';\nimport { ScopeAspect } from '@teambit/scope';\nimport type { UiMain } from '@teambit/ui';\nimport { UIAspect } from '@teambit/ui';\nimport { VariantsAspect } from '@teambit/variants';\nimport type { GlobalConfigMain } from '@teambit/global-config';\nimport { GlobalConfigAspect } from '@teambit/global-config';\nimport type { AspectLoaderMain } from '@teambit/aspect-loader';\nimport type { DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { DependencyResolverAspect } from '@teambit/dependency-resolver';\nimport type { ComponentMain, Component } from '@teambit/component';\nimport type { VariantsMain } from '@teambit/variants';\nimport type { Consumer } from '@teambit/legacy.consumer';\nimport { loadConsumerIfExist } from '@teambit/legacy.consumer';\nimport type { ComponentConfigLoadOptions } from '@teambit/legacy.consumer-config';\nimport { ExtensionDataList } from '@teambit/legacy.extension-data';\nimport type { ComponentLoadOptions } from '@teambit/legacy.consumer-component';\nimport { ComponentLoader as LegacyComponentLoader, ConsumerComponent } from '@teambit/legacy.consumer-component';\nimport type { ComponentID } from '@teambit/component-id';\nimport { EXT_NAME } from './constants';\nimport type { OnComponentAdd, OnComponentChange, OnComponentRemove, OnComponentLoad } from './on-component-events';\nimport { WorkspaceAspect } from './workspace.aspect';\nimport EjectConfCmd from './eject-conf.cmd';\nimport type { 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 type { ConfigStoreMain } from '@teambit/config-store';\nimport { ConfigStoreAspect } 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,9 +1,9 @@
1
- import { BundlerMain } from '@teambit/bundler';
2
- import { Component, ComponentID, ResolveAspectsOptions } from '@teambit/component';
3
- import { UIRoot } from '@teambit/ui';
4
- import { GetBitMapComponentOptions } from '@teambit/legacy.bit-map';
5
- import { PathOsBased } from '@teambit/toolbox.path.path';
6
- import { Workspace } from './workspace';
1
+ import type { BundlerMain } from '@teambit/bundler';
2
+ import type { Component, ComponentID, ResolveAspectsOptions } from '@teambit/component';
3
+ import type { UIRoot } from '@teambit/ui';
4
+ import type { GetBitMapComponentOptions } from '@teambit/legacy.bit-map';
5
+ import type { PathOsBased } from '@teambit/toolbox.path.path';
6
+ import type { Workspace } from './workspace';
7
7
  export declare class WorkspaceUIRoot implements UIRoot {
8
8
  /**
9
9
  * workspace extension.
@@ -1 +1 @@
1
- {"version":3,"names":["WorkspaceUIRoot","constructor","workspace","bundler","_defineProperty","ssr","launchBrowserOnStart","prebundle","name","path","configFile","resolveAspects","runtimeName","componentIds","opts","resolvePattern","pattern","byPattern","getConfig","componentDir","componentId","bitMapOptions","options","relative","exports"],"sources":["workspace.ui-root.ts"],"sourcesContent":["import { BundlerMain } from '@teambit/bundler';\nimport { Component, ComponentID, ResolveAspectsOptions } from '@teambit/component';\nimport { UIRoot } from '@teambit/ui';\nimport { GetBitMapComponentOptions } from '@teambit/legacy.bit-map';\nimport { PathOsBased } from '@teambit/toolbox.path.path';\n\nimport { Workspace } from './workspace';\n\nexport class WorkspaceUIRoot implements UIRoot {\n constructor(\n /**\n * workspace extension.\n */\n private workspace: Workspace,\n\n /**\n * bundler extension\n */\n private bundler: BundlerMain\n ) {}\n\n priority = true;\n\n get name() {\n return this.workspace.name;\n }\n\n get path() {\n return this.workspace.path;\n }\n\n get configFile() {\n return 'workspace.json';\n }\n\n buildOptions = {\n ssr: false,\n launchBrowserOnStart: true,\n prebundle: true,\n };\n\n async resolveAspects(runtimeName: string, componentIds?: ComponentID[], opts?: ResolveAspectsOptions) {\n return this.workspace.resolveAspects(runtimeName, componentIds, opts);\n }\n\n // TODO: @gilad please implement with variants.\n resolvePattern(pattern: string): Promise<Component[]> {\n return this.workspace.byPattern(pattern);\n }\n\n getConfig() {\n return {};\n }\n\n /**\n * proxy to `workspace.componentDir()`\n */\n componentDir(\n componentId: ComponentID,\n bitMapOptions?: GetBitMapComponentOptions,\n options = { relative: false }\n ): PathOsBased {\n return this.workspace.componentDir(componentId, bitMapOptions, options);\n }\n}\n"],"mappings":";;;;;;;;;AAQO,MAAMA,eAAe,CAAmB;EAC7CC,WAAWA;EACT;AACJ;AACA;EACYC,SAAoB;EAE5B;AACJ;AACA;EACYC,OAAoB,EAC5B;IAAA,KANQD,SAAoB,GAApBA,SAAoB;IAAA,KAKpBC,OAAoB,GAApBA,OAAoB;IAAAC,eAAA,mBAGnB,IAAI;IAAAA,eAAA,uBAcA;MACbC,GAAG,EAAE,KAAK;MACVC,oBAAoB,EAAE,IAAI;MAC1BC,SAAS,EAAE;IACb,CAAC;EApBE;EAIH,IAAIC,IAAIA,CAAA,EAAG;IACT,OAAO,IAAI,CAACN,SAAS,CAACM,IAAI;EAC5B;EAEA,IAAIC,IAAIA,CAAA,EAAG;IACT,OAAO,IAAI,CAACP,SAAS,CAACO,IAAI;EAC5B;EAEA,IAAIC,UAAUA,CAAA,EAAG;IACf,OAAO,gBAAgB;EACzB;EAQA,MAAMC,cAAcA,CAACC,WAAmB,EAAEC,YAA4B,EAAEC,IAA4B,EAAE;IACpG,OAAO,IAAI,CAACZ,SAAS,CAACS,cAAc,CAACC,WAAW,EAAEC,YAAY,EAAEC,IAAI,CAAC;EACvE;;EAEA;EACAC,cAAcA,CAACC,OAAe,EAAwB;IACpD,OAAO,IAAI,CAACd,SAAS,CAACe,SAAS,CAACD,OAAO,CAAC;EAC1C;EAEAE,SAASA,CAAA,EAAG;IACV,OAAO,CAAC,CAAC;EACX;;EAEA;AACF;AACA;EACEC,YAAYA,CACVC,WAAwB,EACxBC,aAAyC,EACzCC,OAAO,GAAG;IAAEC,QAAQ,EAAE;EAAM,CAAC,EAChB;IACb,OAAO,IAAI,CAACrB,SAAS,CAACiB,YAAY,CAACC,WAAW,EAAEC,aAAa,EAAEC,OAAO,CAAC;EACzE;AACF;AAACE,OAAA,CAAAxB,eAAA,GAAAA,eAAA","ignoreList":[]}
1
+ {"version":3,"names":["WorkspaceUIRoot","constructor","workspace","bundler","_defineProperty","ssr","launchBrowserOnStart","prebundle","name","path","configFile","resolveAspects","runtimeName","componentIds","opts","resolvePattern","pattern","byPattern","getConfig","componentDir","componentId","bitMapOptions","options","relative","exports"],"sources":["workspace.ui-root.ts"],"sourcesContent":["import type { BundlerMain } from '@teambit/bundler';\nimport type { Component, ComponentID, ResolveAspectsOptions } from '@teambit/component';\nimport type { UIRoot } from '@teambit/ui';\nimport type { GetBitMapComponentOptions } from '@teambit/legacy.bit-map';\nimport type { PathOsBased } from '@teambit/toolbox.path.path';\n\nimport type { Workspace } from './workspace';\n\nexport class WorkspaceUIRoot implements UIRoot {\n constructor(\n /**\n * workspace extension.\n */\n private workspace: Workspace,\n\n /**\n * bundler extension\n */\n private bundler: BundlerMain\n ) {}\n\n priority = true;\n\n get name() {\n return this.workspace.name;\n }\n\n get path() {\n return this.workspace.path;\n }\n\n get configFile() {\n return 'workspace.json';\n }\n\n buildOptions = {\n ssr: false,\n launchBrowserOnStart: true,\n prebundle: true,\n };\n\n async resolveAspects(runtimeName: string, componentIds?: ComponentID[], opts?: ResolveAspectsOptions) {\n return this.workspace.resolveAspects(runtimeName, componentIds, opts);\n }\n\n // TODO: @gilad please implement with variants.\n resolvePattern(pattern: string): Promise<Component[]> {\n return this.workspace.byPattern(pattern);\n }\n\n getConfig() {\n return {};\n }\n\n /**\n * proxy to `workspace.componentDir()`\n */\n componentDir(\n componentId: ComponentID,\n bitMapOptions?: GetBitMapComponentOptions,\n options = { relative: false }\n ): PathOsBased {\n return this.workspace.componentDir(componentId, bitMapOptions, options);\n }\n}\n"],"mappings":";;;;;;;;;AAQO,MAAMA,eAAe,CAAmB;EAC7CC,WAAWA;EACT;AACJ;AACA;EACYC,SAAoB;EAE5B;AACJ;AACA;EACYC,OAAoB,EAC5B;IAAA,KANQD,SAAoB,GAApBA,SAAoB;IAAA,KAKpBC,OAAoB,GAApBA,OAAoB;IAAAC,eAAA,mBAGnB,IAAI;IAAAA,eAAA,uBAcA;MACbC,GAAG,EAAE,KAAK;MACVC,oBAAoB,EAAE,IAAI;MAC1BC,SAAS,EAAE;IACb,CAAC;EApBE;EAIH,IAAIC,IAAIA,CAAA,EAAG;IACT,OAAO,IAAI,CAACN,SAAS,CAACM,IAAI;EAC5B;EAEA,IAAIC,IAAIA,CAAA,EAAG;IACT,OAAO,IAAI,CAACP,SAAS,CAACO,IAAI;EAC5B;EAEA,IAAIC,UAAUA,CAAA,EAAG;IACf,OAAO,gBAAgB;EACzB;EAQA,MAAMC,cAAcA,CAACC,WAAmB,EAAEC,YAA4B,EAAEC,IAA4B,EAAE;IACpG,OAAO,IAAI,CAACZ,SAAS,CAACS,cAAc,CAACC,WAAW,EAAEC,YAAY,EAAEC,IAAI,CAAC;EACvE;;EAEA;EACAC,cAAcA,CAACC,OAAe,EAAwB;IACpD,OAAO,IAAI,CAACd,SAAS,CAACe,SAAS,CAACD,OAAO,CAAC;EAC1C;EAEAE,SAASA,CAAA,EAAG;IACV,OAAO,CAAC,CAAC;EACX;;EAEA;AACF;AACA;EACEC,YAAYA,CACVC,WAAwB,EACxBC,aAAyC,EACzCC,OAAO,GAAG;IAAEC,QAAQ,EAAE;EAAM,CAAC,EAChB;IACb,OAAO,IAAI,CAACrB,SAAS,CAACiB,YAAY,CAACC,WAAW,EAAEC,aAAa,EAAEC,OAAO,CAAC;EACzE;AACF;AAACE,OAAA,CAAAxB,eAAA,GAAAA,eAAA","ignoreList":[]}
@@ -1,6 +1,7 @@
1
- import { ComponentsDrawer, ComponentFiltersSlot, DrawerWidgetSlot } from '@teambit/component.ui.component-drawer';
2
- import { LanesModel } from '@teambit/lanes.ui.models.lanes-model';
3
- import { SidebarWidgetSlot } from './workspace.ui.runtime';
1
+ import type { ComponentFiltersSlot, DrawerWidgetSlot } from '@teambit/component.ui.component-drawer';
2
+ import { ComponentsDrawer } from '@teambit/component.ui.component-drawer';
3
+ import type { LanesModel } from '@teambit/lanes.ui.models.lanes-model';
4
+ import type { SidebarWidgetSlot } from './workspace.ui.runtime';
4
5
  export type WorkspaceDrawerProps = {
5
6
  treeWidgets: SidebarWidgetSlot;
6
7
  filtersSlot: ComponentFiltersSlot;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","data","_interopRequireWildcard","require","_componentUi","_uiFoundationUi","_lanesHooks","_lanesHooks2","_workspaceContext","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","workspaceDrawer","treeWidgets","filtersSlot","drawerWidgetSlot","overrideUseLanes","useLanesFromProps","useLanes","defaultUseLanesHook","ComponentsDrawer","order","id","name","plugins","tree","widgets","customRenderer","treeNodeSlot","TreeNode","props","children","node","createElement","ComponentView","payload","ScopePayload","ScopeTreeNode","NamespaceTreeNode","filters","drawerWidgets","emptyMessage","useComponents","lanesModel","loading","lanesLoading","viewedLaneId","viewedLane","defaultLane","getDefaultLane","isViewingDefaultLane","isEqual","isViewingWorkspaceVersions","isViewingCurrentLane","components","laneComponents","laneCompsLoading","useLaneComponents","undefined","mainComponents","mainCompsLoading","workspace","useContext","WorkspaceContext","workspaceComponents","mergeComponents","exports","mainComponentsThatAreNotOnLane","filter","mainComponent","find","laneComponent","toStringWithoutVersion","concat"],"sources":["workspace.ui.drawer.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport { ComponentsDrawer, ComponentFiltersSlot, DrawerWidgetSlot } from '@teambit/component.ui.component-drawer';\nimport { ComponentView, NamespaceTreeNode, ScopePayload, ScopeTreeNode } from '@teambit/ui-foundation.ui.side-bar';\nimport type { PayloadType } from '@teambit/ui-foundation.ui.side-bar';\nimport { useLanes as defaultUseLanesHook } from '@teambit/lanes.hooks.use-lanes';\nimport { useLaneComponents } from '@teambit/lanes.hooks.use-lane-components';\nimport { TreeNodeProps } from '@teambit/design.ui.tree';\nimport { ComponentModel } from '@teambit/component';\nimport { LanesModel } from '@teambit/lanes.ui.models.lanes-model';\nimport { SidebarWidgetSlot } from './workspace.ui.runtime';\nimport { WorkspaceContext } from './ui/workspace/workspace-context';\n\nexport type WorkspaceDrawerProps = {\n treeWidgets: SidebarWidgetSlot;\n filtersSlot: ComponentFiltersSlot;\n drawerWidgetSlot: DrawerWidgetSlot;\n overrideUseLanes?: () => { lanesModel?: LanesModel; loading?: boolean };\n};\n\nexport const workspaceDrawer = ({\n treeWidgets,\n filtersSlot,\n drawerWidgetSlot,\n overrideUseLanes: useLanesFromProps,\n}: WorkspaceDrawerProps) => {\n const useLanes = useLanesFromProps || defaultUseLanesHook;\n\n return new ComponentsDrawer({\n order: 0,\n id: 'workspace-components-drawer',\n name: 'COMPONENTS',\n plugins: {\n tree: {\n widgets: treeWidgets,\n customRenderer: (treeNodeSlot) =>\n function TreeNode(props: TreeNodeProps<PayloadType>) {\n const children = props.node.children;\n\n if (!children) {\n // non collapse\n return <ComponentView {...props} treeNodeSlot={treeNodeSlot} />;\n }\n\n if (props.node.payload instanceof ScopePayload) return <ScopeTreeNode {...props} />;\n\n return <NamespaceTreeNode {...props} />;\n },\n },\n filters: filtersSlot,\n drawerWidgets: drawerWidgetSlot,\n },\n emptyMessage: 'Workspace is empty',\n useLanes,\n useComponents: () => {\n const { lanesModel, loading: lanesLoading } = useLanes();\n\n const viewedLaneId = lanesModel?.viewedLane?.id;\n const defaultLane = lanesModel?.getDefaultLane();\n const isViewingDefaultLane = viewedLaneId && defaultLane?.id.isEqual(viewedLaneId);\n\n const isViewingWorkspaceVersions = lanesModel?.isViewingCurrentLane();\n\n const { components: laneComponents = [], loading: laneCompsLoading } = useLaneComponents(\n !isViewingWorkspaceVersions ? viewedLaneId : undefined\n );\n\n const { components: mainComponents = [], loading: mainCompsLoading } = useLaneComponents(defaultLane?.id);\n\n const workspace = useContext(WorkspaceContext);\n const { components: workspaceComponents } = workspace;\n\n const loading = lanesLoading || laneCompsLoading || mainCompsLoading;\n\n /**\n * if viewing locally checked out lane, return all components from the workspace\n * when viewing main when locally checked out to another lane, explicitly return components from the \"main\" lane\n * when viewing another lane when locally checked out to a different lane, return \"main\" + \"lane\" components\n * */\n if (isViewingWorkspaceVersions) {\n return {\n loading,\n components: workspaceComponents,\n };\n }\n\n if (isViewingDefaultLane) {\n return {\n loading,\n components: mainComponents,\n };\n }\n\n return {\n loading,\n components: mergeComponents(mainComponents, laneComponents),\n };\n },\n });\n};\n\nfunction mergeComponents(mainComponents: ComponentModel[], laneComponents: ComponentModel[]): ComponentModel[] {\n const mainComponentsThatAreNotOnLane = mainComponents.filter((mainComponent) => {\n return !laneComponents.find(\n (laneComponent) => laneComponent.id.toStringWithoutVersion() === mainComponent.id.toStringWithoutVersion()\n );\n });\n return laneComponents.concat(mainComponentsThatAreNotOnLane);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","data","_interopRequireWildcard","require","_componentUi","_uiFoundationUi","_lanesHooks","_lanesHooks2","_workspaceContext","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","workspaceDrawer","treeWidgets","filtersSlot","drawerWidgetSlot","overrideUseLanes","useLanesFromProps","useLanes","defaultUseLanesHook","ComponentsDrawer","order","id","name","plugins","tree","widgets","customRenderer","treeNodeSlot","TreeNode","props","children","node","createElement","ComponentView","payload","ScopePayload","ScopeTreeNode","NamespaceTreeNode","filters","drawerWidgets","emptyMessage","useComponents","lanesModel","loading","lanesLoading","viewedLaneId","viewedLane","defaultLane","getDefaultLane","isViewingDefaultLane","isEqual","isViewingWorkspaceVersions","isViewingCurrentLane","components","laneComponents","laneCompsLoading","useLaneComponents","undefined","mainComponents","mainCompsLoading","workspace","useContext","WorkspaceContext","workspaceComponents","mergeComponents","exports","mainComponentsThatAreNotOnLane","filter","mainComponent","find","laneComponent","toStringWithoutVersion","concat"],"sources":["workspace.ui.drawer.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport type { ComponentFiltersSlot, DrawerWidgetSlot } from '@teambit/component.ui.component-drawer';\nimport { ComponentsDrawer } from '@teambit/component.ui.component-drawer';\nimport { ComponentView, NamespaceTreeNode, ScopePayload, ScopeTreeNode } from '@teambit/ui-foundation.ui.side-bar';\nimport type { PayloadType } from '@teambit/ui-foundation.ui.side-bar';\nimport { useLanes as defaultUseLanesHook } from '@teambit/lanes.hooks.use-lanes';\nimport { useLaneComponents } from '@teambit/lanes.hooks.use-lane-components';\nimport type { TreeNodeProps } from '@teambit/design.ui.tree';\nimport type { ComponentModel } from '@teambit/component';\nimport type { LanesModel } from '@teambit/lanes.ui.models.lanes-model';\nimport type { SidebarWidgetSlot } from './workspace.ui.runtime';\nimport { WorkspaceContext } from './ui/workspace/workspace-context';\n\nexport type WorkspaceDrawerProps = {\n treeWidgets: SidebarWidgetSlot;\n filtersSlot: ComponentFiltersSlot;\n drawerWidgetSlot: DrawerWidgetSlot;\n overrideUseLanes?: () => { lanesModel?: LanesModel; loading?: boolean };\n};\n\nexport const workspaceDrawer = ({\n treeWidgets,\n filtersSlot,\n drawerWidgetSlot,\n overrideUseLanes: useLanesFromProps,\n}: WorkspaceDrawerProps) => {\n const useLanes = useLanesFromProps || defaultUseLanesHook;\n\n return new ComponentsDrawer({\n order: 0,\n id: 'workspace-components-drawer',\n name: 'COMPONENTS',\n plugins: {\n tree: {\n widgets: treeWidgets,\n customRenderer: (treeNodeSlot) =>\n function TreeNode(props: TreeNodeProps<PayloadType>) {\n const children = props.node.children;\n\n if (!children) {\n // non collapse\n return <ComponentView {...props} treeNodeSlot={treeNodeSlot} />;\n }\n\n if (props.node.payload instanceof ScopePayload) return <ScopeTreeNode {...props} />;\n\n return <NamespaceTreeNode {...props} />;\n },\n },\n filters: filtersSlot,\n drawerWidgets: drawerWidgetSlot,\n },\n emptyMessage: 'Workspace is empty',\n useLanes,\n useComponents: () => {\n const { lanesModel, loading: lanesLoading } = useLanes();\n\n const viewedLaneId = lanesModel?.viewedLane?.id;\n const defaultLane = lanesModel?.getDefaultLane();\n const isViewingDefaultLane = viewedLaneId && defaultLane?.id.isEqual(viewedLaneId);\n\n const isViewingWorkspaceVersions = lanesModel?.isViewingCurrentLane();\n\n const { components: laneComponents = [], loading: laneCompsLoading } = useLaneComponents(\n !isViewingWorkspaceVersions ? viewedLaneId : undefined\n );\n\n const { components: mainComponents = [], loading: mainCompsLoading } = useLaneComponents(defaultLane?.id);\n\n const workspace = useContext(WorkspaceContext);\n const { components: workspaceComponents } = workspace;\n\n const loading = lanesLoading || laneCompsLoading || mainCompsLoading;\n\n /**\n * if viewing locally checked out lane, return all components from the workspace\n * when viewing main when locally checked out to another lane, explicitly return components from the \"main\" lane\n * when viewing another lane when locally checked out to a different lane, return \"main\" + \"lane\" components\n * */\n if (isViewingWorkspaceVersions) {\n return {\n loading,\n components: workspaceComponents,\n };\n }\n\n if (isViewingDefaultLane) {\n return {\n loading,\n components: mainComponents,\n };\n }\n\n return {\n loading,\n components: mergeComponents(mainComponents, laneComponents),\n };\n },\n });\n};\n\nfunction mergeComponents(mainComponents: ComponentModel[], laneComponents: ComponentModel[]): ComponentModel[] {\n const mainComponentsThatAreNotOnLane = mainComponents.filter((mainComponent) => {\n return !laneComponents.find(\n (laneComponent) => laneComponent.id.toStringWithoutVersion() === mainComponent.id.toStringWithoutVersion()\n );\n });\n return laneComponents.concat(mainComponentsThatAreNotOnLane);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,18 +1,19 @@
1
- import { ComponentUI, ComponentModel } from '@teambit/component';
2
- import { ComponentTreeUI, ComponentTreeNode } from '@teambit/component-tree';
3
- import { SlotRegistry } from '@teambit/harmony';
1
+ import type { ComponentUI, ComponentModel } from '@teambit/component';
2
+ import type { ComponentTreeUI, ComponentTreeNode } from '@teambit/component-tree';
3
+ import type { SlotRegistry } from '@teambit/harmony';
4
4
  import type { RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';
5
- import { MenuWidgetSlot, MenuWidget } from '@teambit/ui-foundation.ui.menu';
6
- import { SidebarUI, SidebarItem, SidebarItemSlot } from '@teambit/sidebar';
7
- import { MenuItemSlot, MenuItem } from '@teambit/ui-foundation.ui.main-dropdown';
8
- import { UIRootUI as UIRoot, UiUI } from '@teambit/ui';
9
- import { GraphUI } from '@teambit/graph';
10
- import React, { ReactNode } from 'react';
11
- import { RouteProps } from 'react-router-dom';
12
- import { CommandBarUI } from '@teambit/command-bar';
5
+ import type { MenuWidgetSlot, MenuWidget } from '@teambit/ui-foundation.ui.menu';
6
+ import type { SidebarUI, SidebarItem, SidebarItemSlot } from '@teambit/sidebar';
7
+ import type { MenuItemSlot, MenuItem } from '@teambit/ui-foundation.ui.main-dropdown';
8
+ import type { UIRootUI as UIRoot, UiUI } from '@teambit/ui';
9
+ import type { GraphUI } from '@teambit/graph';
10
+ import type { ReactNode } from 'react';
11
+ import React from 'react';
12
+ import type { RouteProps } from 'react-router-dom';
13
+ import type { CommandBarUI } from '@teambit/command-bar';
13
14
  import type { DrawerType } from '@teambit/ui-foundation.ui.tree.drawer';
14
- import { ComponentFilters } from '@teambit/component.ui.component-filters.component-filter-context';
15
- import { DrawerWidgetSlot, ComponentFiltersSlot } from '@teambit/component.ui.component-drawer';
15
+ import type { ComponentFilters } from '@teambit/component.ui.component-filters.component-filter-context';
16
+ import type { DrawerWidgetSlot, ComponentFiltersSlot } from '@teambit/component.ui.component-drawer';
16
17
  export type SidebarWidgetSlot = SlotRegistry<ComponentTreeNode>;
17
18
  export declare class WorkspaceUI {
18
19
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["_component","data","require","_lodash","_componentTree","_harmony","_sidebar","_ui","_graph","_react","_interopRequireDefault","_commandBar","_designUiSurfacesMenu","_componentUiComponentFilters","_componentUiComponentFilters2","_componentUiComponentFilters3","_componentUi","_componentTree2","_ui2","_workspace","_workspaceUi","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","WorkspaceUI","constructor","routeSlot","componentUi","menuSlot","menuItemSlot","sidebar","sidebarSlot","sidebarItemSlot","drawerWidgetSlot","drawerComponentsFiltersSlot","commandBarUI","menuWidgetSlot","menuItems","register","menuWidgets","routes","components","updateComponents","links","filters","widgets","category","title","keyChar","handler","run","registerRoutes","registerDrawers","drawers","registerDrawer","registerSidebarWidget","componentTreeNode","uiRoot","workspaceDrawer","treeWidgets","filtersSlot","setKeyBindHandler","addCommand","id","action","displayName","keybinding","path","element","createElement","Workspace","render","items","listSidebarItems","workspaceUI","onSidebarTogglerChange","flatten","values","compact","map","item","component","provider","ui","componentTree","graphUI","config","registerTreeNode","ComponentTreeWidget","registerComponentWidget","widget","registerDrawerComponentFilters","DeprecateFilter","EnvsFilter","ShowMainFilter","registerDrawerWidgets","FilterWidget","key","TreeToggleWidget","registerRoot","bind","registerMenuItem","registerSidebarLink","Gallery","MenuLinkItem","exact","href","icon","registerMenuRoutes","WorkspaceMenu","widgetSlot","routePath","getMenu","WorkspaceAspect","getComponentUI","registerMenuWidget","CommandBarButton","exports","UIAspect","ComponentAspect","SidebarAspect","ComponentTreeAspect","CommandBarAspect","GraphAspect","UIRuntime","Slot","withType","_default","addRuntime"],"sources":["workspace.ui.runtime.tsx"],"sourcesContent":["import { ComponentAspect, ComponentUI, ComponentModel } from '@teambit/component';\nimport { compact, flatten } from 'lodash';\nimport { ComponentTreeAspect, ComponentTreeUI, ComponentTreeNode } from '@teambit/component-tree';\nimport { Slot, SlotRegistry } from '@teambit/harmony';\nimport type { RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';\nimport { MenuWidgetSlot, MenuWidget } from '@teambit/ui-foundation.ui.menu';\nimport { SidebarAspect, SidebarUI, SidebarItem, SidebarItemSlot } from '@teambit/sidebar';\nimport { MenuItemSlot, MenuItem } from '@teambit/ui-foundation.ui.main-dropdown';\nimport { UIAspect, UIRootUI as UIRoot, UIRuntime, UiUI } from '@teambit/ui';\nimport { GraphAspect, GraphUI } from '@teambit/graph';\nimport React, { ReactNode } from 'react';\nimport { RouteProps } from 'react-router-dom';\nimport { CommandBarAspect, CommandBarUI, CommandHandler } from '@teambit/command-bar';\nimport { MenuLinkItem } from '@teambit/design.ui.surfaces.menu.link-item';\nimport type { DrawerType } from '@teambit/ui-foundation.ui.tree.drawer';\nimport { ComponentFilters } from '@teambit/component.ui.component-filters.component-filter-context';\nimport { DeprecateFilter } from '@teambit/component.ui.component-filters.deprecate-filter';\nimport { EnvsFilter } from '@teambit/component.ui.component-filters.env-filter';\nimport { ShowMainFilter } from '@teambit/component.ui.component-filters.show-main-filter';\nimport {\n DrawerWidgetSlot,\n FilterWidget,\n TreeToggleWidget,\n ComponentFiltersSlot,\n} from '@teambit/component.ui.component-drawer';\nimport { ComponentTreeWidget } from './component-tree.widget';\nimport { Workspace, WorkspaceMenu } from './ui';\nimport { WorkspaceAspect } from './workspace.aspect';\nimport { workspaceDrawer } from './workspace.ui.drawer';\n\nexport type SidebarWidgetSlot = SlotRegistry<ComponentTreeNode>;\n\nexport class WorkspaceUI {\n constructor(\n /**\n * route slot.\n */\n private routeSlot: RouteSlot,\n\n /**\n * component ui extension.\n */\n private componentUi: ComponentUI,\n\n /**\n * menu slot\n */\n private menuSlot: RouteSlot,\n\n private menuItemSlot: MenuItemSlot,\n\n private sidebar: SidebarUI,\n\n private sidebarSlot: SidebarWidgetSlot,\n\n /**\n * sidebar link slot\n */\n private sidebarItemSlot: SidebarItemSlot,\n\n private drawerWidgetSlot: DrawerWidgetSlot,\n\n private drawerComponentsFiltersSlot: ComponentFiltersSlot,\n\n private commandBarUI: CommandBarUI,\n\n private menuWidgetSlot: MenuWidgetSlot\n ) {}\n\n private setKeyBindHandler: (updated: CommandHandler) => void = () => {};\n\n /**\n * register a route to the workspace.\n */\n registerRoutes(routes: RouteProps[]) {\n this.routeSlot.register(routes);\n return this;\n }\n\n registerDrawers(...drawers: DrawerType[]) {\n this.sidebar.registerDrawer(...drawers);\n return this;\n }\n\n registerSidebarWidget(componentTreeNode: ComponentTreeNode) {\n this.sidebarSlot.register(componentTreeNode);\n return this;\n }\n\n registerMenuItem = (menuItems: MenuItem[]) => {\n this.menuItemSlot.register(menuItems);\n };\n\n registerMenuWidget = (menuWidgets: MenuWidget[]) => {\n this.menuWidgetSlot.register(menuWidgets);\n };\n\n registerMenuRoutes = (routes: RouteProps[]) => {\n this.menuSlot.register(routes);\n return this;\n };\n\n setComponents = (components: ComponentModel[]) => {\n this.componentUi.updateComponents(components);\n };\n\n registerSidebarLink = (...links: SidebarItem[]) => {\n this.sidebarItemSlot.register(links);\n };\n\n /**\n * register component filters\n */\n registerDrawerComponentFilters = (filters: ComponentFilters) => {\n this.drawerComponentsFiltersSlot.register(filters);\n };\n\n registerDrawerWidgets = (widgets: ReactNode[]) => {\n this.drawerWidgetSlot.register(widgets);\n };\n\n uiRoot(): UIRoot {\n this.registerDrawers(\n workspaceDrawer({\n treeWidgets: this.sidebarSlot,\n drawerWidgetSlot: this.drawerWidgetSlot,\n filtersSlot: this.drawerComponentsFiltersSlot,\n })\n );\n\n const [setKeyBindHandler] = this.commandBarUI.addCommand({\n id: 'sidebar.toggle', // TODO - extract to a component!\n action: () => {},\n displayName: 'Toggle component list',\n keybinding: 'alt+s',\n });\n this.setKeyBindHandler = setKeyBindHandler;\n\n return {\n routes: [\n {\n path: '/*',\n element: (\n <Workspace\n menuSlot={this.menuSlot}\n routeSlot={this.routeSlot}\n sidebar={<this.sidebar.render items={this.listSidebarItems()} />}\n workspaceUI={this}\n onSidebarTogglerChange={this.setKeyBindHandler}\n />\n ),\n },\n ],\n };\n }\n\n listSidebarItems() {\n const items = flatten(this.sidebarItemSlot.values());\n return compact(\n items.map((item) => {\n return item.component;\n })\n );\n }\n\n private menuItems: MenuItem[] = [\n {\n category: 'general',\n title: 'Open command bar',\n keyChar: 'mod+k',\n handler: () => this.commandBarUI?.run('command-bar.open'),\n },\n {\n category: 'general',\n title: 'Toggle component list',\n keyChar: 'alt+s',\n handler: () => this.commandBarUI?.run('sidebar.toggle'),\n },\n ];\n\n static dependencies = [UIAspect, ComponentAspect, SidebarAspect, ComponentTreeAspect, CommandBarAspect, GraphAspect];\n\n static runtime = UIRuntime;\n\n static slots = [\n Slot.withType<RouteProps>(),\n Slot.withType<RouteProps>(),\n Slot.withType<ComponentTreeNode>(),\n Slot.withType<MenuItemSlot>(),\n Slot.withType<SidebarItemSlot>(),\n Slot.withType<DrawerWidgetSlot>(),\n Slot.withType<ComponentFiltersSlot>(),\n Slot.withType<MenuWidgetSlot>(),\n ];\n\n static async provider(\n [ui, componentUi, sidebar, componentTree, commandBarUI, graphUI]: [\n UiUI,\n ComponentUI,\n SidebarUI,\n ComponentTreeUI,\n CommandBarUI,\n GraphUI,\n ],\n config,\n [\n routeSlot,\n menuSlot,\n menuItemSlot,\n sidebarSlot,\n sidebarItemSlot,\n drawerWidgetSlot,\n drawerComponentsFiltersSlot,\n menuWidgetSlot,\n ]: [\n RouteSlot,\n RouteSlot,\n MenuItemSlot,\n SidebarWidgetSlot,\n SidebarItemSlot,\n DrawerWidgetSlot,\n ComponentFiltersSlot,\n MenuWidgetSlot,\n ]\n ) {\n componentTree.registerTreeNode(new ComponentTreeWidget());\n sidebarSlot.register(new ComponentTreeWidget());\n graphUI.registerComponentWidget(new ComponentTreeWidget().widget);\n\n const workspaceUI = new WorkspaceUI(\n routeSlot,\n componentUi,\n menuSlot,\n menuItemSlot,\n sidebar,\n sidebarSlot,\n sidebarItemSlot,\n drawerWidgetSlot,\n drawerComponentsFiltersSlot,\n commandBarUI,\n menuWidgetSlot\n );\n\n workspaceUI.registerDrawerComponentFilters([DeprecateFilter, EnvsFilter, ShowMainFilter(true)]);\n workspaceUI.registerDrawerWidgets([\n <FilterWidget key={'workspace-filter-widget'} />,\n <TreeToggleWidget key={'workspace-tree-toggle-widget'} />,\n ]);\n ui.registerRoot(workspaceUI.uiRoot.bind(workspaceUI));\n workspaceUI.registerMenuItem(workspaceUI.menuItems);\n\n workspaceUI.registerSidebarLink({\n component: function Gallery() {\n return (\n <MenuLinkItem exact href=\"/\" icon=\"comps\">\n Workspace overview\n </MenuLinkItem>\n );\n },\n });\n\n workspaceUI.registerMenuRoutes([\n {\n path: '/',\n element: <WorkspaceMenu menuItemSlot={workspaceUI.menuItemSlot} widgetSlot={workspaceUI.menuWidgetSlot} />,\n },\n {\n path: workspaceUI.componentUi.routePath,\n element: workspaceUI.componentUi.getMenu(WorkspaceAspect.id),\n },\n ]);\n\n workspaceUI.registerRoutes([\n {\n path: workspaceUI.componentUi.routePath,\n element: workspaceUI.componentUi.getComponentUI(WorkspaceAspect.id),\n },\n ]);\n\n workspaceUI.registerMenuWidget([commandBarUI.CommandBarButton]);\n\n return workspaceUI;\n }\n}\n\nexport default WorkspaceUI;\n\nWorkspaceAspect.addRuntime(WorkspaceUI);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_component","data","require","_lodash","_componentTree","_harmony","_sidebar","_ui","_graph","_react","_interopRequireDefault","_commandBar","_designUiSurfacesMenu","_componentUiComponentFilters","_componentUiComponentFilters2","_componentUiComponentFilters3","_componentUi","_componentTree2","_ui2","_workspace","_workspaceUi","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","WorkspaceUI","constructor","routeSlot","componentUi","menuSlot","menuItemSlot","sidebar","sidebarSlot","sidebarItemSlot","drawerWidgetSlot","drawerComponentsFiltersSlot","commandBarUI","menuWidgetSlot","menuItems","register","menuWidgets","routes","components","updateComponents","links","filters","widgets","category","title","keyChar","handler","run","registerRoutes","registerDrawers","drawers","registerDrawer","registerSidebarWidget","componentTreeNode","uiRoot","workspaceDrawer","treeWidgets","filtersSlot","setKeyBindHandler","addCommand","id","action","displayName","keybinding","path","element","createElement","Workspace","render","items","listSidebarItems","workspaceUI","onSidebarTogglerChange","flatten","values","compact","map","item","component","provider","ui","componentTree","graphUI","config","registerTreeNode","ComponentTreeWidget","registerComponentWidget","widget","registerDrawerComponentFilters","DeprecateFilter","EnvsFilter","ShowMainFilter","registerDrawerWidgets","FilterWidget","key","TreeToggleWidget","registerRoot","bind","registerMenuItem","registerSidebarLink","Gallery","MenuLinkItem","exact","href","icon","registerMenuRoutes","WorkspaceMenu","widgetSlot","routePath","getMenu","WorkspaceAspect","getComponentUI","registerMenuWidget","CommandBarButton","exports","UIAspect","ComponentAspect","SidebarAspect","ComponentTreeAspect","CommandBarAspect","GraphAspect","UIRuntime","Slot","withType","_default","addRuntime"],"sources":["workspace.ui.runtime.tsx"],"sourcesContent":["import type { ComponentUI, ComponentModel } from '@teambit/component';\nimport { ComponentAspect } from '@teambit/component';\nimport { compact, flatten } from 'lodash';\nimport type { ComponentTreeUI, ComponentTreeNode } from '@teambit/component-tree';\nimport { ComponentTreeAspect } from '@teambit/component-tree';\nimport type { SlotRegistry } from '@teambit/harmony';\nimport { Slot } from '@teambit/harmony';\nimport type { RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';\nimport type { MenuWidgetSlot, MenuWidget } from '@teambit/ui-foundation.ui.menu';\nimport type { SidebarUI, SidebarItem, SidebarItemSlot } from '@teambit/sidebar';\nimport { SidebarAspect } from '@teambit/sidebar';\nimport type { MenuItemSlot, MenuItem } from '@teambit/ui-foundation.ui.main-dropdown';\nimport type { UIRootUI as UIRoot, UiUI } from '@teambit/ui';\nimport { UIAspect, UIRuntime } from '@teambit/ui';\nimport type { GraphUI } from '@teambit/graph';\nimport { GraphAspect } from '@teambit/graph';\nimport type { ReactNode } from 'react';\nimport React from 'react';\nimport type { RouteProps } from 'react-router-dom';\nimport type { CommandBarUI, CommandHandler } from '@teambit/command-bar';\nimport { CommandBarAspect } from '@teambit/command-bar';\nimport { MenuLinkItem } from '@teambit/design.ui.surfaces.menu.link-item';\nimport type { DrawerType } from '@teambit/ui-foundation.ui.tree.drawer';\nimport type { ComponentFilters } from '@teambit/component.ui.component-filters.component-filter-context';\nimport { DeprecateFilter } from '@teambit/component.ui.component-filters.deprecate-filter';\nimport { EnvsFilter } from '@teambit/component.ui.component-filters.env-filter';\nimport { ShowMainFilter } from '@teambit/component.ui.component-filters.show-main-filter';\nimport type { DrawerWidgetSlot, ComponentFiltersSlot } from '@teambit/component.ui.component-drawer';\nimport { FilterWidget, TreeToggleWidget } from '@teambit/component.ui.component-drawer';\nimport { ComponentTreeWidget } from './component-tree.widget';\nimport { Workspace, WorkspaceMenu } from './ui';\nimport { WorkspaceAspect } from './workspace.aspect';\nimport { workspaceDrawer } from './workspace.ui.drawer';\n\nexport type SidebarWidgetSlot = SlotRegistry<ComponentTreeNode>;\n\nexport class WorkspaceUI {\n constructor(\n /**\n * route slot.\n */\n private routeSlot: RouteSlot,\n\n /**\n * component ui extension.\n */\n private componentUi: ComponentUI,\n\n /**\n * menu slot\n */\n private menuSlot: RouteSlot,\n\n private menuItemSlot: MenuItemSlot,\n\n private sidebar: SidebarUI,\n\n private sidebarSlot: SidebarWidgetSlot,\n\n /**\n * sidebar link slot\n */\n private sidebarItemSlot: SidebarItemSlot,\n\n private drawerWidgetSlot: DrawerWidgetSlot,\n\n private drawerComponentsFiltersSlot: ComponentFiltersSlot,\n\n private commandBarUI: CommandBarUI,\n\n private menuWidgetSlot: MenuWidgetSlot\n ) {}\n\n private setKeyBindHandler: (updated: CommandHandler) => void = () => {};\n\n /**\n * register a route to the workspace.\n */\n registerRoutes(routes: RouteProps[]) {\n this.routeSlot.register(routes);\n return this;\n }\n\n registerDrawers(...drawers: DrawerType[]) {\n this.sidebar.registerDrawer(...drawers);\n return this;\n }\n\n registerSidebarWidget(componentTreeNode: ComponentTreeNode) {\n this.sidebarSlot.register(componentTreeNode);\n return this;\n }\n\n registerMenuItem = (menuItems: MenuItem[]) => {\n this.menuItemSlot.register(menuItems);\n };\n\n registerMenuWidget = (menuWidgets: MenuWidget[]) => {\n this.menuWidgetSlot.register(menuWidgets);\n };\n\n registerMenuRoutes = (routes: RouteProps[]) => {\n this.menuSlot.register(routes);\n return this;\n };\n\n setComponents = (components: ComponentModel[]) => {\n this.componentUi.updateComponents(components);\n };\n\n registerSidebarLink = (...links: SidebarItem[]) => {\n this.sidebarItemSlot.register(links);\n };\n\n /**\n * register component filters\n */\n registerDrawerComponentFilters = (filters: ComponentFilters) => {\n this.drawerComponentsFiltersSlot.register(filters);\n };\n\n registerDrawerWidgets = (widgets: ReactNode[]) => {\n this.drawerWidgetSlot.register(widgets);\n };\n\n uiRoot(): UIRoot {\n this.registerDrawers(\n workspaceDrawer({\n treeWidgets: this.sidebarSlot,\n drawerWidgetSlot: this.drawerWidgetSlot,\n filtersSlot: this.drawerComponentsFiltersSlot,\n })\n );\n\n const [setKeyBindHandler] = this.commandBarUI.addCommand({\n id: 'sidebar.toggle', // TODO - extract to a component!\n action: () => {},\n displayName: 'Toggle component list',\n keybinding: 'alt+s',\n });\n this.setKeyBindHandler = setKeyBindHandler;\n\n return {\n routes: [\n {\n path: '/*',\n element: (\n <Workspace\n menuSlot={this.menuSlot}\n routeSlot={this.routeSlot}\n sidebar={<this.sidebar.render items={this.listSidebarItems()} />}\n workspaceUI={this}\n onSidebarTogglerChange={this.setKeyBindHandler}\n />\n ),\n },\n ],\n };\n }\n\n listSidebarItems() {\n const items = flatten(this.sidebarItemSlot.values());\n return compact(\n items.map((item) => {\n return item.component;\n })\n );\n }\n\n private menuItems: MenuItem[] = [\n {\n category: 'general',\n title: 'Open command bar',\n keyChar: 'mod+k',\n handler: () => this.commandBarUI?.run('command-bar.open'),\n },\n {\n category: 'general',\n title: 'Toggle component list',\n keyChar: 'alt+s',\n handler: () => this.commandBarUI?.run('sidebar.toggle'),\n },\n ];\n\n static dependencies = [UIAspect, ComponentAspect, SidebarAspect, ComponentTreeAspect, CommandBarAspect, GraphAspect];\n\n static runtime = UIRuntime;\n\n static slots = [\n Slot.withType<RouteProps>(),\n Slot.withType<RouteProps>(),\n Slot.withType<ComponentTreeNode>(),\n Slot.withType<MenuItemSlot>(),\n Slot.withType<SidebarItemSlot>(),\n Slot.withType<DrawerWidgetSlot>(),\n Slot.withType<ComponentFiltersSlot>(),\n Slot.withType<MenuWidgetSlot>(),\n ];\n\n static async provider(\n [ui, componentUi, sidebar, componentTree, commandBarUI, graphUI]: [\n UiUI,\n ComponentUI,\n SidebarUI,\n ComponentTreeUI,\n CommandBarUI,\n GraphUI,\n ],\n config,\n [\n routeSlot,\n menuSlot,\n menuItemSlot,\n sidebarSlot,\n sidebarItemSlot,\n drawerWidgetSlot,\n drawerComponentsFiltersSlot,\n menuWidgetSlot,\n ]: [\n RouteSlot,\n RouteSlot,\n MenuItemSlot,\n SidebarWidgetSlot,\n SidebarItemSlot,\n DrawerWidgetSlot,\n ComponentFiltersSlot,\n MenuWidgetSlot,\n ]\n ) {\n componentTree.registerTreeNode(new ComponentTreeWidget());\n sidebarSlot.register(new ComponentTreeWidget());\n graphUI.registerComponentWidget(new ComponentTreeWidget().widget);\n\n const workspaceUI = new WorkspaceUI(\n routeSlot,\n componentUi,\n menuSlot,\n menuItemSlot,\n sidebar,\n sidebarSlot,\n sidebarItemSlot,\n drawerWidgetSlot,\n drawerComponentsFiltersSlot,\n commandBarUI,\n menuWidgetSlot\n );\n\n workspaceUI.registerDrawerComponentFilters([DeprecateFilter, EnvsFilter, ShowMainFilter(true)]);\n workspaceUI.registerDrawerWidgets([\n <FilterWidget key={'workspace-filter-widget'} />,\n <TreeToggleWidget key={'workspace-tree-toggle-widget'} />,\n ]);\n ui.registerRoot(workspaceUI.uiRoot.bind(workspaceUI));\n workspaceUI.registerMenuItem(workspaceUI.menuItems);\n\n workspaceUI.registerSidebarLink({\n component: function Gallery() {\n return (\n <MenuLinkItem exact href=\"/\" icon=\"comps\">\n Workspace overview\n </MenuLinkItem>\n );\n },\n });\n\n workspaceUI.registerMenuRoutes([\n {\n path: '/',\n element: <WorkspaceMenu menuItemSlot={workspaceUI.menuItemSlot} widgetSlot={workspaceUI.menuWidgetSlot} />,\n },\n {\n path: workspaceUI.componentUi.routePath,\n element: workspaceUI.componentUi.getMenu(WorkspaceAspect.id),\n },\n ]);\n\n workspaceUI.registerRoutes([\n {\n path: workspaceUI.componentUi.routePath,\n element: workspaceUI.componentUi.getComponentUI(WorkspaceAspect.id),\n },\n ]);\n\n workspaceUI.registerMenuWidget([commandBarUI.CommandBarButton]);\n\n return workspaceUI;\n }\n}\n\nexport default WorkspaceUI;\n\nWorkspaceAspect.addRuntime(WorkspaceUI);\n"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,6 @@
1
- import { Command } from '@teambit/cli';
1
+ import type { Command } from '@teambit/cli';
2
2
  import chalk from 'chalk';
3
- import { Workspace } from '../workspace';
3
+ import type { Workspace } from '../workspace';
4
4
  import { installAfterEnvChangesMsg } from './envs-set.cmd';
5
5
 
6
6
  export class EnvsReplaceCmd implements Command {
@@ -1,7 +1,7 @@
1
- import { Command } from '@teambit/cli';
1
+ import type { Command } from '@teambit/cli';
2
2
  import chalk from 'chalk';
3
3
  import { COMPONENT_PATTERN_HELP } from '@teambit/legacy.constants';
4
- import { Workspace } from '../workspace';
4
+ import type { Workspace } from '../workspace';
5
5
 
6
6
  export const installAfterEnvChangesMsg = chalk.yellow("please run 'bit install' for the changes to take effect");
7
7
 
@@ -1,7 +1,7 @@
1
- import { Command } from '@teambit/cli';
1
+ import type { Command } from '@teambit/cli';
2
2
  import { PATTERN_HELP, COMPONENT_PATTERN_HELP } from '@teambit/legacy.constants';
3
3
  import chalk from 'chalk';
4
- import { Workspace } from '../workspace';
4
+ import type { Workspace } from '../workspace';
5
5
  import { installAfterEnvChangesMsg } from './envs-set.cmd';
6
6
 
7
7
  export class EnvsUnsetCmd implements Command {
@@ -1,7 +1,7 @@
1
- import { Command } from '@teambit/cli';
1
+ import type { Command } from '@teambit/cli';
2
2
  import chalk from 'chalk';
3
3
  import { COMPONENT_PATTERN_HELP } from '@teambit/legacy.constants';
4
- import { Workspace } from '../workspace';
4
+ import type { Workspace } from '../workspace';
5
5
  import { installAfterEnvChangesMsg } from './envs-set.cmd';
6
6
 
7
7
  export class EnvsUpdateCmd implements Command {