@teambit/remove 1.0.627 → 1.0.629

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.
@@ -187,6 +187,8 @@ function _chalk() {
187
187
  return data;
188
188
  }
189
189
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
190
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
191
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
190
192
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
191
193
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
192
194
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
@@ -462,17 +464,30 @@ ${mainComps.map(c => c.id.toString()).join('\n')}`);
462
464
  return this.workspace.isOnMain() ? this.getRemovedStagedFromMain() : this.getRemovedStagedFromLane();
463
465
  }
464
466
  async addRemovedDependenciesIssues(components) {
467
+ const workspacePolicyManifest = this.depResolver.getWorkspacePolicyManifest();
468
+ const workspaceDependencies = _objectSpread(_objectSpread({}, workspacePolicyManifest.dependencies), workspacePolicyManifest.peerDependencies);
469
+ const installedDeps = Object.keys(workspaceDependencies);
465
470
  await (0, _pMapSeries().default)(components, async component => {
466
- await this.addRemovedDepIssue(component);
471
+ await this.addRemovedDepIssue(component, installedDeps);
467
472
  });
468
473
  }
469
- async addRemovedDepIssue(component) {
474
+ async addRemovedDepIssue(component, installedDeps) {
470
475
  const dependencies = this.depResolver.getComponentDependencies(component);
471
476
  const removedDependencies = [];
472
477
  let removedEnv;
473
478
  await Promise.all(dependencies.map(async dep => {
474
479
  const isRemoved = await this.isRemovedByIdWithoutLoadingComponent(dep.componentId);
475
480
  if (!isRemoved) return;
481
+
482
+ // a component can be deleted from the workspace and installed as a package in different version.
483
+ // normally, this is happening when checked out to a lane and a component is deleted from the lane.
484
+ // the user still wants to use it but not as part of the lane.
485
+ const packageName = dep.getPackageName();
486
+ const isAvailableAsInstalledPackage = installedDeps.includes(packageName);
487
+ const bitmapEntry = this.workspace.bitMap.getBitmapEntryIfExist(dep.componentId);
488
+ if (bitmapEntry && isAvailableAsInstalledPackage && bitmapEntry.version !== dep.version) {
489
+ return;
490
+ }
476
491
  const isEnv = await this.isEnvByIdWithoutLoadingComponent(dep.componentId);
477
492
  if (isEnv) {
478
493
  removedEnv = dep.componentId;
@@ -1 +1 @@
1
- {"version":3,"names":["_cli","data","require","_semver","_interopRequireDefault","_logger","_workspace","_componentId","_legacy","_importer","_lodash","_legacy2","_bitError","_dependencyResolver","_componentIssues","_issues","_pMapSeries","_legacy3","_component","_deleteComponentFiles","_removeCmd","_removeComponents","_remove","_remove2","_recoverCmd","_deleteCmd","_scope","_lister","_chalk","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","BEFORE_REMOVE","RemoveMain","constructor","workspace","scope","logger","importer","depResolver","lister","remove","componentsPattern","force","remote","track","deleteFiles","setStatusLine","bitIds","getRemoteBitIdsToRemove","getLocalBitIdsToRemove","consumer","removeResults","removeComponents","ids","ComponentIdList","fromArray","onDestroy","removeLocallyByIds","reasonForRemoval","OutsideWorkspaceError","results","bitMap","write","markRemoveComps","componentIds","updateMain","range","snaps","allComponentsToMarkDeleted","getMany","componentsToDeleteFromFs","componentsIdsToDeleteFromFs","map","c","id","removeComponentsFromNodeModules","state","_consumer","config","removed","removeOnMain","length","forEach","compId","addComponentConfig","RemoveAspect","deleteComponentsFiles","deleteComps","opts","ConsumerNotFound","idsByPattern","newComps","filter","hasVersion","BitError","toString","join","currentLane","getCurrentLaneObject","isNew","Error","laneComp","toComponentIds","compIdsNotOnLane","hasWithoutVersion","chalk","bold","recover","compIdStr","options","bitMapEntry","components","find","compMap","fullName","toStringWithoutVersion","importComp","idStr","import","installNpmPackages","skipDependencyInstallation","writeConfigFiles","skipWriteConfigFiles","override","setAsRemovedFalse","addSpecificComponentConfig","compFromScope","get","rootDir","removeComponentConfig","comp","removeInfo","getRemoveInfo","resolveComponentId","idOnLane","getComponent","compIdWithPossibleVer","changeVersion","head","isDeleted","getRemoteComponent","err","NoHeadNoVersion","throwForMainComponentWhenOnLane","laneComps","toBitIds","mainComps","component","headComponent","getHeadComponent","extensions","findExtension","isDeletedByRange","currentTag","getTag","Boolean","semver","satisfies","version","isDeletedBySnaps","includes","hash","headTag","headComp","undefined","isRemoved","isRemovedByIdWithoutLoadingComponent","componentId","bitmapEntry","getBitmapEntryIfExist","isRecovered","modelComp","getBitObjectModelComponent","legacyScope","objects","isEnvByIdWithoutLoadingComponent","versionObj","getBitObjectVersionById","envData","findCoreExtension","type","getRemovedStaged","isOnMain","getRemovedStagedFromMain","getRemovedStagedFromLane","addRemovedDependenciesIssues","pMapSeries","addRemovedDepIssue","dependencies","getComponentDependencies","removedDependencies","removedEnv","Promise","all","dep","isEnv","push","issues","getOrCreate","IssuesClasses","RemovedDependencies","RemovedEnv","stagedConfig","getStagedConfig","getAll","compConfig","laneIds","workspaceIds","listIds","laneCompIdsNotInWorkspace","wId","isEqualWithoutVersion","comps","staged","snapDistance","getSnapDistance","warn","name","isSourceAhead","compact","hasWildcard","getRemoteCompIdsByWildcards","ComponentID","fromString","provider","cli","loggerMain","componentAspect","importerMain","createLogger","removeMain","registerAddComponentsIssues","bind","registerShowFragments","RemoveFragment","register","RemoveCmd","DeleteCmd","RecoverCmd","exports","WorkspaceAspect","ScopeAspect","CLIAspect","LoggerAspect","ComponentAspect","ImporterAspect","DependencyResolverAspect","IssuesAspect","ListerAspect","MainRuntime","addRuntime","_default"],"sources":["remove.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport semver from 'semver';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { WorkspaceAspect, OutsideWorkspaceError, Workspace } from '@teambit/workspace';\nimport { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport { ConsumerNotFound } from '@teambit/legacy.consumer';\nimport { ImporterAspect, ImporterMain } from '@teambit/importer';\nimport { compact } from 'lodash';\nimport { hasWildcard } from '@teambit/legacy.utils';\nimport { BitError } from '@teambit/bit-error';\nimport { DependencyResolverAspect, DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport { IssuesAspect, IssuesMain } from '@teambit/issues';\nimport pMapSeries from 'p-map-series';\nimport { NoHeadNoVersion } from '@teambit/legacy.scope';\nimport { ComponentAspect, Component, ComponentMain } from '@teambit/component';\nimport { deleteComponentsFiles } from './delete-component-files';\nimport { RemoveCmd } from './remove-cmd';\nimport { RemoveComponentsResult, removeComponents, removeComponentsFromNodeModules } from './remove-components';\nimport { RemoveAspect } from './remove.aspect';\nimport { RemoveFragment } from './remove.fragment';\nimport { RecoverCmd, RecoverOptions } from './recover-cmd';\nimport { DeleteCmd } from './delete-cmd';\nimport { ScopeAspect, ScopeMain } from '@teambit/scope';\nimport { ListerAspect, ListerMain } from '@teambit/lister';\nimport chalk from 'chalk';\n\nconst BEFORE_REMOVE = 'removing components';\n\nexport type RemoveInfo = {\n removed: boolean;\n /**\n * whether to remove the component from default lane once merged\n */\n removeOnMain?: boolean;\n /**\n * Semver range to mark specific versions as deleted\n */\n range?: string;\n /**\n * Array of snap hashes to mark as deleted\n */\n snaps?: string[];\n};\n\nexport type DeleteOpts = { updateMain?: boolean; range?: string; snaps?: string[] };\n\nexport class RemoveMain {\n constructor(\n private workspace: Workspace,\n private scope: ScopeMain,\n public logger: Logger,\n private importer: ImporterMain,\n private depResolver: DependencyResolverMain,\n private lister: ListerMain\n ) {}\n\n async remove({\n componentsPattern,\n force = false,\n remote = false,\n track = false,\n deleteFiles = true,\n }: {\n componentsPattern: string;\n force?: boolean;\n remote?: boolean;\n track?: boolean;\n deleteFiles?: boolean;\n }): Promise<RemoveComponentsResult> {\n this.logger.setStatusLine(BEFORE_REMOVE);\n const bitIds = remote\n ? await this.getRemoteBitIdsToRemove(componentsPattern)\n : await this.getLocalBitIdsToRemove(componentsPattern);\n this.logger.setStatusLine(BEFORE_REMOVE); // again because the loader might changed when talking to the remote\n const consumer = this.workspace?.consumer;\n const removeResults = await removeComponents({\n workspace: this.workspace,\n ids: ComponentIdList.fromArray(bitIds),\n force,\n remote,\n track,\n deleteFiles,\n });\n if (consumer) await consumer.onDestroy('remove');\n return removeResults;\n }\n\n /**\n * remove components from the workspace.\n */\n async removeLocallyByIds(\n ids: ComponentID[],\n { force = false, reasonForRemoval }: { force?: boolean; reasonForRemoval?: string } = {}\n ) {\n if (!this.workspace) throw new OutsideWorkspaceError();\n const results = await removeComponents({\n workspace: this.workspace,\n ids: ComponentIdList.fromArray(ids),\n force,\n remote: false,\n track: false,\n deleteFiles: true,\n });\n await this.workspace.bitMap.write(`remove (by ${reasonForRemoval || 'N/A'})`);\n\n return results;\n }\n\n private async markRemoveComps(\n componentIds: ComponentID[],\n { updateMain, range, snaps }: DeleteOpts\n ): Promise<Component[]> {\n const allComponentsToMarkDeleted = await this.workspace.getMany(componentIds);\n\n const componentsToDeleteFromFs = range || snaps ? [] : allComponentsToMarkDeleted;\n const componentsIdsToDeleteFromFs = ComponentIdList.fromArray(componentsToDeleteFromFs.map((c) => c.id));\n await removeComponentsFromNodeModules(\n this.workspace.consumer,\n componentsToDeleteFromFs.map((c) => c.state._consumer)\n );\n // don't use `this.workspace.addSpecificComponentConfig`, if the component has component.json it will be deleted\n // during this removal along with the entire component dir.\n // in case this is range, the \"removed\" property is set to false. even when the range overlap the current version.\n // the reason is that if we set it to true, then, the component is considered as \"deleted\" for *all* versions.\n // remember that this config is always passed to the next version and if we set removed: true, it'll be copied\n // to the next version even when that version is not in the range.\n const config: RemoveInfo = { removed: !(range || snaps) };\n if (updateMain) config.removeOnMain = true;\n if (range) config.range = range;\n if (snaps && snaps.length) config.snaps = snaps;\n componentIds.forEach((compId) => this.workspace.bitMap.addComponentConfig(compId, RemoveAspect.id, config));\n await this.workspace.bitMap.write('delete');\n await deleteComponentsFiles(this.workspace.consumer, componentsIdsToDeleteFromFs);\n\n return componentsToDeleteFromFs;\n }\n\n async deleteComps(componentsPattern: string, opts: DeleteOpts = {}): Promise<Component[]> {\n if (!this.workspace) throw new ConsumerNotFound();\n const componentIds = await this.workspace.idsByPattern(componentsPattern);\n const newComps = componentIds.filter((id) => !id.hasVersion());\n if (newComps.length) {\n throw new BitError(\n `no need to delete the following new component(s), please remove them by \"bit remove\"\\n${newComps\n .map((id) => id.toString())\n .join('\\n')}`\n );\n }\n const currentLane = await this.workspace.getCurrentLaneObject();\n const { updateMain } = opts;\n if (!updateMain && currentLane?.isNew) {\n throw new Error(\n 'no need to delete components from an un-exported lane, you can remove them by running \"bit remove\"'\n );\n }\n if (currentLane && !updateMain && opts.range) {\n throw new BitError(`--range is not needed when deleting components from a lane, unless --update-main is used`);\n }\n if (currentLane && !updateMain) {\n const laneComp = currentLane.toComponentIds();\n const compIdsNotOnLane = componentIds.filter((id) => !laneComp.hasWithoutVersion(id));\n if (compIdsNotOnLane.length) {\n throw new BitError(\n `unable to delete the following component(s) because they are not part of the current lane.\n${chalk.bold(compIdsNotOnLane.map((id) => id.toString()).join('\\n'))}\nto simply remove them from the workspace, use \"bit remove\".\nto delete them eventually from main, use \"--update-main\" flag and make sure to remove all occurrences from the code.`\n );\n }\n }\n return this.markRemoveComps(componentIds, opts);\n }\n\n /**\n * recover a soft-removed component.\n * there are 4 different scenarios.\n * 1. a component was just soft-removed, it wasn't snapped yet. so it's now in .bitmap with the \"removed\" aspect entry.\n * 1.a. the component still exists in the local scope. no need to import. write it from there.\n * 1.b. the component doesn't exist in the local scope. import it.\n * 2. soft-removed and then snapped. It's not in .bitmap now.\n * 3. soft-removed, snapped, exported. it's not in .bitmap now.\n * 4. a soft-removed components was imported, so it's now in .bitmap without the \"removed\" aspect entry.\n * 5. workspace is empty. the soft-removed component is on the remote.\n * returns `true` if it was recovered. `false` if the component wasn't soft-removed, so nothing to recover from.\n */\n async recover(compIdStr: string, options: RecoverOptions): Promise<boolean> {\n if (!this.workspace) throw new ConsumerNotFound();\n const bitMapEntry = this.workspace.consumer.bitMap.components.find((compMap) => {\n return compMap.id.fullName === compIdStr || compMap.id.toStringWithoutVersion() === compIdStr;\n });\n const importComp = async (idStr: string) => {\n await this.importer.import({\n ids: [idStr],\n installNpmPackages: !options.skipDependencyInstallation,\n writeConfigFiles: !options.skipWriteConfigFiles,\n override: true,\n });\n };\n const setAsRemovedFalse = async (compId: ComponentID) => {\n await this.workspace.addSpecificComponentConfig(compId, RemoveAspect.id, { removed: false });\n await this.workspace.bitMap.write('recover');\n };\n if (bitMapEntry) {\n if (bitMapEntry.config?.[RemoveAspect.id]) {\n // case #1\n const compFromScope = await this.workspace.scope.get(bitMapEntry.id);\n if (compFromScope) {\n // in the case the component is in the scope, we prefer to write it from the scope rather than import it.\n // because in some cases the \"import\" throws an error, e.g. when the component is diverged.\n await this.workspace.write(compFromScope, bitMapEntry.rootDir);\n this.workspace.bitMap.removeComponentConfig(bitMapEntry.id, RemoveAspect.id, false);\n await this.workspace.bitMap.write('recover');\n } else {\n delete bitMapEntry.config?.[RemoveAspect.id];\n await importComp(bitMapEntry.id.toString());\n }\n return true;\n }\n // case #4\n const compId = bitMapEntry.id;\n const comp = await this.workspace.get(compId);\n const removeInfo = await this.getRemoveInfo(comp);\n if (!removeInfo.removed && !removeInfo.range && !removeInfo.snaps) {\n return false;\n }\n await setAsRemovedFalse(compId);\n return true;\n }\n const compId = await this.workspace.scope.resolveComponentId(compIdStr);\n const currentLane = await this.workspace.getCurrentLaneObject();\n const idOnLane = currentLane?.getComponent(compId);\n const compIdWithPossibleVer = idOnLane ? compId.changeVersion(idOnLane.head.toString()) : compId;\n const compFromScope = await this.workspace.scope.get(compIdWithPossibleVer);\n if (compFromScope && (await this.isDeleted(compFromScope))) {\n // case #2 and #3\n await importComp(compIdWithPossibleVer._legacy.toString());\n await setAsRemovedFalse(compIdWithPossibleVer);\n return true;\n }\n // case #5\n let comp: Component | undefined;\n try {\n comp = await this.workspace.scope.getRemoteComponent(compId);\n } catch (err: any) {\n if (err instanceof NoHeadNoVersion) {\n throw new BitError(\n `unable to find the component ${compIdWithPossibleVer.toString()} in the current lane or main`\n );\n }\n throw err;\n }\n if (!(await this.isDeleted(comp))) {\n return false;\n }\n await importComp(compId._legacy.toString());\n await setAsRemovedFalse(compId);\n\n return true;\n }\n\n private async throwForMainComponentWhenOnLane(components: Component[]) {\n const currentLane = await this.workspace.getCurrentLaneObject();\n if (!currentLane) return; // user on main\n const laneComps = currentLane.toBitIds();\n const mainComps = components.filter((comp) => !laneComps.hasWithoutVersion(comp.id));\n if (mainComps.length) {\n throw new BitError(`the following components belong to main, they cannot be soft-removed when on a lane. consider removing them without --soft.\n${mainComps.map((c) => c.id.toString()).join('\\n')}`);\n }\n }\n\n async getRemoveInfo(component: Component): Promise<RemoveInfo> {\n const headComponent = await this.getHeadComponent(component);\n const data = headComponent.config.extensions.findExtension(RemoveAspect.id)?.config as RemoveInfo | undefined;\n\n const isDeletedByRange = () => {\n if (!data?.range) return false;\n const currentTag = component.getTag();\n return Boolean(currentTag && semver.satisfies(currentTag.version, data.range));\n };\n const isDeletedBySnaps = () => {\n if (!data?.snaps || !component.id.version) return false;\n return data.snaps.includes(component.id.version);\n };\n\n return {\n removed: data?.removed || isDeletedByRange() || isDeletedBySnaps() || false,\n range: data?.range,\n snaps: data?.snaps,\n };\n }\n\n private async getHeadComponent(component: Component): Promise<Component> {\n if (\n component.id.version &&\n component.head &&\n component.id.version !== component.head?.hash &&\n component.id.version !== component.headTag?.version.version\n ) {\n const headComp = this.workspace // if workspace exits, prefer using the workspace as it may be modified\n ? await this.workspace.get(component.id.changeVersion(undefined))\n : await this.scope.get(component.id.changeVersion(component.head.hash));\n if (!headComp) throw new Error(`unable to get the head of ${component.id.toString()}`);\n return headComp;\n }\n return component;\n }\n\n /**\n * @deprecated use `isDeleted` instead.\n */\n async isRemoved(component: Component): Promise<boolean> {\n return this.isDeleted(component);\n }\n\n /**\n * whether a component is marked as deleted.\n */\n async isDeleted(component: Component): Promise<boolean> {\n const removeInfo = await this.getRemoveInfo(component);\n return removeInfo.removed;\n }\n\n /**\n * performant version of isRemoved() in case the component object is not available and loading it is expensive.\n */\n async isRemovedByIdWithoutLoadingComponent(componentId: ComponentID): Promise<boolean> {\n if (!componentId.hasVersion()) return false;\n const bitmapEntry = this.workspace.bitMap.getBitmapEntryIfExist(componentId);\n if (bitmapEntry && bitmapEntry.isRemoved()) return true;\n if (bitmapEntry && bitmapEntry.isRecovered()) return false;\n const modelComp = await this.workspace.scope.getBitObjectModelComponent(componentId.changeVersion(undefined));\n if (!modelComp) return false;\n const isRemoved = await modelComp.isRemoved(\n this.workspace.scope.legacyScope.objects,\n componentId.version as string\n );\n return Boolean(isRemoved);\n }\n\n async isEnvByIdWithoutLoadingComponent(componentId: ComponentID): Promise<boolean> {\n const versionObj = await this.workspace.scope.getBitObjectVersionById(componentId);\n const envData = versionObj?.extensions.findCoreExtension('teambit.envs/envs');\n return envData?.data.type === 'env';\n }\n\n /**\n * get components that were soft-removed and tagged/snapped/merged but not exported yet.\n */\n async getRemovedStaged(): Promise<ComponentID[]> {\n return this.workspace.isOnMain() ? this.getRemovedStagedFromMain() : this.getRemovedStagedFromLane();\n }\n\n async addRemovedDependenciesIssues(components: Component[]) {\n await pMapSeries(components, async (component) => {\n await this.addRemovedDepIssue(component);\n });\n }\n\n private async addRemovedDepIssue(component: Component) {\n const dependencies = this.depResolver.getComponentDependencies(component);\n const removedDependencies: ComponentID[] = [];\n let removedEnv: ComponentID | undefined;\n await Promise.all(\n dependencies.map(async (dep) => {\n const isRemoved = await this.isRemovedByIdWithoutLoadingComponent(dep.componentId);\n if (!isRemoved) return;\n const isEnv = await this.isEnvByIdWithoutLoadingComponent(dep.componentId);\n if (isEnv) {\n removedEnv = dep.componentId;\n } else {\n removedDependencies.push(dep.componentId);\n }\n })\n );\n if (removedDependencies.length) {\n component.state.issues.getOrCreate(IssuesClasses.RemovedDependencies).data = removedDependencies.map((r) =>\n r.toString()\n );\n }\n if (removedEnv) {\n component.state.issues.getOrCreate(IssuesClasses.RemovedEnv).data = removedEnv.toString();\n }\n }\n\n private async getRemovedStagedFromMain(): Promise<ComponentID[]> {\n const stagedConfig = await this.workspace.scope.getStagedConfig();\n return stagedConfig\n .getAll()\n .filter((compConfig) => compConfig.config?.[RemoveAspect.id]?.removed)\n .map((compConfig) => compConfig.id);\n }\n\n private async getRemovedStagedFromLane(): Promise<ComponentID[]> {\n const currentLane = await this.workspace.getCurrentLaneObject();\n if (!currentLane) return [];\n const laneIds = currentLane.toComponentIds();\n const workspaceIds = this.workspace.listIds();\n const laneCompIdsNotInWorkspace = laneIds.filter(\n (id) => !workspaceIds.find((wId) => wId.isEqualWithoutVersion(id))\n );\n if (!laneCompIdsNotInWorkspace.length) return [];\n const comps = await this.workspace.scope.getMany(laneCompIdsNotInWorkspace);\n const removed = comps.filter((c) => this.isDeleted(c));\n const staged = await Promise.all(\n removed.map(async (c) => {\n const snapDistance = await this.workspace.scope.getSnapDistance(c.id, false);\n if (snapDistance.err) {\n this.logger.warn(\n `getRemovedStagedFromLane unable to get snapDistance for ${c.id.toString()} due to ${snapDistance.err.name}`\n );\n // todo: not clear what should be done here. should we consider it as removed-staged or not.\n }\n if (snapDistance.isSourceAhead()) return c.id;\n return undefined;\n })\n );\n return compact(staged);\n }\n\n private async getLocalBitIdsToRemove(componentsPattern: string): Promise<ComponentID[]> {\n if (!this.workspace) throw new ConsumerNotFound();\n const componentIds = await this.workspace.idsByPattern(componentsPattern);\n return componentIds.map((id) => id);\n }\n\n private async getRemoteBitIdsToRemove(componentsPattern: string): Promise<ComponentID[]> {\n if (hasWildcard(componentsPattern)) {\n return this.lister.getRemoteCompIdsByWildcards(componentsPattern);\n }\n return [ComponentID.fromString(componentsPattern)];\n }\n\n static slots = [];\n static dependencies = [\n WorkspaceAspect,\n ScopeAspect,\n CLIAspect,\n LoggerAspect,\n ComponentAspect,\n ImporterAspect,\n DependencyResolverAspect,\n IssuesAspect,\n ListerAspect,\n ];\n static runtime = MainRuntime;\n\n static async provider([\n workspace,\n scope,\n cli,\n loggerMain,\n componentAspect,\n importerMain,\n depResolver,\n issues,\n lister,\n ]: [\n Workspace,\n ScopeMain,\n CLIMain,\n LoggerMain,\n ComponentMain,\n ImporterMain,\n DependencyResolverMain,\n IssuesMain,\n ListerMain,\n ]) {\n const logger = loggerMain.createLogger(RemoveAspect.id);\n const removeMain = new RemoveMain(workspace, scope, logger, importerMain, depResolver, lister);\n issues.registerAddComponentsIssues(removeMain.addRemovedDependenciesIssues.bind(removeMain));\n componentAspect.registerShowFragments([new RemoveFragment(removeMain)]);\n cli.register(\n new RemoveCmd(removeMain, workspace),\n new DeleteCmd(removeMain, workspace),\n new RecoverCmd(removeMain)\n );\n return removeMain;\n }\n}\n\nRemoveAspect.addRuntime(RemoveMain);\n\nexport default RemoveMain;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_cli","data","require","_semver","_interopRequireDefault","_logger","_workspace","_componentId","_legacy","_importer","_lodash","_legacy2","_bitError","_dependencyResolver","_componentIssues","_issues","_pMapSeries","_legacy3","_component","_deleteComponentFiles","_removeCmd","_removeComponents","_remove","_remove2","_recoverCmd","_deleteCmd","_scope","_lister","_chalk","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","BEFORE_REMOVE","RemoveMain","constructor","workspace","scope","logger","importer","depResolver","lister","remove","componentsPattern","force","remote","track","deleteFiles","setStatusLine","bitIds","getRemoteBitIdsToRemove","getLocalBitIdsToRemove","consumer","removeResults","removeComponents","ids","ComponentIdList","fromArray","onDestroy","removeLocallyByIds","reasonForRemoval","OutsideWorkspaceError","results","bitMap","write","markRemoveComps","componentIds","updateMain","range","snaps","allComponentsToMarkDeleted","getMany","componentsToDeleteFromFs","componentsIdsToDeleteFromFs","map","c","id","removeComponentsFromNodeModules","state","_consumer","config","removed","removeOnMain","compId","addComponentConfig","RemoveAspect","deleteComponentsFiles","deleteComps","opts","ConsumerNotFound","idsByPattern","newComps","hasVersion","BitError","toString","join","currentLane","getCurrentLaneObject","isNew","Error","laneComp","toComponentIds","compIdsNotOnLane","hasWithoutVersion","chalk","bold","recover","compIdStr","options","bitMapEntry","components","find","compMap","fullName","toStringWithoutVersion","importComp","idStr","import","installNpmPackages","skipDependencyInstallation","writeConfigFiles","skipWriteConfigFiles","override","setAsRemovedFalse","addSpecificComponentConfig","compFromScope","get","rootDir","removeComponentConfig","comp","removeInfo","getRemoveInfo","resolveComponentId","idOnLane","getComponent","compIdWithPossibleVer","changeVersion","head","isDeleted","getRemoteComponent","err","NoHeadNoVersion","throwForMainComponentWhenOnLane","laneComps","toBitIds","mainComps","component","headComponent","getHeadComponent","extensions","findExtension","isDeletedByRange","currentTag","getTag","Boolean","semver","satisfies","version","isDeletedBySnaps","includes","hash","headTag","headComp","undefined","isRemoved","isRemovedByIdWithoutLoadingComponent","componentId","bitmapEntry","getBitmapEntryIfExist","isRecovered","modelComp","getBitObjectModelComponent","legacyScope","objects","isEnvByIdWithoutLoadingComponent","versionObj","getBitObjectVersionById","envData","findCoreExtension","type","getRemovedStaged","isOnMain","getRemovedStagedFromMain","getRemovedStagedFromLane","addRemovedDependenciesIssues","workspacePolicyManifest","getWorkspacePolicyManifest","workspaceDependencies","dependencies","peerDependencies","installedDeps","pMapSeries","addRemovedDepIssue","getComponentDependencies","removedDependencies","removedEnv","Promise","all","dep","packageName","getPackageName","isAvailableAsInstalledPackage","isEnv","issues","getOrCreate","IssuesClasses","RemovedDependencies","RemovedEnv","stagedConfig","getStagedConfig","getAll","compConfig","laneIds","workspaceIds","listIds","laneCompIdsNotInWorkspace","wId","isEqualWithoutVersion","comps","staged","snapDistance","getSnapDistance","warn","name","isSourceAhead","compact","hasWildcard","getRemoteCompIdsByWildcards","ComponentID","fromString","provider","cli","loggerMain","componentAspect","importerMain","createLogger","removeMain","registerAddComponentsIssues","bind","registerShowFragments","RemoveFragment","register","RemoveCmd","DeleteCmd","RecoverCmd","exports","WorkspaceAspect","ScopeAspect","CLIAspect","LoggerAspect","ComponentAspect","ImporterAspect","DependencyResolverAspect","IssuesAspect","ListerAspect","MainRuntime","addRuntime","_default"],"sources":["remove.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport semver from 'semver';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { WorkspaceAspect, OutsideWorkspaceError, Workspace } from '@teambit/workspace';\nimport { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport { ConsumerNotFound } from '@teambit/legacy.consumer';\nimport { ImporterAspect, ImporterMain } from '@teambit/importer';\nimport { compact } from 'lodash';\nimport { hasWildcard } from '@teambit/legacy.utils';\nimport { BitError } from '@teambit/bit-error';\nimport { DependencyResolverAspect, DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport { IssuesAspect, IssuesMain } from '@teambit/issues';\nimport pMapSeries from 'p-map-series';\nimport { NoHeadNoVersion } from '@teambit/legacy.scope';\nimport { ComponentAspect, Component, ComponentMain } from '@teambit/component';\nimport { deleteComponentsFiles } from './delete-component-files';\nimport { RemoveCmd } from './remove-cmd';\nimport { RemoveComponentsResult, removeComponents, removeComponentsFromNodeModules } from './remove-components';\nimport { RemoveAspect } from './remove.aspect';\nimport { RemoveFragment } from './remove.fragment';\nimport { RecoverCmd, RecoverOptions } from './recover-cmd';\nimport { DeleteCmd } from './delete-cmd';\nimport { ScopeAspect, ScopeMain } from '@teambit/scope';\nimport { ListerAspect, ListerMain } from '@teambit/lister';\nimport chalk from 'chalk';\n\nconst BEFORE_REMOVE = 'removing components';\n\nexport type RemoveInfo = {\n removed: boolean;\n /**\n * whether to remove the component from default lane once merged\n */\n removeOnMain?: boolean;\n /**\n * Semver range to mark specific versions as deleted\n */\n range?: string;\n /**\n * Array of snap hashes to mark as deleted\n */\n snaps?: string[];\n};\n\nexport type DeleteOpts = { updateMain?: boolean; range?: string; snaps?: string[] };\n\nexport class RemoveMain {\n constructor(\n private workspace: Workspace,\n private scope: ScopeMain,\n public logger: Logger,\n private importer: ImporterMain,\n private depResolver: DependencyResolverMain,\n private lister: ListerMain\n ) {}\n\n async remove({\n componentsPattern,\n force = false,\n remote = false,\n track = false,\n deleteFiles = true,\n }: {\n componentsPattern: string;\n force?: boolean;\n remote?: boolean;\n track?: boolean;\n deleteFiles?: boolean;\n }): Promise<RemoveComponentsResult> {\n this.logger.setStatusLine(BEFORE_REMOVE);\n const bitIds = remote\n ? await this.getRemoteBitIdsToRemove(componentsPattern)\n : await this.getLocalBitIdsToRemove(componentsPattern);\n this.logger.setStatusLine(BEFORE_REMOVE); // again because the loader might changed when talking to the remote\n const consumer = this.workspace?.consumer;\n const removeResults = await removeComponents({\n workspace: this.workspace,\n ids: ComponentIdList.fromArray(bitIds),\n force,\n remote,\n track,\n deleteFiles,\n });\n if (consumer) await consumer.onDestroy('remove');\n return removeResults;\n }\n\n /**\n * remove components from the workspace.\n */\n async removeLocallyByIds(\n ids: ComponentID[],\n { force = false, reasonForRemoval }: { force?: boolean; reasonForRemoval?: string } = {}\n ) {\n if (!this.workspace) throw new OutsideWorkspaceError();\n const results = await removeComponents({\n workspace: this.workspace,\n ids: ComponentIdList.fromArray(ids),\n force,\n remote: false,\n track: false,\n deleteFiles: true,\n });\n await this.workspace.bitMap.write(`remove (by ${reasonForRemoval || 'N/A'})`);\n\n return results;\n }\n\n private async markRemoveComps(\n componentIds: ComponentID[],\n { updateMain, range, snaps }: DeleteOpts\n ): Promise<Component[]> {\n const allComponentsToMarkDeleted = await this.workspace.getMany(componentIds);\n\n const componentsToDeleteFromFs = range || snaps ? [] : allComponentsToMarkDeleted;\n const componentsIdsToDeleteFromFs = ComponentIdList.fromArray(componentsToDeleteFromFs.map((c) => c.id));\n await removeComponentsFromNodeModules(\n this.workspace.consumer,\n componentsToDeleteFromFs.map((c) => c.state._consumer)\n );\n // don't use `this.workspace.addSpecificComponentConfig`, if the component has component.json it will be deleted\n // during this removal along with the entire component dir.\n // in case this is range, the \"removed\" property is set to false. even when the range overlap the current version.\n // the reason is that if we set it to true, then, the component is considered as \"deleted\" for *all* versions.\n // remember that this config is always passed to the next version and if we set removed: true, it'll be copied\n // to the next version even when that version is not in the range.\n const config: RemoveInfo = { removed: !(range || snaps) };\n if (updateMain) config.removeOnMain = true;\n if (range) config.range = range;\n if (snaps && snaps.length) config.snaps = snaps;\n componentIds.forEach((compId) => this.workspace.bitMap.addComponentConfig(compId, RemoveAspect.id, config));\n await this.workspace.bitMap.write('delete');\n await deleteComponentsFiles(this.workspace.consumer, componentsIdsToDeleteFromFs);\n\n return componentsToDeleteFromFs;\n }\n\n async deleteComps(componentsPattern: string, opts: DeleteOpts = {}): Promise<Component[]> {\n if (!this.workspace) throw new ConsumerNotFound();\n const componentIds = await this.workspace.idsByPattern(componentsPattern);\n const newComps = componentIds.filter((id) => !id.hasVersion());\n if (newComps.length) {\n throw new BitError(\n `no need to delete the following new component(s), please remove them by \"bit remove\"\\n${newComps\n .map((id) => id.toString())\n .join('\\n')}`\n );\n }\n const currentLane = await this.workspace.getCurrentLaneObject();\n const { updateMain } = opts;\n if (!updateMain && currentLane?.isNew) {\n throw new Error(\n 'no need to delete components from an un-exported lane, you can remove them by running \"bit remove\"'\n );\n }\n if (currentLane && !updateMain && opts.range) {\n throw new BitError(`--range is not needed when deleting components from a lane, unless --update-main is used`);\n }\n if (currentLane && !updateMain) {\n const laneComp = currentLane.toComponentIds();\n const compIdsNotOnLane = componentIds.filter((id) => !laneComp.hasWithoutVersion(id));\n if (compIdsNotOnLane.length) {\n throw new BitError(\n `unable to delete the following component(s) because they are not part of the current lane.\n${chalk.bold(compIdsNotOnLane.map((id) => id.toString()).join('\\n'))}\nto simply remove them from the workspace, use \"bit remove\".\nto delete them eventually from main, use \"--update-main\" flag and make sure to remove all occurrences from the code.`\n );\n }\n }\n return this.markRemoveComps(componentIds, opts);\n }\n\n /**\n * recover a soft-removed component.\n * there are 4 different scenarios.\n * 1. a component was just soft-removed, it wasn't snapped yet. so it's now in .bitmap with the \"removed\" aspect entry.\n * 1.a. the component still exists in the local scope. no need to import. write it from there.\n * 1.b. the component doesn't exist in the local scope. import it.\n * 2. soft-removed and then snapped. It's not in .bitmap now.\n * 3. soft-removed, snapped, exported. it's not in .bitmap now.\n * 4. a soft-removed components was imported, so it's now in .bitmap without the \"removed\" aspect entry.\n * 5. workspace is empty. the soft-removed component is on the remote.\n * returns `true` if it was recovered. `false` if the component wasn't soft-removed, so nothing to recover from.\n */\n async recover(compIdStr: string, options: RecoverOptions): Promise<boolean> {\n if (!this.workspace) throw new ConsumerNotFound();\n const bitMapEntry = this.workspace.consumer.bitMap.components.find((compMap) => {\n return compMap.id.fullName === compIdStr || compMap.id.toStringWithoutVersion() === compIdStr;\n });\n const importComp = async (idStr: string) => {\n await this.importer.import({\n ids: [idStr],\n installNpmPackages: !options.skipDependencyInstallation,\n writeConfigFiles: !options.skipWriteConfigFiles,\n override: true,\n });\n };\n const setAsRemovedFalse = async (compId: ComponentID) => {\n await this.workspace.addSpecificComponentConfig(compId, RemoveAspect.id, { removed: false });\n await this.workspace.bitMap.write('recover');\n };\n if (bitMapEntry) {\n if (bitMapEntry.config?.[RemoveAspect.id]) {\n // case #1\n const compFromScope = await this.workspace.scope.get(bitMapEntry.id);\n if (compFromScope) {\n // in the case the component is in the scope, we prefer to write it from the scope rather than import it.\n // because in some cases the \"import\" throws an error, e.g. when the component is diverged.\n await this.workspace.write(compFromScope, bitMapEntry.rootDir);\n this.workspace.bitMap.removeComponentConfig(bitMapEntry.id, RemoveAspect.id, false);\n await this.workspace.bitMap.write('recover');\n } else {\n delete bitMapEntry.config?.[RemoveAspect.id];\n await importComp(bitMapEntry.id.toString());\n }\n return true;\n }\n // case #4\n const compId = bitMapEntry.id;\n const comp = await this.workspace.get(compId);\n const removeInfo = await this.getRemoveInfo(comp);\n if (!removeInfo.removed && !removeInfo.range && !removeInfo.snaps) {\n return false;\n }\n await setAsRemovedFalse(compId);\n return true;\n }\n const compId = await this.workspace.scope.resolveComponentId(compIdStr);\n const currentLane = await this.workspace.getCurrentLaneObject();\n const idOnLane = currentLane?.getComponent(compId);\n const compIdWithPossibleVer = idOnLane ? compId.changeVersion(idOnLane.head.toString()) : compId;\n const compFromScope = await this.workspace.scope.get(compIdWithPossibleVer);\n if (compFromScope && (await this.isDeleted(compFromScope))) {\n // case #2 and #3\n await importComp(compIdWithPossibleVer._legacy.toString());\n await setAsRemovedFalse(compIdWithPossibleVer);\n return true;\n }\n // case #5\n let comp: Component | undefined;\n try {\n comp = await this.workspace.scope.getRemoteComponent(compId);\n } catch (err: any) {\n if (err instanceof NoHeadNoVersion) {\n throw new BitError(\n `unable to find the component ${compIdWithPossibleVer.toString()} in the current lane or main`\n );\n }\n throw err;\n }\n if (!(await this.isDeleted(comp))) {\n return false;\n }\n await importComp(compId._legacy.toString());\n await setAsRemovedFalse(compId);\n\n return true;\n }\n\n private async throwForMainComponentWhenOnLane(components: Component[]) {\n const currentLane = await this.workspace.getCurrentLaneObject();\n if (!currentLane) return; // user on main\n const laneComps = currentLane.toBitIds();\n const mainComps = components.filter((comp) => !laneComps.hasWithoutVersion(comp.id));\n if (mainComps.length) {\n throw new BitError(`the following components belong to main, they cannot be soft-removed when on a lane. consider removing them without --soft.\n${mainComps.map((c) => c.id.toString()).join('\\n')}`);\n }\n }\n\n async getRemoveInfo(component: Component): Promise<RemoveInfo> {\n const headComponent = await this.getHeadComponent(component);\n const data = headComponent.config.extensions.findExtension(RemoveAspect.id)?.config as RemoveInfo | undefined;\n\n const isDeletedByRange = () => {\n if (!data?.range) return false;\n const currentTag = component.getTag();\n return Boolean(currentTag && semver.satisfies(currentTag.version, data.range));\n };\n const isDeletedBySnaps = () => {\n if (!data?.snaps || !component.id.version) return false;\n return data.snaps.includes(component.id.version);\n };\n\n return {\n removed: data?.removed || isDeletedByRange() || isDeletedBySnaps() || false,\n range: data?.range,\n snaps: data?.snaps,\n };\n }\n\n private async getHeadComponent(component: Component): Promise<Component> {\n if (\n component.id.version &&\n component.head &&\n component.id.version !== component.head?.hash &&\n component.id.version !== component.headTag?.version.version\n ) {\n const headComp = this.workspace // if workspace exits, prefer using the workspace as it may be modified\n ? await this.workspace.get(component.id.changeVersion(undefined))\n : await this.scope.get(component.id.changeVersion(component.head.hash));\n if (!headComp) throw new Error(`unable to get the head of ${component.id.toString()}`);\n return headComp;\n }\n return component;\n }\n\n /**\n * @deprecated use `isDeleted` instead.\n */\n async isRemoved(component: Component): Promise<boolean> {\n return this.isDeleted(component);\n }\n\n /**\n * whether a component is marked as deleted.\n */\n async isDeleted(component: Component): Promise<boolean> {\n const removeInfo = await this.getRemoveInfo(component);\n return removeInfo.removed;\n }\n\n /**\n * performant version of isRemoved() in case the component object is not available and loading it is expensive.\n */\n async isRemovedByIdWithoutLoadingComponent(componentId: ComponentID): Promise<boolean> {\n if (!componentId.hasVersion()) return false;\n const bitmapEntry = this.workspace.bitMap.getBitmapEntryIfExist(componentId);\n if (bitmapEntry && bitmapEntry.isRemoved()) return true;\n if (bitmapEntry && bitmapEntry.isRecovered()) return false;\n const modelComp = await this.workspace.scope.getBitObjectModelComponent(componentId.changeVersion(undefined));\n if (!modelComp) return false;\n const isRemoved = await modelComp.isRemoved(\n this.workspace.scope.legacyScope.objects,\n componentId.version as string\n );\n return Boolean(isRemoved);\n }\n\n async isEnvByIdWithoutLoadingComponent(componentId: ComponentID): Promise<boolean> {\n const versionObj = await this.workspace.scope.getBitObjectVersionById(componentId);\n const envData = versionObj?.extensions.findCoreExtension('teambit.envs/envs');\n return envData?.data.type === 'env';\n }\n\n /**\n * get components that were soft-removed and tagged/snapped/merged but not exported yet.\n */\n async getRemovedStaged(): Promise<ComponentID[]> {\n return this.workspace.isOnMain() ? this.getRemovedStagedFromMain() : this.getRemovedStagedFromLane();\n }\n\n async addRemovedDependenciesIssues(components: Component[]) {\n const workspacePolicyManifest = this.depResolver.getWorkspacePolicyManifest();\n const workspaceDependencies = {\n ...workspacePolicyManifest.dependencies,\n ...workspacePolicyManifest.peerDependencies,\n };\n const installedDeps = Object.keys(workspaceDependencies);\n await pMapSeries(components, async (component) => {\n await this.addRemovedDepIssue(component, installedDeps);\n });\n }\n\n private async addRemovedDepIssue(component: Component, installedDeps: string[]) {\n const dependencies = this.depResolver.getComponentDependencies(component);\n const removedDependencies: ComponentID[] = [];\n let removedEnv: ComponentID | undefined;\n\n await Promise.all(\n dependencies.map(async (dep) => {\n const isRemoved = await this.isRemovedByIdWithoutLoadingComponent(dep.componentId);\n if (!isRemoved) return;\n\n // a component can be deleted from the workspace and installed as a package in different version.\n // normally, this is happening when checked out to a lane and a component is deleted from the lane.\n // the user still wants to use it but not as part of the lane.\n const packageName = dep.getPackageName();\n const isAvailableAsInstalledPackage = installedDeps.includes(packageName);\n const bitmapEntry = this.workspace.bitMap.getBitmapEntryIfExist(dep.componentId);\n if (bitmapEntry && isAvailableAsInstalledPackage && bitmapEntry.version !== dep.version) {\n return;\n }\n\n const isEnv = await this.isEnvByIdWithoutLoadingComponent(dep.componentId);\n if (isEnv) {\n removedEnv = dep.componentId;\n } else {\n removedDependencies.push(dep.componentId);\n }\n })\n );\n if (removedDependencies.length) {\n component.state.issues.getOrCreate(IssuesClasses.RemovedDependencies).data = removedDependencies.map((r) =>\n r.toString()\n );\n }\n if (removedEnv) {\n component.state.issues.getOrCreate(IssuesClasses.RemovedEnv).data = removedEnv.toString();\n }\n }\n\n private async getRemovedStagedFromMain(): Promise<ComponentID[]> {\n const stagedConfig = await this.workspace.scope.getStagedConfig();\n return stagedConfig\n .getAll()\n .filter((compConfig) => compConfig.config?.[RemoveAspect.id]?.removed)\n .map((compConfig) => compConfig.id);\n }\n\n private async getRemovedStagedFromLane(): Promise<ComponentID[]> {\n const currentLane = await this.workspace.getCurrentLaneObject();\n if (!currentLane) return [];\n const laneIds = currentLane.toComponentIds();\n const workspaceIds = this.workspace.listIds();\n const laneCompIdsNotInWorkspace = laneIds.filter(\n (id) => !workspaceIds.find((wId) => wId.isEqualWithoutVersion(id))\n );\n if (!laneCompIdsNotInWorkspace.length) return [];\n const comps = await this.workspace.scope.getMany(laneCompIdsNotInWorkspace);\n const removed = comps.filter((c) => this.isDeleted(c));\n const staged = await Promise.all(\n removed.map(async (c) => {\n const snapDistance = await this.workspace.scope.getSnapDistance(c.id, false);\n if (snapDistance.err) {\n this.logger.warn(\n `getRemovedStagedFromLane unable to get snapDistance for ${c.id.toString()} due to ${snapDistance.err.name}`\n );\n // todo: not clear what should be done here. should we consider it as removed-staged or not.\n }\n if (snapDistance.isSourceAhead()) return c.id;\n return undefined;\n })\n );\n return compact(staged);\n }\n\n private async getLocalBitIdsToRemove(componentsPattern: string): Promise<ComponentID[]> {\n if (!this.workspace) throw new ConsumerNotFound();\n const componentIds = await this.workspace.idsByPattern(componentsPattern);\n return componentIds.map((id) => id);\n }\n\n private async getRemoteBitIdsToRemove(componentsPattern: string): Promise<ComponentID[]> {\n if (hasWildcard(componentsPattern)) {\n return this.lister.getRemoteCompIdsByWildcards(componentsPattern);\n }\n return [ComponentID.fromString(componentsPattern)];\n }\n\n static slots = [];\n static dependencies = [\n WorkspaceAspect,\n ScopeAspect,\n CLIAspect,\n LoggerAspect,\n ComponentAspect,\n ImporterAspect,\n DependencyResolverAspect,\n IssuesAspect,\n ListerAspect,\n ];\n static runtime = MainRuntime;\n\n static async provider([\n workspace,\n scope,\n cli,\n loggerMain,\n componentAspect,\n importerMain,\n depResolver,\n issues,\n lister,\n ]: [\n Workspace,\n ScopeMain,\n CLIMain,\n LoggerMain,\n ComponentMain,\n ImporterMain,\n DependencyResolverMain,\n IssuesMain,\n ListerMain,\n ]) {\n const logger = loggerMain.createLogger(RemoveAspect.id);\n const removeMain = new RemoveMain(workspace, scope, logger, importerMain, depResolver, lister);\n issues.registerAddComponentsIssues(removeMain.addRemovedDependenciesIssues.bind(removeMain));\n componentAspect.registerShowFragments([new RemoveFragment(removeMain)]);\n cli.register(\n new RemoveCmd(removeMain, workspace),\n new DeleteCmd(removeMain, workspace),\n new RecoverCmd(removeMain)\n );\n return removeMain;\n }\n}\n\nRemoveAspect.addRuntime(RemoveMain);\n\nexport default RemoveMain;\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/remove",
3
- "version": "1.0.627",
3
+ "version": "1.0.629",
4
4
  "homepage": "https://bit.cloud/teambit/component/remove",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.component",
8
8
  "name": "remove",
9
- "version": "1.0.627"
9
+ "version": "1.0.629"
10
10
  },
