@teambit/checkout 1.0.130 → 1.0.132

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.
@@ -30,4 +30,4 @@ export declare class CheckoutCmd implements Command {
30
30
  revert?: boolean;
31
31
  }): Promise<string>;
32
32
  }
33
- export declare function checkoutOutput(checkoutResults: ApplyVersionResults, checkoutProps: CheckoutProps): string;
33
+ export declare function checkoutOutput(checkoutResults: ApplyVersionResults, checkoutProps: CheckoutProps, alternativeTitle?: string): string;
@@ -108,7 +108,7 @@ when on a lane, "checkout head" only checks out components on this lane. to upda
108
108
  }
109
109
  }
110
110
  exports.CheckoutCmd = CheckoutCmd;
111
- function checkoutOutput(checkoutResults, checkoutProps) {
111
+ function checkoutOutput(checkoutResults, checkoutProps, alternativeTitle) {
112
112
  const {
113
113
  components,
114
114
  version,
@@ -152,19 +152,21 @@ function checkoutOutput(checkoutResults, checkoutProps) {
152
152
  const title = `\n\nfiles with conflicts summary\n`;
153
153
  const suggestion = `\n\nfix the conflicts above manually and then run "bit install".
154
154
  once ready, snap/tag the components to persist the changes`;
155
- return _chalk().default.underline(title) + (0, _merging().conflictSummaryReport)(components) + _chalk().default.yellow(suggestion);
155
+ const conflictSummary = (0, _merging().conflictSummaryReport)(components);
156
+ return _chalk().default.underline(title) + conflictSummary.conflictStr + _chalk().default.yellow(suggestion);
156
157
  };
157
158
  const getSuccessfulOutput = () => {
158
- const switchedOrReverted = revert ? 'reverted' : 'switched';
159
159
  if (!components || !components.length) return '';
160
+ const newLine = '\n';
161
+ const switchedOrReverted = revert ? 'reverted' : 'switched';
160
162
  if (components.length === 1) {
161
163
  const component = components[0];
162
164
  const componentName = reset ? component.id.toString() : component.id.toStringWithoutVersion();
163
165
  if (reset) return `successfully reset ${_chalk().default.bold(componentName)}\n`;
164
- const title = `successfully ${switchedOrReverted} ${_chalk().default.bold(componentName)} to version ${_chalk().default.bold(
166
+ const title = alternativeTitle || `successfully ${switchedOrReverted} ${_chalk().default.bold(componentName)} to version ${_chalk().default.bold(
165
167
  // @ts-ignore version is defined when !reset
166
- head || latest ? component.id.version : version)}\n`;
167
- return _chalk().default.bold(title) + (0, _merging().applyVersionReport)(components, false);
168
+ head || latest ? component.id.version : version)}`;
169
+ return _chalk().default.bold(title) + newLine + (0, _merging().applyVersionReport)(components, false);
168
170
  }
169
171
  if (reset) {
170
172
  const title = 'successfully reset the following components\n\n';
@@ -179,9 +181,9 @@ once ready, snap/tag the components to persist the changes`;
179
181
  return `version ${_chalk().default.bold(version)}`;
180
182
  };
181
183
  const versionOutput = getVerOutput();
182
- const title = `successfully ${switchedOrReverted} ${components.length} components to ${versionOutput}\n`;
184
+ const title = alternativeTitle || `successfully ${switchedOrReverted} ${components.length} components to ${versionOutput}`;
183
185
  const showVersion = head || reset;
184
- return _chalk().default.bold(title) + (0, _merging().applyVersionReport)(components, true, showVersion);
186
+ return _chalk().default.bold(title) + newLine + (0, _merging().applyVersionReport)(components, true, showVersion);
185
187
  };
186
188
  const getNewOnLaneOutput = () => {
187
189
  if (!newFromLane?.length) return '';
@@ -1 +1 @@
1
- {"version":3,"names":["_chalk","data","_interopRequireDefault","require","_merging","_constants","_componentId","_bitError","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","String","r","e","Symbol","toPrimitive","call","TypeError","Number","CheckoutCmd","constructor","checkout","name","description","COMPONENT_PATTERN_HELP","report","to","componentPattern","interactiveMerge","ours","theirs","manual","autoMergeResolve","all","workspaceOnly","verbose","skipDependencyInstallation","revert","BitError","HEAD","checkoutProps","promptMergeOptions","mergeStrategy","isLane","skipNpmInstall","head","LATEST","latest","reset","main","ComponentID","isValidVersion","version","checkoutResults","checkoutByCLIValues","checkoutOutput","exports","components","failedComponents","removedComponents","addedComponents","leftUnresolvedConflicts","newFromLane","newFromLaneAdded","installationError","compilationError","realFailedComponents","filter","f","unchangedLegitimately","length","Error","notCheckedOutComponents","getNotCheckedOutOutput","chalk","green","bold","toString","title","body","map","failedComponent","id","unchangedMessage","join","underline","getConflictSummary","suggestion","conflictSummaryReport","yellow","getSuccessfulOutput","switchedOrReverted","component","componentName","toStringWithoutVersion","applyVersionReport","getVerOutput","versionOutput","showVersion","getNewOnLaneOutput","getSummary","checkedOut","notCheckedOutLegitimately","newLines","checkedOutStr","unchangedLegitimatelyStr","newOnLaneNum","newOnLaneAddedStr","newOnLaneStr","getRemovedOutput","getAddedOutput","installationErrorOutput","compilationErrorOutput"],"sources":["checkout-cmd.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport {\n ApplyVersionResults,\n applyVersionReport,\n conflictSummaryReport,\n installationErrorOutput,\n compilationErrorOutput,\n getRemovedOutput,\n getAddedOutput,\n} from '@teambit/merging';\nimport { COMPONENT_PATTERN_HELP, HEAD, LATEST } from '@teambit/legacy/dist/constants';\nimport { MergeStrategy } from '@teambit/legacy/dist/consumer/versions-ops/merge-version';\nimport { ComponentID } from '@teambit/component-id';\nimport { BitError } from '@teambit/bit-error';\nimport { CheckoutMain, CheckoutProps } from './checkout.main.runtime';\n\nexport class CheckoutCmd implements Command {\n name = 'checkout <to> [component-pattern]';\n arguments = [\n {\n name: 'to',\n description:\n \"permitted values: [head, latest, reset, specific-version]. 'head' - last snap/tag. 'latest' - semver latest tag. 'reset' - removes local changes\",\n },\n {\n name: 'component-pattern',\n description: COMPONENT_PATTERN_HELP,\n },\n ];\n description = 'switch between component versions or remove local changes';\n helpUrl = 'reference/components/merging-changes#checkout-snaps-to-the-working-directory';\n group = 'development';\n extendedDescription = `\n\\`bit checkout <version> [component-pattern]\\` => checkout the specified ids (or all components when --all is used) to the specified version\n\\`bit checkout head [component-pattern]\\` => checkout to the last snap/tag (use --latest if you only want semver tags), omit [component-pattern] to checkout head for all\n\\`bit checkout latest [component-pattern]\\` => checkout to the latest satisfying semver tag, omit [component-pattern] to checkout latest for all\n\\`bit checkout reset [component-pattern]\\` => remove local modifications from the specified ids (or all components when --all is used)\nwhen on a lane, \"checkout head\" only checks out components on this lane. to update main components, run \"bit lane merge main\"`;\n alias = 'U';\n options = [\n [\n 'i',\n 'interactive-merge',\n 'when a component is modified and the merge process found conflicts, display options to resolve them',\n ],\n ['', 'ours', 'DEPRECATED. use --auto-merge-resolve. In the future, this flag will leave the current code intact'],\n [\n '',\n 'theirs',\n 'DEPRECATED. use --auto-merge-resolve. In the future, this flag will override the current code with the incoming code',\n ],\n ['', 'manual', 'DEPRECATED. use --auto-merge-resolve'],\n [\n '',\n 'auto-merge-resolve <merge-strategy>',\n 'in case of merge conflict, resolve according to the provided strategy: [ours, theirs, manual]',\n ],\n ['r', 'reset', 'revert changes that were not snapped/tagged'],\n ['a', 'all', 'all components'],\n [\n 'e',\n 'workspace-only',\n \"only relevant for 'bit checkout head' when on a lane. don't import components from the remote lane that are not already in the workspace\",\n ],\n ['v', 'verbose', 'showing verbose output for inspection'],\n ['x', 'skip-dependency-installation', 'do not auto-install dependencies of the imported components'],\n ] as CommandOptions;\n loader = true;\n\n constructor(private checkout: CheckoutMain) {}\n\n async report(\n [to, componentPattern]: [string, string],\n {\n interactiveMerge = false,\n ours = false,\n theirs = false,\n manual = false,\n autoMergeResolve,\n all = false,\n workspaceOnly = false,\n verbose = false,\n skipDependencyInstallation = false,\n revert = false,\n }: {\n interactiveMerge?: boolean;\n ours?: boolean;\n theirs?: boolean;\n manual?: boolean;\n autoMergeResolve?: MergeStrategy;\n all?: boolean;\n workspaceOnly?: boolean;\n verbose?: boolean;\n skipDependencyInstallation?: boolean;\n revert?: boolean;\n }\n ) {\n if (ours || theirs || manual) {\n throw new BitError(\n 'the \"--ours\", \"--theirs\" and \"--manual\" flags are deprecated. use \"--auto-merge-resolve\" instead.'\n );\n }\n if (\n autoMergeResolve &&\n autoMergeResolve !== 'ours' &&\n autoMergeResolve !== 'theirs' &&\n autoMergeResolve !== 'manual'\n ) {\n throw new BitError('--auto-merge-resolve must be one of the following: [ours, theirs, manual]');\n }\n if (workspaceOnly && to !== HEAD) {\n throw new BitError('--workspace-only is only relevant when running \"bit checkout head\" on a lane');\n }\n const checkoutProps: CheckoutProps = {\n promptMergeOptions: interactiveMerge,\n mergeStrategy: autoMergeResolve,\n all,\n verbose,\n isLane: false,\n skipNpmInstall: skipDependencyInstallation,\n workspaceOnly,\n revert,\n };\n if (to === HEAD) checkoutProps.head = true;\n else if (to === LATEST) checkoutProps.latest = true;\n else if (to === 'reset') checkoutProps.reset = true;\n else if (to === 'main') checkoutProps.main = true;\n else {\n if (!ComponentID.isValidVersion(to)) throw new BitError(`the specified version \"${to}\" is not a valid version`);\n checkoutProps.version = to;\n }\n\n const checkoutResults = await this.checkout.checkoutByCLIValues(componentPattern || '', checkoutProps);\n return checkoutOutput(checkoutResults, checkoutProps);\n }\n}\n\nexport function checkoutOutput(checkoutResults: ApplyVersionResults, checkoutProps: CheckoutProps) {\n const {\n components,\n version,\n failedComponents,\n removedComponents,\n addedComponents,\n leftUnresolvedConflicts,\n newFromLane,\n newFromLaneAdded,\n installationError,\n compilationError,\n }: ApplyVersionResults = checkoutResults;\n\n const { head, reset, latest, main, revert, verbose, all } = checkoutProps;\n\n // components that failed for no legitimate reason. e.g. merge-conflict.\n const realFailedComponents = (failedComponents || []).filter((f) => !f.unchangedLegitimately);\n if (realFailedComponents.length) {\n throw new Error('checkout should throw in case of errors');\n }\n // components that weren't checked out for legitimate reasons, e.g. up-to-date.\n const notCheckedOutComponents = failedComponents || [];\n\n const getNotCheckedOutOutput = () => {\n if (!notCheckedOutComponents.length) return '';\n if (!verbose && all) {\n return chalk.green(\n `checkout was not needed for ${chalk.bold(\n notCheckedOutComponents.length.toString()\n )} components (use --verbose to get more details)\\n`\n );\n }\n const title = 'checkout was not required for the following component(s)';\n const body = notCheckedOutComponents\n .map((failedComponent) => `${failedComponent.id.toString()} - ${failedComponent.unchangedMessage}`)\n .join('\\n');\n return `${chalk.underline(title)}\\n${body}\\n\\n`;\n };\n const getConflictSummary = () => {\n if (!components || !components.length || !leftUnresolvedConflicts) return '';\n const title = `\\n\\nfiles with conflicts summary\\n`;\n const suggestion = `\\n\\nfix the conflicts above manually and then run \"bit install\".\nonce ready, snap/tag the components to persist the changes`;\n return chalk.underline(title) + conflictSummaryReport(components) + chalk.yellow(suggestion);\n };\n const getSuccessfulOutput = () => {\n const switchedOrReverted = revert ? 'reverted' : 'switched';\n if (!components || !components.length) return '';\n if (components.length === 1) {\n const component = components[0];\n const componentName = reset ? component.id.toString() : component.id.toStringWithoutVersion();\n if (reset) return `successfully reset ${chalk.bold(componentName)}\\n`;\n const title = `successfully ${switchedOrReverted} ${chalk.bold(componentName)} to version ${chalk.bold(\n // @ts-ignore version is defined when !reset\n head || latest ? component.id.version : version\n )}\\n`;\n return chalk.bold(title) + applyVersionReport(components, false);\n }\n if (reset) {\n const title = 'successfully reset the following components\\n\\n';\n const body = components.map((component) => chalk.bold(component.id.toString())).join('\\n');\n return chalk.underline(title) + body;\n }\n const getVerOutput = () => {\n if (head) return 'their head version';\n if (latest) return 'their latest version';\n if (main) return 'their main version';\n // @ts-ignore version is defined when !reset\n return `version ${chalk.bold(version)}`;\n };\n const versionOutput = getVerOutput();\n const title = `successfully ${switchedOrReverted} ${components.length} components to ${versionOutput}\\n`;\n const showVersion = head || reset;\n return chalk.bold(title) + applyVersionReport(components, true, showVersion);\n };\n const getNewOnLaneOutput = () => {\n if (!newFromLane?.length) return '';\n const title = newFromLaneAdded\n ? `successfully added the following components from the lane`\n : `the following components exist on the lane but were not added to the workspace. omit --workspace-only flag to add them`;\n const body = newFromLane.join('\\n');\n return `\\n\\n${chalk.underline(title)}\\n${body}`;\n };\n const getSummary = () => {\n const checkedOut = components?.length || 0;\n const notCheckedOutLegitimately = notCheckedOutComponents.length;\n const newLines = '\\n\\n';\n const title = chalk.bold.underline('Summary');\n const checkedOutStr = `\\nTotal Changed: ${chalk.bold(checkedOut.toString())}`;\n const unchangedLegitimatelyStr = `\\nTotal Unchanged: ${chalk.bold(notCheckedOutLegitimately.toString())}`;\n const newOnLaneNum = newFromLane?.length || 0;\n const newOnLaneAddedStr = newFromLaneAdded ? ' (added)' : ' (not added)';\n const newOnLaneStr = newOnLaneNum\n ? `\\nNew on lane${newOnLaneAddedStr}: ${chalk.bold(newOnLaneNum.toString())}`\n : '';\n\n return newLines + title + checkedOutStr + unchangedLegitimatelyStr + newOnLaneStr;\n };\n\n return (\n getNotCheckedOutOutput() +\n getSuccessfulOutput() +\n getRemovedOutput(removedComponents) +\n getAddedOutput(addedComponents) +\n getNewOnLaneOutput() +\n getConflictSummary() +\n getSummary() +\n installationErrorOutput(installationError) +\n compilationErrorOutput(compilationError)\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_chalk","data","_interopRequireDefault","require","_merging","_constants","_componentId","_bitError","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","String","r","e","Symbol","toPrimitive","call","TypeError","Number","CheckoutCmd","constructor","checkout","name","description","COMPONENT_PATTERN_HELP","report","to","componentPattern","interactiveMerge","ours","theirs","manual","autoMergeResolve","all","workspaceOnly","verbose","skipDependencyInstallation","revert","BitError","HEAD","checkoutProps","promptMergeOptions","mergeStrategy","isLane","skipNpmInstall","head","LATEST","latest","reset","main","ComponentID","isValidVersion","version","checkoutResults","checkoutByCLIValues","checkoutOutput","exports","alternativeTitle","components","failedComponents","removedComponents","addedComponents","leftUnresolvedConflicts","newFromLane","newFromLaneAdded","installationError","compilationError","realFailedComponents","filter","f","unchangedLegitimately","length","Error","notCheckedOutComponents","getNotCheckedOutOutput","chalk","green","bold","toString","title","body","map","failedComponent","id","unchangedMessage","join","underline","getConflictSummary","suggestion","conflictSummary","conflictSummaryReport","conflictStr","yellow","getSuccessfulOutput","newLine","switchedOrReverted","component","componentName","toStringWithoutVersion","applyVersionReport","getVerOutput","versionOutput","showVersion","getNewOnLaneOutput","getSummary","checkedOut","notCheckedOutLegitimately","newLines","checkedOutStr","unchangedLegitimatelyStr","newOnLaneNum","newOnLaneAddedStr","newOnLaneStr","getRemovedOutput","getAddedOutput","installationErrorOutput","compilationErrorOutput"],"sources":["checkout-cmd.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport {\n ApplyVersionResults,\n applyVersionReport,\n conflictSummaryReport,\n installationErrorOutput,\n compilationErrorOutput,\n getRemovedOutput,\n getAddedOutput,\n} from '@teambit/merging';\nimport { COMPONENT_PATTERN_HELP, HEAD, LATEST } from '@teambit/legacy/dist/constants';\nimport { MergeStrategy } from '@teambit/legacy/dist/consumer/versions-ops/merge-version';\nimport { ComponentID } from '@teambit/component-id';\nimport { BitError } from '@teambit/bit-error';\nimport { CheckoutMain, CheckoutProps } from './checkout.main.runtime';\n\nexport class CheckoutCmd implements Command {\n name = 'checkout <to> [component-pattern]';\n arguments = [\n {\n name: 'to',\n description:\n \"permitted values: [head, latest, reset, specific-version]. 'head' - last snap/tag. 'latest' - semver latest tag. 'reset' - removes local changes\",\n },\n {\n name: 'component-pattern',\n description: COMPONENT_PATTERN_HELP,\n },\n ];\n description = 'switch between component versions or remove local changes';\n helpUrl = 'reference/components/merging-changes#checkout-snaps-to-the-working-directory';\n group = 'development';\n extendedDescription = `\n\\`bit checkout <version> [component-pattern]\\` => checkout the specified ids (or all components when --all is used) to the specified version\n\\`bit checkout head [component-pattern]\\` => checkout to the last snap/tag (use --latest if you only want semver tags), omit [component-pattern] to checkout head for all\n\\`bit checkout latest [component-pattern]\\` => checkout to the latest satisfying semver tag, omit [component-pattern] to checkout latest for all\n\\`bit checkout reset [component-pattern]\\` => remove local modifications from the specified ids (or all components when --all is used)\nwhen on a lane, \"checkout head\" only checks out components on this lane. to update main components, run \"bit lane merge main\"`;\n alias = 'U';\n options = [\n [\n 'i',\n 'interactive-merge',\n 'when a component is modified and the merge process found conflicts, display options to resolve them',\n ],\n ['', 'ours', 'DEPRECATED. use --auto-merge-resolve. In the future, this flag will leave the current code intact'],\n [\n '',\n 'theirs',\n 'DEPRECATED. use --auto-merge-resolve. In the future, this flag will override the current code with the incoming code',\n ],\n ['', 'manual', 'DEPRECATED. use --auto-merge-resolve'],\n [\n '',\n 'auto-merge-resolve <merge-strategy>',\n 'in case of merge conflict, resolve according to the provided strategy: [ours, theirs, manual]',\n ],\n ['r', 'reset', 'revert changes that were not snapped/tagged'],\n ['a', 'all', 'all components'],\n [\n 'e',\n 'workspace-only',\n \"only relevant for 'bit checkout head' when on a lane. don't import components from the remote lane that are not already in the workspace\",\n ],\n ['v', 'verbose', 'showing verbose output for inspection'],\n ['x', 'skip-dependency-installation', 'do not auto-install dependencies of the imported components'],\n ] as CommandOptions;\n loader = true;\n\n constructor(private checkout: CheckoutMain) {}\n\n async report(\n [to, componentPattern]: [string, string],\n {\n interactiveMerge = false,\n ours = false,\n theirs = false,\n manual = false,\n autoMergeResolve,\n all = false,\n workspaceOnly = false,\n verbose = false,\n skipDependencyInstallation = false,\n revert = false,\n }: {\n interactiveMerge?: boolean;\n ours?: boolean;\n theirs?: boolean;\n manual?: boolean;\n autoMergeResolve?: MergeStrategy;\n all?: boolean;\n workspaceOnly?: boolean;\n verbose?: boolean;\n skipDependencyInstallation?: boolean;\n revert?: boolean;\n }\n ) {\n if (ours || theirs || manual) {\n throw new BitError(\n 'the \"--ours\", \"--theirs\" and \"--manual\" flags are deprecated. use \"--auto-merge-resolve\" instead.'\n );\n }\n if (\n autoMergeResolve &&\n autoMergeResolve !== 'ours' &&\n autoMergeResolve !== 'theirs' &&\n autoMergeResolve !== 'manual'\n ) {\n throw new BitError('--auto-merge-resolve must be one of the following: [ours, theirs, manual]');\n }\n if (workspaceOnly && to !== HEAD) {\n throw new BitError('--workspace-only is only relevant when running \"bit checkout head\" on a lane');\n }\n const checkoutProps: CheckoutProps = {\n promptMergeOptions: interactiveMerge,\n mergeStrategy: autoMergeResolve,\n all,\n verbose,\n isLane: false,\n skipNpmInstall: skipDependencyInstallation,\n workspaceOnly,\n revert,\n };\n if (to === HEAD) checkoutProps.head = true;\n else if (to === LATEST) checkoutProps.latest = true;\n else if (to === 'reset') checkoutProps.reset = true;\n else if (to === 'main') checkoutProps.main = true;\n else {\n if (!ComponentID.isValidVersion(to)) throw new BitError(`the specified version \"${to}\" is not a valid version`);\n checkoutProps.version = to;\n }\n\n const checkoutResults = await this.checkout.checkoutByCLIValues(componentPattern || '', checkoutProps);\n return checkoutOutput(checkoutResults, checkoutProps);\n }\n}\n\nexport function checkoutOutput(\n checkoutResults: ApplyVersionResults,\n checkoutProps: CheckoutProps,\n alternativeTitle?: string\n) {\n const {\n components,\n version,\n failedComponents,\n removedComponents,\n addedComponents,\n leftUnresolvedConflicts,\n newFromLane,\n newFromLaneAdded,\n installationError,\n compilationError,\n }: ApplyVersionResults = checkoutResults;\n\n const { head, reset, latest, main, revert, verbose, all } = checkoutProps;\n\n // components that failed for no legitimate reason. e.g. merge-conflict.\n const realFailedComponents = (failedComponents || []).filter((f) => !f.unchangedLegitimately);\n if (realFailedComponents.length) {\n throw new Error('checkout should throw in case of errors');\n }\n // components that weren't checked out for legitimate reasons, e.g. up-to-date.\n const notCheckedOutComponents = failedComponents || [];\n\n const getNotCheckedOutOutput = () => {\n if (!notCheckedOutComponents.length) return '';\n if (!verbose && all) {\n return chalk.green(\n `checkout was not needed for ${chalk.bold(\n notCheckedOutComponents.length.toString()\n )} components (use --verbose to get more details)\\n`\n );\n }\n const title = 'checkout was not required for the following component(s)';\n const body = notCheckedOutComponents\n .map((failedComponent) => `${failedComponent.id.toString()} - ${failedComponent.unchangedMessage}`)\n .join('\\n');\n return `${chalk.underline(title)}\\n${body}\\n\\n`;\n };\n const getConflictSummary = () => {\n if (!components || !components.length || !leftUnresolvedConflicts) return '';\n const title = `\\n\\nfiles with conflicts summary\\n`;\n const suggestion = `\\n\\nfix the conflicts above manually and then run \"bit install\".\nonce ready, snap/tag the components to persist the changes`;\n const conflictSummary = conflictSummaryReport(components);\n return chalk.underline(title) + conflictSummary.conflictStr + chalk.yellow(suggestion);\n };\n const getSuccessfulOutput = () => {\n if (!components || !components.length) return '';\n const newLine = '\\n';\n const switchedOrReverted = revert ? 'reverted' : 'switched';\n if (components.length === 1) {\n const component = components[0];\n const componentName = reset ? component.id.toString() : component.id.toStringWithoutVersion();\n if (reset) return `successfully reset ${chalk.bold(componentName)}\\n`;\n const title =\n alternativeTitle ||\n `successfully ${switchedOrReverted} ${chalk.bold(componentName)} to version ${chalk.bold(\n // @ts-ignore version is defined when !reset\n head || latest ? component.id.version : version\n )}`;\n return chalk.bold(title) + newLine + applyVersionReport(components, false);\n }\n if (reset) {\n const title = 'successfully reset the following components\\n\\n';\n const body = components.map((component) => chalk.bold(component.id.toString())).join('\\n');\n return chalk.underline(title) + body;\n }\n const getVerOutput = () => {\n if (head) return 'their head version';\n if (latest) return 'their latest version';\n if (main) return 'their main version';\n // @ts-ignore version is defined when !reset\n return `version ${chalk.bold(version)}`;\n };\n const versionOutput = getVerOutput();\n const title =\n alternativeTitle || `successfully ${switchedOrReverted} ${components.length} components to ${versionOutput}`;\n const showVersion = head || reset;\n return chalk.bold(title) + newLine + applyVersionReport(components, true, showVersion);\n };\n const getNewOnLaneOutput = () => {\n if (!newFromLane?.length) return '';\n const title = newFromLaneAdded\n ? `successfully added the following components from the lane`\n : `the following components exist on the lane but were not added to the workspace. omit --workspace-only flag to add them`;\n const body = newFromLane.join('\\n');\n return `\\n\\n${chalk.underline(title)}\\n${body}`;\n };\n const getSummary = () => {\n const checkedOut = components?.length || 0;\n const notCheckedOutLegitimately = notCheckedOutComponents.length;\n const newLines = '\\n\\n';\n const title = chalk.bold.underline('Summary');\n const checkedOutStr = `\\nTotal Changed: ${chalk.bold(checkedOut.toString())}`;\n const unchangedLegitimatelyStr = `\\nTotal Unchanged: ${chalk.bold(notCheckedOutLegitimately.toString())}`;\n const newOnLaneNum = newFromLane?.length || 0;\n const newOnLaneAddedStr = newFromLaneAdded ? ' (added)' : ' (not added)';\n const newOnLaneStr = newOnLaneNum\n ? `\\nNew on lane${newOnLaneAddedStr}: ${chalk.bold(newOnLaneNum.toString())}`\n : '';\n\n return newLines + title + checkedOutStr + unchangedLegitimatelyStr + newOnLaneStr;\n };\n\n return (\n getNotCheckedOutOutput() +\n getSuccessfulOutput() +\n getRemovedOutput(removedComponents) +\n getAddedOutput(addedComponents) +\n getNewOnLaneOutput() +\n getConflictSummary() +\n getSummary() +\n installationErrorOutput(installationError) +\n compilationErrorOutput(compilationError)\n );\n}\n"],"mappings":"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"}
@@ -12,13 +12,10 @@ export type CheckoutProps = {
12
12
  latestVersion?: boolean;
13
13
  promptMergeOptions?: boolean;
14
14
  mergeStrategy?: MergeStrategy | null;
15
- verbose?: boolean;
16
15
  skipNpmInstall?: boolean;
17
- ignorePackageJson?: boolean;
18
16
  writeConfig?: boolean;
19
17
  reset?: boolean;
20
18
  all?: boolean;
21
- ignoreDist?: boolean;
22
19
  isLane?: boolean;
23
20
  };
24
21
  export type ComponentStatusBase = {
@@ -1 +1 @@
1
- {"version":3,"names":["path","data","_interopRequireWildcard","require","_generalError","_interopRequireDefault","_path2","_dataToPersist","_removePath","_mergeVersion","_bitError","_chalk","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","key","value","_toPropertyKey","configurable","writable","_toPrimitive","String","Symbol","toPrimitive","TypeError","Number","applyVersion","consumer","id","componentFromFS","mergeResults","checkoutProps","isLane","Error","toString","mergeStrategy","filesStatus","hasConflicts","MergeOptions","ours","files","file","pathNormalizeToLinux","relative","FileStatus","unchanged","bitMap","updateComponentId","applyVersionResult","component","loadComponentFromModelImportIfNeeded","componentMap","GeneralError","updateFileStatus","undefined","removeFilesIfNeeded","modifiedStatus","modifiedFiles","applyModifiedVersion","fileFromFs","find","f","areFilesEqual","Buffer","compare","contents","updated","filePathsFromFS","dataToPersist","DataToPersist","filename","removed","removePath","RemovePath","persistAllToFS","componentFiles","map","clone","manual","filePath","normalize","foundFile","componentFile","conflict","from","output","merged","isBinaryConflict","fsFile","binaryConflict","addFiles","m","added","deletedConflictFiles","removeFiles","remainDeletedFiles","remainDeleted","deletedConflict","overrideFiles","overridden","updatedFiles","content","throwForFailures","allComponentsStatus","failedComponents","c","unchangedMessage","unchangedLegitimately","failureMsgs","failedComponent","chalk","bold","red","join","BitError"],"sources":["checkout-version.ts"],"sourcesContent":["import * as path from 'path';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport { ComponentID } from '@teambit/component-id';\nimport GeneralError from '@teambit/legacy/dist/error/general-error';\nimport Version from '@teambit/legacy/dist/scope/models/version';\nimport { SourceFile } from '@teambit/legacy/dist/consumer/component/sources';\nimport { pathNormalizeToLinux, PathOsBased } from '@teambit/legacy/dist/utils/path';\nimport DataToPersist from '@teambit/legacy/dist/consumer/component/sources/data-to-persist';\nimport RemovePath from '@teambit/legacy/dist/consumer/component/sources/remove-path';\nimport { FileStatus, MergeOptions, MergeStrategy } from '@teambit/legacy/dist/consumer/versions-ops/merge-version';\nimport { MergeResultsThreeWay } from '@teambit/legacy/dist/consumer/versions-ops/merge-version/three-way-merge';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport { BitError } from '@teambit/bit-error';\nimport chalk from 'chalk';\nimport { ApplyVersionResult, FilesStatus } from '@teambit/merging';\n\nexport type CheckoutProps = {\n version?: string; // if reset is true, the version is undefined\n ids?: ComponentID[];\n latestVersion?: boolean;\n promptMergeOptions?: boolean;\n mergeStrategy?: MergeStrategy | null;\n verbose?: boolean;\n skipNpmInstall?: boolean;\n ignorePackageJson?: boolean;\n writeConfig?: boolean;\n reset?: boolean; // remove local changes. if set, the version is undefined.\n all?: boolean; // checkout all ids\n ignoreDist?: boolean;\n isLane?: boolean;\n};\n\nexport type ComponentStatusBase = {\n currentComponent?: ConsumerComponent;\n componentFromModel?: Version;\n id: ComponentID;\n shouldBeRemoved?: boolean; // in case the component is soft-removed, it should be removed from the workspace\n unchangedMessage?: string; // this gets populated either upon skip or failure.\n unchangedLegitimately?: boolean; // true for skipped legitimately (e.g. already up to date). false for failure.\n};\n\nexport type ComponentStatus = ComponentStatusBase & {\n mergeResults?: MergeResultsThreeWay | null | undefined;\n};\n\nexport type ApplyVersionWithComps = {\n applyVersionResult: ApplyVersionResult;\n component?: ConsumerComponent;\n // in case the component needs to be written to the filesystem, this is the component to write.\n legacyCompToWrite?: ConsumerComponent;\n};\n\n/**\n * 1) when the files are modified with conflicts and the strategy is \"ours\", leave the FS as is\n * and update only bitmap id version. (not the componentMap object).\n *\n * 2) when the files are modified with conflicts and the strategy is \"theirs\", write the component\n * according to id.version.\n *\n * 3) when files are modified with no conflict or files are modified with conflicts and the\n * strategy is manual, load the component according to id.version and update component.files.\n * applyModifiedVersion() docs explains what files are updated/added.\n *\n * 4) when --reset flag is used, write the component according to the bitmap version\n *\n * Side note:\n * Deleted file => if files are in used version but not in the modified one, no need to delete it. (similar to git).\n * Added file => if files are not in used version but in the modified one, they'll be under mergeResults.addFiles\n */\nexport async function applyVersion(\n consumer: Consumer,\n id: ComponentID,\n componentFromFS: ConsumerComponent | null | undefined, // it can be null only when isLanes is true\n mergeResults: MergeResultsThreeWay | null | undefined,\n checkoutProps: CheckoutProps\n): Promise<ApplyVersionWithComps> {\n if (!checkoutProps.isLane && !componentFromFS)\n throw new Error(`applyVersion expect to get componentFromFS for ${id.toString()}`);\n const { mergeStrategy } = checkoutProps;\n let filesStatus = {};\n if (mergeResults && mergeResults.hasConflicts && mergeStrategy === MergeOptions.ours) {\n // even when isLane is true, the mergeResults is possible only when the component is on the filesystem\n // otherwise it's impossible to have conflicts\n if (!componentFromFS) throw new Error(`applyVersion expect to get componentFromFS for ${id.toString()}`);\n componentFromFS.files.forEach((file) => {\n filesStatus[pathNormalizeToLinux(file.relative)] = FileStatus.unchanged;\n });\n consumer.bitMap.updateComponentId(id);\n return { applyVersionResult: { id, filesStatus } };\n }\n const component = await consumer.loadComponentFromModelImportIfNeeded(id);\n const componentMap = componentFromFS && componentFromFS.componentMap;\n if (componentFromFS && !componentMap) throw new GeneralError('applyVersion: componentMap was not found');\n\n const files = component.files;\n updateFileStatus(files, filesStatus, componentFromFS || undefined);\n\n await removeFilesIfNeeded(filesStatus, componentFromFS || undefined);\n\n if (mergeResults) {\n // update files according to the merge results\n const { filesStatus: modifiedStatus, modifiedFiles } = applyModifiedVersion(files, mergeResults, mergeStrategy);\n filesStatus = { ...filesStatus, ...modifiedStatus };\n component.files = modifiedFiles;\n }\n\n return {\n applyVersionResult: { id, filesStatus },\n component,\n };\n}\n\nexport function updateFileStatus(files: SourceFile[], filesStatus: FilesStatus, componentFromFS?: ConsumerComponent) {\n files.forEach((file) => {\n const fileFromFs = componentFromFS?.files.find((f) => f.relative === file.relative);\n const areFilesEqual = fileFromFs && Buffer.compare(fileFromFs.contents, file.contents) === 0;\n // @ts-ignore\n filesStatus[pathNormalizeToLinux(file.relative)] = areFilesEqual ? FileStatus.unchanged : FileStatus.updated;\n });\n}\n\n/**\n * when files exist on the filesystem but not on the checked out versions, they need to be deleted.\n * without this function, these files would be left on the filesystem. (we don't delete the comp-dir before writing).\n * this needs to be done *before* the component is written to the filesystem, otherwise, it won't work when a file\n * has a case change. e.g. from uppercase to lowercase. (see merge-lane.e2e 'renaming files from uppercase to lowercase').\n */\nexport async function removeFilesIfNeeded(filesStatus: FilesStatus, componentFromFS?: ConsumerComponent) {\n if (!componentFromFS) return;\n const filePathsFromFS = componentFromFS.files || [];\n const dataToPersist = new DataToPersist();\n filePathsFromFS.forEach((file) => {\n const filename = pathNormalizeToLinux(file.relative);\n if (!filesStatus[filename]) {\n // @ts-ignore todo: typescript has a good point here. it should be the string \"removed\", not chalk.green(removed).\n filesStatus[filename] = FileStatus.removed;\n dataToPersist.removePath(new RemovePath(file.path));\n }\n });\n await dataToPersist.persistAllToFS();\n}\n\n/**\n * relevant only when\n * 1) there is no conflict => add files from mergeResults: addFiles, overrideFiles and modifiedFiles.output.\n * 2) there is conflict and mergeStrategy is manual => add files from mergeResults: addFiles, overrideFiles and modifiedFiles.conflict.\n *\n * this function only updates the files content, it doesn't write the files\n */\nexport function applyModifiedVersion(\n componentFiles: SourceFile[],\n mergeResults: MergeResultsThreeWay,\n mergeStrategy: MergeStrategy | null | undefined\n): { filesStatus: Record<string, any>; modifiedFiles: SourceFile[] } {\n let modifiedFiles = componentFiles.map((file) => file.clone());\n const filesStatus = {};\n if (mergeResults.hasConflicts && mergeStrategy !== MergeOptions.manual) {\n return { filesStatus, modifiedFiles };\n }\n mergeResults.modifiedFiles.forEach((file) => {\n const filePath: PathOsBased = path.normalize(file.filePath);\n const foundFile = modifiedFiles.find((componentFile) => componentFile.relative === filePath);\n if (!foundFile) throw new GeneralError(`file ${filePath} not found`);\n if (file.conflict) {\n foundFile.contents = Buffer.from(file.conflict);\n filesStatus[file.filePath] = FileStatus.manual;\n } else if (typeof file.output === 'string') {\n foundFile.contents = Buffer.from(file.output);\n filesStatus[file.filePath] = FileStatus.merged;\n } else if (file.isBinaryConflict) {\n // leave the file as is and notify the user later about it.\n foundFile.contents = file.fsFile.contents;\n filesStatus[file.filePath] = FileStatus.binaryConflict;\n } else {\n throw new GeneralError(`file ${filePath} does not have output nor conflict`);\n }\n });\n\n mergeResults.addFiles.forEach((file) => {\n const filePath: PathOsBased = path.normalize(file.filePath);\n if (modifiedFiles.find((m) => m.relative === filePath)) return;\n modifiedFiles.push(file.fsFile);\n filesStatus[file.filePath] = FileStatus.added;\n });\n mergeResults.deletedConflictFiles.forEach((file) => {\n if (!file.fsFile) return;\n const filePath: PathOsBased = path.normalize(file.filePath);\n if (modifiedFiles.find((m) => m.relative === filePath)) return;\n modifiedFiles.push(file.fsFile);\n filesStatus[file.filePath] = FileStatus.added;\n });\n mergeResults.removeFiles.forEach((file) => {\n const filePath: PathOsBased = path.normalize(file.filePath);\n filesStatus[file.filePath] = FileStatus.removed;\n modifiedFiles = modifiedFiles.filter((f) => f.relative !== filePath);\n });\n mergeResults.remainDeletedFiles.forEach((file) => {\n const filePath: PathOsBased = path.normalize(file.filePath);\n modifiedFiles = modifiedFiles.filter((f) => f.relative !== filePath);\n filesStatus[file.filePath] = FileStatus.remainDeleted;\n });\n mergeResults.deletedConflictFiles.forEach((file) => {\n filesStatus[file.filePath] = FileStatus.deletedConflict;\n });\n\n mergeResults.overrideFiles.forEach((file) => {\n const filePath: PathOsBased = path.normalize(file.filePath);\n const foundFile = modifiedFiles.find((componentFile) => componentFile.relative === filePath);\n if (!foundFile) throw new GeneralError(`file ${filePath} not found`);\n foundFile.contents = file.fsFile.contents;\n filesStatus[file.filePath] = FileStatus.overridden;\n });\n mergeResults.updatedFiles.forEach((file) => {\n const filePath: PathOsBased = path.normalize(file.filePath);\n const foundFile = modifiedFiles.find((componentFile) => componentFile.relative === filePath);\n if (!foundFile) throw new GeneralError(`file ${filePath} not found`);\n foundFile.contents = file.content;\n filesStatus[file.filePath] = FileStatus.updated;\n });\n\n return { filesStatus, modifiedFiles };\n}\n\nexport function throwForFailures(allComponentsStatus: ComponentStatusBase[]) {\n const failedComponents = allComponentsStatus.filter((c) => c.unchangedMessage && !c.unchangedLegitimately);\n if (failedComponents.length) {\n const failureMsgs = failedComponents\n .map(\n (failedComponent) =>\n `${chalk.bold(failedComponent.id.toString())} - ${chalk.red(failedComponent.unchangedMessage as string)}`\n )\n .join('\\n');\n throw new BitError(`unable to proceed due to the following failures:\\n${failureMsgs}`);\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["path","data","_interopRequireWildcard","require","_generalError","_interopRequireDefault","_path2","_dataToPersist","_removePath","_mergeVersion","_bitError","_chalk","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","key","value","_toPropertyKey","configurable","writable","_toPrimitive","String","Symbol","toPrimitive","TypeError","Number","applyVersion","consumer","id","componentFromFS","mergeResults","checkoutProps","isLane","Error","toString","mergeStrategy","filesStatus","hasConflicts","MergeOptions","ours","files","file","pathNormalizeToLinux","relative","FileStatus","unchanged","bitMap","updateComponentId","applyVersionResult","component","loadComponentFromModelImportIfNeeded","componentMap","GeneralError","updateFileStatus","undefined","removeFilesIfNeeded","modifiedStatus","modifiedFiles","applyModifiedVersion","fileFromFs","find","f","areFilesEqual","Buffer","compare","contents","updated","filePathsFromFS","dataToPersist","DataToPersist","filename","removed","removePath","RemovePath","persistAllToFS","componentFiles","map","clone","manual","filePath","normalize","foundFile","componentFile","conflict","from","output","merged","isBinaryConflict","fsFile","binaryConflict","addFiles","m","added","deletedConflictFiles","removeFiles","remainDeletedFiles","remainDeleted","deletedConflict","overrideFiles","overridden","updatedFiles","content","throwForFailures","allComponentsStatus","failedComponents","c","unchangedMessage","unchangedLegitimately","failureMsgs","failedComponent","chalk","bold","red","join","BitError"],"sources":["checkout-version.ts"],"sourcesContent":["import * as path from 'path';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport { ComponentID } from '@teambit/component-id';\nimport GeneralError from '@teambit/legacy/dist/error/general-error';\nimport Version from '@teambit/legacy/dist/scope/models/version';\nimport { SourceFile } from '@teambit/legacy/dist/consumer/component/sources';\nimport { pathNormalizeToLinux, PathOsBased } from '@teambit/legacy/dist/utils/path';\nimport DataToPersist from '@teambit/legacy/dist/consumer/component/sources/data-to-persist';\nimport RemovePath from '@teambit/legacy/dist/consumer/component/sources/remove-path';\nimport { FileStatus, MergeOptions, MergeStrategy } from '@teambit/legacy/dist/consumer/versions-ops/merge-version';\nimport { MergeResultsThreeWay } from '@teambit/legacy/dist/consumer/versions-ops/merge-version/three-way-merge';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport { BitError } from '@teambit/bit-error';\nimport chalk from 'chalk';\nimport { ApplyVersionResult, FilesStatus } from '@teambit/merging';\n\nexport type CheckoutProps = {\n version?: string; // if reset is true, the version is undefined\n ids?: ComponentID[];\n latestVersion?: boolean;\n promptMergeOptions?: boolean;\n mergeStrategy?: MergeStrategy | null;\n skipNpmInstall?: boolean;\n writeConfig?: boolean;\n reset?: boolean; // remove local changes. if set, the version is undefined.\n all?: boolean; // checkout all ids\n isLane?: boolean;\n};\n\nexport type ComponentStatusBase = {\n currentComponent?: ConsumerComponent;\n componentFromModel?: Version;\n id: ComponentID;\n shouldBeRemoved?: boolean; // in case the component is soft-removed, it should be removed from the workspace\n unchangedMessage?: string; // this gets populated either upon skip or failure.\n unchangedLegitimately?: boolean; // true for skipped legitimately (e.g. already up to date). false for failure.\n};\n\nexport type ComponentStatus = ComponentStatusBase & {\n mergeResults?: MergeResultsThreeWay | null | undefined;\n};\n\nexport type ApplyVersionWithComps = {\n applyVersionResult: ApplyVersionResult;\n component?: ConsumerComponent;\n // in case the component needs to be written to the filesystem, this is the component to write.\n legacyCompToWrite?: ConsumerComponent;\n};\n\n/**\n * 1) when the files are modified with conflicts and the strategy is \"ours\", leave the FS as is\n * and update only bitmap id version. (not the componentMap object).\n *\n * 2) when the files are modified with conflicts and the strategy is \"theirs\", write the component\n * according to id.version.\n *\n * 3) when files are modified with no conflict or files are modified with conflicts and the\n * strategy is manual, load the component according to id.version and update component.files.\n * applyModifiedVersion() docs explains what files are updated/added.\n *\n * 4) when --reset flag is used, write the component according to the bitmap version\n *\n * Side note:\n * Deleted file => if files are in used version but not in the modified one, no need to delete it. (similar to git).\n * Added file => if files are not in used version but in the modified one, they'll be under mergeResults.addFiles\n */\nexport async function applyVersion(\n consumer: Consumer,\n id: ComponentID,\n componentFromFS: ConsumerComponent | null | undefined, // it can be null only when isLanes is true\n mergeResults: MergeResultsThreeWay | null | undefined,\n checkoutProps: CheckoutProps\n): Promise<ApplyVersionWithComps> {\n if (!checkoutProps.isLane && !componentFromFS)\n throw new Error(`applyVersion expect to get componentFromFS for ${id.toString()}`);\n const { mergeStrategy } = checkoutProps;\n let filesStatus = {};\n if (mergeResults && mergeResults.hasConflicts && mergeStrategy === MergeOptions.ours) {\n // even when isLane is true, the mergeResults is possible only when the component is on the filesystem\n // otherwise it's impossible to have conflicts\n if (!componentFromFS) throw new Error(`applyVersion expect to get componentFromFS for ${id.toString()}`);\n componentFromFS.files.forEach((file) => {\n filesStatus[pathNormalizeToLinux(file.relative)] = FileStatus.unchanged;\n });\n consumer.bitMap.updateComponentId(id);\n return { applyVersionResult: { id, filesStatus } };\n }\n const component = await consumer.loadComponentFromModelImportIfNeeded(id);\n const componentMap = componentFromFS && componentFromFS.componentMap;\n if (componentFromFS && !componentMap) throw new GeneralError('applyVersion: componentMap was not found');\n\n const files = component.files;\n updateFileStatus(files, filesStatus, componentFromFS || undefined);\n\n await removeFilesIfNeeded(filesStatus, componentFromFS || undefined);\n\n if (mergeResults) {\n // update files according to the merge results\n const { filesStatus: modifiedStatus, modifiedFiles } = applyModifiedVersion(files, mergeResults, mergeStrategy);\n filesStatus = { ...filesStatus, ...modifiedStatus };\n component.files = modifiedFiles;\n }\n\n return {\n applyVersionResult: { id, filesStatus },\n component,\n };\n}\n\nexport function updateFileStatus(files: SourceFile[], filesStatus: FilesStatus, componentFromFS?: ConsumerComponent) {\n files.forEach((file) => {\n const fileFromFs = componentFromFS?.files.find((f) => f.relative === file.relative);\n const areFilesEqual = fileFromFs && Buffer.compare(fileFromFs.contents, file.contents) === 0;\n // @ts-ignore\n filesStatus[pathNormalizeToLinux(file.relative)] = areFilesEqual ? FileStatus.unchanged : FileStatus.updated;\n });\n}\n\n/**\n * when files exist on the filesystem but not on the checked out versions, they need to be deleted.\n * without this function, these files would be left on the filesystem. (we don't delete the comp-dir before writing).\n * this needs to be done *before* the component is written to the filesystem, otherwise, it won't work when a file\n * has a case change. e.g. from uppercase to lowercase. (see merge-lane.e2e 'renaming files from uppercase to lowercase').\n */\nexport async function removeFilesIfNeeded(filesStatus: FilesStatus, componentFromFS?: ConsumerComponent) {\n if (!componentFromFS) return;\n const filePathsFromFS = componentFromFS.files || [];\n const dataToPersist = new DataToPersist();\n filePathsFromFS.forEach((file) => {\n const filename = pathNormalizeToLinux(file.relative);\n if (!filesStatus[filename]) {\n // @ts-ignore todo: typescript has a good point here. it should be the string \"removed\", not chalk.green(removed).\n filesStatus[filename] = FileStatus.removed;\n dataToPersist.removePath(new RemovePath(file.path));\n }\n });\n await dataToPersist.persistAllToFS();\n}\n\n/**\n * relevant only when\n * 1) there is no conflict => add files from mergeResults: addFiles, overrideFiles and modifiedFiles.output.\n * 2) there is conflict and mergeStrategy is manual => add files from mergeResults: addFiles, overrideFiles and modifiedFiles.conflict.\n *\n * this function only updates the files content, it doesn't write the files\n */\nexport function applyModifiedVersion(\n componentFiles: SourceFile[],\n mergeResults: MergeResultsThreeWay,\n mergeStrategy: MergeStrategy | null | undefined\n): { filesStatus: Record<string, any>; modifiedFiles: SourceFile[] } {\n let modifiedFiles = componentFiles.map((file) => file.clone());\n const filesStatus = {};\n if (mergeResults.hasConflicts && mergeStrategy !== MergeOptions.manual) {\n return { filesStatus, modifiedFiles };\n }\n mergeResults.modifiedFiles.forEach((file) => {\n const filePath: PathOsBased = path.normalize(file.filePath);\n const foundFile = modifiedFiles.find((componentFile) => componentFile.relative === filePath);\n if (!foundFile) throw new GeneralError(`file ${filePath} not found`);\n if (file.conflict) {\n foundFile.contents = Buffer.from(file.conflict);\n filesStatus[file.filePath] = FileStatus.manual;\n } else if (typeof file.output === 'string') {\n foundFile.contents = Buffer.from(file.output);\n filesStatus[file.filePath] = FileStatus.merged;\n } else if (file.isBinaryConflict) {\n // leave the file as is and notify the user later about it.\n foundFile.contents = file.fsFile.contents;\n filesStatus[file.filePath] = FileStatus.binaryConflict;\n } else {\n throw new GeneralError(`file ${filePath} does not have output nor conflict`);\n }\n });\n\n mergeResults.addFiles.forEach((file) => {\n const filePath: PathOsBased = path.normalize(file.filePath);\n if (modifiedFiles.find((m) => m.relative === filePath)) return;\n modifiedFiles.push(file.fsFile);\n filesStatus[file.filePath] = FileStatus.added;\n });\n mergeResults.deletedConflictFiles.forEach((file) => {\n if (!file.fsFile) return;\n const filePath: PathOsBased = path.normalize(file.filePath);\n if (modifiedFiles.find((m) => m.relative === filePath)) return;\n modifiedFiles.push(file.fsFile);\n filesStatus[file.filePath] = FileStatus.added;\n });\n mergeResults.removeFiles.forEach((file) => {\n const filePath: PathOsBased = path.normalize(file.filePath);\n filesStatus[file.filePath] = FileStatus.removed;\n modifiedFiles = modifiedFiles.filter((f) => f.relative !== filePath);\n });\n mergeResults.remainDeletedFiles.forEach((file) => {\n const filePath: PathOsBased = path.normalize(file.filePath);\n modifiedFiles = modifiedFiles.filter((f) => f.relative !== filePath);\n filesStatus[file.filePath] = FileStatus.remainDeleted;\n });\n mergeResults.deletedConflictFiles.forEach((file) => {\n filesStatus[file.filePath] = FileStatus.deletedConflict;\n });\n\n mergeResults.overrideFiles.forEach((file) => {\n const filePath: PathOsBased = path.normalize(file.filePath);\n const foundFile = modifiedFiles.find((componentFile) => componentFile.relative === filePath);\n if (!foundFile) throw new GeneralError(`file ${filePath} not found`);\n foundFile.contents = file.fsFile.contents;\n filesStatus[file.filePath] = FileStatus.overridden;\n });\n mergeResults.updatedFiles.forEach((file) => {\n const filePath: PathOsBased = path.normalize(file.filePath);\n const foundFile = modifiedFiles.find((componentFile) => componentFile.relative === filePath);\n if (!foundFile) throw new GeneralError(`file ${filePath} not found`);\n foundFile.contents = file.content;\n filesStatus[file.filePath] = FileStatus.updated;\n });\n\n return { filesStatus, modifiedFiles };\n}\n\nexport function throwForFailures(allComponentsStatus: ComponentStatusBase[]) {\n const failedComponents = allComponentsStatus.filter((c) => c.unchangedMessage && !c.unchangedLegitimately);\n if (failedComponents.length) {\n const failureMsgs = failedComponents\n .map(\n (failedComponent) =>\n `${chalk.bold(failedComponent.id.toString())} - ${chalk.red(failedComponent.unchangedMessage as string)}`\n )\n .join('\\n');\n throw new BitError(`unable to proceed due to the following failures:\\n${failureMsgs}`);\n }\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/checkout",
3
- "version": "1.0.130",
3
+ "version": "1.0.132",
4
4
  "homepage": "https://bit.cloud/teambit/component/checkout",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.component",
8
8
  "name": "checkout",
9
- "version": "1.0.130"
9
+ "version": "1.0.132"
10
10
  },
11
11
  "dependencies": {
12
12
  "chalk": "2.4.2",
@@ -15,13 +15,13 @@
15
15
  "@teambit/bit-error": "0.0.404",
16
16
  "@teambit/component-id": "1.2.0",
17
17
  "@teambit/harmony": "0.4.6",
18
- "@teambit/cli": "0.0.846",
19
- "@teambit/merging": "1.0.130",
20
- "@teambit/component-writer": "1.0.130",
21
- "@teambit/importer": "1.0.130",
22
- "@teambit/logger": "0.0.939",
23
- "@teambit/remove": "1.0.130",
24
- "@teambit/workspace": "1.0.130"
18
+ "@teambit/cli": "0.0.848",
19
+ "@teambit/merging": "1.0.132",
20
+ "@teambit/component-writer": "1.0.132",
21
+ "@teambit/importer": "1.0.132",
22
+ "@teambit/logger": "0.0.941",
23
+ "@teambit/remove": "1.0.132",
24
+ "@teambit/workspace": "1.0.132"
25
25
  },
26
26
  "devDependencies": {
27
27
  "@types/lodash": "4.14.165",