@teambit/workspace 1.0.281 → 1.0.283

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 (81) hide show
  1. package/artifacts/__bit_junit.xml +1 -1
  2. package/artifacts/preview/teambit_workspace_workspace-preview.js +1 -1
  3. package/artifacts/schema.json +2054 -2080
  4. package/dist/aspects-merger.js +1 -1
  5. package/dist/aspects-merger.js.map +1 -1
  6. package/dist/bit-map.js +1 -1
  7. package/dist/bit-map.js.map +1 -1
  8. package/dist/build-graph-from-fs.js +2 -2
  9. package/dist/build-graph-from-fs.js.map +1 -1
  10. package/dist/build-graph-ids-from-fs.js +2 -2
  11. package/dist/build-graph-ids-from-fs.js.map +1 -1
  12. package/dist/capsule.cmd.js +2 -2
  13. package/dist/capsule.cmd.js.map +1 -1
  14. package/dist/component-config-file/component-config-file.js +1 -1
  15. package/dist/component-config-file/component-config-file.js.map +1 -1
  16. package/dist/component-config-file/exceptions/already-exists.js.map +1 -1
  17. package/dist/component-tree.widget.js +2 -2
  18. package/dist/component-tree.widget.js.map +1 -1
  19. package/dist/eject-conf.cmd.js +2 -2
  20. package/dist/eject-conf.cmd.js.map +1 -1
  21. package/dist/envs-subcommands/envs-replace.cmd.js +2 -2
  22. package/dist/envs-subcommands/envs-replace.cmd.js.map +1 -1
  23. package/dist/envs-subcommands/envs-set.cmd.js +2 -2
  24. package/dist/envs-subcommands/envs-set.cmd.js.map +1 -1
  25. package/dist/envs-subcommands/envs-unset.cmd.js +2 -2
  26. package/dist/envs-subcommands/envs-unset.cmd.js.map +1 -1
  27. package/dist/envs-subcommands/envs-update.cmd.js +2 -2
  28. package/dist/envs-subcommands/envs-update.cmd.js.map +1 -1
  29. package/dist/events/on-component-add-event.js +1 -1
  30. package/dist/events/on-component-add-event.js.map +1 -1
  31. package/dist/events/on-component-change-event.js +1 -1
  32. package/dist/events/on-component-change-event.js.map +1 -1
  33. package/dist/events/on-component-removed-event.js +1 -1
  34. package/dist/events/on-component-removed-event.js.map +1 -1
  35. package/dist/exceptions/incorrect-env-aspect.js.map +1 -1
  36. package/dist/exceptions/merge-config-conflict.js.map +1 -1
  37. package/dist/exceptions/outside-workspace.js.map +1 -1
  38. package/dist/filter.js +1 -1
  39. package/dist/filter.js.map +1 -1
  40. package/dist/merge-conflict-file.js +2 -2
  41. package/dist/merge-conflict-file.js.map +1 -1
  42. package/dist/pattern.cmd.js +2 -2
  43. package/dist/pattern.cmd.js.map +1 -1
  44. package/dist/{preview-1716434516635.js → preview-1716607230882.js} +2 -2
  45. package/dist/scope-subcommands/scope-set.cmd.js +2 -2
  46. package/dist/scope-subcommands/scope-set.cmd.js.map +1 -1
  47. package/dist/ui/workspace/use-workspace.js +4 -4
  48. package/dist/ui/workspace/use-workspace.js.map +1 -1
  49. package/dist/ui/workspace/workspace-model.js +1 -1
  50. package/dist/ui/workspace/workspace-model.js.map +1 -1
  51. package/dist/ui/workspace/workspace-overview/link-plugin.js.map +1 -1
  52. package/dist/ui/workspace/workspace-overview/workspace-overview.js +1 -1
  53. package/dist/ui/workspace/workspace-overview/workspace-overview.js.map +1 -1
  54. package/dist/ui/workspace/workspace-provider.js +1 -1
  55. package/dist/ui/workspace/workspace-provider.js.map +1 -1
  56. package/dist/ui/workspace/workspace.js +1 -1
  57. package/dist/ui/workspace/workspace.js.map +1 -1
  58. package/dist/unuse.cmd.js +2 -2
  59. package/dist/unuse.cmd.js.map +1 -1
  60. package/dist/use.cmd.js +2 -2
  61. package/dist/use.cmd.js.map +1 -1
  62. package/dist/workspace-aspects-loader.js +2 -2
  63. package/dist/workspace-aspects-loader.js.map +1 -1
  64. package/dist/workspace-component/component-status-loader.js +2 -2
  65. package/dist/workspace-component/component-status-loader.js.map +1 -1
  66. package/dist/workspace-component/workspace-component-loader.js +2 -2
  67. package/dist/workspace-component/workspace-component-loader.js.map +1 -1
  68. package/dist/workspace.composition.js +1 -1
  69. package/dist/workspace.composition.js.map +1 -1
  70. package/dist/workspace.d.ts +4 -3
  71. package/dist/workspace.graphql.js.map +1 -1
  72. package/dist/workspace.js +15 -4
  73. package/dist/workspace.js.map +1 -1
  74. package/dist/workspace.main.runtime.js +2 -2
  75. package/dist/workspace.main.runtime.js.map +1 -1
  76. package/dist/workspace.ui-root.js +1 -1
  77. package/dist/workspace.ui.drawer.js +1 -1
  78. package/dist/workspace.ui.drawer.js.map +1 -1
  79. package/dist/workspace.ui.runtime.js +2 -2
  80. package/dist/workspace.ui.runtime.js.map +1 -1
  81. package/package.json +20 -20
