@teambit/workspace 0.0.843 → 0.0.846
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +1 -0
- package/dist/index.js.map +1 -1
- package/dist/ui/workspace/use-workspace.js +3 -0
- package/dist/ui/workspace/use-workspace.js.map +1 -1
- package/dist/workspace.d.ts +9 -60
- package/dist/workspace.js +37 -409
- package/dist/workspace.js.map +1 -1
- package/dist/workspace.main.runtime.js +1 -11
- package/dist/workspace.main.runtime.js.map +1 -1
- package/dist/workspace.provider.d.ts +2 -4
- package/dist/workspace.provider.js +3 -66
- package/dist/workspace.provider.js.map +1 -1
- package/dist/workspace.ui.runtime.d.ts +2 -1
- package/dist/workspace.ui.runtime.js +27 -6
- package/dist/workspace.ui.runtime.js.map +1 -1
- package/package-tar/teambit-workspace-0.0.846.tgz +0 -0
- package/package.json +33 -42
- package/{preview-1662089982043.js → preview-1662608124038.js} +2 -2
- package/ui/workspace/use-workspace.ts +3 -0
- package/workspace.ui.runtime.tsx +16 -6
- package/__snapshots__/pick-outdated-pkgs.spec.ts.snap +0 -171
- package/dist/__snapshots__/pick-outdated-pkgs.spec.js.snap +0 -171
- package/dist/__snapshots__/pick-outdated-pkgs.spec.ts.snap +0 -171
- package/dist/exceptions/dependency-type-not-supported-in-policy.d.ts +0 -4
- package/dist/exceptions/dependency-type-not-supported-in-policy.js +0 -27
- package/dist/exceptions/dependency-type-not-supported-in-policy.js.map +0 -1
- package/dist/exceptions/index.d.ts +0 -1
- package/dist/exceptions/index.js +0 -23
- package/dist/exceptions/index.js.map +0 -1
- package/dist/install.cmd.d.ts +0 -44
- package/dist/install.cmd.js +0 -85
- package/dist/install.cmd.js.map +0 -1
- package/dist/link/component-list-links.d.ts +0 -7
- package/dist/link/component-list-links.js +0 -98
- package/dist/link/component-list-links.js.map +0 -1
- package/dist/link/core-aspects-links.d.ts +0 -7
- package/dist/link/core-aspects-links.js +0 -95
- package/dist/link/core-aspects-links.js.map +0 -1
- package/dist/link/get-package-name-from-target.d.ts +0 -1
- package/dist/link/get-package-name-from-target.js +0 -16
- package/dist/link/get-package-name-from-target.js.map +0 -1
- package/dist/link/index.d.ts +0 -1
- package/dist/link/index.js +0 -23
- package/dist/link/index.js.map +0 -1
- package/dist/link/link-row.d.ts +0 -12
- package/dist/link/link-row.js +0 -38
- package/dist/link/link-row.js.map +0 -1
- package/dist/link/link-to-dir.d.ts +0 -2
- package/dist/link/link-to-dir.js +0 -45
- package/dist/link/link-to-dir.js.map +0 -1
- package/dist/link/link.cmd.d.ts +0 -44
- package/dist/link/link.cmd.js +0 -176
- package/dist/link/link.cmd.js.map +0 -1
- package/dist/link/nested-deps-in-nm-links.d.ts +0 -7
- package/dist/link/nested-deps-in-nm-links.js +0 -74
- package/dist/link/nested-deps-in-nm-links.js.map +0 -1
- package/dist/link/rewire-row.d.ts +0 -6
- package/dist/link/rewire-row.js +0 -31
- package/dist/link/rewire-row.js.map +0 -1
- package/dist/pick-outdated-pkgs.d.ts +0 -16
- package/dist/pick-outdated-pkgs.js +0 -308
- package/dist/pick-outdated-pkgs.js.map +0 -1
- package/dist/pick-outdated-pkgs.spec.d.ts +0 -1
- package/dist/pick-outdated-pkgs.spec.js +0 -121
- package/dist/pick-outdated-pkgs.spec.js.map +0 -1
- package/dist/uninstall.cmd.d.ts +0 -19
- package/dist/uninstall.cmd.js +0 -47
- package/dist/uninstall.cmd.js.map +0 -1
- package/dist/update.cmd.d.ts +0 -23
- package/dist/update.cmd.js +0 -47
- package/dist/update.cmd.js.map +0 -1
- package/exceptions/dependency-type-not-supported-in-policy.ts +0 -7
- package/exceptions/index.ts +0 -1
- package/install.cmd.tsx +0 -72
- package/link/component-list-links.ts +0 -50
- package/link/core-aspects-links.ts +0 -50
- package/link/get-package-name-from-target.ts +0 -5
- package/link/index.ts +0 -1
- package/link/link-row.ts +0 -20
- package/link/link-to-dir.ts +0 -13
- package/link/link.cmd.ts +0 -100
- package/link/nested-deps-in-nm-links.ts +0 -47
- package/link/rewire-row.ts +0 -17
- package/package-tar/teambit-workspace-0.0.843.tgz +0 -0
- package/uninstall.cmd.tsx +0 -23
- package/update.cmd.tsx +0 -29
|
@@ -127,16 +127,6 @@ function _scope() {
|
|
|
127
127
|
return data;
|
|
128
128
|
}
|
|
129
129
|
|
|
130
|
-
function _community() {
|
|
131
|
-
const data = _interopRequireDefault(require("@teambit/community"));
|
|
132
|
-
|
|
133
|
-
_community = function () {
|
|
134
|
-
return data;
|
|
135
|
-
};
|
|
136
|
-
|
|
137
|
-
return data;
|
|
138
|
-
}
|
|
139
|
-
|
|
140
130
|
function _ui() {
|
|
141
131
|
const data = require("@teambit/ui");
|
|
142
132
|
|
|
@@ -190,7 +180,7 @@ function _workspace2() {
|
|
|
190
180
|
const WorkspaceMain = {
|
|
191
181
|
name: _constants().EXT_NAME,
|
|
192
182
|
runtime: _cli().MainRuntime,
|
|
193
|
-
dependencies: [_pubsub().PubsubAspect, _cli().CLIAspect, _scope().ScopeAspect, _component().ComponentAspect, _isolator().IsolatorAspect, _dependencyResolver().DependencyResolverAspect, _variants().VariantsAspect, _logger().LoggerAspect, _graphql().GraphqlAspect, _ui().UIAspect, _bundler().BundlerAspect, _aspectLoader().AspectLoaderAspect, _envs().EnvsAspect
|
|
183
|
+
dependencies: [_pubsub().PubsubAspect, _cli().CLIAspect, _scope().ScopeAspect, _component().ComponentAspect, _isolator().IsolatorAspect, _dependencyResolver().DependencyResolverAspect, _variants().VariantsAspect, _logger().LoggerAspect, _graphql().GraphqlAspect, _ui().UIAspect, _bundler().BundlerAspect, _aspectLoader().AspectLoaderAspect, _envs().EnvsAspect],
|
|
194
184
|
slots: [_harmony().Slot.withType(), _harmony().Slot.withType(), _harmony().Slot.withType(), _harmony().Slot.withType(), _harmony().Slot.withType()],
|
|
195
185
|
provider: _workspace2().default,
|
|
196
186
|
defineRuntime: 'browser'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["WorkspaceMain","name","EXT_NAME","runtime","MainRuntime","dependencies","PubsubAspect","CLIAspect","ScopeAspect","ComponentAspect","IsolatorAspect","DependencyResolverAspect","VariantsAspect","LoggerAspect","GraphqlAspect","UIAspect","BundlerAspect","AspectLoaderAspect","EnvsAspect","
|
|
1
|
+
{"version":3,"names":["WorkspaceMain","name","EXT_NAME","runtime","MainRuntime","dependencies","PubsubAspect","CLIAspect","ScopeAspect","ComponentAspect","IsolatorAspect","DependencyResolverAspect","VariantsAspect","LoggerAspect","GraphqlAspect","UIAspect","BundlerAspect","AspectLoaderAspect","EnvsAspect","slots","Slot","withType","provider","workspaceProvider","defineRuntime","WorkspaceAspect","addRuntime"],"sources":["workspace.main.runtime.ts"],"sourcesContent":["import { PubsubAspect } from '@teambit/pubsub';\nimport { AspectLoaderAspect } from '@teambit/aspect-loader';\nimport { BundlerAspect } from '@teambit/bundler';\nimport { CLIAspect, MainRuntime } from '@teambit/cli';\nimport { ComponentAspect } from '@teambit/component';\nimport { DependencyResolverAspect } from '@teambit/dependency-resolver';\nimport { EnvsAspect } from '@teambit/envs';\nimport { GraphqlAspect } from '@teambit/graphql';\nimport { Slot } from '@teambit/harmony';\nimport { IsolatorAspect } from '@teambit/isolator';\nimport { LoggerAspect } from '@teambit/logger';\nimport { ScopeAspect } from '@teambit/scope';\nimport { UIAspect } from '@teambit/ui';\nimport { VariantsAspect } from '@teambit/variants';\n\nimport { EXT_NAME } from './constants';\nimport { OnComponentAdd, OnComponentChange, OnComponentRemove, OnComponentLoad } from './on-component-events';\nimport { WorkspaceAspect } from './workspace.aspect';\nimport workspaceProvider, { OnPreWatch } from './workspace.provider';\n\nexport const WorkspaceMain = {\n name: EXT_NAME,\n runtime: MainRuntime,\n dependencies: [\n PubsubAspect,\n CLIAspect,\n ScopeAspect,\n ComponentAspect,\n IsolatorAspect,\n DependencyResolverAspect,\n VariantsAspect,\n LoggerAspect,\n GraphqlAspect,\n UIAspect,\n BundlerAspect,\n AspectLoaderAspect,\n EnvsAspect,\n ],\n slots: [\n Slot.withType<OnComponentLoad>(),\n Slot.withType<OnComponentChange>(),\n Slot.withType<OnComponentAdd>(),\n Slot.withType<OnComponentRemove>(),\n Slot.withType<OnPreWatch>(),\n ],\n provider: workspaceProvider,\n defineRuntime: 'browser',\n};\n\nWorkspaceAspect.addRuntime(WorkspaceMain);\n\nexport default WorkspaceMain;\n"],"mappings":";;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEO,MAAMA,aAAa,GAAG;EAC3BC,IAAI,EAAEC,qBADqB;EAE3BC,OAAO,EAAEC,kBAFkB;EAG3BC,YAAY,EAAE,CACZC,sBADY,EAEZC,gBAFY,EAGZC,oBAHY,EAIZC,4BAJY,EAKZC,0BALY,EAMZC,8CANY,EAOZC,0BAPY,EAQZC,sBARY,EASZC,wBATY,EAUZC,cAVY,EAWZC,wBAXY,EAYZC,kCAZY,EAaZC,kBAbY,CAHa;EAkB3BC,KAAK,EAAE,CACLC,eAAA,CAAKC,QAAL,EADK,EAELD,eAAA,CAAKC,QAAL,EAFK,EAGLD,eAAA,CAAKC,QAAL,EAHK,EAILD,eAAA,CAAKC,QAAL,EAJK,EAKLD,eAAA,CAAKC,QAAL,EALK,CAlBoB;EAyB3BC,QAAQ,EAAEC,qBAzBiB;EA0B3BC,aAAa,EAAE;AA1BY,CAAtB;;;AA6BPC,4BAAA,CAAgBC,UAAhB,CAA2B1B,aAA3B;;eAEeA,a"}
|
|
@@ -12,7 +12,6 @@ import { LoggerMain } from '@teambit/logger';
|
|
|
12
12
|
import type { ScopeMain } from '@teambit/scope';
|
|
13
13
|
import { UiMain } from '@teambit/ui';
|
|
14
14
|
import type { VariantsMain } from '@teambit/variants';
|
|
15
|
-
import { CommunityMain } from '@teambit/community';
|
|
16
15
|
import { OnComponentLoad, OnComponentAdd, OnComponentChange, OnComponentRemove } from './on-component-events';
|
|
17
16
|
import { WorkspaceExtConfig } from './types';
|
|
18
17
|
import { WatchOptions } from './watch/watcher';
|
|
@@ -30,8 +29,7 @@ export declare type WorkspaceDeps = [
|
|
|
30
29
|
UiMain,
|
|
31
30
|
BundlerMain,
|
|
32
31
|
AspectLoaderMain,
|
|
33
|
-
EnvsMain
|
|
34
|
-
CommunityMain
|
|
32
|
+
EnvsMain
|
|
35
33
|
];
|
|
36
34
|
export declare type OnComponentLoadSlot = SlotRegistry<OnComponentLoad>;
|
|
37
35
|
export declare type OnComponentChangeSlot = SlotRegistry<OnComponentChange>;
|
|
@@ -39,7 +37,7 @@ export declare type OnComponentAddSlot = SlotRegistry<OnComponentAdd>;
|
|
|
39
37
|
export declare type OnComponentRemoveSlot = SlotRegistry<OnComponentRemove>;
|
|
40
38
|
export declare type OnPreWatch = (components: Component[], watchOpts: WatchOptions) => Promise<void>;
|
|
41
39
|
export declare type OnPreWatchSlot = SlotRegistry<OnPreWatch>;
|
|
42
|
-
export default function provideWorkspace([pubsub, cli, scope, component, isolator, dependencyResolver, variants, loggerExt, graphql, ui, bundler, aspectLoader, envs,
|
|
40
|
+
export default function provideWorkspace([pubsub, cli, scope, component, isolator, dependencyResolver, variants, loggerExt, graphql, ui, bundler, aspectLoader, envs,]: WorkspaceDeps, config: WorkspaceExtConfig, [onComponentLoadSlot, onComponentChangeSlot, onComponentAddSlot, onComponentRemoveSlot, onPreWatchSlot]: [
|
|
43
41
|
OnComponentLoadSlot,
|
|
44
42
|
OnComponentChangeSlot,
|
|
45
43
|
OnComponentAddSlot,
|
|
@@ -31,16 +31,6 @@ function _component() {
|
|
|
31
31
|
return data;
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
function _manyComponentsWriter() {
|
|
35
|
-
const data = _interopRequireDefault(require("@teambit/legacy/dist/consumer/component-ops/many-components-writer"));
|
|
36
|
-
|
|
37
|
-
_manyComponentsWriter = function () {
|
|
38
|
-
return data;
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
return data;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
34
|
function _componentLoader() {
|
|
45
35
|
const data = _interopRequireDefault(require("@teambit/legacy/dist/consumer/component/component-loader"));
|
|
46
36
|
|
|
@@ -81,36 +71,6 @@ function _ejectConf() {
|
|
|
81
71
|
return data;
|
|
82
72
|
}
|
|
83
73
|
|
|
84
|
-
function _install() {
|
|
85
|
-
const data = _interopRequireDefault(require("./install.cmd"));
|
|
86
|
-
|
|
87
|
-
_install = function () {
|
|
88
|
-
return data;
|
|
89
|
-
};
|
|
90
|
-
|
|
91
|
-
return data;
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
function _uninstall() {
|
|
95
|
-
const data = _interopRequireDefault(require("./uninstall.cmd"));
|
|
96
|
-
|
|
97
|
-
_uninstall = function () {
|
|
98
|
-
return data;
|
|
99
|
-
};
|
|
100
|
-
|
|
101
|
-
return data;
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
function _update() {
|
|
105
|
-
const data = _interopRequireDefault(require("./update.cmd"));
|
|
106
|
-
|
|
107
|
-
_update = function () {
|
|
108
|
-
return data;
|
|
109
|
-
};
|
|
110
|
-
|
|
111
|
-
return data;
|
|
112
|
-
}
|
|
113
|
-
|
|
114
74
|
function _watch() {
|
|
115
75
|
const data = require("./watch/watch.cmd");
|
|
116
76
|
|
|
@@ -121,16 +81,6 @@ function _watch() {
|
|
|
121
81
|
return data;
|
|
122
82
|
}
|
|
123
83
|
|
|
124
|
-
function _link() {
|
|
125
|
-
const data = require("./link");
|
|
126
|
-
|
|
127
|
-
_link = function () {
|
|
128
|
-
return data;
|
|
129
|
-
};
|
|
130
|
-
|
|
131
|
-
return data;
|
|
132
|
-
}
|
|
133
|
-
|
|
134
84
|
function _watcher() {
|
|
135
85
|
const data = require("./watch/watcher");
|
|
136
86
|
|
|
@@ -241,7 +191,7 @@ function _use() {
|
|
|
241
191
|
return data;
|
|
242
192
|
}
|
|
243
193
|
|
|
244
|
-
async function provideWorkspace([pubsub, cli, scope, component, isolator, dependencyResolver, variants, loggerExt, graphql, ui, bundler, aspectLoader, envs
|
|
194
|
+
async function provideWorkspace([pubsub, cli, scope, component, isolator, dependencyResolver, variants, loggerExt, graphql, ui, bundler, aspectLoader, envs], config, [onComponentLoadSlot, onComponentChangeSlot, onComponentAddSlot, onComponentRemoveSlot, onPreWatchSlot], harmony) {
|
|
245
195
|
var _envsCommand$commands, _envsCommand$commands2, _envsCommand$commands3, _scopeCommand$command;
|
|
246
196
|
|
|
247
197
|
const bitConfig = harmony.config.get('teambit.harmony/bit');
|
|
@@ -249,7 +199,7 @@ async function provideWorkspace([pubsub, cli, scope, component, isolator, depend
|
|
|
249
199
|
if (!consumer) return undefined; // TODO: get the 'workspace' name in a better way
|
|
250
200
|
|
|
251
201
|
const logger = loggerExt.createLogger(_constants().EXT_NAME);
|
|
252
|
-
const workspace = new (_workspace().Workspace)(pubsub, config, consumer, scope, component,
|
|
202
|
+
const workspace = new (_workspace().Workspace)(pubsub, config, consumer, scope, component, dependencyResolver, variants, aspectLoader, logger, undefined, harmony, onComponentLoadSlot, onComponentChangeSlot, envs, onComponentAddSlot, onComponentRemoveSlot, onPreWatchSlot, graphql);
|
|
253
203
|
|
|
254
204
|
const getWorkspacePolicyFromPackageJson = () => {
|
|
255
205
|
var _workspace$consumer$p;
|
|
@@ -260,19 +210,6 @@ async function provideWorkspace([pubsub, cli, scope, component, isolator, depend
|
|
|
260
210
|
};
|
|
261
211
|
|
|
262
212
|
dependencyResolver.registerRootPolicy(getWorkspacePolicyFromPackageJson());
|
|
263
|
-
|
|
264
|
-
_manyComponentsWriter().default.registerExternalInstaller({
|
|
265
|
-
install: async () => {
|
|
266
|
-
// TODO: think how we should pass this options
|
|
267
|
-
const installOpts = {
|
|
268
|
-
dedupe: true,
|
|
269
|
-
updateExisting: false,
|
|
270
|
-
import: false
|
|
271
|
-
};
|
|
272
|
-
return workspace.install(undefined, installOpts);
|
|
273
|
-
}
|
|
274
|
-
});
|
|
275
|
-
|
|
276
213
|
consumer.onCacheClear.push(() => workspace.clearCache());
|
|
277
214
|
|
|
278
215
|
_componentLoader().default.registerOnComponentLoadSubscriber(async (legacyComponent, opts) => {
|
|
@@ -315,7 +252,7 @@ async function provideWorkspace([pubsub, cli, scope, component, isolator, depend
|
|
|
315
252
|
const capsuleCmd = new (_capsule().CapsuleCmd)();
|
|
316
253
|
capsuleCmd.commands = [new (_capsule().CapsuleListCmd)(isolator, workspace), new (_capsule().CapsuleCreateCmd)(workspace, isolator), new (_capsule().CapsuleDeleteCmd)(isolator, workspace)];
|
|
317
254
|
const watcher = new (_watcher().Watcher)(workspace, pubsub);
|
|
318
|
-
const commands = [new (
|
|
255
|
+
const commands = [new (_ejectConf().default)(workspace), capsuleCmd, new (_watch().WatchCommand)(pubsub, logger, watcher), new (_use().UseCmd)(workspace)];
|
|
319
256
|
commands.push(new (_pattern().PatternCommand)(workspace));
|
|
320
257
|
cli.register(...commands);
|
|
321
258
|
component.registerHost(workspace);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["provideWorkspace","pubsub","cli","scope","component","isolator","dependencyResolver","variants","loggerExt","graphql","ui","bundler","aspectLoader","envs","community","config","onComponentLoadSlot","onComponentChangeSlot","onComponentAddSlot","onComponentRemoveSlot","onPreWatchSlot","harmony","bitConfig","get","consumer","getConsumer","cwd","undefined","logger","createLogger","EXT_NAME","workspace","Workspace","getWorkspacePolicyFromPackageJson","packageJson","packageJsonObject","policyFromPackageJson","registerRootPolicy","ManyComponentsWriter","registerExternalInstaller","install","installOpts","dedupe","updateExisting","import","onCacheClear","push","clearCache","LegacyComponentLoader","registerOnComponentLoadSubscriber","legacyComponent","opts","id","resolveComponentId","newComponent","state","_consumer","ConsumerComponent","registerOnComponentConfigLoading","componentId","componentFromScope","extensions","componentExtensions","defaultScope","componentDefaultScope","extensionsWithLegacyIdsP","map","extension","legacyEntry","clone","extensionId","compId","_legacy","newExtensionId","extensionsWithLegacyIds","Promise","all","ExtensionDataList","fromArray","workspaceSchema","getWorkspaceSchema","registerUiRoot","WorkspaceUIRoot","register","capsuleCmd","CapsuleCmd","commands","CapsuleListCmd","CapsuleCreateCmd","CapsuleDeleteCmd","watcher","Watcher","InstallCmd","UpdateCmd","UninstallCmd","EjectConfCmd","WatchCommand","LinkCommand","getDocsDomain","UseCmd","PatternCommand","registerHost","registerOnStart","importCurrentLaneIfMissing","loadAspects","getNotLoadedConfiguredExtensions","envsCommand","getCommand","EnvsSetCmd","EnvsUnsetCmd","EnvsReplaceCmd","scopeCommand","ScopeSetCmd","path","loadConsumerIfExist"],"sources":["workspace.provider.ts"],"sourcesContent":["import { PubsubMain } from '@teambit/pubsub';\nimport type { AspectLoaderMain } from '@teambit/aspect-loader';\nimport { BundlerMain } from '@teambit/bundler';\nimport { CLIMain, CommandList } from '@teambit/cli';\nimport type { ComponentMain, Component } from '@teambit/component';\nimport { DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { EnvsMain } from '@teambit/envs';\nimport { GraphqlMain } from '@teambit/graphql';\nimport { Harmony, SlotRegistry } from '@teambit/harmony';\nimport { IsolatorMain } from '@teambit/isolator';\nimport { LoggerMain } from '@teambit/logger';\nimport type { ScopeMain } from '@teambit/scope';\nimport { UiMain } from '@teambit/ui';\nimport type { VariantsMain } from '@teambit/variants';\nimport { Consumer, loadConsumerIfExist } from '@teambit/legacy/dist/consumer';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport ManyComponentsWriter from '@teambit/legacy/dist/consumer/component-ops/many-components-writer';\nimport LegacyComponentLoader from '@teambit/legacy/dist/consumer/component/component-loader';\nimport { ExtensionDataList } from '@teambit/legacy/dist/consumer/config/extension-data';\nimport { CommunityMain } from '@teambit/community';\nimport { EXT_NAME } from './constants';\nimport EjectConfCmd from './eject-conf.cmd';\nimport InstallCmd from './install.cmd';\nimport UninstallCmd from './uninstall.cmd';\nimport UpdateCmd from './update.cmd';\nimport { OnComponentLoad, OnComponentAdd, OnComponentChange, OnComponentRemove } from './on-component-events';\nimport { WorkspaceExtConfig } from './types';\nimport { WatchCommand } from './watch/watch.cmd';\nimport { LinkCommand } from './link';\nimport { Watcher, WatchOptions } from './watch/watcher';\nimport { Workspace, WorkspaceInstallOptions } 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';\n\nexport type WorkspaceDeps = [\n PubsubMain,\n CLIMain,\n ScopeMain,\n ComponentMain,\n IsolatorMain,\n DependencyResolverMain,\n VariantsMain,\n LoggerMain,\n GraphqlMain,\n UiMain,\n BundlerMain,\n AspectLoaderMain,\n EnvsMain,\n CommunityMain\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 OnPreWatch = (components: Component[], watchOpts: WatchOptions) => Promise<void>;\nexport type OnPreWatchSlot = SlotRegistry<OnPreWatch>;\n\nexport default async function provideWorkspace(\n [\n pubsub,\n cli,\n scope,\n component,\n isolator,\n dependencyResolver,\n variants,\n loggerExt,\n graphql,\n ui,\n bundler,\n aspectLoader,\n envs,\n community,\n ]: WorkspaceDeps,\n config: WorkspaceExtConfig,\n [onComponentLoadSlot, onComponentChangeSlot, onComponentAddSlot, onComponentRemoveSlot, onPreWatchSlot]: [\n OnComponentLoadSlot,\n OnComponentChangeSlot,\n OnComponentAddSlot,\n OnComponentRemoveSlot,\n OnPreWatchSlot\n ],\n harmony: Harmony\n) {\n const bitConfig: any = harmony.config.get('teambit.harmony/bit');\n const consumer = await getConsumer(bitConfig.cwd);\n if (!consumer) return undefined;\n // TODO: get the 'workspace' name in a better way\n const logger = loggerExt.createLogger(EXT_NAME);\n const workspace = new Workspace(\n pubsub,\n config,\n consumer,\n scope,\n component,\n isolator,\n dependencyResolver,\n variants,\n aspectLoader,\n logger,\n undefined,\n harmony,\n onComponentLoadSlot,\n onComponentChangeSlot,\n envs,\n onComponentAddSlot,\n onComponentRemoveSlot,\n onPreWatchSlot,\n graphql\n );\n\n const getWorkspacePolicyFromPackageJson = () => {\n const packageJson = workspace.consumer.packageJson?.packageJsonObject || {};\n const policyFromPackageJson = dependencyResolver.getWorkspacePolicyFromPackageJson(packageJson);\n return policyFromPackageJson;\n };\n\n dependencyResolver.registerRootPolicy(getWorkspacePolicyFromPackageJson());\n\n ManyComponentsWriter.registerExternalInstaller({\n install: async () => {\n // TODO: think how we should pass this options\n const installOpts: WorkspaceInstallOptions = {\n dedupe: true,\n updateExisting: false,\n import: false,\n };\n return workspace.install(undefined, installOpts);\n },\n });\n\n consumer.onCacheClear.push(() => workspace.clearCache());\n\n LegacyComponentLoader.registerOnComponentLoadSubscriber(\n async (legacyComponent: ConsumerComponent, opts?: { loadDocs?: boolean }) => {\n const id = await workspace.resolveComponentId(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) => {\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);\n const defaultScope = await workspace.componentDefaultScope(componentId);\n\n const extensionsWithLegacyIdsP = extensions.map(async (extension) => {\n const legacyEntry = extension.clone();\n if (legacyEntry.extensionId) {\n const compId = await workspace.resolveComponentId(legacyEntry.extensionId);\n legacyEntry.extensionId = compId._legacy;\n legacyEntry.newExtensionId = compId;\n }\n\n return legacyEntry;\n });\n const extensionsWithLegacyIds = await Promise.all(extensionsWithLegacyIdsP);\n\n return {\n defaultScope,\n extensions: ExtensionDataList.fromArray(extensionsWithLegacyIds),\n };\n });\n\n const workspaceSchema = getWorkspaceSchema(workspace, graphql);\n ui.registerUiRoot(new WorkspaceUIRoot(workspace, bundler));\n graphql.register(workspaceSchema);\n const capsuleCmd = new CapsuleCmd();\n capsuleCmd.commands = [\n new CapsuleListCmd(isolator, workspace),\n new CapsuleCreateCmd(workspace, isolator),\n new CapsuleDeleteCmd(isolator, workspace),\n ];\n const watcher = new Watcher(workspace, pubsub);\n const commands: CommandList = [\n new InstallCmd(workspace, logger),\n new UpdateCmd(workspace),\n new UninstallCmd(workspace),\n new EjectConfCmd(workspace),\n capsuleCmd,\n new WatchCommand(pubsub, logger, watcher),\n new LinkCommand(workspace, logger, community.getDocsDomain()),\n new UseCmd(workspace),\n ];\n\n commands.push(new PatternCommand(workspace));\n cli.register(...commands);\n component.registerHost(workspace);\n\n cli.registerOnStart(async () => {\n await workspace.importCurrentLaneIfMissing();\n await workspace.loadAspects(\n aspectLoader.getNotLoadedConfiguredExtensions(),\n undefined,\n 'workspace.cli.registerOnStart'\n );\n });\n\n // add sub-commands \"set\" and \"unset\" to envs command.\n const envsCommand = cli.getCommand('envs');\n envsCommand?.commands?.push(new EnvsSetCmd(workspace)); // bit envs set\n envsCommand?.commands?.push(new EnvsUnsetCmd(workspace)); // bit envs unset\n envsCommand?.commands?.push(new EnvsReplaceCmd(workspace)); // bit envs replace\n\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\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"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["provideWorkspace","pubsub","cli","scope","component","isolator","dependencyResolver","variants","loggerExt","graphql","ui","bundler","aspectLoader","envs","config","onComponentLoadSlot","onComponentChangeSlot","onComponentAddSlot","onComponentRemoveSlot","onPreWatchSlot","harmony","bitConfig","get","consumer","getConsumer","cwd","undefined","logger","createLogger","EXT_NAME","workspace","Workspace","getWorkspacePolicyFromPackageJson","packageJson","packageJsonObject","policyFromPackageJson","registerRootPolicy","onCacheClear","push","clearCache","LegacyComponentLoader","registerOnComponentLoadSubscriber","legacyComponent","opts","id","resolveComponentId","newComponent","state","_consumer","ConsumerComponent","registerOnComponentConfigLoading","componentId","componentFromScope","extensions","componentExtensions","defaultScope","componentDefaultScope","extensionsWithLegacyIdsP","map","extension","legacyEntry","clone","extensionId","compId","_legacy","newExtensionId","extensionsWithLegacyIds","Promise","all","ExtensionDataList","fromArray","workspaceSchema","getWorkspaceSchema","registerUiRoot","WorkspaceUIRoot","register","capsuleCmd","CapsuleCmd","commands","CapsuleListCmd","CapsuleCreateCmd","CapsuleDeleteCmd","watcher","Watcher","EjectConfCmd","WatchCommand","UseCmd","PatternCommand","registerHost","registerOnStart","importCurrentLaneIfMissing","loadAspects","getNotLoadedConfiguredExtensions","envsCommand","getCommand","EnvsSetCmd","EnvsUnsetCmd","EnvsReplaceCmd","scopeCommand","ScopeSetCmd","path","loadConsumerIfExist"],"sources":["workspace.provider.ts"],"sourcesContent":["import { PubsubMain } from '@teambit/pubsub';\nimport type { AspectLoaderMain } from '@teambit/aspect-loader';\nimport { BundlerMain } from '@teambit/bundler';\nimport { CLIMain, CommandList } from '@teambit/cli';\nimport type { ComponentMain, Component } from '@teambit/component';\nimport { DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { EnvsMain } from '@teambit/envs';\nimport { GraphqlMain } from '@teambit/graphql';\nimport { Harmony, SlotRegistry } from '@teambit/harmony';\nimport { IsolatorMain } from '@teambit/isolator';\nimport { LoggerMain } from '@teambit/logger';\nimport type { ScopeMain } from '@teambit/scope';\nimport { UiMain } from '@teambit/ui';\nimport type { VariantsMain } from '@teambit/variants';\nimport { Consumer, loadConsumerIfExist } from '@teambit/legacy/dist/consumer';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport LegacyComponentLoader from '@teambit/legacy/dist/consumer/component/component-loader';\nimport { ExtensionDataList } from '@teambit/legacy/dist/consumer/config/extension-data';\nimport { EXT_NAME } from './constants';\nimport EjectConfCmd from './eject-conf.cmd';\nimport { OnComponentLoad, OnComponentAdd, OnComponentChange, OnComponentRemove } from './on-component-events';\nimport { WorkspaceExtConfig } from './types';\nimport { WatchCommand } from './watch/watch.cmd';\nimport { Watcher, WatchOptions } from './watch/watcher';\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';\n\nexport type WorkspaceDeps = [\n PubsubMain,\n CLIMain,\n ScopeMain,\n ComponentMain,\n IsolatorMain,\n DependencyResolverMain,\n VariantsMain,\n LoggerMain,\n GraphqlMain,\n UiMain,\n BundlerMain,\n AspectLoaderMain,\n EnvsMain\n];\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 OnPreWatch = (components: Component[], watchOpts: WatchOptions) => Promise<void>;\nexport type OnPreWatchSlot = SlotRegistry<OnPreWatch>;\n\nexport default async function provideWorkspace(\n [\n pubsub,\n cli,\n scope,\n component,\n isolator,\n dependencyResolver,\n variants,\n loggerExt,\n graphql,\n ui,\n bundler,\n aspectLoader,\n envs,\n ]: WorkspaceDeps,\n config: WorkspaceExtConfig,\n [onComponentLoadSlot, onComponentChangeSlot, onComponentAddSlot, onComponentRemoveSlot, onPreWatchSlot]: [\n OnComponentLoadSlot,\n OnComponentChangeSlot,\n OnComponentAddSlot,\n OnComponentRemoveSlot,\n OnPreWatchSlot\n ],\n harmony: Harmony\n) {\n const bitConfig: any = harmony.config.get('teambit.harmony/bit');\n const consumer = await getConsumer(bitConfig.cwd);\n if (!consumer) return undefined;\n // TODO: get the 'workspace' name in a better way\n const logger = loggerExt.createLogger(EXT_NAME);\n const workspace = new Workspace(\n pubsub,\n config,\n consumer,\n scope,\n component,\n dependencyResolver,\n variants,\n aspectLoader,\n logger,\n undefined,\n harmony,\n onComponentLoadSlot,\n onComponentChangeSlot,\n envs,\n onComponentAddSlot,\n onComponentRemoveSlot,\n onPreWatchSlot,\n graphql\n );\n\n const getWorkspacePolicyFromPackageJson = () => {\n const packageJson = workspace.consumer.packageJson?.packageJsonObject || {};\n const policyFromPackageJson = dependencyResolver.getWorkspacePolicyFromPackageJson(packageJson);\n return policyFromPackageJson;\n };\n\n dependencyResolver.registerRootPolicy(getWorkspacePolicyFromPackageJson());\n\n consumer.onCacheClear.push(() => workspace.clearCache());\n\n LegacyComponentLoader.registerOnComponentLoadSubscriber(\n async (legacyComponent: ConsumerComponent, opts?: { loadDocs?: boolean }) => {\n const id = await workspace.resolveComponentId(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) => {\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);\n const defaultScope = await workspace.componentDefaultScope(componentId);\n\n const extensionsWithLegacyIdsP = extensions.map(async (extension) => {\n const legacyEntry = extension.clone();\n if (legacyEntry.extensionId) {\n const compId = await workspace.resolveComponentId(legacyEntry.extensionId);\n legacyEntry.extensionId = compId._legacy;\n legacyEntry.newExtensionId = compId;\n }\n\n return legacyEntry;\n });\n const extensionsWithLegacyIds = await Promise.all(extensionsWithLegacyIdsP);\n\n return {\n defaultScope,\n extensions: ExtensionDataList.fromArray(extensionsWithLegacyIds),\n };\n });\n\n const workspaceSchema = getWorkspaceSchema(workspace, graphql);\n ui.registerUiRoot(new WorkspaceUIRoot(workspace, bundler));\n graphql.register(workspaceSchema);\n const capsuleCmd = new CapsuleCmd();\n capsuleCmd.commands = [\n new CapsuleListCmd(isolator, workspace),\n new CapsuleCreateCmd(workspace, isolator),\n new CapsuleDeleteCmd(isolator, workspace),\n ];\n const watcher = new Watcher(workspace, pubsub);\n const commands: CommandList = [\n new EjectConfCmd(workspace),\n capsuleCmd,\n new WatchCommand(pubsub, logger, watcher),\n new UseCmd(workspace),\n ];\n\n commands.push(new PatternCommand(workspace));\n cli.register(...commands);\n component.registerHost(workspace);\n\n cli.registerOnStart(async () => {\n await workspace.importCurrentLaneIfMissing();\n await workspace.loadAspects(\n aspectLoader.getNotLoadedConfiguredExtensions(),\n undefined,\n 'workspace.cli.registerOnStart'\n );\n });\n\n // add sub-commands \"set\" and \"unset\" to envs command.\n const envsCommand = cli.getCommand('envs');\n envsCommand?.commands?.push(new EnvsSetCmd(workspace)); // bit envs set\n envsCommand?.commands?.push(new EnvsUnsetCmd(workspace)); // bit envs unset\n envsCommand?.commands?.push(new EnvsReplaceCmd(workspace)); // bit envs replace\n\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\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"],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { SidebarUI, SidebarItem, SidebarItemSlot } from '@teambit/sidebar';
|
|
|
6
6
|
import { MenuItemSlot, MenuItem } from '@teambit/ui-foundation.ui.main-dropdown';
|
|
7
7
|
import { UIRootUI as UIRoot, UiUI } from '@teambit/ui';
|
|
8
8
|
import { GraphUI } from '@teambit/graph';
|
|
9
|
-
import { ReactNode } from 'react';
|
|
9
|
+
import React, { ReactNode } from 'react';
|
|
10
10
|
import { RouteProps } from 'react-router-dom';
|
|
11
11
|
import { CommandBarUI } from '@teambit/command-bar';
|
|
12
12
|
import type { DrawerType } from '@teambit/ui-foundation.ui.tree.drawer';
|
|
@@ -70,6 +70,7 @@ export declare class WorkspaceUI {
|
|
|
70
70
|
registerDrawerComponentFilters: (filters: ComponentFilters) => void;
|
|
71
71
|
registerDrawerWidgets: (widgets: ReactNode[]) => void;
|
|
72
72
|
uiRoot(): UIRoot;
|
|
73
|
+
listSidebarItems(): (React.ComponentClass<{}, any> | React.FunctionComponent<{}>)[];
|
|
73
74
|
private menuItems;
|
|
74
75
|
static dependencies: import("@teambit/harmony").Aspect[];
|
|
75
76
|
static runtime: import("@teambit/harmony").RuntimeDefinition;
|
|
@@ -31,6 +31,16 @@ function _component() {
|
|
|
31
31
|
return data;
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
+
function _lodash() {
|
|
35
|
+
const data = require("lodash");
|
|
36
|
+
|
|
37
|
+
_lodash = function () {
|
|
38
|
+
return data;
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
return data;
|
|
42
|
+
}
|
|
43
|
+
|
|
34
44
|
function _componentTree() {
|
|
35
45
|
const data = require("@teambit/component-tree");
|
|
36
46
|
|
|
@@ -299,7 +309,7 @@ class WorkspaceUI {
|
|
|
299
309
|
menuSlot: this.menuSlot,
|
|
300
310
|
routeSlot: this.routeSlot,
|
|
301
311
|
sidebar: /*#__PURE__*/_react().default.createElement(this.sidebar.render, {
|
|
302
|
-
|
|
312
|
+
items: this.listSidebarItems()
|
|
303
313
|
}),
|
|
304
314
|
workspaceUI: this,
|
|
305
315
|
onSidebarTogglerChange: this.setKeyBindHandler
|
|
@@ -308,6 +318,13 @@ class WorkspaceUI {
|
|
|
308
318
|
};
|
|
309
319
|
}
|
|
310
320
|
|
|
321
|
+
listSidebarItems() {
|
|
322
|
+
const items = (0, _lodash().flatten)(this.sidebarItemSlot.values());
|
|
323
|
+
return (0, _lodash().compact)(items.map(item => {
|
|
324
|
+
return item.component;
|
|
325
|
+
}));
|
|
326
|
+
}
|
|
327
|
+
|
|
311
328
|
static async provider([ui, componentUi, sidebar, componentTree, commandBarUI, graphUI], config, [routeSlot, menuSlot, menuItemSlot, sidebarSlot, sidebarItemSlot, drawerWidgetSlot, drawerComponentsFiltersSlot]) {
|
|
312
329
|
componentTree.registerTreeNode(new (_componentTree2().ComponentTreeWidget)());
|
|
313
330
|
sidebarSlot.register(new (_componentTree2().ComponentTreeWidget)());
|
|
@@ -321,11 +338,15 @@ class WorkspaceUI {
|
|
|
321
338
|
})]);
|
|
322
339
|
ui.registerRoot(workspaceUI.uiRoot.bind(workspaceUI));
|
|
323
340
|
workspaceUI.registerMenuItem(workspaceUI.menuItems);
|
|
324
|
-
workspaceUI.registerSidebarLink(
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
341
|
+
workspaceUI.registerSidebarLink({
|
|
342
|
+
component: function Gallery() {
|
|
343
|
+
return /*#__PURE__*/_react().default.createElement(_designUiSurfacesMenu().MenuLinkItem, {
|
|
344
|
+
exact: true,
|
|
345
|
+
href: "/",
|
|
346
|
+
icon: "comps"
|
|
347
|
+
}, "Gallery");
|
|
348
|
+
}
|
|
349
|
+
});
|
|
329
350
|
workspaceUI.registerMenuRoutes([{
|
|
330
351
|
path: '/',
|
|
331
352
|
element: /*#__PURE__*/_react().default.createElement(_uiFoundationUi().Menu, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["WorkspaceUI","constructor","routeSlot","componentUi","menuSlot","menuItemSlot","sidebar","sidebarSlot","sidebarItemSlot","drawerWidgetSlot","drawerComponentsFiltersSlot","commandBarUI","menuItems","register","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","provider","ui","componentTree","graphUI","config","registerTreeNode","ComponentTreeWidget","registerComponentWidget","widget","workspaceUI","registerDrawerComponentFilters","DeprecateFilter","EnvsFilter","registerDrawerWidgets","registerRoot","bind","registerMenuItem","registerSidebarLink","registerMenuRoutes","routePath","getMenu","WorkspaceAspect","getComponentUI","UIAspect","ComponentAspect","SidebarAspect","ComponentTreeAspect","CommandBarAspect","GraphAspect","UIRuntime","Slot","withType","addRuntime"],"sources":["workspace.ui.runtime.tsx"],"sourcesContent":["import { ComponentAspect, ComponentUI, ComponentModel } from '@teambit/component';\nimport { ComponentTreeAspect, ComponentTreeUI, ComponentTreeNode } from '@teambit/component-tree';\nimport { Slot, SlotRegistry } from '@teambit/harmony';\nimport { RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';\nimport { Menu } 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';\n\nimport {\n DrawerWidgetSlot,\n FilterWidget,\n TreeToggleWidget,\n ComponentFiltersSlot,\n} from '@teambit/component.ui.component-drawer';\nimport { ComponentTreeWidget } from './component-tree.widget';\nimport { Workspace } 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\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 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 itemSlot={this.sidebarItemSlot} />}\n workspaceUI={this}\n onSidebarTogglerChange={this.setKeyBindHandler}\n />\n ),\n },\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 ];\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 [routeSlot, menuSlot, menuItemSlot, sidebarSlot, sidebarItemSlot, drawerWidgetSlot, drawerComponentsFiltersSlot]: [\n RouteSlot,\n RouteSlot,\n MenuItemSlot,\n SidebarWidgetSlot,\n SidebarItemSlot,\n DrawerWidgetSlot,\n ComponentFiltersSlot\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 );\n\n workspaceUI.registerDrawerComponentFilters([DeprecateFilter, EnvsFilter]);\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 <MenuLinkItem exact href=\"/\" icon=\"comps\">\n Gallery\n </MenuLinkItem>\n ));\n\n workspaceUI.registerMenuRoutes([\n {\n path: '/',\n element: <Menu menuItemSlot={workspaceUI.menuItemSlot} />,\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 return workspaceUI;\n }\n}\n\nexport default WorkspaceUI;\n\nWorkspaceAspect.addRuntime(WorkspaceUI);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["WorkspaceUI","constructor","routeSlot","componentUi","menuSlot","menuItemSlot","sidebar","sidebarSlot","sidebarItemSlot","drawerWidgetSlot","drawerComponentsFiltersSlot","commandBarUI","menuItems","register","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","listSidebarItems","items","flatten","values","compact","map","item","component","provider","ui","componentTree","graphUI","config","registerTreeNode","ComponentTreeWidget","registerComponentWidget","widget","workspaceUI","registerDrawerComponentFilters","DeprecateFilter","EnvsFilter","registerDrawerWidgets","registerRoot","bind","registerMenuItem","registerSidebarLink","Gallery","registerMenuRoutes","routePath","getMenu","WorkspaceAspect","getComponentUI","UIAspect","ComponentAspect","SidebarAspect","ComponentTreeAspect","CommandBarAspect","GraphAspect","UIRuntime","Slot","withType","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 { RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';\nimport { Menu } 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';\n\nimport {\n DrawerWidgetSlot,\n FilterWidget,\n TreeToggleWidget,\n ComponentFiltersSlot,\n} from '@teambit/component.ui.component-drawer';\nimport { ComponentTreeWidget } from './component-tree.widget';\nimport { Workspace } 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\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 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(items.map((item) => {\n return item.component;\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 ];\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 [routeSlot, menuSlot, menuItemSlot, sidebarSlot, sidebarItemSlot, drawerWidgetSlot, drawerComponentsFiltersSlot]: [\n RouteSlot,\n RouteSlot,\n MenuItemSlot,\n SidebarWidgetSlot,\n SidebarItemSlot,\n DrawerWidgetSlot,\n ComponentFiltersSlot\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 );\n\n workspaceUI.registerDrawerComponentFilters([DeprecateFilter, EnvsFilter]);\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 <MenuLinkItem exact href=\"/\" icon=\"comps\">\n Gallery\n </MenuLinkItem>;\n },\n });\n\n workspaceUI.registerMenuRoutes([\n {\n path: '/',\n element: <Menu menuItemSlot={workspaceUI.menuItemSlot} />,\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 return workspaceUI;\n }\n}\n\nexport default WorkspaceUI;\n\nWorkspaceAspect.addRuntime(WorkspaceUI);\n"],"mappings":"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"}
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/workspace",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.846",
|
|
4
4
|
"homepage": "https://bit.dev/teambit/workspace/workspace",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.workspace",
|
|
8
8
|
"name": "workspace",
|
|
9
|
-
"version": "0.0.
|
|
9
|
+
"version": "0.0.846"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"lodash": "4.17.21",
|
|
@@ -14,11 +14,6 @@
|
|
|
14
14
|
"p-map-series": "2.1.0",
|
|
15
15
|
"chalk": "2.4.2",
|
|
16
16
|
"ink": "3.2.0",
|
|
17
|
-
"@pnpm/colorize-semver-diff": "1.0.1",
|
|
18
|
-
"@pnpm/semver-diff": "1.1.0",
|
|
19
|
-
"enquirer": "2.3.6",
|
|
20
|
-
"semver": "7.3.4",
|
|
21
|
-
"table": "5.4.6",
|
|
22
17
|
"graphql-tag": "2.12.1",
|
|
23
18
|
"fs-extra": "10.0.0",
|
|
24
19
|
"memoizee": "0.4.15",
|
|
@@ -33,69 +28,65 @@
|
|
|
33
28
|
"reset-css": "5.0.1",
|
|
34
29
|
"@babel/runtime": "7.12.18",
|
|
35
30
|
"core-js": "^3.0.0",
|
|
36
|
-
"@teambit/harmony": "0.3.3",
|
|
37
|
-
"@teambit/design.ui.surfaces.menu.link-item": "1.0.0",
|
|
38
|
-
"@teambit/base-ui.surfaces.split-pane.hover-splitter": "1.0.0",
|
|
39
|
-
"@teambit/base-ui.surfaces.split-pane.split-pane": "1.0.0",
|
|
40
31
|
"@teambit/bit-error": "0.0.400",
|
|
41
32
|
"@teambit/component-id": "0.0.417",
|
|
42
|
-
"@teambit/lane-id": "0.0.
|
|
33
|
+
"@teambit/lane-id": "0.0.83",
|
|
43
34
|
"@teambit/legacy-bit-id": "0.0.414",
|
|
44
|
-
"@teambit/logger": "0.0.
|
|
45
|
-
"@teambit/scope": "0.0.
|
|
46
|
-
"@teambit/cli": "0.0.
|
|
47
|
-
"@teambit/isolator": "0.0.
|
|
48
|
-
"@teambit/component-tree": "0.0.
|
|
35
|
+
"@teambit/logger": "0.0.657",
|
|
36
|
+
"@teambit/scope": "0.0.846",
|
|
37
|
+
"@teambit/cli": "0.0.564",
|
|
38
|
+
"@teambit/isolator": "0.0.846",
|
|
39
|
+
"@teambit/component-tree": "0.0.634",
|
|
49
40
|
"@teambit/component.ui.component-status-resolver": "0.0.499",
|
|
50
|
-
"@teambit/lanes.hooks.use-lanes": "0.0.
|
|
41
|
+
"@teambit/lanes.hooks.use-lanes": "0.0.24",
|
|
51
42
|
"@teambit/harmony.modules.resolved-component": "0.0.490",
|
|
52
|
-
"@teambit/
|
|
53
|
-
"@teambit/
|
|
54
|
-
"@teambit/
|
|
55
|
-
"@teambit/graphql": "0.0.
|
|
56
|
-
"@teambit/aspect-loader": "0.0.
|
|
57
|
-
"@teambit/bundler": "0.0.
|
|
58
|
-
"@teambit/
|
|
59
|
-
"@teambit/envs": "0.0.
|
|
60
|
-
"@teambit/pubsub": "0.0.
|
|
61
|
-
"@teambit/ui": "0.0.
|
|
62
|
-
"@teambit/variants": "0.0.
|
|
43
|
+
"@teambit/compiler": "0.0.846",
|
|
44
|
+
"@teambit/component": "0.0.846",
|
|
45
|
+
"@teambit/harmony": "0.3.3",
|
|
46
|
+
"@teambit/graphql": "0.0.846",
|
|
47
|
+
"@teambit/aspect-loader": "0.0.846",
|
|
48
|
+
"@teambit/bundler": "0.0.846",
|
|
49
|
+
"@teambit/dependency-resolver": "0.0.846",
|
|
50
|
+
"@teambit/envs": "0.0.846",
|
|
51
|
+
"@teambit/pubsub": "0.0.846",
|
|
52
|
+
"@teambit/ui": "0.0.846",
|
|
53
|
+
"@teambit/variants": "0.0.667",
|
|
63
54
|
"@teambit/component-issues": "0.0.72",
|
|
64
|
-
"@teambit/config": "0.0.
|
|
55
|
+
"@teambit/config": "0.0.577",
|
|
65
56
|
"@teambit/harmony.modules.requireable-component": "0.0.490",
|
|
66
|
-
"@teambit/importer": "0.0.272",
|
|
67
57
|
"@teambit/workspace.modules.match-pattern": "0.0.495",
|
|
68
|
-
"@teambit/component.ui.component-drawer": "0.0.
|
|
58
|
+
"@teambit/component.ui.component-drawer": "0.0.119",
|
|
69
59
|
"@teambit/design.ui.tree": "0.0.12",
|
|
70
|
-
"@teambit/ui-foundation.ui.side-bar": "0.0.
|
|
71
|
-
"@teambit/command-bar": "0.0.
|
|
60
|
+
"@teambit/ui-foundation.ui.side-bar": "0.0.636",
|
|
61
|
+
"@teambit/command-bar": "0.0.846",
|
|
72
62
|
"@teambit/component.ui.component-filters.component-filter-context": "0.0.7",
|
|
73
63
|
"@teambit/component.ui.component-filters.deprecate-filter": "0.0.7",
|
|
74
64
|
"@teambit/component.ui.component-filters.env-filter": "0.0.13",
|
|
75
|
-
"@teambit/
|
|
76
|
-
"@teambit/
|
|
65
|
+
"@teambit/design.ui.surfaces.menu.link-item": "1.0.0",
|
|
66
|
+
"@teambit/graph": "0.0.846",
|
|
67
|
+
"@teambit/sidebar": "0.0.846",
|
|
77
68
|
"@teambit/ui-foundation.ui.main-dropdown": "0.0.493",
|
|
78
69
|
"@teambit/ui-foundation.ui.menu": "0.0.493",
|
|
79
70
|
"@teambit/ui-foundation.ui.react-router.slot-router": "0.0.496",
|
|
80
71
|
"@teambit/ui-foundation.ui.tree.drawer": "0.0.505",
|
|
81
|
-
"@teambit/toolbox.time.time-format": "0.0.489",
|
|
82
72
|
"@teambit/ui-foundation.ui.hooks.use-data-query": "0.0.496",
|
|
83
|
-
"@teambit/component-descriptor": "0.0.
|
|
84
|
-
"@teambit/deprecation": "0.0.
|
|
73
|
+
"@teambit/component-descriptor": "0.0.133",
|
|
74
|
+
"@teambit/deprecation": "0.0.846",
|
|
85
75
|
"@teambit/ui-foundation.ui.constants.z-indexes": "0.0.494",
|
|
76
|
+
"@teambit/base-ui.surfaces.split-pane.hover-splitter": "1.0.0",
|
|
77
|
+
"@teambit/base-ui.surfaces.split-pane.split-pane": "1.0.0",
|
|
86
78
|
"@teambit/ui-foundation.ui.buttons.collapser": "0.0.201",
|
|
87
79
|
"@teambit/ui-foundation.ui.corner": "0.0.504",
|
|
88
80
|
"@teambit/ui-foundation.ui.notifications.notification-context": "0.0.493",
|
|
89
81
|
"@teambit/ui-foundation.ui.top-bar": "0.0.499",
|
|
90
82
|
"@teambit/explorer.ui.gallery.component-grid": "0.0.492",
|
|
91
83
|
"@teambit/workspace.ui.empty-workspace": "0.0.499",
|
|
92
|
-
"@teambit/workspace.ui.workspace-component-card": "0.0.
|
|
84
|
+
"@teambit/workspace.ui.workspace-component-card": "0.0.505"
|
|
93
85
|
},
|
|
94
86
|
"devDependencies": {
|
|
95
87
|
"@types/lodash": "4.14.165",
|
|
96
88
|
"@types/lodash.compact": "3.0.6",
|
|
97
89
|
"@types/react": "^17.0.8",
|
|
98
|
-
"@types/semver": "7.3.4",
|
|
99
90
|
"@types/fs-extra": "9.0.7",
|
|
100
91
|
"@types/memoizee": "0.4.5",
|
|
101
92
|
"@types/pluralize": "0.0.29",
|
|
@@ -109,7 +100,7 @@
|
|
|
109
100
|
"peerDependencies": {
|
|
110
101
|
"react-router-dom": "^6.0.0",
|
|
111
102
|
"@apollo/client": "^3.6.0",
|
|
112
|
-
"@teambit/legacy": "1.0.
|
|
103
|
+
"@teambit/legacy": "1.0.345",
|
|
113
104
|
"react-dom": "^16.8.0 || ^17.0.0",
|
|
114
105
|
"react": "^16.8.0 || ^17.0.0"
|
|
115
106
|
},
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.workspace_workspace@0.0.
|
|
2
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.workspace_workspace@0.0.
|
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.workspace_workspace@0.0.846/dist/workspace.composition.js';
|
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.workspace_workspace@0.0.846/dist/workspace.docs.mdx';
|
|
3
3
|
|
|
4
4
|
export const compositions = [compositions_0];
|
|
5
5
|
export const overview = [overview_0];
|
package/workspace.ui.runtime.tsx
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ComponentAspect, ComponentUI, ComponentModel } from '@teambit/component';
|
|
2
|
+
import { compact, flatten } from 'lodash';
|
|
2
3
|
import { ComponentTreeAspect, ComponentTreeUI, ComponentTreeNode } from '@teambit/component-tree';
|
|
3
4
|
import { Slot, SlotRegistry } from '@teambit/harmony';
|
|
4
5
|
import { RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';
|
|
@@ -137,7 +138,7 @@ export class WorkspaceUI {
|
|
|
137
138
|
<Workspace
|
|
138
139
|
menuSlot={this.menuSlot}
|
|
139
140
|
routeSlot={this.routeSlot}
|
|
140
|
-
sidebar={<this.sidebar.render
|
|
141
|
+
sidebar={<this.sidebar.render items={this.listSidebarItems()} />}
|
|
141
142
|
workspaceUI={this}
|
|
142
143
|
onSidebarTogglerChange={this.setKeyBindHandler}
|
|
143
144
|
/>
|
|
@@ -147,6 +148,13 @@ export class WorkspaceUI {
|
|
|
147
148
|
};
|
|
148
149
|
}
|
|
149
150
|
|
|
151
|
+
listSidebarItems() {
|
|
152
|
+
const items = flatten(this.sidebarItemSlot.values());
|
|
153
|
+
return compact(items.map((item) => {
|
|
154
|
+
return item.component;
|
|
155
|
+
}));
|
|
156
|
+
}
|
|
157
|
+
|
|
150
158
|
private menuItems: MenuItem[] = [
|
|
151
159
|
{
|
|
152
160
|
category: 'general',
|
|
@@ -221,11 +229,13 @@ export class WorkspaceUI {
|
|
|
221
229
|
ui.registerRoot(workspaceUI.uiRoot.bind(workspaceUI));
|
|
222
230
|
workspaceUI.registerMenuItem(workspaceUI.menuItems);
|
|
223
231
|
|
|
224
|
-
workspaceUI.registerSidebarLink(
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
232
|
+
workspaceUI.registerSidebarLink({
|
|
233
|
+
component: function Gallery() {
|
|
234
|
+
return <MenuLinkItem exact href="/" icon="comps">
|
|
235
|
+
Gallery
|
|
236
|
+
</MenuLinkItem>;
|
|
237
|
+
},
|
|
238
|
+
});
|
|
229
239
|
|
|
230
240
|
workspaceUI.registerMenuRoutes([
|
|
231
241
|
{
|