@teambit/lanes.modules.diff 0.0.555 → 0.0.556
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/lane-diff-generator.d.ts +5 -5
- package/dist/lane-diff-generator.js.map +1 -1
- package/dist/lane-diff.cmd.d.ts +4 -4
- package/dist/lane-diff.cmd.js.map +1 -1
- package/dist/lane-history-diff.cmd.d.ts +5 -5
- package/dist/lane-history-diff.cmd.js.map +1 -1
- package/lane-diff-generator.ts +9 -6
- package/lane-diff.cmd.ts +4 -4
- package/lane-history-diff.cmd.ts +5 -5
- package/package.json +4 -4
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { ScopeMain } from '@teambit/scope';
|
|
2
|
-
import { Workspace } from '@teambit/workspace';
|
|
3
|
-
import { Lane, LaneHistory } from '@teambit/objects';
|
|
1
|
+
import type { ScopeMain } from '@teambit/scope';
|
|
2
|
+
import type { Workspace } from '@teambit/workspace';
|
|
3
|
+
import type { Lane, LaneHistory } from '@teambit/objects';
|
|
4
4
|
import { ComponentID } from '@teambit/component-id';
|
|
5
|
-
import { DiffResults, DiffOptions } from '@teambit/legacy.component-diff';
|
|
6
|
-
import { ComponentCompareMain } from '@teambit/component-compare';
|
|
5
|
+
import type { DiffResults, DiffOptions } from '@teambit/legacy.component-diff';
|
|
6
|
+
import type { ComponentCompareMain } from '@teambit/component-compare';
|
|
7
7
|
type Failure = {
|
|
8
8
|
id: ComponentID;
|
|
9
9
|
msg: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_objects","data","require","_componentId","_legacy","_laneId","_bitError","_chalk","_interopRequireDefault","e","__esModule","default","LaneDiffGenerator","newCompsFrom","newCompsTo","compsWithDiff","compsWithNoChanges","failures","constructor","workspace","scope","componentCompare","generate","values","diffOptions","pattern","fromLaneName","toLaneName","getLaneNames","Error","legacyScope","fromLaneId","lanes","parseLaneIdFromString","toLaneId","toLane","fromLane","isDefault","loadLane","toLaneData","mapToLaneData","bitIds","components","map","c","id","fromLaneData","getDefaultLaneData","idsToCheckDiff","compIds","ComponentIdList","fromArray","filterIdsFromPoolIdsByPattern","length","BitError","idsOfTo","changeVersion","head","toString","scopeImporter","importWithoutDeps","cache","lane","undefined","ignoreMissingHead","reason","name","DEFAULT_LANE","idsOfFrom","Promise","all","hasWithoutVersion","componentDiff","generateDiffHistory","laneHistory","fromHistoryId","toHistoryId","laneId","history","getHistory","mapHistoryToLaneData","laneDiffResultsToString","laneDiffResults","newCompsOutput","laneName","ids","newCompsIdsStr","chalk","bold","join","newCompsTitle","inverse","diffResultsStr","outputDiffResults","failuresTitle","failuresIds","f","red","msg","failuresStr","newCompsToStr","newCompsFromStr","toLaneHead","compareToHeadIfEmpty","modelComponent","getModelComponent","foundFromLane","find","isEqualWithoutVersion","fromLaneHead","push","isEqual","fromVersion","loadVersion","objects","err","message","toVersion","load","fromLaneStr","formatDepsAsTable","diff","diffBetweenVersionsObjects","currentLane","getCurrentLaneId","laneData","remote","laneComponent","version","latestVersion","lc","historyId","historyItem","compStr","compId","ComponentID","fromString","Ref","from","exports"],"sources":["lane-diff-generator.ts"],"sourcesContent":["import { ScopeMain } from '@teambit/scope';\nimport { Workspace } from '@teambit/workspace';\nimport { HistoryItem, Ref, Lane, LaneHistory, Version } from '@teambit/objects';\nimport { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport { DiffResults, DiffOptions, outputDiffResults } from '@teambit/legacy.component-diff';\nimport { DEFAULT_LANE, LaneId } from '@teambit/lane-id';\nimport { BitError } from '@teambit/bit-error';\nimport { ComponentCompareMain } from '@teambit/component-compare';\nimport chalk from 'chalk';\n\ntype LaneData = {\n name: string;\n components: Array<{\n id: ComponentID;\n head: Ref;\n }>;\n remote: string | null;\n};\n\ntype Failure = { id: ComponentID; msg: string };\n\nexport type LaneDiffResults = {\n newCompsFrom: string[];\n newCompsTo: string[];\n compsWithDiff: DiffResults[];\n compsWithNoChanges: string[];\n toLaneName: string;\n fromLaneName: string;\n failures: Failure[];\n};\n\nexport class LaneDiffGenerator {\n private newCompsFrom: ComponentID[] = [];\n private newCompsTo: ComponentID[] = [];\n private compsWithDiff: DiffResults[] = [];\n private compsWithNoChanges: ComponentID[] = [];\n private fromLaneData: LaneData;\n private toLaneData: LaneData;\n private failures: Failure[] = [];\n constructor(\n private workspace: Workspace | undefined,\n private scope: ScopeMain,\n private componentCompare: ComponentCompareMain\n ) {}\n\n /**\n * the values array may include zero to two values and will be processed as following:\n * [] => diff between the default lane (from) and the current lane (to). (only inside workspace).\n * [to] => diff between the current lane (or default-lane when in scope) and \"to\" lane.\n * [from, to] => diff between \"from\" lane and \"to\" lane.\n */\n async generate(values: string[], diffOptions: DiffOptions = {}, pattern?: string): Promise<LaneDiffResults> {\n const { fromLaneName, toLaneName } = this.getLaneNames(values);\n\n if (fromLaneName === toLaneName) {\n throw new Error(`unable to run diff between \"${fromLaneName}\" and \"${toLaneName}\", they're the same lane`);\n }\n const legacyScope = this.scope.legacyScope;\n const fromLaneId = await legacyScope.lanes.parseLaneIdFromString(fromLaneName);\n const toLaneId = await legacyScope.lanes.parseLaneIdFromString(toLaneName);\n let toLane: Lane | null | undefined;\n let fromLane: Lane | null | undefined;\n\n if (fromLaneId.isDefault()) {\n if (toLaneId.isDefault()) throw new Error(`unable to diff between main and main, they're the same lane`);\n toLane = await legacyScope.lanes.loadLane(toLaneId);\n if (!toLane) throw new Error(`unable to find a lane \"${toLaneName}\" in the scope`);\n this.toLaneData = await this.mapToLaneData(toLane);\n const bitIds = toLane.components.map((c) => c.id);\n this.fromLaneData = await this.getDefaultLaneData(bitIds);\n } else if (toLaneId.isDefault()) {\n fromLane = await legacyScope.lanes.loadLane(fromLaneId);\n if (!fromLane) throw new Error(`unable to find a lane \"${fromLaneName}\" in the scope`);\n this.fromLaneData = await this.mapToLaneData(fromLane);\n const bitIds = fromLane?.components.map((c) => c.id) || [];\n this.toLaneData = await this.getDefaultLaneData(bitIds);\n } else {\n // both, \"from\" and \"to\" are not default-lane.\n toLane = await legacyScope.lanes.loadLane(toLaneId);\n if (!toLane) throw new Error(`unable to find a lane \"${toLaneName}\" in the scope`);\n fromLane = await legacyScope.lanes.loadLane(fromLaneId);\n if (!fromLane) throw new Error(`unable to find a lane \"${fromLaneName}\" in the scope`);\n this.toLaneData = await this.mapToLaneData(toLane);\n this.fromLaneData = await this.mapToLaneData(fromLane);\n }\n\n let idsToCheckDiff: ComponentIdList | undefined;\n if (pattern) {\n const compIds = this.toLaneData.components.map((c) => c.id);\n idsToCheckDiff = ComponentIdList.fromArray(await this.scope.filterIdsFromPoolIdsByPattern(pattern, compIds));\n }\n\n if (!this.toLaneData.components.length) {\n throw new BitError(`lane \"${toLaneName}\" is empty, nothing to show`);\n }\n\n const idsOfTo = ComponentIdList.fromArray(\n this.toLaneData.components.map((c) => c.id.changeVersion(c.head?.toString()))\n );\n await this.scope.legacyScope.scopeImporter.importWithoutDeps(idsOfTo, {\n cache: true,\n lane: toLane || undefined,\n ignoreMissingHead: true,\n reason: `for the \"to\" diff - ${toLane ? toLane.name : DEFAULT_LANE}`,\n });\n const idsOfFrom = ComponentIdList.fromArray(\n this.fromLaneData.components.map((c) => c.id.changeVersion(c.head?.toString()))\n );\n await this.scope.legacyScope.scopeImporter.importWithoutDeps(idsOfFrom, {\n cache: true,\n lane: fromLane || undefined,\n ignoreMissingHead: true,\n reason: `for the \"from\" diff - ${fromLane ? fromLane.name : DEFAULT_LANE}`,\n });\n\n await Promise.all(\n this.toLaneData.components.map(async ({ id, head }) => {\n if (idsToCheckDiff && !idsToCheckDiff.hasWithoutVersion(id)) {\n return;\n }\n await this.componentDiff(id, head, diffOptions, true);\n })\n );\n\n return {\n newCompsFrom: this.newCompsFrom.map((id) => id.toString()),\n newCompsTo: this.newCompsTo.map((id) => id.toString()),\n compsWithDiff: this.compsWithDiff,\n compsWithNoChanges: this.compsWithNoChanges.map((id) => id.toString()),\n toLaneName: this.toLaneData.name,\n fromLaneName: this.fromLaneData.name,\n failures: this.failures,\n };\n }\n\n async generateDiffHistory(\n lane: Lane,\n laneHistory: LaneHistory,\n fromHistoryId: string,\n toHistoryId: string,\n pattern?: string\n ): Promise<LaneDiffResults> {\n const laneId = lane.toLaneId();\n const history = laneHistory.getHistory();\n const fromLane = history[fromHistoryId];\n const toLane = history[toHistoryId];\n if (!fromLane)\n throw new Error(`unable to find the from-history-id \"${fromHistoryId}\" in lane \"${laneId.toString()}\"`);\n if (!toLane) throw new Error(`unable to find the to-history-id \"${toHistoryId}\" in lane \"${laneId.toString()}\"`);\n this.fromLaneData = this.mapHistoryToLaneData(laneId, fromHistoryId, fromLane);\n this.toLaneData = this.mapHistoryToLaneData(laneId, toHistoryId, toLane);\n\n let idsToCheckDiff: ComponentIdList | undefined;\n if (pattern) {\n const compIds = this.toLaneData.components.map((c) => c.id);\n idsToCheckDiff = ComponentIdList.fromArray(await this.scope.filterIdsFromPoolIdsByPattern(pattern, compIds));\n }\n\n if (!this.toLaneData.components.length) {\n throw new BitError(`lane-history \"${toHistoryId}\" is empty, nothing to show`);\n }\n\n const idsOfTo = ComponentIdList.fromArray(\n this.toLaneData.components.map((c) => c.id.changeVersion(c.head?.toString()))\n );\n await this.scope.legacyScope.scopeImporter.importWithoutDeps(idsOfTo, {\n cache: true,\n lane,\n ignoreMissingHead: true,\n reason: `for the \"to\" diff - ${laneId.toString()}-${toHistoryId}`,\n });\n const idsOfFrom = ComponentIdList.fromArray(\n this.fromLaneData.components.map((c) => c.id.changeVersion(c.head?.toString()))\n );\n await this.scope.legacyScope.scopeImporter.importWithoutDeps(idsOfFrom, {\n cache: true,\n lane,\n ignoreMissingHead: true,\n reason: `for the \"from\" diff - ${laneId.toString()}-${fromHistoryId}`,\n });\n\n await Promise.all(\n this.toLaneData.components.map(async ({ id, head }) => {\n if (idsToCheckDiff && !idsToCheckDiff.hasWithoutVersion(id)) {\n return;\n }\n await this.componentDiff(id, head);\n })\n );\n\n return {\n newCompsFrom: this.newCompsFrom.map((id) => id.toString()),\n newCompsTo: this.newCompsTo.map((id) => id.toString()),\n compsWithDiff: this.compsWithDiff,\n compsWithNoChanges: this.compsWithNoChanges.map((id) => id.toString()),\n toLaneName: this.toLaneData.name,\n fromLaneName: this.fromLaneData.name,\n failures: this.failures,\n };\n }\n\n laneDiffResultsToString(laneDiffResults: LaneDiffResults): string {\n const { compsWithDiff, newCompsFrom, newCompsTo, toLaneName, fromLaneName, failures } = laneDiffResults;\n\n const newCompsOutput = (laneName: string, ids: string[]) => {\n if (!ids.length) return '';\n const newCompsIdsStr = ids.map((id) => chalk.bold(id)).join('\\n');\n const newCompsTitle = `\\nThe following components were introduced in ${chalk.bold(laneName)} lane`;\n return `${chalk.inverse(newCompsTitle)}\\n${newCompsIdsStr}`;\n };\n\n const diffResultsStr = outputDiffResults(compsWithDiff);\n\n const failuresTitle = `\\n\\nDiff failed on the following component(s)`;\n const failuresIds = failures.map((f) => `${f.id.toString()} - ${chalk.red(f.msg)}`).join('\\n');\n const failuresStr = failures.length ? `${chalk.inverse(failuresTitle)}\\n${failuresIds}` : '';\n const newCompsToStr = newCompsOutput(toLaneName, newCompsTo);\n\n const newCompsFromStr = newCompsOutput(fromLaneName, newCompsFrom);\n return `${diffResultsStr}${newCompsToStr}${newCompsFromStr}${failuresStr}`;\n }\n\n private async componentDiff(\n id: ComponentID,\n toLaneHead: Ref | null,\n diffOptions: DiffOptions = {},\n compareToHeadIfEmpty = false\n ) {\n const modelComponent = await this.scope.legacyScope.getModelComponent(id);\n const foundFromLane = this.fromLaneData.components.find((c) => c.id.isEqualWithoutVersion(id))?.head;\n const fromLaneHead = compareToHeadIfEmpty ? foundFromLane || modelComponent.head : foundFromLane;\n if (!fromLaneHead) {\n this.newCompsTo.push(id);\n return;\n }\n if (!toLaneHead) {\n this.newCompsFrom.push(id);\n return;\n }\n if (fromLaneHead.isEqual(toLaneHead)) {\n this.compsWithNoChanges.push(id);\n return;\n }\n let fromVersion: Version;\n try {\n fromVersion = await modelComponent.loadVersion(fromLaneHead.toString(), this.scope.legacyScope.objects, true);\n } catch (err: any) {\n this.failures.push({ id, msg: err.message });\n return;\n }\n const toVersion = await toLaneHead.load(this.scope.legacyScope.objects);\n const fromLaneStr = this.fromLaneData.name;\n diffOptions.formatDepsAsTable = false;\n const diff = await this.componentCompare.diffBetweenVersionsObjects(\n modelComponent,\n fromVersion,\n toVersion as Version,\n fromLaneStr,\n this.toLaneData.name,\n diffOptions\n );\n this.compsWithDiff.push(diff);\n }\n\n private getLaneNames(values: string[]): { fromLaneName: string; toLaneName: string } {\n if (values.length > 2) {\n throw new Error(`expect \"values\" to include no more than two args, got ${values.length}`);\n }\n if (this.workspace) {\n const currentLane = this.workspace.getCurrentLaneId();\n if (!values.length) {\n if (currentLane.isDefault()) {\n throw new Error(`you are currently on the default branch, to run diff between lanes, please specify them`);\n }\n return { toLaneName: currentLane.name, fromLaneName: DEFAULT_LANE };\n }\n if (values.length === 1) {\n const toLaneName = currentLane.isDefault() ? DEFAULT_LANE : currentLane.name;\n return { toLaneName, fromLaneName: values[0] };\n }\n return { toLaneName: values[1], fromLaneName: values[0] };\n }\n // running from the scope\n if (values.length < 1) {\n throw new Error(`expect \"values\" to include at least one arg - the lane name`);\n }\n const fromLaneName = values.length === 2 ? values[0] : DEFAULT_LANE;\n const toLaneName = values.length === 2 ? values[1] : values[0];\n return { fromLaneName, toLaneName };\n }\n\n private async getDefaultLaneData(ids: ComponentID[]): Promise<LaneData> {\n const laneData: LaneData = {\n name: DEFAULT_LANE,\n remote: null,\n components: [],\n };\n\n await Promise.all(\n ids.map(async (id) => {\n const modelComponent = await this.scope.legacyScope.getModelComponent(id);\n const laneComponent = {\n id,\n head: modelComponent.head as Ref, // @todo: this is not true. it can be undefined\n version: modelComponent.latestVersion(), // should this be latestVersion() or bitId.version.toString()\n };\n laneData.components.push(laneComponent);\n })\n );\n\n return laneData;\n }\n\n private async mapToLaneData(lane: Lane): Promise<LaneData> {\n const { name, components } = lane;\n return {\n name,\n components: components.map((lc) => ({\n id: lc.id,\n head: lc.head,\n version: lc.id.version?.toString(),\n })),\n remote: lane.toLaneId().toString(),\n };\n }\n\n private mapHistoryToLaneData(laneId: LaneId, historyId: string, historyItem: HistoryItem): LaneData {\n return {\n name: historyId,\n components: historyItem.components.map((compStr) => {\n const compId = ComponentID.fromString(compStr);\n return {\n id: compId.changeVersion(undefined),\n head: Ref.from(compId.version),\n };\n }),\n remote: laneId.toString(),\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_objects","data","require","_componentId","_legacy","_laneId","_bitError","_chalk","_interopRequireDefault","e","__esModule","default","LaneDiffGenerator","newCompsFrom","newCompsTo","compsWithDiff","compsWithNoChanges","failures","constructor","workspace","scope","componentCompare","generate","values","diffOptions","pattern","fromLaneName","toLaneName","getLaneNames","Error","legacyScope","fromLaneId","lanes","parseLaneIdFromString","toLaneId","toLane","fromLane","isDefault","loadLane","toLaneData","mapToLaneData","bitIds","components","map","c","id","fromLaneData","getDefaultLaneData","idsToCheckDiff","compIds","ComponentIdList","fromArray","filterIdsFromPoolIdsByPattern","length","BitError","idsOfTo","changeVersion","head","toString","scopeImporter","importWithoutDeps","cache","lane","undefined","ignoreMissingHead","reason","name","DEFAULT_LANE","idsOfFrom","Promise","all","hasWithoutVersion","componentDiff","generateDiffHistory","laneHistory","fromHistoryId","toHistoryId","laneId","history","getHistory","mapHistoryToLaneData","laneDiffResultsToString","laneDiffResults","newCompsOutput","laneName","ids","newCompsIdsStr","chalk","bold","join","newCompsTitle","inverse","diffResultsStr","outputDiffResults","failuresTitle","failuresIds","f","red","msg","failuresStr","newCompsToStr","newCompsFromStr","toLaneHead","compareToHeadIfEmpty","modelComponent","getModelComponent","foundFromLane","find","isEqualWithoutVersion","fromLaneHead","push","isEqual","fromVersion","loadVersion","objects","err","message","toVersion","load","fromLaneStr","formatDepsAsTable","diff","diffBetweenVersionsObjects","currentLane","getCurrentLaneId","laneData","remote","laneComponent","version","latestVersion","lc","historyId","historyItem","compStr","compId","ComponentID","fromString","Ref","from","exports"],"sources":["lane-diff-generator.ts"],"sourcesContent":["import type { ScopeMain } from '@teambit/scope';\nimport type { Workspace } from '@teambit/workspace';\nimport type { HistoryItem, Lane, LaneHistory, Version } from '@teambit/objects';\nimport { Ref } from '@teambit/objects';\nimport { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport type { DiffResults, DiffOptions } from '@teambit/legacy.component-diff';\nimport { outputDiffResults } from '@teambit/legacy.component-diff';\nimport type { LaneId } from '@teambit/lane-id';\nimport { DEFAULT_LANE } from '@teambit/lane-id';\nimport { BitError } from '@teambit/bit-error';\nimport type { ComponentCompareMain } from '@teambit/component-compare';\nimport chalk from 'chalk';\n\ntype LaneData = {\n name: string;\n components: Array<{\n id: ComponentID;\n head: Ref;\n }>;\n remote: string | null;\n};\n\ntype Failure = { id: ComponentID; msg: string };\n\nexport type LaneDiffResults = {\n newCompsFrom: string[];\n newCompsTo: string[];\n compsWithDiff: DiffResults[];\n compsWithNoChanges: string[];\n toLaneName: string;\n fromLaneName: string;\n failures: Failure[];\n};\n\nexport class LaneDiffGenerator {\n private newCompsFrom: ComponentID[] = [];\n private newCompsTo: ComponentID[] = [];\n private compsWithDiff: DiffResults[] = [];\n private compsWithNoChanges: ComponentID[] = [];\n private fromLaneData: LaneData;\n private toLaneData: LaneData;\n private failures: Failure[] = [];\n constructor(\n private workspace: Workspace | undefined,\n private scope: ScopeMain,\n private componentCompare: ComponentCompareMain\n ) {}\n\n /**\n * the values array may include zero to two values and will be processed as following:\n * [] => diff between the default lane (from) and the current lane (to). (only inside workspace).\n * [to] => diff between the current lane (or default-lane when in scope) and \"to\" lane.\n * [from, to] => diff between \"from\" lane and \"to\" lane.\n */\n async generate(values: string[], diffOptions: DiffOptions = {}, pattern?: string): Promise<LaneDiffResults> {\n const { fromLaneName, toLaneName } = this.getLaneNames(values);\n\n if (fromLaneName === toLaneName) {\n throw new Error(`unable to run diff between \"${fromLaneName}\" and \"${toLaneName}\", they're the same lane`);\n }\n const legacyScope = this.scope.legacyScope;\n const fromLaneId = await legacyScope.lanes.parseLaneIdFromString(fromLaneName);\n const toLaneId = await legacyScope.lanes.parseLaneIdFromString(toLaneName);\n let toLane: Lane | null | undefined;\n let fromLane: Lane | null | undefined;\n\n if (fromLaneId.isDefault()) {\n if (toLaneId.isDefault()) throw new Error(`unable to diff between main and main, they're the same lane`);\n toLane = await legacyScope.lanes.loadLane(toLaneId);\n if (!toLane) throw new Error(`unable to find a lane \"${toLaneName}\" in the scope`);\n this.toLaneData = await this.mapToLaneData(toLane);\n const bitIds = toLane.components.map((c) => c.id);\n this.fromLaneData = await this.getDefaultLaneData(bitIds);\n } else if (toLaneId.isDefault()) {\n fromLane = await legacyScope.lanes.loadLane(fromLaneId);\n if (!fromLane) throw new Error(`unable to find a lane \"${fromLaneName}\" in the scope`);\n this.fromLaneData = await this.mapToLaneData(fromLane);\n const bitIds = fromLane?.components.map((c) => c.id) || [];\n this.toLaneData = await this.getDefaultLaneData(bitIds);\n } else {\n // both, \"from\" and \"to\" are not default-lane.\n toLane = await legacyScope.lanes.loadLane(toLaneId);\n if (!toLane) throw new Error(`unable to find a lane \"${toLaneName}\" in the scope`);\n fromLane = await legacyScope.lanes.loadLane(fromLaneId);\n if (!fromLane) throw new Error(`unable to find a lane \"${fromLaneName}\" in the scope`);\n this.toLaneData = await this.mapToLaneData(toLane);\n this.fromLaneData = await this.mapToLaneData(fromLane);\n }\n\n let idsToCheckDiff: ComponentIdList | undefined;\n if (pattern) {\n const compIds = this.toLaneData.components.map((c) => c.id);\n idsToCheckDiff = ComponentIdList.fromArray(await this.scope.filterIdsFromPoolIdsByPattern(pattern, compIds));\n }\n\n if (!this.toLaneData.components.length) {\n throw new BitError(`lane \"${toLaneName}\" is empty, nothing to show`);\n }\n\n const idsOfTo = ComponentIdList.fromArray(\n this.toLaneData.components.map((c) => c.id.changeVersion(c.head?.toString()))\n );\n await this.scope.legacyScope.scopeImporter.importWithoutDeps(idsOfTo, {\n cache: true,\n lane: toLane || undefined,\n ignoreMissingHead: true,\n reason: `for the \"to\" diff - ${toLane ? toLane.name : DEFAULT_LANE}`,\n });\n const idsOfFrom = ComponentIdList.fromArray(\n this.fromLaneData.components.map((c) => c.id.changeVersion(c.head?.toString()))\n );\n await this.scope.legacyScope.scopeImporter.importWithoutDeps(idsOfFrom, {\n cache: true,\n lane: fromLane || undefined,\n ignoreMissingHead: true,\n reason: `for the \"from\" diff - ${fromLane ? fromLane.name : DEFAULT_LANE}`,\n });\n\n await Promise.all(\n this.toLaneData.components.map(async ({ id, head }) => {\n if (idsToCheckDiff && !idsToCheckDiff.hasWithoutVersion(id)) {\n return;\n }\n await this.componentDiff(id, head, diffOptions, true);\n })\n );\n\n return {\n newCompsFrom: this.newCompsFrom.map((id) => id.toString()),\n newCompsTo: this.newCompsTo.map((id) => id.toString()),\n compsWithDiff: this.compsWithDiff,\n compsWithNoChanges: this.compsWithNoChanges.map((id) => id.toString()),\n toLaneName: this.toLaneData.name,\n fromLaneName: this.fromLaneData.name,\n failures: this.failures,\n };\n }\n\n async generateDiffHistory(\n lane: Lane,\n laneHistory: LaneHistory,\n fromHistoryId: string,\n toHistoryId: string,\n pattern?: string\n ): Promise<LaneDiffResults> {\n const laneId = lane.toLaneId();\n const history = laneHistory.getHistory();\n const fromLane = history[fromHistoryId];\n const toLane = history[toHistoryId];\n if (!fromLane)\n throw new Error(`unable to find the from-history-id \"${fromHistoryId}\" in lane \"${laneId.toString()}\"`);\n if (!toLane) throw new Error(`unable to find the to-history-id \"${toHistoryId}\" in lane \"${laneId.toString()}\"`);\n this.fromLaneData = this.mapHistoryToLaneData(laneId, fromHistoryId, fromLane);\n this.toLaneData = this.mapHistoryToLaneData(laneId, toHistoryId, toLane);\n\n let idsToCheckDiff: ComponentIdList | undefined;\n if (pattern) {\n const compIds = this.toLaneData.components.map((c) => c.id);\n idsToCheckDiff = ComponentIdList.fromArray(await this.scope.filterIdsFromPoolIdsByPattern(pattern, compIds));\n }\n\n if (!this.toLaneData.components.length) {\n throw new BitError(`lane-history \"${toHistoryId}\" is empty, nothing to show`);\n }\n\n const idsOfTo = ComponentIdList.fromArray(\n this.toLaneData.components.map((c) => c.id.changeVersion(c.head?.toString()))\n );\n await this.scope.legacyScope.scopeImporter.importWithoutDeps(idsOfTo, {\n cache: true,\n lane,\n ignoreMissingHead: true,\n reason: `for the \"to\" diff - ${laneId.toString()}-${toHistoryId}`,\n });\n const idsOfFrom = ComponentIdList.fromArray(\n this.fromLaneData.components.map((c) => c.id.changeVersion(c.head?.toString()))\n );\n await this.scope.legacyScope.scopeImporter.importWithoutDeps(idsOfFrom, {\n cache: true,\n lane,\n ignoreMissingHead: true,\n reason: `for the \"from\" diff - ${laneId.toString()}-${fromHistoryId}`,\n });\n\n await Promise.all(\n this.toLaneData.components.map(async ({ id, head }) => {\n if (idsToCheckDiff && !idsToCheckDiff.hasWithoutVersion(id)) {\n return;\n }\n await this.componentDiff(id, head);\n })\n );\n\n return {\n newCompsFrom: this.newCompsFrom.map((id) => id.toString()),\n newCompsTo: this.newCompsTo.map((id) => id.toString()),\n compsWithDiff: this.compsWithDiff,\n compsWithNoChanges: this.compsWithNoChanges.map((id) => id.toString()),\n toLaneName: this.toLaneData.name,\n fromLaneName: this.fromLaneData.name,\n failures: this.failures,\n };\n }\n\n laneDiffResultsToString(laneDiffResults: LaneDiffResults): string {\n const { compsWithDiff, newCompsFrom, newCompsTo, toLaneName, fromLaneName, failures } = laneDiffResults;\n\n const newCompsOutput = (laneName: string, ids: string[]) => {\n if (!ids.length) return '';\n const newCompsIdsStr = ids.map((id) => chalk.bold(id)).join('\\n');\n const newCompsTitle = `\\nThe following components were introduced in ${chalk.bold(laneName)} lane`;\n return `${chalk.inverse(newCompsTitle)}\\n${newCompsIdsStr}`;\n };\n\n const diffResultsStr = outputDiffResults(compsWithDiff);\n\n const failuresTitle = `\\n\\nDiff failed on the following component(s)`;\n const failuresIds = failures.map((f) => `${f.id.toString()} - ${chalk.red(f.msg)}`).join('\\n');\n const failuresStr = failures.length ? `${chalk.inverse(failuresTitle)}\\n${failuresIds}` : '';\n const newCompsToStr = newCompsOutput(toLaneName, newCompsTo);\n\n const newCompsFromStr = newCompsOutput(fromLaneName, newCompsFrom);\n return `${diffResultsStr}${newCompsToStr}${newCompsFromStr}${failuresStr}`;\n }\n\n private async componentDiff(\n id: ComponentID,\n toLaneHead: Ref | null,\n diffOptions: DiffOptions = {},\n compareToHeadIfEmpty = false\n ) {\n const modelComponent = await this.scope.legacyScope.getModelComponent(id);\n const foundFromLane = this.fromLaneData.components.find((c) => c.id.isEqualWithoutVersion(id))?.head;\n const fromLaneHead = compareToHeadIfEmpty ? foundFromLane || modelComponent.head : foundFromLane;\n if (!fromLaneHead) {\n this.newCompsTo.push(id);\n return;\n }\n if (!toLaneHead) {\n this.newCompsFrom.push(id);\n return;\n }\n if (fromLaneHead.isEqual(toLaneHead)) {\n this.compsWithNoChanges.push(id);\n return;\n }\n let fromVersion: Version;\n try {\n fromVersion = await modelComponent.loadVersion(fromLaneHead.toString(), this.scope.legacyScope.objects, true);\n } catch (err: any) {\n this.failures.push({ id, msg: err.message });\n return;\n }\n const toVersion = await toLaneHead.load(this.scope.legacyScope.objects);\n const fromLaneStr = this.fromLaneData.name;\n diffOptions.formatDepsAsTable = false;\n const diff = await this.componentCompare.diffBetweenVersionsObjects(\n modelComponent,\n fromVersion,\n toVersion as Version,\n fromLaneStr,\n this.toLaneData.name,\n diffOptions\n );\n this.compsWithDiff.push(diff);\n }\n\n private getLaneNames(values: string[]): { fromLaneName: string; toLaneName: string } {\n if (values.length > 2) {\n throw new Error(`expect \"values\" to include no more than two args, got ${values.length}`);\n }\n if (this.workspace) {\n const currentLane = this.workspace.getCurrentLaneId();\n if (!values.length) {\n if (currentLane.isDefault()) {\n throw new Error(`you are currently on the default branch, to run diff between lanes, please specify them`);\n }\n return { toLaneName: currentLane.name, fromLaneName: DEFAULT_LANE };\n }\n if (values.length === 1) {\n const toLaneName = currentLane.isDefault() ? DEFAULT_LANE : currentLane.name;\n return { toLaneName, fromLaneName: values[0] };\n }\n return { toLaneName: values[1], fromLaneName: values[0] };\n }\n // running from the scope\n if (values.length < 1) {\n throw new Error(`expect \"values\" to include at least one arg - the lane name`);\n }\n const fromLaneName = values.length === 2 ? values[0] : DEFAULT_LANE;\n const toLaneName = values.length === 2 ? values[1] : values[0];\n return { fromLaneName, toLaneName };\n }\n\n private async getDefaultLaneData(ids: ComponentID[]): Promise<LaneData> {\n const laneData: LaneData = {\n name: DEFAULT_LANE,\n remote: null,\n components: [],\n };\n\n await Promise.all(\n ids.map(async (id) => {\n const modelComponent = await this.scope.legacyScope.getModelComponent(id);\n const laneComponent = {\n id,\n head: modelComponent.head as Ref, // @todo: this is not true. it can be undefined\n version: modelComponent.latestVersion(), // should this be latestVersion() or bitId.version.toString()\n };\n laneData.components.push(laneComponent);\n })\n );\n\n return laneData;\n }\n\n private async mapToLaneData(lane: Lane): Promise<LaneData> {\n const { name, components } = lane;\n return {\n name,\n components: components.map((lc) => ({\n id: lc.id,\n head: lc.head,\n version: lc.id.version?.toString(),\n })),\n remote: lane.toLaneId().toString(),\n };\n }\n\n private mapHistoryToLaneData(laneId: LaneId, historyId: string, historyItem: HistoryItem): LaneData {\n return {\n name: historyId,\n components: historyItem.components.map((compStr) => {\n const compId = ComponentID.fromString(compStr);\n return {\n id: compId.changeVersion(undefined),\n head: Ref.from(compId.version),\n };\n }),\n remote: laneId.toString(),\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
package/dist/lane-diff.cmd.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Command, CommandOptions } from '@teambit/cli';
|
|
2
|
-
import { ScopeMain } from '@teambit/scope';
|
|
3
|
-
import { Workspace } from '@teambit/workspace';
|
|
4
|
-
import { ComponentCompareMain } from '@teambit/component-compare';
|
|
1
|
+
import type { Command, CommandOptions } from '@teambit/cli';
|
|
2
|
+
import type { ScopeMain } from '@teambit/scope';
|
|
3
|
+
import type { Workspace } from '@teambit/workspace';
|
|
4
|
+
import type { ComponentCompareMain } from '@teambit/component-compare';
|
|
5
5
|
export declare class LaneDiffCmd implements Command {
|
|
6
6
|
private workspace;
|
|
7
7
|
private scope;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_legacy","data","require","_laneDiffGenerator","LaneDiffCmd","name","description","extendedDescription","alias","arguments","options","COMPONENT_PATTERN_HELP","loader","private","remoteOp","skipWorkspace","constructor","workspace","scope","componentCompare","report","values","pattern","laneDiffGenerator","LaneDiffGenerator","results","generate","undefined","laneDiffResultsToString","exports"],"sources":["lane-diff.cmd.ts"],"sourcesContent":["import { Command, CommandOptions } from '@teambit/cli';\nimport { ScopeMain } from '@teambit/scope';\nimport { Workspace } from '@teambit/workspace';\nimport { ComponentCompareMain } from '@teambit/component-compare';\nimport { COMPONENT_PATTERN_HELP } from '@teambit/legacy.constants';\nimport { LaneDiffGenerator } from './lane-diff-generator';\n\nexport class LaneDiffCmd implements Command {\n name = 'diff [values...]';\n description = `show diff between lanes`;\n extendedDescription = `bit lane diff => diff between the current lane and default lane. (only inside workspace).\nbit lane diff to => diff between the current lane (or default-lane when in scope) and \"to\" lane.\nbit lane diff from to => diff between \"from\" lane and \"to\" lane.`;\n alias = '';\n arguments = [\n {\n name: 'from',\n description: `base lane for comparison`,\n },\n {\n name: 'to',\n description: `lane being compared to base lane`,\n },\n ];\n options = [\n [\n '',\n 'pattern <component-pattern>',\n `show lane-diff for components conforming to the specified component-pattern only\ncomponent-pattern format: ${COMPONENT_PATTERN_HELP}`,\n ],\n ] as CommandOptions;\n loader = true;\n private = true;\n remoteOp = true;\n skipWorkspace = true;\n\n constructor(\n private workspace: Workspace,\n private scope: ScopeMain,\n private componentCompare: ComponentCompareMain\n ) {}\n\n async report([values = []]: [string[]], { pattern }: { pattern?: string }) {\n const laneDiffGenerator = new LaneDiffGenerator(this.workspace, this.scope, this.componentCompare);\n const results = await laneDiffGenerator.generate(values, undefined, pattern);\n return laneDiffGenerator.laneDiffResultsToString(results);\n }\n}\n"],"mappings":";;;;;;AAIA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,mBAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,kBAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAMG,WAAW,CAAoB;EAC1CC,IAAI,GAAG,kBAAkB;EACzBC,WAAW,GAAG,yBAAyB;EACvCC,mBAAmB,GAAG;AACxB;AACA,iEAAiE;EAC/DC,KAAK,GAAG,EAAE;EACVC,SAAS,GAAG,CACV;IACEJ,IAAI,EAAE,MAAM;IACZC,WAAW,EAAE;EACf,CAAC,EACD;IACED,IAAI,EAAE,IAAI;IACVC,WAAW,EAAE;EACf,CAAC,CACF;EACDI,OAAO,GAAG,CACR,CACE,EAAE,EACF,6BAA6B,EAC7B;AACN,4BAA4BC,gCAAsB,EAAE,CAC/C,CACF;EACDC,MAAM,GAAG,IAAI;EACbC,OAAO,GAAG,IAAI;EACdC,QAAQ,GAAG,IAAI;EACfC,aAAa,GAAG,IAAI;EAEpBC,WAAWA,CACDC,SAAoB,EACpBC,KAAgB,EAChBC,gBAAsC,EAC9C;IAAA,KAHQF,SAAoB,GAApBA,SAAoB;IAAA,KACpBC,KAAgB,GAAhBA,KAAgB;IAAA,KAChBC,gBAAsC,GAAtCA,gBAAsC;EAC7C;EAEH,MAAMC,MAAMA,CAAC,CAACC,MAAM,GAAG,EAAE,CAAa,EAAE;IAAEC;EAA8B,CAAC,EAAE;IACzE,MAAMC,iBAAiB,GAAG,KAAIC,sCAAiB,EAAC,IAAI,CAACP,SAAS,EAAE,IAAI,CAACC,KAAK,EAAE,IAAI,CAACC,gBAAgB,CAAC;IAClG,MAAMM,OAAO,GAAG,MAAMF,iBAAiB,CAACG,QAAQ,CAACL,MAAM,EAAEM,SAAS,EAAEL,OAAO,CAAC;IAC5E,OAAOC,iBAAiB,CAACK,uBAAuB,CAACH,OAAO,CAAC;EAC3D;AACF;AAACI,OAAA,CAAAzB,WAAA,GAAAA,WAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_legacy","data","require","_laneDiffGenerator","LaneDiffCmd","name","description","extendedDescription","alias","arguments","options","COMPONENT_PATTERN_HELP","loader","private","remoteOp","skipWorkspace","constructor","workspace","scope","componentCompare","report","values","pattern","laneDiffGenerator","LaneDiffGenerator","results","generate","undefined","laneDiffResultsToString","exports"],"sources":["lane-diff.cmd.ts"],"sourcesContent":["import type { Command, CommandOptions } from '@teambit/cli';\nimport type { ScopeMain } from '@teambit/scope';\nimport type { Workspace } from '@teambit/workspace';\nimport type { ComponentCompareMain } from '@teambit/component-compare';\nimport { COMPONENT_PATTERN_HELP } from '@teambit/legacy.constants';\nimport { LaneDiffGenerator } from './lane-diff-generator';\n\nexport class LaneDiffCmd implements Command {\n name = 'diff [values...]';\n description = `show diff between lanes`;\n extendedDescription = `bit lane diff => diff between the current lane and default lane. (only inside workspace).\nbit lane diff to => diff between the current lane (or default-lane when in scope) and \"to\" lane.\nbit lane diff from to => diff between \"from\" lane and \"to\" lane.`;\n alias = '';\n arguments = [\n {\n name: 'from',\n description: `base lane for comparison`,\n },\n {\n name: 'to',\n description: `lane being compared to base lane`,\n },\n ];\n options = [\n [\n '',\n 'pattern <component-pattern>',\n `show lane-diff for components conforming to the specified component-pattern only\ncomponent-pattern format: ${COMPONENT_PATTERN_HELP}`,\n ],\n ] as CommandOptions;\n loader = true;\n private = true;\n remoteOp = true;\n skipWorkspace = true;\n\n constructor(\n private workspace: Workspace,\n private scope: ScopeMain,\n private componentCompare: ComponentCompareMain\n ) {}\n\n async report([values = []]: [string[]], { pattern }: { pattern?: string }) {\n const laneDiffGenerator = new LaneDiffGenerator(this.workspace, this.scope, this.componentCompare);\n const results = await laneDiffGenerator.generate(values, undefined, pattern);\n return laneDiffGenerator.laneDiffResultsToString(results);\n }\n}\n"],"mappings":";;;;;;AAIA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,mBAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,kBAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAMG,WAAW,CAAoB;EAC1CC,IAAI,GAAG,kBAAkB;EACzBC,WAAW,GAAG,yBAAyB;EACvCC,mBAAmB,GAAG;AACxB;AACA,iEAAiE;EAC/DC,KAAK,GAAG,EAAE;EACVC,SAAS,GAAG,CACV;IACEJ,IAAI,EAAE,MAAM;IACZC,WAAW,EAAE;EACf,CAAC,EACD;IACED,IAAI,EAAE,IAAI;IACVC,WAAW,EAAE;EACf,CAAC,CACF;EACDI,OAAO,GAAG,CACR,CACE,EAAE,EACF,6BAA6B,EAC7B;AACN,4BAA4BC,gCAAsB,EAAE,CAC/C,CACF;EACDC,MAAM,GAAG,IAAI;EACbC,OAAO,GAAG,IAAI;EACdC,QAAQ,GAAG,IAAI;EACfC,aAAa,GAAG,IAAI;EAEpBC,WAAWA,CACDC,SAAoB,EACpBC,KAAgB,EAChBC,gBAAsC,EAC9C;IAAA,KAHQF,SAAoB,GAApBA,SAAoB;IAAA,KACpBC,KAAgB,GAAhBA,KAAgB;IAAA,KAChBC,gBAAsC,GAAtCA,gBAAsC;EAC7C;EAEH,MAAMC,MAAMA,CAAC,CAACC,MAAM,GAAG,EAAE,CAAa,EAAE;IAAEC;EAA8B,CAAC,EAAE;IACzE,MAAMC,iBAAiB,GAAG,KAAIC,sCAAiB,EAAC,IAAI,CAACP,SAAS,EAAE,IAAI,CAACC,KAAK,EAAE,IAAI,CAACC,gBAAgB,CAAC;IAClG,MAAMM,OAAO,GAAG,MAAMF,iBAAiB,CAACG,QAAQ,CAACL,MAAM,EAAEM,SAAS,EAAEL,OAAO,CAAC;IAC5E,OAAOC,iBAAiB,CAACK,uBAAuB,CAACH,OAAO,CAAC;EAC3D;AACF;AAACI,OAAA,CAAAzB,WAAA,GAAAA,WAAA","ignoreList":[]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Command, CommandOptions } from '@teambit/cli';
|
|
2
|
-
import { ScopeMain } from '@teambit/scope';
|
|
3
|
-
import { Workspace } from '@teambit/workspace';
|
|
4
|
-
import { ComponentCompareMain } from '@teambit/component-compare';
|
|
5
|
-
import { LanesMain } from '@teambit/lanes';
|
|
1
|
+
import type { Command, CommandOptions } from '@teambit/cli';
|
|
2
|
+
import type { ScopeMain } from '@teambit/scope';
|
|
3
|
+
import type { Workspace } from '@teambit/workspace';
|
|
4
|
+
import type { ComponentCompareMain } from '@teambit/component-compare';
|
|
5
|
+
import type { LanesMain } from '@teambit/lanes';
|
|
6
6
|
export declare class LaneHistoryDiffCmd implements Command {
|
|
7
7
|
private lanes;
|
|
8
8
|
private workspace;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_legacy","data","require","_laneDiffGenerator","_bitError","LaneHistoryDiffCmd","name","description","extendedDescription","alias","options","COMPONENT_PATTERN_HELP","loader","constructor","lanes","workspace","scope","componentCompare","report","fromHistoryId","toHistoryId","lane","pattern","laneId","parseLaneId","getCurrentLaneId","isDefault","BitError","importLaneHistory","laneHistory","getLaneHistory","laneDiffGenerator","LaneDiffGenerator","laneObj","loadLane","results","generateDiffHistory","laneDiffResultsToString","exports"],"sources":["lane-history-diff.cmd.ts"],"sourcesContent":["import { Command, CommandOptions } from '@teambit/cli';\nimport { ScopeMain } from '@teambit/scope';\nimport { Workspace } from '@teambit/workspace';\nimport { ComponentCompareMain } from '@teambit/component-compare';\nimport { COMPONENT_PATTERN_HELP } from '@teambit/legacy.constants';\nimport { LaneDiffGenerator } from './lane-diff-generator';\nimport { BitError } from '@teambit/bit-error';\nimport { LanesMain } from '@teambit/lanes';\n\nexport class LaneHistoryDiffCmd implements Command {\n name = 'history-diff <from-history-id> <to-history-id>';\n description = 'EXPERIMENTAL. show diff between two lane-history ids';\n extendedDescription = 'run \"bit lane history\" to find these history-ids';\n alias = '';\n options = [\n ['l', 'lane <lane-name>', 'the name of the lane to diff. if not specified, the current lane is used'],\n [\n '',\n 'pattern <component-pattern>',\n `show lane-diff for components conforming to the specified component-pattern only\ncomponent-pattern format: ${COMPONENT_PATTERN_HELP}`,\n ],\n ] as CommandOptions;\n loader = true;\n\n constructor(\n private lanes: LanesMain,\n private workspace: Workspace,\n private scope: ScopeMain,\n private componentCompare: ComponentCompareMain\n ) {}\n\n async report(\n [fromHistoryId, toHistoryId]: [string, string],\n { lane, pattern }: { lane?: string; pattern?: string }\n ): Promise<string> {\n const laneId = lane ? await this.lanes.parseLaneId(lane) : this.lanes.getCurrentLaneId();\n if (!laneId || laneId.isDefault()) throw new BitError(`unable to show diff-history of the default lane (main)`);\n await this.lanes.importLaneHistory(laneId);\n const laneHistory = await this.lanes.getLaneHistory(laneId);\n const laneDiffGenerator = new LaneDiffGenerator(this.workspace, this.scope, this.componentCompare);\n const laneObj = await this.lanes.loadLane(laneId);\n const results = await laneDiffGenerator.generateDiffHistory(\n laneObj!,\n laneHistory,\n fromHistoryId,\n toHistoryId,\n pattern\n );\n return laneDiffGenerator.laneDiffResultsToString(results);\n }\n}\n"],"mappings":";;;;;;AAIA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,mBAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,kBAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,UAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,SAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGO,MAAMI,kBAAkB,CAAoB;EACjDC,IAAI,GAAG,gDAAgD;EACvDC,WAAW,GAAG,sDAAsD;EACpEC,mBAAmB,GAAG,kDAAkD;EACxEC,KAAK,GAAG,EAAE;EACVC,OAAO,GAAG,CACR,CAAC,GAAG,EAAE,kBAAkB,EAAE,0EAA0E,CAAC,EACrG,CACE,EAAE,EACF,6BAA6B,EAC7B;AACN,4BAA4BC,gCAAsB,EAAE,CAC/C,CACF;EACDC,MAAM,GAAG,IAAI;EAEbC,WAAWA,CACDC,KAAgB,EAChBC,SAAoB,EACpBC,KAAgB,EAChBC,gBAAsC,EAC9C;IAAA,KAJQH,KAAgB,GAAhBA,KAAgB;IAAA,KAChBC,SAAoB,GAApBA,SAAoB;IAAA,KACpBC,KAAgB,GAAhBA,KAAgB;IAAA,KAChBC,gBAAsC,GAAtCA,gBAAsC;EAC7C;EAEH,MAAMC,MAAMA,CACV,CAACC,aAAa,EAAEC,WAAW,CAAmB,EAC9C;IAAEC,IAAI;IAAEC;EAA6C,CAAC,EACrC;IACjB,MAAMC,MAAM,GAAGF,IAAI,GAAG,MAAM,IAAI,CAACP,KAAK,CAACU,WAAW,CAACH,IAAI,CAAC,GAAG,IAAI,CAACP,KAAK,CAACW,gBAAgB,CAAC,CAAC;IACxF,IAAI,CAACF,MAAM,IAAIA,MAAM,CAACG,SAAS,CAAC,CAAC,EAAE,MAAM,KAAIC,oBAAQ,EAAC,wDAAwD,CAAC;IAC/G,MAAM,IAAI,CAACb,KAAK,CAACc,iBAAiB,CAACL,MAAM,CAAC;IAC1C,MAAMM,WAAW,GAAG,MAAM,IAAI,CAACf,KAAK,CAACgB,cAAc,CAACP,MAAM,CAAC;IAC3D,MAAMQ,iBAAiB,GAAG,KAAIC,sCAAiB,EAAC,IAAI,CAACjB,SAAS,EAAE,IAAI,CAACC,KAAK,EAAE,IAAI,CAACC,gBAAgB,CAAC;IAClG,MAAMgB,OAAO,GAAG,MAAM,IAAI,CAACnB,KAAK,CAACoB,QAAQ,CAACX,MAAM,CAAC;IACjD,MAAMY,OAAO,GAAG,MAAMJ,iBAAiB,CAACK,mBAAmB,CACzDH,OAAO,EACPJ,WAAW,EACXV,aAAa,EACbC,WAAW,EACXE,OACF,CAAC;IACD,OAAOS,iBAAiB,CAACM,uBAAuB,CAACF,OAAO,CAAC;EAC3D;AACF;AAACG,OAAA,CAAAjC,kBAAA,GAAAA,kBAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_legacy","data","require","_laneDiffGenerator","_bitError","LaneHistoryDiffCmd","name","description","extendedDescription","alias","options","COMPONENT_PATTERN_HELP","loader","constructor","lanes","workspace","scope","componentCompare","report","fromHistoryId","toHistoryId","lane","pattern","laneId","parseLaneId","getCurrentLaneId","isDefault","BitError","importLaneHistory","laneHistory","getLaneHistory","laneDiffGenerator","LaneDiffGenerator","laneObj","loadLane","results","generateDiffHistory","laneDiffResultsToString","exports"],"sources":["lane-history-diff.cmd.ts"],"sourcesContent":["import type { Command, CommandOptions } from '@teambit/cli';\nimport type { ScopeMain } from '@teambit/scope';\nimport type { Workspace } from '@teambit/workspace';\nimport type { ComponentCompareMain } from '@teambit/component-compare';\nimport { COMPONENT_PATTERN_HELP } from '@teambit/legacy.constants';\nimport { LaneDiffGenerator } from './lane-diff-generator';\nimport { BitError } from '@teambit/bit-error';\nimport type { LanesMain } from '@teambit/lanes';\n\nexport class LaneHistoryDiffCmd implements Command {\n name = 'history-diff <from-history-id> <to-history-id>';\n description = 'EXPERIMENTAL. show diff between two lane-history ids';\n extendedDescription = 'run \"bit lane history\" to find these history-ids';\n alias = '';\n options = [\n ['l', 'lane <lane-name>', 'the name of the lane to diff. if not specified, the current lane is used'],\n [\n '',\n 'pattern <component-pattern>',\n `show lane-diff for components conforming to the specified component-pattern only\ncomponent-pattern format: ${COMPONENT_PATTERN_HELP}`,\n ],\n ] as CommandOptions;\n loader = true;\n\n constructor(\n private lanes: LanesMain,\n private workspace: Workspace,\n private scope: ScopeMain,\n private componentCompare: ComponentCompareMain\n ) {}\n\n async report(\n [fromHistoryId, toHistoryId]: [string, string],\n { lane, pattern }: { lane?: string; pattern?: string }\n ): Promise<string> {\n const laneId = lane ? await this.lanes.parseLaneId(lane) : this.lanes.getCurrentLaneId();\n if (!laneId || laneId.isDefault()) throw new BitError(`unable to show diff-history of the default lane (main)`);\n await this.lanes.importLaneHistory(laneId);\n const laneHistory = await this.lanes.getLaneHistory(laneId);\n const laneDiffGenerator = new LaneDiffGenerator(this.workspace, this.scope, this.componentCompare);\n const laneObj = await this.lanes.loadLane(laneId);\n const results = await laneDiffGenerator.generateDiffHistory(\n laneObj!,\n laneHistory,\n fromHistoryId,\n toHistoryId,\n pattern\n );\n return laneDiffGenerator.laneDiffResultsToString(results);\n }\n}\n"],"mappings":";;;;;;AAIA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,mBAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,kBAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,UAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,SAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGO,MAAMI,kBAAkB,CAAoB;EACjDC,IAAI,GAAG,gDAAgD;EACvDC,WAAW,GAAG,sDAAsD;EACpEC,mBAAmB,GAAG,kDAAkD;EACxEC,KAAK,GAAG,EAAE;EACVC,OAAO,GAAG,CACR,CAAC,GAAG,EAAE,kBAAkB,EAAE,0EAA0E,CAAC,EACrG,CACE,EAAE,EACF,6BAA6B,EAC7B;AACN,4BAA4BC,gCAAsB,EAAE,CAC/C,CACF;EACDC,MAAM,GAAG,IAAI;EAEbC,WAAWA,CACDC,KAAgB,EAChBC,SAAoB,EACpBC,KAAgB,EAChBC,gBAAsC,EAC9C;IAAA,KAJQH,KAAgB,GAAhBA,KAAgB;IAAA,KAChBC,SAAoB,GAApBA,SAAoB;IAAA,KACpBC,KAAgB,GAAhBA,KAAgB;IAAA,KAChBC,gBAAsC,GAAtCA,gBAAsC;EAC7C;EAEH,MAAMC,MAAMA,CACV,CAACC,aAAa,EAAEC,WAAW,CAAmB,EAC9C;IAAEC,IAAI;IAAEC;EAA6C,CAAC,EACrC;IACjB,MAAMC,MAAM,GAAGF,IAAI,GAAG,MAAM,IAAI,CAACP,KAAK,CAACU,WAAW,CAACH,IAAI,CAAC,GAAG,IAAI,CAACP,KAAK,CAACW,gBAAgB,CAAC,CAAC;IACxF,IAAI,CAACF,MAAM,IAAIA,MAAM,CAACG,SAAS,CAAC,CAAC,EAAE,MAAM,KAAIC,oBAAQ,EAAC,wDAAwD,CAAC;IAC/G,MAAM,IAAI,CAACb,KAAK,CAACc,iBAAiB,CAACL,MAAM,CAAC;IAC1C,MAAMM,WAAW,GAAG,MAAM,IAAI,CAACf,KAAK,CAACgB,cAAc,CAACP,MAAM,CAAC;IAC3D,MAAMQ,iBAAiB,GAAG,KAAIC,sCAAiB,EAAC,IAAI,CAACjB,SAAS,EAAE,IAAI,CAACC,KAAK,EAAE,IAAI,CAACC,gBAAgB,CAAC;IAClG,MAAMgB,OAAO,GAAG,MAAM,IAAI,CAACnB,KAAK,CAACoB,QAAQ,CAACX,MAAM,CAAC;IACjD,MAAMY,OAAO,GAAG,MAAMJ,iBAAiB,CAACK,mBAAmB,CACzDH,OAAO,EACPJ,WAAW,EACXV,aAAa,EACbC,WAAW,EACXE,OACF,CAAC;IACD,OAAOS,iBAAiB,CAACM,uBAAuB,CAACF,OAAO,CAAC;EAC3D;AACF;AAACG,OAAA,CAAAjC,kBAAA,GAAAA,kBAAA","ignoreList":[]}
|
package/lane-diff-generator.ts
CHANGED
|
@@ -1,11 +1,14 @@
|
|
|
1
|
-
import { ScopeMain } from '@teambit/scope';
|
|
2
|
-
import { Workspace } from '@teambit/workspace';
|
|
3
|
-
import { HistoryItem,
|
|
1
|
+
import type { ScopeMain } from '@teambit/scope';
|
|
2
|
+
import type { Workspace } from '@teambit/workspace';
|
|
3
|
+
import type { HistoryItem, Lane, LaneHistory, Version } from '@teambit/objects';
|
|
4
|
+
import { Ref } from '@teambit/objects';
|
|
4
5
|
import { ComponentID, ComponentIdList } from '@teambit/component-id';
|
|
5
|
-
import { DiffResults, DiffOptions
|
|
6
|
-
import {
|
|
6
|
+
import type { DiffResults, DiffOptions } from '@teambit/legacy.component-diff';
|
|
7
|
+
import { outputDiffResults } from '@teambit/legacy.component-diff';
|
|
8
|
+
import type { LaneId } from '@teambit/lane-id';
|
|
9
|
+
import { DEFAULT_LANE } from '@teambit/lane-id';
|
|
7
10
|
import { BitError } from '@teambit/bit-error';
|
|
8
|
-
import { ComponentCompareMain } from '@teambit/component-compare';
|
|
11
|
+
import type { ComponentCompareMain } from '@teambit/component-compare';
|
|
9
12
|
import chalk from 'chalk';
|
|
10
13
|
|
|
11
14
|
type LaneData = {
|
package/lane-diff.cmd.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Command, CommandOptions } from '@teambit/cli';
|
|
2
|
-
import { ScopeMain } from '@teambit/scope';
|
|
3
|
-
import { Workspace } from '@teambit/workspace';
|
|
4
|
-
import { ComponentCompareMain } from '@teambit/component-compare';
|
|
1
|
+
import type { Command, CommandOptions } from '@teambit/cli';
|
|
2
|
+
import type { ScopeMain } from '@teambit/scope';
|
|
3
|
+
import type { Workspace } from '@teambit/workspace';
|
|
4
|
+
import type { ComponentCompareMain } from '@teambit/component-compare';
|
|
5
5
|
import { COMPONENT_PATTERN_HELP } from '@teambit/legacy.constants';
|
|
6
6
|
import { LaneDiffGenerator } from './lane-diff-generator';
|
|
7
7
|
|
package/lane-history-diff.cmd.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { Command, CommandOptions } from '@teambit/cli';
|
|
2
|
-
import { ScopeMain } from '@teambit/scope';
|
|
3
|
-
import { Workspace } from '@teambit/workspace';
|
|
4
|
-
import { ComponentCompareMain } from '@teambit/component-compare';
|
|
1
|
+
import type { Command, CommandOptions } from '@teambit/cli';
|
|
2
|
+
import type { ScopeMain } from '@teambit/scope';
|
|
3
|
+
import type { Workspace } from '@teambit/workspace';
|
|
4
|
+
import type { ComponentCompareMain } from '@teambit/component-compare';
|
|
5
5
|
import { COMPONENT_PATTERN_HELP } from '@teambit/legacy.constants';
|
|
6
6
|
import { LaneDiffGenerator } from './lane-diff-generator';
|
|
7
7
|
import { BitError } from '@teambit/bit-error';
|
|
8
|
-
import { LanesMain } from '@teambit/lanes';
|
|
8
|
+
import type { LanesMain } from '@teambit/lanes';
|
|
9
9
|
|
|
10
10
|
export class LaneHistoryDiffCmd implements Command {
|
|
11
11
|
name = 'history-diff <from-history-id> <to-history-id>';
|
package/package.json
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/lanes.modules.diff",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.556",
|
|
4
4
|
"homepage": "https://bit.cloud/teambit/lanes/modules/diff",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.lanes",
|
|
8
8
|
"name": "modules/diff",
|
|
9
|
-
"version": "0.0.
|
|
9
|
+
"version": "0.0.556"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"chalk": "4.1.2",
|
|
13
13
|
"@teambit/bit-error": "0.0.404",
|
|
14
14
|
"@teambit/component-id": "1.2.4",
|
|
15
15
|
"@teambit/lane-id": "0.0.312",
|
|
16
|
-
"@teambit/legacy.
|
|
17
|
-
"@teambit/legacy.
|
|
16
|
+
"@teambit/legacy.constants": "0.0.13",
|
|
17
|
+
"@teambit/legacy.component-diff": "0.0.112"
|
|
18
18
|
},
|
|
19
19
|
"devDependencies": {
|
|
20
20
|
"@types/mocha": "9.1.0",
|