@teambit/workspace 0.0.737 → 0.0.738

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 (72) hide show
  1. package/dist/bit-map.js.map +1 -1
  2. package/dist/build-graph-from-fs.js.map +1 -1
  3. package/dist/capsule.cmd.js.map +1 -1
  4. package/dist/component-config-file/component-config-file.js.map +1 -1
  5. package/dist/component-config-file/exceptions/already-exists.js.map +1 -1
  6. package/dist/component-config-file/exceptions/index.js.map +1 -1
  7. package/dist/component-config-file/index.js.map +1 -1
  8. package/dist/component-tree.widget.js.map +1 -1
  9. package/dist/constants.js.map +1 -1
  10. package/dist/eject-conf.cmd.js.map +1 -1
  11. package/dist/envs-subcommands/envs-replace.cmd.js.map +1 -1
  12. package/dist/envs-subcommands/envs-set.cmd.js.map +1 -1
  13. package/dist/envs-subcommands/envs-unset.cmd.js.map +1 -1
  14. package/dist/events/index.js.map +1 -1
  15. package/dist/events/on-component-add-event.js.map +1 -1
  16. package/dist/events/on-component-change-event.js.map +1 -1
  17. package/dist/events/on-component-removed-event.js.map +1 -1
  18. package/dist/exceptions/dependency-type-not-supported-in-policy.js.map +1 -1
  19. package/dist/exceptions/incorrect-env-aspect.js.map +1 -1
  20. package/dist/exceptions/index.js.map +1 -1
  21. package/dist/index.js.map +1 -1
  22. package/dist/install.cmd.js.map +1 -1
  23. package/dist/link/component-list-links.js.map +1 -1
  24. package/dist/link/core-aspects-links.js.map +1 -1
  25. package/dist/link/get-package-name-from-target.js.map +1 -1
  26. package/dist/link/index.js.map +1 -1
  27. package/dist/link/link-row.js.map +1 -1
  28. package/dist/link/link-to-dir.js.map +1 -1
  29. package/dist/link/link.cmd.js.map +1 -1
  30. package/dist/link/nested-deps-in-nm-links.js.map +1 -1
  31. package/dist/link/rewire-row.js.map +1 -1
  32. package/dist/list.cmd.js.map +1 -1
  33. package/dist/on-component-events.js.map +1 -1
  34. package/dist/pattern.cmd.js.map +1 -1
  35. package/dist/pick-outdated-pkgs.js.map +1 -1
  36. package/dist/pick-outdated-pkgs.spec.js.map +1 -1
  37. package/dist/scope-subcommands/scope-set.cmd.js.map +1 -1
  38. package/dist/types.js.map +1 -1
  39. package/dist/ui/index.js.map +1 -1
  40. package/dist/ui/workspace/default-component.js.map +1 -1
  41. package/dist/ui/workspace/index.js.map +1 -1
  42. package/dist/ui/workspace/use-workspace.js.map +1 -1
  43. package/dist/ui/workspace/workspace-context.js.map +1 -1
  44. package/dist/ui/workspace/workspace-model.js.map +1 -1
  45. package/dist/ui/workspace/workspace-overview/index.js.map +1 -1
  46. package/dist/ui/workspace/workspace-overview/workspace-overview.js.map +1 -1
  47. package/dist/ui/workspace/workspace-provider.js.map +1 -1
  48. package/dist/ui/workspace/workspace.js.map +1 -1
  49. package/dist/uninstall.cmd.js.map +1 -1
  50. package/dist/update.cmd.js.map +1 -1
  51. package/dist/watch/check-types.js.map +1 -1
  52. package/dist/watch/output-formatter.js.map +1 -1
  53. package/dist/watch/watch.cmd.js.map +1 -1
  54. package/dist/watch/watcher.js.map +1 -1
  55. package/dist/workspace-component/component-status.js.map +1 -1
  56. package/dist/workspace-component/index.js.map +1 -1
  57. package/dist/workspace-component/workspace-component-loader.js.map +1 -1
  58. package/dist/workspace-component/workspace-component.js.map +1 -1
  59. package/dist/workspace-section.js.map +1 -1
  60. package/dist/workspace.aspect.js.map +1 -1
  61. package/dist/workspace.composition.js.map +1 -1
  62. package/dist/workspace.graphql.js.map +1 -1
  63. package/dist/workspace.js.map +1 -1
  64. package/dist/workspace.main.runtime.js.map +1 -1
  65. package/dist/workspace.provider.js.map +1 -1
  66. package/dist/workspace.ui-root.js.map +1 -1
  67. package/dist/workspace.ui.drawer.js.map +1 -1
  68. package/dist/workspace.ui.runtime.js.map +1 -1
  69. package/package-tar/teambit-workspace-0.0.738.tgz +0 -0
  70. package/package.json +19 -19
  71. package/{preview-1652930732694.js → preview-1653227849497.js} +2 -2
  72. package/package-tar/teambit-workspace-0.0.737.tgz +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["bit-map.ts"],"names":["BitMap","constructor","legacyBitMap","consumer","addComponentConfig","id","aspectId","config","Error","bitMapEntry","getBitmapEntry","ignoreScopeAndVersion","currentConfig","markAsChanged","removeComponentConfig","markWithMinusIfNotExist","REMOVE_EXTENSION_SPECIAL_SIGN","removeEntireConfig","setEntireConfig","removeDefaultScope","defaultScope","setDefaultScope","write","writeBitMap","ignoreVersion","getComponent","_legacy","getAspectIdFromConfig","componentId","ignoreAspectVersion","undefined","toString","allVersions","Object","keys","filter","startsWith","toStringWithoutVersion","length","BitError","join","renameNewComponent","sourceId","targetId","hasVersion","removeComponent","setComponent"],"mappings":"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","sourcesContent":["import { isEqual } from 'lodash';\nimport { ComponentID } from '@teambit/component-id';\nimport LegacyBitMap from '@teambit/legacy/dist/consumer/bit-map';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport { GetBitMapComponentOptions } from '@teambit/legacy/dist/consumer/bit-map/bit-map';\nimport ComponentMap from '@teambit/legacy/dist/consumer/bit-map/component-map';\nimport { REMOVE_EXTENSION_SPECIAL_SIGN } from '@teambit/legacy/dist/consumer/config';\nimport { BitError } from '@teambit/bit-error';\n/**\n * consider extracting to a new component.\n * (pro: making Workspace aspect smaller. con: it's an implementation details of the workspace)\n */\nexport class BitMap {\n constructor(private legacyBitMap: LegacyBitMap, private consumer: Consumer) {}\n\n /**\n * adds component config to the .bitmap file.\n * later, upon `bit tag`, the data is saved in the scope.\n * returns a boolean indicating whether a change has been made.\n */\n addComponentConfig(id: ComponentID, aspectId: string, config: Record<string, any> = {}): boolean {\n if (!aspectId || typeof aspectId !== 'string') throw new Error(`expect aspectId to be string, got ${aspectId}`);\n const bitMapEntry = this.getBitmapEntry(id, { ignoreScopeAndVersion: true });\n const currentConfig = (bitMapEntry.config ||= {})[aspectId];\n if (isEqual(currentConfig, config)) {\n return false; // no changes\n }\n if (!config) {\n delete bitMapEntry.config[aspectId];\n } else {\n bitMapEntry.config[aspectId] = config;\n }\n this.legacyBitMap.markAsChanged();\n\n return true; // changes have been made\n }\n\n removeComponentConfig(id: ComponentID, aspectId: string, markWithMinusIfNotExist: boolean): boolean {\n if (!aspectId || typeof aspectId !== 'string') throw new Error(`expect aspectId to be string, got ${aspectId}`);\n const bitMapEntry = this.getBitmapEntry(id, { ignoreScopeAndVersion: true });\n const currentConfig = (bitMapEntry.config ||= {})[aspectId];\n if (currentConfig) {\n delete bitMapEntry.config[aspectId];\n } else {\n if (!markWithMinusIfNotExist) {\n return false; // no changes\n }\n bitMapEntry.config[aspectId] = REMOVE_EXTENSION_SPECIAL_SIGN;\n }\n\n this.legacyBitMap.markAsChanged();\n\n return true; // changes have been made\n }\n\n removeEntireConfig(id: ComponentID): boolean {\n const bitMapEntry = this.getBitmapEntry(id, { ignoreScopeAndVersion: true });\n if (!bitMapEntry.config) return false;\n delete bitMapEntry.config;\n this.legacyBitMap.markAsChanged();\n return true;\n }\n\n setEntireConfig(id: ComponentID, config: Record<string, any>) {\n const bitMapEntry = this.getBitmapEntry(id, { ignoreScopeAndVersion: true });\n bitMapEntry.config = config;\n this.legacyBitMap.markAsChanged();\n }\n\n removeDefaultScope(id: ComponentID) {\n const bitMapEntry = this.getBitmapEntry(id, { ignoreScopeAndVersion: true });\n if (bitMapEntry.defaultScope) {\n delete bitMapEntry.defaultScope;\n this.legacyBitMap.markAsChanged();\n }\n }\n\n setDefaultScope(id: ComponentID, defaultScope: string) {\n const bitMapEntry = this.getBitmapEntry(id, { ignoreScopeAndVersion: true });\n bitMapEntry.defaultScope = defaultScope;\n this.legacyBitMap.markAsChanged();\n }\n\n /**\n * write .bitmap object to the filesystem\n */\n async write() {\n await this.consumer.writeBitMap();\n }\n\n /**\n * get the data saved in the .bitmap file for this component-id.\n */\n getBitmapEntry(\n id: ComponentID,\n { ignoreVersion, ignoreScopeAndVersion }: GetBitMapComponentOptions = {}\n ): ComponentMap {\n return this.legacyBitMap.getComponent(id._legacy, { ignoreVersion, ignoreScopeAndVersion });\n }\n\n getAspectIdFromConfig(\n componentId: ComponentID,\n aspectId: ComponentID,\n ignoreAspectVersion = false\n ): string | undefined {\n const bitMapEntry = this.getBitmapEntry(componentId);\n const config = bitMapEntry.config;\n if (!config) {\n return undefined;\n }\n if (config[aspectId.toString()]) {\n return aspectId.toString();\n }\n if (!ignoreAspectVersion) {\n return undefined;\n }\n const allVersions = Object.keys(config).filter((id) => id.startsWith(`${aspectId.toStringWithoutVersion()}@`));\n if (allVersions.length > 1) {\n throw new BitError(\n `error: the same aspect ${\n aspectId.toStringWithoutVersion\n } configured multiple times for \"${componentId.toString()}\"\\n${allVersions.join('\\n')}`\n );\n }\n return allVersions.length === 1 ? allVersions[0] : undefined;\n }\n\n /**\n * components that were not tagged yet are safe to rename them from the .bitmap file.\n */\n renameNewComponent(sourceId: ComponentID, targetId: ComponentID) {\n const bitMapEntry = this.getBitmapEntry(sourceId);\n if (bitMapEntry.id.hasVersion()) {\n throw new Error(`unable to rename tagged or exported component: ${bitMapEntry.id.toString()}`);\n }\n this.legacyBitMap.removeComponent(bitMapEntry.id);\n bitMapEntry.id = targetId._legacy;\n this.legacyBitMap.setComponent(bitMapEntry.id, bitMapEntry);\n }\n}\n"]}