@@ -1 +1 @@
1
- {"version":3,"names":["_componentId","data","require","_pMapSeries","_interopRequireDefault","_lodash","obj","__esModule","default","statesFilter","exports","Filter","constructor","workspace","by","criteria","ids","includes","byMultiParamState","byState","state","statePerMethod","new","byNew","modified","byModified","deprecated","byDeprecated","deleted","byDeleted","snappedOnMain","bySnappedOnMain","softTagged","bySoftTagged","codeModified","byCodeModified","Error","join","bind","stateSplit","split","length","stateName","stateParams","byEnv","env","withinIds","listIds","comps","getMany","compsUsingEnv","filter","c","envId","envs","getEnvId","envIdWithoutVer","ComponentID","getStringWithoutVersion","map","id","modifiedIds","Promise","all","comp","isModified","undefined","compact","compFiles","pMapSeries","getFilesModification","hasVersion","results","modelComponent","consumer","scope","getModelComponentIfExist","isDeprecated","objects","deletedIds","isDeleted","byDuringMergeState","unmergedComponents","legacyScope","getComponents","ComponentIdList","fromArray","u","fromObject","isOnMain","compIds","componentsFromModel","getModelComps","compsDuringMerge","hasWithoutVersion","toComponentId","isHeadSnap","toComponentIdWithHead","withCompIds","bitMap","components","nextVersion","getBitObjectModelComponent"],"sources":["filter.ts"],"sourcesContent":["import { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport pMapSeries from 'p-map-series';\nimport { ModelComponent } from '@teambit/legacy/dist/scope/models';\nimport { compact } from 'lodash';\nimport { Workspace } from './workspace';\n\nexport const statesFilter = [\n 'new',\n 'modified',\n 'deprecated',\n 'deleted',\n 'snappedOnMain',\n 'softTagged',\n 'codeModified',\n] as const;\nexport type StatesFilter = typeof statesFilter[number];\n\nexport class Filter {\n constructor(private workspace: Workspace) {}\n\n async by(criteria: StatesFilter | string, ids: ComponentID[]): Promise<ComponentID[]> {\n return criteria.includes(':') ? this.byMultiParamState(criteria, ids) : this.byState(criteria as StatesFilter, ids);\n }\n\n async byState(state: StatesFilter, ids: ComponentID[]): Promise<ComponentID[]> {\n const statePerMethod = {\n new: this.byNew,\n modified: this.byModified,\n deprecated: this.byDeprecated,\n deleted: this.byDeleted,\n snappedOnMain: this.bySnappedOnMain,\n softTagged: this.bySoftTagged,\n codeModified: this.byCodeModified,\n };\n if (!statePerMethod[state]) {\n throw new Error(`state ${state} is not recognized, possible values: ${statesFilter.join(', ')}`);\n }\n return statePerMethod[state].bind(this)(ids);\n }\n\n async byMultiParamState(state: string, ids: ComponentID[]): Promise<ComponentID[]> {\n const stateSplit = state.split(':');\n if (stateSplit.length < 2) {\n throw new Error(`byMultiParamState expect the state to have at least one param after the colon, got ${state}`);\n }\n const [stateName, ...stateParams] = stateSplit;\n if (stateName === 'env') {\n return this.byEnv(stateParams[0], ids);\n }\n throw new Error(`byMultiParamState expect the state to be one of the following: ['env'], got ${stateName}`);\n }\n\n async byEnv(env: string, withinIds?: ComponentID[]): Promise<ComponentID[]> {\n const ids = withinIds || (await this.workspace.listIds());\n const comps = await this.workspace.getMany(ids);\n const compsUsingEnv = comps.filter((c) => {\n const envId = this.workspace.envs.getEnvId(c);\n const envIdWithoutVer = ComponentID.getStringWithoutVersion(envId);\n return envIdWithoutVer === env;\n });\n return compsUsingEnv.map((c) => c.id);\n }\n\n async byModified(withinIds?: ComponentID[]): Promise<ComponentID[]> {\n const ids = withinIds || (await this.workspace.listIds());\n const comps = await this.workspace.getMany(ids);\n const modifiedIds = await Promise.all(comps.map(async (comp) => ((await comp.isModified()) ? comp.id : undefined)));\n return compact(modifiedIds);\n }\n\n async byCodeModified(withinIds?: ComponentID[]): Promise<ComponentID[]> {\n const ids = withinIds || (await this.workspace.listIds());\n const compFiles = await pMapSeries(ids, (id) => this.workspace.getFilesModification(id));\n const modifiedIds = compFiles.filter((c) => c.isModified()).map((c) => c.id);\n return compact(modifiedIds);\n }\n\n async byNew(withinIds?: ComponentID[]): Promise<ComponentID[]> {\n const ids = withinIds || (await this.workspace.listIds());\n return ids.filter((id) => !id.hasVersion());\n }\n\n async byDeprecated(withinIds?: ComponentID[]) {\n const ids = withinIds || (await this.workspace.listIds());\n const comps = await this.workspace.getMany(ids);\n const results = await Promise.all(\n comps.map(async (c) => {\n const modelComponent = await this.workspace.consumer.scope.getModelComponentIfExist(c.id);\n const deprecated = await modelComponent?.isDeprecated(this.workspace.consumer.scope.objects);\n return deprecated ? c.id : null;\n })\n );\n return compact(results);\n }\n\n async byDeleted(withinIds?: ComponentID[]) {\n const ids = withinIds || (await this.workspace.listIds());\n const comps = await this.workspace.getMany(ids);\n const deletedIds = comps.filter((c) => c.isDeleted()).map((c) => c.id);\n return compact(deletedIds);\n }\n\n byDuringMergeState(): ComponentIdList {\n const unmergedComponents = this.workspace.scope.legacyScope.objects.unmergedComponents.getComponents();\n return ComponentIdList.fromArray(unmergedComponents.map((u) => ComponentID.fromObject(u.id)));\n }\n\n /**\n * list components that their head is a snap, not a tag.\n * this is relevant only when the lane is the default (main), otherwise, the head is always a snap.\n * components that are during-merge are filtered out, we don't want them during tag and don't want\n * to show them in the \"snapped\" section in bit-status.\n */\n async bySnappedOnMain(withinIds?: ComponentID[]) {\n if (!this.workspace.isOnMain()) {\n return [];\n }\n const ids = withinIds || (await this.workspace.listIds());\n const compIds = ComponentIdList.fromArray(ids);\n const componentsFromModel = await this.getModelComps(ids);\n const compsDuringMerge = this.byDuringMergeState();\n const comps = componentsFromModel\n .filter((c) => compIds.hasWithoutVersion(c.toComponentId()))\n .filter((c) => !compsDuringMerge.hasWithoutVersion(c.toComponentId()))\n .filter((c) => c.isHeadSnap());\n return comps.map((c) => c.toComponentIdWithHead());\n }\n\n bySoftTagged(withinIds?: ComponentID[]): ComponentID[] {\n const withCompIds = ComponentIdList.fromArray(withinIds || []);\n const all = this.workspace.consumer.bitMap.components.filter((c) => c.nextVersion).map((c) => c.id);\n return withinIds ? all.filter((id) => withCompIds.hasWithoutVersion(id)) : all;\n }\n\n private async getModelComps(ids: ComponentID[]): Promise<ModelComponent[]> {\n const comps = await Promise.all(ids.map((id) => this.workspace.scope.getBitObjectModelComponent(id, false)));\n return compact(comps);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_componentId","data","require","_pMapSeries","_interopRequireDefault","_lodash","e","__esModule","default","statesFilter","exports","Filter","constructor","workspace","by","criteria","ids","includes","byMultiParamState","byState","state","statePerMethod","new","byNew","modified","byModified","deprecated","byDeprecated","deleted","byDeleted","snappedOnMain","bySnappedOnMain","softTagged","bySoftTagged","codeModified","byCodeModified","Error","join","bind","stateSplit","split","length","stateName","stateParams","byEnv","env","withinIds","listIds","comps","getMany","compsUsingEnv","filter","c","envId","envs","getEnvId","envIdWithoutVer","ComponentID","getStringWithoutVersion","map","id","modifiedIds","Promise","all","comp","isModified","undefined","compact","compFiles","pMapSeries","getFilesModification","hasVersion","results","modelComponent","consumer","scope","getModelComponentIfExist","isDeprecated","objects","deletedIds","isDeleted","byDuringMergeState","unmergedComponents","legacyScope","getComponents","ComponentIdList","fromArray","u","fromObject","isOnMain","compIds","componentsFromModel","getModelComps","compsDuringMerge","hasWithoutVersion","toComponentId","isHeadSnap","toComponentIdWithHead","withCompIds","bitMap","components","nextVersion","getBitObjectModelComponent"],"sources":["filter.ts"],"sourcesContent":["import { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport pMapSeries from 'p-map-series';\nimport { ModelComponent } from '@teambit/legacy/dist/scope/models';\nimport { compact } from 'lodash';\nimport { Workspace } from './workspace';\n\nexport const statesFilter = [\n 'new',\n 'modified',\n 'deprecated',\n 'deleted',\n 'snappedOnMain',\n 'softTagged',\n 'codeModified',\n] as const;\nexport type StatesFilter = typeof statesFilter[number];\n\nexport class Filter {\n constructor(private workspace: Workspace) {}\n\n async by(criteria: StatesFilter | string, ids: ComponentID[]): Promise<ComponentID[]> {\n return criteria.includes(':') ? this.byMultiParamState(criteria, ids) : this.byState(criteria as StatesFilter, ids);\n }\n\n async byState(state: StatesFilter, ids: ComponentID[]): Promise<ComponentID[]> {\n const statePerMethod = {\n new: this.byNew,\n modified: this.byModified,\n deprecated: this.byDeprecated,\n deleted: this.byDeleted,\n snappedOnMain: this.bySnappedOnMain,\n softTagged: this.bySoftTagged,\n codeModified: this.byCodeModified,\n };\n if (!statePerMethod[state]) {\n throw new Error(`state ${state} is not recognized, possible values: ${statesFilter.join(', ')}`);\n }\n return statePerMethod[state].bind(this)(ids);\n }\n\n async byMultiParamState(state: string, ids: ComponentID[]): Promise<ComponentID[]> {\n const stateSplit = state.split(':');\n if (stateSplit.length < 2) {\n throw new Error(`byMultiParamState expect the state to have at least one param after the colon, got ${state}`);\n }\n const [stateName, ...stateParams] = stateSplit;\n if (stateName === 'env') {\n return this.byEnv(stateParams[0], ids);\n }\n throw new Error(`byMultiParamState expect the state to be one of the following: ['env'], got ${stateName}`);\n }\n\n async byEnv(env: string, withinIds?: ComponentID[]): Promise<ComponentID[]> {\n const ids = withinIds || (await this.workspace.listIds());\n const comps = await this.workspace.getMany(ids);\n const compsUsingEnv = comps.filter((c) => {\n const envId = this.workspace.envs.getEnvId(c);\n const envIdWithoutVer = ComponentID.getStringWithoutVersion(envId);\n return envIdWithoutVer === env;\n });\n return compsUsingEnv.map((c) => c.id);\n }\n\n async byModified(withinIds?: ComponentID[]): Promise<ComponentID[]> {\n const ids = withinIds || (await this.workspace.listIds());\n const comps = await this.workspace.getMany(ids);\n const modifiedIds = await Promise.all(comps.map(async (comp) => ((await comp.isModified()) ? comp.id : undefined)));\n return compact(modifiedIds);\n }\n\n async byCodeModified(withinIds?: ComponentID[]): Promise<ComponentID[]> {\n const ids = withinIds || (await this.workspace.listIds());\n const compFiles = await pMapSeries(ids, (id) => this.workspace.getFilesModification(id));\n const modifiedIds = compFiles.filter((c) => c.isModified()).map((c) => c.id);\n return compact(modifiedIds);\n }\n\n async byNew(withinIds?: ComponentID[]): Promise<ComponentID[]> {\n const ids = withinIds || (await this.workspace.listIds());\n return ids.filter((id) => !id.hasVersion());\n }\n\n async byDeprecated(withinIds?: ComponentID[]) {\n const ids = withinIds || (await this.workspace.listIds());\n const comps = await this.workspace.getMany(ids);\n const results = await Promise.all(\n comps.map(async (c) => {\n const modelComponent = await this.workspace.consumer.scope.getModelComponentIfExist(c.id);\n const deprecated = await modelComponent?.isDeprecated(this.workspace.consumer.scope.objects);\n return deprecated ? c.id : null;\n })\n );\n return compact(results);\n }\n\n async byDeleted(withinIds?: ComponentID[]) {\n const ids = withinIds || (await this.workspace.listIds());\n const comps = await this.workspace.getMany(ids);\n const deletedIds = comps.filter((c) => c.isDeleted()).map((c) => c.id);\n return compact(deletedIds);\n }\n\n byDuringMergeState(): ComponentIdList {\n const unmergedComponents = this.workspace.scope.legacyScope.objects.unmergedComponents.getComponents();\n return ComponentIdList.fromArray(unmergedComponents.map((u) => ComponentID.fromObject(u.id)));\n }\n\n /**\n * list components that their head is a snap, not a tag.\n * this is relevant only when the lane is the default (main), otherwise, the head is always a snap.\n * components that are during-merge are filtered out, we don't want them during tag and don't want\n * to show them in the \"snapped\" section in bit-status.\n */\n async bySnappedOnMain(withinIds?: ComponentID[]) {\n if (!this.workspace.isOnMain()) {\n return [];\n }\n const ids = withinIds || (await this.workspace.listIds());\n const compIds = ComponentIdList.fromArray(ids);\n const componentsFromModel = await this.getModelComps(ids);\n const compsDuringMerge = this.byDuringMergeState();\n const comps = componentsFromModel\n .filter((c) => compIds.hasWithoutVersion(c.toComponentId()))\n .filter((c) => !compsDuringMerge.hasWithoutVersion(c.toComponentId()))\n .filter((c) => c.isHeadSnap());\n return comps.map((c) => c.toComponentIdWithHead());\n }\n\n bySoftTagged(withinIds?: ComponentID[]): ComponentID[] {\n const withCompIds = ComponentIdList.fromArray(withinIds || []);\n const all = this.workspace.consumer.bitMap.components.filter((c) => c.nextVersion).map((c) => c.id);\n return withinIds ? all.filter((id) => withCompIds.hasWithoutVersion(id)) : all;\n }\n\n private async getModelComps(ids: ComponentID[]): Promise<ModelComponent[]> {\n const comps = await Promise.all(ids.map((id) => this.workspace.scope.getBitObjectModelComponent(id, false)));\n return compact(comps);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -32,8 +32,8 @@ function _mergeConfigConflict() {
32
32
  };
33
33
  return data;
34
34
  }
35
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
36
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
35
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
36
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
37
37
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
38
38
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
39
39
  const idPrefix = `[*]`;
