@teambit/snapping 1.0.931 → 1.0.933

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/reset-cmd.js CHANGED
@@ -25,6 +25,13 @@ function _yesno() {
25
25
  };
26
26
  return data;
27
27
  }
28
+ function _cli() {
29
+ const data = require("@teambit/cli");
30
+ _cli = function () {
31
+ return data;
32
+ };
33
+ return data;
34
+ }
28
35
  function _legacy() {
29
36
  const data = require("@teambit/legacy.constants");
30
37
  _legacy = function () {
@@ -64,7 +71,8 @@ useful for undoing mistakes before exporting. exported versions cannot be reset.
64
71
  }) {
65
72
  if (neverExported) {
66
73
  const compIds = await this.snapping.resetNeverExported();
67
- return _chalk().default.green(`successfully reset the following never-exported components:\n${compIds.join('\n')}`);
74
+ const items = compIds.map(id => (0, _cli().formatItem)(id.toString()));
75
+ return (0, _cli().joinSections)([(0, _cli().formatSection)('reset never-exported components', '', items), (0, _cli().formatSuccessSummary)(`successfully reset ${compIds.length} never-exported component(s)`)]);
68
76
  }
69
77
  if (soft && head) {
70
78
  throw new (_bitError().BitError)('please specify either --soft or --head flag, not both');
@@ -77,12 +85,10 @@ useful for undoing mistakes before exporting. exported versions cannot be reset.
77
85
  results,
78
86
  isSoftUntag
79
87
  } = await this.snapping.reset(pattern, head, force, soft);
80
- const titleSuffix = isSoftUntag ? 'soft-untagged (are not candidates for tagging any more)' : 'reset';
81
- const title = _chalk().default.green(`${results.length} component(s) were ${titleSuffix}:\n`);
82
- const components = results.map(result => {
83
- return `${_chalk().default.cyan(result.id.toStringWithoutVersion())}. version(s): ${result.versions.join(', ')}`;
84
- });
85
- return title + components.join('\n');
88
+ const titleSuffix = isSoftUntag ? 'soft-untagged' : 'reset';
89
+ const description = isSoftUntag ? 'soft-untagged versions are no longer candidates for tagging' : '';
90
+ const items = results.map(result => (0, _cli().formatItem)(`${_chalk().default.cyan(result.id.toStringWithoutVersion())} - version(s): ${result.versions.join(', ')}`));
91
+ return (0, _cli().joinSections)([(0, _cli().formatSection)(`${titleSuffix} components`, description, items), (0, _cli().formatSuccessSummary)(`${results.length} component(s) ${titleSuffix} successfully`)]);
86
92
  }
