@servicetitan/startup 31.5.1 → 32.0.0

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.
Files changed (199) hide show
  1. package/dist/cli/commands/build.d.ts +1 -1
  2. package/dist/cli/commands/build.d.ts.map +1 -1
  3. package/dist/cli/commands/build.js.map +1 -1
  4. package/dist/cli/commands/bundle-package.d.ts +1 -1
  5. package/dist/cli/commands/bundle-package.d.ts.map +1 -1
  6. package/dist/cli/commands/bundle-package.js.map +1 -1
  7. package/dist/cli/commands/eslint.d.ts +1 -1
  8. package/dist/cli/commands/eslint.d.ts.map +1 -1
  9. package/dist/cli/commands/eslint.js.map +1 -1
  10. package/dist/cli/commands/get-command.js +2 -2
  11. package/dist/cli/commands/get-command.js.map +1 -1
  12. package/dist/cli/commands/index.d.ts +1 -1
  13. package/dist/cli/commands/index.d.ts.map +1 -1
  14. package/dist/cli/commands/index.js +1 -1
  15. package/dist/cli/commands/index.js.map +1 -1
  16. package/dist/cli/commands/init.d.ts +3 -2
  17. package/dist/cli/commands/init.d.ts.map +1 -1
  18. package/dist/cli/commands/init.js +24 -43
  19. package/dist/cli/commands/init.js.map +1 -1
  20. package/dist/cli/commands/install.d.ts +4 -0
  21. package/dist/cli/commands/install.d.ts.map +1 -1
  22. package/dist/cli/commands/install.js +91 -3
  23. package/dist/cli/commands/install.js.map +1 -1
  24. package/dist/cli/commands/lint.d.ts +1 -1
  25. package/dist/cli/commands/lint.d.ts.map +1 -1
  26. package/dist/cli/commands/lint.js.map +1 -1
  27. package/dist/cli/commands/mfe-package-clean.d.ts.map +1 -1
  28. package/dist/cli/commands/mfe-package-clean.js +5 -7
  29. package/dist/cli/commands/mfe-package-clean.js.map +1 -1
  30. package/dist/cli/commands/mfe-package-publish.d.ts.map +1 -1
  31. package/dist/cli/commands/mfe-package-publish.js +11 -15
  32. package/dist/cli/commands/mfe-package-publish.js.map +1 -1
  33. package/dist/cli/commands/mfe-publish.d.ts +1 -1
  34. package/dist/cli/commands/mfe-publish.d.ts.map +1 -1
  35. package/dist/cli/commands/mfe-publish.js.map +1 -1
  36. package/dist/cli/commands/prepare-package.d.ts +1 -1
  37. package/dist/cli/commands/prepare-package.d.ts.map +1 -1
  38. package/dist/cli/commands/prepare-package.js.map +1 -1
  39. package/dist/cli/commands/review/rules/index.d.ts.map +1 -1
  40. package/dist/cli/commands/review/rules/index.js +4 -0
  41. package/dist/cli/commands/review/rules/index.js.map +1 -1
  42. package/dist/cli/commands/review/rules/require-all-react-dependencies.d.ts +14 -0
  43. package/dist/cli/commands/review/rules/require-all-react-dependencies.d.ts.map +1 -0
  44. package/dist/cli/commands/review/rules/require-all-react-dependencies.js +64 -0
  45. package/dist/cli/commands/review/rules/require-all-react-dependencies.js.map +1 -0
  46. package/dist/cli/commands/review/rules/require-one-react-version.d.ts +5 -0
  47. package/dist/cli/commands/review/rules/require-one-react-version.d.ts.map +1 -0
  48. package/dist/cli/commands/review/rules/require-one-react-version.js +25 -0
  49. package/dist/cli/commands/review/rules/require-one-react-version.js.map +1 -0
  50. package/dist/cli/commands/review/rules/require-one-uikit-version.d.ts.map +1 -1
  51. package/dist/cli/commands/review/rules/require-one-uikit-version.js +1 -0
  52. package/dist/cli/commands/review/rules/require-one-uikit-version.js.map +1 -1
  53. package/dist/cli/commands/review/utils/format-depends-on.d.ts +1 -0
  54. package/dist/cli/commands/review/utils/format-depends-on.d.ts.map +1 -1
  55. package/dist/cli/commands/review/utils/format-depends-on.js +15 -8
  56. package/dist/cli/commands/review/utils/format-depends-on.js.map +1 -1
  57. package/dist/cli/commands/review/utils/set-version.d.ts +2 -1
  58. package/dist/cli/commands/review/utils/set-version.d.ts.map +1 -1
  59. package/dist/cli/commands/review/utils/set-version.js +4 -2
  60. package/dist/cli/commands/review/utils/set-version.js.map +1 -1
  61. package/dist/cli/commands/start.d.ts +1 -1
  62. package/dist/cli/commands/start.d.ts.map +1 -1
  63. package/dist/cli/commands/start.js.map +1 -1
  64. package/dist/cli/commands/test/index.d.ts +2 -0
  65. package/dist/cli/commands/test/index.d.ts.map +1 -0
  66. package/dist/cli/commands/test/index.js +20 -0
  67. package/dist/cli/commands/test/index.js.map +1 -0
  68. package/dist/cli/commands/test/runners/index.d.ts +3 -0
  69. package/dist/cli/commands/test/runners/index.d.ts.map +1 -0
  70. package/dist/cli/commands/test/runners/index.js +21 -0
  71. package/dist/cli/commands/test/runners/index.js.map +1 -0
  72. package/dist/cli/commands/test/runners/jest.d.ts +7 -0
  73. package/dist/cli/commands/test/runners/jest.d.ts.map +1 -0
  74. package/dist/cli/commands/test/runners/jest.js +43 -0
  75. package/dist/cli/commands/test/runners/jest.js.map +1 -0
  76. package/dist/cli/commands/test/runners/vitest.d.ts +4 -0
  77. package/dist/cli/commands/test/runners/vitest.d.ts.map +1 -0
  78. package/dist/cli/commands/test/runners/vitest.js +86 -0
  79. package/dist/cli/commands/test/runners/vitest.js.map +1 -0
  80. package/dist/cli/commands/test/tests.d.ts +18 -0
  81. package/dist/cli/commands/test/tests.d.ts.map +1 -0
  82. package/dist/cli/commands/{tests.js → test/tests.js} +10 -9
  83. package/dist/cli/commands/test/tests.js.map +1 -0
  84. package/dist/cli/commands/upload-sourcemaps.d.ts.map +1 -1
  85. package/dist/cli/commands/upload-sourcemaps.js +1 -1
  86. package/dist/cli/commands/upload-sourcemaps.js.map +1 -1
  87. package/dist/cli/index.js +1 -2
  88. package/dist/cli/index.js.map +1 -1
  89. package/dist/cli/utils/bundle.d.ts.map +1 -1
  90. package/dist/cli/utils/bundle.js +7 -4
  91. package/dist/cli/utils/bundle.js.map +1 -1
  92. package/dist/cli/utils/cli-git.d.ts +11 -2
  93. package/dist/cli/utils/cli-git.d.ts.map +1 -1
  94. package/dist/cli/utils/cli-git.js +60 -4
  95. package/dist/cli/utils/cli-git.js.map +1 -1
  96. package/dist/cli/utils/index.d.ts +6 -0
  97. package/dist/cli/utils/index.d.ts.map +1 -1
  98. package/dist/cli/utils/index.js +6 -0
  99. package/dist/cli/utils/index.js.map +1 -1
  100. package/dist/cli/utils/is-ci.d.ts +2 -0
  101. package/dist/cli/utils/is-ci.d.ts.map +1 -0
  102. package/dist/cli/utils/is-ci.js +15 -0
  103. package/dist/cli/utils/is-ci.js.map +1 -0
  104. package/dist/cli/utils/lerna-exec.d.ts.map +1 -1
  105. package/dist/cli/utils/lerna-exec.js +2 -1
  106. package/dist/cli/utils/lerna-exec.js.map +1 -1
  107. package/dist/cli/utils/set-node-options.d.ts.map +1 -1
  108. package/dist/cli/utils/set-node-options.js.map +1 -1
  109. package/dist/index.d.ts +0 -1
  110. package/dist/index.d.ts.map +1 -1
  111. package/dist/index.js +0 -1
  112. package/dist/index.js.map +1 -1
  113. package/dist/utils/get-branch-configs.d.ts +1 -1
  114. package/dist/utils/get-branch-configs.d.ts.map +1 -1
  115. package/dist/utils/get-branch-configs.js +2 -2
  116. package/dist/utils/get-branch-configs.js.map +1 -1
  117. package/dist/utils/get-configuration.d.ts +8 -2
  118. package/dist/utils/get-configuration.d.ts.map +1 -1
  119. package/dist/utils/get-configuration.js +10 -2
  120. package/dist/utils/get-configuration.js.map +1 -1
  121. package/dist/utils/get-jest-config.d.ts +1 -7
  122. package/dist/utils/get-jest-config.d.ts.map +1 -1
  123. package/dist/utils/get-jest-config.js +49 -58
  124. package/dist/utils/get-jest-config.js.map +1 -1
  125. package/dist/utils/index.d.ts +1 -0
  126. package/dist/utils/index.d.ts.map +1 -1
  127. package/dist/utils/index.js +1 -0
  128. package/dist/utils/index.js.map +1 -1
  129. package/dist/webpack/utils/testing/get-compiler.js.map +1 -1
  130. package/package.json +16 -14
  131. package/src/cli/commands/__tests__/init.test.ts +21 -87
  132. package/src/cli/commands/__tests__/install.test.ts +174 -12
  133. package/src/cli/commands/__tests__/mfe-package-clean.test.ts +3 -6
  134. package/src/cli/commands/__tests__/mfe-package-publish.test.ts +6 -8
  135. package/src/cli/commands/__tests__/upload-sourcemaps.test.ts +7 -3
  136. package/src/cli/commands/build.ts +1 -1
  137. package/src/cli/commands/bundle-package.ts +1 -1
  138. package/src/cli/commands/eslint.ts +1 -1
  139. package/src/cli/commands/get-command.ts +1 -1
  140. package/src/cli/commands/index.ts +1 -1
  141. package/src/cli/commands/init.ts +18 -38
  142. package/src/cli/commands/install.ts +95 -6
  143. package/src/cli/commands/lint.ts +1 -1
  144. package/src/cli/commands/mfe-package-clean.ts +2 -4
  145. package/src/cli/commands/mfe-package-publish.ts +18 -6
  146. package/src/cli/commands/mfe-publish.ts +1 -1
  147. package/src/cli/commands/prepare-package.ts +1 -1
  148. package/src/cli/commands/review/rules/__tests__/require-all-react-dependencies.test.ts +132 -0
  149. package/src/cli/commands/review/rules/__tests__/require-one-package-version.test.ts +0 -1
  150. package/src/cli/commands/review/rules/__tests__/require-one-react-version.test.ts +22 -0
  151. package/src/cli/commands/review/rules/__tests__/{require-one-uikit-version.ts → require-one-uikit-version.test.ts} +1 -0
  152. package/src/cli/commands/review/rules/index.ts +4 -0
  153. package/src/cli/commands/review/rules/require-all-react-dependencies.ts +53 -0
  154. package/src/cli/commands/review/rules/require-one-react-version.ts +9 -0
  155. package/src/cli/commands/review/rules/require-one-uikit-version.ts +1 -0
  156. package/src/cli/commands/review/utils/__tests__/set-version.test.ts +18 -8
  157. package/src/cli/commands/review/utils/format-depends-on.ts +8 -5
  158. package/src/cli/commands/review/utils/set-version.ts +10 -2
  159. package/src/cli/commands/start.ts +1 -1
  160. package/src/cli/commands/test/__tests__/tests.test.ts +78 -0
  161. package/src/cli/commands/test/index.ts +1 -0
  162. package/src/cli/commands/{__tests__/tests.test.ts → test/runners/__tests__/jest.test.ts} +10 -13
  163. package/src/cli/commands/test/runners/__tests__/vitest.test.ts +150 -0
  164. package/src/cli/commands/test/runners/index.ts +2 -0
  165. package/src/cli/commands/{tests.ts → test/runners/jest.ts} +5 -16
  166. package/src/cli/commands/test/runners/vitest.ts +70 -0
  167. package/src/cli/commands/test/tests.ts +34 -0
  168. package/src/cli/commands/upload-sourcemaps.ts +2 -2
  169. package/src/cli/index.ts +1 -2
  170. package/src/cli/utils/__tests__/bundle.test.ts +1 -1
  171. package/src/cli/utils/__tests__/cli-git.test.ts +142 -6
  172. package/src/cli/utils/__tests__/eslint.test.ts +3 -2
  173. package/src/cli/utils/__tests__/is-ci.test.ts +40 -0
  174. package/src/cli/utils/__tests__/lerna-exec.test.ts +6 -3
  175. package/src/cli/utils/bundle.ts +8 -3
  176. package/src/cli/utils/cli-git.ts +55 -5
  177. package/src/cli/utils/index.ts +6 -0
  178. package/src/cli/utils/is-ci.ts +3 -0
  179. package/src/cli/utils/lerna-exec.ts +2 -1
  180. package/src/cli/utils/set-node-options.ts +2 -2
  181. package/src/index.ts +0 -1
  182. package/src/utils/__tests__/get-configuration.test.ts +48 -11
  183. package/src/utils/__tests__/get-jest-config.test.ts +35 -61
  184. package/src/utils/get-branch-configs.ts +1 -1
  185. package/src/utils/get-configuration.ts +14 -3
  186. package/src/utils/get-jest-config.ts +39 -47
  187. package/src/utils/index.ts +1 -0
  188. package/src/webpack/__tests__/create-webpack-config-shared-dependencies.test.ts +1 -1
  189. package/src/webpack/__tests__/create-webpack-config-web-component.test.ts +1 -1
  190. package/src/webpack/__tests__/create-webpack-config.test.ts +1 -1
  191. package/src/webpack/utils/testing/get-compiler.ts +1 -1
  192. package/dist/cli/commands/tests.d.ts +0 -13
  193. package/dist/cli/commands/tests.d.ts.map +0 -1
  194. package/dist/cli/commands/tests.js.map +0 -1
  195. package/dist/jest/index.d.ts +0 -2
  196. package/dist/jest/index.d.ts.map +0 -1
  197. package/dist/jest/index.js +0 -16
  198. package/dist/jest/index.js.map +0 -1
  199. package/src/jest/index.ts +0 -5