@@ -1 +1 @@
1
- {"version":3,"names":["_constants","data","require","_path","_interopRequireDefault","_fsExtra","_mergeConfigConflict","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","r","e","Symbol","toPrimitive","call","TypeError","String","Number","idPrefix","idDivider","repeat","MergeConflictFile","constructor","workspacePath","addConflict","id","conflict","conflictPerId","removeConflict","getConflict","loadIfNeeded","Error","getConflictAssumeIsLoaded","getConflictParsed","configMergeContent","undefined","JSON","parse","err","stringHasConflictMarker","MergeConfigConflict","getPath","message","hasConflict","Boolean","keys","length","path","join","MergeConfigFilename","fileContent","getFileContentIfExists","parsedConflict","parseConflict","write","afterFormat","formatConflicts","fs","writeFile","delete","remove","title","conflicts","map","str","includes","split","filter","line","startsWith","forEach","conflictItem","conflictItemSplit","rawId","conflictStr","trim","filePath","readFile","code","exports"],"sources":["merge-conflict-file.ts"],"sourcesContent":["import { MergeConfigFilename } from '@teambit/legacy/dist/constants';\nimport path from 'path';\nimport fs from 'fs-extra';\nimport { MergeConfigConflict } from './exceptions/merge-config-conflict';\n\nconst idPrefix = `[*]`;\nconst idDivider = '-'.repeat(80);\ntype ConflictPerId = { [compIdWithoutVersion: string]: string };\n\nexport class MergeConflictFile {\n conflictPerId: ConflictPerId | undefined;\n constructor(private workspacePath: string) {}\n\n addConflict(id: string, conflict: string) {\n if (!this.conflictPerId) this.conflictPerId = {};\n this.conflictPerId[id] = conflict;\n }\n\n removeConflict(id: string) {\n delete this.conflictPerId?.[id];\n }\n\n async getConflict(id: string): Promise<string | undefined> {\n await this.loadIfNeeded();\n if (!this.conflictPerId) throw new Error(`this.conflictPerId must be instantiated after load`);\n return this.conflictPerId[id];\n }\n\n getConflictAssumeIsLoaded(id: string): string | undefined {\n if (!this.conflictPerId)\n throw new Error(`MergeConflictFile was not loaded yet, please load it before calling this function`);\n return this.conflictPerId[id];\n }\n\n getConflictParsed(id: string): Record<string, any> | undefined {\n const configMergeContent = this.getConflictAssumeIsLoaded(id);\n if (!configMergeContent) return undefined;\n try {\n return JSON.parse(configMergeContent);\n } catch (err: any) {\n if (this.stringHasConflictMarker(configMergeContent)) {\n throw new MergeConfigConflict(this.getPath());\n }\n throw new Error(`unable to parse the merge-conflict entry for ${id} as the JSON is invalid. err: ${err.message}`);\n }\n }\n\n hasConflict(): boolean {\n return Boolean(this.conflictPerId && Object.keys(this.conflictPerId).length);\n }\n\n getPath() {\n return path.join(this.workspacePath, MergeConfigFilename);\n }\n\n async loadIfNeeded() {\n if (this.conflictPerId) return; // already loaded\n const fileContent = await this.getFileContentIfExists();\n if (!fileContent) {\n this.conflictPerId = {}; // to indicate that it's loaded\n return;\n }\n const parsedConflict = this.parseConflict(fileContent);\n this.conflictPerId = parsedConflict;\n }\n\n async write() {\n if (!this.hasConflict()) return;\n const afterFormat = this.formatConflicts();\n await fs.writeFile(this.getPath(), afterFormat);\n }\n\n async delete() {\n await fs.remove(this.getPath());\n }\n\n private formatConflicts(): string {\n const conflictPerId = this.conflictPerId;\n if (!conflictPerId) throw new Error('conflictPerId is not populated');\n const title = `# Resolve configuration conflicts per component and make sure the Component ID remain in place`;\n const conflicts = Object.keys(conflictPerId)\n .map((id) => {\n const conflict = conflictPerId[id];\n return `${idDivider}\n${idPrefix} ${id}\n${idDivider}\n${conflict}`;\n })\n .join('\\n\\n');\n return `${title}\\n\\n${conflicts}`;\n }\n\n private stringHasConflictMarker(str: string): boolean {\n return str.includes('<<<<<<<') || str.includes('>>>>>>>');\n }\n\n private parseConflict(conflict: string): ConflictPerId {\n // remove irrelevant lines\n conflict = conflict\n .split('\\n')\n .filter((line) => line !== idDivider && !line.startsWith('#'))\n .join('\\n');\n // split by id\n const conflictPerId: ConflictPerId = {};\n const split = conflict.split(idPrefix);\n split.forEach((conflictItem) => {\n const conflictItemSplit = conflictItem.split('\\n');\n const [rawId, ...conflictStr] = conflictItemSplit;\n const id = rawId.trim();\n if (!id) return; // first line has it empty\n conflictPerId[id] = conflictStr.join('\\n');\n });\n return conflictPerId;\n }\n\n private async getFileContentIfExists(): Promise<string | undefined> {\n const filePath = this.getPath();\n let fileContent: string;\n try {\n fileContent = await fs.readFile(filePath, 'utf-8');\n } catch (err: any) {\n if (err.code === 'ENOENT') {\n return undefined;\n }\n throw err;\n }\n return fileContent;\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_constants","data","require","_path","_interopRequireDefault","_fsExtra","_mergeConfigConflict","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","idPrefix","idDivider","repeat","MergeConflictFile","constructor","workspacePath","addConflict","id","conflict","conflictPerId","removeConflict","getConflict","loadIfNeeded","Error","getConflictAssumeIsLoaded","getConflictParsed","configMergeContent","undefined","JSON","parse","err","stringHasConflictMarker","MergeConfigConflict","getPath","message","hasConflict","Boolean","keys","length","path","join","MergeConfigFilename","fileContent","getFileContentIfExists","parsedConflict","parseConflict","write","afterFormat","formatConflicts","fs","writeFile","delete","remove","title","conflicts","map","str","includes","split","filter","line","startsWith","forEach","conflictItem","conflictItemSplit","rawId","conflictStr","trim","filePath","readFile","code","exports"],"sources":["merge-conflict-file.ts"],"sourcesContent":["import { MergeConfigFilename } from '@teambit/legacy/dist/constants';\nimport path from 'path';\nimport fs from 'fs-extra';\nimport { MergeConfigConflict } from './exceptions/merge-config-conflict';\n\nconst idPrefix = `[*]`;\nconst idDivider = '-'.repeat(80);\ntype ConflictPerId = { [compIdWithoutVersion: string]: string };\n\nexport class MergeConflictFile {\n conflictPerId: ConflictPerId | undefined;\n constructor(private workspacePath: string) {}\n\n addConflict(id: string, conflict: string) {\n if (!this.conflictPerId) this.conflictPerId = {};\n this.conflictPerId[id] = conflict;\n }\n\n removeConflict(id: string) {\n delete this.conflictPerId?.[id];\n }\n\n async getConflict(id: string): Promise<string | undefined> {\n await this.loadIfNeeded();\n if (!this.conflictPerId) throw new Error(`this.conflictPerId must be instantiated after load`);\n return this.conflictPerId[id];\n }\n\n getConflictAssumeIsLoaded(id: string): string | undefined {\n if (!this.conflictPerId)\n throw new Error(`MergeConflictFile was not loaded yet, please load it before calling this function`);\n return this.conflictPerId[id];\n }\n\n getConflictParsed(id: string): Record<string, any> | undefined {\n const configMergeContent = this.getConflictAssumeIsLoaded(id);\n if (!configMergeContent) return undefined;\n try {\n return JSON.parse(configMergeContent);\n } catch (err: any) {\n if (this.stringHasConflictMarker(configMergeContent)) {\n throw new MergeConfigConflict(this.getPath());\n }\n throw new Error(`unable to parse the merge-conflict entry for ${id} as the JSON is invalid. err: ${err.message}`);\n }\n }\n\n hasConflict(): boolean {\n return Boolean(this.conflictPerId && Object.keys(this.conflictPerId).length);\n }\n\n getPath() {\n return path.join(this.workspacePath, MergeConfigFilename);\n }\n\n async loadIfNeeded() {\n if (this.conflictPerId) return; // already loaded\n const fileContent = await this.getFileContentIfExists();\n if (!fileContent) {\n this.conflictPerId = {}; // to indicate that it's loaded\n return;\n }\n const parsedConflict = this.parseConflict(fileContent);\n this.conflictPerId = parsedConflict;\n }\n\n async write() {\n if (!this.hasConflict()) return;\n const afterFormat = this.formatConflicts();\n await fs.writeFile(this.getPath(), afterFormat);\n }\n\n async delete() {\n await fs.remove(this.getPath());\n }\n\n private formatConflicts(): string {\n const conflictPerId = this.conflictPerId;\n if (!conflictPerId) throw new Error('conflictPerId is not populated');\n const title = `# Resolve configuration conflicts per component and make sure the Component ID remain in place`;\n const conflicts = Object.keys(conflictPerId)\n .map((id) => {\n const conflict = conflictPerId[id];\n return `${idDivider}\n${idPrefix} ${id}\n${idDivider}\n${conflict}`;\n })\n .join('\\n\\n');\n return `${title}\\n\\n${conflicts}`;\n }\n\n private stringHasConflictMarker(str: string): boolean {\n return str.includes('<<<<<<<') || str.includes('>>>>>>>');\n }\n\n private parseConflict(conflict: string): ConflictPerId {\n // remove irrelevant lines\n conflict = conflict\n .split('\\n')\n .filter((line) => line !== idDivider && !line.startsWith('#'))\n .join('\\n');\n // split by id\n const conflictPerId: ConflictPerId = {};\n const split = conflict.split(idPrefix);\n split.forEach((conflictItem) => {\n const conflictItemSplit = conflictItem.split('\\n');\n const [rawId, ...conflictStr] = conflictItemSplit;\n const id = rawId.trim();\n if (!id) return; // first line has it empty\n conflictPerId[id] = conflictStr.join('\\n');\n });\n return conflictPerId;\n }\n\n private async getFileContentIfExists(): Promise<string | undefined> {\n const filePath = this.getPath();\n let fileContent: string;\n try {\n fileContent = await fs.readFile(filePath, 'utf-8');\n } catch (err: any) {\n if (err.code === 'ENOENT') {\n return undefined;\n }\n throw err;\n }\n return fileContent;\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -18,8 +18,8 @@ function _filter() {
18
18
  };
19
19
  return data;
20
20
  }
