@teambit/snapping 0.0.50 → 0.0.53

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.
@@ -1 +1 @@
1
- {"version":3,"sources":["components-have-issues.ts"],"names":["ComponentsHaveIssues","BitError","constructor","components","forEach","component","issues","filterNonTagBlocking","allIssueNames","map","comp","getAllIssueNames","flat","issuesColored","componentIssuesTemplate","join","IssuesAspect","id","issue","format","chalk","underline","cyan","toString","result"],"mappings":";;;;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEO,MAAMA,oBAAN,SAAmCC,oBAAnC,CAA4C;AACjDC,EAAAA,WAAW,CAACC,UAAD,EAAkC;AAC3CA,IAAAA,UAAU,CAACC,OAAX,CAAoBC,SAAD,IAAe;AAChCA,MAAAA,SAAS,CAACC,MAAV,GAAmBD,SAAS,CAACC,MAAV,CAAiBC,oBAAjB,EAAnB;AACD,KAFD;AAGA,UAAMC,aAAa,GAAG,oBAAKL,UAAU,CAACM,GAAX,CAAgBC,IAAD,IAAUA,IAAI,CAACJ,MAAL,CAAYK,gBAAZ,EAAzB,EAAyDC,IAAzD,EAAL,CAAtB;AACA,UAAMC,aAAa,GAAGC,uBAAuB,CAACX,UAAD,CAA7C;AACA,UAAO;AACX,EAAEU,aAAc;AAChB;AACA;AACA;AACA;AACA,sHAAsHL,aAAa,CAACO,IAAd,CAChH,IADgH,CAEhH;AACN;AACA,GAAGC,kBAAaC,EAAG;AACnB,qBAAqBT,aAAa,CAACC,GAAd,CAAmBS,KAAD,IAAY,IAAGA,KAAM,GAAvC,EAA2CH,IAA3C,CAAgD,IAAhD,CAAsD;AAC3E;AACA,CAbI;AAcD;;AArBgD;;;;AAwBnD,SAASD,uBAAT,CAAiCX,UAAjC,EAAkE;AAChE,WAASgB,MAAT,CAAgBd,SAAhB,EAA8C;AAC5C,WAAQ,GAAEe,iBAAMC,SAAN,CAAgBD,iBAAME,IAAN,CAAWjB,SAAS,CAACY,EAAV,CAAaM,QAAb,EAAX,CAAhB,CAAqD,KAAI,6CAAalB,SAAb,CAAwB,EAA3F;AACD;;AAED,QAAMmB,MAAM,GAAI,KAAIrB,UAAU,CAACM,GAAX,CAAeU,MAAf,EAAuBJ,IAAvB,CAA4B,IAA5B,CAAkC,EAAtD;AACA,SAAOS,MAAP;AACD","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"]}
1
+ {"version":3,"names":["ComponentsHaveIssues","BitError","constructor","components","forEach","component","issues","filterNonTagBlocking","allIssueNames","uniq","map","comp","getAllIssueNames","flat","issuesColored","componentIssuesTemplate","join","IssuesAspect","id","issue","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;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEO,MAAMA,oBAAN,SAAmCC,oBAAnC,CAA4C;EACjDC,WAAW,CAACC,UAAD,EAAkC;IAC3CA,UAAU,CAACC,OAAX,CAAoBC,SAAD,IAAe;MAChCA,SAAS,CAACC,MAAV,GAAmBD,SAAS,CAACC,MAAV,CAAiBC,oBAAjB,EAAnB;IACD,CAFD;IAGA,MAAMC,aAAa,GAAG,IAAAC,cAAA,EAAKN,UAAU,CAACO,GAAX,CAAgBC,IAAD,IAAUA,IAAI,CAACL,MAAL,CAAYM,gBAAZ,EAAzB,EAAyDC,IAAzD,EAAL,CAAtB;IACA,MAAMC,aAAa,GAAGC,uBAAuB,CAACZ,UAAD,CAA7C;IACA,MAAO;AACX,EAAEW,aAAc;AAChB;AACA;AACA;AACA;AACA,sHAAsHN,aAAa,CAACQ,IAAd,CAChH,IADgH,CAEhH;AACN;AACA,GAAGC,iBAAA,CAAaC,EAAG;AACnB,qBAAqBV,aAAa,CAACE,GAAd,CAAmBS,KAAD,IAAY,IAAGA,KAAM,GAAvC,EAA2CH,IAA3C,CAAgD,IAAhD,CAAsD;AAC3E;AACA,CAbI;EAcD;;AArBgD;;;;AAwBnD,SAASD,uBAAT,CAAiCZ,UAAjC,EAAkE;EAChE,SAASiB,MAAT,CAAgBf,SAAhB,EAA8C;IAC5C,OAAQ,GAAEgB,gBAAA,CAAMC,SAAN,CAAgBD,gBAAA,CAAME,IAAN,CAAWlB,SAAS,CAACa,EAAV,CAAaM,QAAb,EAAX,CAAhB,CAAqD,KAAI,IAAAC,uCAAA,EAAapB,SAAb,CAAwB,EAA3F;EACD;;EAED,MAAMqB,MAAM,GAAI,KAAIvB,UAAU,CAACO,GAAX,CAAeU,MAAf,EAAuBJ,IAAvB,CAA4B,IAA5B,CAAkC,EAAtD;EACA,OAAOU,MAAP;AACD"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":["SnappingAspect"],"mappings":";;;;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;eAGeA,0B","sourcesContent":["import { SnappingAspect } from './snapping.aspect';\n\nexport type { SnappingMain } from './snapping.main.runtime';\nexport default SnappingAspect;\nexport { SnappingAspect };\n"]}
1
+ {"version":3,"names":["SnappingAspect"],"sources":["index.ts"],"sourcesContent":["import { SnappingAspect } from './snapping.aspect';\n\nexport type { SnappingMain } from './snapping.main.runtime';\nexport default SnappingAspect;\nexport { SnappingAspect };\n"],"mappings":";;;;;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;eAGeA,0B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["snap-cmd.ts"],"names":["SnapCmd","constructor","docsDomain","snapping","logger","Object","keys","IssuesClasses","join","description","report","id","message","all","force","ignoreIssues","build","skipTests","skipAutoSnap","disableSnapPipeline","forceDeploy","unmodified","BUILD_ON_CI","Boolean","disableTagAndSnapPipelines","BitError","consoleWarning","results","snap","chalk","yellow","NOTHING_TO_SNAP_MSG","snappedComponents","autoSnappedResults","warnings","newComponents","laneName","changedComponents","filter","component","searchWithoutVersion","addedComponents","autoTaggedCount","length","warningsOutput","tagExplanation","outputComponents","comps","map","componentOutput","toString","autoTag","result","triggeredBy","searchWithoutScopeAndVersion","autoTagComp","a","AUTO_SNAPPED_MSG","outputIfExists","label","explanation","components","underline","laneStr","green"],"mappings":"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","sourcesContent":["import chalk from 'chalk';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { isFeatureEnabled, BUILD_ON_CI } from '@teambit/legacy/dist/api/consumer/lib/feature-toggle';\nimport { WILDCARD_HELP, NOTHING_TO_SNAP_MSG, AUTO_SNAPPED_MSG } from '@teambit/legacy/dist/constants';\nimport { BitError } from '@teambit/bit-error';\nimport { Logger } from '@teambit/logger';\nimport { SnapResults } from '@teambit/legacy/dist/api/consumer/lib/snap';\nimport { SnappingMain } from './snapping.main.runtime';\n\nexport class SnapCmd implements Command {\n name = 'snap [id]';\n description: string;\n alias = '';\n options = [\n ['m', 'message <message>', 'log message describing the user changes'],\n ['', 'unmodified', 'include unmodified components (by default, only new and modified components are snapped)'],\n ['', 'build', 'Harmony only. run the pipeline build and complete the tag'],\n ['', 'skip-tests', 'skip running component tests during snap process'],\n ['', 'skip-auto-snap', 'skip auto snapping dependents'],\n ['', 'disable-snap-pipeline', 'skip the snap pipeline'],\n ['', 'force-deploy', 'Harmony only. run the deploy pipeline although the build failed'],\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 ['a', 'all', 'DEPRECATED (not needed anymore, it is the default now). snap all new and modified components'],\n [\n 'f',\n 'force',\n 'DEPRECATED (use \"--skip-tests\" or \"--unmodified\" instead). force-snap even if tests are failing and even when component has not changed',\n ],\n ] as CommandOptions;\n loader = true;\n private = true;\n migration = true;\n\n constructor(docsDomain: string, private snapping: SnappingMain, private logger: Logger) {\n this.description = `record component changes.\nhttps://${docsDomain}/components/snaps\n${WILDCARD_HELP('snap')}`;\n }\n\n async report(\n [id]: string[],\n {\n message = '',\n all = false,\n force = false,\n ignoreIssues,\n build,\n skipTests = false,\n skipAutoSnap = false,\n disableSnapPipeline = false,\n forceDeploy = false,\n unmodified = false,\n }: {\n message?: string;\n all?: boolean;\n force?: boolean;\n ignoreIssues?: string;\n build?: boolean;\n skipTests?: boolean;\n skipAutoSnap?: boolean;\n disableSnapPipeline?: boolean;\n forceDeploy?: boolean;\n unmodified?: boolean;\n }\n ) {\n build = isFeatureEnabled(BUILD_ON_CI) ? Boolean(build) : true;\n const disableTagAndSnapPipelines = disableSnapPipeline;\n if (disableTagAndSnapPipelines && forceDeploy) {\n throw new BitError('you can use either force-deploy or disable-snap-pipeline, but not both');\n }\n\n if (all) {\n this.logger.consoleWarning(\n `--all is deprecated, please omit it. \"bit snap\" by default will snap all new and modified components`\n );\n }\n if (force) {\n this.logger.consoleWarning(\n `--force is deprecated, use either --skip-tests or --unmodified depending on the use case`\n );\n if (id) unmodified = true;\n }\n if (!message) {\n this.logger.consoleWarning(\n `--message will be mandatory in the next few releases. make sure to add a message with your snap`\n );\n }\n\n const results = await this.snapping.snap({\n id,\n message,\n ignoreIssues,\n build,\n skipTests,\n skipAutoSnap,\n disableTagAndSnapPipelines,\n forceDeploy,\n unmodified,\n });\n\n if (!results) return chalk.yellow(NOTHING_TO_SNAP_MSG);\n const { snappedComponents, autoSnappedResults, warnings, newComponents, laneName }: SnapResults = results;\n const changedComponents = snappedComponents.filter(\n (component) => !newComponents.searchWithoutVersion(component.id)\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 tagExplanation = `\\n(use \"bit export\" to push these components to a remote\")\n(use \"bit untag\" to unstage versions)\\n`;\n\n const outputComponents = (comps) => {\n return comps\n .map((component) => {\n let componentOutput = ` > ${component.id.toString()}`;\n const autoTag = autoSnappedResults.filter((result) =>\n result.triggeredBy.searchWithoutScopeAndVersion(component.id)\n );\n if (autoTag.length) {\n const autoTagComp = autoTag.map((a) => a.component.id.toString());\n componentOutput += `\\n ${AUTO_SNAPPED_MSG}: ${autoTagComp.join(', ')}`;\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 warningsOutput +\n chalk.green(`${snappedComponents.length + autoTaggedCount} component(s) snapped${laneStr}`) +\n tagExplanation +\n outputIfExists('new components', 'first version for components', addedComponents) +\n outputIfExists('changed components', 'components that got a version bump', changedComponents)\n );\n }\n}\n"]}
1
+ {"version":3,"names":["SnapCmd","constructor","docsDomain","snapping","logger","Object","keys","IssuesClasses","join","description","WILDCARD_HELP","report","id","message","all","force","ignoreIssues","build","skipTests","skipAutoSnap","disableSnapPipeline","forceDeploy","unmodified","isFeatureEnabled","BUILD_ON_CI","Boolean","disableTagAndSnapPipelines","BitError","consoleWarning","results","snap","chalk","yellow","NOTHING_TO_SNAP_MSG","snappedComponents","autoSnappedResults","warnings","newComponents","laneName","changedComponents","filter","component","searchWithoutVersion","addedComponents","autoTaggedCount","length","warningsOutput","tagExplanation","outputComponents","comps","map","componentOutput","toString","autoTag","result","triggeredBy","searchWithoutScopeAndVersion","autoTagComp","a","AUTO_SNAPPED_MSG","outputIfExists","label","explanation","components","underline","laneStr","green"],"sources":["snap-cmd.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { isFeatureEnabled, BUILD_ON_CI } from '@teambit/legacy/dist/api/consumer/lib/feature-toggle';\nimport { WILDCARD_HELP, NOTHING_TO_SNAP_MSG, AUTO_SNAPPED_MSG } from '@teambit/legacy/dist/constants';\nimport { BitError } from '@teambit/bit-error';\nimport { Logger } from '@teambit/logger';\nimport { SnapResults } from '@teambit/legacy/dist/api/consumer/lib/snap';\nimport { SnappingMain } from './snapping.main.runtime';\n\nexport class SnapCmd implements Command {\n name = 'snap [id]';\n description: string;\n alias = '';\n options = [\n ['m', 'message <message>', 'log message describing the user changes'],\n ['', 'unmodified', 'include unmodified components (by default, only new and modified components are snapped)'],\n ['', 'build', 'Harmony only. run the pipeline build and complete the tag'],\n ['', 'skip-tests', 'skip running component tests during snap process'],\n ['', 'skip-auto-snap', 'skip auto snapping dependents'],\n ['', 'disable-snap-pipeline', 'skip the snap pipeline'],\n ['', 'force-deploy', 'Harmony only. run the deploy pipeline although the build failed'],\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 ['a', 'all', 'DEPRECATED (not needed anymore, it is the default now). snap all new and modified components'],\n [\n 'f',\n 'force',\n 'DEPRECATED (use \"--skip-tests\" or \"--unmodified\" instead). force-snap even if tests are failing and even when component has not changed',\n ],\n ] as CommandOptions;\n loader = true;\n private = true;\n migration = true;\n\n constructor(docsDomain: string, private snapping: SnappingMain, private logger: Logger) {\n this.description = `record component changes.\nhttps://${docsDomain}/components/snaps\n${WILDCARD_HELP('snap')}`;\n }\n\n async report(\n [id]: string[],\n {\n message = '',\n all = false,\n force = false,\n ignoreIssues,\n build,\n skipTests = false,\n skipAutoSnap = false,\n disableSnapPipeline = false,\n forceDeploy = false,\n unmodified = false,\n }: {\n message?: string;\n all?: boolean;\n force?: boolean;\n ignoreIssues?: string;\n build?: boolean;\n skipTests?: boolean;\n skipAutoSnap?: boolean;\n disableSnapPipeline?: boolean;\n forceDeploy?: boolean;\n unmodified?: boolean;\n }\n ) {\n build = isFeatureEnabled(BUILD_ON_CI) ? Boolean(build) : true;\n const disableTagAndSnapPipelines = disableSnapPipeline;\n if (disableTagAndSnapPipelines && forceDeploy) {\n throw new BitError('you can use either force-deploy or disable-snap-pipeline, but not both');\n }\n\n if (all) {\n this.logger.consoleWarning(\n `--all is deprecated, please omit it. \"bit snap\" by default will snap all new and modified components`\n );\n }\n if (force) {\n this.logger.consoleWarning(\n `--force is deprecated, use either --skip-tests or --unmodified depending on the use case`\n );\n if (id) unmodified = true;\n }\n if (!message) {\n this.logger.consoleWarning(\n `--message will be mandatory in the next few releases. make sure to add a message with your snap`\n );\n }\n\n const results = await this.snapping.snap({\n id,\n message,\n ignoreIssues,\n build,\n skipTests,\n skipAutoSnap,\n disableTagAndSnapPipelines,\n forceDeploy,\n unmodified,\n });\n\n if (!results) return chalk.yellow(NOTHING_TO_SNAP_MSG);\n const { snappedComponents, autoSnappedResults, warnings, newComponents, laneName }: SnapResults = results;\n const changedComponents = snappedComponents.filter(\n (component) => !newComponents.searchWithoutVersion(component.id)\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 tagExplanation = `\\n(use \"bit export\" to push these components to a remote\")\n(use \"bit untag\" to unstage versions)\\n`;\n\n const outputComponents = (comps) => {\n return comps\n .map((component) => {\n let componentOutput = ` > ${component.id.toString()}`;\n const autoTag = autoSnappedResults.filter((result) =>\n result.triggeredBy.searchWithoutScopeAndVersion(component.id)\n );\n if (autoTag.length) {\n const autoTagComp = autoTag.map((a) => a.component.id.toString());\n componentOutput += `\\n ${AUTO_SNAPPED_MSG}: ${autoTagComp.join(', ')}`;\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 warningsOutput +\n chalk.green(`${snappedComponents.length + autoTaggedCount} component(s) snapped${laneStr}`) +\n tagExplanation +\n outputIfExists('new components', 'first version for components', addedComponents) +\n outputIfExists('changed components', 'components that got a version bump', changedComponents)\n );\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["snapping.aspect.ts"],"names":["SnappingAspect","Aspect","create","id"],"mappings":";;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEO,MAAMA,cAAc,GAAGC,kBAAOC,MAAP,CAAc;AAC1CC,EAAAA,EAAE,EAAE;AADsC,CAAd,CAAvB","sourcesContent":["import { Aspect } from '@teambit/harmony';\n\nexport const SnappingAspect = Aspect.create({\n id: 'teambit.component/snapping',\n});\n"]}
1
+ {"version":3,"names":["SnappingAspect","Aspect","create","id"],"sources":["snapping.aspect.ts"],"sourcesContent":["import { Aspect } from '@teambit/harmony';\n\nexport const SnappingAspect = Aspect.create({\n id: 'teambit.component/snapping',\n});\n"],"mappings":";;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEO,MAAMA,cAAc,GAAGC,iBAAA,CAAOC,MAAP,CAAc;EAC1CC,EAAE,EAAE;AADsC,CAAd,CAAvB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["snapping.main.runtime.ts"],"names":["HooksManagerInstance","HooksManager","getInstance","SnappingMain","constructor","workspace","logger","issues","insights","tag","ids","message","version","editor","snapped","patch","minor","major","preRelease","ignoreIssues","ignoreNewestVersion","skipTests","skipAutoTag","build","unmodified","soft","persist","forceDeploy","incrementBy","disableTagAndSnapPipelines","BUILD_ON_CI","Boolean","BitError","releaseFlags","filter","x","length","releaseType","DEFAULT_BIT_RELEASE_TYPE","exactVersion","ConsumerNotFound","idsHasWildcard","isAll","validExactVersion","consumer","componentsList","ComponentsList","loader","start","newComponents","listNewComponents","bitIds","warnings","getComponentsToTag","R","isEmpty","legacyBitIds","BitIds","fromArray","isLegacy","debug","toString","Analytics","addBreadCrumb","hashData","componentFsCache","deleteAllDependenciesDataCache","components","loadComponentsForTag","throwForLegacyDependenciesInsideHarmony","throwForComponentIssues","areComponentsMissingFromScope","some","c","componentFromModel","id","hasScope","ComponentsPendingImport","taggedComponents","autoTaggedResults","publishedPackages","consumerComponents","scope","legacyScope","resolveUnmerged","packageManagerConfigRootDir","path","tagResults","isSoftTag","postHook","POST_TAG_ALL_HOOK","POST_TAG_HOOK","triggerHook","setExtraData","concat","onDestroy","snap","skipAutoSnap","Error","LanesIsDisabled","getIdsToSnap","isSnap","snapResults","snappedComponents","autoSnappedResults","currentLane","getCurrentLaneId","laneName","isDefault","name","idHasWildcard","bitId","getParsedId","componentStatus","getComponentStatusById","modified","tagPendingComponents","listPotentialTagAllWorkspace","listTagPendingComponents","filterComponentsByWildcard","loadComponents","toVersionLatest","shouldReloadComponents","componentsWithRelativePaths","componentsWithFilesNotDir","componentsWithCustomModuleResolution","forEach","component","componentMap","rootDir","hasRelativePaths","getIssue","IssuesClasses","RelativeComponentsAuthored","hasCustomModuleResolutions","MissingCustomModuleResolutionLinks","trackDir","changeRootDirAndUpdateFilesAccordingly","push","toStringWithoutVersion","FailedLoadForTag","sort","clearCache","reloadedComponents","legacyComponents","delete","issuesToIgnoreFromFlag","split","map","issue","trim","issuesToIgnoreFromConfig","getIssuesToIgnoreGlobally","issuesToIgnore","getManyByLegacy","includes","CircularDependencies","addInsightsAsComponentIssues","removeIgnoredIssuesFromComponents","componentsWithBlockingIssues","shouldBlockTagging","ComponentsHaveIssues","throwForComponent","dependenciesIds","getAllDependenciesIds","Promise","all","depId","hasVersion","modelComp","getModelComponentIfExist","loadVersion","objects","concurrency","includeUnmodified","softTaggedComponents","listSoftTaggedComponents","listSnappedComponentsOnMain","snappedComponentsIds","toBitId","idWithoutVer","allIds","changeVersion","flat","tagPendingComponentsLatest","latestVersions","componentId","semver","valid","gt","undefined","provider","cli","community","loggerMain","createLogger","SnappingAspect","snapping","snapCmd","SnapCmd","getBaseDomain","tagCmd","TagCmd","register","WorkspaceAspect","CLIAspect","CommunityAspect","LoggerAspect","IssuesAspect","InsightsAspect","MainRuntime","addRuntime"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAGA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;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","sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { isFeatureEnabled, BUILD_ON_CI } from '@teambit/legacy/dist/api/consumer/lib/feature-toggle';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport CommunityAspect, { CommunityMain } from '@teambit/community';\nimport WorkspaceAspect, { Workspace } from '@teambit/workspace';\nimport R from 'ramda';\nimport semver, { ReleaseType } from 'semver';\nimport { compact } from 'lodash';\nimport { Analytics } from '@teambit/legacy/dist/analytics/analytics';\nimport { BitId, BitIds } from '@teambit/legacy/dist/bit-id';\nimport { POST_TAG_ALL_HOOK, POST_TAG_HOOK, DEFAULT_BIT_RELEASE_TYPE } from '@teambit/legacy/dist/constants';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport ComponentsList from '@teambit/legacy/dist/consumer/component/components-list';\nimport HooksManager from '@teambit/legacy/dist/hooks';\nimport { TagResults, BasicTagParams } from '@teambit/legacy/dist/api/consumer/lib/tag';\nimport hasWildcard from '@teambit/legacy/dist/utils/string/has-wildcard';\nimport { validateVersion } from '@teambit/legacy/dist/utils/semver-helper';\nimport { ConsumerNotFound } from '@teambit/legacy/dist/consumer/exceptions';\nimport loader from '@teambit/legacy/dist/cli/loader';\nimport tagModelComponent from '@teambit/legacy/dist/scope/component-ops/tag-model-component';\nimport { LanesIsDisabled } from '@teambit/legacy/dist/consumer/lanes/exceptions/lanes-is-disabled';\nimport { SnapResults } from '@teambit/legacy/dist/api/consumer/lib/snap';\nimport ComponentsPendingImport from '@teambit/legacy/dist/consumer/component-ops/exceptions/components-pending-import';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { BitError } from '@teambit/bit-error';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component/consumer-component';\nimport ComponentMap from '@teambit/legacy/dist/consumer/bit-map/component-map';\nimport pMap from 'p-map';\nimport { InsightsAspect, InsightsMain } from '@teambit/insights';\nimport { concurrentComponentsLimit } from '@teambit/legacy/dist/utils/concurrency';\nimport { FailedLoadForTag } from '@teambit/legacy/dist/consumer/component/exceptions/failed-load-for-tag';\nimport IssuesAspect, { IssuesMain } from '@teambit/issues';\nimport { SnapCmd } from './snap-cmd';\nimport { SnappingAspect } from './snapping.aspect';\nimport { TagCmd } from './tag-cmd';\nimport { ComponentsHaveIssues } from './components-have-issues';\n\nconst HooksManagerInstance = HooksManager.getInstance();\n\nexport class SnappingMain {\n constructor(\n private workspace: Workspace,\n private logger: Logger,\n private issues: IssuesMain,\n private insights: InsightsMain\n ) {}\n\n /**\n * tag the given component ids or all modified/new components if \"all\" param is set.\n * tag is a similar operation as a snap, which saves the changes into the local scope, but it also creates an alias\n * with a valid semver to that version.\n * tag can be done only on main, not on a lane.\n */\n // eslint-disable-next-line complexity\n async tag({\n ids = [],\n message = '',\n version,\n editor = '',\n snapped = false,\n patch,\n minor,\n major,\n preRelease,\n ignoreIssues,\n ignoreNewestVersion = false,\n skipTests = false,\n skipAutoTag = false,\n build,\n unmodified = false,\n soft = false,\n persist = false,\n forceDeploy = false,\n incrementBy = 1,\n disableTagAndSnapPipelines = false,\n }: {\n ids?: string[];\n all?: boolean | string;\n snapped?: boolean;\n version?: string;\n patch?: boolean;\n minor?: boolean;\n major?: boolean;\n ignoreIssues?: string;\n scope?: string | boolean;\n incrementBy?: number;\n } & Partial<BasicTagParams>): Promise<TagResults | null> {\n build = isFeatureEnabled(BUILD_ON_CI) ? Boolean(build) : true;\n if (soft) build = false;\n if (disableTagAndSnapPipelines && forceDeploy) {\n throw new BitError('you can use either force-deploy or disable-tag-pipeline, but not both');\n }\n if (editor && persist) {\n throw new BitError('you can use either --editor or --persist, but not both');\n }\n if (editor && message) {\n throw new BitError('you can use either --editor or --message, but not both');\n }\n\n const releaseFlags = [patch, minor, major, preRelease].filter((x) => x);\n if (releaseFlags.length > 1) {\n throw new BitError('you can use only one of the following - patch, minor, major, pre-release');\n }\n\n let releaseType: ReleaseType = DEFAULT_BIT_RELEASE_TYPE;\n\n if (major) releaseType = 'major';\n else if (minor) releaseType = 'minor';\n else if (patch) releaseType = 'patch';\n else if (preRelease) releaseType = 'prerelease';\n\n const exactVersion = version;\n preRelease = typeof preRelease === 'string' ? preRelease : '';\n\n if (!this.workspace) throw new ConsumerNotFound();\n const idsHasWildcard = hasWildcard(ids);\n const isAll = Boolean(!ids.length || idsHasWildcard);\n const validExactVersion = validateVersion(exactVersion);\n const consumer = this.workspace.consumer;\n const componentsList = new ComponentsList(consumer);\n loader.start('determine components to tag...');\n const newComponents = await componentsList.listNewComponents();\n const { bitIds, warnings } = await this.getComponentsToTag(unmodified, exactVersion, persist, ids, snapped);\n if (R.isEmpty(bitIds)) return null;\n\n const legacyBitIds = BitIds.fromArray(bitIds);\n\n if (this.workspace.isLegacy) {\n persist = true;\n }\n this.logger.debug(`tagging the following components: ${legacyBitIds.toString()}`);\n Analytics.addBreadCrumb('tag', `tagging the following components: ${Analytics.hashData(legacyBitIds)}`);\n if (!soft) {\n await this.workspace.consumer.componentFsCache.deleteAllDependenciesDataCache();\n }\n const components = await this.loadComponentsForTag(legacyBitIds);\n await this.throwForLegacyDependenciesInsideHarmony(components);\n await this.throwForComponentIssues(components, ignoreIssues);\n const areComponentsMissingFromScope = components.some((c) => !c.componentFromModel && c.id.hasScope());\n if (areComponentsMissingFromScope) {\n throw new ComponentsPendingImport();\n }\n\n const { taggedComponents, autoTaggedResults, publishedPackages } = await tagModelComponent({\n consumerComponents: components,\n ids: legacyBitIds,\n scope: this.workspace.scope.legacyScope,\n message,\n editor,\n exactVersion: validExactVersion,\n releaseType,\n preRelease,\n consumer: this.workspace.consumer,\n ignoreNewestVersion,\n skipTests,\n skipAutoTag,\n soft,\n build,\n persist,\n resolveUnmerged: false,\n disableTagAndSnapPipelines,\n forceDeploy,\n incrementBy,\n packageManagerConfigRootDir: this.workspace.path,\n });\n\n const tagResults = { taggedComponents, autoTaggedResults, isSoftTag: soft, publishedPackages };\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n tagResults.warnings = warnings;\n\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n tagResults.newComponents = newComponents;\n const postHook = isAll ? POST_TAG_ALL_HOOK : POST_TAG_HOOK;\n HooksManagerInstance?.triggerHook(postHook, tagResults);\n Analytics.setExtraData(\n 'num_components',\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n R.concat(tagResults.taggedComponents, tagResults.autoTaggedResults, tagResults.newComponents).length\n );\n await consumer.onDestroy();\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n return tagResults;\n }\n\n /**\n * save the local changes of a component(s) into the scope. snap can be done on main or on a lane.\n * once a component is snapped on a lane, it becomes part of it.\n */\n async snap({\n id, // @todo: rename to \"patterns\"\n legacyBitIds, // @todo: change to ComponentID[]. pass only if have the ids already parsed.\n resolveUnmerged = false,\n message = '',\n ignoreIssues,\n skipTests = false,\n skipAutoSnap = false,\n build,\n disableTagAndSnapPipelines = false,\n forceDeploy = false,\n unmodified = false,\n }: {\n id?: string;\n legacyBitIds?: BitIds;\n resolveUnmerged?: boolean;\n message?: string;\n ignoreIssues?: string;\n build: boolean;\n skipTests?: boolean;\n skipAutoSnap?: boolean;\n disableTagAndSnapPipelines?: boolean;\n forceDeploy?: boolean;\n unmodified?: boolean;\n }): Promise<SnapResults | null> {\n if (!this.workspace) throw new ConsumerNotFound();\n if (id && legacyBitIds) throw new Error(`please pass either id or legacyBitIds, not both`);\n const consumer: Consumer = this.workspace.consumer;\n if (consumer.isLegacy) throw new LanesIsDisabled();\n const componentsList = new ComponentsList(consumer);\n const newComponents = (await componentsList.listNewComponents()) as BitIds;\n const ids = legacyBitIds || (await getIdsToSnap());\n if (!ids) return null;\n this.logger.debug(`snapping the following components: ${ids.toString()}`);\n await this.workspace.consumer.componentFsCache.deleteAllDependenciesDataCache();\n const components = await this.loadComponentsForTag(ids);\n await this.throwForLegacyDependenciesInsideHarmony(components);\n await this.throwForComponentIssues(components, ignoreIssues);\n const areComponentsMissingFromScope = components.some((c) => !c.componentFromModel && c.id.hasScope());\n if (areComponentsMissingFromScope) {\n throw new ComponentsPendingImport();\n }\n\n const { taggedComponents, autoTaggedResults } = await tagModelComponent({\n consumerComponents: components,\n ids,\n ignoreNewestVersion: false,\n scope: this.workspace.scope.legacyScope,\n message,\n consumer: this.workspace.consumer,\n skipTests,\n skipAutoTag: skipAutoSnap,\n persist: true,\n soft: false,\n build,\n resolveUnmerged,\n isSnap: true,\n disableTagAndSnapPipelines,\n forceDeploy,\n packageManagerConfigRootDir: this.workspace.path,\n });\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n const snapResults: SnapResults = { snappedComponents: taggedComponents, autoSnappedResults: autoTaggedResults };\n\n snapResults.newComponents = newComponents;\n const currentLane = consumer.getCurrentLaneId();\n snapResults.laneName = currentLane.isDefault() ? null : currentLane.name;\n await consumer.onDestroy();\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n return snapResults;\n\n async function getIdsToSnap(): Promise<BitIds | null> {\n const idHasWildcard = id && hasWildcard(id);\n if (id && !idHasWildcard) {\n const bitId = consumer.getParsedId(id);\n if (!unmodified) {\n const componentStatus = await consumer.getComponentStatusById(bitId);\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n if (componentStatus.modified === false) return null;\n }\n return new BitIds(bitId);\n }\n const tagPendingComponents = unmodified\n ? await componentsList.listPotentialTagAllWorkspace()\n : await componentsList.listTagPendingComponents();\n if (R.isEmpty(tagPendingComponents)) return null;\n const bitIds = idHasWildcard\n ? ComponentsList.filterComponentsByWildcard(tagPendingComponents, id)\n : tagPendingComponents;\n return BitIds.fromArray(bitIds);\n }\n }\n\n private async loadComponentsForTag(ids: BitIds): Promise<ConsumerComponent[]> {\n const { components } = await this.workspace.consumer.loadComponents(ids.toVersionLatest());\n if (this.workspace.isLegacy) {\n return components;\n }\n let shouldReloadComponents = false;\n const componentsWithRelativePaths: string[] = [];\n const componentsWithFilesNotDir: string[] = [];\n const componentsWithCustomModuleResolution: string[] = [];\n components.forEach((component) => {\n const componentMap = component.componentMap as ComponentMap;\n if (componentMap.rootDir) return;\n const hasRelativePaths = component.issues?.getIssue(IssuesClasses.RelativeComponentsAuthored);\n const hasCustomModuleResolutions = component.issues?.getIssue(IssuesClasses.MissingCustomModuleResolutionLinks);\n // leaving this because it can be helpful for users upgrade from legacy\n if (componentMap.trackDir && !hasRelativePaths) {\n componentMap.changeRootDirAndUpdateFilesAccordingly(componentMap.trackDir);\n shouldReloadComponents = true;\n return;\n }\n if (hasRelativePaths) {\n componentsWithRelativePaths.push(component.id.toStringWithoutVersion());\n }\n if (!componentMap.trackDir) {\n componentsWithFilesNotDir.push(component.id.toStringWithoutVersion());\n }\n if (hasCustomModuleResolutions) {\n componentsWithCustomModuleResolution.push(component.id.toStringWithoutVersion());\n }\n });\n if (componentsWithRelativePaths.length || componentsWithFilesNotDir.length) {\n throw new FailedLoadForTag(\n componentsWithRelativePaths.sort(),\n componentsWithFilesNotDir.sort(),\n componentsWithCustomModuleResolution.sort()\n );\n }\n if (!shouldReloadComponents) return components;\n this.workspace.clearCache();\n const { components: reloadedComponents } = await this.workspace.consumer.loadComponents(ids);\n return reloadedComponents;\n }\n\n private async throwForComponentIssues(legacyComponents: ConsumerComponent[], ignoreIssues?: string) {\n legacyComponents.forEach((component) => {\n if (this.workspace.isLegacy && component.issues) {\n component.issues.delete(IssuesClasses.RelativeComponentsAuthored);\n }\n });\n if (ignoreIssues === '*') {\n // ignore all issues\n return;\n }\n const issuesToIgnoreFromFlag = ignoreIssues?.split(',').map((issue) => issue.trim()) || [];\n const issuesToIgnoreFromConfig = this.issues.getIssuesToIgnoreGlobally();\n const issuesToIgnore = [...issuesToIgnoreFromFlag, ...issuesToIgnoreFromConfig];\n if (!this.workspace.isLegacy) {\n const components = await this.workspace.getManyByLegacy(legacyComponents);\n if (!issuesToIgnore.includes(IssuesClasses.CircularDependencies.name)) {\n await this.insights.addInsightsAsComponentIssues(components);\n }\n this.issues.removeIgnoredIssuesFromComponents(components);\n }\n\n const componentsWithBlockingIssues = legacyComponents.filter((component) => component.issues?.shouldBlockTagging());\n if (!R.isEmpty(componentsWithBlockingIssues)) {\n throw new ComponentsHaveIssues(componentsWithBlockingIssues);\n }\n }\n\n private async throwForLegacyDependenciesInsideHarmony(components: ConsumerComponent[]) {\n if (this.workspace.isLegacy) {\n return;\n }\n const throwForComponent = async (component: ConsumerComponent) => {\n const dependenciesIds = component.getAllDependenciesIds();\n const legacyScope = this.workspace.scope.legacyScope;\n await Promise.all(\n dependenciesIds.map(async (depId) => {\n if (!depId.hasVersion()) return;\n const modelComp = await legacyScope.getModelComponentIfExist(depId);\n if (!modelComp) return;\n const version = await modelComp.loadVersion(depId.version as string, legacyScope.objects);\n if (version.isLegacy) {\n throw new Error(\n `unable tagging \"${component.id.toString()}\", its dependency \"${depId.toString()}\" is legacy`\n );\n }\n })\n );\n };\n await pMap(components, (component) => throwForComponent(component), { concurrency: concurrentComponentsLimit() });\n }\n\n private async getComponentsToTag(\n includeUnmodified: boolean,\n exactVersion: string | undefined,\n persist: boolean,\n ids: string[],\n snapped: boolean\n ): Promise<{ bitIds: BitId[]; warnings: string[] }> {\n const warnings: string[] = [];\n const componentsList = new ComponentsList(this.workspace.consumer);\n if (persist) {\n const softTaggedComponents = componentsList.listSoftTaggedComponents();\n return { bitIds: softTaggedComponents, warnings: [] };\n }\n\n const tagPendingComponents = includeUnmodified\n ? await componentsList.listPotentialTagAllWorkspace()\n : await componentsList.listTagPendingComponents();\n\n const snappedComponents = await componentsList.listSnappedComponentsOnMain();\n const snappedComponentsIds = snappedComponents.map((c) => c.toBitId());\n\n if (ids.length) {\n const bitIds = await Promise.all(\n ids.map(async (id) => {\n const [idWithoutVer, version] = id.split('@');\n const idHasWildcard = hasWildcard(id);\n if (idHasWildcard) {\n const allIds = ComponentsList.filterComponentsByWildcard(tagPendingComponents, idWithoutVer);\n return allIds.map((bitId) => bitId.changeVersion(version));\n }\n const bitId = this.workspace.consumer.getParsedId(idWithoutVer);\n if (!includeUnmodified) {\n const componentStatus = await this.workspace.consumer.getComponentStatusById(bitId);\n if (componentStatus.modified === false) return null;\n }\n return bitId.changeVersion(version);\n })\n );\n\n return { bitIds: compact(bitIds.flat()), warnings };\n }\n\n if (snapped) {\n return { bitIds: snappedComponentsIds, warnings };\n }\n\n tagPendingComponents.push(...snappedComponentsIds);\n\n if (includeUnmodified && exactVersion) {\n const tagPendingComponentsLatest = await this.workspace.scope.legacyScope.latestVersions(\n tagPendingComponents,\n false\n );\n tagPendingComponentsLatest.forEach((componentId) => {\n if (componentId.version && semver.valid(componentId.version) && semver.gt(componentId.version, exactVersion)) {\n warnings.push(`warning: ${componentId.toString()} has a version greater than ${exactVersion}`);\n }\n });\n }\n\n return { bitIds: tagPendingComponents.map((id) => id.changeVersion(undefined)), warnings };\n }\n\n static slots = [];\n static dependencies = [WorkspaceAspect, CLIAspect, CommunityAspect, LoggerAspect, IssuesAspect, InsightsAspect];\n static runtime = MainRuntime;\n static async provider([workspace, cli, community, loggerMain, issues, insights]: [\n Workspace,\n CLIMain,\n CommunityMain,\n LoggerMain,\n IssuesMain,\n InsightsMain\n ]) {\n const logger = loggerMain.createLogger(SnappingAspect.id);\n const snapping = new SnappingMain(workspace, logger, issues, insights);\n const snapCmd = new SnapCmd(community.getBaseDomain(), snapping, logger);\n const tagCmd = new TagCmd(community.getBaseDomain(), snapping, logger);\n cli.register(tagCmd, snapCmd);\n return snapping;\n }\n}\n\nSnappingAspect.addRuntime(SnappingMain);\n\nexport default SnappingMain;\n"]}
1
+ {"version":3,"names":["HooksManagerInstance","HooksManager","getInstance","SnappingMain","constructor","workspace","logger","issues","insights","tag","ids","message","version","editor","snapped","patch","minor","major","preRelease","ignoreIssues","ignoreNewestVersion","skipTests","skipAutoTag","build","unmodified","soft","persist","forceDeploy","incrementBy","disableTagAndSnapPipelines","isFeatureEnabled","BUILD_ON_CI","Boolean","BitError","releaseFlags","filter","x","length","releaseType","DEFAULT_BIT_RELEASE_TYPE","exactVersion","ConsumerNotFound","idsHasWildcard","hasWildcard","isAll","validExactVersion","validateVersion","consumer","componentsList","ComponentsList","loader","start","newComponents","listNewComponents","bitIds","warnings","getComponentsToTag","R","isEmpty","legacyBitIds","BitIds","fromArray","isLegacy","debug","toString","Analytics","addBreadCrumb","hashData","componentFsCache","deleteAllDependenciesDataCache","components","loadComponentsForTag","throwForLegacyDependenciesInsideHarmony","throwForComponentIssues","areComponentsMissingFromScope","some","c","componentFromModel","id","hasScope","ComponentsPendingImport","taggedComponents","autoTaggedResults","publishedPackages","tagModelComponent","consumerComponents","scope","legacyScope","resolveUnmerged","packageManagerConfigRootDir","path","tagResults","isSoftTag","postHook","POST_TAG_ALL_HOOK","POST_TAG_HOOK","triggerHook","setExtraData","concat","onDestroy","snap","skipAutoSnap","Error","LanesIsDisabled","getIdsToSnap","isSnap","snapResults","snappedComponents","autoSnappedResults","currentLane","getCurrentLaneId","laneName","isDefault","name","idHasWildcard","bitId","getParsedId","componentStatus","getComponentStatusById","modified","tagPendingComponents","listPotentialTagAllWorkspace","listTagPendingComponents","filterComponentsByWildcard","loadComponents","toVersionLatest","shouldReloadComponents","componentsWithRelativePaths","componentsWithFilesNotDir","componentsWithCustomModuleResolution","forEach","component","componentMap","rootDir","hasRelativePaths","getIssue","IssuesClasses","RelativeComponentsAuthored","hasCustomModuleResolutions","MissingCustomModuleResolutionLinks","trackDir","changeRootDirAndUpdateFilesAccordingly","push","toStringWithoutVersion","FailedLoadForTag","sort","clearCache","reloadedComponents","legacyComponents","delete","issuesToIgnoreFromFlag","split","map","issue","trim","issuesToIgnoreFromConfig","getIssuesToIgnoreGlobally","issuesToIgnore","getManyByLegacy","includes","CircularDependencies","addInsightsAsComponentIssues","removeIgnoredIssuesFromComponents","componentsWithBlockingIssues","shouldBlockTagging","ComponentsHaveIssues","throwForComponent","dependenciesIds","getAllDependenciesIds","Promise","all","depId","hasVersion","modelComp","getModelComponentIfExist","loadVersion","objects","pMap","concurrency","concurrentComponentsLimit","includeUnmodified","softTaggedComponents","listSoftTaggedComponents","listSnappedComponentsOnMain","snappedComponentsIds","toBitId","idWithoutVer","allIds","changeVersion","compact","flat","tagPendingComponentsLatest","latestVersions","componentId","semver","valid","gt","undefined","provider","cli","community","loggerMain","createLogger","SnappingAspect","snapping","snapCmd","SnapCmd","getBaseDomain","tagCmd","TagCmd","register","WorkspaceAspect","CLIAspect","CommunityAspect","LoggerAspect","IssuesAspect","InsightsAspect","MainRuntime","addRuntime"],"sources":["snapping.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { isFeatureEnabled, BUILD_ON_CI } from '@teambit/legacy/dist/api/consumer/lib/feature-toggle';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport CommunityAspect, { CommunityMain } from '@teambit/community';\nimport WorkspaceAspect, { Workspace } from '@teambit/workspace';\nimport R from 'ramda';\nimport semver, { ReleaseType } from 'semver';\nimport { compact } from 'lodash';\nimport { Analytics } from '@teambit/legacy/dist/analytics/analytics';\nimport { BitId, BitIds } from '@teambit/legacy/dist/bit-id';\nimport { POST_TAG_ALL_HOOK, POST_TAG_HOOK, DEFAULT_BIT_RELEASE_TYPE } from '@teambit/legacy/dist/constants';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport ComponentsList from '@teambit/legacy/dist/consumer/component/components-list';\nimport HooksManager from '@teambit/legacy/dist/hooks';\nimport { TagResults, BasicTagParams } from '@teambit/legacy/dist/api/consumer/lib/tag';\nimport hasWildcard from '@teambit/legacy/dist/utils/string/has-wildcard';\nimport { validateVersion } from '@teambit/legacy/dist/utils/semver-helper';\nimport { ConsumerNotFound } from '@teambit/legacy/dist/consumer/exceptions';\nimport loader from '@teambit/legacy/dist/cli/loader';\nimport tagModelComponent from '@teambit/legacy/dist/scope/component-ops/tag-model-component';\nimport { LanesIsDisabled } from '@teambit/legacy/dist/consumer/lanes/exceptions/lanes-is-disabled';\nimport { SnapResults } from '@teambit/legacy/dist/api/consumer/lib/snap';\nimport ComponentsPendingImport from '@teambit/legacy/dist/consumer/component-ops/exceptions/components-pending-import';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { BitError } from '@teambit/bit-error';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component/consumer-component';\nimport ComponentMap from '@teambit/legacy/dist/consumer/bit-map/component-map';\nimport pMap from 'p-map';\nimport { InsightsAspect, InsightsMain } from '@teambit/insights';\nimport { concurrentComponentsLimit } from '@teambit/legacy/dist/utils/concurrency';\nimport { FailedLoadForTag } from '@teambit/legacy/dist/consumer/component/exceptions/failed-load-for-tag';\nimport IssuesAspect, { IssuesMain } from '@teambit/issues';\nimport { SnapCmd } from './snap-cmd';\nimport { SnappingAspect } from './snapping.aspect';\nimport { TagCmd } from './tag-cmd';\nimport { ComponentsHaveIssues } from './components-have-issues';\n\nconst HooksManagerInstance = HooksManager.getInstance();\n\nexport class SnappingMain {\n constructor(\n private workspace: Workspace,\n private logger: Logger,\n private issues: IssuesMain,\n private insights: InsightsMain\n ) {}\n\n /**\n * tag the given component ids or all modified/new components if \"all\" param is set.\n * tag is a similar operation as a snap, which saves the changes into the local scope, but it also creates an alias\n * with a valid semver to that version.\n * tag can be done only on main, not on a lane.\n */\n // eslint-disable-next-line complexity\n async tag({\n ids = [],\n message = '',\n version,\n editor = '',\n snapped = false,\n patch,\n minor,\n major,\n preRelease,\n ignoreIssues,\n ignoreNewestVersion = false,\n skipTests = false,\n skipAutoTag = false,\n build,\n unmodified = false,\n soft = false,\n persist = false,\n forceDeploy = false,\n incrementBy = 1,\n disableTagAndSnapPipelines = false,\n }: {\n ids?: string[];\n all?: boolean | string;\n snapped?: boolean;\n version?: string;\n patch?: boolean;\n minor?: boolean;\n major?: boolean;\n ignoreIssues?: string;\n scope?: string | boolean;\n incrementBy?: number;\n } & Partial<BasicTagParams>): Promise<TagResults | null> {\n build = isFeatureEnabled(BUILD_ON_CI) ? Boolean(build) : true;\n if (soft) build = false;\n if (disableTagAndSnapPipelines && forceDeploy) {\n throw new BitError('you can use either force-deploy or disable-tag-pipeline, but not both');\n }\n if (editor && persist) {\n throw new BitError('you can use either --editor or --persist, but not both');\n }\n if (editor && message) {\n throw new BitError('you can use either --editor or --message, but not both');\n }\n\n const releaseFlags = [patch, minor, major, preRelease].filter((x) => x);\n if (releaseFlags.length > 1) {\n throw new BitError('you can use only one of the following - patch, minor, major, pre-release');\n }\n\n let releaseType: ReleaseType = DEFAULT_BIT_RELEASE_TYPE;\n\n if (major) releaseType = 'major';\n else if (minor) releaseType = 'minor';\n else if (patch) releaseType = 'patch';\n else if (preRelease) releaseType = 'prerelease';\n\n const exactVersion = version;\n preRelease = typeof preRelease === 'string' ? preRelease : '';\n\n if (!this.workspace) throw new ConsumerNotFound();\n const idsHasWildcard = hasWildcard(ids);\n const isAll = Boolean(!ids.length || idsHasWildcard);\n const validExactVersion = validateVersion(exactVersion);\n const consumer = this.workspace.consumer;\n const componentsList = new ComponentsList(consumer);\n loader.start('determine components to tag...');\n const newComponents = await componentsList.listNewComponents();\n const { bitIds, warnings } = await this.getComponentsToTag(unmodified, exactVersion, persist, ids, snapped);\n if (R.isEmpty(bitIds)) return null;\n\n const legacyBitIds = BitIds.fromArray(bitIds);\n\n if (this.workspace.isLegacy) {\n persist = true;\n }\n this.logger.debug(`tagging the following components: ${legacyBitIds.toString()}`);\n Analytics.addBreadCrumb('tag', `tagging the following components: ${Analytics.hashData(legacyBitIds)}`);\n if (!soft) {\n await this.workspace.consumer.componentFsCache.deleteAllDependenciesDataCache();\n }\n const components = await this.loadComponentsForTag(legacyBitIds);\n await this.throwForLegacyDependenciesInsideHarmony(components);\n await this.throwForComponentIssues(components, ignoreIssues);\n const areComponentsMissingFromScope = components.some((c) => !c.componentFromModel && c.id.hasScope());\n if (areComponentsMissingFromScope) {\n throw new ComponentsPendingImport();\n }\n\n const { taggedComponents, autoTaggedResults, publishedPackages } = await tagModelComponent({\n consumerComponents: components,\n ids: legacyBitIds,\n scope: this.workspace.scope.legacyScope,\n message,\n editor,\n exactVersion: validExactVersion,\n releaseType,\n preRelease,\n consumer: this.workspace.consumer,\n ignoreNewestVersion,\n skipTests,\n skipAutoTag,\n soft,\n build,\n persist,\n resolveUnmerged: false,\n disableTagAndSnapPipelines,\n forceDeploy,\n incrementBy,\n packageManagerConfigRootDir: this.workspace.path,\n });\n\n const tagResults = { taggedComponents, autoTaggedResults, isSoftTag: soft, publishedPackages };\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n tagResults.warnings = warnings;\n\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n tagResults.newComponents = newComponents;\n const postHook = isAll ? POST_TAG_ALL_HOOK : POST_TAG_HOOK;\n HooksManagerInstance?.triggerHook(postHook, tagResults);\n Analytics.setExtraData(\n 'num_components',\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n R.concat(tagResults.taggedComponents, tagResults.autoTaggedResults, tagResults.newComponents).length\n );\n await consumer.onDestroy();\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n return tagResults;\n }\n\n /**\n * save the local changes of a component(s) into the scope. snap can be done on main or on a lane.\n * once a component is snapped on a lane, it becomes part of it.\n */\n async snap({\n id, // @todo: rename to \"patterns\"\n legacyBitIds, // @todo: change to ComponentID[]. pass only if have the ids already parsed.\n resolveUnmerged = false,\n message = '',\n ignoreIssues,\n skipTests = false,\n skipAutoSnap = false,\n build,\n disableTagAndSnapPipelines = false,\n forceDeploy = false,\n unmodified = false,\n }: {\n id?: string;\n legacyBitIds?: BitIds;\n resolveUnmerged?: boolean;\n message?: string;\n ignoreIssues?: string;\n build: boolean;\n skipTests?: boolean;\n skipAutoSnap?: boolean;\n disableTagAndSnapPipelines?: boolean;\n forceDeploy?: boolean;\n unmodified?: boolean;\n }): Promise<SnapResults | null> {\n if (!this.workspace) throw new ConsumerNotFound();\n if (id && legacyBitIds) throw new Error(`please pass either id or legacyBitIds, not both`);\n const consumer: Consumer = this.workspace.consumer;\n if (consumer.isLegacy) throw new LanesIsDisabled();\n const componentsList = new ComponentsList(consumer);\n const newComponents = (await componentsList.listNewComponents()) as BitIds;\n const ids = legacyBitIds || (await getIdsToSnap());\n if (!ids) return null;\n this.logger.debug(`snapping the following components: ${ids.toString()}`);\n await this.workspace.consumer.componentFsCache.deleteAllDependenciesDataCache();\n const components = await this.loadComponentsForTag(ids);\n await this.throwForLegacyDependenciesInsideHarmony(components);\n await this.throwForComponentIssues(components, ignoreIssues);\n const areComponentsMissingFromScope = components.some((c) => !c.componentFromModel && c.id.hasScope());\n if (areComponentsMissingFromScope) {\n throw new ComponentsPendingImport();\n }\n\n const { taggedComponents, autoTaggedResults } = await tagModelComponent({\n consumerComponents: components,\n ids,\n ignoreNewestVersion: false,\n scope: this.workspace.scope.legacyScope,\n message,\n consumer: this.workspace.consumer,\n skipTests,\n skipAutoTag: skipAutoSnap,\n persist: true,\n soft: false,\n build,\n resolveUnmerged,\n isSnap: true,\n disableTagAndSnapPipelines,\n forceDeploy,\n packageManagerConfigRootDir: this.workspace.path,\n });\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n const snapResults: SnapResults = { snappedComponents: taggedComponents, autoSnappedResults: autoTaggedResults };\n\n snapResults.newComponents = newComponents;\n const currentLane = consumer.getCurrentLaneId();\n snapResults.laneName = currentLane.isDefault() ? null : currentLane.name;\n await consumer.onDestroy();\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n return snapResults;\n\n async function getIdsToSnap(): Promise<BitIds | null> {\n const idHasWildcard = id && hasWildcard(id);\n if (id && !idHasWildcard) {\n const bitId = consumer.getParsedId(id);\n if (!unmodified) {\n const componentStatus = await consumer.getComponentStatusById(bitId);\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n if (componentStatus.modified === false) return null;\n }\n return new BitIds(bitId);\n }\n const tagPendingComponents = unmodified\n ? await componentsList.listPotentialTagAllWorkspace()\n : await componentsList.listTagPendingComponents();\n if (R.isEmpty(tagPendingComponents)) return null;\n const bitIds = idHasWildcard\n ? ComponentsList.filterComponentsByWildcard(tagPendingComponents, id)\n : tagPendingComponents;\n return BitIds.fromArray(bitIds);\n }\n }\n\n private async loadComponentsForTag(ids: BitIds): Promise<ConsumerComponent[]> {\n const { components } = await this.workspace.consumer.loadComponents(ids.toVersionLatest());\n if (this.workspace.isLegacy) {\n return components;\n }\n let shouldReloadComponents = false;\n const componentsWithRelativePaths: string[] = [];\n const componentsWithFilesNotDir: string[] = [];\n const componentsWithCustomModuleResolution: string[] = [];\n components.forEach((component) => {\n const componentMap = component.componentMap as ComponentMap;\n if (componentMap.rootDir) return;\n const hasRelativePaths = component.issues?.getIssue(IssuesClasses.RelativeComponentsAuthored);\n const hasCustomModuleResolutions = component.issues?.getIssue(IssuesClasses.MissingCustomModuleResolutionLinks);\n // leaving this because it can be helpful for users upgrade from legacy\n if (componentMap.trackDir && !hasRelativePaths) {\n componentMap.changeRootDirAndUpdateFilesAccordingly(componentMap.trackDir);\n shouldReloadComponents = true;\n return;\n }\n if (hasRelativePaths) {\n componentsWithRelativePaths.push(component.id.toStringWithoutVersion());\n }\n if (!componentMap.trackDir) {\n componentsWithFilesNotDir.push(component.id.toStringWithoutVersion());\n }\n if (hasCustomModuleResolutions) {\n componentsWithCustomModuleResolution.push(component.id.toStringWithoutVersion());\n }\n });\n if (componentsWithRelativePaths.length || componentsWithFilesNotDir.length) {\n throw new FailedLoadForTag(\n componentsWithRelativePaths.sort(),\n componentsWithFilesNotDir.sort(),\n componentsWithCustomModuleResolution.sort()\n );\n }\n if (!shouldReloadComponents) return components;\n this.workspace.clearCache();\n const { components: reloadedComponents } = await this.workspace.consumer.loadComponents(ids);\n return reloadedComponents;\n }\n\n private async throwForComponentIssues(legacyComponents: ConsumerComponent[], ignoreIssues?: string) {\n legacyComponents.forEach((component) => {\n if (this.workspace.isLegacy && component.issues) {\n component.issues.delete(IssuesClasses.RelativeComponentsAuthored);\n }\n });\n if (ignoreIssues === '*') {\n // ignore all issues\n return;\n }\n const issuesToIgnoreFromFlag = ignoreIssues?.split(',').map((issue) => issue.trim()) || [];\n const issuesToIgnoreFromConfig = this.issues.getIssuesToIgnoreGlobally();\n const issuesToIgnore = [...issuesToIgnoreFromFlag, ...issuesToIgnoreFromConfig];\n if (!this.workspace.isLegacy) {\n const components = await this.workspace.getManyByLegacy(legacyComponents);\n if (!issuesToIgnore.includes(IssuesClasses.CircularDependencies.name)) {\n await this.insights.addInsightsAsComponentIssues(components);\n }\n this.issues.removeIgnoredIssuesFromComponents(components);\n }\n\n const componentsWithBlockingIssues = legacyComponents.filter((component) => component.issues?.shouldBlockTagging());\n if (!R.isEmpty(componentsWithBlockingIssues)) {\n throw new ComponentsHaveIssues(componentsWithBlockingIssues);\n }\n }\n\n private async throwForLegacyDependenciesInsideHarmony(components: ConsumerComponent[]) {\n if (this.workspace.isLegacy) {\n return;\n }\n const throwForComponent = async (component: ConsumerComponent) => {\n const dependenciesIds = component.getAllDependenciesIds();\n const legacyScope = this.workspace.scope.legacyScope;\n await Promise.all(\n dependenciesIds.map(async (depId) => {\n if (!depId.hasVersion()) return;\n const modelComp = await legacyScope.getModelComponentIfExist(depId);\n if (!modelComp) return;\n const version = await modelComp.loadVersion(depId.version as string, legacyScope.objects);\n if (version.isLegacy) {\n throw new Error(\n `unable tagging \"${component.id.toString()}\", its dependency \"${depId.toString()}\" is legacy`\n );\n }\n })\n );\n };\n await pMap(components, (component) => throwForComponent(component), { concurrency: concurrentComponentsLimit() });\n }\n\n private async getComponentsToTag(\n includeUnmodified: boolean,\n exactVersion: string | undefined,\n persist: boolean,\n ids: string[],\n snapped: boolean\n ): Promise<{ bitIds: BitId[]; warnings: string[] }> {\n const warnings: string[] = [];\n const componentsList = new ComponentsList(this.workspace.consumer);\n if (persist) {\n const softTaggedComponents = componentsList.listSoftTaggedComponents();\n return { bitIds: softTaggedComponents, warnings: [] };\n }\n\n const tagPendingComponents = includeUnmodified\n ? await componentsList.listPotentialTagAllWorkspace()\n : await componentsList.listTagPendingComponents();\n\n const snappedComponents = await componentsList.listSnappedComponentsOnMain();\n const snappedComponentsIds = snappedComponents.map((c) => c.toBitId());\n\n if (ids.length) {\n const bitIds = await Promise.all(\n ids.map(async (id) => {\n const [idWithoutVer, version] = id.split('@');\n const idHasWildcard = hasWildcard(id);\n if (idHasWildcard) {\n const allIds = ComponentsList.filterComponentsByWildcard(tagPendingComponents, idWithoutVer);\n return allIds.map((bitId) => bitId.changeVersion(version));\n }\n const bitId = this.workspace.consumer.getParsedId(idWithoutVer);\n if (!includeUnmodified) {\n const componentStatus = await this.workspace.consumer.getComponentStatusById(bitId);\n if (componentStatus.modified === false) return null;\n }\n return bitId.changeVersion(version);\n })\n );\n\n return { bitIds: compact(bitIds.flat()), warnings };\n }\n\n if (snapped) {\n return { bitIds: snappedComponentsIds, warnings };\n }\n\n tagPendingComponents.push(...snappedComponentsIds);\n\n if (includeUnmodified && exactVersion) {\n const tagPendingComponentsLatest = await this.workspace.scope.legacyScope.latestVersions(\n tagPendingComponents,\n false\n );\n tagPendingComponentsLatest.forEach((componentId) => {\n if (componentId.version && semver.valid(componentId.version) && semver.gt(componentId.version, exactVersion)) {\n warnings.push(`warning: ${componentId.toString()} has a version greater than ${exactVersion}`);\n }\n });\n }\n\n return { bitIds: tagPendingComponents.map((id) => id.changeVersion(undefined)), warnings };\n }\n\n static slots = [];\n static dependencies = [WorkspaceAspect, CLIAspect, CommunityAspect, LoggerAspect, IssuesAspect, InsightsAspect];\n static runtime = MainRuntime;\n static async provider([workspace, cli, community, loggerMain, issues, insights]: [\n Workspace,\n CLIMain,\n CommunityMain,\n LoggerMain,\n IssuesMain,\n InsightsMain\n ]) {\n const logger = loggerMain.createLogger(SnappingAspect.id);\n const snapping = new SnappingMain(workspace, logger, issues, insights);\n const snapCmd = new SnapCmd(community.getBaseDomain(), snapping, logger);\n const tagCmd = new TagCmd(community.getBaseDomain(), snapping, logger);\n cli.register(tagCmd, snapCmd);\n return snapping;\n }\n}\n\nSnappingAspect.addRuntime(SnappingMain);\n\nexport default SnappingMain;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAGA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["snapping.spec.ts"],"names":["describe","workspaceData","snapping","beforeAll","workspacePath","console","log","fs","writeFile","path","join","compiler","CompilerAspect","compileOnWorkspace","SnappingAspect","it","tag","ids","err","expect","constructor","name","toEqual","ComponentsHaveIssues","skip","IssuesAspect","id","ignoreIssues","results","taggedComponents","length","afterAll"],"mappings":";;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAMA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEAA,QAAQ,CAAC,iBAAD,EAAoB,MAAM;AAChC,MAAIC,aAAJ;AACA,MAAIC,QAAJ;AACAF,EAAAA,QAAQ,CAAC,wBAAD,EAA2B,MAAM;AACvCG,IAAAA,SAAS,CAAC,YAAY;AACpBF,MAAAA,aAAa,GAAG,wCAAhB;AACA,YAAM;AAAEG,QAAAA;AAAF,UAAoBH,aAA1B,CAFoB,CAGpB;;AACAI,MAAAA,OAAO,CAACC,GAAR,CAAY,uBAAZ,EAAqCF,aAArC;AACA,YAAM,wCAAeA,aAAf,CAAN;AACA,YAAMG,mBAAGC,SAAH,CAAaC,gBAAKC,IAAL,CAAUN,aAAV,EAAyB,gBAAzB,CAAb,EAA0D,wCAA1D,CAAN;AACA,YAAMO,QAAsB,GAAG,MAAM,kCAAWC,0BAAX,EAA2BR,aAA3B,CAArC;AACA,YAAMO,QAAQ,CAACE,kBAAT,EAAN;AACAX,MAAAA,QAAQ,GAAG,MAAM,kCAAWY,0BAAX,EAA2BV,aAA3B,CAAjB;AACD,KAVQ,CAAT;AAWAW,IAAAA,EAAE,CAAC,gDAAD,EAAmD,YAAY;AAC/D,UAAI;AACF,cAAMb,QAAQ,CAACc,GAAT,CAAa;AAAEC,UAAAA,GAAG,EAAE,CAAC,OAAD;AAAP,SAAb,CAAN;AACD,OAFD,CAEE,OAAOC,GAAP,EAAiB;AACjBC,QAAAA,MAAM,CAACD,GAAG,CAACE,WAAJ,CAAgBC,IAAjB,CAAN,CAA6BC,OAA7B,CAAqCC,6CAAqBF,IAA1D;AACD;AACF,KANC,CAAF,CAZuC,CAmBvC;;AACAN,IAAAA,EAAE,CAACS,IAAH,CAAQ,iGAAR,EAA2G,YAAY;AACrH,YAAM,4CAAmBvB,aAAa,CAACG,aAAjC,EAAgDqB,kBAAaC,EAA7D,EAAiE;AACrEC,QAAAA,YAAY,EAAE,CAAC,iCAAD;AADuD,OAAjE,CAAN;AAGAzB,MAAAA,QAAQ,GAAG,MAAM,kCAAWY,0BAAX,EAA2Bb,aAAa,CAACG,aAAzC,CAAjB;AACA,YAAMwB,OAAO,GAAG,MAAM1B,QAAQ,CAACc,GAAT,CAAa;AAAEC,QAAAA,GAAG,EAAE,CAAC,OAAD;AAAP,OAAb,CAAtB;AACAE,MAAAA,MAAM,CAACS,OAAD,aAACA,OAAD,uBAACA,OAAO,CAAEC,gBAAT,CAA0BC,MAA3B,CAAN,CAAyCR,OAAzC,CAAiD,CAAjD;AACD,KAPD;AAQAS,IAAAA,QAAQ,CAAC,YAAY;AACnB,YAAM,0CAAiB9B,aAAjB,CAAN;AACD,KAFO,CAAR;AAGD,GA/BO,CAAR;AAgCD,CAnCO,CAAR","sourcesContent":["import fs from 'fs-extra';\nimport path from 'path';\nimport { loadAspect } from '@teambit/harmony.testing.load-aspect';\nimport {\n mockWorkspace,\n destroyWorkspace,\n WorkspaceData,\n setWorkspaceConfig,\n} from '@teambit/workspace.testing.mock-workspace';\nimport IssuesAspect from '@teambit/issues';\nimport { CompilerAspect, CompilerMain } from '@teambit/compiler';\nimport { mockComponents } from '@teambit/component.testing.mock-components';\nimport { SnappingMain } from './snapping.main.runtime';\nimport { SnappingAspect } from './snapping.aspect';\nimport { ComponentsHaveIssues } from './components-have-issues';\n\ndescribe('Snapping aspect', () => {\n let workspaceData: WorkspaceData;\n let snapping: SnappingMain;\n describe('components with issues', () => {\n beforeAll(async () => {\n workspaceData = mockWorkspace();\n const { workspacePath } = workspaceData;\n // eslint-disable-next-line no-console\n console.log('workspace created at ', workspacePath);\n await mockComponents(workspacePath);\n await fs.writeFile(path.join(workspacePath, 'comp1/index.js'), `const nonExist = require(\"non-exist\");`);\n const compiler: CompilerMain = await loadAspect(CompilerAspect, workspacePath);\n await compiler.compileOnWorkspace();\n snapping = await loadAspect(SnappingAspect, workspacePath);\n });\n it('tag should throw an ComponentsHaveIssues error', async () => {\n try {\n await snapping.tag({ ids: ['comp1'] });\n } catch (err: any) {\n expect(err.constructor.name).toEqual(ComponentsHaveIssues.name);\n }\n });\n // @todo: this test fails during \"bit build\" for some reason. It passes on \"bit test\";\n it.skip('should not throw an error if the config was set to ignore MissingPackagesDependenciesOnFs error', async () => {\n await setWorkspaceConfig(workspaceData.workspacePath, IssuesAspect.id, {\n ignoreIssues: ['MissingPackagesDependenciesOnFs'],\n });\n snapping = await loadAspect(SnappingAspect, workspaceData.workspacePath);\n const results = await snapping.tag({ ids: ['comp1'] });\n expect(results?.taggedComponents.length).toEqual(1);\n });\n afterAll(async () => {\n await destroyWorkspace(workspaceData);\n });\n });\n});\n"]}
1
+ {"version":3,"names":["describe","workspaceData","snapping","beforeAll","mockWorkspace","workspacePath","console","log","mockComponents","fs","writeFile","path","join","compiler","loadAspect","CompilerAspect","compileOnWorkspace","SnappingAspect","it","tag","ids","err","expect","constructor","name","toEqual","ComponentsHaveIssues","skip","setWorkspaceConfig","IssuesAspect","id","ignoreIssues","results","taggedComponents","length","afterAll","destroyWorkspace"],"sources":["snapping.spec.ts"],"sourcesContent":["import fs from 'fs-extra';\nimport path from 'path';\nimport { loadAspect } from '@teambit/harmony.testing.load-aspect';\nimport {\n mockWorkspace,\n destroyWorkspace,\n WorkspaceData,\n setWorkspaceConfig,\n} from '@teambit/workspace.testing.mock-workspace';\nimport IssuesAspect from '@teambit/issues';\nimport { CompilerAspect, CompilerMain } from '@teambit/compiler';\nimport { mockComponents } from '@teambit/component.testing.mock-components';\nimport { SnappingMain } from './snapping.main.runtime';\nimport { SnappingAspect } from './snapping.aspect';\nimport { ComponentsHaveIssues } from './components-have-issues';\n\ndescribe('Snapping aspect', () => {\n let workspaceData: WorkspaceData;\n let snapping: SnappingMain;\n describe('components with issues', () => {\n beforeAll(async () => {\n workspaceData = mockWorkspace();\n const { workspacePath } = workspaceData;\n // eslint-disable-next-line no-console\n console.log('workspace created at ', workspacePath);\n await mockComponents(workspacePath);\n await fs.writeFile(path.join(workspacePath, 'comp1/index.js'), `const nonExist = require(\"non-exist\");`);\n const compiler: CompilerMain = await loadAspect(CompilerAspect, workspacePath);\n await compiler.compileOnWorkspace();\n snapping = await loadAspect(SnappingAspect, workspacePath);\n });\n it('tag should throw an ComponentsHaveIssues error', async () => {\n try {\n await snapping.tag({ ids: ['comp1'] });\n } catch (err: any) {\n expect(err.constructor.name).toEqual(ComponentsHaveIssues.name);\n }\n });\n // @todo: this test fails during \"bit build\" for some reason. It passes on \"bit test\";\n it.skip('should not throw an error if the config was set to ignore MissingPackagesDependenciesOnFs error', async () => {\n await setWorkspaceConfig(workspaceData.workspacePath, IssuesAspect.id, {\n ignoreIssues: ['MissingPackagesDependenciesOnFs'],\n });\n snapping = await loadAspect(SnappingAspect, workspaceData.workspacePath);\n const results = await snapping.tag({ ids: ['comp1'] });\n expect(results?.taggedComponents.length).toEqual(1);\n });\n afterAll(async () => {\n await destroyWorkspace(workspaceData);\n });\n });\n});\n"],"mappings":";;;;;;AAAA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAMA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AACA;EAAA;;EAAA;IAAA;EAAA;;EAAA;AAAA;;AAEAA,QAAQ,CAAC,iBAAD,EAAoB,MAAM;EAChC,IAAIC,aAAJ;EACA,IAAIC,QAAJ;EACAF,QAAQ,CAAC,wBAAD,EAA2B,MAAM;IACvCG,SAAS,CAAC,YAAY;MACpBF,aAAa,GAAG,IAAAG,iCAAA,GAAhB;MACA,MAAM;QAAEC;MAAF,IAAoBJ,aAA1B,CAFoB,CAGpB;;MACAK,OAAO,CAACC,GAAR,CAAY,uBAAZ,EAAqCF,aAArC;MACA,MAAM,IAAAG,kCAAA,EAAeH,aAAf,CAAN;MACA,MAAMI,kBAAA,CAAGC,SAAH,CAAaC,eAAA,CAAKC,IAAL,CAAUP,aAAV,EAAyB,gBAAzB,CAAb,EAA0D,wCAA1D,CAAN;MACA,MAAMQ,QAAsB,GAAG,MAAM,IAAAC,4BAAA,EAAWC,0BAAX,EAA2BV,aAA3B,CAArC;MACA,MAAMQ,QAAQ,CAACG,kBAAT,EAAN;MACAd,QAAQ,GAAG,MAAM,IAAAY,4BAAA,EAAWG,0BAAX,EAA2BZ,aAA3B,CAAjB;IACD,CAVQ,CAAT;IAWAa,EAAE,CAAC,gDAAD,EAAmD,YAAY;MAC/D,IAAI;QACF,MAAMhB,QAAQ,CAACiB,GAAT,CAAa;UAAEC,GAAG,EAAE,CAAC,OAAD;QAAP,CAAb,CAAN;MACD,CAFD,CAEE,OAAOC,GAAP,EAAiB;QACjBC,MAAM,CAACD,GAAG,CAACE,WAAJ,CAAgBC,IAAjB,CAAN,CAA6BC,OAA7B,CAAqCC,4CAAA,CAAqBF,IAA1D;MACD;IACF,CANC,CAAF,CAZuC,CAmBvC;;IACAN,EAAE,CAACS,IAAH,CAAQ,iGAAR,EAA2G,YAAY;MACrH,MAAM,IAAAC,sCAAA,EAAmB3B,aAAa,CAACI,aAAjC,EAAgDwB,iBAAA,CAAaC,EAA7D,EAAiE;QACrEC,YAAY,EAAE,CAAC,iCAAD;MADuD,CAAjE,CAAN;MAGA7B,QAAQ,GAAG,MAAM,IAAAY,4BAAA,EAAWG,0BAAX,EAA2BhB,aAAa,CAACI,aAAzC,CAAjB;MACA,MAAM2B,OAAO,GAAG,MAAM9B,QAAQ,CAACiB,GAAT,CAAa;QAAEC,GAAG,EAAE,CAAC,OAAD;MAAP,CAAb,CAAtB;MACAE,MAAM,CAACU,OAAD,aAACA,OAAD,uBAACA,OAAO,CAAEC,gBAAT,CAA0BC,MAA3B,CAAN,CAAyCT,OAAzC,CAAiD,CAAjD;IACD,CAPD;IAQAU,QAAQ,CAAC,YAAY;MACnB,MAAM,IAAAC,oCAAA,EAAiBnC,aAAjB,CAAN;IACD,CAFO,CAAR;EAGD,CA/BO,CAAR;AAgCD,CAnCO,CAAR"}
@@ -1 +1 @@
1
- {"version":3,"sources":["tag-cmd.ts"],"names":["TagCmd","constructor","docsDomain","snapping","logger","Object","keys","IssuesClasses","join","description","report","id","message","ver","all","editor","snapped","patch","minor","major","preRelease","force","ignoreUnresolvedDependencies","ignoreIssues","ignoreNewestVersion","skipTests","skipAutoTag","scope","unmodified","build","soft","persist","disableDeployPipeline","disableTagPipeline","forceDeploy","incrementBy","BitError","consoleWarning","length","disableTagAndSnapPipelines","params","ids","version","results","tag","chalk","yellow","NOTHING_TO_TAG_MSG","taggedComponents","autoTaggedResults","warnings","newComponents","changedComponents","filter","component","searchWithoutVersion","addedComponents","autoTaggedCount","warningsOutput","tagExplanationPersist","tagExplanationSoft","tagExplanation","isSoftTag","outputComponents","comps","map","componentOutput","toString","autoTag","result","triggeredBy","searchWithoutScopeAndVersion","autoTagComp","a","AUTO_TAGGED_MSG","publishOutput","publishedPackages","successTitle","green","successCompsStr","successOutput","softTagPrefix","outputIfExists","label","explanation","components","underline","newDesc","changedDesc","softTagClarification","bold"],"mappings":"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","sourcesContent":["import chalk from 'chalk';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport {\n TagResults,\n NOTHING_TO_TAG_MSG,\n AUTO_TAGGED_MSG,\n BasicTagParams,\n} from '@teambit/legacy/dist/api/consumer/lib/tag';\nimport { WILDCARD_HELP } from '@teambit/legacy/dist/constants';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport { BitError } from '@teambit/bit-error';\nimport { Logger } from '@teambit/logger';\nimport { SnappingMain } from './snapping.main.runtime';\n\nexport class TagCmd implements Command {\n name = 'tag [id...]';\n group = 'development';\n shortDescription = 'record component changes and lock versions';\n description: string;\n alias = 't';\n loader = true;\n options = [\n ['m', 'message <message>', 'log message describing the user changes'],\n ['', 'unmodified', 'include unmodified components (by default, only new and modified components are tagged)'],\n [\n '',\n 'editor [editor]',\n 'EXPERIMENTAL. open an editor to edit the tag messages per component, optionally specify the editor-name, default to vim',\n ],\n ['v', 'ver <version>', 'tag with the given version'],\n ['p', 'patch', 'increment the patch version number'],\n ['', 'minor', 'increment the minor version number'],\n ['', 'major', 'increment the major version number'],\n ['', 'snapped', 'tag components that their head is a snap (not a tag)'],\n ['', 'pre-release [identifier]', 'EXPERIMENTAL. increment a pre-release version (e.g. 1.0.0-dev.1)'],\n ['', 'skip-tests', 'skip running component tests during tag process'],\n ['', 'skip-auto-tag', 'skip auto tagging dependents'],\n ['', 'soft', 'do not persist. only keep note of the changes to be made'],\n ['', 'persist', 'persist the changes generated by --soft tag'],\n ['', 'disable-tag-pipeline', 'skip the tag pipeline to avoid publishing the components'],\n ['', 'force-deploy', 'run the tag pipeline although the build failed'],\n [\n '',\n 'increment-by <number>',\n '(default to 1) increment semver flag (patch/minor/major) by. e.g. incrementing patch by 2: 0.0.1 -> 0.0.3.',\n ],\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 ['I', 'ignore-newest-version', 'ignore existing of newer versions (default = false)'],\n ['b', 'build', 'EXPERIMENTAL. not needed for now. run the pipeline build and complete the tag'],\n [\n 'a',\n 'all [version]',\n 'DEPRECATED (not needed anymore, it is the default now). tag all new and modified components',\n ],\n ['s', 'scope [version]', 'DEPRECATED (use \"--unmodified\" instead). tag all components of the current scope'],\n [\n 'f',\n 'force',\n 'DEPRECATED (use \"--skip-tests\" or \"--unmodified\" instead). force-tag even if tests are failing and even when component has not changed',\n ],\n ['', 'disable-deploy-pipeline', 'DEPRECATED. use --disable-tag-pipeline instead'],\n ] as CommandOptions;\n migration = true;\n remoteOp = true; // In case a compiler / tester is not installed\n\n constructor(docsDomain: string, private snapping: SnappingMain, private logger: Logger) {\n this.description = `record component changes and lock versions.\nif no ids are provided, it will tag all new and modified components.\nif component ids are entered, you can specify a version per id using \"@\" sign, e.g. bit tag foo@1.0.0 bar@minor baz@major\nhttps://${docsDomain}/components/tags\n${WILDCARD_HELP('tag')}`;\n }\n\n async report(\n [id = []]: [string[]],\n {\n message = '',\n ver,\n all = false,\n editor = '',\n snapped = false,\n patch,\n minor,\n major,\n preRelease,\n force = false,\n ignoreUnresolvedDependencies,\n ignoreIssues,\n ignoreNewestVersion = false,\n skipTests = false,\n skipAutoTag = false,\n scope,\n unmodified = false,\n build,\n soft = false,\n persist = false,\n disableDeployPipeline = false,\n disableTagPipeline = false,\n forceDeploy = false,\n incrementBy = 1,\n }: {\n all?: boolean | string;\n snapped?: boolean;\n ver?: string;\n force?: boolean;\n patch?: boolean;\n minor?: boolean;\n major?: boolean;\n ignoreUnresolvedDependencies?: boolean;\n ignoreIssues?: string;\n scope?: string | boolean;\n incrementBy?: number;\n disableDeployPipeline?: boolean;\n disableTagPipeline?: boolean;\n } & Partial<BasicTagParams>\n ): Promise<string> {\n if (typeof ignoreUnresolvedDependencies === 'boolean') {\n throw new BitError(`--ignore-unresolved-dependencies has been removed, please use --ignore-issues instead`);\n }\n if (ignoreIssues && typeof ignoreIssues === 'boolean') {\n throw new BitError(`--ignore-issues expects issues to be ignored, please run \"bit tag -h\" for the issues list`);\n }\n if (disableTagPipeline) {\n this.logger.consoleWarning(`--disable-tag-pipeline is deprecated, please use --disable-deploy-pipeline instead`);\n }\n if (!message && !persist) {\n this.logger.consoleWarning(\n `--message will be mandatory in the next few releases. make sure to add a message with your tag`\n );\n }\n if (all) {\n this.logger.consoleWarning(\n `--all is deprecated, please omit it. \"bit tag\" by default will tag all new and modified components. to specify a version, use --ver flag`\n );\n if (typeof all === 'string') {\n ver = all;\n }\n }\n if (scope) {\n this.logger.consoleWarning(`--scope is deprecated, use --unmodified instead`);\n unmodified = true;\n if (typeof scope === 'string') {\n ver = scope;\n }\n }\n if (force) {\n this.logger.consoleWarning(\n `--force is deprecated, use either --skip-tests or --unmodified depending on the use case`\n );\n if (id.length) unmodified = true;\n }\n\n const disableTagAndSnapPipelines = disableTagPipeline || disableDeployPipeline;\n\n const params = {\n ids: id,\n snapped,\n editor,\n message,\n preRelease,\n ignoreIssues,\n ignoreNewestVersion,\n skipTests,\n skipAutoTag,\n build,\n soft,\n persist,\n unmodified,\n disableTagAndSnapPipelines,\n forceDeploy,\n incrementBy,\n version: ver,\n patch,\n minor,\n major,\n };\n\n const results = await this.snapping.tag(params);\n if (!results) return chalk.yellow(NOTHING_TO_TAG_MSG);\n const { taggedComponents, autoTaggedResults, warnings, newComponents }: TagResults = results;\n const changedComponents = taggedComponents.filter((component) => !newComponents.searchWithoutVersion(component.id));\n const addedComponents = taggedComponents.filter((component) => newComponents.searchWithoutVersion(component.id));\n const autoTaggedCount = autoTaggedResults ? autoTaggedResults.length : 0;\n\n const warningsOutput = warnings && warnings.length ? `${chalk.yellow(warnings.join('\\n'))}\\n\\n` : '';\n const tagExplanationPersist = `\\n(use \"bit export [collection]\" to push these components to a remote\")\n(use \"bit untag\" to unstage versions)\\n`;\n const tagExplanationSoft = `\\n(use \"bit tag --persist\" to persist the changes\")\n(use \"bit untag --soft\" to remove the soft-tags)\\n`;\n\n const tagExplanation = results.isSoftTag ? tagExplanationSoft : tagExplanationPersist;\n\n const outputComponents = (comps) => {\n return comps\n .map((component) => {\n let componentOutput = ` > ${component.id.toString()}`;\n const autoTag = autoTaggedResults.filter((result) =>\n result.triggeredBy.searchWithoutScopeAndVersion(component.id)\n );\n if (autoTag.length) {\n const autoTagComp = autoTag.map((a) => a.component.id.toString());\n componentOutput += `\\n ${AUTO_TAGGED_MSG}:\n ${autoTagComp.join('\\n ')}`;\n }\n return componentOutput;\n })\n .join('\\n');\n };\n\n const publishOutput = () => {\n const { publishedPackages } = results;\n if (!publishedPackages || !publishedPackages.length) return '';\n const successTitle = `\\n\\n${chalk.green(\n `published the following ${publishedPackages.length} component(s) successfully\\n`\n )}`;\n const successCompsStr = publishedPackages.join('\\n');\n const successOutput = successCompsStr ? successTitle + successCompsStr : '';\n return successOutput;\n };\n\n const softTagPrefix = results.isSoftTag ? 'soft-tagged ' : '';\n const outputIfExists = (label, explanation, components) => {\n if (!components.length) return '';\n return `\\n${chalk.underline(softTagPrefix + label)}\\n(${explanation})\\n${outputComponents(components)}\\n`;\n };\n\n const newDesc = results.isSoftTag\n ? 'set to be tagged first version for components'\n : 'first version for components';\n const changedDesc = results.isSoftTag\n ? 'components that set to get a version bump'\n : 'components that got a version bump';\n const softTagClarification = results.isSoftTag\n ? chalk.bold(\n 'keep in mind that this is a soft-tag (changes recorded to be tagged), to persist the changes use --persist flag'\n )\n : '';\n return (\n warningsOutput +\n chalk.green(\n `${taggedComponents.length + autoTaggedCount} component(s) ${results.isSoftTag ? 'soft-' : ''}tagged`\n ) +\n tagExplanation +\n outputIfExists('new components', newDesc, addedComponents) +\n outputIfExists('changed components', changedDesc, changedComponents) +\n publishOutput() +\n softTagClarification\n );\n }\n}\n"]}
1
+ {"version":3,"names":["TagCmd","constructor","docsDomain","snapping","logger","Object","keys","IssuesClasses","join","description","WILDCARD_HELP","report","id","message","ver","all","editor","snapped","patch","minor","major","preRelease","force","ignoreUnresolvedDependencies","ignoreIssues","ignoreNewestVersion","skipTests","skipAutoTag","scope","unmodified","build","soft","persist","disableDeployPipeline","disableTagPipeline","forceDeploy","incrementBy","BitError","consoleWarning","length","disableTagAndSnapPipelines","params","ids","version","results","tag","chalk","yellow","NOTHING_TO_TAG_MSG","taggedComponents","autoTaggedResults","warnings","newComponents","changedComponents","filter","component","searchWithoutVersion","addedComponents","autoTaggedCount","warningsOutput","tagExplanationPersist","tagExplanationSoft","tagExplanation","isSoftTag","outputComponents","comps","map","componentOutput","toString","autoTag","result","triggeredBy","searchWithoutScopeAndVersion","autoTagComp","a","AUTO_TAGGED_MSG","publishOutput","publishedPackages","successTitle","green","successCompsStr","successOutput","softTagPrefix","outputIfExists","label","explanation","components","underline","newDesc","changedDesc","softTagClarification","bold"],"sources":["tag-cmd.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport {\n TagResults,\n NOTHING_TO_TAG_MSG,\n AUTO_TAGGED_MSG,\n BasicTagParams,\n} from '@teambit/legacy/dist/api/consumer/lib/tag';\nimport { WILDCARD_HELP } from '@teambit/legacy/dist/constants';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport { BitError } from '@teambit/bit-error';\nimport { Logger } from '@teambit/logger';\nimport { SnappingMain } from './snapping.main.runtime';\n\nexport class TagCmd implements Command {\n name = 'tag [id...]';\n group = 'development';\n shortDescription = 'record component changes and lock versions';\n description: string;\n alias = 't';\n loader = true;\n options = [\n ['m', 'message <message>', 'log message describing the user changes'],\n ['', 'unmodified', 'include unmodified components (by default, only new and modified components are tagged)'],\n [\n '',\n 'editor [editor]',\n 'EXPERIMENTAL. open an editor to edit the tag messages per component, optionally specify the editor-name, default to vim',\n ],\n ['v', 'ver <version>', 'tag with the given version'],\n ['p', 'patch', 'increment the patch version number'],\n ['', 'minor', 'increment the minor version number'],\n ['', 'major', 'increment the major version number'],\n ['', 'snapped', 'tag components that their head is a snap (not a tag)'],\n ['', 'pre-release [identifier]', 'EXPERIMENTAL. increment a pre-release version (e.g. 1.0.0-dev.1)'],\n ['', 'skip-tests', 'skip running component tests during tag process'],\n ['', 'skip-auto-tag', 'skip auto tagging dependents'],\n ['', 'soft', 'do not persist. only keep note of the changes to be made'],\n ['', 'persist', 'persist the changes generated by --soft tag'],\n ['', 'disable-tag-pipeline', 'skip the tag pipeline to avoid publishing the components'],\n ['', 'force-deploy', 'run the tag pipeline although the build failed'],\n [\n '',\n 'increment-by <number>',\n '(default to 1) increment semver flag (patch/minor/major) by. e.g. incrementing patch by 2: 0.0.1 -> 0.0.3.',\n ],\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 ['I', 'ignore-newest-version', 'ignore existing of newer versions (default = false)'],\n ['b', 'build', 'EXPERIMENTAL. not needed for now. run the pipeline build and complete the tag'],\n [\n 'a',\n 'all [version]',\n 'DEPRECATED (not needed anymore, it is the default now). tag all new and modified components',\n ],\n ['s', 'scope [version]', 'DEPRECATED (use \"--unmodified\" instead). tag all components of the current scope'],\n [\n 'f',\n 'force',\n 'DEPRECATED (use \"--skip-tests\" or \"--unmodified\" instead). force-tag even if tests are failing and even when component has not changed',\n ],\n ['', 'disable-deploy-pipeline', 'DEPRECATED. use --disable-tag-pipeline instead'],\n ] as CommandOptions;\n migration = true;\n remoteOp = true; // In case a compiler / tester is not installed\n\n constructor(docsDomain: string, private snapping: SnappingMain, private logger: Logger) {\n this.description = `record component changes and lock versions.\nif no ids are provided, it will tag all new and modified components.\nif component ids are entered, you can specify a version per id using \"@\" sign, e.g. bit tag foo@1.0.0 bar@minor baz@major\nhttps://${docsDomain}/components/tags\n${WILDCARD_HELP('tag')}`;\n }\n\n async report(\n [id = []]: [string[]],\n {\n message = '',\n ver,\n all = false,\n editor = '',\n snapped = false,\n patch,\n minor,\n major,\n preRelease,\n force = false,\n ignoreUnresolvedDependencies,\n ignoreIssues,\n ignoreNewestVersion = false,\n skipTests = false,\n skipAutoTag = false,\n scope,\n unmodified = false,\n build,\n soft = false,\n persist = false,\n disableDeployPipeline = false,\n disableTagPipeline = false,\n forceDeploy = false,\n incrementBy = 1,\n }: {\n all?: boolean | string;\n snapped?: boolean;\n ver?: string;\n force?: boolean;\n patch?: boolean;\n minor?: boolean;\n major?: boolean;\n ignoreUnresolvedDependencies?: boolean;\n ignoreIssues?: string;\n scope?: string | boolean;\n incrementBy?: number;\n disableDeployPipeline?: boolean;\n disableTagPipeline?: boolean;\n } & Partial<BasicTagParams>\n ): Promise<string> {\n if (typeof ignoreUnresolvedDependencies === 'boolean') {\n throw new BitError(`--ignore-unresolved-dependencies has been removed, please use --ignore-issues instead`);\n }\n if (ignoreIssues && typeof ignoreIssues === 'boolean') {\n throw new BitError(`--ignore-issues expects issues to be ignored, please run \"bit tag -h\" for the issues list`);\n }\n if (disableTagPipeline) {\n this.logger.consoleWarning(`--disable-tag-pipeline is deprecated, please use --disable-deploy-pipeline instead`);\n }\n if (!message && !persist) {\n this.logger.consoleWarning(\n `--message will be mandatory in the next few releases. make sure to add a message with your tag`\n );\n }\n if (all) {\n this.logger.consoleWarning(\n `--all is deprecated, please omit it. \"bit tag\" by default will tag all new and modified components. to specify a version, use --ver flag`\n );\n if (typeof all === 'string') {\n ver = all;\n }\n }\n if (scope) {\n this.logger.consoleWarning(`--scope is deprecated, use --unmodified instead`);\n unmodified = true;\n if (typeof scope === 'string') {\n ver = scope;\n }\n }\n if (force) {\n this.logger.consoleWarning(\n `--force is deprecated, use either --skip-tests or --unmodified depending on the use case`\n );\n if (id.length) unmodified = true;\n }\n\n const disableTagAndSnapPipelines = disableTagPipeline || disableDeployPipeline;\n\n const params = {\n ids: id,\n snapped,\n editor,\n message,\n preRelease,\n ignoreIssues,\n ignoreNewestVersion,\n skipTests,\n skipAutoTag,\n build,\n soft,\n persist,\n unmodified,\n disableTagAndSnapPipelines,\n forceDeploy,\n incrementBy,\n version: ver,\n patch,\n minor,\n major,\n };\n\n const results = await this.snapping.tag(params);\n if (!results) return chalk.yellow(NOTHING_TO_TAG_MSG);\n const { taggedComponents, autoTaggedResults, warnings, newComponents }: TagResults = results;\n const changedComponents = taggedComponents.filter((component) => !newComponents.searchWithoutVersion(component.id));\n const addedComponents = taggedComponents.filter((component) => newComponents.searchWithoutVersion(component.id));\n const autoTaggedCount = autoTaggedResults ? autoTaggedResults.length : 0;\n\n const warningsOutput = warnings && warnings.length ? `${chalk.yellow(warnings.join('\\n'))}\\n\\n` : '';\n const tagExplanationPersist = `\\n(use \"bit export [collection]\" to push these components to a remote\")\n(use \"bit untag\" to unstage versions)\\n`;\n const tagExplanationSoft = `\\n(use \"bit tag --persist\" to persist the changes\")\n(use \"bit untag --soft\" to remove the soft-tags)\\n`;\n\n const tagExplanation = results.isSoftTag ? tagExplanationSoft : tagExplanationPersist;\n\n const outputComponents = (comps) => {\n return comps\n .map((component) => {\n let componentOutput = ` > ${component.id.toString()}`;\n const autoTag = autoTaggedResults.filter((result) =>\n result.triggeredBy.searchWithoutScopeAndVersion(component.id)\n );\n if (autoTag.length) {\n const autoTagComp = autoTag.map((a) => a.component.id.toString());\n componentOutput += `\\n ${AUTO_TAGGED_MSG}:\n ${autoTagComp.join('\\n ')}`;\n }\n return componentOutput;\n })\n .join('\\n');\n };\n\n const publishOutput = () => {\n const { publishedPackages } = results;\n if (!publishedPackages || !publishedPackages.length) return '';\n const successTitle = `\\n\\n${chalk.green(\n `published the following ${publishedPackages.length} component(s) successfully\\n`\n )}`;\n const successCompsStr = publishedPackages.join('\\n');\n const successOutput = successCompsStr ? successTitle + successCompsStr : '';\n return successOutput;\n };\n\n const softTagPrefix = results.isSoftTag ? 'soft-tagged ' : '';\n const outputIfExists = (label, explanation, components) => {\n if (!components.length) return '';\n return `\\n${chalk.underline(softTagPrefix + label)}\\n(${explanation})\\n${outputComponents(components)}\\n`;\n };\n\n const newDesc = results.isSoftTag\n ? 'set to be tagged first version for components'\n : 'first version for components';\n const changedDesc = results.isSoftTag\n ? 'components that set to get a version bump'\n : 'components that got a version bump';\n const softTagClarification = results.isSoftTag\n ? chalk.bold(\n 'keep in mind that this is a soft-tag (changes recorded to be tagged), to persist the changes use --persist flag'\n )\n : '';\n return (\n warningsOutput +\n chalk.green(\n `${taggedComponents.length + autoTaggedCount} component(s) ${results.isSoftTag ? 'soft-' : ''}tagged`\n ) +\n tagExplanation +\n outputIfExists('new components', newDesc, addedComponents) +\n outputIfExists('changed components', changedDesc, changedComponents) +\n publishOutput() +\n softTagClarification\n );\n }\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/snapping",
3
- "version": "0.0.50",
3
+ "version": "0.0.53",
4
4
  "homepage": "https://bit.dev/teambit/component/snapping",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.component",
8
8
  "name": "snapping",
9
- "version": "0.0.50"
9
+ "version": "0.0.53"
10
10
  },
11
11
  "dependencies": {
12
12
  "chalk": "2.4.2",
@@ -18,13 +18,13 @@
18
18
  "core-js": "^3.0.0",
19
19
  "@teambit/harmony": "0.3.3",
20
20
  "@teambit/bit-error": "0.0.394",
21
- "@teambit/issues": "0.0.43",
21
+ "@teambit/issues": "0.0.46",
22
22
  "@teambit/cli": "0.0.491",
23
23
  "@teambit/component-issues": "0.0.53",
24
24
  "@teambit/logger": "0.0.583",
25
25
  "@teambit/community": "0.0.39",
26
- "@teambit/insights": "0.0.735",
27
- "@teambit/workspace": "0.0.735"
26
+ "@teambit/insights": "0.0.738",
27
+ "@teambit/workspace": "0.0.738"
28
28
  },
29
29
  "devDependencies": {
30
30
  "@types/lodash": "4.14.165",
@@ -37,7 +37,7 @@
37
37
  "@types/react-dom": "^17.0.5",
38
38
  "@types/react": "^17.0.8",
39
39
  "@types/node": "12.20.4",
40
- "@teambit/compiler": "0.0.735",
40
+ "@teambit/compiler": "0.0.738",
41
41
  "@teambit/component.testing.mock-components": "0.0.6",
42
42
  "@teambit/harmony.testing.load-aspect": "0.0.6",
43
43
  "@teambit/workspace.testing.mock-workspace": "0.0.5"
package/tsconfig.json CHANGED
@@ -15,13 +15,13 @@
15
15
  "declaration": true,
16
16
  "sourceMap": true,
17
17
  "skipLibCheck": true,
18
+ "experimentalDecorators": true,
18
19
  "outDir": "dist",
19
20
  "moduleResolution": "node",
20
21
  "esModuleInterop": true,
21
22
  "rootDir": ".",
22
23
  "resolveJsonModule": true,
23
24
  "emitDeclarationOnly": true,
24
- "experimentalDecorators": true,
25
25
  "emitDecoratorMetadata": true,
26
26
  "allowSyntheticDefaultImports": true,
27
27
  "strictPropertyInitialization": false,