@xylabs/ts-scripts-yarn3 3.15.16 → 4.0.0-rc.4

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 (335) hide show
  1. package/dist/actions/index.mjs +55 -186
  2. package/dist/actions/index.mjs.map +1 -1
  3. package/dist/actions/package/compile/compile.mjs +55 -186
  4. package/dist/actions/package/compile/compile.mjs.map +1 -1
  5. package/dist/actions/package/compile/index.mjs +55 -186
  6. package/dist/actions/package/compile/index.mjs.map +1 -1
  7. package/dist/actions/package/compile/packageCompileTsc.mjs +1 -1
  8. package/dist/actions/package/compile/packageCompileTsc.mjs.map +1 -1
  9. package/dist/actions/package/compile/packageCompileTscTypes.mjs +2 -36
  10. package/dist/actions/package/compile/packageCompileTscTypes.mjs.map +1 -1
  11. package/dist/actions/package/compile/packageCompileTsup.mjs +55 -186
  12. package/dist/actions/package/compile/packageCompileTsup.mjs.map +1 -1
  13. package/dist/actions/package/index.mjs +55 -186
  14. package/dist/actions/package/index.mjs.map +1 -1
  15. package/dist/actions/package/recompile.mjs +55 -186
  16. package/dist/actions/package/recompile.mjs.map +1 -1
  17. package/dist/bin/package/compile-only.mjs +55 -186
  18. package/dist/bin/package/compile-only.mjs.map +1 -1
  19. package/dist/bin/package/compile-tsup.mjs +55 -186
  20. package/dist/bin/package/compile-tsup.mjs.map +1 -1
  21. package/dist/bin/package/compile.mjs +55 -186
  22. package/dist/bin/package/compile.mjs.map +1 -1
  23. package/dist/bin/package/recompile.mjs +55 -186
  24. package/dist/bin/package/recompile.mjs.map +1 -1
  25. package/dist/index.mjs +55 -186
  26. package/dist/index.mjs.map +1 -1
  27. package/package.json +9 -19
  28. package/src/actions/package/compile/XyConfig.ts +2 -2
  29. package/src/actions/package/compile/packageCompileTsc.ts +1 -1
  30. package/src/actions/package/compile/packageCompileTscTypes.ts +3 -8
  31. package/src/actions/package/compile/packageCompileTsup.ts +51 -121
  32. package/tsup.config.ts +1 -1
  33. package/dist/actions/build.cjs +0 -208
  34. package/dist/actions/build.cjs.map +0 -1
  35. package/dist/actions/clean-docs.cjs +0 -74
  36. package/dist/actions/clean-docs.cjs.map +0 -1
  37. package/dist/actions/clean-eslint.cjs +0 -53
  38. package/dist/actions/clean-eslint.cjs.map +0 -1
  39. package/dist/actions/clean-jest.cjs +0 -147
  40. package/dist/actions/clean-jest.cjs.map +0 -1
  41. package/dist/actions/clean.cjs +0 -192
  42. package/dist/actions/clean.cjs.map +0 -1
  43. package/dist/actions/compile.cjs +0 -217
  44. package/dist/actions/compile.cjs.map +0 -1
  45. package/dist/actions/copy-assets.cjs +0 -121
  46. package/dist/actions/copy-assets.cjs.map +0 -1
  47. package/dist/actions/cycle.cjs +0 -156
  48. package/dist/actions/cycle.cjs.map +0 -1
  49. package/dist/actions/dead.cjs +0 -148
  50. package/dist/actions/dead.cjs.map +0 -1
  51. package/dist/actions/deploy-major.cjs +0 -160
  52. package/dist/actions/deploy-major.cjs.map +0 -1
  53. package/dist/actions/deploy-minor.cjs +0 -160
  54. package/dist/actions/deploy-minor.cjs.map +0 -1
  55. package/dist/actions/deploy-next.cjs +0 -160
  56. package/dist/actions/deploy-next.cjs.map +0 -1
  57. package/dist/actions/deploy.cjs +0 -160
  58. package/dist/actions/deploy.cjs.map +0 -1
  59. package/dist/actions/deps.cjs +0 -205
  60. package/dist/actions/deps.cjs.map +0 -1
  61. package/dist/actions/dupdeps.cjs +0 -226
  62. package/dist/actions/dupdeps.cjs.map +0 -1
  63. package/dist/actions/fix.cjs +0 -149
  64. package/dist/actions/fix.cjs.map +0 -1
  65. package/dist/actions/gen-docs.cjs +0 -186
  66. package/dist/actions/gen-docs.cjs.map +0 -1
  67. package/dist/actions/gitignore-gen.cjs +0 -138
  68. package/dist/actions/gitignore-gen.cjs.map +0 -1
  69. package/dist/actions/gitlint-fix.cjs +0 -69
  70. package/dist/actions/gitlint-fix.cjs.map +0 -1
  71. package/dist/actions/gitlint.cjs +0 -84
  72. package/dist/actions/gitlint.cjs.map +0 -1
  73. package/dist/actions/index.cjs +0 -2600
  74. package/dist/actions/index.cjs.map +0 -1
  75. package/dist/actions/license.cjs +0 -133
  76. package/dist/actions/license.cjs.map +0 -1
  77. package/dist/actions/lint-clean.cjs +0 -227
  78. package/dist/actions/lint-clean.cjs.map +0 -1
  79. package/dist/actions/lint-profile.cjs +0 -153
  80. package/dist/actions/lint-profile.cjs.map +0 -1
  81. package/dist/actions/lint.cjs +0 -217
  82. package/dist/actions/lint.cjs.map +0 -1
  83. package/dist/actions/npmignore-gen.cjs +0 -138
  84. package/dist/actions/npmignore-gen.cjs.map +0 -1
  85. package/dist/actions/package/clean-outputs.cjs +0 -56
  86. package/dist/actions/package/clean-outputs.cjs.map +0 -1
  87. package/dist/actions/package/clean-typescript.cjs +0 -56
  88. package/dist/actions/package/clean-typescript.cjs.map +0 -1
  89. package/dist/actions/package/clean.cjs +0 -83
  90. package/dist/actions/package/clean.cjs.map +0 -1
  91. package/dist/actions/package/compile/XyConfig.cjs +0 -19
  92. package/dist/actions/package/compile/XyConfig.cjs.map +0 -1
  93. package/dist/actions/package/compile/buildEntries.cjs +0 -68
  94. package/dist/actions/package/compile/buildEntries.cjs.map +0 -1
  95. package/dist/actions/package/compile/compile.cjs +0 -565
  96. package/dist/actions/package/compile/compile.cjs.map +0 -1
  97. package/dist/actions/package/compile/copyTypeFiles.cjs +0 -60
  98. package/dist/actions/package/compile/copyTypeFiles.cjs.map +0 -1
  99. package/dist/actions/package/compile/getCompilerOptions.cjs +0 -67
  100. package/dist/actions/package/compile/getCompilerOptions.cjs.map +0 -1
  101. package/dist/actions/package/compile/index.cjs +0 -571
  102. package/dist/actions/package/compile/index.cjs.map +0 -1
  103. package/dist/actions/package/compile/inputs.cjs +0 -79
  104. package/dist/actions/package/compile/inputs.cjs.map +0 -1
  105. package/dist/actions/package/compile/packageCompileTsc.cjs +0 -164
  106. package/dist/actions/package/compile/packageCompileTsc.cjs.map +0 -1
  107. package/dist/actions/package/compile/packageCompileTscTypes.cjs +0 -199
  108. package/dist/actions/package/compile/packageCompileTscTypes.cjs.map +0 -1
  109. package/dist/actions/package/compile/packageCompileTsup.cjs +0 -521
  110. package/dist/actions/package/compile/packageCompileTsup.cjs.map +0 -1
  111. package/dist/actions/package/copy-assets.cjs +0 -88
  112. package/dist/actions/package/copy-assets.cjs.map +0 -1
  113. package/dist/actions/package/deps.cjs +0 -214
  114. package/dist/actions/package/deps.cjs.map +0 -1
  115. package/dist/actions/package/gen-docs.cjs +0 -148
  116. package/dist/actions/package/gen-docs.cjs.map +0 -1
  117. package/dist/actions/package/index.cjs +0 -968
  118. package/dist/actions/package/index.cjs.map +0 -1
  119. package/dist/actions/package/publint.cjs +0 -80
  120. package/dist/actions/package/publint.cjs.map +0 -1
  121. package/dist/actions/package/recompile.cjs +0 -617
  122. package/dist/actions/package/recompile.cjs.map +0 -1
  123. package/dist/actions/publint.cjs +0 -237
  124. package/dist/actions/publint.cjs.map +0 -1
  125. package/dist/actions/rebuild.cjs +0 -148
  126. package/dist/actions/rebuild.cjs.map +0 -1
  127. package/dist/actions/recompile.cjs +0 -232
  128. package/dist/actions/recompile.cjs.map +0 -1
  129. package/dist/actions/reinstall.cjs +0 -183
  130. package/dist/actions/reinstall.cjs.map +0 -1
  131. package/dist/actions/relint.cjs +0 -185
  132. package/dist/actions/relint.cjs.map +0 -1
  133. package/dist/actions/retest.cjs +0 -154
  134. package/dist/actions/retest.cjs.map +0 -1
  135. package/dist/actions/sonar.cjs +0 -149
  136. package/dist/actions/sonar.cjs.map +0 -1
  137. package/dist/actions/statics.cjs +0 -234
  138. package/dist/actions/statics.cjs.map +0 -1
  139. package/dist/actions/test.cjs +0 -147
  140. package/dist/actions/test.cjs.map +0 -1
  141. package/dist/actions/up.cjs +0 -144
  142. package/dist/actions/up.cjs.map +0 -1
  143. package/dist/actions/updo.cjs +0 -152
  144. package/dist/actions/updo.cjs.map +0 -1
  145. package/dist/actions/upplug.cjs +0 -172
  146. package/dist/actions/upplug.cjs.map +0 -1
  147. package/dist/actions/upyarn.cjs +0 -148
  148. package/dist/actions/upyarn.cjs.map +0 -1
  149. package/dist/actions/yarn3only.cjs +0 -106
  150. package/dist/actions/yarn3only.cjs.map +0 -1
  151. package/dist/bin/build.cjs +0 -39
  152. package/dist/bin/build.cjs.map +0 -1
  153. package/dist/bin/clean.cjs +0 -39
  154. package/dist/bin/clean.cjs.map +0 -1
  155. package/dist/bin/compile-only.cjs +0 -39
  156. package/dist/bin/compile-only.cjs.map +0 -1
  157. package/dist/bin/compile.cjs +0 -39
  158. package/dist/bin/compile.cjs.map +0 -1
  159. package/dist/bin/cycle.cjs +0 -39
  160. package/dist/bin/cycle.cjs.map +0 -1
  161. package/dist/bin/dead.cjs +0 -39
  162. package/dist/bin/dead.cjs.map +0 -1
  163. package/dist/bin/deploy-major.cjs +0 -39
  164. package/dist/bin/deploy-major.cjs.map +0 -1
  165. package/dist/bin/deploy-minor.cjs +0 -39
  166. package/dist/bin/deploy-minor.cjs.map +0 -1
  167. package/dist/bin/deploy-next.cjs +0 -39
  168. package/dist/bin/deploy-next.cjs.map +0 -1
  169. package/dist/bin/deploy.cjs +0 -39
  170. package/dist/bin/deploy.cjs.map +0 -1
  171. package/dist/bin/deps.cjs +0 -39
  172. package/dist/bin/deps.cjs.map +0 -1
  173. package/dist/bin/fix.cjs +0 -39
  174. package/dist/bin/fix.cjs.map +0 -1
  175. package/dist/bin/gen-docs.cjs +0 -39
  176. package/dist/bin/gen-docs.cjs.map +0 -1
  177. package/dist/bin/gitlint-fix.cjs +0 -39
  178. package/dist/bin/gitlint-fix.cjs.map +0 -1
  179. package/dist/bin/gitlint.cjs +0 -39
  180. package/dist/bin/gitlint.cjs.map +0 -1
  181. package/dist/bin/license.cjs +0 -39
  182. package/dist/bin/license.cjs.map +0 -1
  183. package/dist/bin/lint-clean.cjs +0 -39
  184. package/dist/bin/lint-clean.cjs.map +0 -1
  185. package/dist/bin/lint-fast.cjs +0 -39
  186. package/dist/bin/lint-fast.cjs.map +0 -1
  187. package/dist/bin/lint-profile.cjs +0 -39
  188. package/dist/bin/lint-profile.cjs.map +0 -1
  189. package/dist/bin/lint.cjs +0 -39
  190. package/dist/bin/lint.cjs.map +0 -1
  191. package/dist/bin/package/clean-outputs.cjs +0 -51
  192. package/dist/bin/package/clean-outputs.cjs.map +0 -1
  193. package/dist/bin/package/clean-typescript.cjs +0 -51
  194. package/dist/bin/package/clean-typescript.cjs.map +0 -1
  195. package/dist/bin/package/clean.cjs +0 -76
  196. package/dist/bin/package/clean.cjs.map +0 -1
  197. package/dist/bin/package/compile-only.cjs +0 -564
  198. package/dist/bin/package/compile-only.cjs.map +0 -1
  199. package/dist/bin/package/compile-tsup.cjs +0 -519
  200. package/dist/bin/package/compile-tsup.cjs.map +0 -1
  201. package/dist/bin/package/compile.cjs +0 -567
  202. package/dist/bin/package/compile.cjs.map +0 -1
  203. package/dist/bin/package/copy-assets-cjs.cjs +0 -86
  204. package/dist/bin/package/copy-assets-cjs.cjs.map +0 -1
  205. package/dist/bin/package/copy-assets-esm.cjs +0 -86
  206. package/dist/bin/package/copy-assets-esm.cjs.map +0 -1
  207. package/dist/bin/package/deps.cjs +0 -208
  208. package/dist/bin/package/deps.cjs.map +0 -1
  209. package/dist/bin/package/gen-docs.cjs +0 -143
  210. package/dist/bin/package/gen-docs.cjs.map +0 -1
  211. package/dist/bin/package/publint.cjs +0 -77
  212. package/dist/bin/package/publint.cjs.map +0 -1
  213. package/dist/bin/package/recompile.cjs +0 -611
  214. package/dist/bin/package/recompile.cjs.map +0 -1
  215. package/dist/bin/publint.cjs +0 -39
  216. package/dist/bin/publint.cjs.map +0 -1
  217. package/dist/bin/rebuild.cjs +0 -39
  218. package/dist/bin/rebuild.cjs.map +0 -1
  219. package/dist/bin/recompile.cjs +0 -39
  220. package/dist/bin/recompile.cjs.map +0 -1
  221. package/dist/bin/reinstall.cjs +0 -39
  222. package/dist/bin/reinstall.cjs.map +0 -1
  223. package/dist/bin/relint.cjs +0 -39
  224. package/dist/bin/relint.cjs.map +0 -1
  225. package/dist/bin/sonar.cjs +0 -39
  226. package/dist/bin/sonar.cjs.map +0 -1
  227. package/dist/bin/test.cjs +0 -39
  228. package/dist/bin/test.cjs.map +0 -1
  229. package/dist/bin/up.cjs +0 -39
  230. package/dist/bin/up.cjs.map +0 -1
  231. package/dist/bin/updo.cjs +0 -39
  232. package/dist/bin/updo.cjs.map +0 -1
  233. package/dist/bin/upplug.cjs +0 -39
  234. package/dist/bin/upplug.cjs.map +0 -1
  235. package/dist/bin/upyarn.cjs +0 -39
  236. package/dist/bin/upyarn.cjs.map +0 -1
  237. package/dist/bin/xy-ts.cjs +0 -1890
  238. package/dist/bin/xy-ts.cjs.map +0 -1
  239. package/dist/bin/xy.cjs +0 -1890
  240. package/dist/bin/xy.cjs.map +0 -1
  241. package/dist/bin/yarn3only.cjs +0 -39
  242. package/dist/bin/yarn3only.cjs.map +0 -1
  243. package/dist/index.cjs +0 -3129
  244. package/dist/index.cjs.map +0 -1
  245. package/dist/index.d.cts +0 -359
  246. package/dist/lib/checkResult.cjs +0 -52
  247. package/dist/lib/checkResult.cjs.map +0 -1
  248. package/dist/lib/createBuildConfig.cjs +0 -93
  249. package/dist/lib/createBuildConfig.cjs.map +0 -1
  250. package/dist/lib/defaultBuildConfig.cjs +0 -52
  251. package/dist/lib/defaultBuildConfig.cjs.map +0 -1
  252. package/dist/lib/dependencies/DuplicateDetector.cjs +0 -124
  253. package/dist/lib/dependencies/DuplicateDetector.cjs.map +0 -1
  254. package/dist/lib/dependencies/detectDuplicateDependencies.cjs +0 -207
  255. package/dist/lib/dependencies/detectDuplicateDependencies.cjs.map +0 -1
  256. package/dist/lib/dependencies/index.cjs +0 -211
  257. package/dist/lib/dependencies/index.cjs.map +0 -1
  258. package/dist/lib/file/ReadFileSyncOptions.cjs +0 -33
  259. package/dist/lib/file/ReadFileSyncOptions.cjs.map +0 -1
  260. package/dist/lib/file/constants.cjs +0 -34
  261. package/dist/lib/file/constants.cjs.map +0 -1
  262. package/dist/lib/file/fileLines.cjs +0 -58
  263. package/dist/lib/file/fileLines.cjs.map +0 -1
  264. package/dist/lib/file/index.cjs +0 -74
  265. package/dist/lib/file/index.cjs.map +0 -1
  266. package/dist/lib/file/tryReadFileSync.cjs +0 -42
  267. package/dist/lib/file/tryReadFileSync.cjs.map +0 -1
  268. package/dist/lib/generateIgnoreFiles.cjs +0 -132
  269. package/dist/lib/generateIgnoreFiles.cjs.map +0 -1
  270. package/dist/lib/index.cjs +0 -614
  271. package/dist/lib/index.cjs.map +0 -1
  272. package/dist/lib/jsonFormatters.cjs +0 -37
  273. package/dist/lib/jsonFormatters.cjs.map +0 -1
  274. package/dist/lib/loadConfig.cjs +0 -59
  275. package/dist/lib/loadConfig.cjs.map +0 -1
  276. package/dist/lib/parsedPackageJSON.cjs +0 -37
  277. package/dist/lib/parsedPackageJSON.cjs.map +0 -1
  278. package/dist/lib/processEx.cjs +0 -72
  279. package/dist/lib/processEx.cjs.map +0 -1
  280. package/dist/lib/runSteps.cjs +0 -134
  281. package/dist/lib/runSteps.cjs.map +0 -1
  282. package/dist/lib/runStepsAsync.cjs +0 -147
  283. package/dist/lib/runStepsAsync.cjs.map +0 -1
  284. package/dist/lib/runXy.cjs +0 -150
  285. package/dist/lib/runXy.cjs.map +0 -1
  286. package/dist/lib/runXyWithWarning.cjs +0 -49
  287. package/dist/lib/runXyWithWarning.cjs.map +0 -1
  288. package/dist/lib/safeExit.cjs +0 -100
  289. package/dist/lib/safeExit.cjs.map +0 -1
  290. package/dist/lib/string/empty.cjs +0 -35
  291. package/dist/lib/string/empty.cjs.map +0 -1
  292. package/dist/lib/string/index.cjs +0 -45
  293. package/dist/lib/string/index.cjs.map +0 -1
  294. package/dist/lib/string/union.cjs +0 -35
  295. package/dist/lib/string/union.cjs.map +0 -1
  296. package/dist/lib/withErrnoException.cjs +0 -41
  297. package/dist/lib/withErrnoException.cjs.map +0 -1
  298. package/dist/lib/withError.cjs +0 -34
  299. package/dist/lib/withError.cjs.map +0 -1
  300. package/dist/lib/yarn/index.cjs +0 -93
  301. package/dist/lib/yarn/index.cjs.map +0 -1
  302. package/dist/lib/yarn/isYarnVersionOrGreater.cjs +0 -52
  303. package/dist/lib/yarn/isYarnVersionOrGreater.cjs.map +0 -1
  304. package/dist/lib/yarn/workspace/Workspace.cjs +0 -19
  305. package/dist/lib/yarn/workspace/Workspace.cjs.map +0 -1
  306. package/dist/lib/yarn/workspace/index.cjs +0 -60
  307. package/dist/lib/yarn/workspace/index.cjs.map +0 -1
  308. package/dist/lib/yarn/workspace/yarnWorkspace.cjs +0 -58
  309. package/dist/lib/yarn/workspace/yarnWorkspace.cjs.map +0 -1
  310. package/dist/lib/yarn/workspace/yarnWorkspaces.cjs +0 -49
  311. package/dist/lib/yarn/workspace/yarnWorkspaces.cjs.map +0 -1
  312. package/dist/lib/yarn/yarnInitCwd.cjs +0 -35
  313. package/dist/lib/yarn/yarnInitCwd.cjs.map +0 -1
  314. package/dist/loadPackageConfig.cjs +0 -39
  315. package/dist/loadPackageConfig.cjs.map +0 -1
  316. package/dist/types.d.cjs +0 -2
  317. package/dist/types.d.cjs.map +0 -1
  318. package/dist/xy/index.cjs +0 -1909
  319. package/dist/xy/index.cjs.map +0 -1
  320. package/dist/xy/param.cjs +0 -36
  321. package/dist/xy/param.cjs.map +0 -1
  322. package/dist/xy/xy.cjs +0 -1895
  323. package/dist/xy/xy.cjs.map +0 -1
  324. package/dist/xy/xyBuildCommands.cjs +0 -595
  325. package/dist/xy/xyBuildCommands.cjs.map +0 -1
  326. package/dist/xy/xyCommonCommands.cjs +0 -723
  327. package/dist/xy/xyCommonCommands.cjs.map +0 -1
  328. package/dist/xy/xyDeployCommands.cjs +0 -263
  329. package/dist/xy/xyDeployCommands.cjs.map +0 -1
  330. package/dist/xy/xyInstallCommands.cjs +0 -508
  331. package/dist/xy/xyInstallCommands.cjs.map +0 -1
  332. package/dist/xy/xyLintCommands.cjs +0 -466
  333. package/dist/xy/xyLintCommands.cjs.map +0 -1
  334. package/dist/xy/xyParseOptions.cjs +0 -84
  335. package/dist/xy/xyParseOptions.cjs.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/actions/relint.ts","../../src/lib/checkResult.ts","../../src/lib/processEx.ts","../../src/lib/withError.ts","../../src/lib/withErrnoException.ts","../../src/lib/safeExit.ts","../../src/lib/yarn/workspace/yarnWorkspaces.ts","../../src/lib/runSteps.ts"],"sourcesContent":["import { rmSync } from 'node:fs'\n\nimport { runSteps, yarnWorkspaces } from '../lib/index.ts'\n\nexport const relint = () => {\n console.log('Relint - Cleaning [.eslintcache]')\n const workspaces = yarnWorkspaces()\n const result = workspaces\n .map(({ location, name }) => {\n const dist = `${location}/.eslintcache`\n try {\n rmSync(dist, { force: true, recursive: true })\n return 0\n } catch (ex) {\n const error = ex as Error\n console.error(`Relint - Cleaning [.eslintcache] Failed [${name}, ${error.message}]`)\n return 1\n }\n })\n // eslint-disable-next-line unicorn/no-array-reduce\n .reduce((prev, result) => prev || result, 0)\n return result || runSteps('Relint', [['yarn', ['eslint', '.', '--cache']]])\n}\n","import chalk from 'chalk'\n\nexport const checkResult = (name: string, result: number, level: 'error' | 'warn' = 'error', exitOnFail = false) => {\n if (result) {\n const exiting = exitOnFail ? '[Exiting Process]' : '[Continuing]'\n const chalkFunc = level === 'error' ? chalk.red : chalk.yellow\n console[level](chalkFunc(`${name} had ${result} failures ${exiting}`))\n if (exitOnFail) {\n process.exit(result)\n }\n }\n}\n","import chalk from 'chalk'\n\nimport { withErrnoException } from './withErrnoException.ts'\nimport { withError } from './withError.ts'\n\nexport const processEx = (ex: unknown) => {\n const error = typeof ex === 'string' ? new Error(ex) : ex\n const exitCode\n = withErrnoException(error, (error) => {\n if (error.code === 'ENOENT') {\n console.error(chalk.red(`'${error.path}' not found.`))\n } else {\n console.error(chalk.red(`Errno: ${error.code}`))\n }\n return error.errno ?? -1\n })\n ?? withError(error, (error) => {\n console.error(chalk.red(`${error.name}: ${error.message}`))\n return -1\n })\n ?? (() => {\n console.error(chalk.red(`Unexpected Error: ${JSON.stringify(ex, null, 2)}`))\n return -1\n })()\n // This allows us to use a previously set exit code\n process.exit(process.exitCode ?? exitCode)\n}\n","export const withError = <T extends Error = Error>(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ex: any,\n closure: (error: T) => number,\n predicate = (ex: T) => ex.name !== undefined && ex.message !== undefined,\n) => {\n return predicate(ex as T) ? closure(ex as T) : undefined\n}\n","import { withError } from './withError.ts'\n\nexport const withErrnoException = <T extends NodeJS.ErrnoException = NodeJS.ErrnoException>(ex: unknown, closure: (error: T) => number) => {\n return withError<T>(ex, closure, (ex: unknown) => (ex as NodeJS.ErrnoException).errno !== undefined)\n}\n","/** Catch child process a crash and returns the code */\n\nimport { processEx } from './processEx.ts'\n\nconst safeExit = (func: () => number, exitOnFail = true): number => {\n try {\n const result = func()\n if (result && exitOnFail) {\n process.exit(result)\n }\n return result\n } catch (ex) {\n return processEx(ex)\n }\n}\n\nconst safeExitAsync = async (func: () => Promise<number>, exitOnFail = true): Promise<number> => {\n try {\n const result = await func()\n if (result && exitOnFail) {\n process.exit(result)\n }\n return result\n } catch (ex) {\n return processEx(ex)\n }\n}\n\nexport { safeExit, safeExitAsync }\n","import { spawnSync } from 'node:child_process'\n\nimport { Workspace } from './Workspace.ts'\n\nexport const yarnWorkspaces = (): Workspace[] => {\n const result = spawnSync('yarn', ['workspaces', 'list', '--json', '--recursive'], { encoding: 'utf8', shell: true })\n if (result.error) {\n throw result.error\n }\n return (\n result.stdout\n .toString()\n // NOTE: This probably doesn't work on Windows\n // TODO: Replace /r/n with /n first\n .split('\\n')\n .slice(0, -1)\n .map((item) => {\n return JSON.parse(item)\n })\n )\n}\n","import { spawnSync, SpawnSyncOptionsWithBufferEncoding } from 'node:child_process'\nimport { existsSync } from 'node:fs'\n\nimport chalk from 'chalk'\n\nimport { checkResult } from './checkResult.ts'\nimport { safeExit } from './safeExit.ts'\n\nexport type ScriptStep =\n | [/* command */ 'yarn' | 'node' | 'ts-node-script' | 'tsc' | 'jest', /* arg */ string | string[]]\n | [/* command */ string, /* arg */ string | string[], /* config */ SpawnSyncOptionsWithBufferEncoding]\n\nexport const runSteps = (name: string, steps: ScriptStep[], exitOnFail = true, messages?: string[]): number => {\n return safeExit(() => {\n const pkgName = process.env.npm_package_name\n console.log(chalk.green(`${name} [${pkgName}]`))\n let totalStatus = 0\n for (const [i, [command, args, config]] of steps.entries()) {\n if (messages?.[i]) {\n console.log(chalk.gray(messages?.[i]))\n }\n const argList = Array.isArray(args) ? args : args.split(' ')\n if (command === 'node' && !existsSync(argList[0])) {\n throw new Error(`File not found [${argList[0]}]`)\n }\n const status\n = spawnSync(command, Array.isArray(args) ? args : args.split(' '), {\n ...config,\n encoding: 'utf8',\n env: { FORCE_COLOR: '3', ...process.env },\n shell: true,\n stdio: 'inherit',\n }).status ?? 0\n checkResult(name, status, 'error', exitOnFail)\n totalStatus += status ?? 0\n }\n return totalStatus\n }, !!exitOnFail)\n}\n"],"mappings":"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","names":["import_node_fs","checkResult","name","result","level","exitOnFail","exiting","chalkFunc","chalk","red","yellow","console","process","exit","import_chalk","withError","ex","closure","predicate","name","undefined","message","withErrnoException","ex","closure","withError","errno","undefined","processEx","ex","error","Error","exitCode","withErrnoException","code","console","chalk","red","path","errno","withError","name","message","JSON","stringify","process","exit","safeExit","func","exitOnFail","result","process","exit","ex","processEx","yarnWorkspaces","result","spawnSync","encoding","shell","error","stdout","toString","split","slice","map","item","JSON","parse","import_node_child_process","import_chalk","runSteps","name","steps","exitOnFail","messages","safeExit","pkgName","process","env","npm_package_name","console","log","chalk","green","totalStatus","i","command","args","config","entries","gray","argList","Array","isArray","split","existsSync","Error","status","spawnSync","encoding","FORCE_COLOR","shell","stdio","checkResult","relint","console","log","workspaces","yarnWorkspaces","result","map","location","name","dist","rmSync","force","recursive","ex","error","message","reduce","prev","runSteps"]}
@@ -1,154 +0,0 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
9
- var __export = (target, all) => {
10
- for (var name in all)
11
- __defProp(target, name, { get: all[name], enumerable: true });
12
- };
13
- var __copyProps = (to, from, except, desc) => {
14
- if (from && typeof from === "object" || typeof from === "function") {
15
- for (let key of __getOwnPropNames(from))
16
- if (!__hasOwnProp.call(to, key) && key !== except)
17
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
- }
19
- return to;
20
- };
21
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
- // If the importer is in node compatibility mode or this is not an ESM
23
- // file that has been converted to a CommonJS file using a Babel-
24
- // compatible transform (i.e. "__esModule" has not been set), then set
25
- // "default" to the CommonJS "module.exports" for node compatibility.
26
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
- mod
28
- ));
29
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
-
31
- // src/actions/retest.ts
32
- var retest_exports = {};
33
- __export(retest_exports, {
34
- retest: () => retest
35
- });
36
- module.exports = __toCommonJS(retest_exports);
37
-
38
- // src/lib/checkResult.ts
39
- var import_chalk = __toESM(require("chalk"), 1);
40
- var checkResult = /* @__PURE__ */ __name((name, result, level = "error", exitOnFail = false) => {
41
- if (result) {
42
- const exiting = exitOnFail ? "[Exiting Process]" : "[Continuing]";
43
- const chalkFunc = level === "error" ? import_chalk.default.red : import_chalk.default.yellow;
44
- console[level](chalkFunc(`${name} had ${result} failures ${exiting}`));
45
- if (exitOnFail) {
46
- process.exit(result);
47
- }
48
- }
49
- }, "checkResult");
50
-
51
- // src/lib/processEx.ts
52
- var import_chalk2 = __toESM(require("chalk"), 1);
53
-
54
- // src/lib/withError.ts
55
- var withError = /* @__PURE__ */ __name((ex, closure, predicate = (ex2) => ex2.name !== void 0 && ex2.message !== void 0) => {
56
- return predicate(ex) ? closure(ex) : void 0;
57
- }, "withError");
58
-
59
- // src/lib/withErrnoException.ts
60
- var withErrnoException = /* @__PURE__ */ __name((ex, closure) => {
61
- return withError(ex, closure, (ex2) => ex2.errno !== void 0);
62
- }, "withErrnoException");
63
-
64
- // src/lib/processEx.ts
65
- var processEx = /* @__PURE__ */ __name((ex) => {
66
- const error = typeof ex === "string" ? new Error(ex) : ex;
67
- const exitCode = withErrnoException(error, (error2) => {
68
- if (error2.code === "ENOENT") {
69
- console.error(import_chalk2.default.red(`'${error2.path}' not found.`));
70
- } else {
71
- console.error(import_chalk2.default.red(`Errno: ${error2.code}`));
72
- }
73
- return error2.errno ?? -1;
74
- }) ?? withError(error, (error2) => {
75
- console.error(import_chalk2.default.red(`${error2.name}: ${error2.message}`));
76
- return -1;
77
- }) ?? (() => {
78
- console.error(import_chalk2.default.red(`Unexpected Error: ${JSON.stringify(ex, null, 2)}`));
79
- return -1;
80
- })();
81
- process.exit(process.exitCode ?? exitCode);
82
- }, "processEx");
83
-
84
- // src/lib/safeExit.ts
85
- var safeExit = /* @__PURE__ */ __name((func, exitOnFail = true) => {
86
- try {
87
- const result = func();
88
- if (result && exitOnFail) {
89
- process.exit(result);
90
- }
91
- return result;
92
- } catch (ex) {
93
- return processEx(ex);
94
- }
95
- }, "safeExit");
96
-
97
- // src/lib/runSteps.ts
98
- var import_node_child_process = require("child_process");
99
- var import_node_fs = require("fs");
100
- var import_chalk3 = __toESM(require("chalk"), 1);
101
- var runSteps = /* @__PURE__ */ __name((name, steps, exitOnFail = true, messages) => {
102
- return safeExit(() => {
103
- const pkgName = process.env.npm_package_name;
104
- console.log(import_chalk3.default.green(`${name} [${pkgName}]`));
105
- let totalStatus = 0;
106
- for (const [i, [command, args, config]] of steps.entries()) {
107
- if (messages?.[i]) {
108
- console.log(import_chalk3.default.gray(messages?.[i]));
109
- }
110
- const argList = Array.isArray(args) ? args : args.split(" ");
111
- if (command === "node" && !(0, import_node_fs.existsSync)(argList[0])) {
112
- throw new Error(`File not found [${argList[0]}]`);
113
- }
114
- const status = (0, import_node_child_process.spawnSync)(command, Array.isArray(args) ? args : args.split(" "), {
115
- ...config,
116
- encoding: "utf8",
117
- env: {
118
- FORCE_COLOR: "3",
119
- ...process.env
120
- },
121
- shell: true,
122
- stdio: "inherit"
123
- }).status ?? 0;
124
- checkResult(name, status, "error", exitOnFail);
125
- totalStatus += status ?? 0;
126
- }
127
- return totalStatus;
128
- }, !!exitOnFail);
129
- }, "runSteps");
130
-
131
- // src/actions/retest.ts
132
- var retest = /* @__PURE__ */ __name(() => {
133
- return runSteps("Test", [
134
- [
135
- "yarn",
136
- [
137
- "jest",
138
- "--clearCache"
139
- ]
140
- ],
141
- [
142
- "yarn",
143
- [
144
- "jest",
145
- "."
146
- ]
147
- ]
148
- ]);
149
- }, "retest");
150
- // Annotate the CommonJS export names for ESM import in node:
151
- 0 && (module.exports = {
152
- retest
153
- });
154
- //# sourceMappingURL=retest.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/actions/retest.ts","../../src/lib/checkResult.ts","../../src/lib/processEx.ts","../../src/lib/withError.ts","../../src/lib/withErrnoException.ts","../../src/lib/safeExit.ts","../../src/lib/runSteps.ts"],"sourcesContent":["import { runSteps } from '../lib/index.ts'\n\nexport const retest = () => {\n return runSteps('Test', [\n ['yarn', ['jest', '--clearCache']],\n ['yarn', ['jest', '.']],\n ])\n}\n","import chalk from 'chalk'\n\nexport const checkResult = (name: string, result: number, level: 'error' | 'warn' = 'error', exitOnFail = false) => {\n if (result) {\n const exiting = exitOnFail ? '[Exiting Process]' : '[Continuing]'\n const chalkFunc = level === 'error' ? chalk.red : chalk.yellow\n console[level](chalkFunc(`${name} had ${result} failures ${exiting}`))\n if (exitOnFail) {\n process.exit(result)\n }\n }\n}\n","import chalk from 'chalk'\n\nimport { withErrnoException } from './withErrnoException.ts'\nimport { withError } from './withError.ts'\n\nexport const processEx = (ex: unknown) => {\n const error = typeof ex === 'string' ? new Error(ex) : ex\n const exitCode\n = withErrnoException(error, (error) => {\n if (error.code === 'ENOENT') {\n console.error(chalk.red(`'${error.path}' not found.`))\n } else {\n console.error(chalk.red(`Errno: ${error.code}`))\n }\n return error.errno ?? -1\n })\n ?? withError(error, (error) => {\n console.error(chalk.red(`${error.name}: ${error.message}`))\n return -1\n })\n ?? (() => {\n console.error(chalk.red(`Unexpected Error: ${JSON.stringify(ex, null, 2)}`))\n return -1\n })()\n // This allows us to use a previously set exit code\n process.exit(process.exitCode ?? exitCode)\n}\n","export const withError = <T extends Error = Error>(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ex: any,\n closure: (error: T) => number,\n predicate = (ex: T) => ex.name !== undefined && ex.message !== undefined,\n) => {\n return predicate(ex as T) ? closure(ex as T) : undefined\n}\n","import { withError } from './withError.ts'\n\nexport const withErrnoException = <T extends NodeJS.ErrnoException = NodeJS.ErrnoException>(ex: unknown, closure: (error: T) => number) => {\n return withError<T>(ex, closure, (ex: unknown) => (ex as NodeJS.ErrnoException).errno !== undefined)\n}\n","/** Catch child process a crash and returns the code */\n\nimport { processEx } from './processEx.ts'\n\nconst safeExit = (func: () => number, exitOnFail = true): number => {\n try {\n const result = func()\n if (result && exitOnFail) {\n process.exit(result)\n }\n return result\n } catch (ex) {\n return processEx(ex)\n }\n}\n\nconst safeExitAsync = async (func: () => Promise<number>, exitOnFail = true): Promise<number> => {\n try {\n const result = await func()\n if (result && exitOnFail) {\n process.exit(result)\n }\n return result\n } catch (ex) {\n return processEx(ex)\n }\n}\n\nexport { safeExit, safeExitAsync }\n","import { spawnSync, SpawnSyncOptionsWithBufferEncoding } from 'node:child_process'\nimport { existsSync } from 'node:fs'\n\nimport chalk from 'chalk'\n\nimport { checkResult } from './checkResult.ts'\nimport { safeExit } from './safeExit.ts'\n\nexport type ScriptStep =\n | [/* command */ 'yarn' | 'node' | 'ts-node-script' | 'tsc' | 'jest', /* arg */ string | string[]]\n | [/* command */ string, /* arg */ string | string[], /* config */ SpawnSyncOptionsWithBufferEncoding]\n\nexport const runSteps = (name: string, steps: ScriptStep[], exitOnFail = true, messages?: string[]): number => {\n return safeExit(() => {\n const pkgName = process.env.npm_package_name\n console.log(chalk.green(`${name} [${pkgName}]`))\n let totalStatus = 0\n for (const [i, [command, args, config]] of steps.entries()) {\n if (messages?.[i]) {\n console.log(chalk.gray(messages?.[i]))\n }\n const argList = Array.isArray(args) ? args : args.split(' ')\n if (command === 'node' && !existsSync(argList[0])) {\n throw new Error(`File not found [${argList[0]}]`)\n }\n const status\n = spawnSync(command, Array.isArray(args) ? args : args.split(' '), {\n ...config,\n encoding: 'utf8',\n env: { FORCE_COLOR: '3', ...process.env },\n shell: true,\n stdio: 'inherit',\n }).status ?? 0\n checkResult(name, status, 'error', exitOnFail)\n totalStatus += status ?? 0\n }\n return totalStatus\n }, !!exitOnFail)\n}\n"],"mappings":"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","names":["checkResult","name","result","level","exitOnFail","exiting","chalkFunc","chalk","red","yellow","console","process","exit","import_chalk","withError","ex","closure","predicate","name","undefined","message","withErrnoException","ex","closure","withError","errno","undefined","processEx","ex","error","Error","exitCode","withErrnoException","code","console","chalk","red","path","errno","withError","name","message","JSON","stringify","process","exit","safeExit","func","exitOnFail","result","process","exit","ex","processEx","import_chalk","runSteps","name","steps","exitOnFail","messages","safeExit","pkgName","process","env","npm_package_name","console","log","chalk","green","totalStatus","i","command","args","config","entries","gray","argList","Array","isArray","split","existsSync","Error","status","spawnSync","encoding","FORCE_COLOR","shell","stdio","checkResult","retest","runSteps"]}
@@ -1,149 +0,0 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
9
- var __export = (target, all) => {
10
- for (var name in all)
11
- __defProp(target, name, { get: all[name], enumerable: true });
12
- };
13
- var __copyProps = (to, from, except, desc) => {
14
- if (from && typeof from === "object" || typeof from === "function") {
15
- for (let key of __getOwnPropNames(from))
16
- if (!__hasOwnProp.call(to, key) && key !== except)
17
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
- }
19
- return to;
20
- };
21
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
- // If the importer is in node compatibility mode or this is not an ESM
23
- // file that has been converted to a CommonJS file using a Babel-
24
- // compatible transform (i.e. "__esModule" has not been set), then set
25
- // "default" to the CommonJS "module.exports" for node compatibility.
26
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
- mod
28
- ));
29
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
-
31
- // src/actions/sonar.ts
32
- var sonar_exports = {};
33
- __export(sonar_exports, {
34
- sonar: () => sonar
35
- });
36
- module.exports = __toCommonJS(sonar_exports);
37
-
38
- // src/lib/checkResult.ts
39
- var import_chalk = __toESM(require("chalk"), 1);
40
- var checkResult = /* @__PURE__ */ __name((name, result, level = "error", exitOnFail = false) => {
41
- if (result) {
42
- const exiting = exitOnFail ? "[Exiting Process]" : "[Continuing]";
43
- const chalkFunc = level === "error" ? import_chalk.default.red : import_chalk.default.yellow;
44
- console[level](chalkFunc(`${name} had ${result} failures ${exiting}`));
45
- if (exitOnFail) {
46
- process.exit(result);
47
- }
48
- }
49
- }, "checkResult");
50
-
51
- // src/lib/processEx.ts
52
- var import_chalk2 = __toESM(require("chalk"), 1);
53
-
54
- // src/lib/withError.ts
55
- var withError = /* @__PURE__ */ __name((ex, closure, predicate = (ex2) => ex2.name !== void 0 && ex2.message !== void 0) => {
56
- return predicate(ex) ? closure(ex) : void 0;
57
- }, "withError");
58
-
59
- // src/lib/withErrnoException.ts
60
- var withErrnoException = /* @__PURE__ */ __name((ex, closure) => {
61
- return withError(ex, closure, (ex2) => ex2.errno !== void 0);
62
- }, "withErrnoException");
63
-
64
- // src/lib/processEx.ts
65
- var processEx = /* @__PURE__ */ __name((ex) => {
66
- const error = typeof ex === "string" ? new Error(ex) : ex;
67
- const exitCode = withErrnoException(error, (error2) => {
68
- if (error2.code === "ENOENT") {
69
- console.error(import_chalk2.default.red(`'${error2.path}' not found.`));
70
- } else {
71
- console.error(import_chalk2.default.red(`Errno: ${error2.code}`));
72
- }
73
- return error2.errno ?? -1;
74
- }) ?? withError(error, (error2) => {
75
- console.error(import_chalk2.default.red(`${error2.name}: ${error2.message}`));
76
- return -1;
77
- }) ?? (() => {
78
- console.error(import_chalk2.default.red(`Unexpected Error: ${JSON.stringify(ex, null, 2)}`));
79
- return -1;
80
- })();
81
- process.exit(process.exitCode ?? exitCode);
82
- }, "processEx");
83
-
84
- // src/lib/safeExit.ts
85
- var safeExit = /* @__PURE__ */ __name((func, exitOnFail = true) => {
86
- try {
87
- const result = func();
88
- if (result && exitOnFail) {
89
- process.exit(result);
90
- }
91
- return result;
92
- } catch (ex) {
93
- return processEx(ex);
94
- }
95
- }, "safeExit");
96
-
97
- // src/lib/runSteps.ts
98
- var import_node_child_process = require("child_process");
99
- var import_node_fs = require("fs");
100
- var import_chalk3 = __toESM(require("chalk"), 1);
101
- var runSteps = /* @__PURE__ */ __name((name, steps, exitOnFail = true, messages) => {
102
- return safeExit(() => {
103
- const pkgName = process.env.npm_package_name;
104
- console.log(import_chalk3.default.green(`${name} [${pkgName}]`));
105
- let totalStatus = 0;
106
- for (const [i, [command, args, config]] of steps.entries()) {
107
- if (messages?.[i]) {
108
- console.log(import_chalk3.default.gray(messages?.[i]));
109
- }
110
- const argList = Array.isArray(args) ? args : args.split(" ");
111
- if (command === "node" && !(0, import_node_fs.existsSync)(argList[0])) {
112
- throw new Error(`File not found [${argList[0]}]`);
113
- }
114
- const status = (0, import_node_child_process.spawnSync)(command, Array.isArray(args) ? args : args.split(" "), {
115
- ...config,
116
- encoding: "utf8",
117
- env: {
118
- FORCE_COLOR: "3",
119
- ...process.env
120
- },
121
- shell: true,
122
- stdio: "inherit"
123
- }).status ?? 0;
124
- checkResult(name, status, "error", exitOnFail);
125
- totalStatus += status ?? 0;
126
- }
127
- return totalStatus;
128
- }, !!exitOnFail);
129
- }, "runSteps");
130
-
131
- // src/actions/sonar.ts
132
- var sonar = /* @__PURE__ */ __name(() => {
133
- return runSteps("Sonar", [
134
- [
135
- "yarn",
136
- [
137
- "eslint",
138
- "-c",
139
- "sonar.eslintrc",
140
- "."
141
- ]
142
- ]
143
- ]);
144
- }, "sonar");
145
- // Annotate the CommonJS export names for ESM import in node:
146
- 0 && (module.exports = {
147
- sonar
148
- });
149
- //# sourceMappingURL=sonar.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/actions/sonar.ts","../../src/lib/checkResult.ts","../../src/lib/processEx.ts","../../src/lib/withError.ts","../../src/lib/withErrnoException.ts","../../src/lib/safeExit.ts","../../src/lib/runSteps.ts"],"sourcesContent":["import { runSteps } from '../lib/index.ts'\n\nexport const sonar = () => {\n return runSteps('Sonar', [['yarn', ['eslint', '-c', 'sonar.eslintrc', '.']]])\n}\n","import chalk from 'chalk'\n\nexport const checkResult = (name: string, result: number, level: 'error' | 'warn' = 'error', exitOnFail = false) => {\n if (result) {\n const exiting = exitOnFail ? '[Exiting Process]' : '[Continuing]'\n const chalkFunc = level === 'error' ? chalk.red : chalk.yellow\n console[level](chalkFunc(`${name} had ${result} failures ${exiting}`))\n if (exitOnFail) {\n process.exit(result)\n }\n }\n}\n","import chalk from 'chalk'\n\nimport { withErrnoException } from './withErrnoException.ts'\nimport { withError } from './withError.ts'\n\nexport const processEx = (ex: unknown) => {\n const error = typeof ex === 'string' ? new Error(ex) : ex\n const exitCode\n = withErrnoException(error, (error) => {\n if (error.code === 'ENOENT') {\n console.error(chalk.red(`'${error.path}' not found.`))\n } else {\n console.error(chalk.red(`Errno: ${error.code}`))\n }\n return error.errno ?? -1\n })\n ?? withError(error, (error) => {\n console.error(chalk.red(`${error.name}: ${error.message}`))\n return -1\n })\n ?? (() => {\n console.error(chalk.red(`Unexpected Error: ${JSON.stringify(ex, null, 2)}`))\n return -1\n })()\n // This allows us to use a previously set exit code\n process.exit(process.exitCode ?? exitCode)\n}\n","export const withError = <T extends Error = Error>(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ex: any,\n closure: (error: T) => number,\n predicate = (ex: T) => ex.name !== undefined && ex.message !== undefined,\n) => {\n return predicate(ex as T) ? closure(ex as T) : undefined\n}\n","import { withError } from './withError.ts'\n\nexport const withErrnoException = <T extends NodeJS.ErrnoException = NodeJS.ErrnoException>(ex: unknown, closure: (error: T) => number) => {\n return withError<T>(ex, closure, (ex: unknown) => (ex as NodeJS.ErrnoException).errno !== undefined)\n}\n","/** Catch child process a crash and returns the code */\n\nimport { processEx } from './processEx.ts'\n\nconst safeExit = (func: () => number, exitOnFail = true): number => {\n try {\n const result = func()\n if (result && exitOnFail) {\n process.exit(result)\n }\n return result\n } catch (ex) {\n return processEx(ex)\n }\n}\n\nconst safeExitAsync = async (func: () => Promise<number>, exitOnFail = true): Promise<number> => {\n try {\n const result = await func()\n if (result && exitOnFail) {\n process.exit(result)\n }\n return result\n } catch (ex) {\n return processEx(ex)\n }\n}\n\nexport { safeExit, safeExitAsync }\n","import { spawnSync, SpawnSyncOptionsWithBufferEncoding } from 'node:child_process'\nimport { existsSync } from 'node:fs'\n\nimport chalk from 'chalk'\n\nimport { checkResult } from './checkResult.ts'\nimport { safeExit } from './safeExit.ts'\n\nexport type ScriptStep =\n | [/* command */ 'yarn' | 'node' | 'ts-node-script' | 'tsc' | 'jest', /* arg */ string | string[]]\n | [/* command */ string, /* arg */ string | string[], /* config */ SpawnSyncOptionsWithBufferEncoding]\n\nexport const runSteps = (name: string, steps: ScriptStep[], exitOnFail = true, messages?: string[]): number => {\n return safeExit(() => {\n const pkgName = process.env.npm_package_name\n console.log(chalk.green(`${name} [${pkgName}]`))\n let totalStatus = 0\n for (const [i, [command, args, config]] of steps.entries()) {\n if (messages?.[i]) {\n console.log(chalk.gray(messages?.[i]))\n }\n const argList = Array.isArray(args) ? args : args.split(' ')\n if (command === 'node' && !existsSync(argList[0])) {\n throw new Error(`File not found [${argList[0]}]`)\n }\n const status\n = spawnSync(command, Array.isArray(args) ? args : args.split(' '), {\n ...config,\n encoding: 'utf8',\n env: { FORCE_COLOR: '3', ...process.env },\n shell: true,\n stdio: 'inherit',\n }).status ?? 0\n checkResult(name, status, 'error', exitOnFail)\n totalStatus += status ?? 0\n }\n return totalStatus\n }, !!exitOnFail)\n}\n"],"mappings":"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","names":["checkResult","name","result","level","exitOnFail","exiting","chalkFunc","chalk","red","yellow","console","process","exit","import_chalk","withError","ex","closure","predicate","name","undefined","message","withErrnoException","ex","closure","withError","errno","undefined","processEx","ex","error","Error","exitCode","withErrnoException","code","console","chalk","red","path","errno","withError","name","message","JSON","stringify","process","exit","safeExit","func","exitOnFail","result","process","exit","ex","processEx","import_chalk","runSteps","name","steps","exitOnFail","messages","safeExit","pkgName","process","env","npm_package_name","console","log","chalk","green","totalStatus","i","command","args","config","entries","gray","argList","Array","isArray","split","existsSync","Error","status","spawnSync","encoding","FORCE_COLOR","shell","stdio","checkResult","sonar","runSteps"]}
@@ -1,234 +0,0 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
9
- var __export = (target, all) => {
10
- for (var name in all)
11
- __defProp(target, name, { get: all[name], enumerable: true });
12
- };
13
- var __copyProps = (to, from, except, desc) => {
14
- if (from && typeof from === "object" || typeof from === "function") {
15
- for (let key of __getOwnPropNames(from))
16
- if (!__hasOwnProp.call(to, key) && key !== except)
17
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
- }
19
- return to;
20
- };
21
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
- // If the importer is in node compatibility mode or this is not an ESM
23
- // file that has been converted to a CommonJS file using a Babel-
24
- // compatible transform (i.e. "__esModule" has not been set), then set
25
- // "default" to the CommonJS "module.exports" for node compatibility.
26
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
- mod
28
- ));
29
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
-
31
- // src/actions/statics.ts
32
- var statics_exports = {};
33
- __export(statics_exports, {
34
- statics: () => statics
35
- });
36
- module.exports = __toCommonJS(statics_exports);
37
- var import_chalk3 = __toESM(require("chalk"), 1);
38
-
39
- // src/lib/dependencies/detectDuplicateDependencies.ts
40
- var import_node_child_process = require("child_process");
41
-
42
- // src/lib/processEx.ts
43
- var import_chalk = __toESM(require("chalk"), 1);
44
-
45
- // src/lib/withError.ts
46
- var withError = /* @__PURE__ */ __name((ex, closure, predicate = (ex2) => ex2.name !== void 0 && ex2.message !== void 0) => {
47
- return predicate(ex) ? closure(ex) : void 0;
48
- }, "withError");
49
-
50
- // src/lib/withErrnoException.ts
51
- var withErrnoException = /* @__PURE__ */ __name((ex, closure) => {
52
- return withError(ex, closure, (ex2) => ex2.errno !== void 0);
53
- }, "withErrnoException");
54
-
55
- // src/lib/processEx.ts
56
- var processEx = /* @__PURE__ */ __name((ex) => {
57
- const error = typeof ex === "string" ? new Error(ex) : ex;
58
- const exitCode = withErrnoException(error, (error2) => {
59
- if (error2.code === "ENOENT") {
60
- console.error(import_chalk.default.red(`'${error2.path}' not found.`));
61
- } else {
62
- console.error(import_chalk.default.red(`Errno: ${error2.code}`));
63
- }
64
- return error2.errno ?? -1;
65
- }) ?? withError(error, (error2) => {
66
- console.error(import_chalk.default.red(`${error2.name}: ${error2.message}`));
67
- return -1;
68
- }) ?? (() => {
69
- console.error(import_chalk.default.red(`Unexpected Error: ${JSON.stringify(ex, null, 2)}`));
70
- return -1;
71
- })();
72
- process.exit(process.exitCode ?? exitCode);
73
- }, "processEx");
74
-
75
- // src/lib/safeExit.ts
76
- var safeExit = /* @__PURE__ */ __name((func, exitOnFail = true) => {
77
- try {
78
- const result = func();
79
- if (result && exitOnFail) {
80
- process.exit(result);
81
- }
82
- return result;
83
- } catch (ex) {
84
- return processEx(ex);
85
- }
86
- }, "safeExit");
87
-
88
- // src/lib/dependencies/DuplicateDetector.ts
89
- var import_node_os = require("os");
90
- var import_chalk2 = __toESM(require("chalk"), 1);
91
- var import_uniq = __toESM(require("lodash/uniq.js"), 1);
92
-
93
- // src/lib/jsonFormatters.ts
94
- var multiLineToJSONArray = /* @__PURE__ */ __name((output) => {
95
- const withCommas = output.replaceAll("\r\n", "").replaceAll("\n", ",");
96
- const cleanCollection = withCommas.slice(0, Math.max(0, withCommas.length - 1));
97
- const collection = `[${cleanCollection}]`;
98
- return JSON.parse(collection);
99
- }, "multiLineToJSONArray");
100
-
101
- // src/lib/dependencies/DuplicateDetector.ts
102
- var trimVirtualMeta = /* @__PURE__ */ __name((value) => {
103
- const virtualParts = value.split("virtual:");
104
- if (virtualParts.length > 1) {
105
- const hashParts = virtualParts[1].split("#");
106
- return virtualParts[0] + hashParts[1];
107
- } else {
108
- return value;
109
- }
110
- }, "trimVirtualMeta");
111
- var trimObjectDependencyVirtualMeta = /* @__PURE__ */ __name((obj) => {
112
- const resultObj = {};
113
- for (const [key, value] of Object.entries(obj)) {
114
- resultObj[trimVirtualMeta(key)] = {
115
- descriptor: trimVirtualMeta(value.descriptor),
116
- locator: trimVirtualMeta(value.locator)
117
- };
118
- }
119
- return resultObj;
120
- }, "trimObjectDependencyVirtualMeta");
121
- var trimDependencyVirtualMeta = /* @__PURE__ */ __name((dependencies) => {
122
- return dependencies.map((dependency) => {
123
- return {
124
- children: trimObjectDependencyVirtualMeta(dependency.children),
125
- value: trimVirtualMeta(dependency.value)
126
- };
127
- });
128
- }, "trimDependencyVirtualMeta");
129
- var DuplicateDetector = class {
130
- static {
131
- __name(this, "DuplicateDetector");
132
- }
133
- dependency;
134
- dependencyEntries;
135
- constructor(output, dependency) {
136
- this.dependency = dependency;
137
- this.dependencyEntries = trimDependencyVirtualMeta(multiLineToJSONArray(output));
138
- }
139
- detect() {
140
- const result = this.dependencyEntries.reduce(this.detectReducer, this.resultsFactory(this.dependency));
141
- if (result.duplicateVersions.length > 0) {
142
- console.log(import_chalk2.default.yellow(`${import_node_os.EOL}Duplicates found for: ${this.dependency}`));
143
- const duplicateVersions = result.duplicateVersions.toString().replaceAll(",", `${import_node_os.EOL} `);
144
- console.log(import_chalk2.default.grey(` ${duplicateVersions}`, import_node_os.EOL));
145
- return 1;
146
- } else {
147
- console.log(`${this.dependency} - OK`);
148
- return 0;
149
- }
150
- }
151
- detectReducer(acc, entry) {
152
- const version = Object.entries(entry.children).map(([k]) => k)[0];
153
- if (!acc.currentVersion) {
154
- acc.currentVersion = version;
155
- return acc;
156
- }
157
- if (acc.currentVersion && acc.currentVersion !== version && !version.includes("@virtual:")) {
158
- if (acc.duplicateVersions.length === 0) {
159
- acc.duplicateVersions.push(acc.currentVersion);
160
- }
161
- acc.duplicateVersions.push(version);
162
- acc.duplicateVersions = (0, import_uniq.default)(acc.duplicateVersions);
163
- }
164
- return acc;
165
- }
166
- resultsFactory = /* @__PURE__ */ __name((dependency) => ({
167
- currentVersion: void 0,
168
- dependency,
169
- duplicateVersions: []
170
- }), "resultsFactory");
171
- };
172
-
173
- // src/lib/dependencies/detectDuplicateDependencies.ts
174
- var detectDuplicateDependencies = /* @__PURE__ */ __name((depsFromPackageJSON, DefaultDependencies2) => {
175
- let exitCode = 0;
176
- const dependencies = depsFromPackageJSON?.length ? depsFromPackageJSON : DefaultDependencies2;
177
- return safeExit(() => {
178
- if (dependencies) {
179
- for (const dependency of dependencies) {
180
- let output;
181
- try {
182
- const cmd = `yarn why ${dependency} --json`;
183
- output = (0, import_node_child_process.execSync)(cmd).toString();
184
- } catch (e) {
185
- console.error(`Error running yarn why: ${e}`);
186
- exitCode = 1;
187
- continue;
188
- }
189
- if (output) {
190
- exitCode = new DuplicateDetector(output, dependency).detect();
191
- } else {
192
- console.log(`${dependency} - N/A`);
193
- if (depsFromPackageJSON) {
194
- exitCode = 1;
195
- console.log(`\u{1F6A8} Library ${dependency} was requested in package.json but not found`);
196
- }
197
- }
198
- }
199
- return exitCode;
200
- } else {
201
- console.log("\u{1F6A8} No dependencies where passed");
202
- return exitCode;
203
- }
204
- });
205
- }, "detectDuplicateDependencies");
206
-
207
- // src/lib/parsedPackageJSON.ts
208
- var import_node_fs = require("fs");
209
- var parsedPackageJSON = /* @__PURE__ */ __name((path) => {
210
- const pathToPackageJSON = path ?? process.env.npm_package_json ?? "";
211
- const packageJSON = (0, import_node_fs.readFileSync)(pathToPackageJSON).toString();
212
- return JSON.parse(packageJSON);
213
- }, "parsedPackageJSON");
214
-
215
- // src/actions/statics.ts
216
- var DefaultDependencies = [
217
- "axios",
218
- "@xylabs/pixel",
219
- "react",
220
- "graphql",
221
- "react-router",
222
- "@mui/material",
223
- "@mui/system"
224
- ];
225
- var statics = /* @__PURE__ */ __name(() => {
226
- console.log(import_chalk3.default.green("Check Required Static Dependencies"));
227
- const statics2 = parsedPackageJSON()?.xy?.deps?.statics;
228
- return detectDuplicateDependencies(statics2, DefaultDependencies);
229
- }, "statics");
230
- // Annotate the CommonJS export names for ESM import in node:
231
- 0 && (module.exports = {
232
- statics
233
- });
234
- //# sourceMappingURL=statics.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/actions/statics.ts","../../src/lib/dependencies/detectDuplicateDependencies.ts","../../src/lib/processEx.ts","../../src/lib/withError.ts","../../src/lib/withErrnoException.ts","../../src/lib/safeExit.ts","../../src/lib/dependencies/DuplicateDetector.ts","../../src/lib/jsonFormatters.ts","../../src/lib/parsedPackageJSON.ts"],"sourcesContent":["import chalk from 'chalk'\n\nimport { detectDuplicateDependencies, parsedPackageJSON } from '../lib/index.ts'\n\nconst DefaultDependencies = ['axios', '@xylabs/pixel', 'react', 'graphql', 'react-router', '@mui/material', '@mui/system']\n\nexport const statics = () => {\n console.log(chalk.green('Check Required Static Dependencies'))\n\n const statics = parsedPackageJSON()?.xy?.deps?.statics\n\n return detectDuplicateDependencies(statics, DefaultDependencies)\n}\n","import { execSync } from 'node:child_process'\n\nimport { safeExit } from '../safeExit.ts'\nimport { DuplicateDetector } from './DuplicateDetector.ts'\n\nexport const detectDuplicateDependencies = (depsFromPackageJSON?: string[], DefaultDependencies?: string[]) => {\n let exitCode = 0\n\n const dependencies = depsFromPackageJSON?.length ? depsFromPackageJSON : DefaultDependencies\n\n return safeExit(() => {\n if (dependencies) {\n for (const dependency of dependencies) {\n let output: string\n\n try {\n const cmd = `yarn why ${dependency} --json`\n output = execSync(cmd).toString()\n } catch (e) {\n console.error(`Error running yarn why: ${e}`)\n exitCode = 1\n continue\n }\n\n if (output) {\n exitCode = new DuplicateDetector(output, dependency).detect()\n } else {\n console.log(`${dependency} - N/A`)\n if (depsFromPackageJSON) {\n exitCode = 1\n console.log(`🚨 Library ${dependency} was requested in package.json but not found`)\n }\n }\n }\n return exitCode\n } else {\n console.log('🚨 No dependencies where passed')\n return exitCode\n }\n })\n}\n","import chalk from 'chalk'\n\nimport { withErrnoException } from './withErrnoException.ts'\nimport { withError } from './withError.ts'\n\nexport const processEx = (ex: unknown) => {\n const error = typeof ex === 'string' ? new Error(ex) : ex\n const exitCode\n = withErrnoException(error, (error) => {\n if (error.code === 'ENOENT') {\n console.error(chalk.red(`'${error.path}' not found.`))\n } else {\n console.error(chalk.red(`Errno: ${error.code}`))\n }\n return error.errno ?? -1\n })\n ?? withError(error, (error) => {\n console.error(chalk.red(`${error.name}: ${error.message}`))\n return -1\n })\n ?? (() => {\n console.error(chalk.red(`Unexpected Error: ${JSON.stringify(ex, null, 2)}`))\n return -1\n })()\n // This allows us to use a previously set exit code\n process.exit(process.exitCode ?? exitCode)\n}\n","export const withError = <T extends Error = Error>(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ex: any,\n closure: (error: T) => number,\n predicate = (ex: T) => ex.name !== undefined && ex.message !== undefined,\n) => {\n return predicate(ex as T) ? closure(ex as T) : undefined\n}\n","import { withError } from './withError.ts'\n\nexport const withErrnoException = <T extends NodeJS.ErrnoException = NodeJS.ErrnoException>(ex: unknown, closure: (error: T) => number) => {\n return withError<T>(ex, closure, (ex: unknown) => (ex as NodeJS.ErrnoException).errno !== undefined)\n}\n","/** Catch child process a crash and returns the code */\n\nimport { processEx } from './processEx.ts'\n\nconst safeExit = (func: () => number, exitOnFail = true): number => {\n try {\n const result = func()\n if (result && exitOnFail) {\n process.exit(result)\n }\n return result\n } catch (ex) {\n return processEx(ex)\n }\n}\n\nconst safeExitAsync = async (func: () => Promise<number>, exitOnFail = true): Promise<number> => {\n try {\n const result = await func()\n if (result && exitOnFail) {\n process.exit(result)\n }\n return result\n } catch (ex) {\n return processEx(ex)\n }\n}\n\nexport { safeExit, safeExitAsync }\n","import { EOL } from 'node:os'\n\nimport chalk from 'chalk'\n// eslint-disable-next-line import/no-internal-modules\nimport uniq from 'lodash/uniq.js'\n\nimport { multiLineToJSONArray } from '../jsonFormatters.ts'\n\ninterface ChildFields {\n descriptor: string\n locator: string\n}\n\nconst trimVirtualMeta = (value: string): string => {\n const virtualParts = value.split('virtual:')\n if (virtualParts.length > 1) {\n const hashParts = virtualParts[1].split('#')\n return virtualParts[0] + hashParts[1]\n } else {\n return value\n }\n}\n\nconst trimObjectDependencyVirtualMeta = (obj: Record<string, ChildFields>): Record<string, ChildFields> => {\n const resultObj: Record<string, ChildFields> = {}\n for (const [key, value] of Object.entries(obj)) {\n resultObj[trimVirtualMeta(key)] = {\n descriptor: trimVirtualMeta(value.descriptor),\n locator: trimVirtualMeta(value.locator),\n }\n }\n return resultObj\n}\n\nconst trimDependencyVirtualMeta = (dependencies: DependencyEntries): DependencyEntries => {\n return dependencies.map((dependency) => {\n return { children: trimObjectDependencyVirtualMeta(dependency.children), value: trimVirtualMeta(dependency.value) }\n })\n}\n\ninterface DependencyEntry {\n children: Record<string, ChildFields>\n value: string\n}\n\ntype DependencyEntries = DependencyEntry[]\n\ninterface Results {\n currentVersion: string | undefined\n dependency: string\n duplicateVersions: string[]\n}\n\nexport class DuplicateDetector {\n private dependency: string\n private dependencyEntries: DependencyEntries\n\n constructor(output: string, dependency: string) {\n this.dependency = dependency\n this.dependencyEntries = trimDependencyVirtualMeta(multiLineToJSONArray(output))\n }\n\n detect() {\n // eslint-disable-next-line unicorn/no-array-reduce\n const result = this.dependencyEntries.reduce(this.detectReducer, this.resultsFactory(this.dependency))\n if (result.duplicateVersions.length > 0) {\n console.log(chalk.yellow(`${EOL}Duplicates found for: ${this.dependency}`))\n const duplicateVersions = result.duplicateVersions.toString().replaceAll(',', `${EOL} `)\n console.log(chalk.grey(` ${duplicateVersions}`, EOL))\n return 1\n } else {\n console.log(`${this.dependency} - OK`)\n return 0\n }\n }\n\n private detectReducer(acc: Results, entry: DependencyEntry) {\n const version = Object.entries(entry.children).map(([k]) => k)[0]\n\n if (!acc.currentVersion) {\n acc.currentVersion = version\n return acc\n }\n\n if (acc.currentVersion && acc.currentVersion !== version && !version.includes('@virtual:')) {\n // if first duplicate, push the current version as the first duplicate\n if (acc.duplicateVersions.length === 0) {\n acc.duplicateVersions.push(acc.currentVersion)\n }\n acc.duplicateVersions.push(version)\n acc.duplicateVersions = uniq(acc.duplicateVersions)\n }\n return acc\n }\n\n private resultsFactory = (dependency: string): Results => ({ currentVersion: undefined, dependency, duplicateVersions: [] })\n}\n","export const multiLineToJSONArray = (output: string) => {\n const withCommas = output.replaceAll('\\r\\n', '').replaceAll('\\n', ',')\n const cleanCollection = withCommas.slice(0, Math.max(0, withCommas.length - 1))\n const collection = `[${cleanCollection}]`\n return JSON.parse(collection)\n}\n","import { readFileSync } from 'node:fs'\n\nexport const parsedPackageJSON = (path?: string) => {\n const pathToPackageJSON = path ?? process.env.npm_package_json ?? ''\n const packageJSON = readFileSync(pathToPackageJSON).toString()\n return JSON.parse(packageJSON)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;IAAAA,gBAAkB;;;ACAlB,gCAAyB;;;ACAzB,mBAAkB;;;ACAX,IAAMC,YAAY,wBAEvBC,IACAC,SACAC,YAAY,CAACF,QAAUA,IAAGG,SAASC,UAAaJ,IAAGK,YAAYD,WAAS;AAExE,SAAOF,UAAUF,EAAAA,IAAWC,QAAQD,EAAAA,IAAWI;AACjD,GAPyB;;;ACElB,IAAME,qBAAqB,wBAA0DC,IAAaC,YAAAA;AACvG,SAAOC,UAAaF,IAAIC,SAAS,CAACD,QAAiBA,IAA6BG,UAAUC,MAAAA;AAC5F,GAFkC;;;AFG3B,IAAMC,YAAY,wBAACC,OAAAA;AACxB,QAAMC,QAAQ,OAAOD,OAAO,WAAW,IAAIE,MAAMF,EAAAA,IAAMA;AACvD,QAAMG,WACFC,mBAAmBH,OAAO,CAACA,WAAAA;AAC3B,QAAIA,OAAMI,SAAS,UAAU;AAC3BC,cAAQL,MAAMM,aAAAA,QAAMC,IAAI,IAAIP,OAAMQ,IAAI,cAAc,CAAA;IACtD,OAAO;AACLH,cAAQL,MAAMM,aAAAA,QAAMC,IAAI,UAAUP,OAAMI,IAAI,EAAE,CAAA;IAChD;AACA,WAAOJ,OAAMS,SAAS;EACxB,CAAA,KACGC,UAAUV,OAAO,CAACA,WAAAA;AACnBK,YAAQL,MAAMM,aAAAA,QAAMC,IAAI,GAAGP,OAAMW,IAAI,KAAKX,OAAMY,OAAO,EAAE,CAAA;AACzD,WAAO;EACT,CAAA,MACI,MAAA;AACFP,YAAQL,MAAMM,aAAAA,QAAMC,IAAI,qBAAqBM,KAAKC,UAAUf,IAAI,MAAM,CAAA,CAAA,EAAI,CAAA;AAC1E,WAAO;EACT,GAAA;AAEFgB,UAAQC,KAAKD,QAAQb,YAAYA,QAAAA;AACnC,GArByB;;;AGDzB,IAAMe,WAAW,wBAACC,MAAoBC,aAAa,SAAI;AACrD,MAAI;AACF,UAAMC,SAASF,KAAAA;AACf,QAAIE,UAAUD,YAAY;AACxBE,cAAQC,KAAKF,MAAAA;IACf;AACA,WAAOA;EACT,SAASG,IAAI;AACX,WAAOC,UAAUD,EAAAA;EACnB;AACF,GAViB;;;ACJjB,qBAAoB;AAEpB,IAAAE,gBAAkB;AAElB,kBAAiB;;;ACJV,IAAMC,uBAAuB,wBAACC,WAAAA;AACnC,QAAMC,aAAaD,OAAOE,WAAW,QAAQ,EAAA,EAAIA,WAAW,MAAM,GAAA;AAClE,QAAMC,kBAAkBF,WAAWG,MAAM,GAAGC,KAAKC,IAAI,GAAGL,WAAWM,SAAS,CAAA,CAAA;AAC5E,QAAMC,aAAa,IAAIL,eAAAA;AACvB,SAAOM,KAAKC,MAAMF,UAAAA;AACpB,GALoC;;;ADapC,IAAMG,kBAAkB,wBAACC,UAAAA;AACvB,QAAMC,eAAeD,MAAME,MAAM,UAAA;AACjC,MAAID,aAAaE,SAAS,GAAG;AAC3B,UAAMC,YAAYH,aAAa,CAAA,EAAGC,MAAM,GAAA;AACxC,WAAOD,aAAa,CAAA,IAAKG,UAAU,CAAA;EACrC,OAAO;AACL,WAAOJ;EACT;AACF,GARwB;AAUxB,IAAMK,kCAAkC,wBAACC,QAAAA;AACvC,QAAMC,YAAyC,CAAC;AAChD,aAAW,CAACC,KAAKR,KAAAA,KAAUS,OAAOC,QAAQJ,GAAAA,GAAM;AAC9CC,cAAUR,gBAAgBS,GAAAA,CAAAA,IAAQ;MAChCG,YAAYZ,gBAAgBC,MAAMW,UAAU;MAC5CC,SAASb,gBAAgBC,MAAMY,OAAO;IACxC;EACF;AACA,SAAOL;AACT,GATwC;AAWxC,IAAMM,4BAA4B,wBAACC,iBAAAA;AACjC,SAAOA,aAAaC,IAAI,CAACC,eAAAA;AACvB,WAAO;MAAEC,UAAUZ,gCAAgCW,WAAWC,QAAQ;MAAGjB,OAAOD,gBAAgBiB,WAAWhB,KAAK;IAAE;EACpH,CAAA;AACF,GAJkC;AAmB3B,IAAMkB,oBAAN,MAAMA;EArDb,OAqDaA;;;EACHF;EACAG;EAERC,YAAYC,QAAgBL,YAAoB;AAC9C,SAAKA,aAAaA;AAClB,SAAKG,oBAAoBN,0BAA0BS,qBAAqBD,MAAAA,CAAAA;EAC1E;EAEAE,SAAS;AAEP,UAAMC,SAAS,KAAKL,kBAAkBM,OAAO,KAAKC,eAAe,KAAKC,eAAe,KAAKX,UAAU,CAAA;AACpG,QAAIQ,OAAOI,kBAAkBzB,SAAS,GAAG;AACvC0B,cAAQC,IAAIC,cAAAA,QAAMC,OAAO,GAAGC,kBAAAA,yBAA4B,KAAKjB,UAAU,EAAE,CAAA;AACzE,YAAMY,oBAAoBJ,OAAOI,kBAAkBM,SAAQ,EAAGC,WAAW,KAAK,GAAGF,kBAAAA,IAAO;AACxFJ,cAAQC,IAAIC,cAAAA,QAAMK,KAAK,KAAKR,iBAAAA,IAAqBK,kBAAAA,CAAAA;AACjD,aAAO;IACT,OAAO;AACLJ,cAAQC,IAAI,GAAG,KAAKd,UAAU,OAAO;AACrC,aAAO;IACT;EACF;EAEQU,cAAcW,KAAcC,OAAwB;AAC1D,UAAMC,UAAU9B,OAAOC,QAAQ4B,MAAMrB,QAAQ,EAAEF,IAAI,CAAC,CAACyB,CAAAA,MAAOA,CAAAA,EAAG,CAAA;AAE/D,QAAI,CAACH,IAAII,gBAAgB;AACvBJ,UAAII,iBAAiBF;AACrB,aAAOF;IACT;AAEA,QAAIA,IAAII,kBAAkBJ,IAAII,mBAAmBF,WAAW,CAACA,QAAQG,SAAS,WAAA,GAAc;AAE1F,UAAIL,IAAIT,kBAAkBzB,WAAW,GAAG;AACtCkC,YAAIT,kBAAkBe,KAAKN,IAAII,cAAc;MAC/C;AACAJ,UAAIT,kBAAkBe,KAAKJ,OAAAA;AAC3BF,UAAIT,wBAAoBgB,YAAAA,SAAKP,IAAIT,iBAAiB;IACpD;AACA,WAAOS;EACT;EAEQV,iBAAiB,wBAACX,gBAAiC;IAAEyB,gBAAgBI;IAAW7B;IAAYY,mBAAmB,CAAA;EAAG,IAAjG;AAC3B;;;AL3FO,IAAMkB,8BAA8B,wBAACC,qBAAgCC,yBAAAA;AAC1E,MAAIC,WAAW;AAEf,QAAMC,eAAeH,qBAAqBI,SAASJ,sBAAsBC;AAEzE,SAAOI,SAAS,MAAA;AACd,QAAIF,cAAc;AAChB,iBAAWG,cAAcH,cAAc;AACrC,YAAII;AAEJ,YAAI;AACF,gBAAMC,MAAM,YAAYF,UAAAA;AACxBC,uBAASE,oCAASD,GAAAA,EAAKE,SAAQ;QACjC,SAASC,GAAG;AACVC,kBAAQC,MAAM,2BAA2BF,CAAAA,EAAG;AAC5CT,qBAAW;AACX;QACF;AAEA,YAAIK,QAAQ;AACVL,qBAAW,IAAIY,kBAAkBP,QAAQD,UAAAA,EAAYS,OAAM;QAC7D,OAAO;AACLH,kBAAQI,IAAI,GAAGV,UAAAA,QAAkB;AACjC,cAAIN,qBAAqB;AACvBE,uBAAW;AACXU,oBAAQI,IAAI,qBAAcV,UAAAA,8CAAwD;UACpF;QACF;MACF;AACA,aAAOJ;IACT,OAAO;AACLU,cAAQI,IAAI,wCAAA;AACZ,aAAOd;IACT;EACF,CAAA;AACF,GAnC2C;;;AOL3C,qBAA6B;AAEtB,IAAMe,oBAAoB,wBAACC,SAAAA;AAChC,QAAMC,oBAAoBD,QAAQE,QAAQC,IAAIC,oBAAoB;AAClE,QAAMC,kBAAcC,6BAAaL,iBAAAA,EAAmBM,SAAQ;AAC5D,SAAOC,KAAKC,MAAMJ,WAAAA;AACpB,GAJiC;;;AREjC,IAAMK,sBAAsB;EAAC;EAAS;EAAiB;EAAS;EAAW;EAAgB;EAAiB;;AAErG,IAAMC,UAAU,6BAAA;AACrBC,UAAQC,IAAIC,cAAAA,QAAMC,MAAM,oCAAA,CAAA;AAExB,QAAMJ,WAAUK,kBAAAA,GAAqBC,IAAIC,MAAMP;AAE/C,SAAOQ,4BAA4BR,UAASD,mBAAAA;AAC9C,GANuB;","names":["import_chalk","withError","ex","closure","predicate","name","undefined","message","withErrnoException","ex","closure","withError","errno","undefined","processEx","ex","error","Error","exitCode","withErrnoException","code","console","chalk","red","path","errno","withError","name","message","JSON","stringify","process","exit","safeExit","func","exitOnFail","result","process","exit","ex","processEx","import_chalk","multiLineToJSONArray","output","withCommas","replaceAll","cleanCollection","slice","Math","max","length","collection","JSON","parse","trimVirtualMeta","value","virtualParts","split","length","hashParts","trimObjectDependencyVirtualMeta","obj","resultObj","key","Object","entries","descriptor","locator","trimDependencyVirtualMeta","dependencies","map","dependency","children","DuplicateDetector","dependencyEntries","constructor","output","multiLineToJSONArray","detect","result","reduce","detectReducer","resultsFactory","duplicateVersions","console","log","chalk","yellow","EOL","toString","replaceAll","grey","acc","entry","version","k","currentVersion","includes","push","uniq","undefined","detectDuplicateDependencies","depsFromPackageJSON","DefaultDependencies","exitCode","dependencies","length","safeExit","dependency","output","cmd","execSync","toString","e","console","error","DuplicateDetector","detect","log","parsedPackageJSON","path","pathToPackageJSON","process","env","npm_package_json","packageJSON","readFileSync","toString","JSON","parse","DefaultDependencies","statics","console","log","chalk","green","parsedPackageJSON","xy","deps","detectDuplicateDependencies"]}