87
93
  async promptForResetAll() {
88
94
  this.snapping.logger.clearStatusLine();
@@ -1 +1 @@
1
- {"version":3,"names":["_bitError","data","require","_chalk","_interopRequireDefault","_yesno","_legacy","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ResetCmd","constructor","snapping","name","description","COMPONENT_PATTERN_HELP","report","pattern","all","head","force","soft","silent","neverExported","compIds","resetNeverExported","chalk","green","join","BitError","promptForResetAll","results","isSoftUntag","reset","titleSuffix","title","length","components","map","result","cyan","id","toStringWithoutVersion","versions","logger","clearStatusLine","ok","yesno","question","bold","exports"],"sources":["reset-cmd.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\nimport chalk from 'chalk';\nimport yesno from 'yesno';\nimport type { Command, CommandOptions } from '@teambit/cli';\nimport { COMPONENT_PATTERN_HELP } from '@teambit/legacy.constants';\nimport type { SnappingMain } from './snapping.main.runtime';\n\nexport default class ResetCmd implements Command {\n name = 'reset [component-pattern]';\n description = 'revert local tags and snaps to previous versions';\n arguments = [\n {\n name: 'component-pattern',\n description: COMPONENT_PATTERN_HELP,\n },\n ];\n group = 'version-control';\n extendedDescription = `removes local component versions (tags/snaps) that haven't been exported yet.\nif no component-pattern is provided, resets all components (with confirmation prompt).\nby default reverts all local versions of each component. use --head to revert only the latest version.\nuseful for undoing mistakes before exporting. exported versions cannot be reset.`;\n alias = '';\n options = [\n ['a', 'all', 'DEPRECATED. this is now the default behavior when no component-pattern is provided'],\n ['', 'head', 'revert the head tag/snap only (by default, all local tags/snaps are reverted)'],\n ['', 'soft', 'revert only soft-tags (components tagged with --soft flag)'],\n [\n 'f',\n 'force',\n \"revert the tag even if it's used as a dependency. WARNING: components that depend on this tag will be corrupted\",\n ],\n ['', 'never-exported', 'reset only components that were never exported'],\n ['s', 'silent', 'skip confirmation when resetting all components'],\n ] as CommandOptions;\n loader = true;\n\n constructor(private snapping: SnappingMain) {}\n\n async report(\n [pattern]: [string],\n {\n all = false,\n head = false,\n force = false,\n soft = false,\n silent = false,\n neverExported = false,\n }: { all?: boolean; head?: boolean; force?: boolean; soft?: boolean; silent?: boolean; neverExported?: boolean }\n ) {\n if (neverExported) {\n const compIds = await this.snapping.resetNeverExported();\n return chalk.green(`successfully reset the following never-exported components:\\n${compIds.join('\\n')}`);\n }\n if (soft && head) {\n throw new BitError('please specify either --soft or --head flag, not both');\n }\n // if no pattern provided, reset all components (with confirmation unless --silent or --all)\n if (!pattern && !silent && !all) {\n await this.promptForResetAll();\n }\n const { results, isSoftUntag } = await this.snapping.reset(pattern, head, force, soft);\n const titleSuffix = isSoftUntag ? 'soft-untagged (are not candidates for tagging any more)' : 'reset';\n const title = chalk.green(`${results.length} component(s) were ${titleSuffix}:\\n`);\n const components = results.map((result) => {\n return `${chalk.cyan(result.id.toStringWithoutVersion())}. version(s): ${result.versions.join(', ')}`;\n });\n return title + components.join('\\n');\n }\n\n private async promptForResetAll() {\n this.snapping.logger.clearStatusLine();\n const ok = await yesno({\n question: `${chalk.bold('This will reset all local tags/snaps for all components. Would you like to proceed? [yes(y)/no(n)]')}`,\n });\n if (!ok) {\n throw new BitError('the operation has been canceled');\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_bitError","data","require","_chalk","_interopRequireDefault","_yesno","_cli","_legacy","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ResetCmd","constructor","snapping","name","description","COMPONENT_PATTERN_HELP","report","pattern","all","head","force","soft","silent","neverExported","compIds","resetNeverExported","items","map","id","formatItem","toString","joinSections","formatSection","formatSuccessSummary","length","BitError","promptForResetAll","results","isSoftUntag","reset","titleSuffix","result","chalk","cyan","toStringWithoutVersion","versions","join","logger","clearStatusLine","ok","yesno","question","bold","exports"],"sources":["reset-cmd.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\nimport chalk from 'chalk';\nimport yesno from 'yesno';\nimport type { Command, CommandOptions } from '@teambit/cli';\nimport { formatSection, formatItem, formatSuccessSummary, joinSections } from '@teambit/cli';\nimport { COMPONENT_PATTERN_HELP } from '@teambit/legacy.constants';\nimport type { SnappingMain } from './snapping.main.runtime';\n\nexport default class ResetCmd implements Command {\n name = 'reset [component-pattern]';\n description = 'revert local tags and snaps to previous versions';\n arguments = [\n {\n name: 'component-pattern',\n description: COMPONENT_PATTERN_HELP,\n },\n ];\n group = 'version-control';\n extendedDescription = `removes local component versions (tags/snaps) that haven't been exported yet.\nif no component-pattern is provided, resets all components (with confirmation prompt).\nby default reverts all local versions of each component. use --head to revert only the latest version.\nuseful for undoing mistakes before exporting. exported versions cannot be reset.`;\n alias = '';\n options = [\n ['a', 'all', 'DEPRECATED. this is now the default behavior when no component-pattern is provided'],\n ['', 'head', 'revert the head tag/snap only (by default, all local tags/snaps are reverted)'],\n ['', 'soft', 'revert only soft-tags (components tagged with --soft flag)'],\n [\n 'f',\n 'force',\n \"revert the tag even if it's used as a dependency. WARNING: components that depend on this tag will be corrupted\",\n ],\n ['', 'never-exported', 'reset only components that were never exported'],\n ['s', 'silent', 'skip confirmation when resetting all components'],\n ] as CommandOptions;\n loader = true;\n\n constructor(private snapping: SnappingMain) {}\n\n async report(\n [pattern]: [string],\n {\n all = false,\n head = false,\n force = false,\n soft = false,\n silent = false,\n neverExported = false,\n }: { all?: boolean; head?: boolean; force?: boolean; soft?: boolean; silent?: boolean; neverExported?: boolean }\n ) {\n if (neverExported) {\n const compIds = await this.snapping.resetNeverExported();\n const items = compIds.map((id) => formatItem(id.toString()));\n return joinSections([\n formatSection('reset never-exported components', '', items),\n formatSuccessSummary(`successfully reset ${compIds.length} never-exported component(s)`),\n ]);\n }\n if (soft && head) {\n throw new BitError('please specify either --soft or --head flag, not both');\n }\n // if no pattern provided, reset all components (with confirmation unless --silent or --all)\n if (!pattern && !silent && !all) {\n await this.promptForResetAll();\n }\n const { results, isSoftUntag } = await this.snapping.reset(pattern, head, force, soft);\n const titleSuffix = isSoftUntag ? 'soft-untagged' : 'reset';\n const description = isSoftUntag ? 'soft-untagged versions are no longer candidates for tagging' : '';\n const items = results.map((result) =>\n formatItem(`${chalk.cyan(result.id.toStringWithoutVersion())} - version(s): ${result.versions.join(', ')}`)\n );\n return joinSections([\n formatSection(`${titleSuffix} components`, description, items),\n formatSuccessSummary(`${results.length} component(s) ${titleSuffix} successfully`),\n ]);\n }\n\n private async promptForResetAll() {\n this.snapping.logger.clearStatusLine();\n const ok = await yesno({\n question: `${chalk.bold('This will reset all local tags/snaps for all components. Would you like to proceed? [yes(y)/no(n)]')}`,\n });\n if (!ok) {\n throw new BitError('the operation has been canceled');\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -77,7 +77,8 @@ async function removeLocalVersion(consumer, id, lane, head, force = false) {
77
77
  let batchIds;
78
78
  if (lane) {
79
79
  const versionObjects = await Promise.all(versionsToRemoveStr.map(ver => component.loadVersion(ver, consumer.scope.objects, false)));
80
- batchIds = [...new Set((0, _lodash().compact)((0, _lodash().compact)(versionObjects).map(v => v.batchId)))];
80
+ const loadedVersions = (0, _lodash().compact)(versionObjects);
81
+ batchIds = [...new Set((0, _lodash().compact)(loadedVersions.map(v => v.batchId)))];
81
82
  }
82
83
  const headBefore = component.getHead();
83
84
  await consumer.scope.sources.removeComponentVersions(component, versionsToRemove, versionsToRemoveStr, lane, head);
@@ -1 +1 @@
1
- {"version":3,"names":["_lodash","data","require","_bitError","_legacy","_legacy2","_legacy3","removeLocalVersion","consumer","id","lane","head","force","component","scope","getModelComponent","idStr","toString","fromBitmap","bitMap","getComponentIdIfExist","localVersions","getLocalHashes","objects","length","BitError","headRef","getHeadRegardlessOfLane","Error","find","v","isEqual","versionsToRemove","versionsToRemoveStr","switchHashesWithTagsIfExist","dependencyGraph","DependencyGraph","loadAllVersions","forEach","versionToRemove","idWithVersion","toComponentId","changeVersion","dependents","getImmediateDependentsPerId","join","batchIds","versionObjects","Promise","all","map","ver","loadVersion","Set","compact","batchId","headBefore","getHead","sources","removeComponentVersions","headAfter","versionToSetInBitmap","divergeData","getDivergeData","snapBeforeDetached","commonSnapBeforeDiverge","getTagOfRefIfExists","versions","removeLocalVersionsForAllComponents","workspace","remove","componentsToUntag","getComponentsWithOptionToUntag","removeLocalVersionsForMultipleComponents","candidateComponentsIds","bitId","candidateComponentsIdsStr","dependentsNotCandidates","filter","dependent","includes","version","logger","debug","componentList","ComponentsList","laneObj","getCurrentLaneObject","components","listExportPendingComponents","removedStagedIds","getRemovedStaged","removedStagedBitIds","nonExistsInStaged","c","isEqualWithoutVersion","modelComps","push"],"sources":["reset-component.ts"],"sourcesContent":["import { compact } from 'lodash';\nimport { BitError } from '@teambit/bit-error';\nimport type { ComponentID } from '@teambit/component-id';\nimport type { Consumer } from '@teambit/legacy.consumer';\nimport { ComponentsList } from '@teambit/legacy.component-list';\nimport { logger } from '@teambit/legacy.logger';\nimport type { Lane, ModelComponent } from '@teambit/objects';\nimport type { RemoveMain } from '@teambit/remove';\nimport { DependencyGraph } from '@teambit/legacy.dependency-graph';\nimport type { Workspace } from '@teambit/workspace';\n\nexport type ResetResult = {\n id: ComponentID;\n versions: string[];\n component?: ModelComponent;\n /**\n * relevant when the component was detached head so the head didn't change.\n * we want .bitmap to have the version before the detachment. not as the head.\n */\n versionToSetInBitmap?: string;\n /** batchIds from the version objects being removed, used to clean up lane history entries */\n batchIds?: string[];\n};\n\n/**\n * If head is false, remove all local versions.\n */\nexport async function removeLocalVersion(\n consumer: Consumer,\n id: ComponentID,\n lane?: Lane,\n head?: boolean,\n force = false\n): Promise<ResetResult> {\n const component: ModelComponent = await consumer.scope.getModelComponent(id);\n const idStr = id.toString();\n const fromBitmap = consumer.bitMap.getComponentIdIfExist(id);\n const localVersions = await component.getLocalHashes(consumer.scope.objects, fromBitmap);\n if (!localVersions.length) throw new BitError(`unable to untag ${idStr}, the component is not staged`);\n const headRef = component.getHeadRegardlessOfLane();\n if (!headRef) {\n throw new Error(`unable to reset ${idStr}, it has not head`);\n }\n if (head && !localVersions.find((v) => v.isEqual(headRef))) {\n throw new Error(`unable to reset ${idStr}, the head ${headRef.toString()} is exported`);\n }\n const versionsToRemove = head ? [headRef] : localVersions;\n const versionsToRemoveStr = component.switchHashesWithTagsIfExist(versionsToRemove);\n\n if (!force) {\n const dependencyGraph = await DependencyGraph.loadAllVersions(consumer.scope);\n\n versionsToRemoveStr.forEach((versionToRemove) => {\n const idWithVersion = component.toComponentId().changeVersion(versionToRemove);\n const dependents = dependencyGraph.getImmediateDependentsPerId(idWithVersion);\n if (dependents.length) {\n throw new BitError(\n `unable to reset ${idStr}, the version ${versionToRemove} has the following dependent(s) ${dependents.join(\n ', '\n )}`\n );\n }\n });\n }\n\n // Load version objects to extract batchIds before they are removed.\n // These batchIds are used to clean up the corresponding lane history entries.\n // Only needed on lanes — on main there's no lane history to clean up.\n let batchIds: string[] | undefined;\n if (lane) {\n const versionObjects = await Promise.all(\n versionsToRemoveStr.map((ver) => component.loadVersion(ver, consumer.scope.objects, false))\n );\n batchIds = [...new Set(compact(compact(versionObjects).map((v) => v.batchId)))];\n }\n\n const headBefore = component.getHead();\n await consumer.scope.sources.removeComponentVersions(component, versionsToRemove, versionsToRemoveStr, lane, head);\n const headAfter = component.getHead();\n let versionToSetInBitmap;\n if (headBefore && headAfter && headBefore.isEqual(headAfter) && !lane) {\n // if it's on main and the head didn't change, it means that it was in a detached-head state.\n const divergeData = component.getDivergeData();\n const snapBeforeDetached = divergeData.commonSnapBeforeDiverge;\n if (snapBeforeDetached) versionToSetInBitmap = component.getTagOfRefIfExists(snapBeforeDetached);\n }\n\n return { id, versions: versionsToRemoveStr, component, versionToSetInBitmap, batchIds };\n}\n\nexport async function removeLocalVersionsForAllComponents(\n workspace: Workspace,\n remove: RemoveMain,\n lane?: Lane,\n head?: boolean\n): Promise<ResetResult[]> {\n const componentsToUntag = await getComponentsWithOptionToUntag(workspace, remove);\n const force = true; // when removing local versions from all components, no need to check if the component is used as a dependency\n return removeLocalVersionsForMultipleComponents(workspace.consumer, componentsToUntag, lane, head, force);\n}\n\nexport async function removeLocalVersionsForMultipleComponents(\n consumer: Consumer,\n componentsToUntag: ModelComponent[],\n lane?: Lane,\n head?: boolean,\n force?: boolean\n) {\n if (!componentsToUntag.length) {\n throw new BitError(`no components found to reset on your workspace`);\n }\n // if only head is removed, there is risk of deleting dependencies version without their dependents.\n if (!force && head) {\n const dependencyGraph = await DependencyGraph.loadAllVersions(consumer.scope);\n const candidateComponentsIds = componentsToUntag.map((component) => {\n const bitId = component.toComponentId();\n const headRef = component.getHeadRegardlessOfLane();\n if (!headRef)\n throw new Error(`component ${bitId.toString()} does not have head. it should not be a candidate for reset`);\n\n return bitId.changeVersion(component.getTagOfRefIfExists(headRef) || headRef.toString());\n });\n const candidateComponentsIdsStr = candidateComponentsIds.map((id) => id.toString());\n candidateComponentsIds.forEach((bitId: ComponentID) => {\n const dependents = dependencyGraph.getImmediateDependentsPerId(bitId);\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n const dependentsNotCandidates = dependents.filter((dependent) => !candidateComponentsIdsStr.includes(dependent));\n if (dependentsNotCandidates.length) {\n throw new BitError( // $FlowFixMe\n `unable to untag ${bitId}, the version ${bitId.version} has the following dependent(s) ${dependents.join(\n ', '\n )}`\n );\n }\n });\n }\n logger.debug(`found ${componentsToUntag.length} components to untag`);\n return Promise.all(\n componentsToUntag.map((component) => removeLocalVersion(consumer, component.toComponentId(), lane, head, force))\n );\n}\n\nexport async function getComponentsWithOptionToUntag(\n workspace: Workspace,\n remove: RemoveMain\n): Promise<ModelComponent[]> {\n const componentList = new ComponentsList(workspace);\n const laneObj = await workspace.getCurrentLaneObject();\n const components: ModelComponent[] = await componentList.listExportPendingComponents(laneObj);\n const removedStagedIds = await remove.getRemovedStaged();\n if (!removedStagedIds.length) return components;\n const removedStagedBitIds = removedStagedIds.map((id) => id);\n const nonExistsInStaged = removedStagedBitIds.filter(\n (id) => !components.find((c) => c.toComponentId().isEqualWithoutVersion(id))\n );\n if (!nonExistsInStaged.length) return components;\n const modelComps = await Promise.all(nonExistsInStaged.map((id) => workspace.consumer.scope.getModelComponent(id)));\n components.push(...modelComps);\n\n return components;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_lodash","data","require","_bitError","_legacy","_legacy2","_legacy3","removeLocalVersion","consumer","id","lane","head","force","component","scope","getModelComponent","idStr","toString","fromBitmap","bitMap","getComponentIdIfExist","localVersions","getLocalHashes","objects","length","BitError","headRef","getHeadRegardlessOfLane","Error","find","v","isEqual","versionsToRemove","versionsToRemoveStr","switchHashesWithTagsIfExist","dependencyGraph","DependencyGraph","loadAllVersions","forEach","versionToRemove","idWithVersion","toComponentId","changeVersion","dependents","getImmediateDependentsPerId","join","batchIds","versionObjects","Promise","all","map","ver","loadVersion","loadedVersions","compact","Set","batchId","headBefore","getHead","sources","removeComponentVersions","headAfter","versionToSetInBitmap","divergeData","getDivergeData","snapBeforeDetached","commonSnapBeforeDiverge","getTagOfRefIfExists","versions","removeLocalVersionsForAllComponents","workspace","remove","componentsToUntag","getComponentsWithOptionToUntag","removeLocalVersionsForMultipleComponents","candidateComponentsIds","bitId","candidateComponentsIdsStr","dependentsNotCandidates","filter","dependent","includes","version","logger","debug","componentList","ComponentsList","laneObj","getCurrentLaneObject","components","listExportPendingComponents","removedStagedIds","getRemovedStaged","removedStagedBitIds","nonExistsInStaged","c","isEqualWithoutVersion","modelComps","push"],"sources":["reset-component.ts"],"sourcesContent":["import { compact } from 'lodash';\nimport { BitError } from '@teambit/bit-error';\nimport type { ComponentID } from '@teambit/component-id';\nimport type { Consumer } from '@teambit/legacy.consumer';\nimport { ComponentsList } from '@teambit/legacy.component-list';\nimport { logger } from '@teambit/legacy.logger';\nimport type { Lane, ModelComponent } from '@teambit/objects';\nimport type { RemoveMain } from '@teambit/remove';\nimport { DependencyGraph } from '@teambit/legacy.dependency-graph';\nimport type { Workspace } from '@teambit/workspace';\n\nexport type ResetResult = {\n id: ComponentID;\n versions: string[];\n component?: ModelComponent;\n /**\n * relevant when the component was detached head so the head didn't change.\n * we want .bitmap to have the version before the detachment. not as the head.\n */\n versionToSetInBitmap?: string;\n /** batchIds from the version objects being removed, used to clean up lane history entries */\n batchIds?: string[];\n};\n\n/**\n * If head is false, remove all local versions.\n */\nexport async function removeLocalVersion(\n consumer: Consumer,\n id: ComponentID,\n lane?: Lane,\n head?: boolean,\n force = false\n): Promise<ResetResult> {\n const component: ModelComponent = await consumer.scope.getModelComponent(id);\n const idStr = id.toString();\n const fromBitmap = consumer.bitMap.getComponentIdIfExist(id);\n const localVersions = await component.getLocalHashes(consumer.scope.objects, fromBitmap);\n if (!localVersions.length) throw new BitError(`unable to untag ${idStr}, the component is not staged`);\n const headRef = component.getHeadRegardlessOfLane();\n if (!headRef) {\n throw new Error(`unable to reset ${idStr}, it has not head`);\n }\n if (head && !localVersions.find((v) => v.isEqual(headRef))) {\n throw new Error(`unable to reset ${idStr}, the head ${headRef.toString()} is exported`);\n }\n const versionsToRemove = head ? [headRef] : localVersions;\n const versionsToRemoveStr = component.switchHashesWithTagsIfExist(versionsToRemove);\n\n if (!force) {\n const dependencyGraph = await DependencyGraph.loadAllVersions(consumer.scope);\n\n versionsToRemoveStr.forEach((versionToRemove) => {\n const idWithVersion = component.toComponentId().changeVersion(versionToRemove);\n const dependents = dependencyGraph.getImmediateDependentsPerId(idWithVersion);\n if (dependents.length) {\n throw new BitError(\n `unable to reset ${idStr}, the version ${versionToRemove} has the following dependent(s) ${dependents.join(\n ', '\n )}`\n );\n }\n });\n }\n\n // Load version objects to extract batchIds before they are removed.\n // These batchIds are used to clean up the corresponding lane history entries.\n // Only needed on lanes — on main there's no lane history to clean up.\n let batchIds: string[] | undefined;\n if (lane) {\n const versionObjects = await Promise.all(\n versionsToRemoveStr.map((ver) => component.loadVersion(ver, consumer.scope.objects, false))\n );\n const loadedVersions = compact(versionObjects);\n batchIds = [...new Set(compact(loadedVersions.map((v) => v.batchId)))];\n }\n\n const headBefore = component.getHead();\n await consumer.scope.sources.removeComponentVersions(component, versionsToRemove, versionsToRemoveStr, lane, head);\n const headAfter = component.getHead();\n let versionToSetInBitmap;\n if (headBefore && headAfter && headBefore.isEqual(headAfter) && !lane) {\n // if it's on main and the head didn't change, it means that it was in a detached-head state.\n const divergeData = component.getDivergeData();\n const snapBeforeDetached = divergeData.commonSnapBeforeDiverge;\n if (snapBeforeDetached) versionToSetInBitmap = component.getTagOfRefIfExists(snapBeforeDetached);\n }\n\n return { id, versions: versionsToRemoveStr, component, versionToSetInBitmap, batchIds };\n}\n\nexport async function removeLocalVersionsForAllComponents(\n workspace: Workspace,\n remove: RemoveMain,\n lane?: Lane,\n head?: boolean\n): Promise<ResetResult[]> {\n const componentsToUntag = await getComponentsWithOptionToUntag(workspace, remove);\n const force = true; // when removing local versions from all components, no need to check if the component is used as a dependency\n return removeLocalVersionsForMultipleComponents(workspace.consumer, componentsToUntag, lane, head, force);\n}\n\nexport async function removeLocalVersionsForMultipleComponents(\n consumer: Consumer,\n componentsToUntag: ModelComponent[],\n lane?: Lane,\n head?: boolean,\n force?: boolean\n) {\n if (!componentsToUntag.length) {\n throw new BitError(`no components found to reset on your workspace`);\n }\n // if only head is removed, there is risk of deleting dependencies version without their dependents.\n if (!force && head) {\n const dependencyGraph = await DependencyGraph.loadAllVersions(consumer.scope);\n const candidateComponentsIds = componentsToUntag.map((component) => {\n const bitId = component.toComponentId();\n const headRef = component.getHeadRegardlessOfLane();\n if (!headRef)\n throw new Error(`component ${bitId.toString()} does not have head. it should not be a candidate for reset`);\n\n return bitId.changeVersion(component.getTagOfRefIfExists(headRef) || headRef.toString());\n });\n const candidateComponentsIdsStr = candidateComponentsIds.map((id) => id.toString());\n candidateComponentsIds.forEach((bitId: ComponentID) => {\n const dependents = dependencyGraph.getImmediateDependentsPerId(bitId);\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n const dependentsNotCandidates = dependents.filter((dependent) => !candidateComponentsIdsStr.includes(dependent));\n if (dependentsNotCandidates.length) {\n throw new BitError( // $FlowFixMe\n `unable to untag ${bitId}, the version ${bitId.version} has the following dependent(s) ${dependents.join(\n ', '\n )}`\n );\n }\n });\n }\n logger.debug(`found ${componentsToUntag.length} components to untag`);\n return Promise.all(\n componentsToUntag.map((component) => removeLocalVersion(consumer, component.toComponentId(), lane, head, force))\n );\n}\n\nexport async function getComponentsWithOptionToUntag(\n workspace: Workspace,\n remove: RemoveMain\n): Promise<ModelComponent[]> {\n const componentList = new ComponentsList(workspace);\n const laneObj = await workspace.getCurrentLaneObject();\n const components: ModelComponent[] = await componentList.listExportPendingComponents(laneObj);\n const removedStagedIds = await remove.getRemovedStaged();\n if (!removedStagedIds.length) return components;\n const removedStagedBitIds = removedStagedIds.map((id) => id);\n const nonExistsInStaged = removedStagedBitIds.filter(\n (id) => !components.find((c) => c.toComponentId().isEqualWithoutVersion(id))\n );\n if (!nonExistsInStaged.length) return components;\n const modelComps = await Promise.all(nonExistsInStaged.map((id) => workspace.consumer.scope.getModelComponent(id)));\n components.push(...modelComps);\n\n return components;\n}\n"],"mappings":";;;;;;;;;AAAA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,UAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,SAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,SAAAG,QAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,OAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,SAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,QAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,SAAAK,SAAA;EAAA,MAAAL,IAAA,GAAAC,OAAA;EAAAI,QAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAgBA;AACA;AACA;AACO,eAAeM,kBAAkBA,CACtCC,QAAkB,EAClBC,EAAe,EACfC,IAAW,EACXC,IAAc,EACdC,KAAK,GAAG,KAAK,EACS;EACtB,MAAMC,SAAyB,GAAG,MAAML,QAAQ,CAACM,KAAK,CAACC,iBAAiB,CAACN,EAAE,CAAC;EAC5E,MAAMO,KAAK,GAAGP,EAAE,CAACQ,QAAQ,CAAC,CAAC;EAC3B,MAAMC,UAAU,GAAGV,QAAQ,CAACW,MAAM,CAACC,qBAAqB,CAACX,EAAE,CAAC;EAC5D,MAAMY,aAAa,GAAG,MAAMR,SAAS,CAACS,cAAc,CAACd,QAAQ,CAACM,KAAK,CAACS,OAAO,EAAEL,UAAU,CAAC;EACxF,IAAI,CAACG,aAAa,CAACG,MAAM,EAAE,MAAM,KAAIC,oBAAQ,EAAC,mBAAmBT,KAAK,+BAA+B,CAAC;EACtG,MAAMU,OAAO,GAAGb,SAAS,CAACc,uBAAuB,CAAC,CAAC;EACnD,IAAI,CAACD,OAAO,EAAE;IACZ,MAAM,IAAIE,KAAK,CAAC,mBAAmBZ,KAAK,mBAAmB,CAAC;EAC9D;EACA,IAAIL,IAAI,IAAI,CAACU,aAAa,CAACQ,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAACC,OAAO,CAACL,OAAO,CAAC,CAAC,EAAE;IAC1D,MAAM,IAAIE,KAAK,CAAC,mBAAmBZ,KAAK,cAAcU,OAAO,CAACT,QAAQ,CAAC,CAAC,cAAc,CAAC;EACzF;EACA,MAAMe,gBAAgB,GAAGrB,IAAI,GAAG,CAACe,OAAO,CAAC,GAAGL,aAAa;EACzD,MAAMY,mBAAmB,GAAGpB,SAAS,CAACqB,2BAA2B,CAACF,gBAAgB,CAAC;EAEnF,IAAI,CAACpB,KAAK,EAAE;IACV,MAAMuB,eAAe,GAAG,MAAMC,0BAAe,CAACC,eAAe,CAAC7B,QAAQ,CAACM,KAAK,CAAC;IAE7EmB,mBAAmB,CAACK,OAAO,CAAEC,eAAe,IAAK;MAC/C,MAAMC,aAAa,GAAG3B,SAAS,CAAC4B,aAAa,CAAC,CAAC,CAACC,aAAa,CAACH,eAAe,CAAC;MAC9E,MAAMI,UAAU,GAAGR,eAAe,CAACS,2BAA2B,CAACJ,aAAa,CAAC;MAC7E,IAAIG,UAAU,CAACnB,MAAM,EAAE;QACrB,MAAM,KAAIC,oBAAQ,EAChB,mBAAmBT,KAAK,iBAAiBuB,eAAe,mCAAmCI,UAAU,CAACE,IAAI,CACxG,IACF,CAAC,EACH,CAAC;MACH;IACF,CAAC,CAAC;EACJ;;EAEA;EACA;EACA;EACA,IAAIC,QAA8B;EAClC,IAAIpC,IAAI,EAAE;IACR,MAAMqC,cAAc,GAAG,MAAMC,OAAO,CAACC,GAAG,CACtChB,mBAAmB,CAACiB,GAAG,CAAEC,GAAG,IAAKtC,SAAS,CAACuC,WAAW,CAACD,GAAG,EAAE3C,QAAQ,CAACM,KAAK,CAACS,OAAO,EAAE,KAAK,CAAC,CAC5F,CAAC;IACD,MAAM8B,cAAc,GAAG,IAAAC,iBAAO,EAACP,cAAc,CAAC;IAC9CD,QAAQ,GAAG,CAAC,GAAG,IAAIS,GAAG,CAAC,IAAAD,iBAAO,EAACD,cAAc,CAACH,GAAG,CAAEpB,CAAC,IAAKA,CAAC,CAAC0B,OAAO,CAAC,CAAC,CAAC,CAAC;EACxE;EAEA,MAAMC,UAAU,GAAG5C,SAAS,CAAC6C,OAAO,CAAC,CAAC;EACtC,MAAMlD,QAAQ,CAACM,KAAK,CAAC6C,OAAO,CAACC,uBAAuB,CAAC/C,SAAS,EAAEmB,gBAAgB,EAAEC,mBAAmB,EAAEvB,IAAI,EAAEC,IAAI,CAAC;EAClH,MAAMkD,SAAS,GAAGhD,SAAS,CAAC6C,OAAO,CAAC,CAAC;EACrC,IAAII,oBAAoB;EACxB,IAAIL,UAAU,IAAII,SAAS,IAAIJ,UAAU,CAAC1B,OAAO,CAAC8B,SAAS,CAAC,IAAI,CAACnD,IAAI,EAAE;IACrE;IACA,MAAMqD,WAAW,GAAGlD,SAAS,CAACmD,cAAc,CAAC,CAAC;IAC9C,MAAMC,kBAAkB,GAAGF,WAAW,CAACG,uBAAuB;IAC9D,IAAID,kBAAkB,EAAEH,oBAAoB,GAAGjD,SAAS,CAACsD,mBAAmB,CAACF,kBAAkB,CAAC;EAClG;EAEA,OAAO;IAAExD,EAAE;IAAE2D,QAAQ,EAAEnC,mBAAmB;IAAEpB,SAAS;IAAEiD,oBAAoB;IAAEhB;EAAS,CAAC;AACzF;AAEO,eAAeuB,mCAAmCA,CACvDC,SAAoB,EACpBC,MAAkB,EAClB7D,IAAW,EACXC,IAAc,EACU;EACxB,MAAM6D,iBAAiB,GAAG,MAAMC,8BAA8B,CAACH,SAAS,EAAEC,MAAM,CAAC;EACjF,MAAM3D,KAAK,GAAG,IAAI,CAAC,CAAC;EACpB,OAAO8D,wCAAwC,CAACJ,SAAS,CAAC9D,QAAQ,EAAEgE,iBAAiB,EAAE9D,IAAI,EAAEC,IAAI,EAAEC,KAAK,CAAC;AAC3G;AAEO,eAAe8D,wCAAwCA,CAC5DlE,QAAkB,EAClBgE,iBAAmC,EACnC9D,IAAW,EACXC,IAAc,EACdC,KAAe,EACf;EACA,IAAI,CAAC4D,iBAAiB,CAAChD,MAAM,EAAE;IAC7B,MAAM,KAAIC,oBAAQ,EAAC,gDAAgD,CAAC;EACtE;EACA;EACA,IAAI,CAACb,KAAK,IAAID,IAAI,EAAE;IAClB,MAAMwB,eAAe,GAAG,MAAMC,0BAAe,CAACC,eAAe,CAAC7B,QAAQ,CAACM,KAAK,CAAC;IAC7E,MAAM6D,sBAAsB,GAAGH,iBAAiB,CAACtB,GAAG,CAAErC,SAAS,IAAK;MAClE,MAAM+D,KAAK,GAAG/D,SAAS,CAAC4B,aAAa,CAAC,CAAC;MACvC,MAAMf,OAAO,GAAGb,SAAS,CAACc,uBAAuB,CAAC,CAAC;MACnD,IAAI,CAACD,OAAO,EACV,MAAM,IAAIE,KAAK,CAAC,aAAagD,KAAK,CAAC3D,QAAQ,CAAC,CAAC,6DAA6D,CAAC;MAE7G,OAAO2D,KAAK,CAAClC,aAAa,CAAC7B,SAAS,CAACsD,mBAAmB,CAACzC,OAAO,CAAC,IAAIA,OAAO,CAACT,QAAQ,CAAC,CAAC,CAAC;IAC1F,CAAC,CAAC;IACF,MAAM4D,yBAAyB,GAAGF,sBAAsB,CAACzB,GAAG,CAAEzC,EAAE,IAAKA,EAAE,CAACQ,QAAQ,CAAC,CAAC,CAAC;IACnF0D,sBAAsB,CAACrC,OAAO,CAAEsC,KAAkB,IAAK;MACrD,MAAMjC,UAAU,GAAGR,eAAe,CAACS,2BAA2B,CAACgC,KAAK,CAAC;MACrE;MACA,MAAME,uBAAuB,GAAGnC,UAAU,CAACoC,MAAM,CAAEC,SAAS,IAAK,CAACH,yBAAyB,CAACI,QAAQ,CAACD,SAAS,CAAC,CAAC;MAChH,IAAIF,uBAAuB,CAACtD,MAAM,EAAE;QAClC,MAAM,KAAIC,oBAAQ;QAAE;QAClB,mBAAmBmD,KAAK,iBAAiBA,KAAK,CAACM,OAAO,mCAAmCvC,UAAU,CAACE,IAAI,CACtG,IACF,CAAC,EACH,CAAC;MACH;IACF,CAAC,CAAC;EACJ;EACAsC,iBAAM,CAACC,KAAK,CAAC,SAASZ,iBAAiB,CAAChD,MAAM,sBAAsB,CAAC;EACrE,OAAOwB,OAAO,CAACC,GAAG,CAChBuB,iBAAiB,CAACtB,GAAG,CAAErC,SAAS,IAAKN,kBAAkB,CAACC,QAAQ,EAAEK,SAAS,CAAC4B,aAAa,CAAC,CAAC,EAAE/B,IAAI,EAAEC,IAAI,EAAEC,KAAK,CAAC,CACjH,CAAC;AACH;AAEO,eAAe6D,8BAA8BA,CAClDH,SAAoB,EACpBC,MAAkB,EACS;EAC3B,MAAMc,aAAa,GAAG,KAAIC,wBAAc,EAAChB,SAAS,CAAC;EACnD,MAAMiB,OAAO,GAAG,MAAMjB,SAAS,CAACkB,oBAAoB,CAAC,CAAC;EACtD,MAAMC,UAA4B,GAAG,MAAMJ,aAAa,CAACK,2BAA2B,CAACH,OAAO,CAAC;EAC7F,MAAMI,gBAAgB,GAAG,MAAMpB,MAAM,CAACqB,gBAAgB,CAAC,CAAC;EACxD,IAAI,CAACD,gBAAgB,CAACnE,MAAM,EAAE,OAAOiE,UAAU;EAC/C,MAAMI,mBAAmB,GAAGF,gBAAgB,CAACzC,GAAG,CAAEzC,EAAE,IAAKA,EAAE,CAAC;EAC5D,MAAMqF,iBAAiB,GAAGD,mBAAmB,CAACd,MAAM,CACjDtE,EAAE,IAAK,CAACgF,UAAU,CAAC5D,IAAI,CAAEkE,CAAC,IAAKA,CAAC,CAACtD,aAAa,CAAC,CAAC,CAACuD,qBAAqB,CAACvF,EAAE,CAAC,CAC7E,CAAC;EACD,IAAI,CAACqF,iBAAiB,CAACtE,MAAM,EAAE,OAAOiE,UAAU;EAChD,MAAMQ,UAAU,GAAG,MAAMjD,OAAO,CAACC,GAAG,CAAC6C,iBAAiB,CAAC5C,GAAG,CAAEzC,EAAE,IAAK6D,SAAS,CAAC9D,QAAQ,CAACM,KAAK,CAACC,iBAAiB,CAACN,EAAE,CAAC,CAAC,CAAC;EACnHgF,UAAU,CAACS,IAAI,CAAC,GAAGD,UAAU,CAAC;EAE9B,OAAOR,UAAU;AACnB","ignoreList":[]}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/snapping",
3
- "version": "1.0.931",
3
+ "version": "1.0.933",
4
4
  "homepage": "https://bit.cloud/teambit/component/snapping",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.component",
8
8
  "name": "snapping",
9
- "version": "1.0.931"
9
+ "version": "1.0.933"
10
10
  },
11
11
  "dependencies": {
12
12
  "graphlib": "2.1.8",
@@ -22,45 +22,45 @@
22
22
  "@teambit/bit-error": "0.0.404",
23
23
  "@teambit/component-id": "1.2.4",
24
24
  "@teambit/graph.cleargraph": "0.0.11",
25
- "@teambit/toolbox.promise.map-pool": "0.0.14",
26
- "@teambit/legacy-bit-id": "1.1.3",
27
- "@teambit/legacy.logger": "0.0.36",
28
- "@teambit/legacy.loader": "0.0.18",
29
- "@teambit/legacy.constants": "0.0.24",
30
- "@teambit/component-issues": "0.0.171",
31
- "@teambit/harmony": "0.4.7",
32
- "@teambit/component-version": "1.0.4",
33
- "@teambit/harmony.modules.concurrency": "0.0.25",
34
- "@teambit/lane-id": "0.0.312",
35
- "@teambit/pkg.modules.semver-helper": "0.0.22",
36
- "@teambit/toolbox.crypto.sha1": "0.0.15",
37
- "@teambit/graph": "1.0.931",
38
25
  "@teambit/legacy.consumer-component": "0.0.105",
39
26
  "@teambit/logger": "0.0.1403",
40
- "@teambit/objects": "0.0.438",
41
- "@teambit/scope": "1.0.931",
27
+ "@teambit/toolbox.promise.map-pool": "0.0.14",
42
28
  "@teambit/component.sources": "0.0.156",
43
- "@teambit/component": "1.0.931",
44
- "@teambit/dependencies": "1.0.931",
45
- "@teambit/dependency-resolver": "1.0.931",
46
29
  "@teambit/legacy.consumer-config": "0.0.104",
47
30
  "@teambit/legacy.extension-data": "0.0.106",
31
+ "@teambit/legacy-bit-id": "1.1.3",
32
+ "@teambit/legacy.logger": "0.0.36",
48
33
  "@teambit/legacy.scope": "0.0.104",
34
+ "@teambit/legacy.loader": "0.0.18",
49
35
  "@teambit/cli": "0.0.1310",
36
+ "@teambit/legacy.constants": "0.0.24",
50
37
  "@teambit/legacy.component-list": "0.0.158",
51
38
  "@teambit/legacy.consumer": "0.0.104",
52
39
  "@teambit/legacy.dependency-graph": "0.0.107",
53
- "@teambit/remove": "1.0.931",
54
- "@teambit/workspace": "1.0.931",
40
+ "@teambit/component-issues": "0.0.171",
55
41
  "@teambit/config-store": "0.0.190",
56
- "@teambit/application": "1.0.931",
57
- "@teambit/builder": "1.0.931",
58
- "@teambit/export": "1.0.931",
59
- "@teambit/importer": "1.0.931",
42
+ "@teambit/harmony": "0.4.7",
43
+ "@teambit/component-version": "1.0.4",
44
+ "@teambit/harmony.modules.concurrency": "0.0.25",
45
+ "@teambit/lane-id": "0.0.312",
60
46
  "@teambit/lanes.modules.create-lane": "0.0.139",
61
47
  "@teambit/legacy.scope-api": "0.0.159",
48
+ "@teambit/pkg.modules.semver-helper": "0.0.22",
62
49
  "@teambit/harmony.modules.get-basic-log": "0.0.105",
63
- "@teambit/workspace.modules.node-modules-linker": "0.0.334"
50
+ "@teambit/toolbox.crypto.sha1": "0.0.15",
51
+ "@teambit/workspace.modules.node-modules-linker": "0.0.334",
52
+ "@teambit/graph": "1.0.933",
53
+ "@teambit/objects": "0.0.440",
54
+ "@teambit/scope": "1.0.933",
55
+ "@teambit/component": "1.0.933",
56
+ "@teambit/dependencies": "1.0.933",
57
+ "@teambit/dependency-resolver": "1.0.933",
58
+ "@teambit/remove": "1.0.933",
59
+ "@teambit/workspace": "1.0.933",
60
+ "@teambit/application": "1.0.933",
61
+ "@teambit/builder": "1.0.933",
62
+ "@teambit/export": "1.0.933",
63
+ "@teambit/importer": "1.0.933"
64
64
  },
65
65
  "devDependencies": {
66
66
  "@types/graphlib": "2.1.7",
@@ -69,12 +69,12 @@
69
69
  "@types/semver": "7.5.8",
70
70
  "@types/uuid": "8.3.4",
71
71
  "@types/mocha": "9.1.0",
72
- "@teambit/harmony.envs.core-aspect-env": "0.1.4",
73
- "@teambit/compiler": "1.0.931",
74
72
  "@teambit/component.testing.mock-components": "0.0.373",
75
73
  "@teambit/harmony.testing.load-aspect": "0.0.368",
76
- "@teambit/issues": "1.0.931",
77
- "@teambit/workspace.testing.mock-workspace": "0.0.170"
74
+ "@teambit/workspace.testing.mock-workspace": "0.0.170",
75
+ "@teambit/harmony.envs.core-aspect-env": "0.1.4",
76
+ "@teambit/compiler": "1.0.933",
77
+ "@teambit/issues": "1.0.933"
78
78
  },
79
79
  "peerDependencies": {
80
80
  "chai": "5.2.1",