@@ -9,9 +9,7 @@ Object.defineProperty(exports, "MFEPackageClean", {
9
9
  }
10
10
  });
11
11
  const _utils = require("../../utils");
12
- const _getbranchconfigs = require("../../utils/get-branch-configs");
13
- const _cligit = require("../utils/cli-git");
14
- const _clinpm = require("../utils/cli-npm");
12
+ const _utils1 = require("../utils");
15
13
  function _define_property(obj, key, value) {
16
14
  if (key in obj) {
17
15
  Object.defineProperty(obj, key, {
@@ -63,7 +61,7 @@ class MFEPackageClean {
63
61
  for (const version of unVersions){
64
62
  try {
65
63
  // eslint-disable-next-line no-await-in-loop
66
- await (0, _clinpm.npmUnpublish)(data.registry, packageName, version);
64
+ await (0, _utils1.npmUnpublish)(data.registry, packageName, version);
67
65
  } catch (e) {
68
66
  _utils.log.error(`error while removing ${packageName} version ${version}`);
69
67
  }
@@ -85,14 +83,14 @@ class MFEPackageClean {
85
83
  }
86
84
  let branches;
87
85
  if (this.args.all === true) {
88
- branches = Object.keys((0, _getbranchconfigs.getBranchesConfigs)());
86
+ branches = Object.keys((0, _utils.getBranchesConfigs)());
89
87
  } else if (typeof this.args.branch === 'string') {
90
88
  branches = [
91
89
  this.args.branch
92
90
  ];
93
91
  } else {
94
92
  branches = [
95
- (0, _cligit.gitGetBranch)()
93
+ (0, _utils1.gitGetBranch)()
96
94
  ];
97
95
  }
98
96
  var _this_args_registry;
@@ -104,7 +102,7 @@ class MFEPackageClean {
104
102
  };
105
103
  }
106
104
  getBranchedVersions(packageName, registry) {
107
- const versions = (0, _clinpm.npmGetPackageVersionsDetails)(registry, packageName);
105
+ const versions = (0, _utils1.npmGetPackageVersionsDetails)(registry, packageName);
108
106
  const branchedVersions = {};
109
107
  function addVersion(branch, version) {
110
108
  var _branchedVersions, _branch;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/cli/commands/mfe-package-clean.ts"],"sourcesContent":["import { isWebComponent, log, logErrors, readJson } from '../../utils';\nimport { getBranchesConfigs } from '../../utils/get-branch-configs';\nimport { gitGetBranch } from '../utils/cli-git';\nimport { Version, npmGetPackageVersionsDetails, npmUnpublish } from '../utils/cli-npm';\nimport { Command } from './types';\n\nexport interface Args {\n all?: true;\n branch?: string;\n count?: number;\n dry?: boolean;\n registry?: string;\n}\n\nexport class MFEPackageClean implements Command {\n constructor(private readonly args: Args) {}\n\n @logErrors\n async execute() {\n if (!isWebComponent()) {\n throw new Error('only web-components can be cleaned');\n }\n\n const data = this.getCleanData();\n const packageName = readJson('package.json').name;\n const branchedVersions = this.getBranchedVersions(packageName, data.registry);\n\n log.info(`branched versions (${data.count}):`, JSON.stringify(branchedVersions, null, 2));\n\n const branchedVersionsToClean: Record<string, Version[]> = {};\n for (const [branch, versions] of Object.entries(branchedVersions)) {\n // Limit branches for now\n if (!data.branches.includes(branch)) {\n log.info(`ignoring unrecognized branch \"${branch}\"`);\n continue;\n }\n\n branchedVersionsToClean[branch] = this.excludeTagged(versions)\n .sort(({ date: adt }, { date: bdt }) => (adt > bdt ? -1 : 1))\n .slice(data.count);\n }\n\n log.info('found versions for unpublish:', JSON.stringify(branchedVersionsToClean, null, 2));\n const unVersions = Object.keys(branchedVersionsToClean).reduce(\n (out, br) => [...out, ...branchedVersionsToClean[br].map(({ name }) => name)],\n []\n );\n\n if (this.args.dry) {\n return;\n }\n\n for (const version of unVersions) {\n try {\n // eslint-disable-next-line no-await-in-loop\n await npmUnpublish(data.registry, packageName, version);\n } catch {\n log.error(`error while removing ${packageName} version ${version}`);\n }\n }\n }\n\n private excludeTagged(versions: Version[]) {\n return versions.filter(({ name, tag }) => {\n if (tag) {\n log.info(`ignoring version ${name} tagged \"${tag}\"`);\n return false;\n }\n return true;\n });\n }\n\n private getCleanData(): {\n count: number;\n registry: string;\n branches: string[];\n } {\n let count = this.args.count;\n if (!count || count < 0) {\n count = 5;\n }\n\n let branches: string[];\n\n if (this.args.all === true) {\n branches = Object.keys(getBranchesConfigs());\n } else if (typeof this.args.branch === 'string') {\n branches = [this.args.branch];\n } else {\n branches = [gitGetBranch()];\n }\n\n const registry = this.args.registry ?? 'https://verdaccio.servicetitan.com';\n\n return { count, registry, branches };\n }\n\n private getBranchedVersions(packageName: string, registry: string) {\n const versions = npmGetPackageVersionsDetails(registry, packageName);\n const branchedVersions: Record<string, Version[]> = {};\n\n function addVersion(branch: string, version: Version) {\n branchedVersions[branch] ??= [];\n branchedVersions[branch].push(version);\n }\n\n for (const version of versions) {\n const { name } = version;\n if (!name.startsWith('0.0.0-')) {\n continue;\n }\n\n const buildVersion = name.replace('0.0.0-', '');\n\n // master version generated by nerdbank versioning\n if (/^(\\d+)\\.(\\d+)\\.(\\d+)$/.test(buildVersion)) {\n addVersion('master', version);\n continue;\n }\n\n // branch version generated by nerdbank versioning\n const match1 = buildVersion.match(/^(\\d+)\\.(\\d+)\\.(\\d+)-([\\dA-Za-z-]+).([\\dA-Za-z]+)$/);\n if (match1?.length) {\n addVersion(match1[4], version);\n continue;\n }\n\n // branch version generated by mfe-publisher versioning\n const match2 = buildVersion.match(/^([\\dA-Za-z-]+).([\\dA-Za-z]+)$/);\n if (match2?.length) {\n addVersion(match2[1], version);\n continue;\n }\n\n log.info(`skipping unrecognized version: ${name}`);\n }\n\n return branchedVersions;\n }\n}\n"],"names":["MFEPackageClean","execute","isWebComponent","Error","data","getCleanData","packageName","readJson","name","branchedVersions","getBranchedVersions","registry","log","info","count","JSON","stringify","branchedVersionsToClean","branch","versions","Object","entries","branches","includes","excludeTagged","sort","date","adt","bdt","slice","unVersions","keys","reduce","out","br","map","args","dry","version","npmUnpublish","error","filter","tag","all","getBranchesConfigs","gitGetBranch","npmGetPackageVersionsDetails","addVersion","push","startsWith","buildVersion","replace","test","match1","match","length","match2"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/cli/commands/mfe-package-clean.ts"],"sourcesContent":["import { getBranchesConfigs, isWebComponent, log, logErrors, readJson } from '../../utils';\nimport { gitGetBranch, npmGetPackageVersionsDetails, npmUnpublish, Version } from '../utils';\nimport { Command } from './types';\n\nexport interface Args {\n all?: true;\n branch?: string;\n count?: number;\n dry?: boolean;\n registry?: string;\n}\n\nexport class MFEPackageClean implements Command {\n constructor(private readonly args: Args) {}\n\n @logErrors\n async execute() {\n if (!isWebComponent()) {\n throw new Error('only web-components can be cleaned');\n }\n\n const data = this.getCleanData();\n const packageName = readJson('package.json').name;\n const branchedVersions = this.getBranchedVersions(packageName, data.registry);\n\n log.info(`branched versions (${data.count}):`, JSON.stringify(branchedVersions, null, 2));\n\n const branchedVersionsToClean: Record<string, Version[]> = {};\n for (const [branch, versions] of Object.entries(branchedVersions)) {\n // Limit branches for now\n if (!data.branches.includes(branch)) {\n log.info(`ignoring unrecognized branch \"${branch}\"`);\n continue;\n }\n\n branchedVersionsToClean[branch] = this.excludeTagged(versions)\n .sort(({ date: adt }, { date: bdt }) => (adt > bdt ? -1 : 1))\n .slice(data.count);\n }\n\n log.info('found versions for unpublish:', JSON.stringify(branchedVersionsToClean, null, 2));\n const unVersions = Object.keys(branchedVersionsToClean).reduce(\n (out, br) => [...out, ...branchedVersionsToClean[br].map(({ name }) => name)],\n []\n );\n\n if (this.args.dry) {\n return;\n }\n\n for (const version of unVersions) {\n try {\n // eslint-disable-next-line no-await-in-loop\n await npmUnpublish(data.registry, packageName, version);\n } catch {\n log.error(`error while removing ${packageName} version ${version}`);\n }\n }\n }\n\n private excludeTagged(versions: Version[]) {\n return versions.filter(({ name, tag }) => {\n if (tag) {\n log.info(`ignoring version ${name} tagged \"${tag}\"`);\n return false;\n }\n return true;\n });\n }\n\n private getCleanData(): {\n count: number;\n registry: string;\n branches: string[];\n } {\n let count = this.args.count;\n if (!count || count < 0) {\n count = 5;\n }\n\n let branches: string[];\n\n if (this.args.all === true) {\n branches = Object.keys(getBranchesConfigs());\n } else if (typeof this.args.branch === 'string') {\n branches = [this.args.branch];\n } else {\n branches = [gitGetBranch()];\n }\n\n const registry = this.args.registry ?? 'https://verdaccio.servicetitan.com';\n\n return { count, registry, branches };\n }\n\n private getBranchedVersions(packageName: string, registry: string) {\n const versions = npmGetPackageVersionsDetails(registry, packageName);\n const branchedVersions: Record<string, Version[]> = {};\n\n function addVersion(branch: string, version: Version) {\n branchedVersions[branch] ??= [];\n branchedVersions[branch].push(version);\n }\n\n for (const version of versions) {\n const { name } = version;\n if (!name.startsWith('0.0.0-')) {\n continue;\n }\n\n const buildVersion = name.replace('0.0.0-', '');\n\n // master version generated by nerdbank versioning\n if (/^(\\d+)\\.(\\d+)\\.(\\d+)$/.test(buildVersion)) {\n addVersion('master', version);\n continue;\n }\n\n // branch version generated by nerdbank versioning\n const match1 = buildVersion.match(/^(\\d+)\\.(\\d+)\\.(\\d+)-([\\dA-Za-z-]+).([\\dA-Za-z]+)$/);\n if (match1?.length) {\n addVersion(match1[4], version);\n continue;\n }\n\n // branch version generated by mfe-publisher versioning\n const match2 = buildVersion.match(/^([\\dA-Za-z-]+).([\\dA-Za-z]+)$/);\n if (match2?.length) {\n addVersion(match2[1], version);\n continue;\n }\n\n log.info(`skipping unrecognized version: ${name}`);\n }\n\n return branchedVersions;\n }\n}\n"],"names":["MFEPackageClean","execute","isWebComponent","Error","data","getCleanData","packageName","readJson","name","branchedVersions","getBranchedVersions","registry","log","info","count","JSON","stringify","branchedVersionsToClean","branch","versions","Object","entries","branches","includes","excludeTagged","sort","date","adt","bdt","slice","unVersions","keys","reduce","out","br","map","args","dry","version","npmUnpublish","error","filter","tag","all","getBranchesConfigs","gitGetBranch","npmGetPackageVersionsDetails","addVersion","push","startsWith","buildVersion","replace","test","match1","match","length","match2"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mfe-package-publish.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/mfe-package-publish.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,MAAM,WAAW,IAAI;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAoBD,qBAAa,iBAAkB,YAAW,OAAO;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,IAAI;IAGjC,OAAO;IAoBb,OAAO,KAAK,YAAY,GAEvB;IAED,OAAO,CAAC,YAAY;YAoBN,qBAAqB;YA2BrB,cAAc;IAc5B,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,cAAc;YAyBR,eAAe;IAqB7B,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,kBAAkB;CAqB7B"}
1
+ {"version":3,"file":"mfe-package-publish.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/mfe-package-publish.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,MAAM,WAAW,IAAI;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAoBD,qBAAa,iBAAkB,YAAW,OAAO;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,IAAI;IAGjC,OAAO;IAoBb,OAAO,KAAK,YAAY,GAEvB;IAED,OAAO,CAAC,YAAY;YAoBN,qBAAqB;YA2BrB,cAAc;IAc5B,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,cAAc;YAyBR,eAAe;IAqB7B,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,kBAAkB;CAqB7B"}
@@ -11,11 +11,7 @@ Object.defineProperty(exports, "MFEPackagePublish", {
11
11
  const _path = /*#__PURE__*/ _interop_require_default(require("path"));
12
12
  const _fs = /*#__PURE__*/ _interop_require_default(require("fs"));
13
13
  const _utils = require("../../utils");
14
- const _getbranchconfigs = require("../../utils/get-branch-configs");
15
- const _cligit = require("../utils/cli-git");
16
- const _clinpm = require("../utils/cli-npm");
17
- const _clios = require("../utils/cli-os");
18
- const _publish = require("../utils/publish");
14
+ const _utils1 = require("../utils");
19
15
  function _define_property(obj, key, value) {
20
16
  if (key in obj) {
21
17
  Object.defineProperty(obj, key, {
@@ -78,7 +74,7 @@ class MFEPackagePublish {
78
74
  return true;
79
75
  }
80
76
  async tryTagExistingVersion({ name }, { dry, registry, tag, version }) {
81
- const versions = (0, _clinpm.npmGetPackageVersions)(registry, name);
77
+ const versions = (0, _utils1.npmGetPackageVersions)(registry, name);
82
78
  if (!versions.includes(version)) {
83
79
  return false;
84
80
  }
@@ -86,7 +82,7 @@ class MFEPackagePublish {
86
82
  if (tag) {
87
83
  _utils.log.info(`${this.dryRunPrefix}adding tag "${tag}" to ${name} version ${version}`);
88
84
  if (!dry) {
89
- await (0, _clinpm.npmTagVersion)({
85
+ await (0, _utils1.npmTagVersion)({
90
86
  packageName: name,
91
87
  packageVersion: version,
92
88
  registry,
@@ -98,10 +94,10 @@ class MFEPackagePublish {
98
94
  }
99
95
  async publishPackage(packageJson, { dry, fallbackTag, registry, tag, version }) {
100
96
  this.validateMetadata(version);
101
- await (0, _clinpm.npmPackageSet)('version', version);
102
- await (0, _clinpm.npmPackageSet)('publishConfig.registry', registry);
97
+ await (0, _utils1.npmPackageSet)('version', version);
98
+ await (0, _utils1.npmPackageSet)('publishConfig.registry', registry);
103
99
  await this.setPackageFiles(packageJson);
104
- await (0, _clinpm.npmPublish)({
100
+ await (0, _utils1.npmPublish)({
105
101
  dry,
106
102
  tag: tag || fallbackTag
107
103
  });
@@ -114,15 +110,15 @@ class MFEPackagePublish {
114
110
  ],
115
111
  `--releaseVersion=${version}`
116
112
  ].filter((option)=>!!option);
117
- (0, _clios.runCommand)(`npx startup upload-sourcemaps ${options.join(' ')}`);
113
+ (0, _utils1.runCommand)(`npx startup upload-sourcemaps ${options.join(' ')}`);
118
114
  }
119
115
  getPublishData() {
120
116
  const cli = this.args;
121
117
  var _cli_branch;
122
- const branch = (_cli_branch = cli.branch) !== null && _cli_branch !== void 0 ? _cli_branch : (0, _cligit.gitGetBranch)();
123
- const branchConfig = (0, _getbranchconfigs.getBranchesConfigs)()[branch];
118
+ const branch = (_cli_branch = cli.branch) !== null && _cli_branch !== void 0 ? _cli_branch : (0, _utils1.gitGetBranch)();
119
+ const branchConfig = (0, _utils.getBranchesConfigs)()[branch];
124
120
  // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
125
- const buildVersion = cli.build || (0, _publish.getDefaultBuildVersion)(branch, (0, _cligit.gitGetCommitHash)());
121
+ const buildVersion = cli.build || (0, _utils1.getDefaultBuildVersion)(branch, (0, _utils1.gitGetCommitHash)());
126
122
  var _cli_registry;
127
123
  const registry = (_cli_registry = cli.registry) !== null && _cli_registry !== void 0 ? _cli_registry : 'https://verdaccio.servicetitan.com';
128
124
  var _cli_tag, _ref;
@@ -161,7 +157,7 @@ class MFEPackagePublish {
161
157
  }
162
158
  for(let i = 0, n = outputFiles.length; i < n; i++){
163
159
  // eslint-disable-next-line no-await-in-loop
164
- await (0, _clinpm.npmPackageSet)(`files[${i}]`, outputFiles[i]);
160
+ await (0, _utils1.npmPackageSet)(`files[${i}]`, outputFiles[i]);
165
161
  }
166
162
  }
167
163
  validateMetadata(version) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/cli/commands/mfe-package-publish.ts"],"sourcesContent":["import path from 'path';\nimport fs from 'fs';\nimport { getFolders, isWebComponent, log, logErrors, readJson } from '../../utils';\nimport { getBranchesConfigs } from '../../utils/get-branch-configs';\nimport { EntryPoint, EntryPoints, Metadata } from '../../webpack/configs';\nimport { gitGetBranch, gitGetCommitHash } from '../utils/cli-git';\nimport { npmGetPackageVersions, npmPackageSet, npmPublish, npmTagVersion } from '../utils/cli-npm';\nimport { runCommand } from '../utils/cli-os';\nimport { getDefaultBuildVersion } from '../utils/publish';\nimport { Command } from './types';\n\nexport interface Args {\n branch?: string;\n build?: string;\n dry?: boolean;\n force?: boolean;\n registry?: string;\n tag?: string;\n uploadSourcemaps?: boolean;\n}\n\ninterface PublishData {\n buildVersion: string;\n dry: boolean;\n fallbackTag: string;\n force: boolean;\n isBranchConfigured: boolean;\n registry: string;\n tag: string;\n uploadSourcemaps: boolean;\n version: string;\n}\n\ninterface PackageJson {\n name: string;\n private?: boolean;\n files?: string[];\n}\n\nexport class MFEPackagePublish implements Command {\n constructor(private readonly args: Args) {}\n\n @logErrors\n async execute() {\n if (this.args.dry) {\n log.warning('DRY-RUN MODE ENABLED, WILL NOT PUBLISH PACKAGES');\n }\n\n const packageJson = readJson<PackageJson>('package.json');\n const data = this.getPublishData();\n if (!this.checkPackage(packageJson, data)) {\n return;\n }\n\n if (!(await this.tryTagExistingVersion(packageJson, data))) {\n await this.publishPackage(packageJson, data);\n }\n\n if (data.uploadSourcemaps) {\n this.uploadSourcemaps(data);\n }\n }\n\n private get dryRunPrefix() {\n return this.args.dry ? '(dry-run) ' : '';\n }\n\n private checkPackage(packageJson: PackageJson, { force, isBranchConfigured }: PublishData) {\n if (!isWebComponent()) {\n throw new Error('only web-components can be published');\n }\n\n if (packageJson.private) {\n log.warning('package is private, skipping publish');\n return false;\n }\n\n if (!isBranchConfigured && !force) {\n log.warning(\n 'branch is not configured for publishing, use --force flag to publish if needed'\n );\n return false;\n }\n\n return true;\n }\n\n private async tryTagExistingVersion(\n { name }: PackageJson,\n { dry, registry, tag, version }: PublishData\n ) {\n const versions = npmGetPackageVersions(registry, name);\n if (!versions.includes(version)) {\n return false;\n }\n\n log.warning(\n `${this.dryRunPrefix}${name} version ${version} is already published, skipping publish`\n );\n\n if (tag) {\n log.info(`${this.dryRunPrefix}adding tag \"${tag}\" to ${name} version ${version}`);\n if (!dry) {\n await npmTagVersion({\n packageName: name,\n packageVersion: version,\n registry,\n tag,\n });\n }\n }\n return true;\n }\n\n private async publishPackage(\n packageJson: PackageJson,\n { dry, fallbackTag, registry, tag, version }: PublishData\n ) {\n this.validateMetadata(version);\n\n await npmPackageSet('version', version);\n await npmPackageSet('publishConfig.registry', registry);\n await this.setPackageFiles(packageJson);\n\n await npmPublish({ dry, tag: tag || fallbackTag });\n log.info(`${this.dryRunPrefix}published ${packageJson.name} version ${version}`);\n }\n\n private uploadSourcemaps({ dry, version }: PublishData) {\n const options = [...[dry && '--dry'], `--releaseVersion=${version}`].filter(\n option => !!option\n ) as string[];\n\n runCommand(`npx startup upload-sourcemaps ${options.join(' ')}`);\n }\n\n private getPublishData(): PublishData {\n const cli = this.args;\n const branch = cli.branch ?? gitGetBranch();\n const branchConfig = getBranchesConfigs()[branch];\n\n // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing\n const buildVersion = cli.build || getDefaultBuildVersion(branch, gitGetCommitHash());\n const registry = cli.registry ?? 'https://verdaccio.servicetitan.com';\n const tag = cli.tag ?? branchConfig?.publishTag ?? '';\n const uploadSourcemaps = cli.uploadSourcemaps ?? branchConfig?.uploadSourcemaps ?? true;\n const version = '0.0.0-' + buildVersion;\n\n return {\n buildVersion,\n dry: !!cli.dry,\n fallbackTag: 'latest',\n force: !!cli.force,\n isBranchConfigured: !!branchConfig,\n registry,\n tag,\n uploadSourcemaps,\n version,\n };\n }\n\n private async setPackageFiles({ files: inputFiles }: PackageJson) {\n let outputFiles = ['dist/bundle', 'dist/metadata.json', 'package.json'];\n\n if (inputFiles?.length) {\n const index = inputFiles.findIndex(file => file === 'dist');\n if (index < 0) {\n return;\n }\n outputFiles = [\n ...inputFiles.slice(0, index),\n ...outputFiles.filter(file => file.startsWith('dist')),\n ...inputFiles.slice(index + 1),\n ];\n }\n\n for (let i = 0, n = outputFiles.length; i < n; i++) {\n // eslint-disable-next-line no-await-in-loop\n await npmPackageSet(`files[${i}]`, outputFiles[i]);\n }\n }\n\n private validateMetadata(version: string) {\n const { destination: outDir } = getFolders();\n\n const metadataJson = path.join(outDir, 'metadata.json');\n if (!fs.existsSync(metadataJson)) {\n throw new Error(`${metadataJson} is not present`);\n }\n\n const metadata = readJson<Metadata>(metadataJson);\n this.validateEntryPoints(outDir, metadata);\n\n fs.writeFileSync(metadataJson, JSON.stringify({ ...metadata, version }, null, 2), 'utf-8');\n }\n\n private validateEntryPoints(outDir: string, { entrypoints = {} }: Metadata) {\n const keys: (keyof EntryPoints)[] = ['full', 'light'];\n keys.forEach(name =>\n this.validateEntryPoint({ entryPoint: entrypoints[name], name, outDir })\n );\n }\n\n private validateEntryPoint({\n entryPoint = {},\n name,\n outDir,\n }: {\n entryPoint?: EntryPoint;\n name: keyof EntryPoints;\n outDir: string;\n }) {\n const keys: (keyof EntryPoint)[] = ['css', 'js'];\n keys.forEach(key => {\n if (!entryPoint[key]) {\n throw new Error(`${name}.${key} not found in metadata.json`);\n }\n entryPoint[key].forEach(filename => {\n if (!fs.existsSync(path.join(outDir, 'bundle', name, filename))) {\n throw new Error(`referenced bundle ${filename} was not found`);\n }\n });\n });\n }\n}\n"],"names":["MFEPackagePublish","execute","args","dry","log","warning","packageJson","readJson","data","getPublishData","checkPackage","tryTagExistingVersion","publishPackage","uploadSourcemaps","dryRunPrefix","force","isBranchConfigured","isWebComponent","Error","private","name","registry","tag","version","versions","npmGetPackageVersions","includes","info","npmTagVersion","packageName","packageVersion","fallbackTag","validateMetadata","npmPackageSet","setPackageFiles","npmPublish","options","filter","option","runCommand","join","cli","branch","gitGetBranch","branchConfig","getBranchesConfigs","buildVersion","build","getDefaultBuildVersion","gitGetCommitHash","publishTag","files","inputFiles","outputFiles","length","index","findIndex","file","slice","startsWith","i","n","destination","outDir","getFolders","metadataJson","path","fs","existsSync","metadata","validateEntryPoints","writeFileSync","JSON","stringify","entrypoints","keys","forEach","validateEntryPoint","entryPoint","key","filename"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/cli/commands/mfe-package-publish.ts"],"sourcesContent":["import path from 'path';\nimport fs from 'fs';\nimport {\n getBranchesConfigs,\n getFolders,\n isWebComponent,\n log,\n logErrors,\n readJson,\n} from '../../utils';\nimport { EntryPoint, EntryPoints, Metadata } from '../../webpack/configs';\nimport {\n getDefaultBuildVersion,\n gitGetBranch,\n gitGetCommitHash,\n npmGetPackageVersions,\n npmPackageSet,\n npmPublish,\n npmTagVersion,\n runCommand,\n} from '../utils';\nimport { Command } from './types';\n\nexport interface Args {\n branch?: string;\n build?: string;\n dry?: boolean;\n force?: boolean;\n registry?: string;\n tag?: string;\n uploadSourcemaps?: boolean;\n}\n\ninterface PublishData {\n buildVersion: string;\n dry: boolean;\n fallbackTag: string;\n force: boolean;\n isBranchConfigured: boolean;\n registry: string;\n tag: string;\n uploadSourcemaps: boolean;\n version: string;\n}\n\ninterface PackageJson {\n name: string;\n private?: boolean;\n files?: string[];\n}\n\nexport class MFEPackagePublish implements Command {\n constructor(private readonly args: Args) {}\n\n @logErrors\n async execute() {\n if (this.args.dry) {\n log.warning('DRY-RUN MODE ENABLED, WILL NOT PUBLISH PACKAGES');\n }\n\n const packageJson = readJson<PackageJson>('package.json');\n const data = this.getPublishData();\n if (!this.checkPackage(packageJson, data)) {\n return;\n }\n\n if (!(await this.tryTagExistingVersion(packageJson, data))) {\n await this.publishPackage(packageJson, data);\n }\n\n if (data.uploadSourcemaps) {\n this.uploadSourcemaps(data);\n }\n }\n\n private get dryRunPrefix() {\n return this.args.dry ? '(dry-run) ' : '';\n }\n\n private checkPackage(packageJson: PackageJson, { force, isBranchConfigured }: PublishData) {\n if (!isWebComponent()) {\n throw new Error('only web-components can be published');\n }\n\n if (packageJson.private) {\n log.warning('package is private, skipping publish');\n return false;\n }\n\n if (!isBranchConfigured && !force) {\n log.warning(\n 'branch is not configured for publishing, use --force flag to publish if needed'\n );\n return false;\n }\n\n return true;\n }\n\n private async tryTagExistingVersion(\n { name }: PackageJson,\n { dry, registry, tag, version }: PublishData\n ) {\n const versions = npmGetPackageVersions(registry, name);\n if (!versions.includes(version)) {\n return false;\n }\n\n log.warning(\n `${this.dryRunPrefix}${name} version ${version} is already published, skipping publish`\n );\n\n if (tag) {\n log.info(`${this.dryRunPrefix}adding tag \"${tag}\" to ${name} version ${version}`);\n if (!dry) {\n await npmTagVersion({\n packageName: name,\n packageVersion: version,\n registry,\n tag,\n });\n }\n }\n return true;\n }\n\n private async publishPackage(\n packageJson: PackageJson,\n { dry, fallbackTag, registry, tag, version }: PublishData\n ) {\n this.validateMetadata(version);\n\n await npmPackageSet('version', version);\n await npmPackageSet('publishConfig.registry', registry);\n await this.setPackageFiles(packageJson);\n\n await npmPublish({ dry, tag: tag || fallbackTag });\n log.info(`${this.dryRunPrefix}published ${packageJson.name} version ${version}`);\n }\n\n private uploadSourcemaps({ dry, version }: PublishData) {\n const options = [...[dry && '--dry'], `--releaseVersion=${version}`].filter(\n option => !!option\n ) as string[];\n\n runCommand(`npx startup upload-sourcemaps ${options.join(' ')}`);\n }\n\n private getPublishData(): PublishData {\n const cli = this.args;\n const branch = cli.branch ?? gitGetBranch();\n const branchConfig = getBranchesConfigs()[branch];\n\n // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing\n const buildVersion = cli.build || getDefaultBuildVersion(branch, gitGetCommitHash());\n const registry = cli.registry ?? 'https://verdaccio.servicetitan.com';\n const tag = cli.tag ?? branchConfig?.publishTag ?? '';\n const uploadSourcemaps = cli.uploadSourcemaps ?? branchConfig?.uploadSourcemaps ?? true;\n const version = '0.0.0-' + buildVersion;\n\n return {\n buildVersion,\n dry: !!cli.dry,\n fallbackTag: 'latest',\n force: !!cli.force,\n isBranchConfigured: !!branchConfig,\n registry,\n tag,\n uploadSourcemaps,\n version,\n };\n }\n\n private async setPackageFiles({ files: inputFiles }: PackageJson) {\n let outputFiles = ['dist/bundle', 'dist/metadata.json', 'package.json'];\n\n if (inputFiles?.length) {\n const index = inputFiles.findIndex(file => file === 'dist');\n if (index < 0) {\n return;\n }\n outputFiles = [\n ...inputFiles.slice(0, index),\n ...outputFiles.filter(file => file.startsWith('dist')),\n ...inputFiles.slice(index + 1),\n ];\n }\n\n for (let i = 0, n = outputFiles.length; i < n; i++) {\n // eslint-disable-next-line no-await-in-loop\n await npmPackageSet(`files[${i}]`, outputFiles[i]);\n }\n }\n\n private validateMetadata(version: string) {\n const { destination: outDir } = getFolders();\n\n const metadataJson = path.join(outDir, 'metadata.json');\n if (!fs.existsSync(metadataJson)) {\n throw new Error(`${metadataJson} is not present`);\n }\n\n const metadata = readJson<Metadata>(metadataJson);\n this.validateEntryPoints(outDir, metadata);\n\n fs.writeFileSync(metadataJson, JSON.stringify({ ...metadata, version }, null, 2), 'utf-8');\n }\n\n private validateEntryPoints(outDir: string, { entrypoints = {} }: Metadata) {\n const keys: (keyof EntryPoints)[] = ['full', 'light'];\n keys.forEach(name =>\n this.validateEntryPoint({ entryPoint: entrypoints[name], name, outDir })\n );\n }\n\n private validateEntryPoint({\n entryPoint = {},\n name,\n outDir,\n }: {\n entryPoint?: EntryPoint;\n name: keyof EntryPoints;\n outDir: string;\n }) {\n const keys: (keyof EntryPoint)[] = ['css', 'js'];\n keys.forEach(key => {\n if (!entryPoint[key]) {\n throw new Error(`${name}.${key} not found in metadata.json`);\n }\n entryPoint[key].forEach(filename => {\n if (!fs.existsSync(path.join(outDir, 'bundle', name, filename))) {\n throw new Error(`referenced bundle ${filename} was not found`);\n }\n });\n });\n }\n}\n"],"names":["MFEPackagePublish","execute","args","dry","log","warning","packageJson","readJson","data","getPublishData","checkPackage","tryTagExistingVersion","publishPackage","uploadSourcemaps","dryRunPrefix","force","isBranchConfigured","isWebComponent","Error","private","name","registry","tag","version","versions","npmGetPackageVersions","includes","info","npmTagVersion","packageName","packageVersion","fallbackTag","validateMetadata","npmPackageSet","setPackageFiles","npmPublish","options","filter","option","runCommand","join","cli","branch","gitGetBranch","branchConfig","getBranchesConfigs","buildVersion","build","getDefaultBuildVersion","gitGetCommitHash","publishTag","files","inputFiles","outputFiles","length","index","findIndex","file","slice","startsWith","i","n","destination","outDir","getFolders","metadataJson","path","fs","existsSync","metadata","validateEntryPoints","writeFileSync","JSON","stringify","entrypoints","keys","forEach","validateEntryPoint","entryPoint","key","filename"],"mappings":"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"}
@@ -7,7 +7,7 @@ interface Args extends PublishArgs, CleanArgs {
7
7
  scope?: string | string[];
8
8
  }
9
9
  export declare class MFEPublish implements Command {
10
- private args;
10
+ private readonly args;
11
11
  constructor(args: Args);
12
12
  description(): string;
13
13
  execute(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"mfe-publish.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/mfe-publish.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,IAAI,IAAI,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGlC,UAAU,IAAK,SAAQ,WAAW,EAAE,SAAS;IACzC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC7B;AAED,qBAAa,UAAW,YAAW,OAAO;IAC1B,OAAO,CAAC,IAAI;gBAAJ,IAAI,EAAE,IAAI;IAE9B,WAAW;IAKL,OAAO;IAmBb,iBAAiB,IAYe,MAAM,EAAE;IAGxC,eAAe,IAQiB,MAAM,EAAE;CAE3C"}
1
+ {"version":3,"file":"mfe-publish.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/mfe-publish.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,IAAI,IAAI,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGlC,UAAU,IAAK,SAAQ,WAAW,EAAE,SAAS;IACzC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC7B;AAED,qBAAa,UAAW,YAAW,OAAO;IAC1B,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,IAAI;IAEvC,WAAW;IAKL,OAAO;IAmBb,iBAAiB,IAYe,MAAM,EAAE;IAGxC,eAAe,IAQiB,MAAM,EAAE;CAE3C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/cli/commands/mfe-publish.ts"],"sourcesContent":["import { getPackages, isWebComponent, logErrors, PackageType } from '../../utils';\nimport { Args as CleanArgs } from './mfe-package-clean';\nimport { Args as PublishArgs } from './mfe-package-publish';\nimport { Command } from './types';\nimport { lernaExec } from '../utils';\n\ninterface Args extends PublishArgs, CleanArgs {\n clean?: boolean;\n concurrency?: number;\n scope?: string | string[];\n}\n\nexport class MFEPublish implements Command {\n constructor(private args: Args) {}\n\n description() {\n return 'publish or unpublish MFE packages';\n }\n\n @logErrors\n async execute() {\n const packages = getPackages({ scope: this.args.scope, type: PackageType.Webpack }).filter(\n ({ location }) => isWebComponent(location)\n );\n\n if (!packages.length) {\n throw new Error('no packages found for publication');\n }\n\n const isClean = !!this.args.clean;\n await lernaExec({\n 'cmd': `startup mfe-package-${isClean ? 'clean' : 'publish'}`,\n 'parallel': this.args.concurrency ?? 1,\n 'scope': packages.map(({ name }) => name),\n 'stream': true,\n '--': isClean ? this.getCleanOptions() : this.getPublishOptions(),\n });\n }\n\n getPublishOptions() {\n const { build, branch, dry, force, registry, tag, uploadSourcemaps } = this\n .args as PublishArgs;\n return [\n ...[branch && `--branch ${branch}`],\n ...[build && `--build ${build}`],\n ...[dry && '--dry'],\n ...[force && '--force'],\n ...[registry && `--registry ${registry}`],\n ...[typeof tag === 'string' && `--tag ${tag}`],\n ...[uploadSourcemaps === true && `--upload-sourcemaps`],\n ...[uploadSourcemaps === false && `--no-upload-sourcemaps`],\n ].filter(item => !!item) as string[];\n }\n\n getCleanOptions() {\n const { all, branch, count, dry, registry } = this.args as CleanArgs;\n return [\n ...[all && '--all'],\n ...[typeof branch === 'string' && `--branch ${branch}`],\n ...[count && `--count ${count}`],\n ...[dry && '--dry'],\n ...[registry && `--registry ${registry}`],\n ].filter(item => !!item) as string[];\n }\n}\n"],"names":["MFEPublish","description","execute","packages","getPackages","scope","args","type","PackageType","Webpack","filter","location","isWebComponent","length","Error","isClean","clean","lernaExec","concurrency","map","name","getCleanOptions","getPublishOptions","build","branch","dry","force","registry","tag","uploadSourcemaps","item","all","count"],"mappings":";;;;+BAYaA;;;eAAAA;;;uBAZuD;wBAI1C;;;;;;;;;;;;;;;;;;;;;;;AAQnB,MAAMA;IAGTC,cAAc;QACV,OAAO;IACX;IAEA,MACMC,UAAU;QACZ,MAAMC,WAAWC,IAAAA,kBAAW,EAAC;YAAEC,OAAO,IAAI,CAACC,IAAI,CAACD,KAAK;YAAEE,MAAMC,kBAAW,CAACC,OAAO;QAAC,GAAGC,MAAM,CACtF,CAAC,EAAEC,QAAQ,EAAE,GAAKC,IAAAA,qBAAc,EAACD;QAGrC,IAAI,CAACR,SAASU,MAAM,EAAE;YAClB,MAAM,IAAIC,MAAM;QACpB;QAEA,MAAMC,UAAU,CAAC,CAAC,IAAI,CAACT,IAAI,CAACU,KAAK;YAGjB;QAFhB,MAAMC,IAAAA,iBAAS,EAAC;YACZ,OAAO,CAAC,oBAAoB,EAAEF,UAAU,UAAU,WAAW;YAC7D,YAAY,CAAA,yBAAA,IAAI,CAACT,IAAI,CAACY,WAAW,cAArB,oCAAA,yBAAyB;YACrC,SAASf,SAASgB,GAAG,CAAC,CAAC,EAAEC,IAAI,EAAE,GAAKA;YACpC,UAAU;YACV,MAAML,UAAU,IAAI,CAACM,eAAe,KAAK,IAAI,CAACC,iBAAiB;QACnE;IACJ;IAEAA,oBAAoB;QAChB,MAAM,EAAEC,KAAK,EAAEC,MAAM,EAAEC,GAAG,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,GAAG,EAAEC,gBAAgB,EAAE,GAAG,IAAI,CACtEvB,IAAI;QACT,OAAO;eACA;gBAACkB,UAAU,CAAC,SAAS,EAAEA,QAAQ;aAAC;eAChC;gBAACD,SAAS,CAAC,QAAQ,EAAEA,OAAO;aAAC;eAC7B;gBAACE,OAAO;aAAQ;eAChB;gBAACC,SAAS;aAAU;eACpB;gBAACC,YAAY,CAAC,WAAW,EAAEA,UAAU;aAAC;eACtC;gBAAC,OAAOC,QAAQ,YAAY,CAAC,MAAM,EAAEA,KAAK;aAAC;eAC3C;gBAACC,qBAAqB,QAAQ,CAAC,mBAAmB,CAAC;aAAC;eACpD;gBAACA,qBAAqB,SAAS,CAAC,sBAAsB,CAAC;aAAC;SAC9D,CAACnB,MAAM,CAACoB,CAAAA,OAAQ,CAAC,CAACA;IACvB;IAEAT,kBAAkB;QACd,MAAM,EAAEU,GAAG,EAAEP,MAAM,EAAEQ,KAAK,EAAEP,GAAG,EAAEE,QAAQ,EAAE,GAAG,IAAI,CAACrB,IAAI;QACvD,OAAO;eACA;gBAACyB,OAAO;aAAQ;eAChB;gBAAC,OAAOP,WAAW,YAAY,CAAC,SAAS,EAAEA,QAAQ;aAAC;eACpD;gBAACQ,SAAS,CAAC,QAAQ,EAAEA,OAAO;aAAC;eAC7B;gBAACP,OAAO;aAAQ;eAChB;gBAACE,YAAY,CAAC,WAAW,EAAEA,UAAU;aAAC;SAC5C,CAACjB,MAAM,CAACoB,CAAAA,OAAQ,CAAC,CAACA;IACvB;IAlDA,YAAY,AAAQxB,IAAU,CAAE;;aAAZA,OAAAA;IAAa;AAmDrC"}
1
+ {"version":3,"sources":["../../../src/cli/commands/mfe-publish.ts"],"sourcesContent":["import { getPackages, isWebComponent, logErrors, PackageType } from '../../utils';\nimport { Args as CleanArgs } from './mfe-package-clean';\nimport { Args as PublishArgs } from './mfe-package-publish';\nimport { Command } from './types';\nimport { lernaExec } from '../utils';\n\ninterface Args extends PublishArgs, CleanArgs {\n clean?: boolean;\n concurrency?: number;\n scope?: string | string[];\n}\n\nexport class MFEPublish implements Command {\n constructor(private readonly args: Args) {}\n\n description() {\n return 'publish or unpublish MFE packages';\n }\n\n @logErrors\n async execute() {\n const packages = getPackages({ scope: this.args.scope, type: PackageType.Webpack }).filter(\n ({ location }) => isWebComponent(location)\n );\n\n if (!packages.length) {\n throw new Error('no packages found for publication');\n }\n\n const isClean = !!this.args.clean;\n await lernaExec({\n 'cmd': `startup mfe-package-${isClean ? 'clean' : 'publish'}`,\n 'parallel': this.args.concurrency ?? 1,\n 'scope': packages.map(({ name }) => name),\n 'stream': true,\n '--': isClean ? this.getCleanOptions() : this.getPublishOptions(),\n });\n }\n\n getPublishOptions() {\n const { build, branch, dry, force, registry, tag, uploadSourcemaps } = this\n .args as PublishArgs;\n return [\n ...[branch && `--branch ${branch}`],\n ...[build && `--build ${build}`],\n ...[dry && '--dry'],\n ...[force && '--force'],\n ...[registry && `--registry ${registry}`],\n ...[typeof tag === 'string' && `--tag ${tag}`],\n ...[uploadSourcemaps === true && `--upload-sourcemaps`],\n ...[uploadSourcemaps === false && `--no-upload-sourcemaps`],\n ].filter(item => !!item) as string[];\n }\n\n getCleanOptions() {\n const { all, branch, count, dry, registry } = this.args as CleanArgs;\n return [\n ...[all && '--all'],\n ...[typeof branch === 'string' && `--branch ${branch}`],\n ...[count && `--count ${count}`],\n ...[dry && '--dry'],\n ...[registry && `--registry ${registry}`],\n ].filter(item => !!item) as string[];\n }\n}\n"],"names":["MFEPublish","description","execute","packages","getPackages","scope","args","type","PackageType","Webpack","filter","location","isWebComponent","length","Error","isClean","clean","lernaExec","concurrency","map","name","getCleanOptions","getPublishOptions","build","branch","dry","force","registry","tag","uploadSourcemaps","item","all","count"],"mappings":";;;;+BAYaA;;;eAAAA;;;uBAZuD;wBAI1C;;;;;;;;;;;;;;;;;;;;;;;AAQnB,MAAMA;IAGTC,cAAc;QACV,OAAO;IACX;IAEA,MACMC,UAAU;QACZ,MAAMC,WAAWC,IAAAA,kBAAW,EAAC;YAAEC,OAAO,IAAI,CAACC,IAAI,CAACD,KAAK;YAAEE,MAAMC,kBAAW,CAACC,OAAO;QAAC,GAAGC,MAAM,CACtF,CAAC,EAAEC,QAAQ,EAAE,GAAKC,IAAAA,qBAAc,EAACD;QAGrC,IAAI,CAACR,SAASU,MAAM,EAAE;YAClB,MAAM,IAAIC,MAAM;QACpB;QAEA,MAAMC,UAAU,CAAC,CAAC,IAAI,CAACT,IAAI,CAACU,KAAK;YAGjB;QAFhB,MAAMC,IAAAA,iBAAS,EAAC;YACZ,OAAO,CAAC,oBAAoB,EAAEF,UAAU,UAAU,WAAW;YAC7D,YAAY,CAAA,yBAAA,IAAI,CAACT,IAAI,CAACY,WAAW,cAArB,oCAAA,yBAAyB;YACrC,SAASf,SAASgB,GAAG,CAAC,CAAC,EAAEC,IAAI,EAAE,GAAKA;YACpC,UAAU;YACV,MAAML,UAAU,IAAI,CAACM,eAAe,KAAK,IAAI,CAACC,iBAAiB;QACnE;IACJ;IAEAA,oBAAoB;QAChB,MAAM,EAAEC,KAAK,EAAEC,MAAM,EAAEC,GAAG,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,GAAG,EAAEC,gBAAgB,EAAE,GAAG,IAAI,CACtEvB,IAAI;QACT,OAAO;eACA;gBAACkB,UAAU,CAAC,SAAS,EAAEA,QAAQ;aAAC;eAChC;gBAACD,SAAS,CAAC,QAAQ,EAAEA,OAAO;aAAC;eAC7B;gBAACE,OAAO;aAAQ;eAChB;gBAACC,SAAS;aAAU;eACpB;gBAACC,YAAY,CAAC,WAAW,EAAEA,UAAU;aAAC;eACtC;gBAAC,OAAOC,QAAQ,YAAY,CAAC,MAAM,EAAEA,KAAK;aAAC;eAC3C;gBAACC,qBAAqB,QAAQ,CAAC,mBAAmB,CAAC;aAAC;eACpD;gBAACA,qBAAqB,SAAS,CAAC,sBAAsB,CAAC;aAAC;SAC9D,CAACnB,MAAM,CAACoB,CAAAA,OAAQ,CAAC,CAACA;IACvB;IAEAT,kBAAkB;QACd,MAAM,EAAEU,GAAG,EAAEP,MAAM,EAAEQ,KAAK,EAAEP,GAAG,EAAEE,QAAQ,EAAE,GAAG,IAAI,CAACrB,IAAI;QACvD,OAAO;eACA;gBAACyB,OAAO;aAAQ;eAChB;gBAAC,OAAOP,WAAW,YAAY,CAAC,SAAS,EAAEA,QAAQ;aAAC;eACpD;gBAACQ,SAAS,CAAC,QAAQ,EAAEA,OAAO;aAAC;eAC7B;gBAACP,OAAO;aAAQ;eAChB;gBAACE,YAAY,CAAC,WAAW,EAAEA,UAAU;aAAC;SAC5C,CAACjB,MAAM,CAACoB,CAAAA,OAAQ,CAAC,CAACA;IACvB;IAlDA,YAAY,AAAiBxB,IAAU,CAAE;;aAAZA,OAAAA;IAAa;AAmD9C"}
@@ -3,7 +3,7 @@ interface Args {
3
3
  watch?: boolean;
4
4
  }
5
5
  export declare class PreparePackage implements Command {
6
- private args;
6
+ private readonly args;
7
7
  constructor(args: Args);
8
8
  execute(): Promise<void>;
9
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"prepare-package.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/prepare-package.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,UAAU,IAAI;IACV,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,qBAAa,cAAe,YAAW,OAAO;IAC9B,OAAO,CAAC,IAAI;gBAAJ,IAAI,EAAE,IAAI;IAG9B,OAAO;CAGV"}
1
+ {"version":3,"file":"prepare-package.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/prepare-package.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,UAAU,IAAI;IACV,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,qBAAa,cAAe,YAAW,OAAO;IAC9B,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,IAAI;IAGvC,OAAO;CAGV"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/cli/commands/prepare-package.ts"],"sourcesContent":["import { logErrors } from '../../utils';\nimport { copyFiles } from '../utils';\nimport { Command } from './types';\n\ninterface Args {\n watch?: boolean;\n}\n\nexport class PreparePackage implements Command {\n constructor(private args: Args) {}\n\n @logErrors\n execute() {\n return copyFiles({ watch: this.args.watch });\n }\n}\n"],"names":["PreparePackage","execute","copyFiles","watch","args"],"mappings":";;;;+BAQaA;;;eAAAA;;;uBARa;wBACA;;;;;;;;;;;;;;;;;;;;;;;AAOnB,MAAMA;IAITC,UAAU;QACN,OAAOC,IAAAA,iBAAS,EAAC;YAAEC,OAAO,IAAI,CAACC,IAAI,CAACD,KAAK;QAAC;IAC9C;IALA,YAAY,AAAQC,IAAU,CAAE;;aAAZA,OAAAA;IAAa;AAMrC"}
1
+ {"version":3,"sources":["../../../src/cli/commands/prepare-package.ts"],"sourcesContent":["import { logErrors } from '../../utils';\nimport { copyFiles } from '../utils';\nimport { Command } from './types';\n\ninterface Args {\n watch?: boolean;\n}\n\nexport class PreparePackage implements Command {\n constructor(private readonly args: Args) {}\n\n @logErrors\n execute() {\n return copyFiles({ watch: this.args.watch });\n }\n}\n"],"names":["PreparePackage","execute","copyFiles","watch","args"],"mappings":";;;;+BAQaA;;;eAAAA;;;uBARa;wBACA;;;;;;;;;;;;;;;;;;;;;;;AAOnB,MAAMA;IAITC,UAAU;QACN,OAAOC,IAAAA,iBAAS,EAAC;YAAEC,OAAO,IAAI,CAACC,IAAI,CAACD,KAAK;QAAC;IAC9C;IALA,YAAY,AAAiBC,IAAU,CAAE;;aAAZA,OAAAA;IAAa;AAM9C"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/review/rules/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAUvC,eAAO,MAAM,KAAK,EAAE,WAAW,EAS9B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/review/rules/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAYvC,eAAO,MAAM,KAAK,EAAE,WAAW,EAW9B,CAAC"}
@@ -9,17 +9,21 @@ Object.defineProperty(exports, "rules", {
9
9
  }
10
10
  });
11
11
  const _notypescriptentrypoint = require("./no-typescript-entry-point");
12
+ const _requireallreactdependencies = require("./require-all-react-dependencies");
12
13
  const _requireexplicitsideeffects = require("./require-explicit-side-effects");
13
14
  const _requirenpmrc = require("./require-npmrc");
14
15
  const _requireoneanviluikitcontribversion = require("./require-one-anvil-uikit-contrib-version");
15
16
  const _requireonepackageversion = require("./require-one-package-version");
17
+ const _requireonereactversion = require("./require-one-react-version");
16
18
  const _requireoneuikitversion = require("./require-one-uikit-version");
17
19
  const _requireprojectversioninrootnodemodules = require("./require-project-version-in-root-node-modules");
18
20
  const _requireservicetitanscope = require("./require-servicetitan-scope");
19
21
  const rules = [
20
22
  new _requireonepackageversion.RequireOnePackageVersion(),
23
+ new _requireallreactdependencies.RequireAllReactDependencies(),
21
24
  new _requireoneuikitversion.RequireOneUikitVersion(),
22
25
  new _requireoneanviluikitcontribversion.RequireOneAnvilUikitContribVersion(),
26
+ new _requireonereactversion.RequireOneReactVersion(),
23
27
  new _requireprojectversioninrootnodemodules.RequireProjectVersionInRootNodeModules(),
24
28
  new _notypescriptentrypoint.NoTypescriptEntryPoint(),
25
29
  new _requireservicetitanscope.RequireServiceTitanScope(),
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/cli/commands/review/rules/index.ts"],"sourcesContent":["import { PackageRule } from '../types';\nimport { NoTypescriptEntryPoint } from './no-typescript-entry-point';\nimport { RequireExplicitSideEffects } from './require-explicit-side-effects';\nimport { RequireNpmrc } from './require-npmrc';\nimport { RequireOneAnvilUikitContribVersion } from './require-one-anvil-uikit-contrib-version';\nimport { RequireOnePackageVersion } from './require-one-package-version';\nimport { RequireOneUikitVersion } from './require-one-uikit-version';\nimport { RequireProjectVersionInRootNodeModules } from './require-project-version-in-root-node-modules';\nimport { RequireServiceTitanScope } from './require-servicetitan-scope';\n\nexport const rules: PackageRule[] = [\n new RequireOnePackageVersion(),\n new RequireOneUikitVersion(),\n new RequireOneAnvilUikitContribVersion(),\n new RequireProjectVersionInRootNodeModules(),\n new NoTypescriptEntryPoint(),\n new RequireServiceTitanScope(),\n new RequireExplicitSideEffects(),\n new RequireNpmrc(),\n];\n"],"names":["rules","RequireOnePackageVersion","RequireOneUikitVersion","RequireOneAnvilUikitContribVersion","RequireProjectVersionInRootNodeModules","NoTypescriptEntryPoint","RequireServiceTitanScope","RequireExplicitSideEffects","RequireNpmrc"],"mappings":";;;;+BAUaA;;;eAAAA;;;wCAT0B;4CACI;8BACd;oDACsB;0CACV;wCACF;wDACgB;0CACd;AAElC,MAAMA,QAAuB;IAChC,IAAIC,kDAAwB;IAC5B,IAAIC,8CAAsB;IAC1B,IAAIC,sEAAkC;IACtC,IAAIC,8EAAsC;IAC1C,IAAIC,8CAAsB;IAC1B,IAAIC,kDAAwB;IAC5B,IAAIC,sDAA0B;IAC9B,IAAIC,0BAAY;CACnB"}
1
+ {"version":3,"sources":["../../../../../src/cli/commands/review/rules/index.ts"],"sourcesContent":["import { PackageRule } from '../types';\nimport { NoTypescriptEntryPoint } from './no-typescript-entry-point';\nimport { RequireAllReactDependencies } from './require-all-react-dependencies';\nimport { RequireExplicitSideEffects } from './require-explicit-side-effects';\nimport { RequireNpmrc } from './require-npmrc';\nimport { RequireOneAnvilUikitContribVersion } from './require-one-anvil-uikit-contrib-version';\nimport { RequireOnePackageVersion } from './require-one-package-version';\nimport { RequireOneReactVersion } from './require-one-react-version';\nimport { RequireOneUikitVersion } from './require-one-uikit-version';\nimport { RequireProjectVersionInRootNodeModules } from './require-project-version-in-root-node-modules';\nimport { RequireServiceTitanScope } from './require-servicetitan-scope';\n\nexport const rules: PackageRule[] = [\n new RequireOnePackageVersion(),\n new RequireAllReactDependencies(),\n new RequireOneUikitVersion(),\n new RequireOneAnvilUikitContribVersion(),\n new RequireOneReactVersion(),\n new RequireProjectVersionInRootNodeModules(),\n new NoTypescriptEntryPoint(),\n new RequireServiceTitanScope(),\n new RequireExplicitSideEffects(),\n new RequireNpmrc(),\n];\n"],"names":["rules","RequireOnePackageVersion","RequireAllReactDependencies","RequireOneUikitVersion","RequireOneAnvilUikitContribVersion","RequireOneReactVersion","RequireProjectVersionInRootNodeModules","NoTypescriptEntryPoint","RequireServiceTitanScope","RequireExplicitSideEffects","RequireNpmrc"],"mappings":";;;;+BAYaA;;;eAAAA;;;wCAX0B;6CACK;4CACD;8BACd;oDACsB;0CACV;wCACF;wCACA;wDACgB;0CACd;AAElC,MAAMA,QAAuB;IAChC,IAAIC,kDAAwB;IAC5B,IAAIC,wDAA2B;IAC/B,IAAIC,8CAAsB;IAC1B,IAAIC,sEAAkC;IACtC,IAAIC,8CAAsB;IAC1B,IAAIC,8EAAsC;IAC1C,IAAIC,8CAAsB;IAC1B,IAAIC,kDAAwB;IAC5B,IAAIC,sDAA0B;IAC9B,IAAIC,0BAAY;CACnB"}
@@ -0,0 +1,14 @@
1
+ import { PackageError, PackageRule, Project } from '../types';
2
+ interface ErrorData {
3
+ missing: string[];
4
+ packageName: string;
5
+ version: string;
6
+ }
7
+ export declare class RequireAllReactDependencies implements PackageRule {
8
+ get id(): string;
9
+ run({ config, packages }: Project): PackageError<ErrorData>[];
10
+ fix({ data }: PackageError<ErrorData>, project: Project): void;
11
+ private checkDependencies;
12
+ }
13
+ export {};
14
+ //# sourceMappingURL=require-all-react-dependencies.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"require-all-react-dependencies.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/review/rules/require-all-react-dependencies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAKpF,UAAU,SAAS;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,2BAA4B,YAAW,WAAW;IAC3D,IAAI,EAAE,WAEL;IAED,GAAG,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,OAAO;IAOjC,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,YAAY,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO;IAWvD,OAAO,CAAC,iBAAiB;CAkB5B"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "RequireAllReactDependencies", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return RequireAllReactDependencies;
9
+ }
10
+ });
11
+ const _types = require("../types");
12
+ const _utils = require("../utils");
13
+ const REACT_DEPENDENCIES = [
14
+ 'react',
15
+ 'react-dom'
16
+ ];
17
+ class RequireAllReactDependencies {
18
+ get id() {
19
+ return 'require-all-react-dependencies';
20
+ }
21
+ run({ config, packages }) {
22
+ var _config_rules;
23
+ const ruleConfig = (_config_rules = config.rules) === null || _config_rules === void 0 ? void 0 : _config_rules[this.id];
24
+ return (0, _utils.applyFilter)(ruleConfig, packages, ({ name })=>name).map((pkg)=>this.checkDependencies(pkg)).filter((error)=>!!error);
25
+ }
26
+ fix({ data }, project) {
27
+ const { missing, packageName, version } = data !== null && data !== void 0 ? data : {};
28
+ if (!((missing === null || missing === void 0 ? void 0 : missing.length) && packageName && version)) {
29
+ return;
30
+ }
31
+ missing.forEach((dependency)=>{
32
+ (0, _utils.setVersion)({
33
+ project,
34
+ packageName,
35
+ dependency,
36
+ version,
37
+ key: 'dependencies'
38
+ });
39
+ });
40
+ }
41
+ checkDependencies(pkg) {
42
+ const { dependencies = {}, name } = pkg;
43
+ const present = REACT_DEPENDENCIES.filter((name)=>!!dependencies[name]);
44
+ if (present.length === 0 || present.length === REACT_DEPENDENCIES.length) {
45
+ return;
46
+ }
47
+ const missing = REACT_DEPENDENCIES.filter((name)=>!dependencies[name]);
48
+ const message = `package "${name}" depends on ${present[0]} but not on ${(0, _utils.formatList)(missing)}`;
49
+ const version = (0, _utils.getMaxVersion)(present.map((name)=>dependencies[name]));
50
+ return {
51
+ id: this.id,
52
+ message,
53
+ location: pkg.location,
54
+ fixable: _types.FixCategory.isolated,
55
+ data: {
56
+ missing,
57
+ packageName: name,
58
+ version
59
+ }
60
+ };
61
+ }
62
+ }
63
+
64
+ //# sourceMappingURL=require-all-react-dependencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/cli/commands/review/rules/require-all-react-dependencies.ts"],"sourcesContent":["import { FixCategory, Package, PackageError, PackageRule, Project } from '../types';\nimport { applyFilter, formatList, getMaxVersion, setVersion } from '../utils';\n\nconst REACT_DEPENDENCIES = ['react', 'react-dom'];\n\ninterface ErrorData {\n missing: string[];\n packageName: string;\n version: string;\n}\n\nexport class RequireAllReactDependencies implements PackageRule {\n get id() {\n return 'require-all-react-dependencies';\n }\n\n run({ config, packages }: Project) {\n const ruleConfig = config.rules?.[this.id];\n return applyFilter(ruleConfig, packages, ({ name }) => name)\n .map(pkg => this.checkDependencies(pkg))\n .filter(error => !!error);\n }\n\n fix({ data }: PackageError<ErrorData>, project: Project) {\n const { missing, packageName, version } = data ?? {};\n if (!(missing?.length && packageName && version)) {\n return;\n }\n\n missing.forEach(dependency => {\n setVersion({ project, packageName, dependency, version, key: 'dependencies' });\n });\n }\n\n private checkDependencies(pkg: Package): PackageError<ErrorData> | undefined {\n const { dependencies = {}, name } = pkg;\n const present = REACT_DEPENDENCIES.filter(name => !!dependencies[name]);\n if (present.length === 0 || present.length === REACT_DEPENDENCIES.length) {\n return;\n }\n\n const missing = REACT_DEPENDENCIES.filter(name => !dependencies[name]);\n const message = `package \"${name}\" depends on ${present[0]} but not on ${formatList(missing)}`;\n const version = getMaxVersion(present.map(name => dependencies[name]));\n return {\n id: this.id,\n message,\n location: pkg.location,\n fixable: FixCategory.isolated,\n data: { missing, packageName: name, version },\n };\n }\n}\n"],"names":["RequireAllReactDependencies","REACT_DEPENDENCIES","id","run","config","packages","ruleConfig","rules","applyFilter","name","map","pkg","checkDependencies","filter","error","fix","data","project","missing","packageName","version","length","forEach","dependency","setVersion","key","dependencies","present","message","formatList","getMaxVersion","location","fixable","FixCategory","isolated"],"mappings":";;;;+BAWaA;;;eAAAA;;;uBAX4D;uBACN;AAEnE,MAAMC,qBAAqB;IAAC;IAAS;CAAY;AAQ1C,MAAMD;IACT,IAAIE,KAAK;QACL,OAAO;IACX;IAEAC,IAAI,EAAEC,MAAM,EAAEC,QAAQ,EAAW,EAAE;YACZD;QAAnB,MAAME,cAAaF,gBAAAA,OAAOG,KAAK,cAAZH,oCAAAA,aAAc,CAAC,IAAI,CAACF,EAAE,CAAC;QAC1C,OAAOM,IAAAA,kBAAW,EAACF,YAAYD,UAAU,CAAC,EAAEI,IAAI,EAAE,GAAKA,MAClDC,GAAG,CAACC,CAAAA,MAAO,IAAI,CAACC,iBAAiB,CAACD,MAClCE,MAAM,CAACC,CAAAA,QAAS,CAAC,CAACA;IAC3B;IAEAC,IAAI,EAAEC,IAAI,EAA2B,EAAEC,OAAgB,EAAE;QACrD,MAAM,EAAEC,OAAO,EAAEC,WAAW,EAAEC,OAAO,EAAE,GAAGJ,iBAAAA,kBAAAA,OAAQ,CAAC;QACnD,IAAI,CAAEE,CAAAA,CAAAA,oBAAAA,8BAAAA,QAASG,MAAM,KAAIF,eAAeC,OAAM,GAAI;YAC9C;QACJ;QAEAF,QAAQI,OAAO,CAACC,CAAAA;YACZC,IAAAA,iBAAU,EAAC;gBAAEP;gBAASE;gBAAaI;gBAAYH;gBAASK,KAAK;YAAe;QAChF;IACJ;IAEQb,kBAAkBD,GAAY,EAAuC;QACzE,MAAM,EAAEe,eAAe,CAAC,CAAC,EAAEjB,IAAI,EAAE,GAAGE;QACpC,MAAMgB,UAAU1B,mBAAmBY,MAAM,CAACJ,CAAAA,OAAQ,CAAC,CAACiB,YAAY,CAACjB,KAAK;QACtE,IAAIkB,QAAQN,MAAM,KAAK,KAAKM,QAAQN,MAAM,KAAKpB,mBAAmBoB,MAAM,EAAE;YACtE;QACJ;QAEA,MAAMH,UAAUjB,mBAAmBY,MAAM,CAACJ,CAAAA,OAAQ,CAACiB,YAAY,CAACjB,KAAK;QACrE,MAAMmB,UAAU,CAAC,SAAS,EAAEnB,KAAK,aAAa,EAAEkB,OAAO,CAAC,EAAE,CAAC,YAAY,EAAEE,IAAAA,iBAAU,EAACX,UAAU;QAC9F,MAAME,UAAUU,IAAAA,oBAAa,EAACH,QAAQjB,GAAG,CAACD,CAAAA,OAAQiB,YAAY,CAACjB,KAAK;QACpE,OAAO;YACHP,IAAI,IAAI,CAACA,EAAE;YACX0B;YACAG,UAAUpB,IAAIoB,QAAQ;YACtBC,SAASC,kBAAW,CAACC,QAAQ;YAC7BlB,MAAM;gBAAEE;gBAASC,aAAaV;gBAAMW;YAAQ;QAChD;IACJ;AACJ"}
@@ -0,0 +1,5 @@
1
+ import { RequireOneCollectionVersion } from './require-one-collection-version';
2
+ export declare class RequireOneReactVersion extends RequireOneCollectionVersion {
3
+ constructor();
4
+ }
5
+ //# sourceMappingURL=require-one-react-version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"require-one-react-version.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/review/rules/require-one-react-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAI/E,qBAAa,sBAAuB,SAAQ,2BAA2B;;CAItE"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "RequireOneReactVersion", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return RequireOneReactVersion;
9
+ }
10
+ });
11
+ const _requireonecollectionversion = require("./require-one-collection-version");
12
+ const REACT_PACKAGES = [
13
+ 'react',
14
+ 'react-dom'
15
+ ];
16
+ class RequireOneReactVersion extends _requireonecollectionversion.RequireOneCollectionVersion {
17
+ constructor(){
18
+ super({
19
+ name: 'react',
20
+ packages: REACT_PACKAGES
21
+ });
22
+ }
23
+ }
24
+
25
+ //# sourceMappingURL=require-one-react-version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/cli/commands/review/rules/require-one-react-version.ts"],"sourcesContent":["import { RequireOneCollectionVersion } from './require-one-collection-version';\n\nconst REACT_PACKAGES = ['react', 'react-dom'];\n\nexport class RequireOneReactVersion extends RequireOneCollectionVersion {\n constructor() {\n super({ name: 'react', packages: REACT_PACKAGES });\n }\n}\n"],"names":["RequireOneReactVersion","REACT_PACKAGES","RequireOneCollectionVersion","name","packages"],"mappings":";;;;+BAIaA;;;eAAAA;;;6CAJ+B;AAE5C,MAAMC,iBAAiB;IAAC;IAAS;CAAY;AAEtC,MAAMD,+BAA+BE,wDAA2B;IACnE,aAAc;QACV,KAAK,CAAC;YAAEC,MAAM;YAASC,UAAUH;QAAe;IACpD;AACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"require-one-uikit-version.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/review/rules/require-one-uikit-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAsB/E,qBAAa,sBAAuB,SAAQ,2BAA2B;;CAItE"}
1
+ {"version":3,"file":"require-one-uikit-version.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/review/rules/require-one-uikit-version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAuB/E,qBAAa,sBAAuB,SAAQ,2BAA2B;;CAItE"}
@@ -11,6 +11,7 @@ Object.defineProperty(exports, "RequireOneUikitVersion", {
11
11
  const _requireonecollectionversion = require("./require-one-collection-version");
12
12
  const UIKIT_PACKAGES = [
13
13
  '@servicetitan/ajax-handlers',
14
+ '@servicetitan/datadog-rum',
14
15
  '@servicetitan/error-boundary',
15
16
  '@servicetitan/eslint-config',
16
17
  '@servicetitan/eslint-plugin',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/cli/commands/review/rules/require-one-uikit-version.ts"],"sourcesContent":["import { RequireOneCollectionVersion } from './require-one-collection-version';\n\nconst UIKIT_PACKAGES = [\n '@servicetitan/ajax-handlers',\n '@servicetitan/error-boundary',\n '@servicetitan/eslint-config',\n '@servicetitan/eslint-plugin',\n '@servicetitan/eslint-plugin-folder-schema',\n '@servicetitan/folder-lint',\n '@servicetitan/hash-browser-router',\n '@servicetitan/ko-bridge',\n '@servicetitan/launchdarkly-service',\n '@servicetitan/lazy-module',\n '@servicetitan/log-service',\n '@servicetitan/react-ioc',\n '@servicetitan/restrict-imports',\n '@servicetitan/startup',\n '@servicetitan/stylelint-config',\n '@servicetitan/suppress-warnings',\n '@servicetitan/web-components',\n];\n\nexport class RequireOneUikitVersion extends RequireOneCollectionVersion {\n constructor() {\n super({ name: 'uikit', packages: UIKIT_PACKAGES });\n }\n}\n"],"names":["RequireOneUikitVersion","UIKIT_PACKAGES","RequireOneCollectionVersion","name","packages"],"mappings":";;;;+BAsBaA;;;eAAAA;;;6CAtB+B;AAE5C,MAAMC,iBAAiB;IACnB;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACH;AAEM,MAAMD,+BAA+BE,wDAA2B;IACnE,aAAc;QACV,KAAK,CAAC;YAAEC,MAAM;YAASC,UAAUH;QAAe;IACpD;AACJ"}
1
+ {"version":3,"sources":["../../../../../src/cli/commands/review/rules/require-one-uikit-version.ts"],"sourcesContent":["import { RequireOneCollectionVersion } from './require-one-collection-version';\n\nconst UIKIT_PACKAGES = [\n '@servicetitan/ajax-handlers',\n '@servicetitan/datadog-rum',\n '@servicetitan/error-boundary',\n '@servicetitan/eslint-config',\n '@servicetitan/eslint-plugin',\n '@servicetitan/eslint-plugin-folder-schema',\n '@servicetitan/folder-lint',\n '@servicetitan/hash-browser-router',\n '@servicetitan/ko-bridge',\n '@servicetitan/launchdarkly-service',\n '@servicetitan/lazy-module',\n '@servicetitan/log-service',\n '@servicetitan/react-ioc',\n '@servicetitan/restrict-imports',\n '@servicetitan/startup',\n '@servicetitan/stylelint-config',\n '@servicetitan/suppress-warnings',\n '@servicetitan/web-components',\n];\n\nexport class RequireOneUikitVersion extends RequireOneCollectionVersion {\n constructor() {\n super({ name: 'uikit', packages: UIKIT_PACKAGES });\n }\n}\n"],"names":["RequireOneUikitVersion","UIKIT_PACKAGES","RequireOneCollectionVersion","name","packages"],"mappings":";;;;+BAuBaA;;;eAAAA;;;6CAvB+B;AAE5C,MAAMC,iBAAiB;IACnB;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACH;AAEM,MAAMD,+BAA+BE,wDAA2B;IACnE,aAAc;QACV,KAAK,CAAC;YAAEC,MAAM;YAASC,UAAUH;QAAe;IACpD;AACJ"}
@@ -1,2 +1,3 @@
1
1
  export declare function formatDependsOn(dependents: string[], dependency: string): string;
2
+ export declare function formatList(items: string[]): string;
2
3
  //# sourceMappingURL=format-depends-on.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"format-depends-on.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/review/utils/format-depends-on.ts"],"names":[],"mappings":"AAEA,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,UAQvE"}
1
+ {"version":3,"file":"format-depends-on.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/review/utils/format-depends-on.ts"],"names":[],"mappings":"AAEA,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,UAKvE;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,UAIzC"}
@@ -2,20 +2,27 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- Object.defineProperty(exports, "formatDependsOn", {
6
- enumerable: true,
7
- get: function() {
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: Object.getOwnPropertyDescriptor(all, name).get
9
+ });
10
+ }
11
+ _export(exports, {
12
+ get formatDependsOn () {
8
13
  return formatDependsOn;
14
+ },
15
+ get formatList () {
16
+ return formatList;
9
17
  }
10
18
  });
11
19
  const collator = new Intl.Collator();
12
20
  function formatDependsOn(dependents, dependency) {
13
21
  const { length } = dependents;
14
- if (length === 1) {
15
- return `${dependents[0]} depends on ${dependency}`;
16
- }
17
- const sorted = dependents.toSorted((a, b)=>collator.compare(a, b));
18
- return `${sorted.slice(0, -1).join(', ')} and ${sorted[length - 1]} depend on ${dependency}`;
22
+ return length === 1 ? `${dependents[0]} depends on ${dependency}` : `${formatList(dependents.toSorted((a, b)=>collator.compare(a, b)))} depend on ${dependency}`;
23
+ }
24
+ function formatList(items) {
25
+ return items.length > 1 ? `${items.slice(0, -1).join(', ')} and ${items[items.length - 1]}` : items[0];
19
26
  }
20
27
 
21
28
  //# sourceMappingURL=format-depends-on.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/cli/commands/review/utils/format-depends-on.ts"],"sourcesContent":["const collator = new Intl.Collator();\n\nexport function formatDependsOn(dependents: string[], dependency: string) {\n const { length } = dependents;\n if (length === 1) {\n return `${dependents[0]} depends on ${dependency}`;\n }\n\n const sorted = dependents.toSorted((a, b) => collator.compare(a, b));\n return `${sorted.slice(0, -1).join(', ')} and ${sorted[length - 1]} depend on ${dependency}`;\n}\n"],"names":["formatDependsOn","collator","Intl","Collator","dependents","dependency","length","sorted","toSorted","a","b","compare","slice","join"],"mappings":";;;;+BAEgBA;;;eAAAA;;;AAFhB,MAAMC,WAAW,IAAIC,KAAKC,QAAQ;AAE3B,SAASH,gBAAgBI,UAAoB,EAAEC,UAAkB;IACpE,MAAM,EAAEC,MAAM,EAAE,GAAGF;IACnB,IAAIE,WAAW,GAAG;QACd,OAAO,GAAGF,UAAU,CAAC,EAAE,CAAC,YAAY,EAAEC,YAAY;IACtD;IAEA,MAAME,SAASH,WAAWI,QAAQ,CAAC,CAACC,GAAGC,IAAMT,SAASU,OAAO,CAACF,GAAGC;IACjE,OAAO,GAAGH,OAAOK,KAAK,CAAC,GAAG,CAAC,GAAGC,IAAI,CAAC,MAAM,KAAK,EAAEN,MAAM,CAACD,SAAS,EAAE,CAAC,WAAW,EAAED,YAAY;AAChG"}
1
+ {"version":3,"sources":["../../../../../src/cli/commands/review/utils/format-depends-on.ts"],"sourcesContent":["const collator = new Intl.Collator();\n\nexport function formatDependsOn(dependents: string[], dependency: string) {\n const { length } = dependents;\n return length === 1\n ? `${dependents[0]} depends on ${dependency}`\n : `${formatList(dependents.toSorted((a, b) => collator.compare(a, b)))} depend on ${dependency}`;\n}\n\nexport function formatList(items: string[]) {\n return items.length > 1\n ? `${items.slice(0, -1).join(', ')} and ${items[items.length - 1]}`\n : items[0];\n}\n"],"names":["formatDependsOn","formatList","collator","Intl","Collator","dependents","dependency","length","toSorted","a","b","compare","items","slice","join"],"mappings":";;;;;;;;;;;QAEgBA;eAAAA;;QAOAC;eAAAA;;;AAThB,MAAMC,WAAW,IAAIC,KAAKC,QAAQ;AAE3B,SAASJ,gBAAgBK,UAAoB,EAAEC,UAAkB;IACpE,MAAM,EAAEC,MAAM,EAAE,GAAGF;IACnB,OAAOE,WAAW,IACZ,GAAGF,UAAU,CAAC,EAAE,CAAC,YAAY,EAAEC,YAAY,GAC3C,GAAGL,WAAWI,WAAWG,QAAQ,CAAC,CAACC,GAAGC,IAAMR,SAASS,OAAO,CAACF,GAAGC,KAAK,WAAW,EAAEJ,YAAY;AACxG;AAEO,SAASL,WAAWW,KAAe;IACtC,OAAOA,MAAML,MAAM,GAAG,IAChB,GAAGK,MAAMC,KAAK,CAAC,GAAG,CAAC,GAAGC,IAAI,CAAC,MAAM,KAAK,EAAEF,KAAK,CAACA,MAAML,MAAM,GAAG,EAAE,EAAE,GACjEK,KAAK,CAAC,EAAE;AAClB"}
@@ -4,7 +4,8 @@ interface Params {
4
4
  packageName: string;
5
5
  dependency: string;
6
6
  version: string;
7
+ key?: string;
7
8
  }
8
- export declare function setVersion({ project: { packages }, packageName, dependency, version }: Params): void;
9
+ export declare function setVersion(params: Params): void;
9
10
  export {};
10
11
  //# sourceMappingURL=set-version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"set-version.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/review/utils/set-version.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGnC,UAAU,MAAM;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACnB;AACD,wBAAgB,UAAU,CAAC,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,MAAM,QAc7F"}
1
+ {"version":3,"file":"set-version.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/review/utils/set-version.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGnC,UAAU,MAAM;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,QAoBxC"}
@@ -16,12 +16,14 @@ function _interop_require_default(obj) {
16
16
  default: obj
17
17
  };
18
18
  }
19
- function setVersion({ project: { packages }, packageName, dependency, version }) {
19
+ function setVersion(params) {
20
+ const { project: { packages }, packageName, dependency, version } = params;
20
21
  const pkg = packages.find(({ name })=>name === packageName);
21
22
  if (!pkg) {
22
23
  return;
23
24
  }
24
- const key = (0, _getkey.getKey)(pkg, dependency);
25
+ var _params_key;
26
+ const key = (_params_key = params.key) !== null && _params_key !== void 0 ? _params_key : (0, _getkey.getKey)(pkg, dependency);
25
27
  if (!key) {
26
28
  return;
27
29
  }