11
11
  "dependencies": {
12
12
  "chalk": "4.1.2",
@@ -20,10 +20,10 @@
20
20
  "@teambit/bit-error": "0.0.404",
21
21
  "@teambit/component-id": "1.2.4",
22
22
  "@teambit/harmony": "0.4.7",
23
- "@teambit/cli": "0.0.1204",
23
+ "@teambit/cli": "0.0.1206",
24
24
  "@teambit/legacy.constants": "0.0.11",
25
25
  "@teambit/legacy.scope": "0.0.51",
26
- "@teambit/workspace": "1.0.627",
26
+ "@teambit/workspace": "1.0.629",
27
27
  "@teambit/component.sources": "0.0.103",
28
28
  "@teambit/legacy.consumer": "0.0.51",
29
29
  "@teambit/legacy.logger": "0.0.19",
@@ -32,15 +32,15 @@
32
32
  "@teambit/pkg.modules.component-package-name": "0.0.58",
33
33
  "@teambit/scope.network": "0.0.51",
34
34
  "@teambit/scope.remotes": "0.0.51",
35
- "@teambit/component": "1.0.627",
35
+ "@teambit/component": "1.0.629",
36
36
  "@teambit/component-issues": "0.0.159",
37
- "@teambit/dependency-resolver": "1.0.627",
38
- "@teambit/importer": "1.0.627",
39
- "@teambit/issues": "1.0.627",
37
+ "@teambit/dependency-resolver": "1.0.629",
38
+ "@teambit/importer": "1.0.629",
39
+ "@teambit/issues": "1.0.629",
40
40
  "@teambit/legacy.utils": "0.0.21",
41
- "@teambit/lister": "1.0.627",
42
- "@teambit/logger": "0.0.1297",
43
- "@teambit/scope": "1.0.627"
41
+ "@teambit/lister": "1.0.629",
42
+ "@teambit/logger": "0.0.1299",
43
+ "@teambit/scope": "1.0.629"
44
44
  },
45
45
  "devDependencies": {
46
46
  "@types/fs-extra": "9.0.7",