@teambit/snapping 1.0.281 → 1.0.283
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/artifacts/__bit_junit.xml +4 -4
- package/artifacts/schema.json +2 -2
- package/dist/components-have-issues.js +1 -1
- package/dist/components-have-issues.js.map +1 -1
- package/dist/flattened-edges.js +1 -1
- package/dist/flattened-edges.js.map +1 -1
- package/dist/generate-comp-from-scope.js +2 -2
- package/dist/generate-comp-from-scope.js.map +1 -1
- package/dist/reset-cmd.js +2 -2
- package/dist/reset-cmd.js.map +1 -1
- package/dist/reset-component.js +1 -1
- package/dist/reset-component.js.map +1 -1
- package/dist/snap-cmd.js +2 -2
- package/dist/snap-cmd.js.map +1 -1
- package/dist/snap-distance-cmd.js +1 -1
- package/dist/snap-distance-cmd.js.map +1 -1
- package/dist/snap-from-scope.cmd.js +2 -2
- package/dist/snap-from-scope.cmd.js.map +1 -1
- package/dist/snapping.main.runtime.js +2 -2
- package/dist/snapping.main.runtime.js.map +1 -1
- package/dist/snapping.spec.js +1 -1
- package/dist/snapping.spec.js.map +1 -1
- package/dist/tag-cmd.js +2 -2
- package/dist/tag-cmd.js.map +1 -1
- package/dist/tag-from-scope.cmd.js +2 -2
- package/dist/tag-from-scope.cmd.js.map +1 -1
- package/dist/tag-model-component.js +1 -1
- package/dist/tag-model-component.js.map +1 -1
- package/package.json +14 -14
- /package/dist/{preview-1716434516635.js → preview-1716607230882.js} +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
2
|
<testsuites tests="4" failures="0" errors="0" skipped="1">
|
|
3
|
-
<testsuite name="teambit.component/snapping@1.0.
|
|
4
|
-
<testcase classname="dist/snapping.spec.js" name="tag should throw an ComponentsHaveIssues error" time="0.
|
|
3
|
+
<testsuite name="teambit.component/snapping@1.0.283" tests="4" failures="0" errors="0" skipped="1">
|
|
4
|
+
<testcase classname="dist/snapping.spec.js" name="tag should throw an ComponentsHaveIssues error" time="0.028"/>
|
|
5
5
|
<testcase classname="dist/snapping.spec.js" name="should not throw an error if the config was set to ignore MissingPackagesDependenciesOnFs error">
|
|
6
6
|
<skipped/>
|
|
7
7
|
</testcase>
|
|
8
|
-
<testcase classname="dist/snapping.spec.js" name="should add the new dev dep" time="0.
|
|
9
|
-
<testcase classname="dist/snapping.spec.js" name="should remove the specified dependency"
|
|
8
|
+
<testcase classname="dist/snapping.spec.js" name="should add the new dev dep" time="0.001"/>
|
|
9
|
+
<testcase classname="dist/snapping.spec.js" name="should remove the specified dependency"/>
|
|
10
10
|
</testsuite>
|
|
11
11
|
</testsuites>
|
package/artifacts/schema.json
CHANGED
|
@@ -4690,7 +4690,7 @@
|
|
|
4690
4690
|
"line": 92,
|
|
4691
4691
|
"character": 5
|
|
4692
4692
|
},
|
|
4693
|
-
"signature": "(property) type: \"dev\" | \"
|
|
4693
|
+
"signature": "(property) type: \"dev\" | \"peer\" | \"runtime\"",
|
|
4694
4694
|
"name": "type",
|
|
4695
4695
|
"type": {
|
|
4696
4696
|
"__schema": "TypeUnionSchema",
|
|
@@ -12186,7 +12186,7 @@
|
|
|
12186
12186
|
"componentId": {
|
|
12187
12187
|
"scope": "teambit.component",
|
|
12188
12188
|
"name": "snapping",
|
|
12189
|
-
"version": "1.0.
|
|
12189
|
+
"version": "1.0.283"
|
|
12190
12190
|
},
|
|
12191
12191
|
"taggedModuleExports": []
|
|
12192
12192
|
}
|
|
@@ -39,7 +39,7 @@ function _lodash() {
|
|
|
39
39
|
};
|
|
40
40
|
return data;
|
|
41
41
|
}
|
|
42
|
-
function _interopRequireDefault(
|
|
42
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
43
43
|
class ComponentsHaveIssues extends _bitError().BitError {
|
|
44
44
|
constructor(components) {
|
|
45
45
|
components.forEach(component => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_bitError","data","require","_issues","_componentIssuesTemplate","_chalk","_interopRequireDefault","_lodash","
|
|
1
|
+
{"version":3,"names":["_bitError","data","require","_issues","_componentIssuesTemplate","_chalk","_interopRequireDefault","_lodash","e","__esModule","default","ComponentsHaveIssues","BitError","constructor","components","forEach","component","issues","filterNonTagBlocking","allIssueNames","uniq","map","comp","getAllIssueNames","flat","issuesColored","componentIssuesTemplate","join","IssuesAspect","id","issue","exports","format","chalk","underline","cyan","toString","formatIssues","result"],"sources":["components-have-issues.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\nimport { IssuesAspect } from '@teambit/issues';\nimport { formatIssues } from '@teambit/legacy/dist/cli/templates/component-issues-template';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport chalk from 'chalk';\nimport { uniq } from 'lodash';\n\nexport class ComponentsHaveIssues extends BitError {\n constructor(components: ConsumerComponent[]) {\n components.forEach((component) => {\n component.issues = component.issues.filterNonTagBlocking();\n });\n const allIssueNames = uniq(components.map((comp) => comp.issues.getAllIssueNames()).flat());\n const issuesColored = componentIssuesTemplate(components);\n super(`error: issues found with the following components\n${issuesColored}\n\nto get the list of component-issues names and suggestions how to resolve them, run \"bit component-issues\".\n\nwhile highly not recommended, it's possible to ignore issues in two ways:\n1) temporarily ignore for this tag/snap command by entering \"--ignore-issues\" flag, e.g. \\`bit tag --ignore-issues \"${allIssueNames.join(\n ', '\n )}\" \\`\n2) ignore the issue completely by configuring it in the workspace.jsonc file. e.g:\n\"${IssuesAspect.id}\": {\n \"ignoreIssues\": [${allIssueNames.map((issue) => `\"${issue}\"`).join(', ')}]\n}\n`);\n }\n}\n\nfunction componentIssuesTemplate(components: ConsumerComponent[]) {\n function format(component: ConsumerComponent) {\n return `${chalk.underline(chalk.cyan(component.id.toString()))}\\n${formatIssues(component)}`;\n }\n\n const result = `\\n${components.map(format).join('\\n')}`;\n return result;\n}\n"],"mappings":";;;;;;AAAA,SAAAA,UAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,SAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,QAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,OAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,yBAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,wBAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAI,OAAA;EAAA,MAAAJ,IAAA,GAAAK,sBAAA,CAAAJ,OAAA;EAAAG,MAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAM,QAAA;EAAA,MAAAN,IAAA,GAAAC,OAAA;EAAAK,OAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA8B,SAAAK,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEvB,MAAMG,oBAAoB,SAASC,oBAAQ,CAAC;EACjDC,WAAWA,CAACC,UAA+B,EAAE;IAC3CA,UAAU,CAACC,OAAO,CAAEC,SAAS,IAAK;MAChCA,SAAS,CAACC,MAAM,GAAGD,SAAS,CAACC,MAAM,CAACC,oBAAoB,CAAC,CAAC;IAC5D,CAAC,CAAC;IACF,MAAMC,aAAa,GAAG,IAAAC,cAAI,EAACN,UAAU,CAACO,GAAG,CAAEC,IAAI,IAAKA,IAAI,CAACL,MAAM,CAACM,gBAAgB,CAAC,CAAC,CAAC,CAACC,IAAI,CAAC,CAAC,CAAC;IAC3F,MAAMC,aAAa,GAAGC,uBAAuB,CAACZ,UAAU,CAAC;IACzD,KAAK,CAAC;AACV,EAAEW,aAAa;AACf;AACA;AACA;AACA;AACA,sHAAsHN,aAAa,CAACQ,IAAI,CAClI,IACF,CAAC;AACL;AACA,GAAGC,sBAAY,CAACC,EAAE;AAClB,qBAAqBV,aAAa,CAACE,GAAG,CAAES,KAAK,IAAK,IAAIA,KAAK,GAAG,CAAC,CAACH,IAAI,CAAC,IAAI,CAAC;AAC1E;AACA,CAAC,CAAC;EACA;AACF;AAACI,OAAA,CAAApB,oBAAA,GAAAA,oBAAA;AAED,SAASe,uBAAuBA,CAACZ,UAA+B,EAAE;EAChE,SAASkB,MAAMA,CAAChB,SAA4B,EAAE;IAC5C,OAAO,GAAGiB,gBAAK,CAACC,SAAS,CAACD,gBAAK,CAACE,IAAI,CAACnB,SAAS,CAACa,EAAE,CAACO,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,IAAAC,uCAAY,EAACrB,SAAS,CAAC,EAAE;EAC9F;EAEA,MAAMsB,MAAM,GAAG,KAAKxB,UAAU,CAACO,GAAG,CAACW,MAAM,CAAC,CAACL,IAAI,CAAC,IAAI,CAAC,EAAE;EACvD,OAAOW,MAAM;AACf","ignoreList":[]}
|
package/dist/flattened-edges.js
CHANGED
|
@@ -32,7 +32,7 @@ function _bitError() {
|
|
|
32
32
|
};
|
|
33
33
|
return data;
|
|
34
34
|
}
|
|
35
|
-
function _defineProperty(
|
|
35
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
36
36
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
37
37
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
38
38
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_graph","data","require","_componentId","_promiseWithConcurrent","_bitError","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","r","e","Symbol","toPrimitive","call","TypeError","String","Number","FlattenedEdgesGetter","constructor","scope","consumerComponents","logger","lane","Graph","buildGraph","debug","buildTheFirstLevel","populateMissingFromGraph","missingFromGraph","length","graph","addPreviousGraphs","importMissingAndAddToGraph","addComponentsWithMissingFlattenedEdges","populateFlattenedAndEdgesForComp","component","graphFromIds","successorsSubgraph","id","toString","edgesFromGraph","edges","map","edge","source","ComponentID","fromString","sourceId","target","targetId","type","attr","flattenedFromGraphIncludeItself","nodes","node","flattenedFromGraph","filter","isEqual","forEach","dep","throwWhenDepNotIncluded","flattenedDependencies","ComponentIdList","fromArray","flattenedEdges","idsWithoutGraphList","legacyScope","scopeImporter","importWithoutDeps","cache","componentsAndVersions","getComponentsAndVersions","missingEdges","Promise","all","version","versionStr","getFlattenedEdges","objects","push","toComponentId","changeVersion","addFlattenedEdgesToGraph","flattenedDeps","pMapPool","comp","previousVersion","previouslyUsedVersion","modelComponent","getModelComponent","undefined","loadVersion","concurrency","flattenedDepsUniq","uniqFromArray","flat","has","warn","join","missingEdgesList","results","importMany","ids","preferDependencyGraph","allFlattened","result","allFlattenedUniq","compId","setNode","Node","addEdges","dependencies","devDependencies","extensionDependencies","setEdge","Edge","allIds","currentlySnappedIds","filteredIds","label","get","exports","componentId","dependencyId","hasScope","hasVersion","BitError"],"sources":["flattened-edges.ts"],"sourcesContent":["import { Graph, Node, Edge } from '@teambit/graph.cleargraph';\nimport { DepEdgeType } from '@teambit/graph';\nimport { ScopeMain } from '@teambit/scope';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport { Lane } from '@teambit/legacy/dist/scope/models';\nimport { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport { DepEdge } from '@teambit/legacy/dist/scope/models/version';\nimport { Logger } from '@teambit/logger';\nimport { pMapPool } from '@teambit/legacy/dist/utils/promise-with-concurrent';\nimport { BitError } from '@teambit/bit-error';\n\n/**\n * the goal of this class is to determine the graph dependencies of a given set of components with minimal effort.\n * it takes advantage of the fact that we save the dependency graph in the `Version` object and tries to reuse it.\n *\n * to optimize it as much as possible, we do it in 4 steps. each step we check whether the graph has missing ids,\n * and if so, continue to the next step.\n *\n * * * First step * * *\n * we have two groups in this graph.\n * 1. components that are now versioned (this.consumerComponents). they have the new version (which is not in the scope yet).\n * 2. component that are not part of the current snap/tag.\n * it's not possible that this group has new components that never been into the scope, otherwise the tag/snap is failing.\n * so we know we can always find the version-object of these components in the scope or import them.\n *\n * given the above. we can simply get the first level of dependencies of the first group.\n * start the graph by adding them all as nodes and edges.\n *\n * this dependencies array may contain components from the first group. we can filter them out. (we don't care about\n * them, they're part of the graph already)\n * we're left with the dependencies that are part of the second group. there are the `missingFromGraph`.\n *\n * * * Second step * * *\n * instead of import these components, we can more efficiently get their previous version from the scope.\n * it must be already in the scope because these are the components we load in the first place.\n * chances are that 99% of the dependencies of the current components objects are identical to the previous version.\n * by adding the flattenedEdges of the previous versions we can probably finish the graph without importing a single\n * component. It's ok that this graph of previous versions has ids that are not relevant to this graph. for example, if\n * we now tag bar@0.0.2, this graph will have bar@0.0.1 although it's not relevant. it's ok, because finally we don't\n * use this graph as a whole. we only pick a component and get its sub-graph, so all irrelevant ids are ignored.\n *\n * * * Third step * * *\n * in case the graph above wasn't enough. we can import the missing components and get their flattenedEdges.\n * all components that were snapped/tagged since around 0.0.8000 have the flattenedEdges saved in the version.\n * older components don't have them and that's why the last step is needed.\n *\n * * * Fourth step * * *\n * this is the worst scenario. we have some old dependencies without flattenedEdges, we have to import them with\n * all their flattened dependencies.\n * once we have all these objects we can iterate them and add them to the graph.\n */\nexport class FlattenedEdgesGetter {\n private graph = new Graph<ComponentID, DepEdgeType>();\n private missingFromGraph: ComponentID[] = [];\n constructor(\n private scope: ScopeMain,\n private consumerComponents: ConsumerComponent[],\n private logger: Logger,\n private lane?: Lane\n ) {}\n\n async buildGraph() {\n this.logger.debug('FlattenedEdgesGetter, start');\n this.buildTheFirstLevel();\n this.populateMissingFromGraph();\n if (!this.missingFromGraph.length) {\n return this.graph;\n }\n this.logger.debug(\n `FlattenedEdgesGetter, total ${this.missingFromGraph.length} components missing from graph, trying to find them in previous versions`\n );\n await this.addPreviousGraphs();\n if (!this.missingFromGraph.length) {\n this.logger.debug(`FlattenedEdgesGetter, all missing ids were found in previous versions`);\n return this.graph;\n }\n this.logger.debug(\n `FlattenedEdgesGetter, total ${this.missingFromGraph.length} components missing from graph, trying to import them and load their flattenedEdges`\n );\n await this.importMissingAndAddToGraph();\n if (!this.missingFromGraph.length) {\n this.logger.debug(`FlattenedEdgesGetter, successfully found flattened edges for all components without graph`);\n return this.graph;\n }\n this.logger.debug(\n `FlattenedEdgesGetter, total ${this.missingFromGraph.length} components without graph and their version-objects has no flattened edges, no choice but to import all their flattened deps`\n );\n await this.addComponentsWithMissingFlattenedEdges();\n return this.graph;\n }\n\n populateFlattenedAndEdgesForComp(component: ConsumerComponent) {\n const graphFromIds = this.graph.successorsSubgraph(component.id.toString());\n const edgesFromGraph = graphFromIds.edges.map((edge) => {\n return {\n source: ComponentID.fromString(edge.sourceId),\n target: ComponentID.fromString(edge.targetId),\n type: edge.attr as DepEdgeType,\n };\n });\n\n const flattenedFromGraphIncludeItself = graphFromIds.nodes.map((node) => node.attr);\n const flattenedFromGraph = flattenedFromGraphIncludeItself.filter((id) => !id.isEqual(component.id));\n flattenedFromGraph.forEach((dep) => throwWhenDepNotIncluded(component.id, dep));\n\n component.flattenedDependencies = ComponentIdList.fromArray(flattenedFromGraph);\n component.flattenedEdges = edgesFromGraph;\n }\n\n private async importMissingAndAddToGraph() {\n const idsWithoutGraphList = ComponentIdList.fromArray(this.missingFromGraph);\n await this.scope.legacyScope.scopeImporter.importWithoutDeps(idsWithoutGraphList, {\n cache: true,\n lane: this.lane,\n });\n const componentsAndVersions = await this.scope.legacyScope.getComponentsAndVersions(idsWithoutGraphList);\n const missingEdges: ComponentID[] = [];\n await Promise.all(\n componentsAndVersions.map(async ({ component, version, versionStr }) => {\n const flattenedEdges = await version.getFlattenedEdges(this.scope.legacyScope.objects);\n if (!flattenedEdges.length && version.flattenedDependencies.length) {\n missingEdges.push(component.toComponentId().changeVersion(versionStr));\n }\n this.addFlattenedEdgesToGraph(flattenedEdges);\n })\n );\n this.missingFromGraph = missingEdges;\n }\n\n private async addPreviousGraphs() {\n const flattenedDeps: ComponentID[][] = [];\n await pMapPool(\n this.consumerComponents,\n async (comp) => {\n const previousVersion = comp.previouslyUsedVersion;\n if (!previousVersion) return;\n const modelComponent =\n comp.modelComponent || (await this.scope.legacyScope.getModelComponent(comp.id.changeVersion(undefined)));\n const version = await modelComponent.loadVersion(previousVersion, this.scope.legacyScope.objects, true);\n const flattenedEdges = await version.getFlattenedEdges(this.scope.legacyScope.objects);\n if (flattenedEdges.length) flattenedDeps.push(version.flattenedDependencies);\n this.addFlattenedEdgesToGraph(flattenedEdges);\n },\n { concurrency: 50 }\n );\n\n const flattenedDepsUniq = ComponentIdList.uniqFromArray(flattenedDeps.flat());\n this.missingFromGraph = this.missingFromGraph.filter((id) => !flattenedDepsUniq.has(id));\n }\n\n private async addComponentsWithMissingFlattenedEdges() {\n const missingEdges = this.missingFromGraph;\n this.logger.warn(`FlattenedEdgesGetter, found ${missingEdges.length} components with missing flattened edges:\n${missingEdges.map((e) => e.toString()).join('\\n')}`);\n const missingEdgesList = ComponentIdList.fromArray(missingEdges);\n const results = await this.scope.legacyScope.scopeImporter.importMany({\n ids: missingEdgesList,\n cache: true,\n lane: this.lane,\n preferDependencyGraph: false, // we know it does not have a dependency graph\n });\n const allFlattened = results.map((result) => result.version.flattenedDependencies);\n allFlattened.push(missingEdgesList);\n const allFlattenedUniq = ComponentIdList.uniqFromArray(allFlattened.flat());\n const componentsAndVersions = await this.scope.legacyScope.getComponentsAndVersions(\n ComponentIdList.fromArray(allFlattenedUniq)\n );\n componentsAndVersions.forEach(({ component, version, versionStr }) => {\n const compId = component.toComponentId().changeVersion(versionStr);\n this.graph.setNode(new Node(compId.toString(), compId));\n this.addEdges(compId, version.dependencies, 'prod');\n this.addEdges(compId, version.devDependencies, 'dev');\n this.addEdges(compId, version.extensionDependencies, 'ext');\n });\n }\n\n private addFlattenedEdgesToGraph(flattenedEdges: DepEdge[]) {\n flattenedEdges.forEach(({ source, target, type }) => {\n this.graph.setNode(new Node(source.toString(), source));\n this.graph.setNode(new Node(target.toString(), target));\n this.graph.setEdge(new Edge(source.toString(), target.toString(), type));\n });\n }\n\n private populateMissingFromGraph() {\n const allIds = this.graph.nodes.map((node) => node.attr);\n const currentlySnappedIds = ComponentIdList.fromArray(this.consumerComponents.map((comp) => comp.id));\n const filteredIds = allIds.filter((id) => !currentlySnappedIds.has(id));\n this.missingFromGraph = filteredIds;\n }\n\n private buildTheFirstLevel() {\n this.consumerComponents.forEach((comp) => {\n const id = comp.id;\n this.graph.setNode(new Node(id.toString(), id));\n this.addEdges(comp.id, comp.dependencies, 'prod');\n this.addEdges(comp.id, comp.devDependencies, 'dev');\n this.addEdges(comp.id, comp.extensionDependencies, 'ext');\n });\n }\n\n private addEdges(compId: ComponentID, dependencies: ConsumerComponent['dependencies'], label: DepEdgeType) {\n dependencies.get().forEach((dep) => {\n this.graph.setNode(new Node(dep.id.toString(), dep.id));\n this.graph.setEdge(new Edge(compId.toString(), dep.id.toString(), label));\n });\n }\n}\n\nfunction throwWhenDepNotIncluded(componentId: ComponentID, dependencyId: ComponentID) {\n if (!dependencyId.hasScope() && !dependencyId.hasVersion()) {\n throw new BitError(`fatal: \"${componentId.toString()}\" has a dependency \"${dependencyId.toString()}\".\nthis dependency was not included in the tag command.`);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_graph","data","require","_componentId","_promiseWithConcurrent","_bitError","_defineProperty","e","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","FlattenedEdgesGetter","constructor","scope","consumerComponents","logger","lane","Graph","buildGraph","debug","buildTheFirstLevel","populateMissingFromGraph","missingFromGraph","length","graph","addPreviousGraphs","importMissingAndAddToGraph","addComponentsWithMissingFlattenedEdges","populateFlattenedAndEdgesForComp","component","graphFromIds","successorsSubgraph","id","toString","edgesFromGraph","edges","map","edge","source","ComponentID","fromString","sourceId","target","targetId","type","attr","flattenedFromGraphIncludeItself","nodes","node","flattenedFromGraph","filter","isEqual","forEach","dep","throwWhenDepNotIncluded","flattenedDependencies","ComponentIdList","fromArray","flattenedEdges","idsWithoutGraphList","legacyScope","scopeImporter","importWithoutDeps","cache","componentsAndVersions","getComponentsAndVersions","missingEdges","Promise","all","version","versionStr","getFlattenedEdges","objects","push","toComponentId","changeVersion","addFlattenedEdgesToGraph","flattenedDeps","pMapPool","comp","previousVersion","previouslyUsedVersion","modelComponent","getModelComponent","undefined","loadVersion","concurrency","flattenedDepsUniq","uniqFromArray","flat","has","warn","join","missingEdgesList","results","importMany","ids","preferDependencyGraph","allFlattened","result","allFlattenedUniq","compId","setNode","Node","addEdges","dependencies","devDependencies","extensionDependencies","setEdge","Edge","allIds","currentlySnappedIds","filteredIds","label","get","exports","componentId","dependencyId","hasScope","hasVersion","BitError"],"sources":["flattened-edges.ts"],"sourcesContent":["import { Graph, Node, Edge } from '@teambit/graph.cleargraph';\nimport { DepEdgeType } from '@teambit/graph';\nimport { ScopeMain } from '@teambit/scope';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport { Lane } from '@teambit/legacy/dist/scope/models';\nimport { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport { DepEdge } from '@teambit/legacy/dist/scope/models/version';\nimport { Logger } from '@teambit/logger';\nimport { pMapPool } from '@teambit/legacy/dist/utils/promise-with-concurrent';\nimport { BitError } from '@teambit/bit-error';\n\n/**\n * the goal of this class is to determine the graph dependencies of a given set of components with minimal effort.\n * it takes advantage of the fact that we save the dependency graph in the `Version` object and tries to reuse it.\n *\n * to optimize it as much as possible, we do it in 4 steps. each step we check whether the graph has missing ids,\n * and if so, continue to the next step.\n *\n * * * First step * * *\n * we have two groups in this graph.\n * 1. components that are now versioned (this.consumerComponents). they have the new version (which is not in the scope yet).\n * 2. component that are not part of the current snap/tag.\n * it's not possible that this group has new components that never been into the scope, otherwise the tag/snap is failing.\n * so we know we can always find the version-object of these components in the scope or import them.\n *\n * given the above. we can simply get the first level of dependencies of the first group.\n * start the graph by adding them all as nodes and edges.\n *\n * this dependencies array may contain components from the first group. we can filter them out. (we don't care about\n * them, they're part of the graph already)\n * we're left with the dependencies that are part of the second group. there are the `missingFromGraph`.\n *\n * * * Second step * * *\n * instead of import these components, we can more efficiently get their previous version from the scope.\n * it must be already in the scope because these are the components we load in the first place.\n * chances are that 99% of the dependencies of the current components objects are identical to the previous version.\n * by adding the flattenedEdges of the previous versions we can probably finish the graph without importing a single\n * component. It's ok that this graph of previous versions has ids that are not relevant to this graph. for example, if\n * we now tag bar@0.0.2, this graph will have bar@0.0.1 although it's not relevant. it's ok, because finally we don't\n * use this graph as a whole. we only pick a component and get its sub-graph, so all irrelevant ids are ignored.\n *\n * * * Third step * * *\n * in case the graph above wasn't enough. we can import the missing components and get their flattenedEdges.\n * all components that were snapped/tagged since around 0.0.8000 have the flattenedEdges saved in the version.\n * older components don't have them and that's why the last step is needed.\n *\n * * * Fourth step * * *\n * this is the worst scenario. we have some old dependencies without flattenedEdges, we have to import them with\n * all their flattened dependencies.\n * once we have all these objects we can iterate them and add them to the graph.\n */\nexport class FlattenedEdgesGetter {\n private graph = new Graph<ComponentID, DepEdgeType>();\n private missingFromGraph: ComponentID[] = [];\n constructor(\n private scope: ScopeMain,\n private consumerComponents: ConsumerComponent[],\n private logger: Logger,\n private lane?: Lane\n ) {}\n\n async buildGraph() {\n this.logger.debug('FlattenedEdgesGetter, start');\n this.buildTheFirstLevel();\n this.populateMissingFromGraph();\n if (!this.missingFromGraph.length) {\n return this.graph;\n }\n this.logger.debug(\n `FlattenedEdgesGetter, total ${this.missingFromGraph.length} components missing from graph, trying to find them in previous versions`\n );\n await this.addPreviousGraphs();\n if (!this.missingFromGraph.length) {\n this.logger.debug(`FlattenedEdgesGetter, all missing ids were found in previous versions`);\n return this.graph;\n }\n this.logger.debug(\n `FlattenedEdgesGetter, total ${this.missingFromGraph.length} components missing from graph, trying to import them and load their flattenedEdges`\n );\n await this.importMissingAndAddToGraph();\n if (!this.missingFromGraph.length) {\n this.logger.debug(`FlattenedEdgesGetter, successfully found flattened edges for all components without graph`);\n return this.graph;\n }\n this.logger.debug(\n `FlattenedEdgesGetter, total ${this.missingFromGraph.length} components without graph and their version-objects has no flattened edges, no choice but to import all their flattened deps`\n );\n await this.addComponentsWithMissingFlattenedEdges();\n return this.graph;\n }\n\n populateFlattenedAndEdgesForComp(component: ConsumerComponent) {\n const graphFromIds = this.graph.successorsSubgraph(component.id.toString());\n const edgesFromGraph = graphFromIds.edges.map((edge) => {\n return {\n source: ComponentID.fromString(edge.sourceId),\n target: ComponentID.fromString(edge.targetId),\n type: edge.attr as DepEdgeType,\n };\n });\n\n const flattenedFromGraphIncludeItself = graphFromIds.nodes.map((node) => node.attr);\n const flattenedFromGraph = flattenedFromGraphIncludeItself.filter((id) => !id.isEqual(component.id));\n flattenedFromGraph.forEach((dep) => throwWhenDepNotIncluded(component.id, dep));\n\n component.flattenedDependencies = ComponentIdList.fromArray(flattenedFromGraph);\n component.flattenedEdges = edgesFromGraph;\n }\n\n private async importMissingAndAddToGraph() {\n const idsWithoutGraphList = ComponentIdList.fromArray(this.missingFromGraph);\n await this.scope.legacyScope.scopeImporter.importWithoutDeps(idsWithoutGraphList, {\n cache: true,\n lane: this.lane,\n });\n const componentsAndVersions = await this.scope.legacyScope.getComponentsAndVersions(idsWithoutGraphList);\n const missingEdges: ComponentID[] = [];\n await Promise.all(\n componentsAndVersions.map(async ({ component, version, versionStr }) => {\n const flattenedEdges = await version.getFlattenedEdges(this.scope.legacyScope.objects);\n if (!flattenedEdges.length && version.flattenedDependencies.length) {\n missingEdges.push(component.toComponentId().changeVersion(versionStr));\n }\n this.addFlattenedEdgesToGraph(flattenedEdges);\n })\n );\n this.missingFromGraph = missingEdges;\n }\n\n private async addPreviousGraphs() {\n const flattenedDeps: ComponentID[][] = [];\n await pMapPool(\n this.consumerComponents,\n async (comp) => {\n const previousVersion = comp.previouslyUsedVersion;\n if (!previousVersion) return;\n const modelComponent =\n comp.modelComponent || (await this.scope.legacyScope.getModelComponent(comp.id.changeVersion(undefined)));\n const version = await modelComponent.loadVersion(previousVersion, this.scope.legacyScope.objects, true);\n const flattenedEdges = await version.getFlattenedEdges(this.scope.legacyScope.objects);\n if (flattenedEdges.length) flattenedDeps.push(version.flattenedDependencies);\n this.addFlattenedEdgesToGraph(flattenedEdges);\n },\n { concurrency: 50 }\n );\n\n const flattenedDepsUniq = ComponentIdList.uniqFromArray(flattenedDeps.flat());\n this.missingFromGraph = this.missingFromGraph.filter((id) => !flattenedDepsUniq.has(id));\n }\n\n private async addComponentsWithMissingFlattenedEdges() {\n const missingEdges = this.missingFromGraph;\n this.logger.warn(`FlattenedEdgesGetter, found ${missingEdges.length} components with missing flattened edges:\n${missingEdges.map((e) => e.toString()).join('\\n')}`);\n const missingEdgesList = ComponentIdList.fromArray(missingEdges);\n const results = await this.scope.legacyScope.scopeImporter.importMany({\n ids: missingEdgesList,\n cache: true,\n lane: this.lane,\n preferDependencyGraph: false, // we know it does not have a dependency graph\n });\n const allFlattened = results.map((result) => result.version.flattenedDependencies);\n allFlattened.push(missingEdgesList);\n const allFlattenedUniq = ComponentIdList.uniqFromArray(allFlattened.flat());\n const componentsAndVersions = await this.scope.legacyScope.getComponentsAndVersions(\n ComponentIdList.fromArray(allFlattenedUniq)\n );\n componentsAndVersions.forEach(({ component, version, versionStr }) => {\n const compId = component.toComponentId().changeVersion(versionStr);\n this.graph.setNode(new Node(compId.toString(), compId));\n this.addEdges(compId, version.dependencies, 'prod');\n this.addEdges(compId, version.devDependencies, 'dev');\n this.addEdges(compId, version.extensionDependencies, 'ext');\n });\n }\n\n private addFlattenedEdgesToGraph(flattenedEdges: DepEdge[]) {\n flattenedEdges.forEach(({ source, target, type }) => {\n this.graph.setNode(new Node(source.toString(), source));\n this.graph.setNode(new Node(target.toString(), target));\n this.graph.setEdge(new Edge(source.toString(), target.toString(), type));\n });\n }\n\n private populateMissingFromGraph() {\n const allIds = this.graph.nodes.map((node) => node.attr);\n const currentlySnappedIds = ComponentIdList.fromArray(this.consumerComponents.map((comp) => comp.id));\n const filteredIds = allIds.filter((id) => !currentlySnappedIds.has(id));\n this.missingFromGraph = filteredIds;\n }\n\n private buildTheFirstLevel() {\n this.consumerComponents.forEach((comp) => {\n const id = comp.id;\n this.graph.setNode(new Node(id.toString(), id));\n this.addEdges(comp.id, comp.dependencies, 'prod');\n this.addEdges(comp.id, comp.devDependencies, 'dev');\n this.addEdges(comp.id, comp.extensionDependencies, 'ext');\n });\n }\n\n private addEdges(compId: ComponentID, dependencies: ConsumerComponent['dependencies'], label: DepEdgeType) {\n dependencies.get().forEach((dep) => {\n this.graph.setNode(new Node(dep.id.toString(), dep.id));\n this.graph.setEdge(new Edge(compId.toString(), dep.id.toString(), label));\n });\n }\n}\n\nfunction throwWhenDepNotIncluded(componentId: ComponentID, dependencyId: ComponentID) {\n if (!dependencyId.hasScope() && !dependencyId.hasVersion()) {\n throw new BitError(`fatal: \"${componentId.toString()}\" has a dependency \"${dependencyId.toString()}\".\nthis dependency was not included in the tag command.`);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -54,10 +54,10 @@ function _componentSchema() {
|
|
|
54
54
|
};
|
|
55
55
|
return data;
|
|
56
56
|
}
|
|
57
|
-
function _interopRequireDefault(
|
|
57
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
58
58
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
59
59
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
60
|
-
function _defineProperty(
|
|
60
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
61
61
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
62
62
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
63
63
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_componentId","data","require","_component","_interopRequireDefault","_dependencies","_sources","_componentOverrides","_config","_componentSchema","obj","__esModule","default","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","key","value","_toPropertyKey","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","generateCompFromScope","scope","compData","snapping","files","Error","map","file","SourceFile","base","path","contents","Buffer","from","content","test","id","componentId","extensions","ExtensionDataList","fromConfigObject","aspects","consumerComponent","ConsumerComponent","mainFile","name","fullName","schema","CURRENT_SCHEMA","overrides","ComponentOverrides","loadNewFromScope","defaultScope","log","message","date","Date","now","toString","username","email","_addFlattenedDependenciesToComponents","version","filesBitObject","legacyScope","sources","consumerComponentToVersion","modelComponent","findOrAddComponent","hash","objects","writeObjectsToTheFS","f","component","getManyByLegacy","addDeps","snapData","deps","depsResolver","newDeps","newDependencies","updateDeps","dependencies","compIdsData","dep","isComponent","compIdsDataParsed","ComponentID","fromString","compIds","changeVersion","comps","getMany","toDependency","depId","comp","find","c","isEqualWithoutVersion","pkgName","getPackageName","Dependency","compDeps","type","compDevDeps","compPeerDeps","packageDeps","toPackageObj","pkgs","reduce","acc","curr","getPkgObj","manipulateCurrentPkgs","removeDependencies","pkg","found","d","startsWith","replace","manipulateCurrentDeps","currentCompDeps","afterRemoval","includes","toStringWithoutVersion","state","_consumer","dependenciesData","allDependencies","get","devDependencies","peerDependencies","allPackagesDependencies","packageDependencies","devPackageDependencies","peerPackageDependencies","loadDependenciesFromScope","UpdateDepsAspectsSaveIntoDepsResolver"],"sources":["generate-comp-from-scope.ts"],"sourcesContent":["import { ComponentID } from '@teambit/component-id';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport { Dependency } from '@teambit/legacy/dist/consumer/component/dependencies';\nimport { SourceFile } from '@teambit/legacy/dist/consumer/component/sources';\nimport { ScopeMain } from '@teambit/scope';\nimport ComponentOverrides from '@teambit/legacy/dist/consumer/config/component-overrides';\nimport { ExtensionDataList } from '@teambit/legacy/dist/consumer/config';\nimport { Component } from '@teambit/component';\nimport { CURRENT_SCHEMA } from '@teambit/legacy/dist/consumer/component/component-schema';\nimport { DependenciesMain } from '@teambit/dependencies';\nimport { DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { FileData } from './snap-from-scope.cmd';\nimport { SnappingMain, SnapDataParsed } from './snapping.main.runtime';\n\nexport type CompData = {\n componentId: ComponentID;\n dependencies: string[];\n aspects: Record<string, any> | undefined;\n message: string | undefined;\n files: FileData[] | undefined;\n mainFile?: string;\n};\n\n/**\n * normally new components are created from a workspace. the files are in the filesystem and the ConsumerComponent\n * object is created from the files.\n * here, we need to create the ConsumerComponent object \"on the fly\". we don't have workspace, only scope. the files\n * are in-memory (we got them from snap-from-scope command).\n * the way how it is done is by creating a minimal ConsumerComponent object, then convert `Version` object from it,\n * write the version and files into the scope as objects, so then it's possible to load Component object using the\n * ConsumerComponent.\n */\nexport async function generateCompFromScope(\n scope: ScopeMain,\n compData: CompData,\n snapping: SnappingMain\n): Promise<Component> {\n if (!compData.files) throw new Error('generateComp: files are missing');\n const files = compData.files.map((file) => {\n return new SourceFile({ base: '.', path: file.path, contents: Buffer.from(file.content), test: false });\n });\n const id = compData.componentId;\n const extensions = ExtensionDataList.fromConfigObject(compData.aspects || {});\n\n const consumerComponent = new ConsumerComponent({\n mainFile: compData.mainFile || 'index.ts',\n name: compData.componentId.fullName,\n scope: compData.componentId.scope,\n files,\n schema: CURRENT_SCHEMA,\n overrides: await ComponentOverrides.loadNewFromScope(id, files, extensions),\n defaultScope: compData.componentId.scope,\n extensions,\n // the dummy data here are not important. this Version object will be discarded later.\n log: {\n message: compData.message || '',\n date: Date.now().toString(),\n username: '',\n email: '',\n },\n });\n // this is needed, otherwise in case of updating envs/aspects, the version-validator throws\n // an error saying \"the extension ${extensionId.toString()} is missing from the flattenedDependencies\"\n await snapping._addFlattenedDependenciesToComponents([consumerComponent]);\n\n const { version, files: filesBitObject } = await scope.legacyScope.sources.consumerComponentToVersion(\n consumerComponent\n );\n const modelComponent = scope.legacyScope.sources.findOrAddComponent(consumerComponent);\n consumerComponent.version = version.hash().toString();\n await scope.legacyScope.objects.writeObjectsToTheFS([version, modelComponent, ...filesBitObject.map((f) => f.file)]);\n const component = await scope.getManyByLegacy([consumerComponent]);\n\n return component[0];\n}\n\nexport async function addDeps(\n component: Component,\n snapData: SnapDataParsed,\n scope: ScopeMain,\n deps: DependenciesMain,\n depsResolver: DependencyResolverMain,\n snapping: SnappingMain\n) {\n const newDeps = snapData.newDependencies || [];\n const updateDeps = snapData.dependencies || [];\n const compIdsData = newDeps.filter((dep) => dep.isComponent);\n const compIdsDataParsed = compIdsData.map((data) => ({\n ...data,\n id: ComponentID.fromString(data.id),\n }));\n const compIds = compIdsDataParsed.map((dep) => (dep.version ? dep.id.changeVersion(dep.version) : dep.id));\n const comps = await scope.getMany(compIds);\n const toDependency = (depId: ComponentID) => {\n const comp = comps.find((c) => c.id.isEqualWithoutVersion(depId));\n if (!comp) throw new Error(`unable to find the specified dependency ${depId.toString()} in the scope`);\n const pkgName = depsResolver.getPackageName(comp);\n return new Dependency(comp.id, [], pkgName);\n };\n const compDeps = compIdsDataParsed.filter((c) => c.type === 'runtime').map((dep) => toDependency(dep.id));\n const compDevDeps = compIdsDataParsed.filter((c) => c.type === 'dev').map((dep) => toDependency(dep.id));\n const compPeerDeps = compIdsDataParsed.filter((c) => c.type === 'peer').map((dep) => toDependency(dep.id));\n const packageDeps = newDeps.filter((dep) => !dep.isComponent);\n const toPackageObj = (pkgs: Array<{ id: string; version?: string }>) => {\n return pkgs.reduce((acc, curr) => {\n if (!curr.version) throw new Error(`please specify a version for the package dependency: \"${curr.id}\"`);\n acc[curr.id] = curr.version;\n return acc;\n }, {});\n };\n const getPkgObj = (type: 'runtime' | 'dev' | 'peer') => {\n return toPackageObj(packageDeps.filter((dep) => dep.type === type));\n };\n const manipulateCurrentPkgs = (pkgs: Record<string, string>) => {\n snapData.removeDependencies?.forEach((pkg) => {\n delete pkgs[pkg];\n });\n Object.keys(pkgs).forEach((pkg) => {\n const found = updateDeps.find((d) => d.startsWith(`${pkg}@`));\n if (found) {\n pkgs[pkg] = found.replace(`${pkg}@`, '');\n }\n });\n return pkgs;\n };\n const manipulateCurrentDeps = (currentCompDeps: Dependency[]) => {\n const afterRemoval = currentCompDeps.filter(\n (dep) => !snapData.removeDependencies?.includes(dep.id.toStringWithoutVersion())\n );\n afterRemoval.forEach((dep) => {\n const found = updateDeps.find((d) => d.startsWith(`${dep.id.toStringWithoutVersion()}@`));\n if (found) {\n dep.id = dep.id.changeVersion(found.replace(`${dep.id.toStringWithoutVersion()}@`, ''));\n }\n });\n return afterRemoval;\n };\n\n const consumerComponent = component.state._consumer as ConsumerComponent;\n\n const dependenciesData = {\n allDependencies: {\n dependencies: [...compDeps, ...manipulateCurrentDeps(consumerComponent.dependencies.get())],\n devDependencies: [...compDevDeps, ...manipulateCurrentDeps(consumerComponent.devDependencies.get())],\n peerDependencies: [...compPeerDeps, ...manipulateCurrentDeps(consumerComponent.peerDependencies.get())],\n },\n allPackagesDependencies: {\n packageDependencies: { ...manipulateCurrentPkgs(consumerComponent.packageDependencies), ...getPkgObj('runtime') },\n devPackageDependencies: {\n ...manipulateCurrentPkgs(consumerComponent.devPackageDependencies),\n ...getPkgObj('dev'),\n },\n peerPackageDependencies: {\n ...manipulateCurrentPkgs(consumerComponent.peerPackageDependencies),\n ...getPkgObj('peer'),\n },\n },\n };\n\n // add the dependencies to the legacy ConsumerComponent object\n // it takes care of both: given dependencies (from the cli) and the overrides, which are coming from the env.\n await deps.loadDependenciesFromScope(consumerComponent, dependenciesData);\n\n await snapping.UpdateDepsAspectsSaveIntoDepsResolver(component, updateDeps);\n}\n"],"mappings":";;;;;;;AAAA,SAAAA,aAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,YAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,WAAA;EAAA,MAAAF,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAC,UAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,cAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,aAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,SAAA;EAAA,MAAAL,IAAA,GAAAC,OAAA;EAAAI,QAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAM,oBAAA;EAAA,MAAAN,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAK,mBAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAO,QAAA;EAAA,MAAAP,IAAA,GAAAC,OAAA;EAAAM,OAAA,YAAAA,CAAA;IAAA,OAAAP,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAQ,iBAAA;EAAA,MAAAR,IAAA,GAAAC,OAAA;EAAAO,gBAAA,YAAAA,CAAA;IAAA,OAAAR,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA0F,SAAAG,uBAAAM,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,IAAAe,eAAA,CAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAAlB,CAAA,EAAAG,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAAA,SAAAgB,gBAAApB,GAAA,EAAAwB,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAxB,GAAA,IAAAO,MAAA,CAAAgB,cAAA,CAAAvB,GAAA,EAAAwB,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAZ,UAAA,QAAAc,YAAA,QAAAC,QAAA,oBAAA5B,GAAA,CAAAwB,GAAA,IAAAC,KAAA,WAAAzB,GAAA;AAAA,SAAA0B,eAAApB,CAAA,QAAAuB,CAAA,GAAAC,YAAA,CAAAxB,CAAA,uCAAAuB,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAxB,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAF,CAAA,GAAAE,CAAA,CAAAyB,MAAA,CAAAC,WAAA,kBAAA5B,CAAA,QAAAyB,CAAA,GAAAzB,CAAA,CAAA6B,IAAA,CAAA3B,CAAA,EAAAD,CAAA,uCAAAwB,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAA7B,CAAA,GAAA8B,MAAA,GAAAC,MAAA,EAAA9B,CAAA;AAe1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,eAAe+B,qBAAqBA,CACzCC,KAAgB,EAChBC,QAAkB,EAClBC,QAAsB,EACF;EACpB,IAAI,CAACD,QAAQ,CAACE,KAAK,EAAE,MAAM,IAAIC,KAAK,CAAC,iCAAiC,CAAC;EACvE,MAAMD,KAAK,GAAGF,QAAQ,CAACE,KAAK,CAACE,GAAG,CAAEC,IAAI,IAAK;IACzC,OAAO,KAAIC,qBAAU,EAAC;MAAEC,IAAI,EAAE,GAAG;MAAEC,IAAI,EAAEH,IAAI,CAACG,IAAI;MAAEC,QAAQ,EAAEC,MAAM,CAACC,IAAI,CAACN,IAAI,CAACO,OAAO,CAAC;MAAEC,IAAI,EAAE;IAAM,CAAC,CAAC;EACzG,CAAC,CAAC;EACF,MAAMC,EAAE,GAAGd,QAAQ,CAACe,WAAW;EAC/B,MAAMC,UAAU,GAAGC,2BAAiB,CAACC,gBAAgB,CAAClB,QAAQ,CAACmB,OAAO,IAAI,CAAC,CAAC,CAAC;EAE7E,MAAMC,iBAAiB,GAAG,KAAIC,oBAAiB,EAAC;IAC9CC,QAAQ,EAAEtB,QAAQ,CAACsB,QAAQ,IAAI,UAAU;IACzCC,IAAI,EAAEvB,QAAQ,CAACe,WAAW,CAACS,QAAQ;IACnCzB,KAAK,EAAEC,QAAQ,CAACe,WAAW,CAAChB,KAAK;IACjCG,KAAK;IACLuB,MAAM,EAAEC,iCAAc;IACtBC,SAAS,EAAE,MAAMC,6BAAkB,CAACC,gBAAgB,CAACf,EAAE,EAAEZ,KAAK,EAAEc,UAAU,CAAC;IAC3Ec,YAAY,EAAE9B,QAAQ,CAACe,WAAW,CAAChB,KAAK;IACxCiB,UAAU;IACV;IACAe,GAAG,EAAE;MACHC,OAAO,EAAEhC,QAAQ,CAACgC,OAAO,IAAI,EAAE;MAC/BC,IAAI,EAAEC,IAAI,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;MAC3BC,QAAQ,EAAE,EAAE;MACZC,KAAK,EAAE;IACT;EACF,CAAC,CAAC;EACF;EACA;EACA,MAAMrC,QAAQ,CAACsC,qCAAqC,CAAC,CAACnB,iBAAiB,CAAC,CAAC;EAEzE,MAAM;IAAEoB,OAAO;IAAEtC,KAAK,EAAEuC;EAAe,CAAC,GAAG,MAAM1C,KAAK,CAAC2C,WAAW,CAACC,OAAO,CAACC,0BAA0B,CACnGxB,iBACF,CAAC;EACD,MAAMyB,cAAc,GAAG9C,KAAK,CAAC2C,WAAW,CAACC,OAAO,CAACG,kBAAkB,CAAC1B,iBAAiB,CAAC;EACtFA,iBAAiB,CAACoB,OAAO,GAAGA,OAAO,CAACO,IAAI,CAAC,CAAC,CAACX,QAAQ,CAAC,CAAC;EACrD,MAAMrC,KAAK,CAAC2C,WAAW,CAACM,OAAO,CAACC,mBAAmB,CAAC,CAACT,OAAO,EAAEK,cAAc,EAAE,GAAGJ,cAAc,CAACrC,GAAG,CAAE8C,CAAC,IAAKA,CAAC,CAAC7C,IAAI,CAAC,CAAC,CAAC;EACpH,MAAM8C,SAAS,GAAG,MAAMpD,KAAK,CAACqD,eAAe,CAAC,CAAChC,iBAAiB,CAAC,CAAC;EAElE,OAAO+B,SAAS,CAAC,CAAC,CAAC;AACrB;AAEO,eAAeE,OAAOA,CAC3BF,SAAoB,EACpBG,QAAwB,EACxBvD,KAAgB,EAChBwD,IAAsB,EACtBC,YAAoC,EACpCvD,QAAsB,EACtB;EACA,MAAMwD,OAAO,GAAGH,QAAQ,CAACI,eAAe,IAAI,EAAE;EAC9C,MAAMC,UAAU,GAAGL,QAAQ,CAACM,YAAY,IAAI,EAAE;EAC9C,MAAMC,WAAW,GAAGJ,OAAO,CAACrF,MAAM,CAAE0F,GAAG,IAAKA,GAAG,CAACC,WAAW,CAAC;EAC5D,MAAMC,iBAAiB,GAAGH,WAAW,CAACzD,GAAG,CAAEpD,IAAI,IAAAyB,aAAA,CAAAA,aAAA,KAC1CzB,IAAI;IACP8D,EAAE,EAAEmD,0BAAW,CAACC,UAAU,CAAClH,IAAI,CAAC8D,EAAE;EAAC,EACnC,CAAC;EACH,MAAMqD,OAAO,GAAGH,iBAAiB,CAAC5D,GAAG,CAAE0D,GAAG,IAAMA,GAAG,CAACtB,OAAO,GAAGsB,GAAG,CAAChD,EAAE,CAACsD,aAAa,CAACN,GAAG,CAACtB,OAAO,CAAC,GAAGsB,GAAG,CAAChD,EAAG,CAAC;EAC1G,MAAMuD,KAAK,GAAG,MAAMtE,KAAK,CAACuE,OAAO,CAACH,OAAO,CAAC;EAC1C,MAAMI,YAAY,GAAIC,KAAkB,IAAK;IAC3C,MAAMC,IAAI,GAAGJ,KAAK,CAACK,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAAC7D,EAAE,CAAC8D,qBAAqB,CAACJ,KAAK,CAAC,CAAC;IACjE,IAAI,CAACC,IAAI,EAAE,MAAM,IAAItE,KAAK,CAAE,2CAA0CqE,KAAK,CAACpC,QAAQ,CAAC,CAAE,eAAc,CAAC;IACtG,MAAMyC,OAAO,GAAGrB,YAAY,CAACsB,cAAc,CAACL,IAAI,CAAC;IACjD,OAAO,KAAIM,0BAAU,EAACN,IAAI,CAAC3D,EAAE,EAAE,EAAE,EAAE+D,OAAO,CAAC;EAC7C,CAAC;EACD,MAAMG,QAAQ,GAAGhB,iBAAiB,CAAC5F,MAAM,CAAEuG,CAAC,IAAKA,CAAC,CAACM,IAAI,KAAK,SAAS,CAAC,CAAC7E,GAAG,CAAE0D,GAAG,IAAKS,YAAY,CAACT,GAAG,CAAChD,EAAE,CAAC,CAAC;EACzG,MAAMoE,WAAW,GAAGlB,iBAAiB,CAAC5F,MAAM,CAAEuG,CAAC,IAAKA,CAAC,CAACM,IAAI,KAAK,KAAK,CAAC,CAAC7E,GAAG,CAAE0D,GAAG,IAAKS,YAAY,CAACT,GAAG,CAAChD,EAAE,CAAC,CAAC;EACxG,MAAMqE,YAAY,GAAGnB,iBAAiB,CAAC5F,MAAM,CAAEuG,CAAC,IAAKA,CAAC,CAACM,IAAI,KAAK,MAAM,CAAC,CAAC7E,GAAG,CAAE0D,GAAG,IAAKS,YAAY,CAACT,GAAG,CAAChD,EAAE,CAAC,CAAC;EAC1G,MAAMsE,WAAW,GAAG3B,OAAO,CAACrF,MAAM,CAAE0F,GAAG,IAAK,CAACA,GAAG,CAACC,WAAW,CAAC;EAC7D,MAAMsB,YAAY,GAAIC,IAA6C,IAAK;IACtE,OAAOA,IAAI,CAACC,MAAM,CAAC,CAACC,GAAG,EAAEC,IAAI,KAAK;MAChC,IAAI,CAACA,IAAI,CAACjD,OAAO,EAAE,MAAM,IAAIrC,KAAK,CAAE,yDAAwDsF,IAAI,CAAC3E,EAAG,GAAE,CAAC;MACvG0E,GAAG,CAACC,IAAI,CAAC3E,EAAE,CAAC,GAAG2E,IAAI,CAACjD,OAAO;MAC3B,OAAOgD,GAAG;IACZ,CAAC,EAAE,CAAC,CAAC,CAAC;EACR,CAAC;EACD,MAAME,SAAS,GAAIT,IAAgC,IAAK;IACtD,OAAOI,YAAY,CAACD,WAAW,CAAChH,MAAM,CAAE0F,GAAG,IAAKA,GAAG,CAACmB,IAAI,KAAKA,IAAI,CAAC,CAAC;EACrE,CAAC;EACD,MAAMU,qBAAqB,GAAIL,IAA4B,IAAK;IAC9DhC,QAAQ,CAACsC,kBAAkB,EAAEhH,OAAO,CAAEiH,GAAG,IAAK;MAC5C,OAAOP,IAAI,CAACO,GAAG,CAAC;IAClB,CAAC,CAAC;IACF7H,MAAM,CAACC,IAAI,CAACqH,IAAI,CAAC,CAAC1G,OAAO,CAAEiH,GAAG,IAAK;MACjC,MAAMC,KAAK,GAAGnC,UAAU,CAACe,IAAI,CAAEqB,CAAC,IAAKA,CAAC,CAACC,UAAU,CAAE,GAAEH,GAAI,GAAE,CAAC,CAAC;MAC7D,IAAIC,KAAK,EAAE;QACTR,IAAI,CAACO,GAAG,CAAC,GAAGC,KAAK,CAACG,OAAO,CAAE,GAAEJ,GAAI,GAAE,EAAE,EAAE,CAAC;MAC1C;IACF,CAAC,CAAC;IACF,OAAOP,IAAI;EACb,CAAC;EACD,MAAMY,qBAAqB,GAAIC,eAA6B,IAAK;IAC/D,MAAMC,YAAY,GAAGD,eAAe,CAAC/H,MAAM,CACxC0F,GAAG,IAAK,CAACR,QAAQ,CAACsC,kBAAkB,EAAES,QAAQ,CAACvC,GAAG,CAAChD,EAAE,CAACwF,sBAAsB,CAAC,CAAC,CACjF,CAAC;IACDF,YAAY,CAACxH,OAAO,CAAEkF,GAAG,IAAK;MAC5B,MAAMgC,KAAK,GAAGnC,UAAU,CAACe,IAAI,CAAEqB,CAAC,IAAKA,CAAC,CAACC,UAAU,CAAE,GAAElC,GAAG,CAAChD,EAAE,CAACwF,sBAAsB,CAAC,CAAE,GAAE,CAAC,CAAC;MACzF,IAAIR,KAAK,EAAE;QACThC,GAAG,CAAChD,EAAE,GAAGgD,GAAG,CAAChD,EAAE,CAACsD,aAAa,CAAC0B,KAAK,CAACG,OAAO,CAAE,GAAEnC,GAAG,CAAChD,EAAE,CAACwF,sBAAsB,CAAC,CAAE,GAAE,EAAE,EAAE,CAAC,CAAC;MACzF;IACF,CAAC,CAAC;IACF,OAAOF,YAAY;EACrB,CAAC;EAED,MAAMhF,iBAAiB,GAAG+B,SAAS,CAACoD,KAAK,CAACC,SAA8B;EAExE,MAAMC,gBAAgB,GAAG;IACvBC,eAAe,EAAE;MACf9C,YAAY,EAAE,CAAC,GAAGoB,QAAQ,EAAE,GAAGkB,qBAAqB,CAAC9E,iBAAiB,CAACwC,YAAY,CAAC+C,GAAG,CAAC,CAAC,CAAC,CAAC;MAC3FC,eAAe,EAAE,CAAC,GAAG1B,WAAW,EAAE,GAAGgB,qBAAqB,CAAC9E,iBAAiB,CAACwF,eAAe,CAACD,GAAG,CAAC,CAAC,CAAC,CAAC;MACpGE,gBAAgB,EAAE,CAAC,GAAG1B,YAAY,EAAE,GAAGe,qBAAqB,CAAC9E,iBAAiB,CAACyF,gBAAgB,CAACF,GAAG,CAAC,CAAC,CAAC;IACxG,CAAC;IACDG,uBAAuB,EAAE;MACvBC,mBAAmB,EAAAtI,aAAA,CAAAA,aAAA,KAAOkH,qBAAqB,CAACvE,iBAAiB,CAAC2F,mBAAmB,CAAC,GAAKrB,SAAS,CAAC,SAAS,CAAC,CAAE;MACjHsB,sBAAsB,EAAAvI,aAAA,CAAAA,aAAA,KACjBkH,qBAAqB,CAACvE,iBAAiB,CAAC4F,sBAAsB,CAAC,GAC/DtB,SAAS,CAAC,KAAK,CAAC,CACpB;MACDuB,uBAAuB,EAAAxI,aAAA,CAAAA,aAAA,KAClBkH,qBAAqB,CAACvE,iBAAiB,CAAC6F,uBAAuB,CAAC,GAChEvB,SAAS,CAAC,MAAM,CAAC;IAExB;EACF,CAAC;;EAED;EACA;EACA,MAAMnC,IAAI,CAAC2D,yBAAyB,CAAC9F,iBAAiB,EAAEqF,gBAAgB,CAAC;EAEzE,MAAMxG,QAAQ,CAACkH,qCAAqC,CAAChE,SAAS,EAAEQ,UAAU,CAAC;AAC7E","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_componentId","data","require","_component","_interopRequireDefault","_dependencies","_sources","_componentOverrides","_config","_componentSchema","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","generateCompFromScope","scope","compData","snapping","files","Error","map","file","SourceFile","base","path","contents","Buffer","from","content","test","id","componentId","extensions","ExtensionDataList","fromConfigObject","aspects","consumerComponent","ConsumerComponent","mainFile","name","fullName","schema","CURRENT_SCHEMA","overrides","ComponentOverrides","loadNewFromScope","defaultScope","log","message","date","Date","now","toString","username","email","_addFlattenedDependenciesToComponents","version","filesBitObject","legacyScope","sources","consumerComponentToVersion","modelComponent","findOrAddComponent","hash","objects","writeObjectsToTheFS","f","component","getManyByLegacy","addDeps","snapData","deps","depsResolver","newDeps","newDependencies","updateDeps","dependencies","compIdsData","dep","isComponent","compIdsDataParsed","ComponentID","fromString","compIds","changeVersion","comps","getMany","toDependency","depId","comp","find","c","isEqualWithoutVersion","pkgName","getPackageName","Dependency","compDeps","type","compDevDeps","compPeerDeps","packageDeps","toPackageObj","pkgs","reduce","acc","curr","getPkgObj","manipulateCurrentPkgs","removeDependencies","pkg","found","d","startsWith","replace","manipulateCurrentDeps","currentCompDeps","afterRemoval","includes","toStringWithoutVersion","state","_consumer","dependenciesData","allDependencies","get","devDependencies","peerDependencies","allPackagesDependencies","packageDependencies","devPackageDependencies","peerPackageDependencies","loadDependenciesFromScope","UpdateDepsAspectsSaveIntoDepsResolver"],"sources":["generate-comp-from-scope.ts"],"sourcesContent":["import { ComponentID } from '@teambit/component-id';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport { Dependency } from '@teambit/legacy/dist/consumer/component/dependencies';\nimport { SourceFile } from '@teambit/legacy/dist/consumer/component/sources';\nimport { ScopeMain } from '@teambit/scope';\nimport ComponentOverrides from '@teambit/legacy/dist/consumer/config/component-overrides';\nimport { ExtensionDataList } from '@teambit/legacy/dist/consumer/config';\nimport { Component } from '@teambit/component';\nimport { CURRENT_SCHEMA } from '@teambit/legacy/dist/consumer/component/component-schema';\nimport { DependenciesMain } from '@teambit/dependencies';\nimport { DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { FileData } from './snap-from-scope.cmd';\nimport { SnappingMain, SnapDataParsed } from './snapping.main.runtime';\n\nexport type CompData = {\n componentId: ComponentID;\n dependencies: string[];\n aspects: Record<string, any> | undefined;\n message: string | undefined;\n files: FileData[] | undefined;\n mainFile?: string;\n};\n\n/**\n * normally new components are created from a workspace. the files are in the filesystem and the ConsumerComponent\n * object is created from the files.\n * here, we need to create the ConsumerComponent object \"on the fly\". we don't have workspace, only scope. the files\n * are in-memory (we got them from snap-from-scope command).\n * the way how it is done is by creating a minimal ConsumerComponent object, then convert `Version` object from it,\n * write the version and files into the scope as objects, so then it's possible to load Component object using the\n * ConsumerComponent.\n */\nexport async function generateCompFromScope(\n scope: ScopeMain,\n compData: CompData,\n snapping: SnappingMain\n): Promise<Component> {\n if (!compData.files) throw new Error('generateComp: files are missing');\n const files = compData.files.map((file) => {\n return new SourceFile({ base: '.', path: file.path, contents: Buffer.from(file.content), test: false });\n });\n const id = compData.componentId;\n const extensions = ExtensionDataList.fromConfigObject(compData.aspects || {});\n\n const consumerComponent = new ConsumerComponent({\n mainFile: compData.mainFile || 'index.ts',\n name: compData.componentId.fullName,\n scope: compData.componentId.scope,\n files,\n schema: CURRENT_SCHEMA,\n overrides: await ComponentOverrides.loadNewFromScope(id, files, extensions),\n defaultScope: compData.componentId.scope,\n extensions,\n // the dummy data here are not important. this Version object will be discarded later.\n log: {\n message: compData.message || '',\n date: Date.now().toString(),\n username: '',\n email: '',\n },\n });\n // this is needed, otherwise in case of updating envs/aspects, the version-validator throws\n // an error saying \"the extension ${extensionId.toString()} is missing from the flattenedDependencies\"\n await snapping._addFlattenedDependenciesToComponents([consumerComponent]);\n\n const { version, files: filesBitObject } = await scope.legacyScope.sources.consumerComponentToVersion(\n consumerComponent\n );\n const modelComponent = scope.legacyScope.sources.findOrAddComponent(consumerComponent);\n consumerComponent.version = version.hash().toString();\n await scope.legacyScope.objects.writeObjectsToTheFS([version, modelComponent, ...filesBitObject.map((f) => f.file)]);\n const component = await scope.getManyByLegacy([consumerComponent]);\n\n return component[0];\n}\n\nexport async function addDeps(\n component: Component,\n snapData: SnapDataParsed,\n scope: ScopeMain,\n deps: DependenciesMain,\n depsResolver: DependencyResolverMain,\n snapping: SnappingMain\n) {\n const newDeps = snapData.newDependencies || [];\n const updateDeps = snapData.dependencies || [];\n const compIdsData = newDeps.filter((dep) => dep.isComponent);\n const compIdsDataParsed = compIdsData.map((data) => ({\n ...data,\n id: ComponentID.fromString(data.id),\n }));\n const compIds = compIdsDataParsed.map((dep) => (dep.version ? dep.id.changeVersion(dep.version) : dep.id));\n const comps = await scope.getMany(compIds);\n const toDependency = (depId: ComponentID) => {\n const comp = comps.find((c) => c.id.isEqualWithoutVersion(depId));\n if (!comp) throw new Error(`unable to find the specified dependency ${depId.toString()} in the scope`);\n const pkgName = depsResolver.getPackageName(comp);\n return new Dependency(comp.id, [], pkgName);\n };\n const compDeps = compIdsDataParsed.filter((c) => c.type === 'runtime').map((dep) => toDependency(dep.id));\n const compDevDeps = compIdsDataParsed.filter((c) => c.type === 'dev').map((dep) => toDependency(dep.id));\n const compPeerDeps = compIdsDataParsed.filter((c) => c.type === 'peer').map((dep) => toDependency(dep.id));\n const packageDeps = newDeps.filter((dep) => !dep.isComponent);\n const toPackageObj = (pkgs: Array<{ id: string; version?: string }>) => {\n return pkgs.reduce((acc, curr) => {\n if (!curr.version) throw new Error(`please specify a version for the package dependency: \"${curr.id}\"`);\n acc[curr.id] = curr.version;\n return acc;\n }, {});\n };\n const getPkgObj = (type: 'runtime' | 'dev' | 'peer') => {\n return toPackageObj(packageDeps.filter((dep) => dep.type === type));\n };\n const manipulateCurrentPkgs = (pkgs: Record<string, string>) => {\n snapData.removeDependencies?.forEach((pkg) => {\n delete pkgs[pkg];\n });\n Object.keys(pkgs).forEach((pkg) => {\n const found = updateDeps.find((d) => d.startsWith(`${pkg}@`));\n if (found) {\n pkgs[pkg] = found.replace(`${pkg}@`, '');\n }\n });\n return pkgs;\n };\n const manipulateCurrentDeps = (currentCompDeps: Dependency[]) => {\n const afterRemoval = currentCompDeps.filter(\n (dep) => !snapData.removeDependencies?.includes(dep.id.toStringWithoutVersion())\n );\n afterRemoval.forEach((dep) => {\n const found = updateDeps.find((d) => d.startsWith(`${dep.id.toStringWithoutVersion()}@`));\n if (found) {\n dep.id = dep.id.changeVersion(found.replace(`${dep.id.toStringWithoutVersion()}@`, ''));\n }\n });\n return afterRemoval;\n };\n\n const consumerComponent = component.state._consumer as ConsumerComponent;\n\n const dependenciesData = {\n allDependencies: {\n dependencies: [...compDeps, ...manipulateCurrentDeps(consumerComponent.dependencies.get())],\n devDependencies: [...compDevDeps, ...manipulateCurrentDeps(consumerComponent.devDependencies.get())],\n peerDependencies: [...compPeerDeps, ...manipulateCurrentDeps(consumerComponent.peerDependencies.get())],\n },\n allPackagesDependencies: {\n packageDependencies: { ...manipulateCurrentPkgs(consumerComponent.packageDependencies), ...getPkgObj('runtime') },\n devPackageDependencies: {\n ...manipulateCurrentPkgs(consumerComponent.devPackageDependencies),\n ...getPkgObj('dev'),\n },\n peerPackageDependencies: {\n ...manipulateCurrentPkgs(consumerComponent.peerPackageDependencies),\n ...getPkgObj('peer'),\n },\n },\n };\n\n // add the dependencies to the legacy ConsumerComponent object\n // it takes care of both: given dependencies (from the cli) and the overrides, which are coming from the env.\n await deps.loadDependenciesFromScope(consumerComponent, dependenciesData);\n\n await snapping.UpdateDepsAspectsSaveIntoDepsResolver(component, updateDeps);\n}\n"],"mappings":";;;;;;;AAAA,SAAAA,aAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,YAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,WAAA;EAAA,MAAAF,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAC,UAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,cAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,aAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,SAAA;EAAA,MAAAL,IAAA,GAAAC,OAAA;EAAAI,QAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAM,oBAAA;EAAA,MAAAN,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAK,mBAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAO,QAAA;EAAA,MAAAP,IAAA,GAAAC,OAAA;EAAAM,OAAA,YAAAA,CAAA;IAAA,OAAAP,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAQ,iBAAA;EAAA,MAAAR,IAAA,GAAAC,OAAA;EAAAO,gBAAA,YAAAA,CAAA;IAAA,OAAAR,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA0F,SAAAG,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,QAAAH,CAAA,EAAAI,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAP,CAAA,OAAAM,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAR,CAAA,GAAAI,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAX,CAAA,EAAAI,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAf,CAAA,aAAAI,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAD,OAAA,CAAAG,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,IAAAe,eAAA,CAAAnB,CAAA,EAAAI,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAArB,CAAA,EAAAM,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAF,OAAA,CAAAG,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAtB,CAAA,EAAAI,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAJ,CAAA;AAAA,SAAAmB,gBAAAnB,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAmB,cAAA,CAAAnB,CAAA,MAAAJ,CAAA,GAAAM,MAAA,CAAAgB,cAAA,CAAAtB,CAAA,EAAAI,CAAA,IAAAoB,KAAA,EAAAnB,CAAA,EAAAO,UAAA,MAAAa,YAAA,MAAAC,QAAA,UAAA1B,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAuB,eAAAlB,CAAA,QAAAsB,CAAA,GAAAC,YAAA,CAAAvB,CAAA,uCAAAsB,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAvB,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAwB,MAAA,CAAAC,WAAA,kBAAA9B,CAAA,QAAA2B,CAAA,GAAA3B,CAAA,CAAA+B,IAAA,CAAA1B,CAAA,EAAAD,CAAA,uCAAAuB,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAA5B,CAAA,GAAA6B,MAAA,GAAAC,MAAA,EAAA7B,CAAA;AAe1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,eAAe8B,qBAAqBA,CACzCC,KAAgB,EAChBC,QAAkB,EAClBC,QAAsB,EACF;EACpB,IAAI,CAACD,QAAQ,CAACE,KAAK,EAAE,MAAM,IAAIC,KAAK,CAAC,iCAAiC,CAAC;EACvE,MAAMD,KAAK,GAAGF,QAAQ,CAACE,KAAK,CAACE,GAAG,CAAEC,IAAI,IAAK;IACzC,OAAO,KAAIC,qBAAU,EAAC;MAAEC,IAAI,EAAE,GAAG;MAAEC,IAAI,EAAEH,IAAI,CAACG,IAAI;MAAEC,QAAQ,EAAEC,MAAM,CAACC,IAAI,CAACN,IAAI,CAACO,OAAO,CAAC;MAAEC,IAAI,EAAE;IAAM,CAAC,CAAC;EACzG,CAAC,CAAC;EACF,MAAMC,EAAE,GAAGd,QAAQ,CAACe,WAAW;EAC/B,MAAMC,UAAU,GAAGC,2BAAiB,CAACC,gBAAgB,CAAClB,QAAQ,CAACmB,OAAO,IAAI,CAAC,CAAC,CAAC;EAE7E,MAAMC,iBAAiB,GAAG,KAAIC,oBAAiB,EAAC;IAC9CC,QAAQ,EAAEtB,QAAQ,CAACsB,QAAQ,IAAI,UAAU;IACzCC,IAAI,EAAEvB,QAAQ,CAACe,WAAW,CAACS,QAAQ;IACnCzB,KAAK,EAAEC,QAAQ,CAACe,WAAW,CAAChB,KAAK;IACjCG,KAAK;IACLuB,MAAM,EAAEC,iCAAc;IACtBC,SAAS,EAAE,MAAMC,6BAAkB,CAACC,gBAAgB,CAACf,EAAE,EAAEZ,KAAK,EAAEc,UAAU,CAAC;IAC3Ec,YAAY,EAAE9B,QAAQ,CAACe,WAAW,CAAChB,KAAK;IACxCiB,UAAU;IACV;IACAe,GAAG,EAAE;MACHC,OAAO,EAAEhC,QAAQ,CAACgC,OAAO,IAAI,EAAE;MAC/BC,IAAI,EAAEC,IAAI,CAACC,GAAG,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;MAC3BC,QAAQ,EAAE,EAAE;MACZC,KAAK,EAAE;IACT;EACF,CAAC,CAAC;EACF;EACA;EACA,MAAMrC,QAAQ,CAACsC,qCAAqC,CAAC,CAACnB,iBAAiB,CAAC,CAAC;EAEzE,MAAM;IAAEoB,OAAO;IAAEtC,KAAK,EAAEuC;EAAe,CAAC,GAAG,MAAM1C,KAAK,CAAC2C,WAAW,CAACC,OAAO,CAACC,0BAA0B,CACnGxB,iBACF,CAAC;EACD,MAAMyB,cAAc,GAAG9C,KAAK,CAAC2C,WAAW,CAACC,OAAO,CAACG,kBAAkB,CAAC1B,iBAAiB,CAAC;EACtFA,iBAAiB,CAACoB,OAAO,GAAGA,OAAO,CAACO,IAAI,CAAC,CAAC,CAACX,QAAQ,CAAC,CAAC;EACrD,MAAMrC,KAAK,CAAC2C,WAAW,CAACM,OAAO,CAACC,mBAAmB,CAAC,CAACT,OAAO,EAAEK,cAAc,EAAE,GAAGJ,cAAc,CAACrC,GAAG,CAAE8C,CAAC,IAAKA,CAAC,CAAC7C,IAAI,CAAC,CAAC,CAAC;EACpH,MAAM8C,SAAS,GAAG,MAAMpD,KAAK,CAACqD,eAAe,CAAC,CAAChC,iBAAiB,CAAC,CAAC;EAElE,OAAO+B,SAAS,CAAC,CAAC,CAAC;AACrB;AAEO,eAAeE,OAAOA,CAC3BF,SAAoB,EACpBG,QAAwB,EACxBvD,KAAgB,EAChBwD,IAAsB,EACtBC,YAAoC,EACpCvD,QAAsB,EACtB;EACA,MAAMwD,OAAO,GAAGH,QAAQ,CAACI,eAAe,IAAI,EAAE;EAC9C,MAAMC,UAAU,GAAGL,QAAQ,CAACM,YAAY,IAAI,EAAE;EAC9C,MAAMC,WAAW,GAAGJ,OAAO,CAACpF,MAAM,CAAEyF,GAAG,IAAKA,GAAG,CAACC,WAAW,CAAC;EAC5D,MAAMC,iBAAiB,GAAGH,WAAW,CAACzD,GAAG,CAAElD,IAAI,IAAAwB,aAAA,CAAAA,aAAA,KAC1CxB,IAAI;IACP4D,EAAE,EAAEmD,0BAAW,CAACC,UAAU,CAAChH,IAAI,CAAC4D,EAAE;EAAC,EACnC,CAAC;EACH,MAAMqD,OAAO,GAAGH,iBAAiB,CAAC5D,GAAG,CAAE0D,GAAG,IAAMA,GAAG,CAACtB,OAAO,GAAGsB,GAAG,CAAChD,EAAE,CAACsD,aAAa,CAACN,GAAG,CAACtB,OAAO,CAAC,GAAGsB,GAAG,CAAChD,EAAG,CAAC;EAC1G,MAAMuD,KAAK,GAAG,MAAMtE,KAAK,CAACuE,OAAO,CAACH,OAAO,CAAC;EAC1C,MAAMI,YAAY,GAAIC,KAAkB,IAAK;IAC3C,MAAMC,IAAI,GAAGJ,KAAK,CAACK,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAAC7D,EAAE,CAAC8D,qBAAqB,CAACJ,KAAK,CAAC,CAAC;IACjE,IAAI,CAACC,IAAI,EAAE,MAAM,IAAItE,KAAK,CAAC,2CAA2CqE,KAAK,CAACpC,QAAQ,CAAC,CAAC,eAAe,CAAC;IACtG,MAAMyC,OAAO,GAAGrB,YAAY,CAACsB,cAAc,CAACL,IAAI,CAAC;IACjD,OAAO,KAAIM,0BAAU,EAACN,IAAI,CAAC3D,EAAE,EAAE,EAAE,EAAE+D,OAAO,CAAC;EAC7C,CAAC;EACD,MAAMG,QAAQ,GAAGhB,iBAAiB,CAAC3F,MAAM,CAAEsG,CAAC,IAAKA,CAAC,CAACM,IAAI,KAAK,SAAS,CAAC,CAAC7E,GAAG,CAAE0D,GAAG,IAAKS,YAAY,CAACT,GAAG,CAAChD,EAAE,CAAC,CAAC;EACzG,MAAMoE,WAAW,GAAGlB,iBAAiB,CAAC3F,MAAM,CAAEsG,CAAC,IAAKA,CAAC,CAACM,IAAI,KAAK,KAAK,CAAC,CAAC7E,GAAG,CAAE0D,GAAG,IAAKS,YAAY,CAACT,GAAG,CAAChD,EAAE,CAAC,CAAC;EACxG,MAAMqE,YAAY,GAAGnB,iBAAiB,CAAC3F,MAAM,CAAEsG,CAAC,IAAKA,CAAC,CAACM,IAAI,KAAK,MAAM,CAAC,CAAC7E,GAAG,CAAE0D,GAAG,IAAKS,YAAY,CAACT,GAAG,CAAChD,EAAE,CAAC,CAAC;EAC1G,MAAMsE,WAAW,GAAG3B,OAAO,CAACpF,MAAM,CAAEyF,GAAG,IAAK,CAACA,GAAG,CAACC,WAAW,CAAC;EAC7D,MAAMsB,YAAY,GAAIC,IAA6C,IAAK;IACtE,OAAOA,IAAI,CAACC,MAAM,CAAC,CAACC,GAAG,EAAEC,IAAI,KAAK;MAChC,IAAI,CAACA,IAAI,CAACjD,OAAO,EAAE,MAAM,IAAIrC,KAAK,CAAC,yDAAyDsF,IAAI,CAAC3E,EAAE,GAAG,CAAC;MACvG0E,GAAG,CAACC,IAAI,CAAC3E,EAAE,CAAC,GAAG2E,IAAI,CAACjD,OAAO;MAC3B,OAAOgD,GAAG;IACZ,CAAC,EAAE,CAAC,CAAC,CAAC;EACR,CAAC;EACD,MAAME,SAAS,GAAIT,IAAgC,IAAK;IACtD,OAAOI,YAAY,CAACD,WAAW,CAAC/G,MAAM,CAAEyF,GAAG,IAAKA,GAAG,CAACmB,IAAI,KAAKA,IAAI,CAAC,CAAC;EACrE,CAAC;EACD,MAAMU,qBAAqB,GAAIL,IAA4B,IAAK;IAC9DhC,QAAQ,CAACsC,kBAAkB,EAAE/G,OAAO,CAAEgH,GAAG,IAAK;MAC5C,OAAOP,IAAI,CAACO,GAAG,CAAC;IAClB,CAAC,CAAC;IACF5H,MAAM,CAACC,IAAI,CAACoH,IAAI,CAAC,CAACzG,OAAO,CAAEgH,GAAG,IAAK;MACjC,MAAMC,KAAK,GAAGnC,UAAU,CAACe,IAAI,CAAEqB,CAAC,IAAKA,CAAC,CAACC,UAAU,CAAC,GAAGH,GAAG,GAAG,CAAC,CAAC;MAC7D,IAAIC,KAAK,EAAE;QACTR,IAAI,CAACO,GAAG,CAAC,GAAGC,KAAK,CAACG,OAAO,CAAC,GAAGJ,GAAG,GAAG,EAAE,EAAE,CAAC;MAC1C;IACF,CAAC,CAAC;IACF,OAAOP,IAAI;EACb,CAAC;EACD,MAAMY,qBAAqB,GAAIC,eAA6B,IAAK;IAC/D,MAAMC,YAAY,GAAGD,eAAe,CAAC9H,MAAM,CACxCyF,GAAG,IAAK,CAACR,QAAQ,CAACsC,kBAAkB,EAAES,QAAQ,CAACvC,GAAG,CAAChD,EAAE,CAACwF,sBAAsB,CAAC,CAAC,CACjF,CAAC;IACDF,YAAY,CAACvH,OAAO,CAAEiF,GAAG,IAAK;MAC5B,MAAMgC,KAAK,GAAGnC,UAAU,CAACe,IAAI,CAAEqB,CAAC,IAAKA,CAAC,CAACC,UAAU,CAAC,GAAGlC,GAAG,CAAChD,EAAE,CAACwF,sBAAsB,CAAC,CAAC,GAAG,CAAC,CAAC;MACzF,IAAIR,KAAK,EAAE;QACThC,GAAG,CAAChD,EAAE,GAAGgD,GAAG,CAAChD,EAAE,CAACsD,aAAa,CAAC0B,KAAK,CAACG,OAAO,CAAC,GAAGnC,GAAG,CAAChD,EAAE,CAACwF,sBAAsB,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;MACzF;IACF,CAAC,CAAC;IACF,OAAOF,YAAY;EACrB,CAAC;EAED,MAAMhF,iBAAiB,GAAG+B,SAAS,CAACoD,KAAK,CAACC,SAA8B;EAExE,MAAMC,gBAAgB,GAAG;IACvBC,eAAe,EAAE;MACf9C,YAAY,EAAE,CAAC,GAAGoB,QAAQ,EAAE,GAAGkB,qBAAqB,CAAC9E,iBAAiB,CAACwC,YAAY,CAAC+C,GAAG,CAAC,CAAC,CAAC,CAAC;MAC3FC,eAAe,EAAE,CAAC,GAAG1B,WAAW,EAAE,GAAGgB,qBAAqB,CAAC9E,iBAAiB,CAACwF,eAAe,CAACD,GAAG,CAAC,CAAC,CAAC,CAAC;MACpGE,gBAAgB,EAAE,CAAC,GAAG1B,YAAY,EAAE,GAAGe,qBAAqB,CAAC9E,iBAAiB,CAACyF,gBAAgB,CAACF,GAAG,CAAC,CAAC,CAAC;IACxG,CAAC;IACDG,uBAAuB,EAAE;MACvBC,mBAAmB,EAAArI,aAAA,CAAAA,aAAA,KAAOiH,qBAAqB,CAACvE,iBAAiB,CAAC2F,mBAAmB,CAAC,GAAKrB,SAAS,CAAC,SAAS,CAAC,CAAE;MACjHsB,sBAAsB,EAAAtI,aAAA,CAAAA,aAAA,KACjBiH,qBAAqB,CAACvE,iBAAiB,CAAC4F,sBAAsB,CAAC,GAC/DtB,SAAS,CAAC,KAAK,CAAC,CACpB;MACDuB,uBAAuB,EAAAvI,aAAA,CAAAA,aAAA,KAClBiH,qBAAqB,CAACvE,iBAAiB,CAAC6F,uBAAuB,CAAC,GAChEvB,SAAS,CAAC,MAAM,CAAC;IAExB;EACF,CAAC;;EAED;EACA;EACA,MAAMnC,IAAI,CAAC2D,yBAAyB,CAAC9F,iBAAiB,EAAEqF,gBAAgB,CAAC;EAEzE,MAAMxG,QAAQ,CAACkH,qCAAqC,CAAChE,SAAS,EAAEQ,UAAU,CAAC;AAC7E","ignoreList":[]}
|
package/dist/reset-cmd.js
CHANGED
|
@@ -25,8 +25,8 @@ function _constants() {
|
|
|
25
25
|
};
|
|
26
26
|
return data;
|
|
27
27
|
}
|
|
28
|
-
function _interopRequireDefault(
|
|
29
|
-
function _defineProperty(
|
|
28
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
29
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
30
30
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
31
31
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
32
32
|
class ResetCmd {
|
package/dist/reset-cmd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_bitError","data","require","_chalk","_interopRequireDefault","_constants","
|
|
1
|
+
{"version":3,"names":["_bitError","data","require","_chalk","_interopRequireDefault","_constants","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ResetCmd","constructor","snapping","name","description","COMPONENT_PATTERN_HELP","BASE_DOCS_DOMAIN","report","pattern","all","head","force","soft","neverExported","compIds","resetNeverExported","chalk","green","join","BitError","results","isSoftUntag","reset","titleSuffix","title","length","components","map","result","cyan","id","toStringWithoutVersion","versions","exports"],"sources":["reset-cmd.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\nimport chalk from 'chalk';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { BASE_DOCS_DOMAIN, COMPONENT_PATTERN_HELP } from '@teambit/legacy/dist/constants';\nimport { SnappingMain } from './snapping.main.runtime';\n\nexport default class ResetCmd implements Command {\n name = 'reset [component-pattern]';\n description = 'revert tagged or snapped versions for component(s)';\n arguments = [\n {\n name: 'component-pattern',\n description: COMPONENT_PATTERN_HELP,\n },\n {\n name: 'component-version',\n description: 'the version to untag (semver for tags. hash for snaps)',\n },\n ];\n group = 'development';\n extendedDescription = `${BASE_DOCS_DOMAIN}components/tags#undoing-a-tag`;\n alias = '';\n options = [\n ['a', 'all', 'revert all unexported tags/snaps for all components'],\n ['', 'head', 'revert the head tag/snap only (by default, all local tags/snaps are reverted)'],\n ['', 'soft', 'revert only soft-tags (components tagged with --soft flag)'],\n [\n 'f',\n 'force',\n \"revert the tag even if it's used as a dependency. WARNING: components that depend on this tag will be corrupted\",\n ],\n ['', 'never-exported', 'reset only components that were never exported'],\n ] as CommandOptions;\n loader = true;\n\n constructor(private snapping: SnappingMain) {}\n\n async report(\n [pattern]: [string],\n {\n all = false,\n head = false,\n force = false,\n soft = false,\n neverExported = false,\n }: { all?: boolean; head?: boolean; force?: boolean; soft?: boolean; neverExported?: boolean }\n ) {\n if (neverExported) {\n const compIds = await this.snapping.resetNeverExported();\n return chalk.green(`successfully reset the following never-exported components:\\n${compIds.join('\\n')}`);\n }\n if (!pattern && !all) {\n throw new BitError('please specify a component-pattern or use --all flag');\n }\n if (pattern && all) {\n throw new BitError('please specify either a component-pattern or --all flag, not both');\n }\n if (soft && head) {\n throw new BitError('please specify either --soft or --head flag, not both');\n }\n const { results, isSoftUntag } = await this.snapping.reset(pattern, head, force, soft);\n const titleSuffix = isSoftUntag ? 'soft-untagged (are not candidates for tagging any more)' : 'untagged';\n const title = chalk.green(`${results.length} component(s) were ${titleSuffix}:\\n`);\n const components = results.map((result) => {\n return `${chalk.cyan(result.id.toStringWithoutVersion())}. version(s): ${result.versions.join(', ')}`;\n });\n return title + components.join('\\n');\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
package/dist/reset-component.js
CHANGED
|
@@ -28,7 +28,7 @@ function _logger() {
|
|
|
28
28
|
};
|
|
29
29
|
return data;
|
|
30
30
|
}
|
|
31
|
-
function _interopRequireDefault(
|
|
31
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
32
32
|
/**
|
|
33
33
|
* If head is false, remove all local versions.
|
|
34
34
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_bitError","data","require","_componentsList","_interopRequireDefault","_logger","
|
|
1
|
+
{"version":3,"names":["_bitError","data","require","_componentsList","_interopRequireDefault","_logger","e","__esModule","default","removeLocalVersion","scope","id","lane","head","force","component","getModelComponent","idStr","toString","localVersions","getLocalHashes","objects","length","BitError","headRef","getHeadRegardlessOfLane","Error","find","v","isEqual","versionsToRemove","versionsToRemoveStr","switchHashesWithTagsIfExist","dependencyGraph","getDependencyGraph","forEach","versionToRemove","idWithVersion","toComponentId","changeVersion","dependents","getImmediateDependentsPerId","join","sources","removeComponentVersions","versions","removeLocalVersionsForAllComponents","consumer","componentsToUntag","getComponentsWithOptionToUntag","removeLocalVersionsForMultipleComponents","candidateComponentsIds","map","bitId","getTagOfRefIfExists","candidateComponentsIdsStr","dependentsNotCandidates","filter","dependent","includes","version","logger","debug","Promise","all","componentList","ComponentsList","laneObj","getCurrentLaneObject","components","listExportPendingComponents"],"sources":["reset-component.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\nimport { ComponentID } from '@teambit/component-id';\nimport { Scope } from '@teambit/legacy/dist/scope';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport ComponentsList from '@teambit/legacy/dist/consumer/component/components-list';\nimport logger from '@teambit/legacy/dist/logger/logger';\nimport { Lane, ModelComponent } from '@teambit/legacy/dist/scope/models';\n\nexport type untagResult = { id: ComponentID; versions: string[]; component?: ModelComponent };\n\n/**\n * If head is false, remove all local versions.\n */\nexport async function removeLocalVersion(\n scope: Scope,\n id: ComponentID,\n lane?: Lane,\n head?: boolean,\n force = false\n): Promise<untagResult> {\n const component: ModelComponent = await scope.getModelComponent(id);\n const idStr = id.toString();\n const localVersions = await component.getLocalHashes(scope.objects);\n if (!localVersions.length) throw new BitError(`unable to untag ${idStr}, the component is not staged`);\n const headRef = component.getHeadRegardlessOfLane();\n if (!headRef) {\n throw new Error(`unable to reset ${idStr}, it has not head`);\n }\n if (head && !localVersions.find((v) => v.isEqual(headRef))) {\n throw new Error(`unable to reset ${idStr}, the head ${headRef.toString()} is exported`);\n }\n const versionsToRemove = head ? [headRef] : localVersions;\n const versionsToRemoveStr = component.switchHashesWithTagsIfExist(versionsToRemove);\n\n if (!force) {\n const dependencyGraph = await scope.getDependencyGraph();\n\n versionsToRemoveStr.forEach((versionToRemove) => {\n const idWithVersion = component.toComponentId().changeVersion(versionToRemove);\n const dependents = dependencyGraph.getImmediateDependentsPerId(idWithVersion);\n if (dependents.length) {\n throw new BitError(\n `unable to reset ${idStr}, the version ${versionToRemove} has the following dependent(s) ${dependents.join(\n ', '\n )}`\n );\n }\n });\n }\n\n await scope.sources.removeComponentVersions(component, versionsToRemove, versionsToRemoveStr, lane, head);\n\n return { id, versions: versionsToRemoveStr, component };\n}\n\nexport async function removeLocalVersionsForAllComponents(\n consumer: Consumer,\n lane?: Lane,\n head?: boolean\n): Promise<untagResult[]> {\n const componentsToUntag = await getComponentsWithOptionToUntag(consumer);\n const force = true; // when removing local versions from all components, no need to check if the component is used as a dependency\n return removeLocalVersionsForMultipleComponents(componentsToUntag, lane, head, force, consumer.scope);\n}\n\nexport async function removeLocalVersionsForMultipleComponents(\n componentsToUntag: ModelComponent[],\n lane?: Lane,\n head?: boolean,\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n force: boolean,\n scope: Scope\n) {\n if (!componentsToUntag.length) {\n throw new BitError(`no components found to reset on your workspace`);\n }\n // if only head is removed, there is risk of deleting dependencies version without their dependents.\n if (!force && head) {\n const dependencyGraph = await scope.getDependencyGraph();\n const candidateComponentsIds = componentsToUntag.map((component) => {\n const bitId = component.toComponentId();\n const headRef = component.getHeadRegardlessOfLane();\n if (!headRef)\n throw new Error(`component ${bitId.toString()} does not have head. it should not be a candidate for reset`);\n\n return bitId.changeVersion(component.getTagOfRefIfExists(headRef) || headRef.toString());\n });\n const candidateComponentsIdsStr = candidateComponentsIds.map((id) => id.toString());\n candidateComponentsIds.forEach((bitId: ComponentID) => {\n const dependents = dependencyGraph.getImmediateDependentsPerId(bitId);\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n const dependentsNotCandidates = dependents.filter((dependent) => !candidateComponentsIdsStr.includes(dependent));\n if (dependentsNotCandidates.length) {\n throw new BitError( // $FlowFixMe\n `unable to untag ${bitId}, the version ${bitId.version} has the following dependent(s) ${dependents.join(\n ', '\n )}`\n );\n }\n });\n }\n logger.debug(`found ${componentsToUntag.length} components to untag`);\n return Promise.all(\n componentsToUntag.map((component) => removeLocalVersion(scope, component.toComponentId(), lane, head, force))\n );\n}\n\nexport async function getComponentsWithOptionToUntag(consumer: Consumer): Promise<ModelComponent[]> {\n const componentList = new ComponentsList(consumer);\n const laneObj = await consumer.getCurrentLaneObject();\n const components: ModelComponent[] = await componentList.listExportPendingComponents(laneObj);\n\n return components;\n}\n"],"mappings":"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","ignoreList":[]}
|
package/dist/snap-cmd.js
CHANGED
|
@@ -32,8 +32,8 @@ function _tagCmd() {
|
|
|
32
32
|
};
|
|
33
33
|
return data;
|
|
34
34
|
}
|
|
35
|
-
function _interopRequireDefault(
|
|
36
|
-
function _defineProperty(
|
|
35
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
36
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
37
37
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
38
38
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
39
39
|
class SnapCmd {
|
package/dist/snap-cmd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_componentIssues","_constants","_tagCmd","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","r","e","Symbol","toPrimitive","call","TypeError","String","Number","SnapCmd","constructor","snapping","logger","globalConfig","name","description","COMPONENT_PATTERN_HELP","keys","IssuesClasses","join","report","pattern","message","unmerged","editor","ignoreIssues","build","skipTests","skipTasks","skipAutoSnap","disableSnapPipeline","ignoreBuildErrors","rebuildDepsGraph","unmodified","failFast","getBool","CFG_FORCE_LOCAL_BUILD","Boolean","disableTagAndSnapPipelines","consoleWarning","results","snap","exitOnFirstFailedTask","chalk","yellow","NOTHING_TO_SNAP_MSG","snappedComponents","autoSnappedResults","warnings","newComponents","laneName","removedComponents","changedComponents","filter","component","searchWithoutVersion","id","addedComponents","autoTaggedCount","length","warningsOutput","snapExplanation","compInBold","version","hasVersion","bold","toStringWithoutVersion","outputComponents","comps","map","componentOutput","autoTag","result","triggeredBy","autoTagComp","a","AUTO_SNAPPED_MSG","outputIfExists","label","explanation","components","underline","laneStr","outputIdsIfExists","green","exports"],"sources":["snap-cmd.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { ComponentID } from '@teambit/component-id';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component/consumer-component';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport { GlobalConfigMain } from '@teambit/global-config';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport {\n NOTHING_TO_SNAP_MSG,\n AUTO_SNAPPED_MSG,\n COMPONENT_PATTERN_HELP,\n CFG_FORCE_LOCAL_BUILD,\n} from '@teambit/legacy/dist/constants';\nimport { Logger } from '@teambit/logger';\nimport { SnappingMain, SnapResults } from './snapping.main.runtime';\nimport { outputIdsIfExists } from './tag-cmd';\nimport { BasicTagSnapParams } from './tag-model-component';\n\nexport class SnapCmd implements Command {\n name = 'snap [component-pattern]';\n description = 'create an immutable and exportable component snapshot (non-release version)';\n extendedDescription: string;\n group = 'development';\n arguments = [\n {\n name: 'component-pattern',\n description: `${COMPONENT_PATTERN_HELP}. By default, only new and modified components are snapped (add --unmodified to snap all components in the workspace).`,\n },\n ];\n helpUrl = 'reference/components/snaps';\n alias = '';\n options = [\n ['m', 'message <message>', 'snap message describing the latest changes - will appear in component history log'],\n ['u', 'unmodified', 'include unmodified components (by default, only new and modified components are snapped)'],\n ['', 'unmerged', 'complete a merge process by snapping the unmerged components'],\n ['b', 'build', 'locally run the build pipeline (i.e. not via rippleCI) and complete the snap'],\n [\n '',\n 'editor [editor]',\n 'open an editor to write a snap message per component. optionally specify the editor-name (defaults to vim).',\n ],\n ['', 'skip-tests', 'skip running component tests during snap process'],\n [\n '',\n 'skip-tasks <string>',\n `skip the given tasks. for multiple tasks, separate by a comma and wrap with quotes.\nspecify the task-name (e.g. \"TypescriptCompiler\") or the task-aspect-id (e.g. teambit.compilation/compiler)`,\n ],\n ['', 'skip-auto-snap', 'skip auto snapping dependents'],\n [\n '',\n 'disable-snap-pipeline',\n 'skip the snap pipeline. this will for instance skip packing and publishing component version for install, and app deployment',\n ],\n ['', 'ignore-build-errors', 'proceed to snap pipeline even when build pipeline fails'],\n ['', 'rebuild-deps-graph', 'do not reuse the saved dependencies graph, instead build it from scratch'],\n [\n 'i',\n 'ignore-issues <issues>',\n `ignore component issues (shown in \"bit status\" as \"issues found\"), issues to ignore:\n[${Object.keys(IssuesClasses).join(', ')}]\nto ignore multiple issues, separate them by a comma and wrap with quotes. to ignore all issues, specify \"*\".`,\n ],\n [\n '',\n 'fail-fast',\n 'stop pipeline execution on the first failed task (by default a task is skipped only when its dependency failed)',\n ],\n ] as CommandOptions;\n loader = true;\n\n constructor(private snapping: SnappingMain, private logger: Logger, private globalConfig: GlobalConfigMain) {}\n\n async report(\n [pattern]: string[],\n {\n message = '',\n unmerged = false,\n editor = '',\n ignoreIssues,\n build,\n skipTests = false,\n skipTasks,\n skipAutoSnap = false,\n disableSnapPipeline = false,\n ignoreBuildErrors = false,\n rebuildDepsGraph,\n unmodified = false,\n failFast = false,\n }: {\n unmerged?: boolean;\n editor?: string;\n ignoreIssues?: string;\n skipAutoSnap?: boolean;\n disableSnapPipeline?: boolean;\n unmodified?: boolean;\n failFast?: boolean;\n } & BasicTagSnapParams\n ) {\n build = (await this.globalConfig.getBool(CFG_FORCE_LOCAL_BUILD)) || Boolean(build);\n const disableTagAndSnapPipelines = disableSnapPipeline;\n if (!message && !editor) {\n this.logger.consoleWarning(\n `--message will be mandatory in the next few releases. make sure to add a message with your snap, will be displayed in the version history`\n );\n }\n\n const results = await this.snapping.snap({\n pattern,\n message,\n unmerged,\n editor,\n ignoreIssues,\n build,\n skipTests,\n skipTasks,\n skipAutoSnap,\n disableTagAndSnapPipelines,\n ignoreBuildErrors,\n rebuildDepsGraph,\n unmodified,\n exitOnFirstFailedTask: failFast,\n });\n\n if (!results) return chalk.yellow(NOTHING_TO_SNAP_MSG);\n const { snappedComponents, autoSnappedResults, warnings, newComponents, laneName, removedComponents }: SnapResults =\n results;\n const changedComponents = snappedComponents.filter((component) => {\n return (\n !newComponents.searchWithoutVersion(component.id) && !removedComponents?.searchWithoutVersion(component.id)\n );\n });\n const addedComponents = snappedComponents.filter((component) => newComponents.searchWithoutVersion(component.id));\n const autoTaggedCount = autoSnappedResults ? autoSnappedResults.length : 0;\n\n const warningsOutput = warnings && warnings.length ? `${chalk.yellow(warnings.join('\\n'))}\\n\\n` : '';\n const snapExplanation = `\\n(use \"bit export\" to push these components to a remote\")\n(use \"bit reset\" to unstage all local versions, or \"bit reset --head\" to only unstage the latest local snap)`;\n\n const compInBold = (id: ComponentID) => {\n const version = id.hasVersion() ? `@${id.version}` : '';\n return `${chalk.bold(id.toStringWithoutVersion())}${version}`;\n };\n\n const outputComponents = (comps: ConsumerComponent[]) => {\n return comps\n .map((component) => {\n let componentOutput = ` > ${compInBold(component.id)}`;\n const autoTag = autoSnappedResults.filter((result) => result.triggeredBy.searchWithoutVersion(component.id));\n if (autoTag.length) {\n const autoTagComp = autoTag.map((a) => compInBold(a.component.id));\n componentOutput += `\\n ${AUTO_SNAPPED_MSG} (${autoTagComp.length} total):\n ${autoTagComp.join('\\n ')}`;\n }\n return componentOutput;\n })\n .join('\\n');\n };\n\n const outputIfExists = (label, explanation, components) => {\n if (!components.length) return '';\n return `\\n${chalk.underline(label)}\\n(${explanation})\\n${outputComponents(components)}\\n`;\n };\n const laneStr = laneName ? ` on \"${laneName}\" lane` : '';\n\n return (\n outputIfExists('new components', 'first version for components', addedComponents) +\n outputIfExists('changed components', 'components that got a version bump', changedComponents) +\n outputIdsIfExists('removed components', removedComponents) +\n warningsOutput +\n chalk.green(`\\n${snappedComponents.length + autoTaggedCount} component(s) snapped${laneStr}`) +\n snapExplanation\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_componentIssues","_constants","_tagCmd","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","SnapCmd","constructor","snapping","logger","globalConfig","name","description","COMPONENT_PATTERN_HELP","keys","IssuesClasses","join","report","pattern","message","unmerged","editor","ignoreIssues","build","skipTests","skipTasks","skipAutoSnap","disableSnapPipeline","ignoreBuildErrors","rebuildDepsGraph","unmodified","failFast","getBool","CFG_FORCE_LOCAL_BUILD","Boolean","disableTagAndSnapPipelines","consoleWarning","results","snap","exitOnFirstFailedTask","chalk","yellow","NOTHING_TO_SNAP_MSG","snappedComponents","autoSnappedResults","warnings","newComponents","laneName","removedComponents","changedComponents","filter","component","searchWithoutVersion","id","addedComponents","autoTaggedCount","length","warningsOutput","snapExplanation","compInBold","version","hasVersion","bold","toStringWithoutVersion","outputComponents","comps","map","componentOutput","autoTag","result","triggeredBy","autoTagComp","a","AUTO_SNAPPED_MSG","outputIfExists","label","explanation","components","underline","laneStr","outputIdsIfExists","green","exports"],"sources":["snap-cmd.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { ComponentID } from '@teambit/component-id';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component/consumer-component';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport { GlobalConfigMain } from '@teambit/global-config';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport {\n NOTHING_TO_SNAP_MSG,\n AUTO_SNAPPED_MSG,\n COMPONENT_PATTERN_HELP,\n CFG_FORCE_LOCAL_BUILD,\n} from '@teambit/legacy/dist/constants';\nimport { Logger } from '@teambit/logger';\nimport { SnappingMain, SnapResults } from './snapping.main.runtime';\nimport { outputIdsIfExists } from './tag-cmd';\nimport { BasicTagSnapParams } from './tag-model-component';\n\nexport class SnapCmd implements Command {\n name = 'snap [component-pattern]';\n description = 'create an immutable and exportable component snapshot (non-release version)';\n extendedDescription: string;\n group = 'development';\n arguments = [\n {\n name: 'component-pattern',\n description: `${COMPONENT_PATTERN_HELP}. By default, only new and modified components are snapped (add --unmodified to snap all components in the workspace).`,\n },\n ];\n helpUrl = 'reference/components/snaps';\n alias = '';\n options = [\n ['m', 'message <message>', 'snap message describing the latest changes - will appear in component history log'],\n ['u', 'unmodified', 'include unmodified components (by default, only new and modified components are snapped)'],\n ['', 'unmerged', 'complete a merge process by snapping the unmerged components'],\n ['b', 'build', 'locally run the build pipeline (i.e. not via rippleCI) and complete the snap'],\n [\n '',\n 'editor [editor]',\n 'open an editor to write a snap message per component. optionally specify the editor-name (defaults to vim).',\n ],\n ['', 'skip-tests', 'skip running component tests during snap process'],\n [\n '',\n 'skip-tasks <string>',\n `skip the given tasks. for multiple tasks, separate by a comma and wrap with quotes.\nspecify the task-name (e.g. \"TypescriptCompiler\") or the task-aspect-id (e.g. teambit.compilation/compiler)`,\n ],\n ['', 'skip-auto-snap', 'skip auto snapping dependents'],\n [\n '',\n 'disable-snap-pipeline',\n 'skip the snap pipeline. this will for instance skip packing and publishing component version for install, and app deployment',\n ],\n ['', 'ignore-build-errors', 'proceed to snap pipeline even when build pipeline fails'],\n ['', 'rebuild-deps-graph', 'do not reuse the saved dependencies graph, instead build it from scratch'],\n [\n 'i',\n 'ignore-issues <issues>',\n `ignore component issues (shown in \"bit status\" as \"issues found\"), issues to ignore:\n[${Object.keys(IssuesClasses).join(', ')}]\nto ignore multiple issues, separate them by a comma and wrap with quotes. to ignore all issues, specify \"*\".`,\n ],\n [\n '',\n 'fail-fast',\n 'stop pipeline execution on the first failed task (by default a task is skipped only when its dependency failed)',\n ],\n ] as CommandOptions;\n loader = true;\n\n constructor(private snapping: SnappingMain, private logger: Logger, private globalConfig: GlobalConfigMain) {}\n\n async report(\n [pattern]: string[],\n {\n message = '',\n unmerged = false,\n editor = '',\n ignoreIssues,\n build,\n skipTests = false,\n skipTasks,\n skipAutoSnap = false,\n disableSnapPipeline = false,\n ignoreBuildErrors = false,\n rebuildDepsGraph,\n unmodified = false,\n failFast = false,\n }: {\n unmerged?: boolean;\n editor?: string;\n ignoreIssues?: string;\n skipAutoSnap?: boolean;\n disableSnapPipeline?: boolean;\n unmodified?: boolean;\n failFast?: boolean;\n } & BasicTagSnapParams\n ) {\n build = (await this.globalConfig.getBool(CFG_FORCE_LOCAL_BUILD)) || Boolean(build);\n const disableTagAndSnapPipelines = disableSnapPipeline;\n if (!message && !editor) {\n this.logger.consoleWarning(\n `--message will be mandatory in the next few releases. make sure to add a message with your snap, will be displayed in the version history`\n );\n }\n\n const results = await this.snapping.snap({\n pattern,\n message,\n unmerged,\n editor,\n ignoreIssues,\n build,\n skipTests,\n skipTasks,\n skipAutoSnap,\n disableTagAndSnapPipelines,\n ignoreBuildErrors,\n rebuildDepsGraph,\n unmodified,\n exitOnFirstFailedTask: failFast,\n });\n\n if (!results) return chalk.yellow(NOTHING_TO_SNAP_MSG);\n const { snappedComponents, autoSnappedResults, warnings, newComponents, laneName, removedComponents }: SnapResults =\n results;\n const changedComponents = snappedComponents.filter((component) => {\n return (\n !newComponents.searchWithoutVersion(component.id) && !removedComponents?.searchWithoutVersion(component.id)\n );\n });\n const addedComponents = snappedComponents.filter((component) => newComponents.searchWithoutVersion(component.id));\n const autoTaggedCount = autoSnappedResults ? autoSnappedResults.length : 0;\n\n const warningsOutput = warnings && warnings.length ? `${chalk.yellow(warnings.join('\\n'))}\\n\\n` : '';\n const snapExplanation = `\\n(use \"bit export\" to push these components to a remote\")\n(use \"bit reset\" to unstage all local versions, or \"bit reset --head\" to only unstage the latest local snap)`;\n\n const compInBold = (id: ComponentID) => {\n const version = id.hasVersion() ? `@${id.version}` : '';\n return `${chalk.bold(id.toStringWithoutVersion())}${version}`;\n };\n\n const outputComponents = (comps: ConsumerComponent[]) => {\n return comps\n .map((component) => {\n let componentOutput = ` > ${compInBold(component.id)}`;\n const autoTag = autoSnappedResults.filter((result) => result.triggeredBy.searchWithoutVersion(component.id));\n if (autoTag.length) {\n const autoTagComp = autoTag.map((a) => compInBold(a.component.id));\n componentOutput += `\\n ${AUTO_SNAPPED_MSG} (${autoTagComp.length} total):\n ${autoTagComp.join('\\n ')}`;\n }\n return componentOutput;\n })\n .join('\\n');\n };\n\n const outputIfExists = (label, explanation, components) => {\n if (!components.length) return '';\n return `\\n${chalk.underline(label)}\\n(${explanation})\\n${outputComponents(components)}\\n`;\n };\n const laneStr = laneName ? ` on \"${laneName}\" lane` : '';\n\n return (\n outputIfExists('new components', 'first version for components', addedComponents) +\n outputIfExists('changed components', 'components that got a version bump', changedComponents) +\n outputIdsIfExists('removed components', removedComponents) +\n warningsOutput +\n chalk.green(`\\n${snappedComponents.length + autoTaggedCount} component(s) snapped${laneStr}`) +\n snapExplanation\n );\n }\n}\n"],"mappings":";;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,SAAAG,iBAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,gBAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,SAAAI,WAAA;EAAA,MAAAJ,IAAA,GAAAE,OAAA;EAAAE,UAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAQA,SAAAK,QAAA;EAAA,MAAAL,IAAA,GAAAE,OAAA;EAAAG,OAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA8C,SAAAC,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,gBAAAH,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAJ,CAAA,GAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAI,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAZ,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAM,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAhB,CAAA,QAAAa,CAAA,GAAAb,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAGvC,MAAMgB,OAAO,CAAoB;EAqDtCC,WAAWA,CAASC,QAAsB,EAAUC,MAAc,EAAUC,YAA8B,EAAE;IAAA,KAAxFF,QAAsB,GAAtBA,QAAsB;IAAA,KAAUC,MAAc,GAAdA,MAAc;IAAA,KAAUC,YAA8B,GAA9BA,YAA8B;IAAAtB,eAAA,eApDnG,0BAA0B;IAAAA,eAAA,sBACnB,6EAA6E;IAAAA,eAAA;IAAAA,eAAA,gBAEnF,aAAa;IAAAA,eAAA,oBACT,CACV;MACEuB,IAAI,EAAE,mBAAmB;MACzBC,WAAW,EAAE,GAAGC,mCAAsB;IACxC,CAAC,CACF;IAAAzB,eAAA,kBACS,4BAA4B;IAAAA,eAAA,gBAC9B,EAAE;IAAAA,eAAA,kBACA,CACR,CAAC,GAAG,EAAE,mBAAmB,EAAE,mFAAmF,CAAC,EAC/G,CAAC,GAAG,EAAE,YAAY,EAAE,0FAA0F,CAAC,EAC/G,CAAC,EAAE,EAAE,UAAU,EAAE,8DAA8D,CAAC,EAChF,CAAC,GAAG,EAAE,OAAO,EAAE,8EAA8E,CAAC,EAC9F,CACE,EAAE,EACF,iBAAiB,EACjB,6GAA6G,CAC9G,EACD,CAAC,EAAE,EAAE,YAAY,EAAE,kDAAkD,CAAC,EACtE,CACE,EAAE,EACF,qBAAqB,EACrB;AACN,4GAA4G,CACvG,EACD,CAAC,EAAE,EAAE,gBAAgB,EAAE,+BAA+B,CAAC,EACvD,CACE,EAAE,EACF,uBAAuB,EACvB,8HAA8H,CAC/H,EACD,CAAC,EAAE,EAAE,qBAAqB,EAAE,yDAAyD,CAAC,EACtF,CAAC,EAAE,EAAE,oBAAoB,EAAE,0EAA0E,CAAC,EACtG,CACE,GAAG,EACH,wBAAwB,EACxB;AACN,GAAGI,MAAM,CAACsB,IAAI,CAACC,gCAAa,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC;AACxC,6GAA6G,CACxG,EACD,CACE,EAAE,EACF,WAAW,EACX,iHAAiH,CAClH,CACF;IAAA5B,eAAA,iBACQ,IAAI;EAEgG;EAE7G,MAAM6B,MAAMA,CACV,CAACC,OAAO,CAAW,EACnB;IACEC,OAAO,GAAG,EAAE;IACZC,QAAQ,GAAG,KAAK;IAChBC,MAAM,GAAG,EAAE;IACXC,YAAY;IACZC,KAAK;IACLC,SAAS,GAAG,KAAK;IACjBC,SAAS;IACTC,YAAY,GAAG,KAAK;IACpBC,mBAAmB,GAAG,KAAK;IAC3BC,iBAAiB,GAAG,KAAK;IACzBC,gBAAgB;IAChBC,UAAU,GAAG,KAAK;IAClBC,QAAQ,GAAG;EASQ,CAAC,EACtB;IACAR,KAAK,GAAG,CAAC,MAAM,IAAI,CAACb,YAAY,CAACsB,OAAO,CAACC,kCAAqB,CAAC,KAAKC,OAAO,CAACX,KAAK,CAAC;IAClF,MAAMY,0BAA0B,GAAGR,mBAAmB;IACtD,IAAI,CAACR,OAAO,IAAI,CAACE,MAAM,EAAE;MACvB,IAAI,CAACZ,MAAM,CAAC2B,cAAc,CACxB,2IACF,CAAC;IACH;IAEA,MAAMC,OAAO,GAAG,MAAM,IAAI,CAAC7B,QAAQ,CAAC8B,IAAI,CAAC;MACvCpB,OAAO;MACPC,OAAO;MACPC,QAAQ;MACRC,MAAM;MACNC,YAAY;MACZC,KAAK;MACLC,SAAS;MACTC,SAAS;MACTC,YAAY;MACZS,0BAA0B;MAC1BP,iBAAiB;MACjBC,gBAAgB;MAChBC,UAAU;MACVS,qBAAqB,EAAER;IACzB,CAAC,CAAC;IAEF,IAAI,CAACM,OAAO,EAAE,OAAOG,gBAAK,CAACC,MAAM,CAACC,gCAAmB,CAAC;IACtD,MAAM;MAAEC,iBAAiB;MAAEC,kBAAkB;MAAEC,QAAQ;MAAEC,aAAa;MAAEC,QAAQ;MAAEC;IAA+B,CAAC,GAChHX,OAAO;IACT,MAAMY,iBAAiB,GAAGN,iBAAiB,CAACO,MAAM,CAAEC,SAAS,IAAK;MAChE,OACE,CAACL,aAAa,CAACM,oBAAoB,CAACD,SAAS,CAACE,EAAE,CAAC,IAAI,CAACL,iBAAiB,EAAEI,oBAAoB,CAACD,SAAS,CAACE,EAAE,CAAC;IAE/G,CAAC,CAAC;IACF,MAAMC,eAAe,GAAGX,iBAAiB,CAACO,MAAM,CAAEC,SAAS,IAAKL,aAAa,CAACM,oBAAoB,CAACD,SAAS,CAACE,EAAE,CAAC,CAAC;IACjH,MAAME,eAAe,GAAGX,kBAAkB,GAAGA,kBAAkB,CAACY,MAAM,GAAG,CAAC;IAE1E,MAAMC,cAAc,GAAGZ,QAAQ,IAAIA,QAAQ,CAACW,MAAM,GAAG,GAAGhB,gBAAK,CAACC,MAAM,CAACI,QAAQ,CAAC7B,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,EAAE;IACpG,MAAM0C,eAAe,GAAG;AAC5B,6GAA6G;IAEzG,MAAMC,UAAU,GAAIN,EAAe,IAAK;MACtC,MAAMO,OAAO,GAAGP,EAAE,CAACQ,UAAU,CAAC,CAAC,GAAG,IAAIR,EAAE,CAACO,OAAO,EAAE,GAAG,EAAE;MACvD,OAAO,GAAGpB,gBAAK,CAACsB,IAAI,CAACT,EAAE,CAACU,sBAAsB,CAAC,CAAC,CAAC,GAAGH,OAAO,EAAE;IAC/D,CAAC;IAED,MAAMI,gBAAgB,GAAIC,KAA0B,IAAK;MACvD,OAAOA,KAAK,CACTC,GAAG,CAAEf,SAAS,IAAK;QAClB,IAAIgB,eAAe,GAAG,UAAUR,UAAU,CAACR,SAAS,CAACE,EAAE,CAAC,EAAE;QAC1D,MAAMe,OAAO,GAAGxB,kBAAkB,CAACM,MAAM,CAAEmB,MAAM,IAAKA,MAAM,CAACC,WAAW,CAAClB,oBAAoB,CAACD,SAAS,CAACE,EAAE,CAAC,CAAC;QAC5G,IAAIe,OAAO,CAACZ,MAAM,EAAE;UAClB,MAAMe,WAAW,GAAGH,OAAO,CAACF,GAAG,CAAEM,CAAC,IAAKb,UAAU,CAACa,CAAC,CAACrB,SAAS,CAACE,EAAE,CAAC,CAAC;UAClEc,eAAe,IAAI,YAAYM,6BAAgB,KAAKF,WAAW,CAACf,MAAM;AAClF,cAAce,WAAW,CAACvD,IAAI,CAAC,gBAAgB,CAAC,EAAE;QACxC;QACA,OAAOmD,eAAe;MACxB,CAAC,CAAC,CACDnD,IAAI,CAAC,IAAI,CAAC;IACf,CAAC;IAED,MAAM0D,cAAc,GAAGA,CAACC,KAAK,EAAEC,WAAW,EAAEC,UAAU,KAAK;MACzD,IAAI,CAACA,UAAU,CAACrB,MAAM,EAAE,OAAO,EAAE;MACjC,OAAO,KAAKhB,gBAAK,CAACsC,SAAS,CAACH,KAAK,CAAC,MAAMC,WAAW,MAAMZ,gBAAgB,CAACa,UAAU,CAAC,IAAI;IAC3F,CAAC;IACD,MAAME,OAAO,GAAGhC,QAAQ,GAAG,QAAQA,QAAQ,QAAQ,GAAG,EAAE;IAExD,OACE2B,cAAc,CAAC,gBAAgB,EAAE,8BAA8B,EAAEpB,eAAe,CAAC,GACjFoB,cAAc,CAAC,oBAAoB,EAAE,oCAAoC,EAAEzB,iBAAiB,CAAC,GAC7F,IAAA+B,2BAAiB,EAAC,oBAAoB,EAAEhC,iBAAiB,CAAC,GAC1DS,cAAc,GACdjB,gBAAK,CAACyC,KAAK,CAAC,KAAKtC,iBAAiB,CAACa,MAAM,GAAGD,eAAe,wBAAwBwB,OAAO,EAAE,CAAC,GAC7FrB,eAAe;EAEnB;AACF;AAACwB,OAAA,CAAA5E,OAAA,GAAAA,OAAA","ignoreList":[]}
|
|
@@ -11,7 +11,7 @@ function _bitError() {
|
|
|
11
11
|
};
|
|
12
12
|
return data;
|
|
13
13
|
}
|
|
14
|
-
function _defineProperty(
|
|
14
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
15
15
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
16
16
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
17
17
|
class SnapDistanceCmd {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_bitError","data","require","_defineProperty","
|
|
1
|
+
{"version":3,"names":["_bitError","data","require","_defineProperty","e","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","SnapDistanceCmd","constructor","scope","report","id","sourceSnap","targetSnap","compId","resolveComponentId","getSnapDistance","BitError","getSnapsDistanceBetweenTwoSnaps","snapDistance","JSON","stringify","exports"],"sources":["snap-distance-cmd.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\nimport { ScopeMain } from '@teambit/scope';\nimport { Command, CommandOptions } from '@teambit/cli';\n\nexport class SnapDistanceCmd implements Command {\n name = 'snap-distance <component-id> [source-snap] [target-snap]';\n description = 'show common-snap and distance between two given snaps or between local and remote snaps';\n extendedDescription = `in case source and target snaps are not provided, the command will use the local and remote heads.\nby \"head\" we mean component-head if on main, or lane-head if on lane.\nif source and target snaps are provided, the command will use them to calculate the distance.`;\n alias = '';\n options = [] as CommandOptions;\n loader = true;\n private = true;\n\n constructor(private scope: ScopeMain) {}\n\n async report([id, sourceSnap, targetSnap]: [string, string, string]) {\n const compId = await this.scope.resolveComponentId(id);\n const getSnapDistance = async () => {\n if (!sourceSnap) return this.scope.getSnapDistance(compId, false);\n if (!targetSnap) throw new BitError('either provide both source and target snaps or none');\n return this.scope.getSnapsDistanceBetweenTwoSnaps(compId, sourceSnap, targetSnap, false);\n };\n const snapDistance = await getSnapDistance();\n return JSON.stringify(snapDistance, null, 2);\n }\n}\n"],"mappings":";;;;;;AAAA,SAAAA,UAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,SAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA8C,SAAAE,gBAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAD,CAAA,GAAAI,MAAA,CAAAC,cAAA,CAAAL,CAAA,EAAAC,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAT,CAAA,CAAAC,CAAA,IAAAC,CAAA,EAAAF,CAAA;AAAA,SAAAG,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAF,CAAA,GAAAE,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAb,CAAA,QAAAU,CAAA,GAAAV,CAAA,CAAAc,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAIvC,MAAMgB,eAAe,CAAoB;EAW9CC,WAAWA,CAASC,KAAgB,EAAE;IAAA,KAAlBA,KAAgB,GAAhBA,KAAgB;IAAArB,eAAA,eAV7B,0DAA0D;IAAAA,eAAA,sBACnD,yFAAyF;IAAAA,eAAA,8BACjF;AACxB;AACA,8FAA8F;IAAAA,eAAA,gBACpF,EAAE;IAAAA,eAAA,kBACA,EAAE;IAAAA,eAAA,iBACH,IAAI;IAAAA,eAAA,kBACH,IAAI;EAEyB;EAEvC,MAAMsB,MAAMA,CAAC,CAACC,EAAE,EAAEC,UAAU,EAAEC,UAAU,CAA2B,EAAE;IACnE,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACL,KAAK,CAACM,kBAAkB,CAACJ,EAAE,CAAC;IACtD,MAAMK,eAAe,GAAG,MAAAA,CAAA,KAAY;MAClC,IAAI,CAACJ,UAAU,EAAE,OAAO,IAAI,CAACH,KAAK,CAACO,eAAe,CAACF,MAAM,EAAE,KAAK,CAAC;MACjE,IAAI,CAACD,UAAU,EAAE,MAAM,KAAII,oBAAQ,EAAC,qDAAqD,CAAC;MAC1F,OAAO,IAAI,CAACR,KAAK,CAACS,+BAA+B,CAACJ,MAAM,EAAEF,UAAU,EAAEC,UAAU,EAAE,KAAK,CAAC;IAC1F,CAAC;IACD,MAAMM,YAAY,GAAG,MAAMH,eAAe,CAAC,CAAC;IAC5C,OAAOI,IAAI,CAACC,SAAS,CAACF,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;EAC9C;AACF;AAACG,OAAA,CAAAf,eAAA,GAAAA,eAAA","ignoreList":[]}
|
|
@@ -25,8 +25,8 @@ function _bitError() {
|
|
|
25
25
|
};
|
|
26
26
|
return data;
|
|
27
27
|
}
|
|
28
|
-
function _interopRequireDefault(
|
|
29
|
-
function _defineProperty(
|
|
28
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
29
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
30
30
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
31
31
|
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
32
32
|
class SnapFromScopeCmd {
|