21
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
22
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
21
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
22
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
23
23
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
24
24
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
25
25
  class PatternCommand {
@@ -1 +1 @@
1
- {"version":3,"names":["_chalk","data","_interopRequireDefault","require","_filter","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","r","e","Symbol","toPrimitive","call","TypeError","String","Number","PatternCommand","constructor","workspace","statesFilter","join","cmd","description","report","pattern","ids","json","title","chalk","green","bold","length","toString","idsByPattern","exports"],"sources":["pattern.cmd.ts"],"sourcesContent":["import { Command, CommandOptions } from '@teambit/cli';\nimport chalk from 'chalk';\nimport { Workspace } from './workspace';\nimport { statesFilter } from './filter';\n\nexport class PatternCommand implements Command {\n name = 'pattern <pattern>';\n alias = '';\n description = 'list the component ids matching the given pattern';\n extendedDescription = `this command helps validating a pattern before using it in other commands.\nNOTE: always wrap the pattern with quotes to avoid collision with shell commands. depending on your shell, it might be single or double quotes.\na pattern can be a simple component-id or component-name. e.g. 'ui/button'.\na pattern can be used with wildcards for multiple component ids, e.g. 'org.scope/utils/**' or '**/utils/**' to capture all org/scopes.\nto enter multiple patterns, separate them by a comma, e.g. 'ui/*, lib/*'\nto exclude, use '!'. e.g. 'ui/**, !ui/button'\nthe matching algorithm is from multimatch (@see https://github.com/sindresorhus/multimatch).\n\nto filter by a state or attribute, prefix the pattern with \"$\". e.g. '$deprecated', '$modified'.\nlist of supported states: [${statesFilter.join(', ')}].\nto filter by multi-params state/attribute, separate the params with \":\", e.g. '$env:teambit.react/react'.\nlist of supported multi-params states: [env].\nto match a state and another criteria, use \" AND \" keyword. e.g. '$modified AND teambit.workspace/**'. note that the state must be first.\n`;\n examples = [\n { cmd: \"bit pattern '**'\", description: 'matches all components' },\n {\n cmd: \"bit pattern '*/ui/*'\",\n description:\n 'matches components with any scope-name and the \"ui\" namespace. e.g. \"ui/button\" but not \"ui/elements/button\"',\n },\n {\n cmd: \"bit pattern '*/ui/**'\",\n description: 'matches components whose namespace starts with \"ui/\" e.g. \"ui/button\", \"ui/elements/button\"',\n },\n { cmd: \"bit pattern 'bar, foo'\", description: 'matches two components: bar and foo' },\n { cmd: \"bit pattern 'my-scope.org/**'\", description: 'matches all components of the scope \"my-scope.org\"' },\n ];\n group = 'development';\n private = false;\n options = [['j', 'json', 'return the output as JSON']] as CommandOptions;\n\n constructor(private workspace: Workspace) {}\n\n async report([pattern]: [string]) {\n const ids = await this.json([pattern]);\n const title = chalk.green(`found ${chalk.bold(ids.length.toString())} components matching the pattern`);\n return `${title}\\n${ids.join('\\n')}`;\n }\n\n async json([pattern]: [string]) {\n return this.workspace.idsByPattern(pattern, false);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_chalk","data","_interopRequireDefault","require","_filter","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","PatternCommand","constructor","workspace","statesFilter","join","cmd","description","report","pattern","ids","json","title","chalk","green","bold","length","toString","idsByPattern","exports"],"sources":["pattern.cmd.ts"],"sourcesContent":["import { Command, CommandOptions } from '@teambit/cli';\nimport chalk from 'chalk';\nimport { Workspace } from './workspace';\nimport { statesFilter } from './filter';\n\nexport class PatternCommand implements Command {\n name = 'pattern <pattern>';\n alias = '';\n description = 'list the component ids matching the given pattern';\n extendedDescription = `this command helps validating a pattern before using it in other commands.\nNOTE: always wrap the pattern with quotes to avoid collision with shell commands. depending on your shell, it might be single or double quotes.\na pattern can be a simple component-id or component-name. e.g. 'ui/button'.\na pattern can be used with wildcards for multiple component ids, e.g. 'org.scope/utils/**' or '**/utils/**' to capture all org/scopes.\nto enter multiple patterns, separate them by a comma, e.g. 'ui/*, lib/*'\nto exclude, use '!'. e.g. 'ui/**, !ui/button'\nthe matching algorithm is from multimatch (@see https://github.com/sindresorhus/multimatch).\n\nto filter by a state or attribute, prefix the pattern with \"$\". e.g. '$deprecated', '$modified'.\nlist of supported states: [${statesFilter.join(', ')}].\nto filter by multi-params state/attribute, separate the params with \":\", e.g. '$env:teambit.react/react'.\nlist of supported multi-params states: [env].\nto match a state and another criteria, use \" AND \" keyword. e.g. '$modified AND teambit.workspace/**'. note that the state must be first.\n`;\n examples = [\n { cmd: \"bit pattern '**'\", description: 'matches all components' },\n {\n cmd: \"bit pattern '*/ui/*'\",\n description:\n 'matches components with any scope-name and the \"ui\" namespace. e.g. \"ui/button\" but not \"ui/elements/button\"',\n },\n {\n cmd: \"bit pattern '*/ui/**'\",\n description: 'matches components whose namespace starts with \"ui/\" e.g. \"ui/button\", \"ui/elements/button\"',\n },\n { cmd: \"bit pattern 'bar, foo'\", description: 'matches two components: bar and foo' },\n { cmd: \"bit pattern 'my-scope.org/**'\", description: 'matches all components of the scope \"my-scope.org\"' },\n ];\n group = 'development';\n private = false;\n options = [['j', 'json', 'return the output as JSON']] as CommandOptions;\n\n constructor(private workspace: Workspace) {}\n\n async report([pattern]: [string]) {\n const ids = await this.json([pattern]);\n const title = chalk.green(`found ${chalk.bold(ids.length.toString())} components matching the pattern`);\n return `${title}\\n${ids.join('\\n')}`;\n }\n\n async json([pattern]: [string]) {\n return this.workspace.idsByPattern(pattern, false);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_workspace@1.0.281/dist/workspace.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_workspace@1.0.281/dist/workspace.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_workspace@1.0.283/dist/workspace.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_workspace@1.0.283/dist/workspace.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
@@ -18,8 +18,8 @@ function _chalk() {
18
18
  };
19
19
  return data;
20
20
  }
21
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
22
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
21
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
22
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
23
23
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
24
24
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
25
25
  class ScopeSetCmd {
@@ -1 +1 @@
1
- {"version":3,"names":["_constants","data","require","_chalk","_interopRequireDefault","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","r","e","Symbol","toPrimitive","call","TypeError","String","Number","ScopeSetCmd","constructor","workspace","name","description","COMPONENT_PATTERN_HELP","PATTERN_HELP","report","scopeName","pattern","componentsIds","idsByPattern","changedIds","setDefaultScopeToComponents","chalk","green","bold","reset","map","id","toString","join","oldScope","defaultScope","setDefaultScope","exports"],"sources":["scope-set.cmd.ts"],"sourcesContent":["import { Command } from '@teambit/cli';\nimport { PATTERN_HELP, COMPONENT_PATTERN_HELP } from '@teambit/legacy/dist/constants';\nimport chalk from 'chalk';\nimport { Workspace } from '../workspace';\n\nexport class ScopeSetCmd implements Command {\n name = 'set <scope-name> [component-pattern]';\n description =\n 'Sets the scope for specified component/s. If no component is specified, sets the default scope of the workspace';\n arguments = [\n { name: 'scope-name', description: 'name of the scope to set' },\n {\n name: 'component-pattern',\n description: COMPONENT_PATTERN_HELP,\n },\n ];\n options = [];\n group = 'development';\n extendedDescription = `default scopes for components are set in the bitmap file. the default scope for a workspace is set in the workspace.jsonc.\na component is set with a scope (as oppose to default scope) only once it is versioned.'\n\n${PATTERN_HELP('scope set scope-name')}`;\n\n constructor(private workspace: Workspace) {}\n\n async report([scopeName, pattern]: [string, string]) {\n if (pattern) {\n const componentsIds = await this.workspace.idsByPattern(pattern);\n const changedIds = await this.workspace.setDefaultScopeToComponents(componentsIds, scopeName);\n return chalk.green(`successfully set ${chalk.bold(scopeName)} as the default-scope for the following component(s):\n ${chalk.reset(changedIds.map((id) => id.toString()).join('\\n'))}`);\n }\n const oldScope = this.workspace.defaultScope;\n await this.workspace.setDefaultScope(scopeName);\n return chalk.green(\n `successfully set the workspace's default-scope to ${chalk.bold(scopeName)}. (previous scope was \"${oldScope}\")`\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_constants","data","require","_chalk","_interopRequireDefault","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ScopeSetCmd","constructor","workspace","name","description","COMPONENT_PATTERN_HELP","PATTERN_HELP","report","scopeName","pattern","componentsIds","idsByPattern","changedIds","setDefaultScopeToComponents","chalk","green","bold","reset","map","id","toString","join","oldScope","defaultScope","setDefaultScope","exports"],"sources":["scope-set.cmd.ts"],"sourcesContent":["import { Command } from '@teambit/cli';\nimport { PATTERN_HELP, COMPONENT_PATTERN_HELP } from '@teambit/legacy/dist/constants';\nimport chalk from 'chalk';\nimport { Workspace } from '../workspace';\n\nexport class ScopeSetCmd implements Command {\n name = 'set <scope-name> [component-pattern]';\n description =\n 'Sets the scope for specified component/s. If no component is specified, sets the default scope of the workspace';\n arguments = [\n { name: 'scope-name', description: 'name of the scope to set' },\n {\n name: 'component-pattern',\n description: COMPONENT_PATTERN_HELP,\n },\n ];\n options = [];\n group = 'development';\n extendedDescription = `default scopes for components are set in the bitmap file. the default scope for a workspace is set in the workspace.jsonc.\na component is set with a scope (as oppose to default scope) only once it is versioned.'\n\n${PATTERN_HELP('scope set scope-name')}`;\n\n constructor(private workspace: Workspace) {}\n\n async report([scopeName, pattern]: [string, string]) {\n if (pattern) {\n const componentsIds = await this.workspace.idsByPattern(pattern);\n const changedIds = await this.workspace.setDefaultScopeToComponents(componentsIds, scopeName);\n return chalk.green(`successfully set ${chalk.bold(scopeName)} as the default-scope for the following component(s):\n ${chalk.reset(changedIds.map((id) => id.toString()).join('\\n'))}`);\n }\n const oldScope = this.workspace.defaultScope;\n await this.workspace.setDefaultScope(scopeName);\n return chalk.green(\n `successfully set the workspace's default-scope to ${chalk.bold(scopeName)}. (previous scope was \"${oldScope}\")`\n );\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,WAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,UAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,OAAA;EAAA,MAAAF,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAC,MAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA0B,SAAAG,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,gBAAAH,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAJ,CAAA,GAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAI,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAZ,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAM,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAhB,CAAA,QAAAa,CAAA,GAAAb,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAGnB,MAAMgB,WAAW,CAAoB;EAkB1CC,WAAWA,CAASC,SAAoB,EAAE;IAAA,KAAtBA,SAAoB,GAApBA,SAAoB;IAAApB,eAAA,eAjBjC,sCAAsC;IAAAA,eAAA,sBAE3C,iHAAiH;IAAAA,eAAA,oBACvG,CACV;MAAEqB,IAAI,EAAE,YAAY;MAAEC,WAAW,EAAE;IAA2B,CAAC,EAC/D;MACED,IAAI,EAAE,mBAAmB;MACzBC,WAAW,EAAEC;IACf,CAAC,CACF;IAAAvB,eAAA,kBACS,EAAE;IAAAA,eAAA,gBACJ,aAAa;IAAAA,eAAA,8BACC;AACxB;AACA;AACA,EAAE,IAAAwB,yBAAY,EAAC,sBAAsB,CAAC,EAAE;EAEK;EAE3C,MAAMC,MAAMA,CAAC,CAACC,SAAS,EAAEC,OAAO,CAAmB,EAAE;IACnD,IAAIA,OAAO,EAAE;MACX,MAAMC,aAAa,GAAG,MAAM,IAAI,CAACR,SAAS,CAACS,YAAY,CAACF,OAAO,CAAC;MAChE,MAAMG,UAAU,GAAG,MAAM,IAAI,CAACV,SAAS,CAACW,2BAA2B,CAACH,aAAa,EAAEF,SAAS,CAAC;MAC7F,OAAOM,gBAAK,CAACC,KAAK,CAAC,oBAAoBD,gBAAK,CAACE,IAAI,CAACR,SAAS,CAAC;AAClE,IAAIM,gBAAK,CAACG,KAAK,CAACL,UAAU,CAACM,GAAG,CAAEC,EAAE,IAAKA,EAAE,CAACC,QAAQ,CAAC,CAAC,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;IAChE;IACA,MAAMC,QAAQ,GAAG,IAAI,CAACpB,SAAS,CAACqB,YAAY;IAC5C,MAAM,IAAI,CAACrB,SAAS,CAACsB,eAAe,CAAChB,SAAS,CAAC;IAC/C,OAAOM,gBAAK,CAACC,KAAK,CAChB,qDAAqDD,gBAAK,CAACE,IAAI,CAACR,SAAS,CAAC,0BAA0Bc,QAAQ,IAC9G,CAAC;EACH;AACF;AAACG,OAAA,CAAAzB,WAAA,GAAAA,WAAA","ignoreList":[]}
@@ -54,14 +54,14 @@ function _workspaceModel() {
54
54
  return data;
55
55
  }
56
56
  const _excluded = ["data", "subscribeToMore"];
57
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
57
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
58
58
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
59
59
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
60
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
60
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
61
61
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
62
62
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
63
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
64
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } } return target; }
63
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], t.indexOf(o) >= 0 || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
64
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.indexOf(n) >= 0) continue; t[n] = r[n]; } return t; }
65
65
  const wcComponentFields = (0, _client().gql)`
66
66
  fragment wcComponentFields on Component {
67
67
  id {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","data","require","_component","_latest","_interopRequireDefault","_uiFoundationUiHooks","_client","_componentId","_workspaceModel","_excluded","obj","__esModule","default","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","key","value","_toPropertyKey","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","prototype","propertyIsEnumerable","hasOwnProperty","wcComponentFields","gql","WORKSPACE","COMPONENT_SUBSCRIPTION_ADDED","COMPONENT_SUBSCRIPTION_CHANGED","COMPONENT_SUBSCRIPTION_REMOVED","useWorkspace","options","_useDataQuery","useDataQuery","subscribeToMore","rest","optionsRef","useLatest","useEffect","unSubCompAddition","document","updateQuery","prev","subscriptionData","update","addedComponent","componentAdded","component","componentExists","workspace","components","find","ComponentID","isEqualObj","id","ignoreVersion","setTimeout","current","onComponentAdded","ComponentModel","from","unSubCompChange","updatedComponent","componentChanged","onComponentUpdated","map","name","unSubCompRemoved","idsToRemove","componentRemoved","componentIds","onComponentRemoved","fromObject","every","useMemo","Workspace","undefined"],"sources":["use-workspace.ts"],"sourcesContent":["import { useEffect, useMemo } from 'react';\nimport { ComponentModel } from '@teambit/component';\nimport useLatest from '@react-hook/latest';\nimport { useDataQuery } from '@teambit/ui-foundation.ui.hooks.use-data-query';\nimport { gql } from '@apollo/client';\nimport { ComponentID, ComponentIdObj } from '@teambit/component-id';\n\nimport { Workspace } from './workspace-model';\n\ntype UseWorkspaceOptions = {\n onComponentAdded?: (component: ComponentModel[]) => void;\n onComponentUpdated?: (component: ComponentModel[]) => void;\n onComponentRemoved?: (compId: ComponentID[]) => void;\n};\ntype RawComponent = { id: ComponentIdObj };\n\nconst wcComponentFields = gql`\n fragment wcComponentFields on Component {\n id {\n name\n version\n scope\n }\n aspects(include: [\"teambit.preview/preview\", \"teambit.envs/envs\"]) {\n # 'id' property in gql refers to a *global* identifier and used for caching.\n # this makes aspect data cache under the same key, even when they are under different components.\n # renaming the property fixes that.\n aspectId: id\n data\n }\n compositions {\n identifier\n }\n description\n issuesCount\n status {\n isOutdated\n isNew\n isInScope\n isStaged\n modifyInfo {\n hasModifiedFiles\n hasModifiedDependencies\n }\n isDeleted\n }\n buildStatus\n preview {\n includesEnvTemplate\n legacyHeader\n isScaling\n skipIncludes\n }\n deprecation {\n isDeprecate\n newId\n }\n server {\n env\n url\n }\n env {\n id\n icon\n }\n }\n`;\n\nconst WORKSPACE = gql`\n query workspace {\n workspace {\n name\n path\n icon\n components {\n ...wcComponentFields\n }\n }\n }\n ${wcComponentFields}\n`;\n\nconst COMPONENT_SUBSCRIPTION_ADDED = gql`\n subscription OnComponentAdded {\n componentAdded {\n component {\n ...wcComponentFields\n }\n }\n }\n ${wcComponentFields}\n`;\n\nconst COMPONENT_SUBSCRIPTION_CHANGED = gql`\n subscription OnComponentChanged {\n componentChanged {\n component {\n ...wcComponentFields\n }\n }\n }\n ${wcComponentFields}\n`;\n\nconst COMPONENT_SUBSCRIPTION_REMOVED = gql`\n subscription OnComponentRemoved {\n componentRemoved {\n componentIds {\n name\n version\n scope\n }\n }\n }\n`;\n\nexport function useWorkspace(options: UseWorkspaceOptions = {}) {\n const { data, subscribeToMore, ...rest } = useDataQuery(WORKSPACE);\n const optionsRef = useLatest(options);\n\n useEffect(() => {\n const unSubCompAddition = subscribeToMore({\n document: COMPONENT_SUBSCRIPTION_ADDED,\n updateQuery: (prev, { subscriptionData }) => {\n const update = subscriptionData.data;\n const addedComponent = update?.componentAdded?.component;\n if (!addedComponent) return prev;\n\n const componentExists = prev.workspace.components.find((component: any) =>\n ComponentID.isEqualObj(component.id, addedComponent.id, { ignoreVersion: true })\n );\n if (componentExists) return prev;\n\n // side effect - trigger observers\n setTimeout(() => optionsRef.current.onComponentAdded?.([ComponentModel.from(addedComponent)]));\n\n return {\n ...prev,\n workspace: {\n ...prev.workspace,\n components: [...prev.workspace.components, addedComponent],\n },\n };\n },\n });\n\n const unSubCompChange = subscribeToMore({\n document: COMPONENT_SUBSCRIPTION_CHANGED,\n updateQuery: (prev, { subscriptionData }) => {\n const update = subscriptionData.data;\n if (!update) return prev;\n\n const updatedComponent = update.componentChanged.component;\n // side effect - trigger observers\n setTimeout(() => optionsRef.current.onComponentUpdated?.([ComponentModel.from(updatedComponent)]));\n\n return {\n ...prev,\n workspace: {\n ...prev.workspace,\n components: prev.workspace.components.map((component) =>\n component.id.name === updatedComponent.id.name ? updatedComponent : component\n ),\n },\n };\n },\n });\n\n const unSubCompRemoved = subscribeToMore({\n document: COMPONENT_SUBSCRIPTION_REMOVED,\n updateQuery: (prev, { subscriptionData }) => {\n const idsToRemove: ComponentIdObj[] | undefined = subscriptionData.data?.componentRemoved?.componentIds;\n if (!idsToRemove || idsToRemove.length === 0) return prev;\n\n // side effect - trigger observers\n setTimeout(() => optionsRef.current.onComponentRemoved?.(idsToRemove.map((id) => ComponentID.fromObject(id))));\n\n return {\n ...prev,\n workspace: {\n ...prev.workspace,\n components: prev.workspace.components.filter((component: RawComponent) =>\n idsToRemove.every((id) => !ComponentID.isEqualObj(id, component.id))\n ),\n },\n };\n },\n });\n\n // TODO - sub to component removal\n\n return () => {\n unSubCompAddition();\n unSubCompChange();\n unSubCompRemoved();\n };\n }, [optionsRef]);\n\n const workspace = useMemo(() => {\n return data?.workspace ? Workspace.from(data?.workspace) : undefined;\n }, [data?.workspace]);\n\n return {\n workspace,\n subscribeToMore,\n ...rest,\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","data","require","_component","_latest","_interopRequireDefault","_uiFoundationUiHooks","_client","_componentId","_workspaceModel","_excluded","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","n","indexOf","propertyIsEnumerable","hasOwnProperty","wcComponentFields","gql","WORKSPACE","COMPONENT_SUBSCRIPTION_ADDED","COMPONENT_SUBSCRIPTION_CHANGED","COMPONENT_SUBSCRIPTION_REMOVED","useWorkspace","options","_useDataQuery","useDataQuery","subscribeToMore","rest","optionsRef","useLatest","useEffect","unSubCompAddition","document","updateQuery","prev","subscriptionData","update","addedComponent","componentAdded","component","componentExists","workspace","components","find","ComponentID","isEqualObj","id","ignoreVersion","setTimeout","current","onComponentAdded","ComponentModel","from","unSubCompChange","updatedComponent","componentChanged","onComponentUpdated","map","name","unSubCompRemoved","idsToRemove","componentRemoved","componentIds","onComponentRemoved","fromObject","every","useMemo","Workspace","undefined"],"sources":["use-workspace.ts"],"sourcesContent":["import { useEffect, useMemo } from 'react';\nimport { ComponentModel } from '@teambit/component';\nimport useLatest from '@react-hook/latest';\nimport { useDataQuery } from '@teambit/ui-foundation.ui.hooks.use-data-query';\nimport { gql } from '@apollo/client';\nimport { ComponentID, ComponentIdObj } from '@teambit/component-id';\n\nimport { Workspace } from './workspace-model';\n\ntype UseWorkspaceOptions = {\n onComponentAdded?: (component: ComponentModel[]) => void;\n onComponentUpdated?: (component: ComponentModel[]) => void;\n onComponentRemoved?: (compId: ComponentID[]) => void;\n};\ntype RawComponent = { id: ComponentIdObj };\n\nconst wcComponentFields = gql`\n fragment wcComponentFields on Component {\n id {\n name\n version\n scope\n }\n aspects(include: [\"teambit.preview/preview\", \"teambit.envs/envs\"]) {\n # 'id' property in gql refers to a *global* identifier and used for caching.\n # this makes aspect data cache under the same key, even when they are under different components.\n # renaming the property fixes that.\n aspectId: id\n data\n }\n compositions {\n identifier\n }\n description\n issuesCount\n status {\n isOutdated\n isNew\n isInScope\n isStaged\n modifyInfo {\n hasModifiedFiles\n hasModifiedDependencies\n }\n isDeleted\n }\n buildStatus\n preview {\n includesEnvTemplate\n legacyHeader\n isScaling\n skipIncludes\n }\n deprecation {\n isDeprecate\n newId\n }\n server {\n env\n url\n }\n env {\n id\n icon\n }\n }\n`;\n\nconst WORKSPACE = gql`\n query workspace {\n workspace {\n name\n path\n icon\n components {\n ...wcComponentFields\n }\n }\n }\n ${wcComponentFields}\n`;\n\nconst COMPONENT_SUBSCRIPTION_ADDED = gql`\n subscription OnComponentAdded {\n componentAdded {\n component {\n ...wcComponentFields\n }\n }\n }\n ${wcComponentFields}\n`;\n\nconst COMPONENT_SUBSCRIPTION_CHANGED = gql`\n subscription OnComponentChanged {\n componentChanged {\n component {\n ...wcComponentFields\n }\n }\n }\n ${wcComponentFields}\n`;\n\nconst COMPONENT_SUBSCRIPTION_REMOVED = gql`\n subscription OnComponentRemoved {\n componentRemoved {\n componentIds {\n name\n version\n scope\n }\n }\n }\n`;\n\nexport function useWorkspace(options: UseWorkspaceOptions = {}) {\n const { data, subscribeToMore, ...rest } = useDataQuery(WORKSPACE);\n const optionsRef = useLatest(options);\n\n useEffect(() => {\n const unSubCompAddition = subscribeToMore({\n document: COMPONENT_SUBSCRIPTION_ADDED,\n updateQuery: (prev, { subscriptionData }) => {\n const update = subscriptionData.data;\n const addedComponent = update?.componentAdded?.component;\n if (!addedComponent) return prev;\n\n const componentExists = prev.workspace.components.find((component: any) =>\n ComponentID.isEqualObj(component.id, addedComponent.id, { ignoreVersion: true })\n );\n if (componentExists) return prev;\n\n // side effect - trigger observers\n setTimeout(() => optionsRef.current.onComponentAdded?.([ComponentModel.from(addedComponent)]));\n\n return {\n ...prev,\n workspace: {\n ...prev.workspace,\n components: [...prev.workspace.components, addedComponent],\n },\n };\n },\n });\n\n const unSubCompChange = subscribeToMore({\n document: COMPONENT_SUBSCRIPTION_CHANGED,\n updateQuery: (prev, { subscriptionData }) => {\n const update = subscriptionData.data;\n if (!update) return prev;\n\n const updatedComponent = update.componentChanged.component;\n // side effect - trigger observers\n setTimeout(() => optionsRef.current.onComponentUpdated?.([ComponentModel.from(updatedComponent)]));\n\n return {\n ...prev,\n workspace: {\n ...prev.workspace,\n components: prev.workspace.components.map((component) =>\n component.id.name === updatedComponent.id.name ? updatedComponent : component\n ),\n },\n };\n },\n });\n\n const unSubCompRemoved = subscribeToMore({\n document: COMPONENT_SUBSCRIPTION_REMOVED,\n updateQuery: (prev, { subscriptionData }) => {\n const idsToRemove: ComponentIdObj[] | undefined = subscriptionData.data?.componentRemoved?.componentIds;\n if (!idsToRemove || idsToRemove.length === 0) return prev;\n\n // side effect - trigger observers\n setTimeout(() => optionsRef.current.onComponentRemoved?.(idsToRemove.map((id) => ComponentID.fromObject(id))));\n\n return {\n ...prev,\n workspace: {\n ...prev.workspace,\n components: prev.workspace.components.filter((component: RawComponent) =>\n idsToRemove.every((id) => !ComponentID.isEqualObj(id, component.id))\n ),\n },\n };\n },\n });\n\n // TODO - sub to component removal\n\n return () => {\n unSubCompAddition();\n unSubCompChange();\n unSubCompRemoved();\n };\n }, [optionsRef]);\n\n const workspace = useMemo(() => {\n return data?.workspace ? Workspace.from(data?.workspace) : undefined;\n }, [data?.workspace]);\n\n return {\n workspace,\n subscribeToMore,\n ...rest,\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -20,7 +20,7 @@ function _componentDescriptor() {
20
20
  }
21
21
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
22
22
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
23
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
23
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
24
24
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
25
25
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } // import { ComponentMeta } from '@teambit/component';
26
26
  class Workspace {
@@ -1 +1 @@
1
- {"version":3,"names":["_component","data","require","_componentDescriptor","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","key","value","_toPropertyKey","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","Workspace","constructor","name","path","icon","components","componentDescriptors","getComponent","id","find","component","fullName","from","map","ComponentID","fromObject","aspectList","entries","aspects","aspectObject","aspectId","aspectData","ComponentDescriptor","toString","ComponentModel","empty","exports"],"sources":["workspace-model.ts"],"sourcesContent":["// import { ComponentMeta } from '@teambit/component';\nimport { ComponentID, ComponentModel, ComponentModelProps } from '@teambit/component';\nimport { ComponentDescriptor } from '@teambit/component-descriptor';\nimport { DeprecationInfo } from '@teambit/deprecation';\nimport { Descriptor } from '@teambit/envs';\n\nimport { ComponentStatus } from '../../workspace-component/component-status';\n\nexport type WorkspaceModelComponent = {\n id: ComponentID;\n status: ComponentStatus;\n deprecation: DeprecationInfo;\n env: Descriptor;\n};\n\nexport type WorkspaceProps = {\n name: string;\n path: string;\n components: (ComponentModelProps & { aspects: Record<string, any> })[];\n icon: string;\n};\n\nexport class Workspace {\n constructor(\n /**\n * name of the workspace.\n */\n readonly name: string,\n\n /**\n * absolute path of the workspace.\n */\n readonly path: string,\n\n /**\n * icon of the workspace.\n */\n readonly icon: string,\n\n /**\n * components container in the workspace.\n */\n readonly components: ComponentModel[],\n\n /**\n * components contained in the workspace.\n */\n readonly componentDescriptors: ComponentDescriptor[]\n ) {}\n\n /**\n * return a component from the workspace.\n */\n getComponent(id: ComponentID) {\n return this.components.find((component) => component.id.fullName === id.fullName);\n }\n\n static from({ name, path, components, icon }: WorkspaceProps) {\n const componentDescriptors = components.map((component) => {\n const id = ComponentID.fromObject(component.id);\n const aspectList = {\n entries: component?.aspects.map((aspectObject) => {\n return {\n ...aspectObject,\n aspectId: aspectObject.aspectId,\n aspectData: aspectObject.data,\n };\n }),\n };\n return ComponentDescriptor.fromObject({ id: id.toString(), aspectList });\n });\n return new Workspace(\n name,\n path,\n icon,\n components.map((value) => {\n return ComponentModel.from(value);\n }),\n componentDescriptors\n );\n }\n\n static empty() {\n return new Workspace('', '', '', [], []);\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_component","data","require","_componentDescriptor","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","Workspace","constructor","name","path","icon","components","componentDescriptors","getComponent","id","find","component","fullName","from","map","ComponentID","fromObject","aspectList","entries","aspects","aspectObject","aspectId","aspectData","ComponentDescriptor","toString","ComponentModel","empty","exports"],"sources":["workspace-model.ts"],"sourcesContent":["// import { ComponentMeta } from '@teambit/component';\nimport { ComponentID, ComponentModel, ComponentModelProps } from '@teambit/component';\nimport { ComponentDescriptor } from '@teambit/component-descriptor';\nimport { DeprecationInfo } from '@teambit/deprecation';\nimport { Descriptor } from '@teambit/envs';\n\nimport { ComponentStatus } from '../../workspace-component/component-status';\n\nexport type WorkspaceModelComponent = {\n id: ComponentID;\n status: ComponentStatus;\n deprecation: DeprecationInfo;\n env: Descriptor;\n};\n\nexport type WorkspaceProps = {\n name: string;\n path: string;\n components: (ComponentModelProps & { aspects: Record<string, any> })[];\n icon: string;\n};\n\nexport class Workspace {\n constructor(\n /**\n * name of the workspace.\n */\n readonly name: string,\n\n /**\n * absolute path of the workspace.\n */\n readonly path: string,\n\n /**\n * icon of the workspace.\n */\n readonly icon: string,\n\n /**\n * components container in the workspace.\n */\n readonly components: ComponentModel[],\n\n /**\n * components contained in the workspace.\n */\n readonly componentDescriptors: ComponentDescriptor[]\n ) {}\n\n /**\n * return a component from the workspace.\n */\n getComponent(id: ComponentID) {\n return this.components.find((component) => component.id.fullName === id.fullName);\n }\n\n static from({ name, path, components, icon }: WorkspaceProps) {\n const componentDescriptors = components.map((component) => {\n const id = ComponentID.fromObject(component.id);\n const aspectList = {\n entries: component?.aspects.map((aspectObject) => {\n return {\n ...aspectObject,\n aspectId: aspectObject.aspectId,\n aspectData: aspectObject.data,\n };\n }),\n };\n return ComponentDescriptor.fromObject({ id: id.toString(), aspectList });\n });\n return new Workspace(\n name,\n path,\n icon,\n components.map((value) => {\n return ComponentModel.from(value);\n }),\n componentDescriptors\n );\n }\n\n static empty() {\n return new Workspace('', '', '', [], []);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["LinkPlugin","link","id","fullName","scope","exports"],"sources":["link-plugin.ts"],"sourcesContent":["export class LinkPlugin {\n link(id) {\n return `${id.fullName}?scope=${id.scope}`;\n }\n}\n"],"mappings":";;;;;;AAAO,MAAMA,UAAU,CAAC;EACtBC,IAAIA,CAACC,EAAE,EAAE;IACP,OAAQ,GAAEA,EAAE,CAACC,QAAS,UAASD,EAAE,CAACE,KAAM,EAAC;EAC3C;AACF;AAACC,OAAA,CAAAL,UAAA,GAAAA,UAAA","ignoreList":[]}
1
+ {"version":3,"names":["LinkPlugin","link","id","fullName","scope","exports"],"sources":["link-plugin.ts"],"sourcesContent":["export class LinkPlugin {\n link(id) {\n return `${id.fullName}?scope=${id.scope}`;\n }\n}\n"],"mappings":";;;;;;AAAO,MAAMA,UAAU,CAAC;EACtBC,IAAIA,CAACC,EAAE,EAAE;IACP,OAAO,GAAGA,EAAE,CAACC,QAAQ,UAAUD,EAAE,CAACE,KAAK,EAAE;EAC3C;AACF;AAACC,OAAA,CAAAL,UAAA,GAAAA,UAAA","ignoreList":[]}
@@ -96,7 +96,7 @@ function _linkPlugin() {
96
96
  };
97
97
  return data;
98
98
  }
99
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
99
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
100
100
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
101
101
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
102
102
  function WorkspaceOverview() {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","data","_interopRequireWildcard","require","_explorerUiGallery","_workspaceUi","_previewUi","_designUi","_componentId","_cloudHooks","_scopes","_lodash","_workspaceUi2","_workspaceContext","_workspaceOverviewModule","_interopRequireDefault","_linkPlugin","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","WorkspaceOverview","workspace","useContext","WorkspaceContext","compModelsById","Map","components","map","comp","id","toString","componentDescriptors","uniqueScopes","Set","c","scope","uniqueScopesArr","Array","from","cloudScopes","useCloudScopes","cloudScopesById","plugins","useCardPlugins","length","createElement","EmptyWorkspace","name","compDescriptorById","componentsWithDescriptorAndScope","compact","component","deprecation","isDeprecate","componentDescriptor","cloudScope","ScopeID","isValid","fromString","undefined","className","styles","container","ComponentGrid","cardGrid","WorkspaceComponentCard","key","React","useMemo","preview","Preview","shouldShowPreview","compModel","PreviewPlaceholder","previewBottomRight","PreviewBottomRight","env","envComponentId","ComponentID","rightPreviewPlugins","badge","Tooltip","delay","content","src","icon","envIcon","LinkPlugin","size"],"sources":["workspace-overview.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport { ComponentGrid } from '@teambit/explorer.ui.gallery.component-grid';\nimport { EmptyWorkspace } from '@teambit/workspace.ui.empty-workspace';\nimport { PreviewPlaceholder } from '@teambit/preview.ui.preview-placeholder';\nimport { Tooltip } from '@teambit/design.ui.tooltip';\nimport { ComponentID } from '@teambit/component-id';\nimport { ComponentModel } from '@teambit/component';\nimport { useCloudScopes } from '@teambit/cloud.hooks.use-cloud-scopes';\nimport { ScopeID } from '@teambit/scopes.scope-id';\nimport { compact } from 'lodash';\nimport { WorkspaceComponentCard } from '@teambit/workspace.ui.workspace-component-card';\nimport type { ComponentCardPluginType, PluginProps } from '@teambit/explorer.ui.component-card';\nimport { WorkspaceContext } from '../workspace-context';\nimport styles from './workspace-overview.module.scss';\nimport { LinkPlugin } from './link-plugin';\n\nexport function WorkspaceOverview() {\n const workspace = useContext(WorkspaceContext);\n const compModelsById = new Map(workspace.components.map((comp) => [comp.id.toString(), comp]));\n const { components, componentDescriptors } = workspace;\n const uniqueScopes = new Set(components.map((c) => c.id.scope));\n const uniqueScopesArr = Array.from(uniqueScopes);\n const { cloudScopes = [] } = useCloudScopes(uniqueScopesArr);\n const cloudScopesById = new Map(cloudScopes.map((scope) => [scope.id.toString(), scope]));\n\n const plugins = useCardPlugins({ compModelsById });\n\n if (!components || components.length === 0) return <EmptyWorkspace name={workspace.name} />;\n\n const compDescriptorById = new Map(componentDescriptors.map((comp) => [comp.id.toString(), comp]));\n const componentsWithDescriptorAndScope = compact(\n components.map((component) => {\n if (component.deprecation?.isDeprecate) return null;\n const componentDescriptor = compDescriptorById.get(component.id.toString());\n if (!componentDescriptor) return null;\n const cloudScope = cloudScopesById.get(component.id.scope);\n const scope =\n cloudScope ||\n (ScopeID.isValid(component.id.scope) && { id: ScopeID.fromString(component.id.scope) }) ||\n undefined;\n\n return { component, componentDescriptor, scope };\n })\n );\n\n return (\n <div className={styles.container}>\n <ComponentGrid className={styles.cardGrid}>\n {componentsWithDescriptorAndScope.map(({ component, componentDescriptor, scope }) => {\n return (\n <WorkspaceComponentCard\n key={component.id.toString()}\n componentDescriptor={componentDescriptor}\n component={component}\n plugins={plugins}\n scope={scope}\n />\n );\n })}\n </ComponentGrid>\n </div>\n );\n}\n\nexport function useCardPlugins({\n compModelsById,\n}: {\n compModelsById: Map<string, ComponentModel>;\n}): ComponentCardPluginType<PluginProps>[] {\n const plugins = React.useMemo(\n () => [\n {\n preview: function Preview({ component, shouldShowPreview }) {\n const compModel = compModelsById.get(component.id.toString());\n if (!compModel) return null;\n return (\n <PreviewPlaceholder\n componentDescriptor={component}\n component={compModel}\n shouldShowPreview={shouldShowPreview}\n />\n );\n },\n },\n {\n previewBottomRight: function PreviewBottomRight({ component }) {\n const env = component.get('teambit.envs/envs');\n const envComponentId = env?.id ? ComponentID.fromString(env?.id) : undefined;\n\n return (\n <div className={styles.rightPreviewPlugins}>\n <div className={styles.badge}>\n <Tooltip delay={300} content={envComponentId?.name}>\n <img src={env?.icon} className={styles.envIcon} />\n </Tooltip>\n </div>\n </div>\n );\n },\n },\n new LinkPlugin(),\n ],\n [compModelsById.size]\n );\n\n return plugins;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","data","_interopRequireWildcard","require","_explorerUiGallery","_workspaceUi","_previewUi","_designUi","_componentId","_cloudHooks","_scopes","_lodash","_workspaceUi2","_workspaceContext","_workspaceOverviewModule","_interopRequireDefault","_linkPlugin","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","WorkspaceOverview","workspace","useContext","WorkspaceContext","compModelsById","Map","components","map","comp","id","toString","componentDescriptors","uniqueScopes","Set","c","scope","uniqueScopesArr","Array","from","cloudScopes","useCloudScopes","cloudScopesById","plugins","useCardPlugins","length","createElement","EmptyWorkspace","name","compDescriptorById","componentsWithDescriptorAndScope","compact","component","deprecation","isDeprecate","componentDescriptor","cloudScope","ScopeID","isValid","fromString","undefined","className","styles","container","ComponentGrid","cardGrid","WorkspaceComponentCard","key","React","useMemo","preview","Preview","shouldShowPreview","compModel","PreviewPlaceholder","previewBottomRight","PreviewBottomRight","env","envComponentId","ComponentID","rightPreviewPlugins","badge","Tooltip","delay","content","src","icon","envIcon","LinkPlugin","size"],"sources":["workspace-overview.tsx"],"sourcesContent":["import React, { useContext } from 'react';\nimport { ComponentGrid } from '@teambit/explorer.ui.gallery.component-grid';\nimport { EmptyWorkspace } from '@teambit/workspace.ui.empty-workspace';\nimport { PreviewPlaceholder } from '@teambit/preview.ui.preview-placeholder';\nimport { Tooltip } from '@teambit/design.ui.tooltip';\nimport { ComponentID } from '@teambit/component-id';\nimport { ComponentModel } from '@teambit/component';\nimport { useCloudScopes } from '@teambit/cloud.hooks.use-cloud-scopes';\nimport { ScopeID } from '@teambit/scopes.scope-id';\nimport { compact } from 'lodash';\nimport { WorkspaceComponentCard } from '@teambit/workspace.ui.workspace-component-card';\nimport type { ComponentCardPluginType, PluginProps } from '@teambit/explorer.ui.component-card';\nimport { WorkspaceContext } from '../workspace-context';\nimport styles from './workspace-overview.module.scss';\nimport { LinkPlugin } from './link-plugin';\n\nexport function WorkspaceOverview() {\n const workspace = useContext(WorkspaceContext);\n const compModelsById = new Map(workspace.components.map((comp) => [comp.id.toString(), comp]));\n const { components, componentDescriptors } = workspace;\n const uniqueScopes = new Set(components.map((c) => c.id.scope));\n const uniqueScopesArr = Array.from(uniqueScopes);\n const { cloudScopes = [] } = useCloudScopes(uniqueScopesArr);\n const cloudScopesById = new Map(cloudScopes.map((scope) => [scope.id.toString(), scope]));\n\n const plugins = useCardPlugins({ compModelsById });\n\n if (!components || components.length === 0) return <EmptyWorkspace name={workspace.name} />;\n\n const compDescriptorById = new Map(componentDescriptors.map((comp) => [comp.id.toString(), comp]));\n const componentsWithDescriptorAndScope = compact(\n components.map((component) => {\n if (component.deprecation?.isDeprecate) return null;\n const componentDescriptor = compDescriptorById.get(component.id.toString());\n if (!componentDescriptor) return null;\n const cloudScope = cloudScopesById.get(component.id.scope);\n const scope =\n cloudScope ||\n (ScopeID.isValid(component.id.scope) && { id: ScopeID.fromString(component.id.scope) }) ||\n undefined;\n\n return { component, componentDescriptor, scope };\n })\n );\n\n return (\n <div className={styles.container}>\n <ComponentGrid className={styles.cardGrid}>\n {componentsWithDescriptorAndScope.map(({ component, componentDescriptor, scope }) => {\n return (\n <WorkspaceComponentCard\n key={component.id.toString()}\n componentDescriptor={componentDescriptor}\n component={component}\n plugins={plugins}\n scope={scope}\n />\n );\n })}\n </ComponentGrid>\n </div>\n );\n}\n\nexport function useCardPlugins({\n compModelsById,\n}: {\n compModelsById: Map<string, ComponentModel>;\n}): ComponentCardPluginType<PluginProps>[] {\n const plugins = React.useMemo(\n () => [\n {\n preview: function Preview({ component, shouldShowPreview }) {\n const compModel = compModelsById.get(component.id.toString());\n if (!compModel) return null;\n return (\n <PreviewPlaceholder\n componentDescriptor={component}\n component={compModel}\n shouldShowPreview={shouldShowPreview}\n />\n );\n },\n },\n {\n previewBottomRight: function PreviewBottomRight({ component }) {\n const env = component.get('teambit.envs/envs');\n const envComponentId = env?.id ? ComponentID.fromString(env?.id) : undefined;\n\n return (\n <div className={styles.rightPreviewPlugins}>\n <div className={styles.badge}>\n <Tooltip delay={300} content={envComponentId?.name}>\n <img src={env?.icon} className={styles.envIcon} />\n </Tooltip>\n </div>\n </div>\n );\n },\n },\n new LinkPlugin(),\n ],\n [compModelsById.size]\n );\n\n return plugins;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -18,7 +18,7 @@ function _workspaceContext() {
18
18
  };
19
19
  return data;
20
20
  }
21
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
22
22
  /**
23
23
  * context provider of the workspace
24
24
  */
@@ -1 +1 @@
1
- {"version":3,"names":["_react","data","_interopRequireDefault","require","_workspaceContext","obj","__esModule","default","WorkspaceProvider","workspace","children","createElement","WorkspaceContext","Provider","value"],"sources":["workspace-provider.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\n\nimport { WorkspaceContext } from './workspace-context';\nimport { Workspace } from './workspace-model';\n\nexport type WorkspaceProviderProps = {\n /**\n * workspace model.\n */\n workspace: Workspace;\n\n /**\n * react children.\n */\n children: ReactNode;\n};\n\n/**\n * context provider of the workspace\n */\nexport function WorkspaceProvider({ workspace, children }: WorkspaceProviderProps) {\n return <WorkspaceContext.Provider value={workspace}>{children}</WorkspaceContext.Provider>;\n}\n"],"mappings":";;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAG,kBAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,iBAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAuD,SAAAC,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAevD;AACA;AACA;AACO,SAASG,iBAAiBA,CAAC;EAAEC,SAAS;EAAEC;AAAiC,CAAC,EAAE;EACjF,oBAAOV,MAAA,GAAAO,OAAA,CAAAI,aAAA,CAACP,iBAAA,GAAAQ,gBAAgB,CAACC,QAAQ;IAACC,KAAK,EAAEL;EAAU,GAAEC,QAAoC,CAAC;AAC5F","ignoreList":[]}
1
+ {"version":3,"names":["_react","data","_interopRequireDefault","require","_workspaceContext","e","__esModule","default","WorkspaceProvider","workspace","children","createElement","WorkspaceContext","Provider","value"],"sources":["workspace-provider.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\n\nimport { WorkspaceContext } from './workspace-context';\nimport { Workspace } from './workspace-model';\n\nexport type WorkspaceProviderProps = {\n /**\n * workspace model.\n */\n workspace: Workspace;\n\n /**\n * react children.\n */\n children: ReactNode;\n};\n\n/**\n * context provider of the workspace\n */\nexport function WorkspaceProvider({ workspace, children }: WorkspaceProviderProps) {\n return <WorkspaceContext.Provider value={workspace}>{children}</WorkspaceContext.Provider>;\n}\n"],"mappings":";;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAG,kBAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,iBAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAuD,SAAAC,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAevD;AACA;AACA;AACO,SAASG,iBAAiBA,CAAC;EAAEC,SAAS;EAAEC;AAAiC,CAAC,EAAE;EACjF,oBAAOV,MAAA,GAAAO,OAAA,CAAAI,aAAA,CAACP,iBAAA,GAAAQ,gBAAgB,CAACC,QAAQ;IAACC,KAAK,EAAEL;EAAU,GAAEC,QAAoC,CAAC;AAC5F","ignoreList":[]}
@@ -119,7 +119,7 @@ function _workspaceModule() {
119
119
  }
120
120
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
121
121
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
122
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
122
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
123
123
  /**
124
124
  * main workspace component.
125
125
  */
@@ -1 +1 @@
1
- {"version":3,"names":["require","_pluralize","data","_interopRequireDefault","_react","_interopRequireWildcard","_reactRouterDom","_uiFoundationUiNotifications","_uiFoundationUiReactRouter","_uiFoundationUi","_uiFoundationUiButtons","_baseUiSurfacesSplitPane","_baseReactThemes","_baseUiSurfacesSplitPane2","_uiFoundationUi2","_classnames","_useWorkspace","_workspaceOverview","_workspaceProvider","_workspaceModule","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","obj","Workspace","routeSlot","menuSlot","sidebar","workspaceUI","onSidebarTogglerChange","reactions","useComponentNotifications","workspace","useWorkspace","current","useThemePicker","isSidebarOpen","handleSidebarToggle","useReducer","x","sidebarOpenness","Layout","row","right","themeName","createElement","className","styles","emptyContainer","setComponents","components","WorkspaceProvider","workspaceWrapper","TopBar","classNames","topbar","Corner","corner","name","icon","menu","SplitPane","main","size","layout","Pane","closed","HoverSplitter","splitter","Collapser","isOpen","onMouseDown","stopPropagation","onClick","tooltipContent","SlotRouter","slot","Route","index","element","WorkspaceOverview","notifications","useNotifications","useMemo","onComponentAdded","comps","notificationId","log","pluralize","length","map","comp","id","toString","join","setTimeout","dismiss","onComponentRemoved","ids"],"sources":["workspace.tsx"],"sourcesContent":["import 'reset-css';\nimport pluralize from 'pluralize';\nimport React, { useReducer, useMemo } from 'react';\nimport { Route } from 'react-router-dom';\nimport type { ComponentModel } from '@teambit/component';\nimport type { ComponentID } from '@teambit/component-id';\nimport { useNotifications } from '@teambit/ui-foundation.ui.notifications.notification-context';\nimport { SlotRouter } from '@teambit/ui-foundation.ui.react-router.slot-router';\nimport type { RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';\nimport { Corner } from '@teambit/ui-foundation.ui.corner';\nimport { Collapser } from '@teambit/ui-foundation.ui.buttons.collapser';\nimport { SplitPane, Pane, Layout } from '@teambit/base-ui.surfaces.split-pane.split-pane';\nimport { useThemePicker } from '@teambit/base-react.themes.theme-switcher';\nimport { HoverSplitter } from '@teambit/base-ui.surfaces.split-pane.hover-splitter';\nimport { TopBar } from '@teambit/ui-foundation.ui.top-bar';\nimport classNames from 'classnames';\n\nimport { useWorkspace } from './use-workspace';\nimport { WorkspaceOverview } from './workspace-overview';\nimport { WorkspaceProvider } from './workspace-provider';\nimport styles from './workspace.module.scss';\nimport { WorkspaceUI } from '../../workspace.ui.runtime';\n\nexport type WorkspaceProps = {\n routeSlot: RouteSlot;\n menuSlot: RouteSlot;\n sidebar: JSX.Element;\n workspaceUI: WorkspaceUI;\n onSidebarTogglerChange: (callback: () => void) => void;\n};\n\n/**\n * main workspace component.\n */\nexport function Workspace({ routeSlot, menuSlot, sidebar, workspaceUI, onSidebarTogglerChange }: WorkspaceProps) {\n const reactions = useComponentNotifications();\n const { workspace } = useWorkspace(reactions);\n const { current } = useThemePicker();\n const [isSidebarOpen, handleSidebarToggle] = useReducer((x) => !x, true);\n const sidebarOpenness = isSidebarOpen ? Layout.row : Layout.right;\n const themeName = current?.themeName || 'light';\n onSidebarTogglerChange(handleSidebarToggle);\n\n if (!workspace) {\n return <div className={styles.emptyContainer}></div>;\n }\n\n workspaceUI.setComponents(workspace.components);\n\n return (\n <WorkspaceProvider workspace={workspace}>\n <div className={styles.workspaceWrapper}>\n <TopBar\n className={classNames(styles.topbar, styles[themeName])}\n Corner={() => (\n <Corner\n className={classNames(styles.corner, styles[themeName])}\n name={workspace.name}\n icon={workspace.icon}\n />\n )}\n menu={menuSlot}\n />\n\n <SplitPane className={styles.main} size={246} layout={sidebarOpenness}>\n <Pane className={classNames(styles.sidebar, styles[themeName], !isSidebarOpen && styles.closed)}>\n {sidebar}\n </Pane>\n <HoverSplitter className={styles.splitter}>\n <Collapser\n isOpen={isSidebarOpen}\n onMouseDown={(e) => e.stopPropagation()} // avoid split-pane drag\n onClick={handleSidebarToggle}\n tooltipContent={`${isSidebarOpen ? 'Hide' : 'Show'} side panel`}\n />\n </HoverSplitter>\n <Pane>\n <SlotRouter slot={routeSlot}>\n <Route index element={<WorkspaceOverview />} />\n </SlotRouter>\n </Pane>\n </SplitPane>\n </div>\n </WorkspaceProvider>\n );\n}\nfunction useComponentNotifications() {\n const notifications = useNotifications();\n\n // memo not really needed, but for peace of mind\n return useMemo(\n () => ({\n onComponentAdded: (comps: ComponentModel[]) => {\n const notificationId = notifications.log(\n `added ${pluralize('component', comps.length)}: ${comps.map((comp) => comp.id.toString()).join(', ')}`\n );\n setTimeout(() => notifications.dismiss(notificationId), 12 * 1000);\n },\n\n onComponentRemoved: (ids: ComponentID[]) => {\n const notificationId = notifications.log(\n `removed ${pluralize('component', ids.length)} ${ids.map((id) => id.toString()).join(', ')}`\n );\n setTimeout(() => notifications.dismiss(notificationId), 12 * 1000);\n },\n }),\n [notifications]\n );\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["require","_pluralize","data","_interopRequireDefault","_react","_interopRequireWildcard","_reactRouterDom","_uiFoundationUiNotifications","_uiFoundationUiReactRouter","_uiFoundationUi","_uiFoundationUiButtons","_baseUiSurfacesSplitPane","_baseReactThemes","_baseUiSurfacesSplitPane2","_uiFoundationUi2","_classnames","_useWorkspace","_workspaceOverview","_workspaceProvider","_workspaceModule","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Workspace","routeSlot","menuSlot","sidebar","workspaceUI","onSidebarTogglerChange","reactions","useComponentNotifications","workspace","useWorkspace","current","useThemePicker","isSidebarOpen","handleSidebarToggle","useReducer","x","sidebarOpenness","Layout","row","right","themeName","createElement","className","styles","emptyContainer","setComponents","components","WorkspaceProvider","workspaceWrapper","TopBar","classNames","topbar","Corner","corner","name","icon","menu","SplitPane","main","size","layout","Pane","closed","HoverSplitter","splitter","Collapser","isOpen","onMouseDown","stopPropagation","onClick","tooltipContent","SlotRouter","slot","Route","index","element","WorkspaceOverview","notifications","useNotifications","useMemo","onComponentAdded","comps","notificationId","log","pluralize","length","map","comp","id","toString","join","setTimeout","dismiss","onComponentRemoved","ids"],"sources":["workspace.tsx"],"sourcesContent":["import 'reset-css';\nimport pluralize from 'pluralize';\nimport React, { useReducer, useMemo } from 'react';\nimport { Route } from 'react-router-dom';\nimport type { ComponentModel } from '@teambit/component';\nimport type { ComponentID } from '@teambit/component-id';\nimport { useNotifications } from '@teambit/ui-foundation.ui.notifications.notification-context';\nimport { SlotRouter } from '@teambit/ui-foundation.ui.react-router.slot-router';\nimport type { RouteSlot } from '@teambit/ui-foundation.ui.react-router.slot-router';\nimport { Corner } from '@teambit/ui-foundation.ui.corner';\nimport { Collapser } from '@teambit/ui-foundation.ui.buttons.collapser';\nimport { SplitPane, Pane, Layout } from '@teambit/base-ui.surfaces.split-pane.split-pane';\nimport { useThemePicker } from '@teambit/base-react.themes.theme-switcher';\nimport { HoverSplitter } from '@teambit/base-ui.surfaces.split-pane.hover-splitter';\nimport { TopBar } from '@teambit/ui-foundation.ui.top-bar';\nimport classNames from 'classnames';\n\nimport { useWorkspace } from './use-workspace';\nimport { WorkspaceOverview } from './workspace-overview';\nimport { WorkspaceProvider } from './workspace-provider';\nimport styles from './workspace.module.scss';\nimport { WorkspaceUI } from '../../workspace.ui.runtime';\n\nexport type WorkspaceProps = {\n routeSlot: RouteSlot;\n menuSlot: RouteSlot;\n sidebar: JSX.Element;\n workspaceUI: WorkspaceUI;\n onSidebarTogglerChange: (callback: () => void) => void;\n};\n\n/**\n * main workspace component.\n */\nexport function Workspace({ routeSlot, menuSlot, sidebar, workspaceUI, onSidebarTogglerChange }: WorkspaceProps) {\n const reactions = useComponentNotifications();\n const { workspace } = useWorkspace(reactions);\n const { current } = useThemePicker();\n const [isSidebarOpen, handleSidebarToggle] = useReducer((x) => !x, true);\n const sidebarOpenness = isSidebarOpen ? Layout.row : Layout.right;\n const themeName = current?.themeName || 'light';\n onSidebarTogglerChange(handleSidebarToggle);\n\n if (!workspace) {\n return <div className={styles.emptyContainer}></div>;\n }\n\n workspaceUI.setComponents(workspace.components);\n\n return (\n <WorkspaceProvider workspace={workspace}>\n <div className={styles.workspaceWrapper}>\n <TopBar\n className={classNames(styles.topbar, styles[themeName])}\n Corner={() => (\n <Corner\n className={classNames(styles.corner, styles[themeName])}\n name={workspace.name}\n icon={workspace.icon}\n />\n )}\n menu={menuSlot}\n />\n\n <SplitPane className={styles.main} size={246} layout={sidebarOpenness}>\n <Pane className={classNames(styles.sidebar, styles[themeName], !isSidebarOpen && styles.closed)}>\n {sidebar}\n </Pane>\n <HoverSplitter className={styles.splitter}>\n <Collapser\n isOpen={isSidebarOpen}\n onMouseDown={(e) => e.stopPropagation()} // avoid split-pane drag\n onClick={handleSidebarToggle}\n tooltipContent={`${isSidebarOpen ? 'Hide' : 'Show'} side panel`}\n />\n </HoverSplitter>\n <Pane>\n <SlotRouter slot={routeSlot}>\n <Route index element={<WorkspaceOverview />} />\n </SlotRouter>\n </Pane>\n </SplitPane>\n </div>\n </WorkspaceProvider>\n );\n}\nfunction useComponentNotifications() {\n const notifications = useNotifications();\n\n // memo not really needed, but for peace of mind\n return useMemo(\n () => ({\n onComponentAdded: (comps: ComponentModel[]) => {\n const notificationId = notifications.log(\n `added ${pluralize('component', comps.length)}: ${comps.map((comp) => comp.id.toString()).join(', ')}`\n );\n setTimeout(() => notifications.dismiss(notificationId), 12 * 1000);\n },\n\n onComponentRemoved: (ids: ComponentID[]) => {\n const notificationId = notifications.log(\n `removed ${pluralize('component', ids.length)} ${ids.map((id) => id.toString()).join(', ')}`\n );\n setTimeout(() => notifications.dismiss(notificationId), 12 * 1000);\n },\n }),\n [notifications]\n );\n}\n"],"mappings":"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","ignoreList":[]}