1
+ {"version":3,"names":["BitMap","constructor","legacyBitMap","consumer","addComponentConfig","id","aspectId","config","Error","bitMapEntry","getBitmapEntry","ignoreScopeAndVersion","currentConfig","isEqual","markAsChanged","removeComponentConfig","markWithMinusIfNotExist","REMOVE_EXTENSION_SPECIAL_SIGN","removeEntireConfig","setEntireConfig","removeDefaultScope","defaultScope","setDefaultScope","write","writeBitMap","ignoreVersion","getComponent","_legacy","getAspectIdFromConfig","componentId","ignoreAspectVersion","undefined","toString","allVersions","Object","keys","filter","startsWith","toStringWithoutVersion","length","BitError","join","renameNewComponent","sourceId","targetId","hasVersion","removeComponent","setComponent"],"sources":["bit-map.ts"],"sourcesContent":["import { isEqual } from 'lodash';\nimport { ComponentID } from '@teambit/component-id';\nimport LegacyBitMap from '@teambit/legacy/dist/consumer/bit-map';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport { GetBitMapComponentOptions } from '@teambit/legacy/dist/consumer/bit-map/bit-map';\nimport ComponentMap from '@teambit/legacy/dist/consumer/bit-map/component-map';\nimport { REMOVE_EXTENSION_SPECIAL_SIGN } from '@teambit/legacy/dist/consumer/config';\nimport { BitError } from '@teambit/bit-error';\n/**\n * consider extracting to a new component.\n * (pro: making Workspace aspect smaller. con: it's an implementation details of the workspace)\n */\nexport class BitMap {\n constructor(private legacyBitMap: LegacyBitMap, private consumer: Consumer) {}\n\n /**\n * adds component config to the .bitmap file.\n * later, upon `bit tag`, the data is saved in the scope.\n * returns a boolean indicating whether a change has been made.\n */\n addComponentConfig(id: ComponentID, aspectId: string, config: Record<string, any> = {}): boolean {\n if (!aspectId || typeof aspectId !== 'string') throw new Error(`expect aspectId to be string, got ${aspectId}`);\n const bitMapEntry = this.getBitmapEntry(id, { ignoreScopeAndVersion: true });\n const currentConfig = (bitMapEntry.config ||= {})[aspectId];\n if (isEqual(currentConfig, config)) {\n return false; // no changes\n }\n if (!config) {\n delete bitMapEntry.config[aspectId];\n } else {\n bitMapEntry.config[aspectId] = config;\n }\n this.legacyBitMap.markAsChanged();\n\n return true; // changes have been made\n }\n\n removeComponentConfig(id: ComponentID, aspectId: string, markWithMinusIfNotExist: boolean): boolean {\n if (!aspectId || typeof aspectId !== 'string') throw new Error(`expect aspectId to be string, got ${aspectId}`);\n const bitMapEntry = this.getBitmapEntry(id, { ignoreScopeAndVersion: true });\n const currentConfig = (bitMapEntry.config ||= {})[aspectId];\n if (currentConfig) {\n delete bitMapEntry.config[aspectId];\n } else {\n if (!markWithMinusIfNotExist) {\n return false; // no changes\n }\n bitMapEntry.config[aspectId] = REMOVE_EXTENSION_SPECIAL_SIGN;\n }\n\n this.legacyBitMap.markAsChanged();\n\n return true; // changes have been made\n }\n\n removeEntireConfig(id: ComponentID): boolean {\n const bitMapEntry = this.getBitmapEntry(id, { ignoreScopeAndVersion: true });\n if (!bitMapEntry.config) return false;\n delete bitMapEntry.config;\n this.legacyBitMap.markAsChanged();\n return true;\n }\n\n setEntireConfig(id: ComponentID, config: Record<string, any>) {\n const bitMapEntry = this.getBitmapEntry(id, { ignoreScopeAndVersion: true });\n bitMapEntry.config = config;\n this.legacyBitMap.markAsChanged();\n }\n\n removeDefaultScope(id: ComponentID) {\n const bitMapEntry = this.getBitmapEntry(id, { ignoreScopeAndVersion: true });\n if (bitMapEntry.defaultScope) {\n delete bitMapEntry.defaultScope;\n this.legacyBitMap.markAsChanged();\n }\n }\n\n setDefaultScope(id: ComponentID, defaultScope: string) {\n const bitMapEntry = this.getBitmapEntry(id, { ignoreScopeAndVersion: true });\n bitMapEntry.defaultScope = defaultScope;\n this.legacyBitMap.markAsChanged();\n }\n\n /**\n * write .bitmap object to the filesystem\n */\n async write() {\n await this.consumer.writeBitMap();\n }\n\n /**\n * get the data saved in the .bitmap file for this component-id.\n */\n getBitmapEntry(\n id: ComponentID,\n { ignoreVersion, ignoreScopeAndVersion }: GetBitMapComponentOptions = {}\n ): ComponentMap {\n return this.legacyBitMap.getComponent(id._legacy, { ignoreVersion, ignoreScopeAndVersion });\n }\n\n getAspectIdFromConfig(\n componentId: ComponentID,\n aspectId: ComponentID,\n ignoreAspectVersion = false\n ): string | undefined {\n const bitMapEntry = this.getBitmapEntry(componentId);\n const config = bitMapEntry.config;\n if (!config) {\n return undefined;\n }\n if (config[aspectId.toString()]) {\n return aspectId.toString();\n }\n if (!ignoreAspectVersion) {\n return undefined;\n }\n const allVersions = Object.keys(config).filter((id) => id.startsWith(`${aspectId.toStringWithoutVersion()}@`));\n if (allVersions.length > 1) {\n throw new BitError(\n `error: the same aspect ${\n aspectId.toStringWithoutVersion\n } configured multiple times for \"${componentId.toString()}\"\\n${allVersions.join('\\n')}`\n );\n }\n return allVersions.length === 1 ? allVersions[0] : undefined;\n }\n\n /**\n * components that were not tagged yet are safe to rename them from the .bitmap file.\n */\n renameNewComponent(sourceId: ComponentID, targetId: ComponentID) {\n const bitMapEntry = this.getBitmapEntry(sourceId);\n if (bitMapEntry.id.hasVersion()) {\n throw new Error(`unable to rename tagged or exported component: ${bitMapEntry.id.toString()}`);\n }\n this.legacyBitMap.removeComponent(bitMapEntry.id);\n bitMapEntry.id = targetId._legacy;\n this.legacyBitMap.setComponent(bitMapEntry.id, bitMapEntry);\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["build-graph-from-fs.ts"],"names":["GraphFromFsBuilder","constructor","workspace","logger","ignoreIds","BitIds","shouldLoadItsDeps","LegacyGraph","consumer","buildGraph","ids","debug","length","start","Date","now","components","loadManyComponents","processManyComponents","graph","getAllDepsUnfiltered","component","getAllDependenciesIds","difference","getAllDepsFiltered","depsWithoutIgnore","shouldLoadFunc","deps","depId","shouldLoad","push","fromArray","depth","importObjects","allDependencies","processOneComponent","allDependenciesFlattened","allDeps","map","c","flat","allDepsWithScope","filter","dep","hasScope","scopeComponentsImporter","ScopeComponentsImporter","scope","importMany","uniqFromArray","throwForDependencyNotFound","shouldThrowOnMissingDep","idStr","id","toString","completed","includes","allIds","Object","entries","depsIdsGroupedByType","forEach","depType","depsIds","has","hasNode","Error","setEdge","componentsIds","dependenciesOf","comp","fromGraph","node","loadComponent","setNode","err","ComponentNotFound","BitError","error","componentId","componentMap","bitMap","getComponentIfExist","isOnWorkspace","Boolean","loadComponentForCapsule","componentFromModel","loadComponentFromModel","clone"],"mappings":"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","sourcesContent":["import mapSeries from 'p-map-series';\nimport { flatten } from 'lodash';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport BitIds from '@teambit/legacy/dist/bit-id/bit-ids';\nimport Component from '@teambit/legacy/dist/consumer/component/consumer-component';\nimport LegacyGraph from '@teambit/legacy/dist/scope/graph/graph';\nimport ScopeComponentsImporter from '@teambit/legacy/dist/scope/component-ops/scope-components-importer';\nimport compact from 'lodash.compact';\nimport { BitId } from '@teambit/legacy-bit-id';\nimport { Logger } from '@teambit/logger';\nimport { ComponentNotFound } from '@teambit/scope';\nimport { BitError } from '@teambit/bit-error';\nimport { Workspace } from './workspace';\n\nexport type ShouldIgnoreFunc = (bitId: BitId) => Promise<boolean>;\n\nexport class GraphFromFsBuilder {\n private graph = new LegacyGraph();\n private completed: string[] = [];\n private depth = 1;\n private shouldThrowOnMissingDep = true;\n private consumer: Consumer;\n constructor(\n private workspace: Workspace,\n private logger: Logger,\n private ignoreIds = new BitIds(),\n private shouldLoadItsDeps?: ShouldIgnoreFunc\n ) {\n this.consumer = this.workspace.consumer;\n }\n\n /**\n * create a graph with all dependencies and flattened dependencies of the given components.\n * the nodes are components and the edges has a label of the dependency type.\n *\n * the way how it is done is iterations by depths. each depth we gather all the dependencies of\n * that depths, make sure all objects exist and then check their dependencies for the next depth.\n * once there is no dependency left, we're on the last depth level and the graph is ready.\n *\n * for example, imagine the following graph:\n * A1 -> A2 -> A3\n * B1 -> B2 -> B3\n * C1 -> C2 -> C3\n *\n * where the buildGraph is given [A1, B1, C1].\n * first, it saves all these components as nodes in the graph. then, it finds the dependencies of\n * the next level, in this case they're [A2, B2, C2]. it runs `importMany` in case some objects\n * are missing. then, it loads them all (some from FS, some from the model) and sets the edges\n * between the component and the dependencies.\n * once done, it finds all their dependencies, which are [A3, B3, C3] and repeat the process\n * above. since there are no more dependencies, the graph is completed.\n * in this case, the total depth levels are 3.\n *\n * even with a huge project, there are not many depth levels. by iterating through depth levels\n * we keep performance sane as the importMany doesn't run multiple time and therefore the round\n * trips to the remotes are minimal.\n *\n * normally, one importMany of the seeders is enough as importMany knows to fetch all flattened.\n * however, since this buildGraph is performed on the workspace, a dependency may be new or\n * modified and as such, we don't know its flattened yet.\n */\n async buildGraph(ids: BitId[]): Promise<LegacyGraph> {\n this.logger.debug(`GraphFromFsBuilder, buildGraph with ${ids.length} seeders`);\n const start = Date.now();\n const components = await this.loadManyComponents(ids, '<none>');\n await this.processManyComponents(components);\n this.logger.debug(\n `GraphFromFsBuilder, buildGraph with ${ids.length} seeders completed (${(Date.now() - start) / 1000} sec)`\n );\n return this.graph;\n }\n\n private getAllDepsUnfiltered(component: Component) {\n return component.getAllDependenciesIds().difference(this.ignoreIds);\n }\n\n private async getAllDepsFiltered(component: Component): Promise<BitIds> {\n const depsWithoutIgnore = this.getAllDepsUnfiltered(component);\n const shouldLoadFunc = this.shouldLoadItsDeps;\n if (!shouldLoadFunc) return depsWithoutIgnore;\n const deps = await mapSeries(depsWithoutIgnore, async (depId) => {\n const shouldLoad = await shouldLoadFunc(depId);\n if (!shouldLoad) this.ignoreIds.push(depId);\n return shouldLoad ? depId : null;\n });\n return BitIds.fromArray(compact(deps));\n }\n\n private async processManyComponents(components: Component[]) {\n this.logger.debug(`GraphFromFsBuilder.processManyComponents depth ${this.depth}, ${components.length} components`);\n this.depth += 1;\n await this.importObjects(components);\n const allDependencies = await mapSeries(components, (component) => this.processOneComponent(component));\n const allDependenciesFlattened = flatten(allDependencies);\n if (allDependenciesFlattened.length) await this.processManyComponents(allDependenciesFlattened);\n }\n\n private async importObjects(components: Component[]) {\n const allDeps = components.map((c) => this.getAllDepsUnfiltered(c)).flat();\n const allDepsWithScope = allDeps.filter((dep) => dep.hasScope());\n const scopeComponentsImporter = new ScopeComponentsImporter(this.consumer.scope);\n await scopeComponentsImporter.importMany({\n ids: BitIds.uniqFromArray(allDepsWithScope),\n throwForDependencyNotFound: this.shouldThrowOnMissingDep,\n });\n }\n\n private async processOneComponent(component: Component) {\n const idStr = component.id.toString();\n if (this.completed.includes(idStr)) return [];\n const allIds = await this.getAllDepsFiltered(component);\n\n const allDependencies = await this.loadManyComponents(allIds, idStr);\n Object.entries(component.depsIdsGroupedByType).forEach(([depType, depsIds]) => {\n depsIds.forEach((depId) => {\n if (this.ignoreIds.has(depId)) return;\n if (!this.graph.hasNode(depId.toString())) {\n throw new Error(`buildOneComponent: missing node of ${depId.toString()}`);\n }\n this.graph.setEdge(idStr, depId.toString(), depType);\n });\n });\n this.completed.push(idStr);\n return allDependencies;\n }\n\n private async loadManyComponents(componentsIds: BitId[], dependenciesOf: string): Promise<Component[]> {\n const components = await mapSeries(componentsIds, async (comp: BitId) => {\n const idStr = comp.toString();\n const fromGraph = this.graph.node(idStr);\n if (fromGraph) return fromGraph;\n try {\n const component = await this.loadComponent(comp);\n this.graph.setNode(idStr, component);\n return component;\n } catch (err: any) {\n if (err instanceof ComponentNotFound) {\n throw new BitError(\n `error: component \"${idStr}\" was not found.\\nthis component is a dependency of \"${dependenciesOf}\" and is needed as part of the graph generation`\n );\n }\n this.logger.error(`failed loading dependencies of ${dependenciesOf}`);\n throw err;\n }\n });\n return components;\n }\n private async loadComponent(componentId: BitId): Promise<Component> {\n const componentMap = this.consumer.bitMap.getComponentIfExist(componentId);\n const isOnWorkspace = Boolean(componentMap);\n if (isOnWorkspace) {\n return this.consumer.loadComponentForCapsule(componentId);\n }\n // a dependency might have been installed as a package in the workspace, and as such doesn't\n // have a componentMap.\n const componentFromModel = await this.consumer.loadComponentFromModel(componentId);\n return componentFromModel.clone();\n }\n}\n"]}
1
+ {"version":3,"names":["GraphFromFsBuilder","constructor","workspace","logger","ignoreIds","BitIds","shouldLoadItsDeps","LegacyGraph","consumer","buildGraph","ids","debug","length","start","Date","now","components","loadManyComponents","processManyComponents","graph","getAllDepsUnfiltered","component","getAllDependenciesIds","difference","getAllDepsFiltered","depsWithoutIgnore","shouldLoadFunc","deps","mapSeries","depId","shouldLoad","push","fromArray","compact","depth","importObjects","allDependencies","processOneComponent","allDependenciesFlattened","flatten","allDeps","map","c","flat","allDepsWithScope","filter","dep","hasScope","scopeComponentsImporter","ScopeComponentsImporter","scope","importMany","uniqFromArray","throwForDependencyNotFound","shouldThrowOnMissingDep","idStr","id","toString","completed","includes","allIds","Object","entries","depsIdsGroupedByType","forEach","depType","depsIds","has","hasNode","Error","setEdge","componentsIds","dependenciesOf","comp","fromGraph","node","loadComponent","setNode","err","ComponentNotFound","BitError","error","componentId","componentMap","bitMap","getComponentIfExist","isOnWorkspace","Boolean","loadComponentForCapsule","componentFromModel","loadComponentFromModel","clone"],"sources":["build-graph-from-fs.ts"],"sourcesContent":["import mapSeries from 'p-map-series';\nimport { flatten } from 'lodash';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport BitIds from '@teambit/legacy/dist/bit-id/bit-ids';\nimport Component from '@teambit/legacy/dist/consumer/component/consumer-component';\nimport LegacyGraph from '@teambit/legacy/dist/scope/graph/graph';\nimport ScopeComponentsImporter from '@teambit/legacy/dist/scope/component-ops/scope-components-importer';\nimport compact from 'lodash.compact';\nimport { BitId } from '@teambit/legacy-bit-id';\nimport { Logger } from '@teambit/logger';\nimport { ComponentNotFound } from '@teambit/scope';\nimport { BitError } from '@teambit/bit-error';\nimport { Workspace } from './workspace';\n\nexport type ShouldIgnoreFunc = (bitId: BitId) => Promise<boolean>;\n\nexport class GraphFromFsBuilder {\n private graph = new LegacyGraph();\n private completed: string[] = [];\n private depth = 1;\n private shouldThrowOnMissingDep = true;\n private consumer: Consumer;\n constructor(\n private workspace: Workspace,\n private logger: Logger,\n private ignoreIds = new BitIds(),\n private shouldLoadItsDeps?: ShouldIgnoreFunc\n ) {\n this.consumer = this.workspace.consumer;\n }\n\n /**\n * create a graph with all dependencies and flattened dependencies of the given components.\n * the nodes are components and the edges has a label of the dependency type.\n *\n * the way how it is done is iterations by depths. each depth we gather all the dependencies of\n * that depths, make sure all objects exist and then check their dependencies for the next depth.\n * once there is no dependency left, we're on the last depth level and the graph is ready.\n *\n * for example, imagine the following graph:\n * A1 -> A2 -> A3\n * B1 -> B2 -> B3\n * C1 -> C2 -> C3\n *\n * where the buildGraph is given [A1, B1, C1].\n * first, it saves all these components as nodes in the graph. then, it finds the dependencies of\n * the next level, in this case they're [A2, B2, C2]. it runs `importMany` in case some objects\n * are missing. then, it loads them all (some from FS, some from the model) and sets the edges\n * between the component and the dependencies.\n * once done, it finds all their dependencies, which are [A3, B3, C3] and repeat the process\n * above. since there are no more dependencies, the graph is completed.\n * in this case, the total depth levels are 3.\n *\n * even with a huge project, there are not many depth levels. by iterating through depth levels\n * we keep performance sane as the importMany doesn't run multiple time and therefore the round\n * trips to the remotes are minimal.\n *\n * normally, one importMany of the seeders is enough as importMany knows to fetch all flattened.\n * however, since this buildGraph is performed on the workspace, a dependency may be new or\n * modified and as such, we don't know its flattened yet.\n */\n async buildGraph(ids: BitId[]): Promise<LegacyGraph> {\n this.logger.debug(`GraphFromFsBuilder, buildGraph with ${ids.length} seeders`);\n const start = Date.now();\n const components = await this.loadManyComponents(ids, '<none>');\n await this.processManyComponents(components);\n this.logger.debug(\n `GraphFromFsBuilder, buildGraph with ${ids.length} seeders completed (${(Date.now() - start) / 1000} sec)`\n );\n return this.graph;\n }\n\n private getAllDepsUnfiltered(component: Component) {\n return component.getAllDependenciesIds().difference(this.ignoreIds);\n }\n\n private async getAllDepsFiltered(component: Component): Promise<BitIds> {\n const depsWithoutIgnore = this.getAllDepsUnfiltered(component);\n const shouldLoadFunc = this.shouldLoadItsDeps;\n if (!shouldLoadFunc) return depsWithoutIgnore;\n const deps = await mapSeries(depsWithoutIgnore, async (depId) => {\n const shouldLoad = await shouldLoadFunc(depId);\n if (!shouldLoad) this.ignoreIds.push(depId);\n return shouldLoad ? depId : null;\n });\n return BitIds.fromArray(compact(deps));\n }\n\n private async processManyComponents(components: Component[]) {\n this.logger.debug(`GraphFromFsBuilder.processManyComponents depth ${this.depth}, ${components.length} components`);\n this.depth += 1;\n await this.importObjects(components);\n const allDependencies = await mapSeries(components, (component) => this.processOneComponent(component));\n const allDependenciesFlattened = flatten(allDependencies);\n if (allDependenciesFlattened.length) await this.processManyComponents(allDependenciesFlattened);\n }\n\n private async importObjects(components: Component[]) {\n const allDeps = components.map((c) => this.getAllDepsUnfiltered(c)).flat();\n const allDepsWithScope = allDeps.filter((dep) => dep.hasScope());\n const scopeComponentsImporter = new ScopeComponentsImporter(this.consumer.scope);\n await scopeComponentsImporter.importMany({\n ids: BitIds.uniqFromArray(allDepsWithScope),\n throwForDependencyNotFound: this.shouldThrowOnMissingDep,\n });\n }\n\n private async processOneComponent(component: Component) {\n const idStr = component.id.toString();\n if (this.completed.includes(idStr)) return [];\n const allIds = await this.getAllDepsFiltered(component);\n\n const allDependencies = await this.loadManyComponents(allIds, idStr);\n Object.entries(component.depsIdsGroupedByType).forEach(([depType, depsIds]) => {\n depsIds.forEach((depId) => {\n if (this.ignoreIds.has(depId)) return;\n if (!this.graph.hasNode(depId.toString())) {\n throw new Error(`buildOneComponent: missing node of ${depId.toString()}`);\n }\n this.graph.setEdge(idStr, depId.toString(), depType);\n });\n });\n this.completed.push(idStr);\n return allDependencies;\n }\n\n private async loadManyComponents(componentsIds: BitId[], dependenciesOf: string): Promise<Component[]> {\n const components = await mapSeries(componentsIds, async (comp: BitId) => {\n const idStr = comp.toString();\n const fromGraph = this.graph.node(idStr);\n if (fromGraph) return fromGraph;\n try {\n const component = await this.loadComponent(comp);\n this.graph.setNode(idStr, component);\n return component;\n } catch (err: any) {\n if (err instanceof ComponentNotFound) {\n throw new BitError(\n `error: component \"${idStr}\" was not found.\\nthis component is a dependency of \"${dependenciesOf}\" and is needed as part of the graph generation`\n );\n }\n this.logger.error(`failed loading dependencies of ${dependenciesOf}`);\n throw err;\n }\n });\n return components;\n }\n private async loadComponent(componentId: BitId): Promise<Component> {\n const componentMap = this.consumer.bitMap.getComponentIfExist(componentId);\n const isOnWorkspace = Boolean(componentMap);\n if (isOnWorkspace) {\n return this.consumer.loadComponentForCapsule(componentId);\n }\n // a dependency might have been installed as a package in the workspace, and as such doesn't\n // have a componentMap.\n const componentFromModel = await this.consumer.loadComponentFromModel(componentId);\n return componentFromModel.clone();\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAGA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAKO,MAAMA,kBAAN,CAAyB;EAM9BC,WAAW,CACDC,SADC,EAEDC,MAFC,EAGDC,SAAS,GAAG,KAAIC,iBAAJ,GAHX,EAIDC,iBAJC,EAKT;IAAA,KAJQJ,SAIR,GAJQA,SAIR;IAAA,KAHQC,MAGR,GAHQA,MAGR;IAAA,KAFQC,SAER,GAFQA,SAER;IAAA,KADQE,iBACR,GADQA,iBACR;IAAA,+CAVc,KAAIC,gBAAJ,GAUd;IAAA,mDAT4B,EAS5B;IAAA,+CARc,CAQd;IAAA,iEAPgC,IAOhC;IAAA;IACA,KAAKC,QAAL,GAAgB,KAAKN,SAAL,CAAeM,QAA/B;EACD;EAED;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;EACkB,MAAVC,UAAU,CAACC,GAAD,EAAqC;IACnD,KAAKP,MAAL,CAAYQ,KAAZ,CAAmB,uCAAsCD,GAAG,CAACE,MAAO,UAApE;IACA,MAAMC,KAAK,GAAGC,IAAI,CAACC,GAAL,EAAd;IACA,MAAMC,UAAU,GAAG,MAAM,KAAKC,kBAAL,CAAwBP,GAAxB,EAA6B,QAA7B,CAAzB;IACA,MAAM,KAAKQ,qBAAL,CAA2BF,UAA3B,CAAN;IACA,KAAKb,MAAL,CAAYQ,KAAZ,CACG,uCAAsCD,GAAG,CAACE,MAAO,uBAAsB,CAACE,IAAI,CAACC,GAAL,KAAaF,KAAd,IAAuB,IAAK,OADtG;IAGA,OAAO,KAAKM,KAAZ;EACD;;EAEOC,oBAAoB,CAACC,SAAD,EAAuB;IACjD,OAAOA,SAAS,CAACC,qBAAV,GAAkCC,UAAlC,CAA6C,KAAKnB,SAAlD,CAAP;EACD;;EAE+B,MAAlBoB,kBAAkB,CAACH,SAAD,EAAwC;IACtE,MAAMI,iBAAiB,GAAG,KAAKL,oBAAL,CAA0BC,SAA1B,CAA1B;IACA,MAAMK,cAAc,GAAG,KAAKpB,iBAA5B;IACA,IAAI,CAACoB,cAAL,EAAqB,OAAOD,iBAAP;IACrB,MAAME,IAAI,GAAG,MAAM,IAAAC,qBAAA,EAAUH,iBAAV,EAA6B,MAAOI,KAAP,IAAiB;MAC/D,MAAMC,UAAU,GAAG,MAAMJ,cAAc,CAACG,KAAD,CAAvC;MACA,IAAI,CAACC,UAAL,EAAiB,KAAK1B,SAAL,CAAe2B,IAAf,CAAoBF,KAApB;MACjB,OAAOC,UAAU,GAAGD,KAAH,GAAW,IAA5B;IACD,CAJkB,CAAnB;IAKA,OAAOxB,iBAAA,CAAO2B,SAAP,CAAiB,IAAAC,kBAAA,EAAQN,IAAR,CAAjB,CAAP;EACD;;EAEkC,MAArBT,qBAAqB,CAACF,UAAD,EAA0B;IAC3D,KAAKb,MAAL,CAAYQ,KAAZ,CAAmB,kDAAiD,KAAKuB,KAAM,KAAIlB,UAAU,CAACJ,MAAO,aAArG;IACA,KAAKsB,KAAL,IAAc,CAAd;IACA,MAAM,KAAKC,aAAL,CAAmBnB,UAAnB,CAAN;IACA,MAAMoB,eAAe,GAAG,MAAM,IAAAR,qBAAA,EAAUZ,UAAV,EAAuBK,SAAD,IAAe,KAAKgB,mBAAL,CAAyBhB,SAAzB,CAArC,CAA9B;IACA,MAAMiB,wBAAwB,GAAG,IAAAC,iBAAA,EAAQH,eAAR,CAAjC;IACA,IAAIE,wBAAwB,CAAC1B,MAA7B,EAAqC,MAAM,KAAKM,qBAAL,CAA2BoB,wBAA3B,CAAN;EACtC;;EAE0B,MAAbH,aAAa,CAACnB,UAAD,EAA0B;IACnD,MAAMwB,OAAO,GAAGxB,UAAU,CAACyB,GAAX,CAAgBC,CAAD,IAAO,KAAKtB,oBAAL,CAA0BsB,CAA1B,CAAtB,EAAoDC,IAApD,EAAhB;IACA,MAAMC,gBAAgB,GAAGJ,OAAO,CAACK,MAAR,CAAgBC,GAAD,IAASA,GAAG,CAACC,QAAJ,EAAxB,CAAzB;IACA,MAAMC,uBAAuB,GAAG,KAAIC,kCAAJ,EAA4B,KAAKzC,QAAL,CAAc0C,KAA1C,CAAhC;IACA,MAAMF,uBAAuB,CAACG,UAAxB,CAAmC;MACvCzC,GAAG,EAAEL,iBAAA,CAAO+C,aAAP,CAAqBR,gBAArB,CADkC;MAEvCS,0BAA0B,EAAE,KAAKC;IAFM,CAAnC,CAAN;EAID;;EAEgC,MAAnBjB,mBAAmB,CAAChB,SAAD,EAAuB;IACtD,MAAMkC,KAAK,GAAGlC,SAAS,CAACmC,EAAV,CAAaC,QAAb,EAAd;IACA,IAAI,KAAKC,SAAL,CAAeC,QAAf,CAAwBJ,KAAxB,CAAJ,EAAoC,OAAO,EAAP;IACpC,MAAMK,MAAM,GAAG,MAAM,KAAKpC,kBAAL,CAAwBH,SAAxB,CAArB;IAEA,MAAMe,eAAe,GAAG,MAAM,KAAKnB,kBAAL,CAAwB2C,MAAxB,EAAgCL,KAAhC,CAA9B;IACAM,MAAM,CAACC,OAAP,CAAezC,SAAS,CAAC0C,oBAAzB,EAA+CC,OAA/C,CAAuD,CAAC,CAACC,OAAD,EAAUC,OAAV,CAAD,KAAwB;MAC7EA,OAAO,CAACF,OAAR,CAAiBnC,KAAD,IAAW;QACzB,IAAI,KAAKzB,SAAL,CAAe+D,GAAf,CAAmBtC,KAAnB,CAAJ,EAA+B;;QAC/B,IAAI,CAAC,KAAKV,KAAL,CAAWiD,OAAX,CAAmBvC,KAAK,CAAC4B,QAAN,EAAnB,CAAL,EAA2C;UACzC,MAAM,IAAIY,KAAJ,CAAW,sCAAqCxC,KAAK,CAAC4B,QAAN,EAAiB,EAAjE,CAAN;QACD;;QACD,KAAKtC,KAAL,CAAWmD,OAAX,CAAmBf,KAAnB,EAA0B1B,KAAK,CAAC4B,QAAN,EAA1B,EAA4CQ,OAA5C;MACD,CAND;IAOD,CARD;IASA,KAAKP,SAAL,CAAe3B,IAAf,CAAoBwB,KAApB;IACA,OAAOnB,eAAP;EACD;;EAE+B,MAAlBnB,kBAAkB,CAACsD,aAAD,EAAyBC,cAAzB,EAAuE;IACrG,MAAMxD,UAAU,GAAG,MAAM,IAAAY,qBAAA,EAAU2C,aAAV,EAAyB,MAAOE,IAAP,IAAuB;MACvE,MAAMlB,KAAK,GAAGkB,IAAI,CAAChB,QAAL,EAAd;MACA,MAAMiB,SAAS,GAAG,KAAKvD,KAAL,CAAWwD,IAAX,CAAgBpB,KAAhB,CAAlB;MACA,IAAImB,SAAJ,EAAe,OAAOA,SAAP;;MACf,IAAI;QACF,MAAMrD,SAAS,GAAG,MAAM,KAAKuD,aAAL,CAAmBH,IAAnB,CAAxB;QACA,KAAKtD,KAAL,CAAW0D,OAAX,CAAmBtB,KAAnB,EAA0BlC,SAA1B;QACA,OAAOA,SAAP;MACD,CAJD,CAIE,OAAOyD,GAAP,EAAiB;QACjB,IAAIA,GAAG,YAAYC,0BAAnB,EAAsC;UACpC,MAAM,KAAIC,oBAAJ,EACH,qBAAoBzB,KAAM,wDAAuDiB,cAAe,iDAD7F,CAAN;QAGD;;QACD,KAAKrE,MAAL,CAAY8E,KAAZ,CAAmB,kCAAiCT,cAAe,EAAnE;QACA,MAAMM,GAAN;MACD;IACF,CAjBwB,CAAzB;IAkBA,OAAO9D,UAAP;EACD;;EAC0B,MAAb4D,aAAa,CAACM,WAAD,EAAyC;IAClE,MAAMC,YAAY,GAAG,KAAK3E,QAAL,CAAc4E,MAAd,CAAqBC,mBAArB,CAAyCH,WAAzC,CAArB;IACA,MAAMI,aAAa,GAAGC,OAAO,CAACJ,YAAD,CAA7B;;IACA,IAAIG,aAAJ,EAAmB;MACjB,OAAO,KAAK9E,QAAL,CAAcgF,uBAAd,CAAsCN,WAAtC,CAAP;IACD,CALiE,CAMlE;IACA;;;IACA,MAAMO,kBAAkB,GAAG,MAAM,KAAKjF,QAAL,CAAckF,sBAAd,CAAqCR,WAArC,CAAjC;IACA,OAAOO,kBAAkB,CAACE,KAAnB,EAAP;EACD;;AA7I6B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["capsule.cmd.ts"],"names":["CapsuleCreateCmd","constructor","workspace","isolator","create","componentIds","baseDir","rootBaseDir","alwaysNew","id","installPackages","seedersOnly","Array","isArray","capsuleOptions","installOptions","includeFromNestedHosts","name","ids","resolveMultipleComponentIds","network","isolateComponents","capsules","graphCapsules","report","opts","capsuleOutput","map","capsule","chalk","bold","component","toString","path","join","title","length","green","json","c","CapsuleListCmd","list","workspaceCapsulesRootDir","scopeAspectsCapsulesRootDir","getCapsulesRootDirs","cyan","rootDirs","getCapsulesRootDir","scope","getAspectCapsulePath","CapsuleDeleteCmd","args","all","scopeAspects","capsuleBaseDirToDelete","capsuleBaseDir","deletedDir","deleteCapsules","CapsuleCmd"],"mappings":"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","sourcesContent":["// eslint-disable-next-line max-classes-per-file\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { CapsuleList, IsolateComponentsOptions, IsolatorMain } from '@teambit/isolator';\nimport chalk from 'chalk';\n\nimport { Workspace } from '.';\n\ntype CreateOpts = {\n baseDir?: string;\n rootBaseDir?: string;\n alwaysNew?: boolean;\n seedersOnly?: boolean;\n id: string;\n installPackages?: boolean;\n};\n\nexport class CapsuleCreateCmd implements Command {\n name = 'create [componentIds...]';\n description = `create capsules`;\n group = 'capsules';\n alias = '';\n options = [\n [\n 'b',\n 'base-dir <name>',\n 'set base dir of all capsules (hashed to create the base dir inside the root dir - host path by default)',\n ],\n ['r', 'root-base-dir <name>', 'set root base dir of all capsules (absolute path to use as root dir)'],\n ['a', 'always-new', 'create new environment for capsule'],\n ['s', 'seeders-only', 'create capsules for the seeders only (not for the entire graph)'],\n ['i', 'id <name>', 'reuse capsule of certain name'],\n ['j', 'json', 'json format'],\n ['d', 'install-packages', 'install packages by the package-manager'],\n ['p', 'package-manager <name>', 'npm, yarn or pnpm, default to npm'],\n ] as CommandOptions;\n\n constructor(private workspace: Workspace, private isolator: IsolatorMain) {}\n\n async create(\n [componentIds = []]: [string[]],\n { baseDir, rootBaseDir, alwaysNew = false, id, installPackages = false, seedersOnly = false }: CreateOpts\n ): Promise<CapsuleList> {\n // @todo: why it is not an array?\n if (componentIds && !Array.isArray(componentIds)) componentIds = [componentIds];\n const capsuleOptions: IsolateComponentsOptions = {\n baseDir,\n rootBaseDir,\n installOptions: { installPackages },\n alwaysNew,\n seedersOnly,\n includeFromNestedHosts: true,\n name: id,\n };\n const ids = await this.workspace.resolveMultipleComponentIds(componentIds);\n const network = await this.isolator.isolateComponents(ids, capsuleOptions);\n const capsules = network.graphCapsules;\n return capsules;\n }\n\n async report([componentIds]: [string[]], opts: CreateOpts) {\n // @ts-ignore\n const capsules = await this.create(componentIds, opts);\n const capsuleOutput = capsules\n .map((capsule) => `${chalk.bold(capsule.component.id.toString())} - ${capsule.path}`)\n .join('\\n');\n const title = `${capsules.length} capsule(s) were created successfully`;\n return `${chalk.green(title)}\\n${capsuleOutput}`;\n }\n\n async json([componentIds]: [string[]], opts: CreateOpts) {\n // @ts-ignore\n const capsules = await this.create(componentIds, opts);\n return capsules.map((c) => ({\n id: c.component.id.toString(),\n path: c.path,\n }));\n }\n}\n\nexport class CapsuleListCmd implements Command {\n name = 'list';\n description = `list all capsules`;\n shortDescription = 'list all capsules';\n group = 'capsules';\n alias = '';\n options = [['j', 'json', 'json format']] as CommandOptions;\n\n constructor(private isolator: IsolatorMain, private workspace: Workspace) {}\n\n async report() {\n const list = await this.isolator.list(this.workspace.path);\n const { workspaceCapsulesRootDir, scopeAspectsCapsulesRootDir } = this.getCapsulesRootDirs();\n // TODO: improve output\n return chalk.green(`found ${chalk.cyan(list.capsules.length.toString())} capsule(s) for workspace: ${chalk.cyan(\n list.workspace\n )}\nworkspace capsules root-dir: ${chalk.cyan(workspaceCapsulesRootDir)}\nscope's aspects capsules root-dir: ${chalk.cyan(scopeAspectsCapsulesRootDir)}\nuse --json to get the list of all workspace capsules`);\n }\n\n async json() {\n const list = await this.isolator.list(this.workspace.path);\n const rootDirs = this.getCapsulesRootDirs();\n return { ...list, ...rootDirs };\n }\n\n private getCapsulesRootDirs() {\n const workspaceCapsulesRootDir = this.isolator.getCapsulesRootDir(this.workspace.path);\n const scopeAspectsCapsulesRootDir = this.isolator.getCapsulesRootDir(this.workspace.scope.getAspectCapsulePath());\n\n return { workspaceCapsulesRootDir, scopeAspectsCapsulesRootDir };\n }\n}\n\nexport class CapsuleDeleteCmd implements Command {\n name = 'delete';\n description = `delete capsules. with no args, only workspace's capsules are deleted`;\n shortDescription = `delete capsules`;\n group = 'capsules';\n alias = '';\n options = [\n ['', 'scope-aspects', 'delete scope-aspects capsules'],\n ['a', 'all', 'delete all capsules for all workspaces and scopes'],\n ] as CommandOptions;\n\n constructor(private isolator: IsolatorMain, private workspace: Workspace) {}\n\n async report(args: [], { all, scopeAspects }: { all: boolean; scopeAspects: boolean }) {\n const capsuleBaseDirToDelete = (): string | null => {\n if (all) return null;\n if (scopeAspects) return this.workspace.scope.getAspectCapsulePath();\n return this.workspace.path;\n };\n const capsuleBaseDir = capsuleBaseDirToDelete();\n const deletedDir = await this.isolator.deleteCapsules(capsuleBaseDir);\n return chalk.green(`the following capsules dir has been deleted ${chalk.bold(deletedDir)}`);\n }\n}\n\nexport class CapsuleCmd implements Command {\n name = 'capsule <sub-command>';\n shortDescription = 'manage capsules';\n description = `manage capsules.\na capsule is a directory contains the component code, isolated from the workspace.\nnormally, capsules are created during the build process, the component files are copied and the packages are installed\nvia the configured package-manager. the purpose is to compile/test them in isolation to make sure they will work for\nother users after publishing/exporting them.`;\n alias = '';\n group = 'capsules';\n commands: Command[] = [];\n options = [] as CommandOptions;\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n async report(args: [string]) {\n // it should never be here. Yargs throws an error before reaching this method.\n return `Please specify a sub-command`;\n }\n}\n"]}
1
+ {"version":3,"names":["CapsuleCreateCmd","constructor","workspace","isolator","create","componentIds","baseDir","rootBaseDir","alwaysNew","id","installPackages","seedersOnly","Array","isArray","capsuleOptions","installOptions","includeFromNestedHosts","name","ids","resolveMultipleComponentIds","network","isolateComponents","capsules","graphCapsules","report","opts","capsuleOutput","map","capsule","chalk","bold","component","toString","path","join","title","length","green","json","c","CapsuleListCmd","list","workspaceCapsulesRootDir","scopeAspectsCapsulesRootDir","getCapsulesRootDirs","cyan","rootDirs","getCapsulesRootDir","scope","getAspectCapsulePath","CapsuleDeleteCmd","args","all","scopeAspects","capsuleBaseDirToDelete","capsuleBaseDir","deletedDir","deleteCapsules","CapsuleCmd"],"sources":["capsule.cmd.ts"],"sourcesContent":["// eslint-disable-next-line max-classes-per-file\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { CapsuleList, IsolateComponentsOptions, IsolatorMain } from '@teambit/isolator';\nimport chalk from 'chalk';\n\nimport { Workspace } from '.';\n\ntype CreateOpts = {\n baseDir?: string;\n rootBaseDir?: string;\n alwaysNew?: boolean;\n seedersOnly?: boolean;\n id: string;\n installPackages?: boolean;\n};\n\nexport class CapsuleCreateCmd implements Command {\n name = 'create [componentIds...]';\n description = `create capsules`;\n group = 'capsules';\n alias = '';\n options = [\n [\n 'b',\n 'base-dir <name>',\n 'set base dir of all capsules (hashed to create the base dir inside the root dir - host path by default)',\n ],\n ['r', 'root-base-dir <name>', 'set root base dir of all capsules (absolute path to use as root dir)'],\n ['a', 'always-new', 'create new environment for capsule'],\n ['s', 'seeders-only', 'create capsules for the seeders only (not for the entire graph)'],\n ['i', 'id <name>', 'reuse capsule of certain name'],\n ['j', 'json', 'json format'],\n ['d', 'install-packages', 'install packages by the package-manager'],\n ['p', 'package-manager <name>', 'npm, yarn or pnpm, default to npm'],\n ] as CommandOptions;\n\n constructor(private workspace: Workspace, private isolator: IsolatorMain) {}\n\n async create(\n [componentIds = []]: [string[]],\n { baseDir, rootBaseDir, alwaysNew = false, id, installPackages = false, seedersOnly = false }: CreateOpts\n ): Promise<CapsuleList> {\n // @todo: why it is not an array?\n if (componentIds && !Array.isArray(componentIds)) componentIds = [componentIds];\n const capsuleOptions: IsolateComponentsOptions = {\n baseDir,\n rootBaseDir,\n installOptions: { installPackages },\n alwaysNew,\n seedersOnly,\n includeFromNestedHosts: true,\n name: id,\n };\n const ids = await this.workspace.resolveMultipleComponentIds(componentIds);\n const network = await this.isolator.isolateComponents(ids, capsuleOptions);\n const capsules = network.graphCapsules;\n return capsules;\n }\n\n async report([componentIds]: [string[]], opts: CreateOpts) {\n // @ts-ignore\n const capsules = await this.create(componentIds, opts);\n const capsuleOutput = capsules\n .map((capsule) => `${chalk.bold(capsule.component.id.toString())} - ${capsule.path}`)\n .join('\\n');\n const title = `${capsules.length} capsule(s) were created successfully`;\n return `${chalk.green(title)}\\n${capsuleOutput}`;\n }\n\n async json([componentIds]: [string[]], opts: CreateOpts) {\n // @ts-ignore\n const capsules = await this.create(componentIds, opts);\n return capsules.map((c) => ({\n id: c.component.id.toString(),\n path: c.path,\n }));\n }\n}\n\nexport class CapsuleListCmd implements Command {\n name = 'list';\n description = `list all capsules`;\n shortDescription = 'list all capsules';\n group = 'capsules';\n alias = '';\n options = [['j', 'json', 'json format']] as CommandOptions;\n\n constructor(private isolator: IsolatorMain, private workspace: Workspace) {}\n\n async report() {\n const list = await this.isolator.list(this.workspace.path);\n const { workspaceCapsulesRootDir, scopeAspectsCapsulesRootDir } = this.getCapsulesRootDirs();\n // TODO: improve output\n return chalk.green(`found ${chalk.cyan(list.capsules.length.toString())} capsule(s) for workspace: ${chalk.cyan(\n list.workspace\n )}\nworkspace capsules root-dir: ${chalk.cyan(workspaceCapsulesRootDir)}\nscope's aspects capsules root-dir: ${chalk.cyan(scopeAspectsCapsulesRootDir)}\nuse --json to get the list of all workspace capsules`);\n }\n\n async json() {\n const list = await this.isolator.list(this.workspace.path);\n const rootDirs = this.getCapsulesRootDirs();\n return { ...list, ...rootDirs };\n }\n\n private getCapsulesRootDirs() {\n const workspaceCapsulesRootDir = this.isolator.getCapsulesRootDir(this.workspace.path);\n const scopeAspectsCapsulesRootDir = this.isolator.getCapsulesRootDir(this.workspace.scope.getAspectCapsulePath());\n\n return { workspaceCapsulesRootDir, scopeAspectsCapsulesRootDir };\n }\n}\n\nexport class CapsuleDeleteCmd implements Command {\n name = 'delete';\n description = `delete capsules. with no args, only workspace's capsules are deleted`;\n shortDescription = `delete capsules`;\n group = 'capsules';\n alias = '';\n options = [\n ['', 'scope-aspects', 'delete scope-aspects capsules'],\n ['a', 'all', 'delete all capsules for all workspaces and scopes'],\n ] as CommandOptions;\n\n constructor(private isolator: IsolatorMain, private workspace: Workspace) {}\n\n async report(args: [], { all, scopeAspects }: { all: boolean; scopeAspects: boolean }) {\n const capsuleBaseDirToDelete = (): string | null => {\n if (all) return null;\n if (scopeAspects) return this.workspace.scope.getAspectCapsulePath();\n return this.workspace.path;\n };\n const capsuleBaseDir = capsuleBaseDirToDelete();\n const deletedDir = await this.isolator.deleteCapsules(capsuleBaseDir);\n return chalk.green(`the following capsules dir has been deleted ${chalk.bold(deletedDir)}`);\n }\n}\n\nexport class CapsuleCmd implements Command {\n name = 'capsule <sub-command>';\n shortDescription = 'manage capsules';\n description = `manage capsules.\na capsule is a directory contains the component code, isolated from the workspace.\nnormally, capsules are created during the build process, the component files are copied and the packages are installed\nvia the configured package-manager. the purpose is to compile/test them in isolation to make sure they will work for\nother users after publishing/exporting them.`;\n alias = '';\n group = 'capsules';\n commands: Command[] = [];\n options = [] as CommandOptions;\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n async report(args: [string]) {\n // it should never be here. Yargs throws an error before reaching this method.\n return `Please specify a sub-command`;\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["component-config-file.ts"],"names":["DEFAULT_INDENT","DEFAULT_NEWLINE","ComponentConfigFile","constructor","componentId","aspects","componentDir","propagate","options","indent","newLine","defaultScope","load","aspectListFactory","outsideDefaultScope","filePath","composePath","isExist","fs","pathExists","undefined","content","readFile","parsed","parseComponentJsonContent","amount","ComponentID","fromObject","ExtensionDataList","fromConfigObject","extensions","Boolean","componentRootFolder","path","join","COMPONENT_CONFIG_FILE_NAME","write","json","toJson","override","AlreadyExistsError","writeJsonSync","spaces","EOL","addAspect","aspectId","config","resolveComponentId","existing","get","aspectEntry","aspectEntryFromConfigObject","entries","push","removeAspect","markWithMinusIfNotExist","aspectList","withoutEntries","REMOVE_EXTENSION_SPECIAL_SIGN","id","legacyEntry","AspectEntry","toObject","toConfigObject","toString","str","dir","JSON","parse","err","Error","message"],"mappings":"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","sourcesContent":["import { ComponentID, AspectList, AspectEntry, ResolveComponentIdFunc } from '@teambit/component';\nimport { COMPONENT_CONFIG_FILE_NAME } from '@teambit/legacy/dist/constants';\nimport { ExtensionDataList, configEntryToDataEntry } from '@teambit/legacy/dist/consumer/config/extension-data';\nimport { PathOsBasedAbsolute } from '@teambit/legacy/dist/utils/path';\nimport detectIndent from 'detect-indent';\nimport detectNewline from 'detect-newline';\nimport fs from 'fs-extra';\nimport path from 'path';\nimport stringifyPackage from 'stringify-package';\nimport { REMOVE_EXTENSION_SPECIAL_SIGN } from '@teambit/legacy/dist/consumer/config';\n\nimport { AlreadyExistsError } from './exceptions';\n\ninterface ComponentConfigFileOptions {\n indent: number;\n newLine: '\\r\\n' | '\\n' | undefined;\n}\n\ninterface WriteConfigFileOptions {\n override?: boolean;\n}\n\ninterface ComponentConfigFileJson {\n componentId: any;\n // TODO: think if we want to change it to aspects\n extensions: any;\n propagate: boolean;\n defaultScope?: string;\n}\n\nconst DEFAULT_INDENT = 2;\nconst DEFAULT_NEWLINE = '\\n';\n\nexport class ComponentConfigFile {\n constructor(\n public componentId: ComponentID,\n public aspects: AspectList,\n private componentDir: PathOsBasedAbsolute,\n public propagate: boolean = false,\n private options: ComponentConfigFileOptions = { indent: DEFAULT_INDENT, newLine: DEFAULT_NEWLINE },\n public defaultScope?: string\n ) {}\n\n static async load(\n componentDir: PathOsBasedAbsolute,\n aspectListFactory: (extensionDataList: ExtensionDataList) => Promise<AspectList>,\n outsideDefaultScope?: string\n ): Promise<ComponentConfigFile | undefined> {\n const filePath = ComponentConfigFile.composePath(componentDir);\n const isExist = await fs.pathExists(filePath);\n if (!isExist) {\n return undefined;\n }\n const content = await fs.readFile(filePath, 'utf-8');\n const parsed: ComponentConfigFileJson = parseComponentJsonContent(content, componentDir);\n const indent = detectIndent(content).amount;\n const newLine = detectNewline(content);\n const componentId = ComponentID.fromObject(parsed.componentId, parsed.defaultScope || outsideDefaultScope);\n const aspects = await aspectListFactory(ExtensionDataList.fromConfigObject(parsed.extensions));\n\n return new ComponentConfigFile(\n componentId,\n aspects,\n componentDir,\n Boolean(parsed.propagate),\n { indent, newLine },\n parsed.defaultScope\n );\n }\n\n static composePath(componentRootFolder: string) {\n return path.join(componentRootFolder, COMPONENT_CONFIG_FILE_NAME);\n }\n\n async write(options: WriteConfigFileOptions = {}): Promise<void> {\n const json = this.toJson();\n const filePath = ComponentConfigFile.composePath(this.componentDir);\n const isExist = await fs.pathExists(filePath);\n if (isExist && !options.override) {\n throw new AlreadyExistsError(filePath);\n }\n return fs.writeJsonSync(filePath, json, { spaces: this.options.indent, EOL: this.options.newLine });\n }\n\n async addAspect(aspectId: string, config: any, resolveComponentId: ResolveComponentIdFunc) {\n const existing = this.aspects.get(aspectId);\n if (existing) {\n existing.config = config;\n } else {\n const aspectEntry = await this.aspectEntryFromConfigObject(aspectId, config, resolveComponentId);\n this.aspects.entries.push(aspectEntry);\n }\n }\n\n async removeAspect(aspectId: string, markWithMinusIfNotExist: boolean, resolveComponentId: ResolveComponentIdFunc) {\n const existing = this.aspects.get(aspectId);\n if (existing) {\n const aspectList = this.aspects.withoutEntries([aspectId]);\n this.aspects = aspectList;\n } else if (markWithMinusIfNotExist) {\n await this.addAspect(aspectId, REMOVE_EXTENSION_SPECIAL_SIGN, resolveComponentId);\n }\n }\n\n private async aspectEntryFromConfigObject(id: string, config: any, resolveComponentId: ResolveComponentIdFunc) {\n const aspectId = await resolveComponentId(id);\n const legacyEntry = configEntryToDataEntry(id, config);\n return new AspectEntry(aspectId, legacyEntry);\n }\n\n toJson(): ComponentConfigFileJson {\n return {\n componentId: this.componentId.toObject(),\n propagate: this.propagate,\n defaultScope: this.defaultScope,\n extensions: this.aspects.toConfigObject(),\n };\n }\n\n toString(): string {\n const json = this.toJson();\n return stringifyPackage(json, this.options.indent, this.options.newLine);\n }\n}\n\nfunction parseComponentJsonContent(str: string, dir: string) {\n try {\n return JSON.parse(str);\n } catch (err: any) {\n throw new Error(`failed parsing component.json file at ${dir}. original error: ${err.message}`);\n }\n}\n"]}
1
+ {"version":3,"names":["DEFAULT_INDENT","DEFAULT_NEWLINE","ComponentConfigFile","constructor","componentId","aspects","componentDir","propagate","options","indent","newLine","defaultScope","load","aspectListFactory","outsideDefaultScope","filePath","composePath","isExist","fs","pathExists","undefined","content","readFile","parsed","parseComponentJsonContent","detectIndent","amount","detectNewline","ComponentID","fromObject","ExtensionDataList","fromConfigObject","extensions","Boolean","componentRootFolder","path","join","COMPONENT_CONFIG_FILE_NAME","write","json","toJson","override","AlreadyExistsError","writeJsonSync","spaces","EOL","addAspect","aspectId","config","resolveComponentId","existing","get","aspectEntry","aspectEntryFromConfigObject","entries","push","removeAspect","markWithMinusIfNotExist","aspectList","withoutEntries","REMOVE_EXTENSION_SPECIAL_SIGN","id","legacyEntry","configEntryToDataEntry","AspectEntry","toObject","toConfigObject","toString","stringifyPackage","str","dir","JSON","parse","err","Error","message"],"sources":["component-config-file.ts"],"sourcesContent":["import { ComponentID, AspectList, AspectEntry, ResolveComponentIdFunc } from '@teambit/component';\nimport { COMPONENT_CONFIG_FILE_NAME } from '@teambit/legacy/dist/constants';\nimport { ExtensionDataList, configEntryToDataEntry } from '@teambit/legacy/dist/consumer/config/extension-data';\nimport { PathOsBasedAbsolute } from '@teambit/legacy/dist/utils/path';\nimport detectIndent from 'detect-indent';\nimport detectNewline from 'detect-newline';\nimport fs from 'fs-extra';\nimport path from 'path';\nimport stringifyPackage from 'stringify-package';\nimport { REMOVE_EXTENSION_SPECIAL_SIGN } from '@teambit/legacy/dist/consumer/config';\n\nimport { AlreadyExistsError } from './exceptions';\n\ninterface ComponentConfigFileOptions {\n indent: number;\n newLine: '\\r\\n' | '\\n' | undefined;\n}\n\ninterface WriteConfigFileOptions {\n override?: boolean;\n}\n\ninterface ComponentConfigFileJson {\n componentId: any;\n // TODO: think if we want to change it to aspects\n extensions: any;\n propagate: boolean;\n defaultScope?: string;\n}\n\nconst DEFAULT_INDENT = 2;\nconst DEFAULT_NEWLINE = '\\n';\n\nexport class ComponentConfigFile {\n constructor(\n public componentId: ComponentID,\n public aspects: AspectList,\n private componentDir: PathOsBasedAbsolute,\n public propagate: boolean = false,\n private options: ComponentConfigFileOptions = { indent: DEFAULT_INDENT, newLine: DEFAULT_NEWLINE },\n public defaultScope?: string\n ) {}\n\n static async load(\n componentDir: PathOsBasedAbsolute,\n aspectListFactory: (extensionDataList: ExtensionDataList) => Promise<AspectList>,\n outsideDefaultScope?: string\n ): Promise<ComponentConfigFile | undefined> {\n const filePath = ComponentConfigFile.composePath(componentDir);\n const isExist = await fs.pathExists(filePath);\n if (!isExist) {\n return undefined;\n }\n const content = await fs.readFile(filePath, 'utf-8');\n const parsed: ComponentConfigFileJson = parseComponentJsonContent(content, componentDir);\n const indent = detectIndent(content).amount;\n const newLine = detectNewline(content);\n const componentId = ComponentID.fromObject(parsed.componentId, parsed.defaultScope || outsideDefaultScope);\n const aspects = await aspectListFactory(ExtensionDataList.fromConfigObject(parsed.extensions));\n\n return new ComponentConfigFile(\n componentId,\n aspects,\n componentDir,\n Boolean(parsed.propagate),\n { indent, newLine },\n parsed.defaultScope\n );\n }\n\n static composePath(componentRootFolder: string) {\n return path.join(componentRootFolder, COMPONENT_CONFIG_FILE_NAME);\n }\n\n async write(options: WriteConfigFileOptions = {}): Promise<void> {\n const json = this.toJson();\n const filePath = ComponentConfigFile.composePath(this.componentDir);\n const isExist = await fs.pathExists(filePath);\n if (isExist && !options.override) {\n throw new AlreadyExistsError(filePath);\n }\n return fs.writeJsonSync(filePath, json, { spaces: this.options.indent, EOL: this.options.newLine });\n }\n\n async addAspect(aspectId: string, config: any, resolveComponentId: ResolveComponentIdFunc) {\n const existing = this.aspects.get(aspectId);\n if (existing) {\n existing.config = config;\n } else {\n const aspectEntry = await this.aspectEntryFromConfigObject(aspectId, config, resolveComponentId);\n this.aspects.entries.push(aspectEntry);\n }\n }\n\n async removeAspect(aspectId: string, markWithMinusIfNotExist: boolean, resolveComponentId: ResolveComponentIdFunc) {\n const existing = this.aspects.get(aspectId);\n if (existing) {\n const aspectList = this.aspects.withoutEntries([aspectId]);\n this.aspects = aspectList;\n } else if (markWithMinusIfNotExist) {\n await this.addAspect(aspectId, REMOVE_EXTENSION_SPECIAL_SIGN, resolveComponentId);\n }\n }\n\n private async aspectEntryFromConfigObject(id: string, config: any, resolveComponentId: ResolveComponentIdFunc) {\n const aspectId = await resolveComponentId(id);\n const legacyEntry = configEntryToDataEntry(id, config);\n return new AspectEntry(aspectId, legacyEntry);\n }\n\n toJson(): ComponentConfigFileJson {\n return {\n componentId: this.componentId.toObject(),\n propagate: this.propagate,\n defaultScope: this.defaultScope,\n extensions: this.aspects.toConfigObject(),\n };\n }\n\n toString(): string {\n const json = this.toJson();\n return stringifyPackage(json, this.options.indent, this.options.newLine);\n }\n}\n\nfunction parseComponentJsonContent(str: string, dir: string) {\n try {\n return JSON.parse(str);\n } catch (err: any) {\n throw new Error(`failed parsing component.json file at ${dir}. original error: ${err.message}`);\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["already-exists.ts"],"names":["AlreadyExistsError","BitError","constructor","filePath"],"mappings":";;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEO,MAAMA,kBAAN,SAAiCC,oBAAjC,CAA0C;AAC/CC,EAAAA,WAAW,CAACC,QAAD,EAAmB;AAC5B,UAAO,kBAAiBA,QAAS,8DAAjC;AACD;;AAH8C","sourcesContent":["import { BitError } from '@teambit/bit-error';\n\nexport class AlreadyExistsError extends BitError {\n constructor(filePath: string) {\n super(`config file at ${filePath} already exist. use override in case you want to override it`);\n }\n}\n"]}
1
+ {"version":3,"names":["AlreadyExistsError","BitError","constructor","filePath"],"sources":["already-exists.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\n\nexport class AlreadyExistsError extends BitError {\n constructor(filePath: string) {\n super(`config file at ${filePath} already exist. use override in case you want to override it`);\n }\n}\n"],"mappings":";;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEO,MAAMA,kBAAN,SAAiCC,oBAAjC,CAA0C;EAC/CC,WAAW,CAACC,QAAD,EAAmB;IAC5B,MAAO,kBAAiBA,QAAS,8DAAjC;EACD;;AAH8C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA","sourcesContent":["export { AlreadyExistsError } from './already-exists';\n"]}
1
+ {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export { AlreadyExistsError } from './already-exists';\n"],"mappings":";;;;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA","sourcesContent":["export { ComponentConfigFile } from './component-config-file';\nexport { AlreadyExistsError } from './exceptions';\n"]}
1
+ {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export { ComponentConfigFile } from './component-config-file';\nexport { AlreadyExistsError } from './exceptions';\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["component-tree.widget.tsx"],"names":["ComponentTreeWidget","component","workspace","WorkspaceContext","workspaceComponent","getComponent","id","lanes","isInCurrentLane","isInViewedLane","viewedLane","status","issuesCount"],"mappings":";;;;;;;;;;;;;;;;;;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;;;;;AAEO,MAAMA,mBAAN,CAAuD;AAAA;AAAA,oDACnD,CAAC;AAAEC,MAAAA;AAAF,KAAD,KAA2C;AAClD,YAAMC,SAAS,GAAG,yBAAWC,oCAAX,CAAlB;AACA,YAAMC,kBAAkB,GAAGF,SAAS,CAACG,YAAV,CAAuBJ,SAAS,CAACK,EAAjC,CAA3B;AACA,YAAMC,KAAK,GAAG,iCAAd;AAEA,YAAMC,eAAe,GAAG,sBAAQ,MAAM;AACpC,eAAO,CAAAJ,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,YAAAA,kBAAkB,CAAEE,EAApB,MAA0BC,KAA1B,aAA0BA,KAA1B,uBAA0BA,KAAK,CAAEE,cAAP,CAAsBL,kBAAkB,CAACE,EAAzC,CAA1B,CAAP;AACD,OAFuB,EAErB,CAACC,KAAD,aAACA,KAAD,uBAACA,KAAK,CAAEG,UAAR,EAAoBN,kBAApB,aAAoBA,kBAApB,uBAAoBA,kBAAkB,CAAEE,EAAxC,CAFqB,CAAxB;AAIA,UAAI,CAACF,kBAAL,EAAyB,OAAO,IAAP;AAEzB,0BACE,+BAAC,sCAAD;AACE,QAAA,MAAM,EAAEA,kBAAkB,CAACO,MAD7B;AAEE,QAAA,WAAW,EAAEP,kBAAkB,CAACQ,WAFlC;AAGE,QAAA,eAAe,EAAEJ;AAHnB,QADF;AAOD,KAnB2D;AAAA;;AAAA","sourcesContent":["import { ComponentTreeNode, ComponentTreeNodeProps } from '@teambit/component-tree';\nimport { ComponentStatusResolver } from '@teambit/component.ui.component-status-resolver';\nimport React, { useContext, useMemo } from 'react';\n\nimport { useLanesContext } from '@teambit/lanes.ui.lanes';\nimport { WorkspaceContext } from './ui/workspace/workspace-context';\n\nexport class ComponentTreeWidget implements ComponentTreeNode {\n widget = ({ component }: ComponentTreeNodeProps) => {\n const workspace = useContext(WorkspaceContext);\n const workspaceComponent = workspace.getComponent(component.id);\n const lanes = useLanesContext();\n\n const isInCurrentLane = useMemo(() => {\n return workspaceComponent?.id && lanes?.isInViewedLane(workspaceComponent.id);\n }, [lanes?.viewedLane, workspaceComponent?.id]);\n\n if (!workspaceComponent) return null;\n\n return (\n <ComponentStatusResolver\n status={workspaceComponent.status}\n issuesCount={workspaceComponent.issuesCount}\n isInCurrentLane={isInCurrentLane}\n />\n );\n };\n}\n"]}
1
+ {"version":3,"names":["ComponentTreeWidget","component","workspace","useContext","WorkspaceContext","workspaceComponent","getComponent","id","lanes","useLanesContext","isInCurrentLane","useMemo","isInViewedLane","viewedLane","status","issuesCount"],"sources":["component-tree.widget.tsx"],"sourcesContent":["import { ComponentTreeNode, ComponentTreeNodeProps } from '@teambit/component-tree';\nimport { ComponentStatusResolver } from '@teambit/component.ui.component-status-resolver';\nimport React, { useContext, useMemo } from 'react';\n\nimport { useLanesContext } from '@teambit/lanes.ui.lanes';\nimport { WorkspaceContext } from './ui/workspace/workspace-context';\n\nexport class ComponentTreeWidget implements ComponentTreeNode {\n widget = ({ component }: ComponentTreeNodeProps) => {\n const workspace = useContext(WorkspaceContext);\n const workspaceComponent = workspace.getComponent(component.id);\n const lanes = useLanesContext();\n\n const isInCurrentLane = useMemo(() => {\n return workspaceComponent?.id && lanes?.isInViewedLane(workspaceComponent.id);\n }, [lanes?.viewedLane, workspaceComponent?.id]);\n\n if (!workspaceComponent) return null;\n\n return (\n <ComponentStatusResolver\n status={workspaceComponent.status}\n issuesCount={workspaceComponent.issuesCount}\n isInCurrentLane={isInCurrentLane}\n />\n );\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;;;;;AAEO,MAAMA,mBAAN,CAAuD;EAAA;IAAA,gDACnD,CAAC;MAAEC;IAAF,CAAD,KAA2C;MAClD,MAAMC,SAAS,GAAG,IAAAC,mBAAA,EAAWC,oCAAX,CAAlB;MACA,MAAMC,kBAAkB,GAAGH,SAAS,CAACI,YAAV,CAAuBL,SAAS,CAACM,EAAjC,CAA3B;MACA,MAAMC,KAAK,GAAG,IAAAC,0BAAA,GAAd;MAEA,MAAMC,eAAe,GAAG,IAAAC,gBAAA,EAAQ,MAAM;QACpC,OAAO,CAAAN,kBAAkB,SAAlB,IAAAA,kBAAkB,WAAlB,YAAAA,kBAAkB,CAAEE,EAApB,MAA0BC,KAA1B,aAA0BA,KAA1B,uBAA0BA,KAAK,CAAEI,cAAP,CAAsBP,kBAAkB,CAACE,EAAzC,CAA1B,CAAP;MACD,CAFuB,EAErB,CAACC,KAAD,aAACA,KAAD,uBAACA,KAAK,CAAEK,UAAR,EAAoBR,kBAApB,aAAoBA,kBAApB,uBAAoBA,kBAAkB,CAAEE,EAAxC,CAFqB,CAAxB;MAIA,IAAI,CAACF,kBAAL,EAAyB,OAAO,IAAP;MAEzB,oBACE,+BAAC,sCAAD;QACE,MAAM,EAAEA,kBAAkB,CAACS,MAD7B;QAEE,WAAW,EAAET,kBAAkB,CAACU,WAFlC;QAGE,eAAe,EAAEL;MAHnB,EADF;IAOD,CAnB2D;EAAA;;AAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["constants.ts"],"names":["EXT_NAME"],"mappings":";;;;;;AAAO,MAAMA,QAAQ,GAAG,6BAAjB","sourcesContent":["export const EXT_NAME = 'teambit.workspace/workspace';\n"]}
1
+ {"version":3,"names":["EXT_NAME"],"sources":["constants.ts"],"sourcesContent":["export const EXT_NAME = 'teambit.workspace/workspace';\n"],"mappings":";;;;;;AAAO,MAAMA,QAAQ,GAAG,6BAAjB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["eject-conf.cmd.ts"],"names":["EjectConfCmd","constructor","workspace","report","args","options","ejectResult","json","paths","map","result","configPath","p","path","relative","join","chalk","green","bold","pattern","ejectOptions","propagate","override","componentIds","idsByPattern","results","ejectMultipleConfigs"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAWe,MAAMA,YAAN,CAAsC;AAWnDC,EAAAA,WAAW,CAASC,SAAT,EAA+B;AAAA,SAAtBA,SAAsB,GAAtBA,SAAsB;AAAA,kDAVnC,sBAUmC;AAAA,yDAT5B,iEAS4B;AAAA,iEARnB,GAAE,+BAAa,YAAb,CAA2B,EAQV;AAAA,mDAPlC,EAOkC;AAAA,mDANlC,aAMkC;AAAA,qDALhC,CACR,CAAC,GAAD,EAAM,WAAN,EAAmB,wCAAnB,CADQ,EAER,CAAC,GAAD,EAAM,UAAN,EAAkB,wBAAlB,CAFQ,CAKgC;AAAE;;AAEhC,QAANC,MAAM,CAACC,IAAD,EAAsBC,OAAtB,EAAqE;AAC/E,UAAMC,WAAW,GAAG,MAAM,KAAKC,IAAL,CAAUH,IAAV,EAAgBC,OAAhB,CAA1B;AACA,UAAMG,KAAK,GAAGF,WAAW,CACtBG,GADW,CACNC,MAAD,IAAYA,MAAM,CAACC,UADZ,EAEXF,GAFW,CAENG,CAAD,IAAOC,gBAAKC,QAAL,CAAc,KAAKZ,SAAL,CAAeW,IAA7B,EAAmCD,CAAnC,CAFA,EAGXG,IAHW,CAGN,IAHM,CAAd;AAIA,WAAOC,iBAAMC,KAAN,CAAa;AACxB,EAAED,iBAAME,IAAN,CAAWV,KAAX,CAAkB,EADT,CAAP;AAED;;AAES,QAAJD,IAAI,CAAC,CAACY,OAAD,CAAD,EAA2Bd,OAA3B,EAAqF;AAC7F,UAAMe,YAAY,GAAGf,OAArB;;AACA,QAAIe,YAAY,CAACC,SAAb,KAA2B,MAA/B,EAAuC;AACrCD,MAAAA,YAAY,CAACC,SAAb,GAAyB,IAAzB;AACD;;AACD,QAAID,YAAY,CAACE,QAAb,KAA0B,MAA9B,EAAsC;AACpCF,MAAAA,YAAY,CAACE,QAAb,GAAwB,IAAxB;AACD;;AAED,UAAMC,YAAY,GAAG,MAAM,KAAKrB,SAAL,CAAesB,YAAf,CAA4BL,OAA5B,CAA3B;AACA,UAAMM,OAAO,GAAG,MAAM,KAAKvB,SAAL,CAAewB,oBAAf,CAAoCH,YAApC,EAAkDH,YAAlD,CAAtB;AACA,WAAOK,OAAP;AACD;;AAnCkD","sourcesContent":["import path from 'path';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport chalk from 'chalk';\nimport { PATTERN_HELP } from '@teambit/legacy/dist/constants';\n\nimport { EjectConfOptions, EjectConfResult, Workspace } from './workspace';\n\ntype EjectConfArgs = [string];\n// From the cli we might get those as string in case we run it like --propagate true (return string) as opposed to only --propagate\ntype EjectConfOptionsCLI = {\n propagate: string | boolean | undefined;\n override: string | boolean | undefined;\n};\n\nexport default class EjectConfCmd implements Command {\n name = 'eject-conf <pattern>';\n description = 'eject components configuration (create a `component.json` file)';\n extendedDescription = `${PATTERN_HELP('eject-conf')}`;\n alias = '';\n group = 'development';\n options = [\n ['p', 'propagate', 'mark propagate true in the config file'],\n ['o', 'override', 'override file if exist'],\n ] as CommandOptions;\n\n constructor(private workspace: Workspace) {}\n\n async report(args: EjectConfArgs, options: EjectConfOptionsCLI): Promise<string> {\n const ejectResult = await this.json(args, options);\n const paths = ejectResult\n .map((result) => result.configPath)\n .map((p) => path.relative(this.workspace.path, p))\n .join('\\n');\n return chalk.green(`successfully ejected config in the following path(s)\n${chalk.bold(paths)}`);\n }\n\n async json([pattern]: EjectConfArgs, options: EjectConfOptionsCLI): Promise<EjectConfResult[]> {\n const ejectOptions = options;\n if (ejectOptions.propagate === 'true') {\n ejectOptions.propagate = true;\n }\n if (ejectOptions.override === 'true') {\n ejectOptions.override = true;\n }\n\n const componentIds = await this.workspace.idsByPattern(pattern);\n const results = await this.workspace.ejectMultipleConfigs(componentIds, ejectOptions as EjectConfOptions);\n return results;\n }\n}\n"]}
1
+ {"version":3,"names":["EjectConfCmd","constructor","workspace","PATTERN_HELP","report","args","options","ejectResult","json","paths","map","result","configPath","p","path","relative","join","chalk","green","bold","pattern","ejectOptions","propagate","override","componentIds","idsByPattern","results","ejectMultipleConfigs"],"sources":["eject-conf.cmd.ts"],"sourcesContent":["import path from 'path';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport chalk from 'chalk';\nimport { PATTERN_HELP } from '@teambit/legacy/dist/constants';\n\nimport { EjectConfOptions, EjectConfResult, Workspace } from './workspace';\n\ntype EjectConfArgs = [string];\n// From the cli we might get those as string in case we run it like --propagate true (return string) as opposed to only --propagate\ntype EjectConfOptionsCLI = {\n propagate: string | boolean | undefined;\n override: string | boolean | undefined;\n};\n\nexport default class EjectConfCmd implements Command {\n name = 'eject-conf <pattern>';\n description = 'eject components configuration (create a `component.json` file)';\n extendedDescription = `${PATTERN_HELP('eject-conf')}`;\n alias = '';\n group = 'development';\n options = [\n ['p', 'propagate', 'mark propagate true in the config file'],\n ['o', 'override', 'override file if exist'],\n ] as CommandOptions;\n\n constructor(private workspace: Workspace) {}\n\n async report(args: EjectConfArgs, options: EjectConfOptionsCLI): Promise<string> {\n const ejectResult = await this.json(args, options);\n const paths = ejectResult\n .map((result) => result.configPath)\n .map((p) => path.relative(this.workspace.path, p))\n .join('\\n');\n return chalk.green(`successfully ejected config in the following path(s)\n${chalk.bold(paths)}`);\n }\n\n async json([pattern]: EjectConfArgs, options: EjectConfOptionsCLI): Promise<EjectConfResult[]> {\n const ejectOptions = options;\n if (ejectOptions.propagate === 'true') {\n ejectOptions.propagate = true;\n }\n if (ejectOptions.override === 'true') {\n ejectOptions.override = true;\n }\n\n const componentIds = await this.workspace.idsByPattern(pattern);\n const results = await this.workspace.ejectMultipleConfigs(componentIds, ejectOptions as EjectConfOptions);\n return results;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAWe,MAAMA,YAAN,CAAsC;EAWnDC,WAAW,CAASC,SAAT,EAA+B;IAAA,KAAtBA,SAAsB,GAAtBA,SAAsB;IAAA,8CAVnC,sBAUmC;IAAA,qDAT5B,iEAS4B;IAAA,6DARnB,GAAE,IAAAC,yBAAA,EAAa,YAAb,CAA2B,EAQV;IAAA,+CAPlC,EAOkC;IAAA,+CANlC,aAMkC;IAAA,iDALhC,CACR,CAAC,GAAD,EAAM,WAAN,EAAmB,wCAAnB,CADQ,EAER,CAAC,GAAD,EAAM,UAAN,EAAkB,wBAAlB,CAFQ,CAKgC;EAAE;;EAEhC,MAANC,MAAM,CAACC,IAAD,EAAsBC,OAAtB,EAAqE;IAC/E,MAAMC,WAAW,GAAG,MAAM,KAAKC,IAAL,CAAUH,IAAV,EAAgBC,OAAhB,CAA1B;IACA,MAAMG,KAAK,GAAGF,WAAW,CACtBG,GADW,CACNC,MAAD,IAAYA,MAAM,CAACC,UADZ,EAEXF,GAFW,CAENG,CAAD,IAAOC,eAAA,CAAKC,QAAL,CAAc,KAAKb,SAAL,CAAeY,IAA7B,EAAmCD,CAAnC,CAFA,EAGXG,IAHW,CAGN,IAHM,CAAd;IAIA,OAAOC,gBAAA,CAAMC,KAAN,CAAa;AACxB,EAAED,gBAAA,CAAME,IAAN,CAAWV,KAAX,CAAkB,EADT,CAAP;EAED;;EAES,MAAJD,IAAI,CAAC,CAACY,OAAD,CAAD,EAA2Bd,OAA3B,EAAqF;IAC7F,MAAMe,YAAY,GAAGf,OAArB;;IACA,IAAIe,YAAY,CAACC,SAAb,KAA2B,MAA/B,EAAuC;MACrCD,YAAY,CAACC,SAAb,GAAyB,IAAzB;IACD;;IACD,IAAID,YAAY,CAACE,QAAb,KAA0B,MAA9B,EAAsC;MACpCF,YAAY,CAACE,QAAb,GAAwB,IAAxB;IACD;;IAED,MAAMC,YAAY,GAAG,MAAM,KAAKtB,SAAL,CAAeuB,YAAf,CAA4BL,OAA5B,CAA3B;IACA,MAAMM,OAAO,GAAG,MAAM,KAAKxB,SAAL,CAAeyB,oBAAf,CAAoCH,YAApC,EAAkDH,YAAlD,CAAtB;IACA,OAAOK,OAAP;EACD;;AAnCkD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["envs-replace.cmd.ts"],"names":["EnvsReplaceCmd","constructor","workspace","report","oldEnv","env","envId","resolveComponentId","components","getComponentsUsingEnv","componentIds","map","comp","id","setEnvToComponents","chalk","bold","toString","compId","join"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAGO,MAAMA,cAAN,CAAwC;AAM7CC,EAAAA,WAAW,CAASC,SAAT,EAA+B;AAAA,SAAtBA,SAAsB,GAAtBA,SAAsB;AAAA,kDALnC,6BAKmC;AAAA,yDAJ5B,+EAI4B;AAAA,qDAHhC,EAGgC;AAAA,mDAFlC,aAEkC;AAAE;;AAEhC,QAANC,MAAM,CAAC,CAACC,MAAD,EAASC,GAAT,CAAD,EAAkC;AAC5C,UAAMC,KAAK,GAAG,MAAM,KAAKJ,SAAL,CAAeK,kBAAf,CAAkCF,GAAlC,CAApB;AACA,UAAMG,UAAU,GAAG,MAAM,KAAKN,SAAL,CAAeO,qBAAf,CAAqCL,MAArC,EAA6C,IAA7C,EAAmD,IAAnD,CAAzB;AACA,UAAMM,YAAY,GAAGF,UAAU,CAACG,GAAX,CAAgBC,IAAD,IAAUA,IAAI,CAACC,EAA9B,CAArB;AACA,UAAM,KAAKX,SAAL,CAAeY,kBAAf,CAAkCR,KAAlC,EAAyCI,YAAzC,CAAN;AACA,WAAQ,SAAQK,iBAAMC,IAAN,CAAWV,KAAK,CAACW,QAAN,EAAX,CAA6B;AACjD,EAAEP,YAAY,CAACC,GAAb,CAAkBO,MAAD,IAAYA,MAAM,CAACD,QAAP,EAA7B,EAAgDE,IAAhD,CAAqD,IAArD,CAA2D,EADzD;AAED;;AAf4C","sourcesContent":["import { Command } from '@teambit/cli';\nimport chalk from 'chalk';\nimport { Workspace } from '../workspace';\n\nexport class EnvsReplaceCmd implements Command {\n name = 'replace <old-env> <new-env>';\n description = 'replace an existing env with another env for all components using the old env';\n options = [];\n group = 'development';\n\n constructor(private workspace: Workspace) {}\n\n async report([oldEnv, env]: [string, string]) {\n const envId = await this.workspace.resolveComponentId(env);\n const components = await this.workspace.getComponentsUsingEnv(oldEnv, true, true);\n const componentIds = components.map((comp) => comp.id);\n await this.workspace.setEnvToComponents(envId, componentIds);\n return `added ${chalk.bold(envId.toString())} env to the following component(s):\n${componentIds.map((compId) => compId.toString()).join('\\n')}`;\n }\n}\n"]}
1
+ {"version":3,"names":["EnvsReplaceCmd","constructor","workspace","report","oldEnv","env","envId","resolveComponentId","components","getComponentsUsingEnv","componentIds","map","comp","id","setEnvToComponents","chalk","bold","toString","compId","join"],"sources":["envs-replace.cmd.ts"],"sourcesContent":["import { Command } from '@teambit/cli';\nimport chalk from 'chalk';\nimport { Workspace } from '../workspace';\n\nexport class EnvsReplaceCmd implements Command {\n name = 'replace <old-env> <new-env>';\n description = 'replace an existing env with another env for all components using the old env';\n options = [];\n group = 'development';\n\n constructor(private workspace: Workspace) {}\n\n async report([oldEnv, env]: [string, string]) {\n const envId = await this.workspace.resolveComponentId(env);\n const components = await this.workspace.getComponentsUsingEnv(oldEnv, true, true);\n const componentIds = components.map((comp) => comp.id);\n await this.workspace.setEnvToComponents(envId, componentIds);\n return `added ${chalk.bold(envId.toString())} env to the following component(s):\n${componentIds.map((compId) => compId.toString()).join('\\n')}`;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAGO,MAAMA,cAAN,CAAwC;EAM7CC,WAAW,CAASC,SAAT,EAA+B;IAAA,KAAtBA,SAAsB,GAAtBA,SAAsB;IAAA,8CALnC,6BAKmC;IAAA,qDAJ5B,+EAI4B;IAAA,iDAHhC,EAGgC;IAAA,+CAFlC,aAEkC;EAAE;;EAEhC,MAANC,MAAM,CAAC,CAACC,MAAD,EAASC,GAAT,CAAD,EAAkC;IAC5C,MAAMC,KAAK,GAAG,MAAM,KAAKJ,SAAL,CAAeK,kBAAf,CAAkCF,GAAlC,CAApB;IACA,MAAMG,UAAU,GAAG,MAAM,KAAKN,SAAL,CAAeO,qBAAf,CAAqCL,MAArC,EAA6C,IAA7C,EAAmD,IAAnD,CAAzB;IACA,MAAMM,YAAY,GAAGF,UAAU,CAACG,GAAX,CAAgBC,IAAD,IAAUA,IAAI,CAACC,EAA9B,CAArB;IACA,MAAM,KAAKX,SAAL,CAAeY,kBAAf,CAAkCR,KAAlC,EAAyCI,YAAzC,CAAN;IACA,OAAQ,SAAQK,gBAAA,CAAMC,IAAN,CAAWV,KAAK,CAACW,QAAN,EAAX,CAA6B;AACjD,EAAEP,YAAY,CAACC,GAAb,CAAkBO,MAAD,IAAYA,MAAM,CAACD,QAAP,EAA7B,EAAgDE,IAAhD,CAAqD,IAArD,CAA2D,EADzD;EAED;;AAf4C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["envs-set.cmd.ts"],"names":["EnvsSetCmd","constructor","workspace","report","pattern","env","envId","resolveComponentId","componentIds","idsByPattern","setEnvToComponents","chalk","bold","toString","map","compId","join"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAGO,MAAMA,UAAN,CAAoC;AAOzCC,EAAAA,WAAW,CAASC,SAAT,EAA+B;AAAA,SAAtBA,SAAsB,GAAtBA,SAAsB;AAAA,kDANnC,qBAMmC;AAAA,yDAL5B,qCAK4B;AAAA,qDAJhC,EAIgC;AAAA,mDAHlC,aAGkC;AAAA,iEAFnB,GAAE,+BAAa,SAAb,CAAwB,EAEP;AAAE;;AAEhC,QAANC,MAAM,CAAC,CAACC,OAAD,EAAUC,GAAV,CAAD,EAAmC;AAC7C,UAAMC,KAAK,GAAG,MAAM,KAAKJ,SAAL,CAAeK,kBAAf,CAAkCF,GAAlC,CAApB;AACA,UAAMG,YAAY,GAAG,MAAM,KAAKN,SAAL,CAAeO,YAAf,CAA4BL,OAA5B,CAA3B;AACA,UAAM,KAAKF,SAAL,CAAeQ,kBAAf,CAAkCJ,KAAlC,EAAyCE,YAAzC,CAAN;AACA,WAAQ,SAAQG,iBAAMC,IAAN,CAAWN,KAAK,CAACO,QAAN,EAAX,CAA6B;AACjD,EAAEL,YAAY,CAACM,GAAb,CAAkBC,MAAD,IAAYA,MAAM,CAACF,QAAP,EAA7B,EAAgDG,IAAhD,CAAqD,IAArD,CAA2D,EADzD;AAED;;AAfwC","sourcesContent":["import { Command } from '@teambit/cli';\nimport chalk from 'chalk';\nimport { PATTERN_HELP } from '@teambit/legacy/dist/constants';\nimport { Workspace } from '../workspace';\n\nexport class EnvsSetCmd implements Command {\n name = 'set <pattern> <env>';\n description = 'set an environment for component(s)';\n options = [];\n group = 'development';\n extendedDescription = `${PATTERN_HELP('env set')}`;\n\n constructor(private workspace: Workspace) {}\n\n async report([pattern, env]: [string, string]) {\n const envId = await this.workspace.resolveComponentId(env);\n const componentIds = await this.workspace.idsByPattern(pattern);\n await this.workspace.setEnvToComponents(envId, componentIds);\n return `added ${chalk.bold(envId.toString())} env to the following component(s):\n${componentIds.map((compId) => compId.toString()).join('\\n')}`;\n }\n}\n"]}
1
+ {"version":3,"names":["EnvsSetCmd","constructor","workspace","PATTERN_HELP","report","pattern","env","envId","resolveComponentId","componentIds","idsByPattern","setEnvToComponents","chalk","bold","toString","map","compId","join"],"sources":["envs-set.cmd.ts"],"sourcesContent":["import { Command } from '@teambit/cli';\nimport chalk from 'chalk';\nimport { PATTERN_HELP } from '@teambit/legacy/dist/constants';\nimport { Workspace } from '../workspace';\n\nexport class EnvsSetCmd implements Command {\n name = 'set <pattern> <env>';\n description = 'set an environment for component(s)';\n options = [];\n group = 'development';\n extendedDescription = `${PATTERN_HELP('env set')}`;\n\n constructor(private workspace: Workspace) {}\n\n async report([pattern, env]: [string, string]) {\n const envId = await this.workspace.resolveComponentId(env);\n const componentIds = await this.workspace.idsByPattern(pattern);\n await this.workspace.setEnvToComponents(envId, componentIds);\n return `added ${chalk.bold(envId.toString())} env to the following component(s):\n${componentIds.map((compId) => compId.toString()).join('\\n')}`;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAGO,MAAMA,UAAN,CAAoC;EAOzCC,WAAW,CAASC,SAAT,EAA+B;IAAA,KAAtBA,SAAsB,GAAtBA,SAAsB;IAAA,8CANnC,qBAMmC;IAAA,qDAL5B,qCAK4B;IAAA,iDAJhC,EAIgC;IAAA,+CAHlC,aAGkC;IAAA,6DAFnB,GAAE,IAAAC,yBAAA,EAAa,SAAb,CAAwB,EAEP;EAAE;;EAEhC,MAANC,MAAM,CAAC,CAACC,OAAD,EAAUC,GAAV,CAAD,EAAmC;IAC7C,MAAMC,KAAK,GAAG,MAAM,KAAKL,SAAL,CAAeM,kBAAf,CAAkCF,GAAlC,CAApB;IACA,MAAMG,YAAY,GAAG,MAAM,KAAKP,SAAL,CAAeQ,YAAf,CAA4BL,OAA5B,CAA3B;IACA,MAAM,KAAKH,SAAL,CAAeS,kBAAf,CAAkCJ,KAAlC,EAAyCE,YAAzC,CAAN;IACA,OAAQ,SAAQG,gBAAA,CAAMC,IAAN,CAAWN,KAAK,CAACO,QAAN,EAAX,CAA6B;AACjD,EAAEL,YAAY,CAACM,GAAb,CAAkBC,MAAD,IAAYA,MAAM,CAACF,QAAP,EAA7B,EAAgDG,IAAhD,CAAqD,IAArD,CAA2D,EADzD;EAED;;AAfwC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["envs-unset.cmd.ts"],"names":["EnvsUnsetCmd","constructor","workspace","report","pattern","componentIds","idsByPattern","changed","unsetEnvFromComponents","map","id","toString","join"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAGO,MAAMA,YAAN,CAAsC;AAO3CC,EAAAA,WAAW,CAASC,SAAT,EAA+B;AAAA,SAAtBA,SAAsB,GAAtBA,SAAsB;AAAA,kDANnC,mBAMmC;AAAA,yDAL5B,wCAK4B;AAAA,qDAJhC,EAIgC;AAAA,mDAHlC,aAGkC;AAAA,iEAFnB,GAAE,+BAAa,WAAb,CAA0B,EAET;AAAE;;AAEhC,QAANC,MAAM,CAAC,CAACC,OAAD,CAAD,EAAsB;AAChC,UAAMC,YAAY,GAAG,MAAM,KAAKH,SAAL,CAAeI,YAAf,CAA4BF,OAA5B,CAA3B;AACA,UAAM;AAAEG,MAAAA;AAAF,QAAc,MAAM,KAAKL,SAAL,CAAeM,sBAAf,CAAsCH,YAAtC,CAA1B;AACA,WAAQ;AACZ,EAAEE,OAAO,CAACE,GAAR,CAAaC,EAAD,IAAQA,EAAE,CAACC,QAAH,EAApB,EAAmCC,IAAnC,CAAwC,IAAxC,CAA8C,EAD5C;AAED;;AAd0C","sourcesContent":["import { Command } from '@teambit/cli';\nimport { PATTERN_HELP } from '@teambit/legacy/dist/constants';\nimport { Workspace } from '../workspace';\n\nexport class EnvsUnsetCmd implements Command {\n name = 'unset <component>';\n description = 'unset an environment from component(s)';\n options = [];\n group = 'development';\n extendedDescription = `${PATTERN_HELP('env unset')}`;\n\n constructor(private workspace: Workspace) {}\n\n async report([pattern]: [string]) {\n const componentIds = await this.workspace.idsByPattern(pattern);\n const { changed } = await this.workspace.unsetEnvFromComponents(componentIds);\n return `successfully removed env from the following component(s):\n${changed.map((id) => id.toString()).join('\\n')}`;\n }\n}\n"]}
1
+ {"version":3,"names":["EnvsUnsetCmd","constructor","workspace","PATTERN_HELP","report","pattern","componentIds","idsByPattern","changed","unsetEnvFromComponents","map","id","toString","join"],"sources":["envs-unset.cmd.ts"],"sourcesContent":["import { Command } from '@teambit/cli';\nimport { PATTERN_HELP } from '@teambit/legacy/dist/constants';\nimport { Workspace } from '../workspace';\n\nexport class EnvsUnsetCmd implements Command {\n name = 'unset <component>';\n description = 'unset an environment from component(s)';\n options = [];\n group = 'development';\n extendedDescription = `${PATTERN_HELP('env unset')}`;\n\n constructor(private workspace: Workspace) {}\n\n async report([pattern]: [string]) {\n const componentIds = await this.workspace.idsByPattern(pattern);\n const { changed } = await this.workspace.unsetEnvFromComponents(componentIds);\n return `successfully removed env from the following component(s):\n${changed.map((id) => id.toString()).join('\\n')}`;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAGO,MAAMA,YAAN,CAAsC;EAO3CC,WAAW,CAASC,SAAT,EAA+B;IAAA,KAAtBA,SAAsB,GAAtBA,SAAsB;IAAA,8CANnC,mBAMmC;IAAA,qDAL5B,wCAK4B;IAAA,iDAJhC,EAIgC;IAAA,+CAHlC,aAGkC;IAAA,6DAFnB,GAAE,IAAAC,yBAAA,EAAa,WAAb,CAA0B,EAET;EAAE;;EAEhC,MAANC,MAAM,CAAC,CAACC,OAAD,CAAD,EAAsB;IAChC,MAAMC,YAAY,GAAG,MAAM,KAAKJ,SAAL,CAAeK,YAAf,CAA4BF,OAA5B,CAA3B;IACA,MAAM;MAAEG;IAAF,IAAc,MAAM,KAAKN,SAAL,CAAeO,sBAAf,CAAsCH,YAAtC,CAA1B;IACA,OAAQ;AACZ,EAAEE,OAAO,CAACE,GAAR,CAAaC,EAAD,IAAQA,EAAE,CAACC,QAAH,EAApB,EAAmCC,IAAnC,CAAwC,IAAxC,CAA8C,EAD5C;EAED;;AAd0C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":[],"mappings":";;;;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './on-component-change-event';\nexport * from './on-component-add-event';\nexport * from './on-component-removed-event';\n"]}
1
+ {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from './on-component-change-event';\nexport * from './on-component-add-event';\nexport * from './on-component-removed-event';\n"],"mappings":";;;;;;AAAA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["on-component-add-event.ts"],"names":["OnComponentAddEventData","constructor","idStr","hook","OnComponentAddEvent","BitBaseEvent","timestamp","TYPE"],"mappings":";;;;;;;;;;;;;;;;;;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AADA;AAGA,MAAMA,uBAAN,CAA8B;AAC5BC,EAAAA,WAAW,CAAUC,KAAV,EAA0BC,IAA1B,EAAgC;AAAA,SAAtBD,KAAsB,GAAtBA,KAAsB;AAAA,SAANC,IAAM,GAANA,IAAM;AAAE;;AADjB;;AAIvB,MAAMC,mBAAN,SAAkCC,sBAAlC,CAAwE;AAG7EJ,EAAAA,WAAW,CAAUK,SAAV,EAA8BJ,KAA9B,EAA8CC,IAA9C,EAAoD;AAC7D,UAAMC,mBAAmB,CAACG,IAA1B,EAAgC,OAAhC,EAAyCD,SAAzC,EAAoD,IAAIN,uBAAJ,CAA4BE,KAA5B,EAAmCC,IAAnC,CAApD;AAD6D,SAA1CG,SAA0C,GAA1CA,SAA0C;AAAA,SAAtBJ,KAAsB,GAAtBA,KAAsB;AAAA,SAANC,IAAM,GAANA,IAAM;AAE9D;;AAL4E;;;gCAAlEC,mB,UACY,kB","sourcesContent":["/* eslint-disable max-classes-per-file */\nimport { BitBaseEvent } from '@teambit/pubsub';\n\nclass OnComponentAddEventData {\n constructor(readonly idStr, readonly hook) {}\n}\n\nexport class OnComponentAddEvent extends BitBaseEvent<OnComponentAddEventData> {\n static readonly TYPE = 'on-component-add';\n\n constructor(readonly timestamp, readonly idStr, readonly hook) {\n super(OnComponentAddEvent.TYPE, '0.0.1', timestamp, new OnComponentAddEventData(idStr, hook));\n }\n}\n"]}
1
+ {"version":3,"names":["OnComponentAddEventData","constructor","idStr","hook","OnComponentAddEvent","BitBaseEvent","timestamp","TYPE"],"sources":["on-component-add-event.ts"],"sourcesContent":["/* eslint-disable max-classes-per-file */\nimport { BitBaseEvent } from '@teambit/pubsub';\n\nclass OnComponentAddEventData {\n constructor(readonly idStr, readonly hook) {}\n}\n\nexport class OnComponentAddEvent extends BitBaseEvent<OnComponentAddEventData> {\n static readonly TYPE = 'on-component-add';\n\n constructor(readonly timestamp, readonly idStr, readonly hook) {\n super(OnComponentAddEvent.TYPE, '0.0.1', timestamp, new OnComponentAddEventData(idStr, hook));\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AADA;AAGA,MAAMA,uBAAN,CAA8B;EAC5BC,WAAW,CAAUC,KAAV,EAA0BC,IAA1B,EAAgC;IAAA,KAAtBD,KAAsB,GAAtBA,KAAsB;IAAA,KAANC,IAAM,GAANA,IAAM;EAAE;;AADjB;;AAIvB,MAAMC,mBAAN,SAAkCC,sBAAlC,CAAwE;EAG7EJ,WAAW,CAAUK,SAAV,EAA8BJ,KAA9B,EAA8CC,IAA9C,EAAoD;IAC7D,MAAMC,mBAAmB,CAACG,IAA1B,EAAgC,OAAhC,EAAyCD,SAAzC,EAAoD,IAAIN,uBAAJ,CAA4BE,KAA5B,EAAmCC,IAAnC,CAApD;IAD6D,KAA1CG,SAA0C,GAA1CA,SAA0C;IAAA,KAAtBJ,KAAsB,GAAtBA,KAAsB;IAAA,KAANC,IAAM,GAANA,IAAM;EAE9D;;AAL4E;;;gCAAlEC,mB,UACY,kB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["on-component-change-event.ts"],"names":["OnComponentChangeEventData","constructor","idStr","hook","OnComponentChangeEvent","BitBaseEvent","timestamp","TYPE"],"mappings":";;;;;;;;;;;;;;;;;;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AADA;AAGA,MAAMA,0BAAN,CAAiC;AAC/BC,EAAAA,WAAW,CAAUC,KAAV,EAA0BC,IAA1B,EAAgC;AAAA,SAAtBD,KAAsB,GAAtBA,KAAsB;AAAA,SAANC,IAAM,GAANA,IAAM;AAAE;;AADd;;AAI1B,MAAMC,sBAAN,SAAqCC,sBAArC,CAA8E;AAGnFJ,EAAAA,WAAW,CAAUK,SAAV,EAA8BJ,KAA9B,EAA8CC,IAA9C,EAAoD;AAC7D,UAAMC,sBAAsB,CAACG,IAA7B,EAAmC,OAAnC,EAA4CD,SAA5C,EAAuD,IAAIN,0BAAJ,CAA+BE,KAA/B,EAAsCC,IAAtC,CAAvD;AAD6D,SAA1CG,SAA0C,GAA1CA,SAA0C;AAAA,SAAtBJ,KAAsB,GAAtBA,KAAsB;AAAA,SAANC,IAAM,GAANA,IAAM;AAE9D;;AALkF;;;gCAAxEC,sB,UACY,qB","sourcesContent":["/* eslint-disable max-classes-per-file */\nimport { BitBaseEvent } from '@teambit/pubsub';\n\nclass OnComponentChangeEventData {\n constructor(readonly idStr, readonly hook) {}\n}\n\nexport class OnComponentChangeEvent extends BitBaseEvent<OnComponentChangeEventData> {\n static readonly TYPE = 'on-component-change';\n\n constructor(readonly timestamp, readonly idStr, readonly hook) {\n super(OnComponentChangeEvent.TYPE, '0.0.1', timestamp, new OnComponentChangeEventData(idStr, hook));\n }\n}\n"]}
1
+ {"version":3,"names":["OnComponentChangeEventData","constructor","idStr","hook","OnComponentChangeEvent","BitBaseEvent","timestamp","TYPE"],"sources":["on-component-change-event.ts"],"sourcesContent":["/* eslint-disable max-classes-per-file */\nimport { BitBaseEvent } from '@teambit/pubsub';\n\nclass OnComponentChangeEventData {\n constructor(readonly idStr, readonly hook) {}\n}\n\nexport class OnComponentChangeEvent extends BitBaseEvent<OnComponentChangeEventData> {\n static readonly TYPE = 'on-component-change';\n\n constructor(readonly timestamp, readonly idStr, readonly hook) {\n super(OnComponentChangeEvent.TYPE, '0.0.1', timestamp, new OnComponentChangeEventData(idStr, hook));\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AADA;AAGA,MAAMA,0BAAN,CAAiC;EAC/BC,WAAW,CAAUC,KAAV,EAA0BC,IAA1B,EAAgC;IAAA,KAAtBD,KAAsB,GAAtBA,KAAsB;IAAA,KAANC,IAAM,GAANA,IAAM;EAAE;;AADd;;AAI1B,MAAMC,sBAAN,SAAqCC,sBAArC,CAA8E;EAGnFJ,WAAW,CAAUK,SAAV,EAA8BJ,KAA9B,EAA8CC,IAA9C,EAAoD;IAC7D,MAAMC,sBAAsB,CAACG,IAA7B,EAAmC,OAAnC,EAA4CD,SAA5C,EAAuD,IAAIN,0BAAJ,CAA+BE,KAA/B,EAAsCC,IAAtC,CAAvD;IAD6D,KAA1CG,SAA0C,GAA1CA,SAA0C;IAAA,KAAtBJ,KAAsB,GAAtBA,KAAsB;IAAA,KAANC,IAAM,GAANA,IAAM;EAE9D;;AALkF;;;gCAAxEC,sB,UACY,qB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["on-component-removed-event.ts"],"names":["OnComponentRemovedEventData","constructor","idStr","OnComponentRemovedEvent","BitBaseEvent","timestamp","TYPE"],"mappings":";;;;;;;;;;;;;;;;;;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AADA;AAGA,MAAMA,2BAAN,CAAkC;AAChCC,EAAAA,WAAW,CAAUC,KAAV,EAAiB;AAAA,SAAPA,KAAO,GAAPA,KAAO;AAAE;;AADE;;AAI3B,MAAMC,uBAAN,SAAsCC,sBAAtC,CAAgF;AAGrFH,EAAAA,WAAW,CAAUI,SAAV,EAA8BH,KAA9B,EAAqC;AAC9C,UAAMC,uBAAuB,CAACG,IAA9B,EAAoC,OAApC,EAA6CD,SAA7C,EAAwD,IAAIL,2BAAJ,CAAgCE,KAAhC,CAAxD;AAD8C,SAA3BG,SAA2B,GAA3BA,SAA2B;AAAA,SAAPH,KAAO,GAAPA,KAAO;AAE/C;;AALoF;;;gCAA1EC,uB,UACY,sB","sourcesContent":["/* eslint-disable max-classes-per-file */\nimport { BitBaseEvent } from '@teambit/pubsub';\n\nclass OnComponentRemovedEventData {\n constructor(readonly idStr) {}\n}\n\nexport class OnComponentRemovedEvent extends BitBaseEvent<OnComponentRemovedEventData> {\n static readonly TYPE = 'on-component-removed';\n\n constructor(readonly timestamp, readonly idStr) {\n super(OnComponentRemovedEvent.TYPE, '0.0.1', timestamp, new OnComponentRemovedEventData(idStr));\n }\n}\n"]}
1
+ {"version":3,"names":["OnComponentRemovedEventData","constructor","idStr","OnComponentRemovedEvent","BitBaseEvent","timestamp","TYPE"],"sources":["on-component-removed-event.ts"],"sourcesContent":["/* eslint-disable max-classes-per-file */\nimport { BitBaseEvent } from '@teambit/pubsub';\n\nclass OnComponentRemovedEventData {\n constructor(readonly idStr) {}\n}\n\nexport class OnComponentRemovedEvent extends BitBaseEvent<OnComponentRemovedEventData> {\n static readonly TYPE = 'on-component-removed';\n\n constructor(readonly timestamp, readonly idStr) {\n super(OnComponentRemovedEvent.TYPE, '0.0.1', timestamp, new OnComponentRemovedEventData(idStr));\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AADA;AAGA,MAAMA,2BAAN,CAAkC;EAChCC,WAAW,CAAUC,KAAV,EAAiB;IAAA,KAAPA,KAAO,GAAPA,KAAO;EAAE;;AADE;;AAI3B,MAAMC,uBAAN,SAAsCC,sBAAtC,CAAgF;EAGrFH,WAAW,CAAUI,SAAV,EAA8BH,KAA9B,EAAqC;IAC9C,MAAMC,uBAAuB,CAACG,IAA9B,EAAoC,OAApC,EAA6CD,SAA7C,EAAwD,IAAIL,2BAAJ,CAAgCE,KAAhC,CAAxD;IAD8C,KAA3BG,SAA2B,GAA3BA,SAA2B;IAAA,KAAPH,KAAO,GAAPA,KAAO;EAE/C;;AALoF;;;gCAA1EC,uB,UACY,sB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["dependency-type-not-supported-in-policy.ts"],"names":["DependencyTypeNotSupportedInPolicy","BitError","constructor","type"],"mappings":";;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEO,MAAMA,kCAAN,SAAiDC,oBAAjD,CAA0D;AAC/DC,EAAAA,WAAW,CAACC,IAAD,EAAe;AACxB,UAAO,yCAAwCA,IAAK,eAApD;AACD;;AAH8D","sourcesContent":["import { BitError } from '@teambit/bit-error';\n\nexport class DependencyTypeNotSupportedInPolicy extends BitError {\n constructor(type: string) {\n super(`the workspace policy does not support ${type} dependencies`);\n }\n}\n"]}
1
+ {"version":3,"names":["DependencyTypeNotSupportedInPolicy","BitError","constructor","type"],"sources":["dependency-type-not-supported-in-policy.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\n\nexport class DependencyTypeNotSupportedInPolicy extends BitError {\n constructor(type: string) {\n super(`the workspace policy does not support ${type} dependencies`);\n }\n}\n"],"mappings":";;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEO,MAAMA,kCAAN,SAAiDC,oBAAjD,CAA0D;EAC/DC,WAAW,CAACC,IAAD,EAAe;IACxB,MAAO,yCAAwCA,IAAK,eAApD;EACD;;AAH8D"}
@@ -1 +1 @@
1
- {"version":3,"sources":["incorrect-env-aspect.ts"],"names":["IncorrectEnvAspect","BitError","constructor","id","envType","envId"],"mappings":";;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEO,MAAMA,kBAAN,SAAiCC,oBAAjC,CAA0C;AAC/CC,EAAAA,WAAW,CAACC,EAAD,EAAaC,OAAb,EAA8BC,KAA9B,EAA6C;AACtD,UAAO,IAAGF,EAAG,qDAAoDE,KAAM,iCAAgCD,OAAQ;AACnH,2HADI;AAED;;AAJ8C","sourcesContent":["import { BitError } from '@teambit/bit-error';\n\nexport class IncorrectEnvAspect extends BitError {\n constructor(id: string, envType: string, envId: string) {\n super(`\"${id}\" is configured in workspace.json, but using the \"${envId}\" environment, which is type \"${envType}\".\nplease make sure to either apply the aspect environment or a composition of the aspect environment for the aspect to load.`);\n }\n}\n"]}
1
+ {"version":3,"names":["IncorrectEnvAspect","BitError","constructor","id","envType","envId"],"sources":["incorrect-env-aspect.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\n\nexport class IncorrectEnvAspect extends BitError {\n constructor(id: string, envType: string, envId: string) {\n super(`\"${id}\" is configured in workspace.json, but using the \"${envId}\" environment, which is type \"${envType}\".\nplease make sure to either apply the aspect environment or a composition of the aspect environment for the aspect to load.`);\n }\n}\n"],"mappings":";;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEO,MAAMA,kBAAN,SAAiCC,oBAAjC,CAA0C;EAC/CC,WAAW,CAACC,EAAD,EAAaC,OAAb,EAA8BC,KAA9B,EAA6C;IACtD,MAAO,IAAGF,EAAG,qDAAoDE,KAAM,iCAAgCD,OAAQ;AACnH,2HADI;EAED;;AAJ8C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA","sourcesContent":["export { DependencyTypeNotSupportedInPolicy } from './dependency-type-not-supported-in-policy';\n"]}
1
+ {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export { DependencyTypeNotSupportedInPolicy } from './dependency-type-not-supported-in-policy';\n"],"mappings":";;;;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":["WorkspaceAspect"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAQA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAGA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;eAIeA,4B","sourcesContent":["import { WorkspaceAspect } from './workspace.aspect';\n// eslint-disable-next-line import/prefer-default-export\nexport type { default as Workspace, ExtensionsOrigin } from './workspace';\n// TODO: change to module path once track the utils folder\nexport type { ResolvedComponent } from '@teambit/harmony.modules.resolved-component';\nexport type { AlreadyExistsError as ComponentConfigFileAlreadyExistsError } from './component-config-file';\nexport type { WorkspaceMain } from './workspace.main.runtime';\nexport type { WatchOptions } from './watch/watcher';\nexport { CheckTypes } from './watch/check-types';\nexport * from './events';\nexport type { WorkspaceUI } from './workspace.ui.runtime';\nexport type { SerializableResults, OnComponentEventResult } from './on-component-events';\nexport { ComponentStatus } from './workspace-component';\nexport { WorkspaceModelComponent } from './ui/workspace/workspace-model';\nexport { WorkspaceContext } from './ui/workspace/workspace-context';\nexport type { WorkspaceComponent } from './workspace-component';\n\nexport { WorkspaceAspect };\nexport default WorkspaceAspect;\n"]}
1
+ {"version":3,"names":["WorkspaceAspect"],"sources":["index.ts"],"sourcesContent":["import { WorkspaceAspect } from './workspace.aspect';\n// eslint-disable-next-line import/prefer-default-export\nexport type { default as Workspace, ExtensionsOrigin } from './workspace';\n// TODO: change to module path once track the utils folder\nexport type { ResolvedComponent } from '@teambit/harmony.modules.resolved-component';\nexport type { AlreadyExistsError as ComponentConfigFileAlreadyExistsError } from './component-config-file';\nexport type { WorkspaceMain } from './workspace.main.runtime';\nexport type { WatchOptions } from './watch/watcher';\nexport { CheckTypes } from './watch/check-types';\nexport * from './events';\nexport type { WorkspaceUI } from './workspace.ui.runtime';\nexport type { SerializableResults, OnComponentEventResult } from './on-component-events';\nexport { ComponentStatus } from './workspace-component';\nexport { WorkspaceModelComponent } from './ui/workspace/workspace-model';\nexport { WorkspaceContext } from './ui/workspace/workspace-context';\nexport type { WorkspaceComponent } from './workspace-component';\n\nexport { WorkspaceAspect };\nexport default WorkspaceAspect;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAQA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AAGA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;eAIeA,4B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["install.cmd.tsx"],"names":["InstallCmd","constructor","workspace","logger","report","packages","options","startTime","Date","now","console","chalk","cyan","name","installOpts","variants","lifecycleType","addMissingPeers","type","dedupe","skipDedupe","import","skipImport","updateExisting","savePrefix","components","install","endTime","executionTime","calculateTime","toArray","length","toString","diff"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAGA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAce,MAAMA,UAAN,CAAoC;AAgBjDC,EAAAA,WAAW;AACT;AACJ;AACA;AACYC,EAAAA,SAJC;AAMT;AACJ;AACA;AACYC,EAAAA,MATC,EAUT;AAAA,SANQD,SAMR,GANQA,SAMR;AAAA,SADQC,MACR,GADQA,MACR;AAAA,kDAzBK,uBAyBL;AAAA,yDAxBY,4CAwBZ;AAAA,mDAvBM,IAuBN;AAAA,mDAtBM,aAsBN;AAAA,8DArBiB,EAqBjB;AAAA,qDApBQ,CACR,CAAC,GAAD,EAAM,qBAAN,EAA6B,mCAA7B,CADQ,EAER,CAAC,GAAD,EAAM,sBAAN,EAA8B,2DAA9B,CAFQ,EAGR,CAAC,GAAD,EAAM,kCAAN,EAA0C,gDAA1C,CAHQ,EAIR,CAAC,EAAD,EAAK,0BAAL,EAAiC,iEAAjC,CAJQ,EAKR,CAAC,EAAD,EAAK,0BAAL,EAAiC,4CAAjC,CALQ,EAMR,CAAC,EAAD,EAAK,0BAAL,EAAiC,6CAAjC,CANQ,EAOR,CAAC,EAAD,EAAK,qCAAL,EAA4C,uCAA5C,CAPQ,CAoBR;AAAE;;AAEQ,QAANC,MAAM,CAAC,CAACC,QAAQ,GAAG,EAAZ,CAAD,EAA8BC,OAA9B,EAA0D;AACpE,UAAMC,SAAS,GAAGC,IAAI,CAACC,GAAL,EAAlB;AACA,SAAKN,MAAL,CAAYO,OAAZ,CAAqB,oDAAmDC,iBAAMC,IAAN,CAAW,KAAKV,SAAL,CAAeW,IAA1B,CAAgC,GAAxG;AACA,UAAMC,WAAoC,GAAG;AAC3CC,MAAAA,QAAQ,EAAET,OAAO,CAACS,QADyB;AAE3CC,MAAAA,aAAa,EAAEV,OAAO,CAACW,eAAR,GAA0B,MAA1B,GAAmCX,OAAO,CAACY,IAFf;AAG3CC,MAAAA,MAAM,EAAE,CAACb,OAAO,CAACc,UAH0B;AAI3CC,MAAAA,MAAM,EAAE,CAACf,OAAO,CAACgB,UAJ0B;AAK3CC,MAAAA,cAAc,EAAEjB,OAAO,CAACiB,cALmB;AAM3CC,MAAAA,UAAU,EAAElB,OAAO,CAACkB,UANuB;AAO3CP,MAAAA,eAAe,EAAEX,OAAO,CAACW;AAPkB,KAA7C;AASA,UAAMQ,UAAU,GAAG,MAAM,KAAKvB,SAAL,CAAewB,OAAf,CAAuBrB,QAAvB,EAAiCS,WAAjC,CAAzB;AACA,UAAMa,OAAO,GAAGnB,IAAI,CAACC,GAAL,EAAhB;AACA,UAAMmB,aAAa,GAAGC,aAAa,CAACtB,SAAD,EAAYoB,OAAZ,CAAnC;AACA,WAAQ,0CAAyChB,iBAAMC,IAAN,CAC/Ca,UAAU,CAACK,OAAX,GAAqBC,MAArB,CAA4BC,QAA5B,EAD+C,CAE/C,oBAAmBrB,iBAAMC,IAAN,CAAWgB,aAAa,CAACI,QAAd,EAAX,CAAqC,UAF1D;AAGD;;AA9CgD;;;;AAiDnD,SAASH,aAAT,CAAuBtB,SAAvB,EAA0CoB,OAA1C,EAA2D;AACzD,QAAMM,IAAI,GAAGN,OAAO,GAAGpB,SAAvB;AACA,SAAO0B,IAAI,GAAG,IAAd;AACD","sourcesContent":["import { Command, CommandOptions } from '@teambit/cli';\nimport { WorkspaceDependencyLifecycleType } from '@teambit/dependency-resolver';\nimport { Logger } from '@teambit/logger';\nimport chalk from 'chalk';\n\nimport { Workspace, WorkspaceInstallOptions } from './workspace';\n\ntype InstallCmdOptions = {\n variants: string;\n type: WorkspaceDependencyLifecycleType;\n skipDedupe: boolean;\n skipImport: boolean;\n updateExisting: boolean;\n savePrefix: string;\n addMissingPeers: boolean;\n};\n\nexport default class InstallCmd implements Command {\n name = 'install [packages...]';\n description = 'install development workspace dependencies';\n alias = 'in';\n group = 'development';\n shortDescription = '';\n options = [\n ['v', 'variants <variants>', 'add packages to specific variants'],\n ['t', 'type [lifecycleType]', '\"runtime\" (default) or \"peer\" (dev is not a valid option)'],\n ['u', 'update-existing [updateExisting]', 'update existing dependencies version and types'],\n ['', 'save-prefix [savePrefix]', 'set the prefix to use when adding dependency to workspace.jsonc'],\n ['', 'skip-dedupe [skipDedupe]', 'do not dedupe dependencies on installation'],\n ['', 'skip-import [skipImport]', 'do not import bit objects post installation'],\n ['', 'add-missing-peers [addMissingPeers]', 'install all missing peer dependencies'],\n ] as CommandOptions;\n\n constructor(\n /**\n * workspace extension.\n */\n private workspace: Workspace,\n\n /**\n * logger extension.\n */\n private logger: Logger\n ) {}\n\n async report([packages = []]: [string[]], options: InstallCmdOptions) {\n const startTime = Date.now();\n this.logger.console(`Resolving component dependencies for workspace: '${chalk.cyan(this.workspace.name)}'`);\n const installOpts: WorkspaceInstallOptions = {\n variants: options.variants,\n lifecycleType: options.addMissingPeers ? 'peer' : options.type,\n dedupe: !options.skipDedupe,\n import: !options.skipImport,\n updateExisting: options.updateExisting,\n savePrefix: options.savePrefix,\n addMissingPeers: options.addMissingPeers,\n };\n const components = await this.workspace.install(packages, installOpts);\n const endTime = Date.now();\n const executionTime = calculateTime(startTime, endTime);\n return `Successfully resolved dependencies for ${chalk.cyan(\n components.toArray().length.toString()\n )} component(s) in ${chalk.cyan(executionTime.toString())} seconds`;\n }\n}\n\nfunction calculateTime(startTime: number, endTime: number) {\n const diff = endTime - startTime;\n return diff / 1000;\n}\n"]}
1
+ {"version":3,"names":["InstallCmd","constructor","workspace","logger","report","packages","options","startTime","Date","now","console","chalk","cyan","name","installOpts","variants","lifecycleType","addMissingPeers","type","dedupe","skipDedupe","import","skipImport","updateExisting","savePrefix","components","install","endTime","executionTime","calculateTime","toArray","length","toString","diff"],"sources":["install.cmd.tsx"],"sourcesContent":["import { Command, CommandOptions } from '@teambit/cli';\nimport { WorkspaceDependencyLifecycleType } from '@teambit/dependency-resolver';\nimport { Logger } from '@teambit/logger';\nimport chalk from 'chalk';\n\nimport { Workspace, WorkspaceInstallOptions } from './workspace';\n\ntype InstallCmdOptions = {\n variants: string;\n type: WorkspaceDependencyLifecycleType;\n skipDedupe: boolean;\n skipImport: boolean;\n updateExisting: boolean;\n savePrefix: string;\n addMissingPeers: boolean;\n};\n\nexport default class InstallCmd implements Command {\n name = 'install [packages...]';\n description = 'install development workspace dependencies';\n alias = 'in';\n group = 'development';\n shortDescription = '';\n options = [\n ['v', 'variants <variants>', 'add packages to specific variants'],\n ['t', 'type [lifecycleType]', '\"runtime\" (default) or \"peer\" (dev is not a valid option)'],\n ['u', 'update-existing [updateExisting]', 'update existing dependencies version and types'],\n ['', 'save-prefix [savePrefix]', 'set the prefix to use when adding dependency to workspace.jsonc'],\n ['', 'skip-dedupe [skipDedupe]', 'do not dedupe dependencies on installation'],\n ['', 'skip-import [skipImport]', 'do not import bit objects post installation'],\n ['', 'add-missing-peers [addMissingPeers]', 'install all missing peer dependencies'],\n ] as CommandOptions;\n\n constructor(\n /**\n * workspace extension.\n */\n private workspace: Workspace,\n\n /**\n * logger extension.\n */\n private logger: Logger\n ) {}\n\n async report([packages = []]: [string[]], options: InstallCmdOptions) {\n const startTime = Date.now();\n this.logger.console(`Resolving component dependencies for workspace: '${chalk.cyan(this.workspace.name)}'`);\n const installOpts: WorkspaceInstallOptions = {\n variants: options.variants,\n lifecycleType: options.addMissingPeers ? 'peer' : options.type,\n dedupe: !options.skipDedupe,\n import: !options.skipImport,\n updateExisting: options.updateExisting,\n savePrefix: options.savePrefix,\n addMissingPeers: options.addMissingPeers,\n };\n const components = await this.workspace.install(packages, installOpts);\n const endTime = Date.now();\n const executionTime = calculateTime(startTime, endTime);\n return `Successfully resolved dependencies for ${chalk.cyan(\n components.toArray().length.toString()\n )} component(s) in ${chalk.cyan(executionTime.toString())} seconds`;\n }\n}\n\nfunction calculateTime(startTime: number, endTime: number) {\n const diff = endTime - startTime;\n return diff / 1000;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAGA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAce,MAAMA,UAAN,CAAoC;EAgBjDC,WAAW;EACT;AACJ;AACA;EACYC,SAJC;EAMT;AACJ;AACA;EACYC,MATC,EAUT;IAAA,KANQD,SAMR,GANQA,SAMR;IAAA,KADQC,MACR,GADQA,MACR;IAAA,8CAzBK,uBAyBL;IAAA,qDAxBY,4CAwBZ;IAAA,+CAvBM,IAuBN;IAAA,+CAtBM,aAsBN;IAAA,0DArBiB,EAqBjB;IAAA,iDApBQ,CACR,CAAC,GAAD,EAAM,qBAAN,EAA6B,mCAA7B,CADQ,EAER,CAAC,GAAD,EAAM,sBAAN,EAA8B,2DAA9B,CAFQ,EAGR,CAAC,GAAD,EAAM,kCAAN,EAA0C,gDAA1C,CAHQ,EAIR,CAAC,EAAD,EAAK,0BAAL,EAAiC,iEAAjC,CAJQ,EAKR,CAAC,EAAD,EAAK,0BAAL,EAAiC,4CAAjC,CALQ,EAMR,CAAC,EAAD,EAAK,0BAAL,EAAiC,6CAAjC,CANQ,EAOR,CAAC,EAAD,EAAK,qCAAL,EAA4C,uCAA5C,CAPQ,CAoBR;EAAE;;EAEQ,MAANC,MAAM,CAAC,CAACC,QAAQ,GAAG,EAAZ,CAAD,EAA8BC,OAA9B,EAA0D;IACpE,MAAMC,SAAS,GAAGC,IAAI,CAACC,GAAL,EAAlB;IACA,KAAKN,MAAL,CAAYO,OAAZ,CAAqB,oDAAmDC,gBAAA,CAAMC,IAAN,CAAW,KAAKV,SAAL,CAAeW,IAA1B,CAAgC,GAAxG;IACA,MAAMC,WAAoC,GAAG;MAC3CC,QAAQ,EAAET,OAAO,CAACS,QADyB;MAE3CC,aAAa,EAAEV,OAAO,CAACW,eAAR,GAA0B,MAA1B,GAAmCX,OAAO,CAACY,IAFf;MAG3CC,MAAM,EAAE,CAACb,OAAO,CAACc,UAH0B;MAI3CC,MAAM,EAAE,CAACf,OAAO,CAACgB,UAJ0B;MAK3CC,cAAc,EAAEjB,OAAO,CAACiB,cALmB;MAM3CC,UAAU,EAAElB,OAAO,CAACkB,UANuB;MAO3CP,eAAe,EAAEX,OAAO,CAACW;IAPkB,CAA7C;IASA,MAAMQ,UAAU,GAAG,MAAM,KAAKvB,SAAL,CAAewB,OAAf,CAAuBrB,QAAvB,EAAiCS,WAAjC,CAAzB;IACA,MAAMa,OAAO,GAAGnB,IAAI,CAACC,GAAL,EAAhB;IACA,MAAMmB,aAAa,GAAGC,aAAa,CAACtB,SAAD,EAAYoB,OAAZ,CAAnC;IACA,OAAQ,0CAAyChB,gBAAA,CAAMC,IAAN,CAC/Ca,UAAU,CAACK,OAAX,GAAqBC,MAArB,CAA4BC,QAA5B,EAD+C,CAE/C,oBAAmBrB,gBAAA,CAAMC,IAAN,CAAWgB,aAAa,CAACI,QAAd,EAAX,CAAqC,UAF1D;EAGD;;AA9CgD;;;;AAiDnD,SAASH,aAAT,CAAuBtB,SAAvB,EAA0CoB,OAA1C,EAA2D;EACzD,MAAMM,IAAI,GAAGN,OAAO,GAAGpB,SAAvB;EACA,OAAO0B,IAAI,GAAG,IAAd;AACD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["component-list-links.ts"],"names":["ComponentListLinks","componentListLinks","verbose","length","chalk","cyan","title","bold","links","map","componentLinks","ComponentLinks","join","bound","VerboseComponentLinks","RegularComponentLinks","id","toString","packagePath","to","target","padding","link","from"],"mappings":";;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAOO,SAASA,kBAAT,CAA4B;AAAEC,EAAAA,kBAAF;AAAsBC,EAAAA,OAAO,GAAG;AAAhC,CAA5B,EAA8F;AACnG,MAAI,CAACD,kBAAD,IAAuB,CAACA,kBAAkB,CAACE,MAA/C,EAAuD;AACrD,WAAOC,iBAAMC,IAAN,CAAW,mCAAX,CAAP;AACD;;AACD,QAAMC,KAAK,GAAGF,iBAAMG,IAAN,CAAWF,IAAX,CAAgB,kBAAhB,CAAd;;AACA,QAAMG,KAAK,GAAGP,kBAAkB,CAACQ,GAAnB,CAAwBC,cAAD,IAAoBC,cAAc,CAAC;AAAED,IAAAA,cAAF;AAAkBR,IAAAA;AAAlB,GAAD,CAAzD,EAAwFU,IAAxF,CAA6F,IAA7F,CAAd;AAEA,SAAQ,GAAEN,KAAM,KAAIE,KAAM,EAA1B;AACD;;AAMD,SAASG,cAAT,CAAwB;AAAED,EAAAA,cAAF;AAAkBR,EAAAA,OAAO,GAAG;AAA5B,CAAxB,EAAkF;AAChF,MAAI,CAACQ,cAAc,CAACG,KAAhB,IAAyBH,cAAc,CAACG,KAAf,CAAqBV,MAArB,GAA8B,CAA3D,EAA8D,OAAO,EAAP;AAC9D,MAAID,OAAJ,EAAa,OAAOY,qBAAqB,CAAC;AAAEJ,IAAAA;AAAF,GAAD,CAA5B;AACb,SAAOK,qBAAqB,CAAC;AAAEL,IAAAA;AAAF,GAAD,CAA5B;AACD;;AAKD,SAASK,qBAAT,CAA+B;AAAEL,EAAAA;AAAF,CAA/B,EAA+E;AAC7E,QAAMM,EAAE,GAAGN,cAAc,CAACM,EAAf,CAAkBC,QAAlB,EAAX;AACA,MAAI,CAACP,cAAc,CAACG,KAAhB,IAAyBH,cAAc,CAACG,KAAf,CAAqBV,MAArB,GAA8B,CAA3D,EAA8D,OAAO,EAAP;AAC9D,QAAMe,WAAW,GAAG,0DAAyBR,cAAc,CAACG,KAAf,CAAqB,CAArB,EAAwBM,EAAjD,CAApB;AACA,SAAO,wBAAQ;AAAEb,IAAAA,KAAK,EAAEU,EAAT;AAAaI,IAAAA,MAAM,EAAEF,WAArB;AAAkCG,IAAAA,OAAO,EAAE;AAA3C,GAAR,CAAP;AACD;;AAKD,SAASP,qBAAT,CAA+B;AAAEJ,EAAAA;AAAF,CAA/B,EAA+E;AAC7E,QAAMM,EAAE,GAAGN,cAAc,CAACM,EAAf,CAAkBC,QAAlB,EAAX;AACA,MAAI,CAACP,cAAc,CAACG,KAAhB,IAAyBH,cAAc,CAACG,KAAf,CAAqBV,MAArB,GAA8B,CAA3D,EAA8D,OAAO,EAAP;;AAC9D,QAAMG,KAAK,GAAGF,iBAAMG,IAAN,CAAWF,IAAX,CAAgBW,EAAhB,CAAd;;AACA,QAAMR,KAAK,GAAGE,cAAc,CAACG,KAAf,CAAqBJ,GAArB,CAA0Ba,IAAD,IAAU,+BAAe;AAAEC,IAAAA,IAAI,EAAED,IAAI,CAACC,IAAb;AAAmBJ,IAAAA,EAAE,EAAEG,IAAI,CAACH;AAA5B,GAAf,CAAnC,EAAqFP,IAArF,CAA0F,IAA1F,CAAd;AACA,SAAQ,GAAEN,KAAM,KAAIE,KAAM,IAA1B;AACD","sourcesContent":["import chalk from 'chalk';\nimport { LinksResult as LegacyLinksResult } from '@teambit/legacy/dist/links/node-modules-linker';\nimport { getPackageNameFromTarget } from './get-package-name-from-target';\nimport { LinkRow, VerboseLinkRow } from './link-row';\n\ntype ComponentListLinksProps = {\n componentListLinks?: LegacyLinksResult[];\n verbose: boolean;\n};\n\nexport function ComponentListLinks({ componentListLinks, verbose = false }: ComponentListLinksProps) {\n if (!componentListLinks || !componentListLinks.length) {\n return chalk.cyan('No components link were generated');\n }\n const title = chalk.bold.cyan('Components links');\n const links = componentListLinks.map((componentLinks) => ComponentLinks({ componentLinks, verbose })).join('\\n');\n\n return `${title}\\n${links}`;\n}\n\ntype ComponentLinksProps = {\n componentLinks: LegacyLinksResult;\n verbose: boolean;\n};\nfunction ComponentLinks({ componentLinks, verbose = false }: ComponentLinksProps) {\n if (!componentLinks.bound || componentLinks.bound.length < 1) return '';\n if (verbose) return VerboseComponentLinks({ componentLinks });\n return RegularComponentLinks({ componentLinks });\n}\n\ntype RegularComponentLinksProps = {\n componentLinks: LegacyLinksResult;\n};\nfunction RegularComponentLinks({ componentLinks }: RegularComponentLinksProps) {\n const id = componentLinks.id.toString();\n if (!componentLinks.bound || componentLinks.bound.length < 1) return '';\n const packagePath = getPackageNameFromTarget(componentLinks.bound[0].to);\n return LinkRow({ title: id, target: packagePath, padding: 50 });\n}\n\ntype VerboseComponentLinksProps = {\n componentLinks: LegacyLinksResult;\n};\nfunction VerboseComponentLinks({ componentLinks }: VerboseComponentLinksProps) {\n const id = componentLinks.id.toString();\n if (!componentLinks.bound || componentLinks.bound.length < 1) return '';\n const title = chalk.bold.cyan(id);\n const links = componentLinks.bound.map((link) => VerboseLinkRow({ from: link.from, to: link.to })).join('\\n');\n return `${title}\\n${links}\\n`;\n}\n"]}
1
+ {"version":3,"names":["ComponentListLinks","componentListLinks","verbose","length","chalk","cyan","title","bold","links","map","componentLinks","ComponentLinks","join","bound","VerboseComponentLinks","RegularComponentLinks","id","toString","packagePath","getPackageNameFromTarget","to","LinkRow","target","padding","link","VerboseLinkRow","from"],"sources":["component-list-links.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { LinksResult as LegacyLinksResult } from '@teambit/legacy/dist/links/node-modules-linker';\nimport { getPackageNameFromTarget } from './get-package-name-from-target';\nimport { LinkRow, VerboseLinkRow } from './link-row';\n\ntype ComponentListLinksProps = {\n componentListLinks?: LegacyLinksResult[];\n verbose: boolean;\n};\n\nexport function ComponentListLinks({ componentListLinks, verbose = false }: ComponentListLinksProps) {\n if (!componentListLinks || !componentListLinks.length) {\n return chalk.cyan('No components link were generated');\n }\n const title = chalk.bold.cyan('Components links');\n const links = componentListLinks.map((componentLinks) => ComponentLinks({ componentLinks, verbose })).join('\\n');\n\n return `${title}\\n${links}`;\n}\n\ntype ComponentLinksProps = {\n componentLinks: LegacyLinksResult;\n verbose: boolean;\n};\nfunction ComponentLinks({ componentLinks, verbose = false }: ComponentLinksProps) {\n if (!componentLinks.bound || componentLinks.bound.length < 1) return '';\n if (verbose) return VerboseComponentLinks({ componentLinks });\n return RegularComponentLinks({ componentLinks });\n}\n\ntype RegularComponentLinksProps = {\n componentLinks: LegacyLinksResult;\n};\nfunction RegularComponentLinks({ componentLinks }: RegularComponentLinksProps) {\n const id = componentLinks.id.toString();\n if (!componentLinks.bound || componentLinks.bound.length < 1) return '';\n const packagePath = getPackageNameFromTarget(componentLinks.bound[0].to);\n return LinkRow({ title: id, target: packagePath, padding: 50 });\n}\n\ntype VerboseComponentLinksProps = {\n componentLinks: LegacyLinksResult;\n};\nfunction VerboseComponentLinks({ componentLinks }: VerboseComponentLinksProps) {\n const id = componentLinks.id.toString();\n if (!componentLinks.bound || componentLinks.bound.length < 1) return '';\n const title = chalk.bold.cyan(id);\n const links = componentLinks.bound.map((link) => VerboseLinkRow({ from: link.from, to: link.to })).join('\\n');\n return `${title}\\n${links}\\n`;\n}\n"],"mappings":";;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAOO,SAASA,kBAAT,CAA4B;EAAEC,kBAAF;EAAsBC,OAAO,GAAG;AAAhC,CAA5B,EAA8F;EACnG,IAAI,CAACD,kBAAD,IAAuB,CAACA,kBAAkB,CAACE,MAA/C,EAAuD;IACrD,OAAOC,gBAAA,CAAMC,IAAN,CAAW,mCAAX,CAAP;EACD;;EACD,MAAMC,KAAK,GAAGF,gBAAA,CAAMG,IAAN,CAAWF,IAAX,CAAgB,kBAAhB,CAAd;;EACA,MAAMG,KAAK,GAAGP,kBAAkB,CAACQ,GAAnB,CAAwBC,cAAD,IAAoBC,cAAc,CAAC;IAAED,cAAF;IAAkBR;EAAlB,CAAD,CAAzD,EAAwFU,IAAxF,CAA6F,IAA7F,CAAd;EAEA,OAAQ,GAAEN,KAAM,KAAIE,KAAM,EAA1B;AACD;;AAMD,SAASG,cAAT,CAAwB;EAAED,cAAF;EAAkBR,OAAO,GAAG;AAA5B,CAAxB,EAAkF;EAChF,IAAI,CAACQ,cAAc,CAACG,KAAhB,IAAyBH,cAAc,CAACG,KAAf,CAAqBV,MAArB,GAA8B,CAA3D,EAA8D,OAAO,EAAP;EAC9D,IAAID,OAAJ,EAAa,OAAOY,qBAAqB,CAAC;IAAEJ;EAAF,CAAD,CAA5B;EACb,OAAOK,qBAAqB,CAAC;IAAEL;EAAF,CAAD,CAA5B;AACD;;AAKD,SAASK,qBAAT,CAA+B;EAAEL;AAAF,CAA/B,EAA+E;EAC7E,MAAMM,EAAE,GAAGN,cAAc,CAACM,EAAf,CAAkBC,QAAlB,EAAX;EACA,IAAI,CAACP,cAAc,CAACG,KAAhB,IAAyBH,cAAc,CAACG,KAAf,CAAqBV,MAArB,GAA8B,CAA3D,EAA8D,OAAO,EAAP;EAC9D,MAAMe,WAAW,GAAG,IAAAC,oDAAA,EAAyBT,cAAc,CAACG,KAAf,CAAqB,CAArB,EAAwBO,EAAjD,CAApB;EACA,OAAO,IAAAC,kBAAA,EAAQ;IAAEf,KAAK,EAAEU,EAAT;IAAaM,MAAM,EAAEJ,WAArB;IAAkCK,OAAO,EAAE;EAA3C,CAAR,CAAP;AACD;;AAKD,SAAST,qBAAT,CAA+B;EAAEJ;AAAF,CAA/B,EAA+E;EAC7E,MAAMM,EAAE,GAAGN,cAAc,CAACM,EAAf,CAAkBC,QAAlB,EAAX;EACA,IAAI,CAACP,cAAc,CAACG,KAAhB,IAAyBH,cAAc,CAACG,KAAf,CAAqBV,MAArB,GAA8B,CAA3D,EAA8D,OAAO,EAAP;;EAC9D,MAAMG,KAAK,GAAGF,gBAAA,CAAMG,IAAN,CAAWF,IAAX,CAAgBW,EAAhB,CAAd;;EACA,MAAMR,KAAK,GAAGE,cAAc,CAACG,KAAf,CAAqBJ,GAArB,CAA0Be,IAAD,IAAU,IAAAC,yBAAA,EAAe;IAAEC,IAAI,EAAEF,IAAI,CAACE,IAAb;IAAmBN,EAAE,EAAEI,IAAI,CAACJ;EAA5B,CAAf,CAAnC,EAAqFR,IAArF,CAA0F,IAA1F,CAAd;EACA,OAAQ,GAAEN,KAAM,KAAIE,KAAM,IAA1B;AACD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["core-aspects-links.ts"],"names":["CoreAspectsLinks","coreAspectsLinks","verbose","length","chalk","cyan","title","links","map","link","CoreAspectLinkRow","coreAspectLink","join","VerboseCoreAspectLink","RegularCoreAspectLink","id","aspectId","toString","packagePath","linkDetail","to","target","padding","bold","from"],"mappings":";;;;;;;;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAOO,SAASA,gBAAT,CAA0B;AAAEC,EAAAA,gBAAF;AAAoBC,EAAAA,OAAO,GAAG;AAA9B,CAA1B,EAAwF;AAC7F,MAAI,CAACD,gBAAD,IAAqB,CAACA,gBAAgB,CAACE,MAA3C,EAAmD;AACjD,WAAOC,iBAAMC,IAAN,CAAW,6BAAX,CAAP;AACD;;AACD,QAAMC,KAAK,GAAGF,iBAAMC,IAAN,CAAW,oBAAX,CAAd;;AACA,QAAME,KAAK,GAAGN,gBAAgB,CAACO,GAAjB,CAAsBC,IAAD,IAAUC,iBAAiB,CAAC;AAAEC,IAAAA,cAAc,EAAEF,IAAlB;AAAwBP,IAAAA;AAAxB,GAAD,CAAhD,EAAqFU,IAArF,CAA0F,IAA1F,CAAd;AACA,SAAQ,GAAEN,KAAM,KAAIC,KAAM,EAA1B;AACD;;AAMD,SAASG,iBAAT,CAA2B;AAAEC,EAAAA,cAAF;AAAkBT,EAAAA,OAAO,GAAG;AAA5B,CAA3B,EAAqF;AACnF,MAAIA,OAAJ,EAAa,OAAOW,qBAAqB,CAAC;AAAEF,IAAAA;AAAF,GAAD,CAA5B;AACb,SAAOG,qBAAqB,CAAC;AAAEH,IAAAA;AAAF,GAAD,CAA5B;AACD;;AAKD,SAASG,qBAAT,CAA+B;AAAEH,EAAAA;AAAF,CAA/B,EAA+E;AAC7E,QAAMI,EAAE,GAAGJ,cAAc,CAACK,QAAf,CAAwBC,QAAxB,EAAX;AACA,QAAMC,WAAW,GAAG,0DAAyBP,cAAc,CAACQ,UAAf,CAA0BC,EAAnD,CAApB;AACA,SAAO,wBAAQ;AAAEd,IAAAA,KAAK,EAAES,EAAT;AAAaM,IAAAA,MAAM,EAAEH,WAArB;AAAkCI,IAAAA,OAAO,EAAE;AAA3C,GAAR,CAAP;AACD;;AAKD,SAAST,qBAAT,CAA+B;AAAEF,EAAAA;AAAF,CAA/B,EAA+E;AAC7E,QAAMI,EAAE,GAAGJ,cAAc,CAACK,QAAf,CAAwBC,QAAxB,EAAX;;AACA,QAAMX,KAAK,GAAGF,iBAAMmB,IAAN,CAAWlB,IAAX,CAAgBU,EAAhB,CAAd;;AACA,QAAMN,IAAI,GAAG,+BAAe;AAC1Be,IAAAA,IAAI,EAAEb,cAAc,CAACQ,UAAf,CAA0BK,IADN;AAE1BJ,IAAAA,EAAE,EAAET,cAAc,CAACQ,UAAf,CAA0BC;AAFJ,GAAf,CAAb;AAIA,SAAQ,GAAEd,KAAM,KAAIG,IAAK,EAAzB;AACD","sourcesContent":["import { CoreAspectLinkResult } from '@teambit/dependency-resolver';\nimport chalk from 'chalk';\n\nimport { getPackageNameFromTarget } from './get-package-name-from-target';\nimport { LinkRow, VerboseLinkRow } from './link-row';\n\ntype CoreAspectsLinksProps = {\n coreAspectsLinks?: CoreAspectLinkResult[];\n verbose: boolean;\n};\n\nexport function CoreAspectsLinks({ coreAspectsLinks, verbose = false }: CoreAspectsLinksProps) {\n if (!coreAspectsLinks || !coreAspectsLinks.length) {\n return chalk.cyan('No core aspects were linked');\n }\n const title = chalk.cyan('Core aspects links');\n const links = coreAspectsLinks.map((link) => CoreAspectLinkRow({ coreAspectLink: link, verbose })).join('\\n');\n return `${title}\\n${links}`;\n}\n\ntype CoreAspectLinkProps = {\n coreAspectLink: CoreAspectLinkResult;\n verbose: boolean;\n};\nfunction CoreAspectLinkRow({ coreAspectLink, verbose = false }: CoreAspectLinkProps) {\n if (verbose) return VerboseCoreAspectLink({ coreAspectLink });\n return RegularCoreAspectLink({ coreAspectLink });\n}\n\ntype RegularCoreAspectLinkProps = {\n coreAspectLink: CoreAspectLinkResult;\n};\nfunction RegularCoreAspectLink({ coreAspectLink }: RegularCoreAspectLinkProps) {\n const id = coreAspectLink.aspectId.toString();\n const packagePath = getPackageNameFromTarget(coreAspectLink.linkDetail.to);\n return LinkRow({ title: id, target: packagePath, padding: 50 });\n}\n\ntype VerboseCoreAspectLinkProps = {\n coreAspectLink: CoreAspectLinkResult;\n};\nfunction VerboseCoreAspectLink({ coreAspectLink }: VerboseCoreAspectLinkProps) {\n const id = coreAspectLink.aspectId.toString();\n const title = chalk.bold.cyan(id);\n const link = VerboseLinkRow({\n from: coreAspectLink.linkDetail.from,\n to: coreAspectLink.linkDetail.to,\n });\n return `${title}\\n${link}`;\n}\n"]}
1
+ {"version":3,"names":["CoreAspectsLinks","coreAspectsLinks","verbose","length","chalk","cyan","title","links","map","link","CoreAspectLinkRow","coreAspectLink","join","VerboseCoreAspectLink","RegularCoreAspectLink","id","aspectId","toString","packagePath","getPackageNameFromTarget","linkDetail","to","LinkRow","target","padding","bold","VerboseLinkRow","from"],"sources":["core-aspects-links.ts"],"sourcesContent":["import { CoreAspectLinkResult } from '@teambit/dependency-resolver';\nimport chalk from 'chalk';\n\nimport { getPackageNameFromTarget } from './get-package-name-from-target';\nimport { LinkRow, VerboseLinkRow } from './link-row';\n\ntype CoreAspectsLinksProps = {\n coreAspectsLinks?: CoreAspectLinkResult[];\n verbose: boolean;\n};\n\nexport function CoreAspectsLinks({ coreAspectsLinks, verbose = false }: CoreAspectsLinksProps) {\n if (!coreAspectsLinks || !coreAspectsLinks.length) {\n return chalk.cyan('No core aspects were linked');\n }\n const title = chalk.cyan('Core aspects links');\n const links = coreAspectsLinks.map((link) => CoreAspectLinkRow({ coreAspectLink: link, verbose })).join('\\n');\n return `${title}\\n${links}`;\n}\n\ntype CoreAspectLinkProps = {\n coreAspectLink: CoreAspectLinkResult;\n verbose: boolean;\n};\nfunction CoreAspectLinkRow({ coreAspectLink, verbose = false }: CoreAspectLinkProps) {\n if (verbose) return VerboseCoreAspectLink({ coreAspectLink });\n return RegularCoreAspectLink({ coreAspectLink });\n}\n\ntype RegularCoreAspectLinkProps = {\n coreAspectLink: CoreAspectLinkResult;\n};\nfunction RegularCoreAspectLink({ coreAspectLink }: RegularCoreAspectLinkProps) {\n const id = coreAspectLink.aspectId.toString();\n const packagePath = getPackageNameFromTarget(coreAspectLink.linkDetail.to);\n return LinkRow({ title: id, target: packagePath, padding: 50 });\n}\n\ntype VerboseCoreAspectLinkProps = {\n coreAspectLink: CoreAspectLinkResult;\n};\nfunction VerboseCoreAspectLink({ coreAspectLink }: VerboseCoreAspectLinkProps) {\n const id = coreAspectLink.aspectId.toString();\n const title = chalk.bold.cyan(id);\n const link = VerboseLinkRow({\n from: coreAspectLink.linkDetail.from,\n to: coreAspectLink.linkDetail.to,\n });\n return `${title}\\n${link}`;\n}\n"],"mappings":";;;;;;;;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAOO,SAASA,gBAAT,CAA0B;EAAEC,gBAAF;EAAoBC,OAAO,GAAG;AAA9B,CAA1B,EAAwF;EAC7F,IAAI,CAACD,gBAAD,IAAqB,CAACA,gBAAgB,CAACE,MAA3C,EAAmD;IACjD,OAAOC,gBAAA,CAAMC,IAAN,CAAW,6BAAX,CAAP;EACD;;EACD,MAAMC,KAAK,GAAGF,gBAAA,CAAMC,IAAN,CAAW,oBAAX,CAAd;;EACA,MAAME,KAAK,GAAGN,gBAAgB,CAACO,GAAjB,CAAsBC,IAAD,IAAUC,iBAAiB,CAAC;IAAEC,cAAc,EAAEF,IAAlB;IAAwBP;EAAxB,CAAD,CAAhD,EAAqFU,IAArF,CAA0F,IAA1F,CAAd;EACA,OAAQ,GAAEN,KAAM,KAAIC,KAAM,EAA1B;AACD;;AAMD,SAASG,iBAAT,CAA2B;EAAEC,cAAF;EAAkBT,OAAO,GAAG;AAA5B,CAA3B,EAAqF;EACnF,IAAIA,OAAJ,EAAa,OAAOW,qBAAqB,CAAC;IAAEF;EAAF,CAAD,CAA5B;EACb,OAAOG,qBAAqB,CAAC;IAAEH;EAAF,CAAD,CAA5B;AACD;;AAKD,SAASG,qBAAT,CAA+B;EAAEH;AAAF,CAA/B,EAA+E;EAC7E,MAAMI,EAAE,GAAGJ,cAAc,CAACK,QAAf,CAAwBC,QAAxB,EAAX;EACA,MAAMC,WAAW,GAAG,IAAAC,oDAAA,EAAyBR,cAAc,CAACS,UAAf,CAA0BC,EAAnD,CAApB;EACA,OAAO,IAAAC,kBAAA,EAAQ;IAAEhB,KAAK,EAAES,EAAT;IAAaQ,MAAM,EAAEL,WAArB;IAAkCM,OAAO,EAAE;EAA3C,CAAR,CAAP;AACD;;AAKD,SAASX,qBAAT,CAA+B;EAAEF;AAAF,CAA/B,EAA+E;EAC7E,MAAMI,EAAE,GAAGJ,cAAc,CAACK,QAAf,CAAwBC,QAAxB,EAAX;;EACA,MAAMX,KAAK,GAAGF,gBAAA,CAAMqB,IAAN,CAAWpB,IAAX,CAAgBU,EAAhB,CAAd;;EACA,MAAMN,IAAI,GAAG,IAAAiB,yBAAA,EAAe;IAC1BC,IAAI,EAAEhB,cAAc,CAACS,UAAf,CAA0BO,IADN;IAE1BN,EAAE,EAAEV,cAAc,CAACS,UAAf,CAA0BC;EAFJ,CAAf,CAAb;EAIA,OAAQ,GAAEf,KAAM,KAAIG,IAAK,EAAzB;AACD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["get-package-name-from-target.ts"],"names":["getPackageNameFromTarget","targetPath","subPath","substring","lastIndexOf","packagePath","split","slice","join"],"mappings":";;;;;;;;;AAAO,SAASA,wBAAT,CAAkCC,UAAlC,EAA8D;AACnE,QAAMC,OAAO,GAAGD,UAAU,CAACE,SAAX,CAAqBF,UAAU,CAACG,WAAX,CAAuB,cAAvB,CAArB,CAAhB;AACA,QAAMC,WAAW,GAAGH,OAAO,CAACI,KAAR,CAAc,GAAd,EAAmBC,KAAnB,CAAyB,CAAzB,EAA4B,CAA5B,EAA+BC,IAA/B,CAAoC,GAApC,CAApB;AACA,SAAQ,KAAIH,WAAY,EAAxB;AACD","sourcesContent":["export function getPackageNameFromTarget(targetPath: string): string {\n const subPath = targetPath.substring(targetPath.lastIndexOf('node_modules'));\n const packagePath = subPath.split('/').slice(0, 3).join('/');\n return `./${packagePath}`;\n}\n"]}
1
+ {"version":3,"names":["getPackageNameFromTarget","targetPath","subPath","substring","lastIndexOf","packagePath","split","slice","join"],"sources":["get-package-name-from-target.ts"],"sourcesContent":["export function getPackageNameFromTarget(targetPath: string): string {\n const subPath = targetPath.substring(targetPath.lastIndexOf('node_modules'));\n const packagePath = subPath.split('/').slice(0, 3).join('/');\n return `./${packagePath}`;\n}\n"],"mappings":";;;;;;;;;AAAO,SAASA,wBAAT,CAAkCC,UAAlC,EAA8D;EACnE,MAAMC,OAAO,GAAGD,UAAU,CAACE,SAAX,CAAqBF,UAAU,CAACG,WAAX,CAAuB,cAAvB,CAArB,CAAhB;EACA,MAAMC,WAAW,GAAGH,OAAO,CAACI,KAAR,CAAc,GAAd,EAAmBC,KAAnB,CAAyB,CAAzB,EAA4B,CAA5B,EAA+BC,IAA/B,CAAoC,GAApC,CAApB;EACA,OAAQ,KAAIH,WAAY,EAAxB;AACD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA","sourcesContent":["export { LinkCommand } from './link.cmd';\n"]}
1
+ {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export { LinkCommand } from './link.cmd';\n"],"mappings":";;;;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["link-row.ts"],"names":["LinkRow","title","target","padding","chalk","bold","padEnd","VerboseLinkRow","from","to"],"mappings":";;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAOO,SAASA,OAAT,CAAiB;AAAEC,EAAAA,KAAF;AAASC,EAAAA,MAAT;AAAiBC,EAAAA,OAAO,GAAG;AAA3B,CAAjB,EAAgE;AACrE,SAAOC,iBAAMC,IAAN,CAAY,GAAEJ,KAAK,CAACK,MAAN,CAAaH,OAAb,CAAsB,IAAG,GAAI,IAAGD,MAAO,EAArD,CAAP;AACD;;AAMM,SAASK,cAAT,CAAwB;AAAEC,EAAAA,IAAF;AAAQC,EAAAA;AAAR,CAAxB,EAA2D;AAChE,SAAQ,GAAEL,iBAAMC,IAAN,CAAW,MAAX,CAAmB,KAAIG,IAAK;AACxC,EAAEJ,iBAAMC,IAAN,CAAW,IAAX,CAAiB,KAAII,EAAG;AAC1B,CAFE;AAGD","sourcesContent":["import chalk from 'chalk';\n\ntype LinkRowProps = {\n title: string;\n target: string;\n padding?: number;\n};\nexport function LinkRow({ title, target, padding = 50 }: LinkRowProps) {\n return chalk.bold(`${title.padEnd(padding)} ${'>'} ${target}`);\n}\n\ntype VerboseLinkRowProps = {\n from: string;\n to: string;\n};\nexport function VerboseLinkRow({ from, to }: VerboseLinkRowProps) {\n return `${chalk.bold('from')}: ${from}\n${chalk.bold('to')}: ${to}\n`;\n}\n"]}
1
+ {"version":3,"names":["LinkRow","title","target","padding","chalk","bold","padEnd","VerboseLinkRow","from","to"],"sources":["link-row.ts"],"sourcesContent":["import chalk from 'chalk';\n\ntype LinkRowProps = {\n title: string;\n target: string;\n padding?: number;\n};\nexport function LinkRow({ title, target, padding = 50 }: LinkRowProps) {\n return chalk.bold(`${title.padEnd(padding)} ${'>'} ${target}`);\n}\n\ntype VerboseLinkRowProps = {\n from: string;\n to: string;\n};\nexport function VerboseLinkRow({ from, to }: VerboseLinkRowProps) {\n return `${chalk.bold('from')}: ${from}\n${chalk.bold('to')}: ${to}\n`;\n}\n"],"mappings":";;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAOO,SAASA,OAAT,CAAiB;EAAEC,KAAF;EAASC,MAAT;EAAiBC,OAAO,GAAG;AAA3B,CAAjB,EAAgE;EACrE,OAAOC,gBAAA,CAAMC,IAAN,CAAY,GAAEJ,KAAK,CAACK,MAAN,CAAaH,OAAb,CAAsB,IAAG,GAAI,IAAGD,MAAO,EAArD,CAAP;AACD;;AAMM,SAASK,cAAT,CAAwB;EAAEC,IAAF;EAAQC;AAAR,CAAxB,EAA2D;EAChE,OAAQ,GAAEL,gBAAA,CAAMC,IAAN,CAAW,MAAX,CAAmB,KAAIG,IAAK;AACxC,EAAEJ,gBAAA,CAAMC,IAAN,CAAW,IAAX,CAAiB,KAAII,EAAG;AAC1B,CAFE;AAGD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["link-to-dir.ts"],"names":["linkToDir","links","length","title","chalk","bold","cyan","linksOutput","map","componentId","linksDetail","target","to","join"],"mappings":";;;;;;;;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEO,SAASA,SAAT,CAAmBC,KAAnB,EAA8C;AACnD,MAAI,CAACA,KAAD,IAAU,CAACA,KAAK,CAACC,MAArB,EAA6B,OAAO,EAAP;;AAC7B,QAAMC,KAAK,GAAGC,iBAAMC,IAAN,CAAWC,IAAX,CAAgB,cAAhB,CAAd;;AACA,QAAMC,WAAW,GAAGN,KAAK,CACtBO,GADiB,CACb,CAAC;AAAEC,IAAAA,WAAF;AAAeC,IAAAA;AAAf,GAAD,KAAkC,wBAAQ;AAAEP,IAAAA,KAAK,EAAEM,WAAT;AAAsBE,IAAAA,MAAM,EAAED,WAAW,CAACE;AAA1C,GAAR,CADrB,EAEjBC,IAFiB,CAEZ,IAFY,CAApB;AAIA,SAAQ,GAAEV,KAAM,KAAII,WAAY,IAAhC;AACD","sourcesContent":["import { LinkToDirResult } from '@teambit/dependency-resolver';\nimport chalk from 'chalk';\nimport { LinkRow } from './link-row';\n\nexport function linkToDir(links?: LinkToDirResult[]) {\n if (!links || !links.length) return '';\n const title = chalk.bold.cyan('Target Links');\n const linksOutput = links\n .map(({ componentId, linksDetail }) => LinkRow({ title: componentId, target: linksDetail.to }))\n .join('\\n');\n\n return `${title}\\n${linksOutput}\\n`;\n}\n"]}
1
+ {"version":3,"names":["linkToDir","links","length","title","chalk","bold","cyan","linksOutput","map","componentId","linksDetail","LinkRow","target","to","join"],"sources":["link-to-dir.ts"],"sourcesContent":["import { LinkToDirResult } from '@teambit/dependency-resolver';\nimport chalk from 'chalk';\nimport { LinkRow } from './link-row';\n\nexport function linkToDir(links?: LinkToDirResult[]) {\n if (!links || !links.length) return '';\n const title = chalk.bold.cyan('Target Links');\n const linksOutput = links\n .map(({ componentId, linksDetail }) => LinkRow({ title: componentId, target: linksDetail.to }))\n .join('\\n');\n\n return `${title}\\n${linksOutput}\\n`;\n}\n"],"mappings":";;;;;;;;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEO,SAASA,SAAT,CAAmBC,KAAnB,EAA8C;EACnD,IAAI,CAACA,KAAD,IAAU,CAACA,KAAK,CAACC,MAArB,EAA6B,OAAO,EAAP;;EAC7B,MAAMC,KAAK,GAAGC,gBAAA,CAAMC,IAAN,CAAWC,IAAX,CAAgB,cAAhB,CAAd;;EACA,MAAMC,WAAW,GAAGN,KAAK,CACtBO,GADiB,CACb,CAAC;IAAEC,WAAF;IAAeC;EAAf,CAAD,KAAkC,IAAAC,kBAAA,EAAQ;IAAER,KAAK,EAAEM,WAAT;IAAsBG,MAAM,EAAEF,WAAW,CAACG;EAA1C,CAAR,CADrB,EAEjBC,IAFiB,CAEZ,IAFY,CAApB;EAIA,OAAQ,GAAEX,KAAM,KAAII,WAAY,IAAhC;AACD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["link.cmd.ts"],"names":["LinkCommand","constructor","workspace","logger","docsDomain","description","report","ids","opts","startTime","Date","now","linkResults","json","endTime","numOfComponents","legacyLinkResults","length","timeDiff","coreAspectsLinksWithMainAspect","coreAspectsLinks","teambitBitLink","unshift","numOfCoreAspects","title","name","coreLinks","verbose","compsLinks","componentListLinks","rewireRow","legacyCodemodResults","legacyLinkCodemodResults","nestedLinks","nestedDepsInNmLinks","targetLinks","linkToDirResults","footer","console","chalk","cyan","linkOpts","legacyLink","rewire","linkCoreAspects","linkTeambitBit","linkToDir","target","fetchObject","skipFetchingObjects","link"],"mappings":"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","sourcesContent":["import { Command, CommandOptions } from '@teambit/cli';\nimport { LinkResults } from '@teambit/dependency-resolver';\nimport { Logger } from '@teambit/logger';\nimport { timeFormat } from '@teambit/toolbox.time.time-format';\nimport chalk from 'chalk';\nimport { Workspace, WorkspaceLinkOptions } from '../workspace';\nimport { ComponentListLinks } from './component-list-links';\nimport { CoreAspectsLinks } from './core-aspects-links';\nimport { NestedComponentLinksLinks } from './nested-deps-in-nm-links';\nimport { RewireRow } from './rewire-row';\nimport { linkToDir } from './link-to-dir';\n\ntype LinkCommandOpts = {\n rewire: boolean;\n verbose: boolean;\n target: string;\n skipFetchingObjects?: boolean;\n};\nexport class LinkCommand implements Command {\n name = 'link [ids...]';\n alias = '';\n description: string;\n shortDescription = 'link components and core aspects';\n group = 'development';\n private = false;\n options = [\n ['j', 'json', 'return the output as JSON'],\n ['', 'verbose', 'verbose output'],\n ['r', 'rewire', 'Replace relative paths with module paths in code (e.g. \"../foo\" => \"@bit/foo\")'],\n [\n '',\n 'target <dir>',\n 'EXPERIMENTAL. link to an external directory (similar to npm-link) so other projects could use these components',\n ],\n ['', 'skip-fetching-objects', 'skip fetch missing objects from remotes before linking'],\n ] as CommandOptions;\n\n constructor(\n /**\n * workspace extension.\n */\n private workspace: Workspace,\n\n /**\n * logger extension.\n */\n private logger: Logger,\n\n private docsDomain: string\n ) {\n this.description = `generate symlinks to resolve module paths for imported components.\\nhttps://${this.docsDomain}/workspace/component-links`;\n }\n\n async report([ids]: [string[]], opts: LinkCommandOpts) {\n const startTime = Date.now();\n const linkResults = await this.json([ids], opts);\n const endTime = Date.now();\n const numOfComponents = linkResults.legacyLinkResults?.length;\n const timeDiff = timeFormat(endTime - startTime);\n const coreAspectsLinksWithMainAspect = linkResults.coreAspectsLinks || [];\n if (linkResults.teambitBitLink) {\n coreAspectsLinksWithMainAspect.unshift(linkResults.teambitBitLink);\n }\n const numOfCoreAspects = coreAspectsLinksWithMainAspect.length;\n\n const title = `Linked ${numOfComponents} components and ${numOfCoreAspects} core aspects to node_modules for workspace: ${this.workspace.name}`;\n const coreLinks = CoreAspectsLinks({\n coreAspectsLinks: coreAspectsLinksWithMainAspect,\n verbose: opts.verbose,\n });\n const compsLinks = ComponentListLinks({ componentListLinks: linkResults.legacyLinkResults, verbose: opts.verbose });\n const rewireRow = RewireRow({ legacyCodemodResults: linkResults.legacyLinkCodemodResults });\n const nestedLinks = NestedComponentLinksLinks({\n nestedDepsInNmLinks: linkResults.nestedDepsInNmLinks,\n verbose: opts.verbose,\n });\n const targetLinks = linkToDir(linkResults.linkToDirResults);\n const footer = `Finished. ${timeDiff}`;\n return `${title}\\n${coreLinks}\\n${compsLinks}\\n${rewireRow}${nestedLinks}${targetLinks}${footer}`;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n async json([ids]: [string[]], opts: LinkCommandOpts): Promise<LinkResults> {\n this.logger.console(\n `Linking components and core aspects to node_modules for workspaces: '${chalk.cyan(this.workspace.name)}'`\n );\n\n const linkOpts: WorkspaceLinkOptions = {\n legacyLink: true,\n rewire: opts.rewire,\n linkCoreAspects: true,\n linkTeambitBit: true,\n linkToDir: opts.target,\n fetchObject: !opts.skipFetchingObjects,\n };\n const linkResults = await this.workspace.link(linkOpts);\n return linkResults;\n }\n}\n"]}
1
+ {"version":3,"names":["LinkCommand","constructor","workspace","logger","docsDomain","description","report","ids","opts","startTime","Date","now","linkResults","json","endTime","numOfComponents","legacyLinkResults","length","timeDiff","timeFormat","coreAspectsLinksWithMainAspect","coreAspectsLinks","teambitBitLink","unshift","numOfCoreAspects","title","name","coreLinks","CoreAspectsLinks","verbose","compsLinks","ComponentListLinks","componentListLinks","rewireRow","RewireRow","legacyCodemodResults","legacyLinkCodemodResults","nestedLinks","NestedComponentLinksLinks","nestedDepsInNmLinks","targetLinks","linkToDir","linkToDirResults","footer","console","chalk","cyan","linkOpts","legacyLink","rewire","linkCoreAspects","linkTeambitBit","target","fetchObject","skipFetchingObjects","link"],"sources":["link.cmd.ts"],"sourcesContent":["import { Command, CommandOptions } from '@teambit/cli';\nimport { LinkResults } from '@teambit/dependency-resolver';\nimport { Logger } from '@teambit/logger';\nimport { timeFormat } from '@teambit/toolbox.time.time-format';\nimport chalk from 'chalk';\nimport { Workspace, WorkspaceLinkOptions } from '../workspace';\nimport { ComponentListLinks } from './component-list-links';\nimport { CoreAspectsLinks } from './core-aspects-links';\nimport { NestedComponentLinksLinks } from './nested-deps-in-nm-links';\nimport { RewireRow } from './rewire-row';\nimport { linkToDir } from './link-to-dir';\n\ntype LinkCommandOpts = {\n rewire: boolean;\n verbose: boolean;\n target: string;\n skipFetchingObjects?: boolean;\n};\nexport class LinkCommand implements Command {\n name = 'link [ids...]';\n alias = '';\n description: string;\n shortDescription = 'link components and core aspects';\n group = 'development';\n private = false;\n options = [\n ['j', 'json', 'return the output as JSON'],\n ['', 'verbose', 'verbose output'],\n ['r', 'rewire', 'Replace relative paths with module paths in code (e.g. \"../foo\" => \"@bit/foo\")'],\n [\n '',\n 'target <dir>',\n 'EXPERIMENTAL. link to an external directory (similar to npm-link) so other projects could use these components',\n ],\n ['', 'skip-fetching-objects', 'skip fetch missing objects from remotes before linking'],\n ] as CommandOptions;\n\n constructor(\n /**\n * workspace extension.\n */\n private workspace: Workspace,\n\n /**\n * logger extension.\n */\n private logger: Logger,\n\n private docsDomain: string\n ) {\n this.description = `generate symlinks to resolve module paths for imported components.\\nhttps://${this.docsDomain}/workspace/component-links`;\n }\n\n async report([ids]: [string[]], opts: LinkCommandOpts) {\n const startTime = Date.now();\n const linkResults = await this.json([ids], opts);\n const endTime = Date.now();\n const numOfComponents = linkResults.legacyLinkResults?.length;\n const timeDiff = timeFormat(endTime - startTime);\n const coreAspectsLinksWithMainAspect = linkResults.coreAspectsLinks || [];\n if (linkResults.teambitBitLink) {\n coreAspectsLinksWithMainAspect.unshift(linkResults.teambitBitLink);\n }\n const numOfCoreAspects = coreAspectsLinksWithMainAspect.length;\n\n const title = `Linked ${numOfComponents} components and ${numOfCoreAspects} core aspects to node_modules for workspace: ${this.workspace.name}`;\n const coreLinks = CoreAspectsLinks({\n coreAspectsLinks: coreAspectsLinksWithMainAspect,\n verbose: opts.verbose,\n });\n const compsLinks = ComponentListLinks({ componentListLinks: linkResults.legacyLinkResults, verbose: opts.verbose });\n const rewireRow = RewireRow({ legacyCodemodResults: linkResults.legacyLinkCodemodResults });\n const nestedLinks = NestedComponentLinksLinks({\n nestedDepsInNmLinks: linkResults.nestedDepsInNmLinks,\n verbose: opts.verbose,\n });\n const targetLinks = linkToDir(linkResults.linkToDirResults);\n const footer = `Finished. ${timeDiff}`;\n return `${title}\\n${coreLinks}\\n${compsLinks}\\n${rewireRow}${nestedLinks}${targetLinks}${footer}`;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n async json([ids]: [string[]], opts: LinkCommandOpts): Promise<LinkResults> {\n this.logger.console(\n `Linking components and core aspects to node_modules for workspaces: '${chalk.cyan(this.workspace.name)}'`\n );\n\n const linkOpts: WorkspaceLinkOptions = {\n legacyLink: true,\n rewire: opts.rewire,\n linkCoreAspects: true,\n linkTeambitBit: true,\n linkToDir: opts.target,\n fetchObject: !opts.skipFetchingObjects,\n };\n const linkResults = await this.workspace.link(linkOpts);\n return linkResults;\n }\n}\n"],"mappings":"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"}