skuba 14.0.0-replace-global-vars-20251121010036 → 14.0.0-tsdown-package-templates-20251225094805

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 (415) hide show
  1. package/config/eslint.js +1 -1
  2. package/config/jest.js +1 -0
  3. package/config/prettier.d.ts +4 -8
  4. package/config/prettier.js +2 -10
  5. package/jest/moduleNameMapper.js +64 -0
  6. package/jest/transform.js +62 -0
  7. package/jest/tsConfig.js +26 -0
  8. package/jest-preset.js +37 -0
  9. package/lib/api/jest/index.d.ts +15 -0
  10. package/lib/api/jest/index.js +59 -0
  11. package/lib/api/jest/index.js.map +7 -0
  12. package/lib/cli/adapter/eslint.js +45 -11
  13. package/lib/cli/adapter/eslint.js.map +2 -2
  14. package/lib/cli/adapter/prettier.js +67 -39
  15. package/lib/cli/adapter/prettier.js.map +2 -2
  16. package/lib/cli/build/args.js +42 -8
  17. package/lib/cli/build/args.js.map +2 -2
  18. package/lib/cli/build/assets.d.ts +0 -9
  19. package/lib/cli/build/assets.js +57 -45
  20. package/lib/cli/build/assets.js.map +3 -3
  21. package/lib/cli/build/esbuild.js +45 -21
  22. package/lib/cli/build/esbuild.js.map +2 -2
  23. package/lib/cli/build/index.js +45 -21
  24. package/lib/cli/build/index.js.map +1 -1
  25. package/lib/cli/build/tsc.js +59 -22
  26. package/lib/cli/build/tsc.js.map +2 -2
  27. package/lib/cli/configure/analyseConfiguration.js +50 -16
  28. package/lib/cli/configure/analyseConfiguration.js.map +2 -2
  29. package/lib/cli/configure/analyseDependencies.d.ts +1 -1
  30. package/lib/cli/configure/analyseDependencies.js +59 -25
  31. package/lib/cli/configure/analyseDependencies.js.map +3 -3
  32. package/lib/cli/configure/analysis/diff.js +29 -5
  33. package/lib/cli/configure/analysis/diff.js.map +1 -1
  34. package/lib/cli/configure/analysis/files.js +42 -8
  35. package/lib/cli/configure/analysis/files.js.map +2 -2
  36. package/lib/cli/configure/analysis/git.js +46 -12
  37. package/lib/cli/configure/analysis/git.js.map +2 -2
  38. package/lib/cli/configure/analysis/package.d.ts +3 -2
  39. package/lib/cli/configure/analysis/package.js +45 -10
  40. package/lib/cli/configure/analysis/package.js.map +3 -3
  41. package/lib/cli/configure/analysis/project.js +50 -18
  42. package/lib/cli/configure/analysis/project.js.map +2 -2
  43. package/lib/cli/configure/dependencies/index.js +35 -7
  44. package/lib/cli/configure/dependencies/index.js.map +1 -1
  45. package/lib/cli/configure/dependencies/seekDatadogCustomMetrics.js +28 -4
  46. package/lib/cli/configure/dependencies/seekDatadogCustomMetrics.js.map +1 -1
  47. package/lib/cli/configure/dependencies/seekKoala.js +28 -4
  48. package/lib/cli/configure/dependencies/seekKoala.js.map +1 -1
  49. package/lib/cli/configure/dependencies/skuba.js +28 -4
  50. package/lib/cli/configure/dependencies/skuba.js.map +1 -1
  51. package/lib/cli/configure/dependencies/skubaDeps.js +26 -2
  52. package/lib/cli/configure/dependencies/skubaDeps.js.map +1 -1
  53. package/lib/cli/configure/dependencies/skubaDive.js +29 -4
  54. package/lib/cli/configure/dependencies/skubaDive.js.map +1 -1
  55. package/lib/cli/configure/ensureTemplateCompletion.d.ts +1 -1
  56. package/lib/cli/configure/ensureTemplateCompletion.js +61 -33
  57. package/lib/cli/configure/ensureTemplateCompletion.js.map +3 -3
  58. package/lib/cli/configure/getEntryPoint.d.ts +1 -1
  59. package/lib/cli/configure/getEntryPoint.js +48 -14
  60. package/lib/cli/configure/getEntryPoint.js.map +3 -3
  61. package/lib/cli/configure/getProjectType.d.ts +1 -1
  62. package/lib/cli/configure/getProjectType.js +35 -14
  63. package/lib/cli/configure/getProjectType.js.map +2 -2
  64. package/lib/cli/configure/index.js +84 -50
  65. package/lib/cli/configure/index.js.map +2 -2
  66. package/lib/cli/configure/modules/eslint.js +34 -10
  67. package/lib/cli/configure/modules/eslint.js.map +1 -1
  68. package/lib/cli/configure/modules/ignore.js +32 -8
  69. package/lib/cli/configure/modules/ignore.js.map +1 -1
  70. package/lib/cli/configure/modules/index.js +44 -18
  71. package/lib/cli/configure/modules/index.js.map +2 -2
  72. package/lib/cli/configure/modules/jest.d.ts +2 -0
  73. package/lib/cli/configure/modules/jest.js +86 -0
  74. package/lib/cli/configure/modules/jest.js.map +7 -0
  75. package/lib/cli/configure/modules/nodemon.js +28 -4
  76. package/lib/cli/configure/modules/nodemon.js.map +1 -1
  77. package/lib/cli/configure/modules/package.js +34 -10
  78. package/lib/cli/configure/modules/package.js.map +1 -1
  79. package/lib/cli/configure/modules/prettier.js +35 -11
  80. package/lib/cli/configure/modules/prettier.js.map +1 -1
  81. package/lib/cli/configure/modules/renovate.js +40 -17
  82. package/lib/cli/configure/modules/renovate.js.map +2 -2
  83. package/lib/cli/configure/modules/serverless.js +26 -2
  84. package/lib/cli/configure/modules/serverless.js.map +1 -1
  85. package/lib/cli/configure/modules/tslint.js +28 -4
  86. package/lib/cli/configure/modules/tslint.js.map +1 -1
  87. package/lib/cli/configure/processing/configFile.js +39 -3
  88. package/lib/cli/configure/processing/configFile.js.map +1 -1
  89. package/lib/cli/configure/processing/deleteFiles.js +26 -2
  90. package/lib/cli/configure/processing/deleteFiles.js.map +1 -1
  91. package/lib/cli/configure/processing/javascript.js +27 -2
  92. package/lib/cli/configure/processing/javascript.js.map +1 -1
  93. package/lib/cli/configure/processing/json.js +31 -6
  94. package/lib/cli/configure/processing/json.js.map +1 -1
  95. package/lib/cli/configure/processing/loadFiles.js +26 -2
  96. package/lib/cli/configure/processing/loadFiles.js.map +1 -1
  97. package/lib/cli/configure/processing/module.js +28 -4
  98. package/lib/cli/configure/processing/module.js.map +1 -1
  99. package/lib/cli/configure/processing/package.d.ts +67 -1
  100. package/lib/cli/configure/processing/package.js +45 -8
  101. package/lib/cli/configure/processing/package.js.map +3 -3
  102. package/lib/cli/configure/processing/prettier.js +38 -4
  103. package/lib/cli/configure/processing/prettier.js.map +2 -2
  104. package/lib/cli/configure/processing/record.js +41 -5
  105. package/lib/cli/configure/processing/record.js.map +2 -2
  106. package/lib/cli/configure/processing/typescript.js +63 -26
  107. package/lib/cli/configure/processing/typescript.js.map +2 -2
  108. package/lib/cli/configure/types.d.ts +4 -15
  109. package/lib/cli/configure/types.js +16 -0
  110. package/lib/cli/configure/types.js.map +3 -3
  111. package/lib/cli/format/index.js +44 -20
  112. package/lib/cli/format/index.js.map +1 -1
  113. package/lib/cli/help/index.js +30 -6
  114. package/lib/cli/help/index.js.map +1 -1
  115. package/lib/cli/init/getConfig.d.ts +1 -1
  116. package/lib/cli/init/getConfig.js +100 -74
  117. package/lib/cli/init/getConfig.js.map +3 -3
  118. package/lib/cli/init/git.js +51 -16
  119. package/lib/cli/init/git.js.map +2 -2
  120. package/lib/cli/init/index.js +98 -67
  121. package/lib/cli/init/index.js.map +2 -2
  122. package/lib/cli/init/prompts.d.ts +4 -4
  123. package/lib/cli/init/prompts.js +48 -27
  124. package/lib/cli/init/prompts.js.map +2 -2
  125. package/lib/cli/init/types.js +41 -7
  126. package/lib/cli/init/types.js.map +1 -1
  127. package/lib/cli/init/validation.js +30 -2
  128. package/lib/cli/init/validation.js.map +1 -1
  129. package/lib/cli/init/writePackageJson.js +42 -8
  130. package/lib/cli/init/writePackageJson.js.map +2 -2
  131. package/lib/cli/lint/annotate/buildkite/eslint.js +37 -3
  132. package/lib/cli/lint/annotate/buildkite/eslint.js.map +1 -1
  133. package/lib/cli/lint/annotate/buildkite/index.js +45 -11
  134. package/lib/cli/lint/annotate/buildkite/index.js.map +1 -1
  135. package/lib/cli/lint/annotate/buildkite/internal.js +37 -3
  136. package/lib/cli/lint/annotate/buildkite/internal.js.map +1 -1
  137. package/lib/cli/lint/annotate/buildkite/prettier.js +37 -3
  138. package/lib/cli/lint/annotate/buildkite/prettier.js.map +1 -1
  139. package/lib/cli/lint/annotate/buildkite/tsc.js +37 -3
  140. package/lib/cli/lint/annotate/buildkite/tsc.js.map +1 -1
  141. package/lib/cli/lint/annotate/github/eslint.js +26 -2
  142. package/lib/cli/lint/annotate/github/eslint.js.map +1 -1
  143. package/lib/cli/lint/annotate/github/index.js +45 -11
  144. package/lib/cli/lint/annotate/github/index.js.map +1 -1
  145. package/lib/cli/lint/annotate/github/internal.js +26 -2
  146. package/lib/cli/lint/annotate/github/internal.js.map +1 -1
  147. package/lib/cli/lint/annotate/github/prettier.js +26 -2
  148. package/lib/cli/lint/annotate/github/prettier.js.map +1 -1
  149. package/lib/cli/lint/annotate/github/tsc.js +28 -4
  150. package/lib/cli/lint/annotate/github/tsc.js.map +2 -2
  151. package/lib/cli/lint/annotate/index.js +30 -6
  152. package/lib/cli/lint/annotate/index.js.map +1 -1
  153. package/lib/cli/lint/autofix.js +73 -37
  154. package/lib/cli/lint/autofix.js.map +1 -1
  155. package/lib/cli/lint/eslint.js +51 -16
  156. package/lib/cli/lint/eslint.js.map +3 -3
  157. package/lib/cli/lint/external.js +51 -19
  158. package/lib/cli/lint/external.js.map +2 -2
  159. package/lib/cli/lint/index.js +49 -25
  160. package/lib/cli/lint/index.js.map +1 -1
  161. package/lib/cli/lint/internal.js +42 -18
  162. package/lib/cli/lint/internal.js.map +1 -1
  163. package/lib/cli/lint/internalLints/detectBadCodeowners.js +33 -8
  164. package/lib/cli/lint/internalLints/detectBadCodeowners.js.map +1 -1
  165. package/lib/cli/lint/internalLints/noSkubaTemplateJs.js +45 -11
  166. package/lib/cli/lint/internalLints/noSkubaTemplateJs.js.map +2 -2
  167. package/lib/cli/lint/internalLints/patchRenovateConfig.js +55 -21
  168. package/lib/cli/lint/internalLints/patchRenovateConfig.js.map +2 -2
  169. package/lib/cli/lint/internalLints/refreshConfigFiles.js +63 -32
  170. package/lib/cli/lint/internalLints/refreshConfigFiles.js.map +2 -2
  171. package/lib/cli/lint/internalLints/upgrade/index.d.ts +1 -1
  172. package/lib/cli/lint/internalLints/upgrade/index.js +53 -22
  173. package/lib/cli/lint/internalLints/upgrade/index.js.map +3 -3
  174. package/lib/cli/lint/internalLints/upgrade/patches/10.0.4/index.js +28 -4
  175. package/lib/cli/lint/internalLints/upgrade/patches/10.0.4/index.js.map +1 -1
  176. package/lib/cli/lint/internalLints/upgrade/patches/10.0.4/removeYarnIgnoreOptionalFlags.js +45 -11
  177. package/lib/cli/lint/internalLints/upgrade/patches/10.0.4/removeYarnIgnoreOptionalFlags.js.map +2 -2
  178. package/lib/cli/lint/internalLints/upgrade/patches/10.1.0/index.js +30 -6
  179. package/lib/cli/lint/internalLints/upgrade/patches/10.1.0/index.js.map +1 -1
  180. package/lib/cli/lint/internalLints/upgrade/patches/10.1.0/migrateNpmrcToPnpmWorkspace.js +65 -34
  181. package/lib/cli/lint/internalLints/upgrade/patches/10.1.0/migrateNpmrcToPnpmWorkspace.js.map +2 -2
  182. package/lib/cli/lint/internalLints/upgrade/patches/10.1.0/stopBundlingInCDKTests.js +46 -11
  183. package/lib/cli/lint/internalLints/upgrade/patches/10.1.0/stopBundlingInCDKTests.js.map +2 -2
  184. package/lib/cli/lint/internalLints/upgrade/patches/12.0.2/index.js +28 -4
  185. package/lib/cli/lint/internalLints/upgrade/patches/12.0.2/index.js.map +1 -1
  186. package/lib/cli/lint/internalLints/upgrade/patches/12.0.2/unhandledRejections.js +59 -23
  187. package/lib/cli/lint/internalLints/upgrade/patches/12.0.2/unhandledRejections.js.map +2 -2
  188. package/lib/cli/lint/internalLints/upgrade/patches/12.1.1/index.js +28 -4
  189. package/lib/cli/lint/internalLints/upgrade/patches/12.1.1/index.js.map +1 -1
  190. package/lib/cli/lint/internalLints/upgrade/patches/12.1.1/patchJestSnapshots.js +46 -11
  191. package/lib/cli/lint/internalLints/upgrade/patches/12.1.1/patchJestSnapshots.js.map +2 -2
  192. package/lib/cli/lint/internalLints/upgrade/patches/12.3.0/index.js +30 -6
  193. package/lib/cli/lint/internalLints/upgrade/patches/12.3.0/index.js.map +1 -1
  194. package/lib/cli/lint/internalLints/upgrade/patches/12.3.0/patchApiTokenFromEnvironment.js +46 -11
  195. package/lib/cli/lint/internalLints/upgrade/patches/12.3.0/patchApiTokenFromEnvironment.js.map +2 -2
  196. package/lib/cli/lint/internalLints/upgrade/patches/12.3.0/patchDockerfileSyntaxDirective.js +46 -11
  197. package/lib/cli/lint/internalLints/upgrade/patches/12.3.0/patchDockerfileSyntaxDirective.js.map +2 -2
  198. package/lib/cli/lint/internalLints/upgrade/patches/12.4.0/index.js +28 -4
  199. package/lib/cli/lint/internalLints/upgrade/patches/12.4.0/index.js.map +1 -1
  200. package/lib/cli/lint/internalLints/upgrade/patches/12.4.0/patchDockerfileCIVariable.js +46 -11
  201. package/lib/cli/lint/internalLints/upgrade/patches/12.4.0/patchDockerfileCIVariable.js.map +2 -2
  202. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/configureTsConfigForESM.js +67 -29
  203. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/configureTsConfigForESM.js.map +2 -2
  204. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/index.js +34 -10
  205. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/index.js.map +1 -1
  206. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/patchApiDockerfiles.js +45 -11
  207. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/patchApiDockerfiles.js.map +2 -2
  208. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/rewriteSrcImports.d.ts +0 -4
  209. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/rewriteSrcImports.js +63 -18
  210. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/rewriteSrcImports.js.map +3 -3
  211. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/updateLambdaConfigs.js +50 -15
  212. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/updateLambdaConfigs.js.map +2 -2
  213. package/lib/cli/lint/internalLints/upgrade/patches/13.1.1/index.js +40 -0
  214. package/lib/cli/lint/internalLints/upgrade/patches/13.1.1/index.js.map +7 -0
  215. package/lib/cli/lint/internalLints/upgrade/patches/13.1.1/patchRootTsconfig.d.ts +3 -0
  216. package/lib/cli/lint/internalLints/upgrade/patches/13.1.1/patchRootTsconfig.js +133 -0
  217. package/lib/cli/lint/internalLints/upgrade/patches/13.1.1/patchRootTsconfig.js.map +7 -0
  218. package/lib/cli/lint/internalLints/upgrade/patches/13.1.1/upgradeNode.js +55 -0
  219. package/lib/cli/lint/internalLints/upgrade/patches/13.1.1/upgradeNode.js.map +7 -0
  220. package/lib/cli/lint/internalLints/upgrade/patches/7.3.1/addEmptyExports.js +51 -17
  221. package/lib/cli/lint/internalLints/upgrade/patches/7.3.1/addEmptyExports.js.map +2 -2
  222. package/lib/cli/lint/internalLints/upgrade/patches/7.3.1/index.js +34 -10
  223. package/lib/cli/lint/internalLints/upgrade/patches/7.3.1/index.js.map +1 -1
  224. package/lib/cli/lint/internalLints/upgrade/patches/7.3.1/patchDockerfile.js +44 -10
  225. package/lib/cli/lint/internalLints/upgrade/patches/7.3.1/patchDockerfile.js.map +2 -2
  226. package/lib/cli/lint/internalLints/upgrade/patches/7.3.1/patchServerListener.js +46 -12
  227. package/lib/cli/lint/internalLints/upgrade/patches/7.3.1/patchServerListener.js.map +2 -2
  228. package/lib/cli/lint/internalLints/upgrade/patches/8.0.0/index.js +28 -4
  229. package/lib/cli/lint/internalLints/upgrade/patches/8.0.0/index.js.map +1 -1
  230. package/lib/cli/lint/internalLints/upgrade/patches/8.0.0/patchPnpmPackageManager.js +49 -15
  231. package/lib/cli/lint/internalLints/upgrade/patches/8.0.0/patchPnpmPackageManager.js.map +2 -2
  232. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/collapseDuplicateMergeKeys.js +45 -11
  233. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/collapseDuplicateMergeKeys.js.map +2 -2
  234. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/index.js +34 -10
  235. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/index.js.map +1 -1
  236. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/moveNpmrcMounts.js +45 -11
  237. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/moveNpmrcMounts.js.map +2 -2
  238. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/patchDockerCompose.js +45 -11
  239. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/patchDockerCompose.js.map +2 -2
  240. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/patchDockerImages.js +47 -13
  241. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/patchDockerImages.js.map +2 -2
  242. package/lib/cli/lint/internalLints/upgrade/patches/9.0.1/index.js +28 -4
  243. package/lib/cli/lint/internalLints/upgrade/patches/9.0.1/index.js.map +1 -1
  244. package/lib/cli/lint/internalLints/upgrade/patches/9.0.1/patchPnpmDockerImages.js +45 -11
  245. package/lib/cli/lint/internalLints/upgrade/patches/9.0.1/patchPnpmDockerImages.js.map +2 -2
  246. package/lib/cli/lint/prettier.js +50 -15
  247. package/lib/cli/lint/prettier.js.map +3 -3
  248. package/lib/cli/lint/tsc.js +28 -4
  249. package/lib/cli/lint/tsc.js.map +1 -1
  250. package/lib/cli/lint/types.js +16 -0
  251. package/lib/cli/lint/types.js.map +3 -3
  252. package/lib/cli/migrate/index.d.ts +5 -0
  253. package/lib/cli/migrate/index.js +79 -15
  254. package/lib/cli/migrate/index.js.map +2 -2
  255. package/lib/cli/migrate/nodeVersion/checks.d.ts +1 -14
  256. package/lib/cli/migrate/nodeVersion/checks.js +51 -120
  257. package/lib/cli/migrate/nodeVersion/checks.js.map +2 -2
  258. package/lib/cli/migrate/nodeVersion/index.d.ts +8 -2
  259. package/lib/cli/migrate/nodeVersion/index.js +239 -65
  260. package/lib/cli/migrate/nodeVersion/index.js.map +3 -3
  261. package/lib/cli/migrate/nodeVersion/upgrade.d.ts +8 -0
  262. package/lib/cli/migrate/nodeVersion/upgrade.js +179 -0
  263. package/lib/cli/migrate/nodeVersion/upgrade.js.map +7 -0
  264. package/lib/cli/node/index.js +57 -20
  265. package/lib/cli/node/index.js.map +3 -3
  266. package/lib/cli/release/index.js +28 -4
  267. package/lib/cli/release/index.js.map +1 -1
  268. package/lib/cli/start/index.js +50 -16
  269. package/lib/cli/start/index.js.map +3 -3
  270. package/lib/cli/test/index.js +44 -4
  271. package/lib/cli/test/index.js.map +2 -2
  272. package/lib/cli/test/reporters/github/annotations.d.ts +9 -0
  273. package/lib/cli/test/reporters/github/annotations.js +102 -0
  274. package/lib/cli/test/reporters/github/annotations.js.map +7 -0
  275. package/lib/cli/test/reporters/github/index.d.ts +5 -0
  276. package/lib/cli/test/reporters/github/index.js +74 -0
  277. package/lib/cli/test/reporters/github/index.js.map +7 -0
  278. package/lib/cli/version/index.js +30 -6
  279. package/lib/cli/version/index.js.map +1 -1
  280. package/lib/index.d.ts +1 -0
  281. package/lib/index.js +46 -6
  282. package/lib/index.js.map +2 -2
  283. package/lib/skuba.js +45 -26
  284. package/lib/skuba.js.map +3 -3
  285. package/lib/utils/args.js +43 -6
  286. package/lib/utils/args.js.map +2 -2
  287. package/lib/utils/command.js +42 -4
  288. package/lib/utils/command.js.map +3 -3
  289. package/lib/utils/copy.js +57 -20
  290. package/lib/utils/copy.js.map +2 -2
  291. package/lib/utils/dir.js +72 -32
  292. package/lib/utils/dir.js.map +2 -2
  293. package/lib/utils/env.js +26 -2
  294. package/lib/utils/env.js.map +1 -1
  295. package/lib/utils/error.js +47 -10
  296. package/lib/utils/error.js.map +1 -1
  297. package/lib/utils/exec.js +61 -23
  298. package/lib/utils/exec.js.map +3 -3
  299. package/lib/utils/fs.js +40 -6
  300. package/lib/utils/fs.js.map +2 -2
  301. package/lib/utils/help.js +30 -6
  302. package/lib/utils/help.js.map +1 -1
  303. package/lib/utils/logging.js +38 -11
  304. package/lib/utils/logging.js.map +1 -1
  305. package/lib/utils/logo.js +48 -24
  306. package/lib/utils/logo.js.map +1 -1
  307. package/lib/utils/manifest.d.ts +2 -3
  308. package/lib/utils/manifest.js +48 -8
  309. package/lib/utils/manifest.js.map +3 -3
  310. package/lib/utils/npmrc.js +26 -2
  311. package/lib/utils/npmrc.js.map +1 -1
  312. package/lib/utils/packageManager.js +49 -12
  313. package/lib/utils/packageManager.js.map +2 -2
  314. package/lib/utils/port.js +39 -4
  315. package/lib/utils/port.js.map +2 -2
  316. package/lib/utils/sleep.js +26 -2
  317. package/lib/utils/sleep.js.map +1 -1
  318. package/lib/utils/template.js +55 -18
  319. package/lib/utils/template.js.map +3 -3
  320. package/lib/utils/validation.js +31 -2
  321. package/lib/utils/validation.js.map +1 -1
  322. package/lib/utils/version.js +46 -9
  323. package/lib/utils/version.js.map +2 -2
  324. package/lib/utils/wait.js +32 -7
  325. package/lib/utils/wait.js.map +1 -1
  326. package/lib/utils/worker.js +35 -10
  327. package/lib/utils/worker.js.map +1 -1
  328. package/lib/wrapper/function-arguments.d.js +1 -0
  329. package/lib/wrapper/functionHandler.js +49 -18
  330. package/lib/wrapper/functionHandler.js.map +2 -2
  331. package/lib/wrapper/http.js +43 -8
  332. package/lib/wrapper/http.js.map +2 -2
  333. package/lib/wrapper/index.js +7 -6
  334. package/lib/wrapper/index.js.map +1 -1
  335. package/lib/wrapper/main.js +42 -8
  336. package/lib/wrapper/main.js.map +3 -3
  337. package/lib/wrapper/requestListener.js +47 -13
  338. package/lib/wrapper/requestListener.js.map +2 -2
  339. package/lib/wrapper/server.js +28 -4
  340. package/lib/wrapper/server.js.map +1 -1
  341. package/package.json +42 -43
  342. package/template/base/_.prettierrc.js +1 -1
  343. package/template/base/_eslint.config.js +1 -1
  344. package/template/base/_pnpm-workspace.yaml +4 -3
  345. package/template/base/jest.config.ts +19 -0
  346. package/template/base/jest.setup.ts +3 -0
  347. package/template/express-rest-api/.buildkite/pipeline.yml +1 -1
  348. package/template/express-rest-api/.nvmrc +1 -1
  349. package/template/express-rest-api/package.json +7 -8
  350. package/template/express-rest-api/skuba.template.js +1 -1
  351. package/template/express-rest-api/src/app.test.ts +0 -1
  352. package/template/greeter/.buildkite/pipeline.yml +1 -1
  353. package/template/greeter/.nvmrc +1 -1
  354. package/template/greeter/package.json +4 -5
  355. package/template/greeter/skuba.template.js +1 -1
  356. package/template/greeter/src/app.test.ts +1 -3
  357. package/template/koa-rest-api/.buildkite/pipeline.yml +1 -1
  358. package/template/koa-rest-api/.nvmrc +1 -1
  359. package/template/koa-rest-api/package.json +8 -10
  360. package/template/koa-rest-api/skuba.template.js +1 -1
  361. package/template/koa-rest-api/src/api/jobs/getJobs.test.ts +0 -2
  362. package/template/koa-rest-api/src/api/jobs/postJob.test.ts +0 -2
  363. package/template/koa-rest-api/src/app.test.ts +0 -2
  364. package/template/koa-rest-api/src/framework/server.test.ts +2 -2
  365. package/template/koa-rest-api/src/framework/validation.test.ts +0 -2
  366. package/template/koa-rest-api/src/testing/metrics.ts +0 -2
  367. package/template/lambda-sqs-worker-cdk/.buildkite/pipeline.yml +2 -2
  368. package/template/lambda-sqs-worker-cdk/.nvmrc +1 -1
  369. package/template/lambda-sqs-worker-cdk/infra/__snapshots__/appStack.test.ts.snap +7 -19
  370. package/template/lambda-sqs-worker-cdk/infra/appStack.test.ts +9 -11
  371. package/template/lambda-sqs-worker-cdk/infra/appStack.ts +3 -3
  372. package/template/lambda-sqs-worker-cdk/infra/config.ts +2 -4
  373. package/template/lambda-sqs-worker-cdk/package.json +9 -9
  374. package/template/lambda-sqs-worker-cdk/skuba.template.js +13 -1
  375. package/template/lambda-sqs-worker-cdk/src/app.test.ts +13 -22
  376. package/template/lambda-sqs-worker-cdk/src/framework/handler.test.ts +0 -1
  377. package/template/lambda-sqs-worker-cdk/src/framework/validation.test.ts +31 -33
  378. package/template/lambda-sqs-worker-cdk/src/services/jobScorer.test.ts +2 -8
  379. package/template/lambda-sqs-worker-cdk/src/services/pipelineEventSender.test.ts +2 -3
  380. package/template/lambda-sqs-worker-cdk/src/testing/services.ts +3 -4
  381. package/template/oss-npm-package/.github/workflows/release.yml +1 -1
  382. package/template/oss-npm-package/.github/workflows/validate.yml +1 -1
  383. package/template/oss-npm-package/.nvmrc +1 -1
  384. package/template/oss-npm-package/_package.json +10 -3
  385. package/template/oss-npm-package/skuba.template.js +1 -1
  386. package/template/oss-npm-package/src/index.test.ts +0 -2
  387. package/template/oss-npm-package/tsconfig.json +2 -1
  388. package/template/oss-npm-package/tsdown.config.ts +11 -0
  389. package/template/private-npm-package/.nvmrc +1 -1
  390. package/template/private-npm-package/_package.json +11 -4
  391. package/template/private-npm-package/skuba.template.js +2 -2
  392. package/template/private-npm-package/src/index.test.ts +0 -2
  393. package/template/private-npm-package/tsconfig.json +2 -1
  394. package/template/private-npm-package/tsdown.config.ts +11 -0
  395. package/lib/cli/buildPackage/index.d.ts +0 -1
  396. package/lib/cli/buildPackage/index.js +0 -43
  397. package/lib/cli/buildPackage/index.js.map +0 -7
  398. package/lib/cli/lint/internalLints/upgrade/patches/12.5.0/addTypeModuleToPackageJson.d.ts +0 -6
  399. package/lib/cli/lint/internalLints/upgrade/patches/12.5.0/addTypeModuleToPackageJson.js +0 -86
  400. package/lib/cli/lint/internalLints/upgrade/patches/12.5.0/addTypeModuleToPackageJson.js.map +0 -7
  401. package/lib/cli/lint/internalLints/upgrade/patches/12.5.0/index.js +0 -16
  402. package/lib/cli/lint/internalLints/upgrade/patches/12.5.0/index.js.map +0 -7
  403. package/lib/cli/lint/internalLints/upgrade/patches/12.5.0/rewriteGlobalVars.d.ts +0 -7
  404. package/lib/cli/lint/internalLints/upgrade/patches/12.5.0/rewriteGlobalVars.js +0 -76
  405. package/lib/cli/lint/internalLints/upgrade/patches/12.5.0/rewriteGlobalVars.js.map +0 -7
  406. package/lib/cli/lint/internalLints/upgrade/patches/9.1.0/index.d.ts +0 -2
  407. package/lib/cli/lint/internalLints/upgrade/patches/9.1.0/index.js +0 -11
  408. package/lib/cli/lint/internalLints/upgrade/patches/9.1.0/index.js.map +0 -7
  409. package/lib/cli/lint/internalLints/upgrade/patches/9.1.0/upgradeNode.js +0 -34
  410. package/lib/cli/lint/internalLints/upgrade/patches/9.1.0/upgradeNode.js.map +0 -7
  411. package/lib/eslint.d.js +0 -1
  412. package/lib/eslint.d.js.map +0 -7
  413. package/template/base/vitest.config.ts +0 -25
  414. /package/lib/cli/lint/internalLints/upgrade/patches/{12.5.0 → 13.1.1}/index.d.ts +0 -0
  415. /package/lib/cli/lint/internalLints/upgrade/patches/{9.1.0 → 13.1.1}/upgradeNode.d.ts +0 -0
@@ -1,11 +1,48 @@
1
- import path from "path";
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 __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var command_exports = {};
30
+ __export(command_exports, {
31
+ COMMAND_ALIASES: () => COMMAND_ALIASES,
32
+ COMMAND_DIR: () => COMMAND_DIR,
33
+ COMMAND_LIST: () => COMMAND_LIST,
34
+ COMMAND_SET: () => COMMAND_SET,
35
+ commandToModule: () => commandToModule
36
+ });
37
+ module.exports = __toCommonJS(command_exports);
38
+ var import_path = __toESM(require("path"));
2
39
  const COMMAND_ALIASES = {
3
40
  "-h": "help",
4
41
  "--help": "help",
5
42
  "-v": "version",
6
43
  "--version": "version"
7
44
  };
8
- const COMMAND_DIR = path.join(import.meta.dirname, "..", "cli");
45
+ const COMMAND_DIR = import_path.default.join(__dirname, "..", "cli");
9
46
  const COMMAND_LIST = [
10
47
  "build",
11
48
  "build-package",
@@ -25,11 +62,12 @@ const COMMAND_SET = new Set(COMMAND_LIST);
25
62
  const commandToModule = (command) => command.split("-").map(
26
63
  (segment, index) => index === 0 ? segment : `${(segment[0] ?? "").toLocaleUpperCase()}${segment.slice(1)}`
27
64
  ).join("");
28
- export {
65
+ // Annotate the CommonJS export names for ESM import in node:
66
+ 0 && (module.exports = {
29
67
  COMMAND_ALIASES,
30
68
  COMMAND_DIR,
31
69
  COMMAND_LIST,
32
70
  COMMAND_SET,
33
71
  commandToModule
34
- };
72
+ });
35
73
  //# sourceMappingURL=command.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/command.ts"],
4
- "sourcesContent": ["import path from 'path';\n\nexport type Command = (typeof COMMAND_LIST)[number];\n\nexport const COMMAND_ALIASES: Record<string, Command> = {\n '-h': 'help',\n '--help': 'help',\n '-v': 'version',\n '--version': 'version',\n};\n\nexport const COMMAND_DIR = path.join(import.meta.dirname, '..', 'cli');\n\nexport const COMMAND_LIST = [\n 'build',\n 'build-package',\n 'configure',\n 'format',\n 'help',\n 'init',\n 'lint',\n 'migrate',\n 'node',\n 'release',\n 'start',\n 'test',\n 'version',\n] as const;\n\nexport const COMMAND_SET = new Set<string>(COMMAND_LIST);\n\nexport const commandToModule = (command: Command): string =>\n command\n .split('-')\n .map((segment, index) =>\n index === 0\n ? segment\n : `${(segment[0] ?? '').toLocaleUpperCase()}${segment.slice(1)}`,\n )\n .join('');\n"],
5
- "mappings": "AAAA,OAAO,UAAU;AAIV,MAAM,kBAA2C;AAAA,EACtD,MAAM;AAAA,EACN,UAAU;AAAA,EACV,MAAM;AAAA,EACN,aAAa;AACf;AAEO,MAAM,cAAc,KAAK,KAAK,YAAY,SAAS,MAAM,KAAK;AAE9D,MAAM,eAAe;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEO,MAAM,cAAc,IAAI,IAAY,YAAY;AAEhD,MAAM,kBAAkB,CAAC,YAC9B,QACG,MAAM,GAAG,EACT;AAAA,EAAI,CAAC,SAAS,UACb,UAAU,IACN,UACA,IAAI,QAAQ,CAAC,KAAK,IAAI,kBAAkB,CAAC,GAAG,QAAQ,MAAM,CAAC,CAAC;AAClE,EACC,KAAK,EAAE;",
6
- "names": []
4
+ "sourcesContent": ["import path from 'path';\n\nexport type Command = (typeof COMMAND_LIST)[number];\n\nexport const COMMAND_ALIASES: Record<string, Command> = {\n '-h': 'help',\n '--help': 'help',\n '-v': 'version',\n '--version': 'version',\n};\n\nexport const COMMAND_DIR = path.join(__dirname, '..', 'cli');\n\nexport const COMMAND_LIST = [\n 'build',\n 'build-package',\n 'configure',\n 'format',\n 'help',\n 'init',\n 'lint',\n 'migrate',\n 'node',\n 'release',\n 'start',\n 'test',\n 'version',\n] as const;\n\nexport const COMMAND_SET = new Set<string>(COMMAND_LIST);\n\nexport const commandToModule = (command: Command): string =>\n command\n .split('-')\n .map((segment, index) =>\n index === 0\n ? segment\n : `${(segment[0] ?? '').toLocaleUpperCase()}${segment.slice(1)}`,\n )\n .join('');\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAiB;AAIV,MAAM,kBAA2C;AAAA,EACtD,MAAM;AAAA,EACN,UAAU;AAAA,EACV,MAAM;AAAA,EACN,aAAa;AACf;AAEO,MAAM,cAAc,YAAAA,QAAK,KAAK,WAAW,MAAM,KAAK;AAEpD,MAAM,eAAe;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEO,MAAM,cAAc,IAAI,IAAY,YAAY;AAEhD,MAAM,kBAAkB,CAAC,YAC9B,QACG,MAAM,GAAG,EACT;AAAA,EAAI,CAAC,SAAS,UACb,UAAU,IACN,UACA,IAAI,QAAQ,CAAC,KAAK,IAAI,kBAAkB,CAAC,GAAG,QAAQ,MAAM,CAAC,CAAC;AAClE,EACC,KAAK,EAAE;",
6
+ "names": ["path"]
7
7
  }
package/lib/utils/copy.js CHANGED
@@ -1,13 +1,49 @@
1
- import path from "path";
2
- import ejs from "ejs";
3
- import fs from "fs-extra";
4
- import { isErrorWithCode } from "./error.js";
5
- import { log } from "./logging.js";
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 __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var copy_exports = {};
30
+ __export(copy_exports, {
31
+ copyFile: () => copyFile,
32
+ copyFiles: () => copyFiles,
33
+ createEjsRenderer: () => createEjsRenderer,
34
+ createStringReplacer: () => createStringReplacer
35
+ });
36
+ module.exports = __toCommonJS(copy_exports);
37
+ var import_path = __toESM(require("path"));
38
+ var import_ejs = __toESM(require("ejs"));
39
+ var import_fs_extra = __toESM(require("fs-extra"));
40
+ var import_error = require("./error.js");
41
+ var import_logging = require("./logging.js");
6
42
  const copyFile = async (sourcePath, destinationPath, {
7
43
  overwrite = true,
8
44
  processors
9
45
  }) => {
10
- const oldContents = await fs.promises.readFile(sourcePath, "utf8");
46
+ const oldContents = await import_fs_extra.default.promises.readFile(sourcePath, "utf8");
11
47
  const newContents = processors.reduce(
12
48
  (contents, process) => process(sourcePath, contents),
13
49
  oldContents
@@ -16,11 +52,11 @@ const copyFile = async (sourcePath, destinationPath, {
16
52
  return;
17
53
  }
18
54
  try {
19
- await fs.promises.writeFile(destinationPath, newContents, {
55
+ await import_fs_extra.default.promises.writeFile(destinationPath, newContents, {
20
56
  flag: overwrite ? "w" : "wx"
21
57
  });
22
58
  } catch (err) {
23
- if (isErrorWithCode(err, "EEXIST")) {
59
+ if ((0, import_error.isErrorWithCode)(err, "EEXIST")) {
24
60
  return;
25
61
  }
26
62
  throw err;
@@ -28,10 +64,10 @@ const copyFile = async (sourcePath, destinationPath, {
28
64
  };
29
65
  const createEjsRenderer = (templateData) => (sourcePath, contents) => {
30
66
  try {
31
- return ejs.render(contents, templateData, { strict: false });
67
+ return import_ejs.default.render(contents, templateData, { strict: false });
32
68
  } catch (err) {
33
- log.err("Failed to render", log.bold(sourcePath));
34
- log.subtle(err);
69
+ import_logging.log.err("Failed to render", import_logging.log.bold(sourcePath));
70
+ import_logging.log.subtle(err);
35
71
  return contents;
36
72
  }
37
73
  };
@@ -40,37 +76,38 @@ const createStringReplacer = (replacements) => (_sourcePath, contents) => replac
40
76
  contents
41
77
  );
42
78
  const copyFiles = async (opts, currentSourceDir = opts.sourceRoot, currentDestinationDir = opts.destinationRoot) => {
43
- const filenames = await fs.promises.readdir(currentSourceDir);
44
- const toDestinationPath = (filename) => path.join(
79
+ const filenames = await import_fs_extra.default.promises.readdir(currentSourceDir);
80
+ const toDestinationPath = (filename) => import_path.default.join(
45
81
  currentDestinationDir,
46
82
  opts.stripUnderscorePrefix ? filename.replace(/^_\./, ".").replace(/^_package\.json/, "package.json").replace(/^_eslint\.config\.js/, "eslint.config.js").replace(/^_pnpm-workspace\.yaml/, "pnpm-workspace.yaml") : filename
47
83
  );
48
84
  const filteredFilenames = filenames.filter(
49
85
  (filename) => opts.include(
50
- path.relative(opts.destinationRoot, toDestinationPath(filename))
86
+ import_path.default.relative(opts.destinationRoot, toDestinationPath(filename))
51
87
  )
52
88
  );
53
89
  await Promise.all(
54
90
  filteredFilenames.map(async (filename) => {
55
- const sourcePath = path.join(currentSourceDir, filename);
91
+ const sourcePath = import_path.default.join(currentSourceDir, filename);
56
92
  const destinationPath = toDestinationPath(filename);
57
93
  try {
58
94
  await copyFile(sourcePath, destinationPath, opts);
59
95
  } catch (err) {
60
- if (isErrorWithCode(err, "EISDIR")) {
61
- await fs.promises.mkdir(destinationPath, { recursive: true });
96
+ if ((0, import_error.isErrorWithCode)(err, "EISDIR")) {
97
+ await import_fs_extra.default.promises.mkdir(destinationPath, { recursive: true });
62
98
  return copyFiles(opts, sourcePath, destinationPath);
63
99
  }
64
- log.err("Failed to render", log.bold(sourcePath));
100
+ import_logging.log.err("Failed to render", import_logging.log.bold(sourcePath));
65
101
  throw err;
66
102
  }
67
103
  })
68
104
  );
69
105
  };
70
- export {
106
+ // Annotate the CommonJS export names for ESM import in node:
107
+ 0 && (module.exports = {
71
108
  copyFile,
72
109
  copyFiles,
73
110
  createEjsRenderer,
74
111
  createStringReplacer
75
- };
112
+ });
76
113
  //# sourceMappingURL=copy.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/copy.ts"],
4
4
  "sourcesContent": ["import path from 'path';\n\nimport ejs from 'ejs';\nimport fs from 'fs-extra';\n\nimport { isErrorWithCode } from './error.js';\nimport { log } from './logging.js';\n\nexport type TextProcessor = (sourcePath: string, contents: string) => string;\n\nexport const copyFile = async (\n sourcePath: string,\n destinationPath: string,\n {\n overwrite = true,\n processors,\n }: Pick<CopyFilesOptions, 'overwrite' | 'processors'>,\n) => {\n const oldContents = await fs.promises.readFile(sourcePath, 'utf8');\n\n const newContents = processors.reduce(\n (contents, process) => process(sourcePath, contents),\n oldContents,\n );\n\n if (oldContents === newContents && sourcePath === destinationPath) {\n return;\n }\n\n try {\n await fs.promises.writeFile(destinationPath, newContents, {\n flag: overwrite ? 'w' : 'wx',\n });\n } catch (err) {\n if (isErrorWithCode(err, 'EEXIST')) {\n return;\n }\n\n throw err;\n }\n};\n\ninterface CopyFilesOptions {\n sourceRoot: string;\n destinationRoot: string;\n\n include: (pathname: string) => boolean;\n overwrite?: boolean;\n processors: TextProcessor[];\n stripUnderscorePrefix?: boolean;\n}\n\nexport const createEjsRenderer =\n (templateData: Record<string, unknown>): TextProcessor =>\n (sourcePath: string, contents) => {\n try {\n return ejs.render(contents, templateData, { strict: false });\n } catch (err) {\n log.err('Failed to render', log.bold(sourcePath));\n log.subtle(err);\n return contents;\n }\n };\n\nexport const createStringReplacer =\n (\n replacements: Array<{\n input: RegExp;\n output: string;\n }>,\n ): TextProcessor =>\n (_sourcePath: string, contents) =>\n replacements.reduce(\n (newContents, { input, output }) => newContents.replace(input, output),\n contents,\n );\n\nexport const copyFiles = async (\n opts: CopyFilesOptions,\n currentSourceDir: string = opts.sourceRoot,\n currentDestinationDir: string = opts.destinationRoot,\n) => {\n const filenames = await fs.promises.readdir(currentSourceDir);\n\n const toDestinationPath = (filename: string) =>\n path.join(\n currentDestinationDir,\n opts.stripUnderscorePrefix\n ? filename\n .replace(/^_\\./, '.')\n .replace(/^_package\\.json/, 'package.json')\n .replace(/^_eslint\\.config\\.js/, 'eslint.config.js')\n .replace(/^_pnpm-workspace\\.yaml/, 'pnpm-workspace.yaml')\n : filename,\n );\n\n const filteredFilenames = filenames.filter((filename) =>\n opts.include(\n path.relative(opts.destinationRoot, toDestinationPath(filename)),\n ),\n );\n\n await Promise.all(\n filteredFilenames.map(async (filename) => {\n const sourcePath = path.join(currentSourceDir, filename);\n const destinationPath = toDestinationPath(filename);\n\n try {\n await copyFile(sourcePath, destinationPath, opts);\n } catch (err) {\n if (isErrorWithCode(err, 'EISDIR')) {\n await fs.promises.mkdir(destinationPath, { recursive: true });\n return copyFiles(opts, sourcePath, destinationPath);\n }\n\n log.err('Failed to render', log.bold(sourcePath));\n\n throw err;\n }\n }),\n );\n};\n"],
5
- "mappings": "AAAA,OAAO,UAAU;AAEjB,OAAO,SAAS;AAChB,OAAO,QAAQ;AAEf,SAAS,uBAAuB;AAChC,SAAS,WAAW;AAIb,MAAM,WAAW,OACtB,YACA,iBACA;AAAA,EACE,YAAY;AAAA,EACZ;AACF,MACG;AACH,QAAM,cAAc,MAAM,GAAG,SAAS,SAAS,YAAY,MAAM;AAEjE,QAAM,cAAc,WAAW;AAAA,IAC7B,CAAC,UAAU,YAAY,QAAQ,YAAY,QAAQ;AAAA,IACnD;AAAA,EACF;AAEA,MAAI,gBAAgB,eAAe,eAAe,iBAAiB;AACjE;AAAA,EACF;AAEA,MAAI;AACF,UAAM,GAAG,SAAS,UAAU,iBAAiB,aAAa;AAAA,MACxD,MAAM,YAAY,MAAM;AAAA,IAC1B,CAAC;AAAA,EACH,SAAS,KAAK;AACZ,QAAI,gBAAgB,KAAK,QAAQ,GAAG;AAClC;AAAA,IACF;AAEA,UAAM;AAAA,EACR;AACF;AAYO,MAAM,oBACX,CAAC,iBACD,CAAC,YAAoB,aAAa;AAChC,MAAI;AACF,WAAO,IAAI,OAAO,UAAU,cAAc,EAAE,QAAQ,MAAM,CAAC;AAAA,EAC7D,SAAS,KAAK;AACZ,QAAI,IAAI,oBAAoB,IAAI,KAAK,UAAU,CAAC;AAChD,QAAI,OAAO,GAAG;AACd,WAAO;AAAA,EACT;AACF;AAEK,MAAM,uBACX,CACE,iBAKF,CAAC,aAAqB,aACpB,aAAa;AAAA,EACX,CAAC,aAAa,EAAE,OAAO,OAAO,MAAM,YAAY,QAAQ,OAAO,MAAM;AAAA,EACrE;AACF;AAEG,MAAM,YAAY,OACvB,MACA,mBAA2B,KAAK,YAChC,wBAAgC,KAAK,oBAClC;AACH,QAAM,YAAY,MAAM,GAAG,SAAS,QAAQ,gBAAgB;AAE5D,QAAM,oBAAoB,CAAC,aACzB,KAAK;AAAA,IACH;AAAA,IACA,KAAK,wBACD,SACG,QAAQ,QAAQ,GAAG,EACnB,QAAQ,mBAAmB,cAAc,EACzC,QAAQ,wBAAwB,kBAAkB,EAClD,QAAQ,0BAA0B,qBAAqB,IAC1D;AAAA,EACN;AAEF,QAAM,oBAAoB,UAAU;AAAA,IAAO,CAAC,aAC1C,KAAK;AAAA,MACH,KAAK,SAAS,KAAK,iBAAiB,kBAAkB,QAAQ,CAAC;AAAA,IACjE;AAAA,EACF;AAEA,QAAM,QAAQ;AAAA,IACZ,kBAAkB,IAAI,OAAO,aAAa;AACxC,YAAM,aAAa,KAAK,KAAK,kBAAkB,QAAQ;AACvD,YAAM,kBAAkB,kBAAkB,QAAQ;AAElD,UAAI;AACF,cAAM,SAAS,YAAY,iBAAiB,IAAI;AAAA,MAClD,SAAS,KAAK;AACZ,YAAI,gBAAgB,KAAK,QAAQ,GAAG;AAClC,gBAAM,GAAG,SAAS,MAAM,iBAAiB,EAAE,WAAW,KAAK,CAAC;AAC5D,iBAAO,UAAU,MAAM,YAAY,eAAe;AAAA,QACpD;AAEA,YAAI,IAAI,oBAAoB,IAAI,KAAK,UAAU,CAAC;AAEhD,cAAM;AAAA,MACR;AAAA,IACF,CAAC;AAAA,EACH;AACF;",
6
- "names": []
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAiB;AAEjB,iBAAgB;AAChB,sBAAe;AAEf,mBAAgC;AAChC,qBAAoB;AAIb,MAAM,WAAW,OACtB,YACA,iBACA;AAAA,EACE,YAAY;AAAA,EACZ;AACF,MACG;AACH,QAAM,cAAc,MAAM,gBAAAA,QAAG,SAAS,SAAS,YAAY,MAAM;AAEjE,QAAM,cAAc,WAAW;AAAA,IAC7B,CAAC,UAAU,YAAY,QAAQ,YAAY,QAAQ;AAAA,IACnD;AAAA,EACF;AAEA,MAAI,gBAAgB,eAAe,eAAe,iBAAiB;AACjE;AAAA,EACF;AAEA,MAAI;AACF,UAAM,gBAAAA,QAAG,SAAS,UAAU,iBAAiB,aAAa;AAAA,MACxD,MAAM,YAAY,MAAM;AAAA,IAC1B,CAAC;AAAA,EACH,SAAS,KAAK;AACZ,YAAI,8BAAgB,KAAK,QAAQ,GAAG;AAClC;AAAA,IACF;AAEA,UAAM;AAAA,EACR;AACF;AAYO,MAAM,oBACX,CAAC,iBACD,CAAC,YAAoB,aAAa;AAChC,MAAI;AACF,WAAO,WAAAC,QAAI,OAAO,UAAU,cAAc,EAAE,QAAQ,MAAM,CAAC;AAAA,EAC7D,SAAS,KAAK;AACZ,uBAAI,IAAI,oBAAoB,mBAAI,KAAK,UAAU,CAAC;AAChD,uBAAI,OAAO,GAAG;AACd,WAAO;AAAA,EACT;AACF;AAEK,MAAM,uBACX,CACE,iBAKF,CAAC,aAAqB,aACpB,aAAa;AAAA,EACX,CAAC,aAAa,EAAE,OAAO,OAAO,MAAM,YAAY,QAAQ,OAAO,MAAM;AAAA,EACrE;AACF;AAEG,MAAM,YAAY,OACvB,MACA,mBAA2B,KAAK,YAChC,wBAAgC,KAAK,oBAClC;AACH,QAAM,YAAY,MAAM,gBAAAD,QAAG,SAAS,QAAQ,gBAAgB;AAE5D,QAAM,oBAAoB,CAAC,aACzB,YAAAE,QAAK;AAAA,IACH;AAAA,IACA,KAAK,wBACD,SACG,QAAQ,QAAQ,GAAG,EACnB,QAAQ,mBAAmB,cAAc,EACzC,QAAQ,wBAAwB,kBAAkB,EAClD,QAAQ,0BAA0B,qBAAqB,IAC1D;AAAA,EACN;AAEF,QAAM,oBAAoB,UAAU;AAAA,IAAO,CAAC,aAC1C,KAAK;AAAA,MACH,YAAAA,QAAK,SAAS,KAAK,iBAAiB,kBAAkB,QAAQ,CAAC;AAAA,IACjE;AAAA,EACF;AAEA,QAAM,QAAQ;AAAA,IACZ,kBAAkB,IAAI,OAAO,aAAa;AACxC,YAAM,aAAa,YAAAA,QAAK,KAAK,kBAAkB,QAAQ;AACvD,YAAM,kBAAkB,kBAAkB,QAAQ;AAElD,UAAI;AACF,cAAM,SAAS,YAAY,iBAAiB,IAAI;AAAA,MAClD,SAAS,KAAK;AACZ,gBAAI,8BAAgB,KAAK,QAAQ,GAAG;AAClC,gBAAM,gBAAAF,QAAG,SAAS,MAAM,iBAAiB,EAAE,WAAW,KAAK,CAAC;AAC5D,iBAAO,UAAU,MAAM,YAAY,eAAe;AAAA,QACpD;AAEA,2BAAI,IAAI,oBAAoB,mBAAI,KAAK,UAAU,CAAC;AAEhD,cAAM;AAAA,MACR;AAAA,IACF,CAAC;AAAA,EACH;AACF;",
6
+ "names": ["fs", "ejs", "path"]
7
7
  }
package/lib/utils/dir.js CHANGED
@@ -1,27 +1,66 @@
1
- import path from "path";
2
- import fs from "fs-extra";
3
- import ignore from "ignore";
4
- import picomatch from "picomatch";
5
- import { isErrorWithCode } from "./error.js";
6
- import { pathExists } from "./fs.js";
7
- import * as Git from "@skuba-lib/api/git";
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 __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var dir_exports = {};
30
+ __export(dir_exports, {
31
+ buildPatternToFilepathMap: () => buildPatternToFilepathMap,
32
+ crawlDirectory: () => crawlDirectory,
33
+ createInclusionFilter: () => createInclusionFilter,
34
+ findCurrentWorkspaceProjectRoot: () => findCurrentWorkspaceProjectRoot,
35
+ findWorkspaceRoot: () => findWorkspaceRoot,
36
+ locateFurthestFile: () => locateFurthestFile,
37
+ locateNearestFile: () => locateNearestFile
38
+ });
39
+ module.exports = __toCommonJS(dir_exports);
40
+ var import_path = __toESM(require("path"));
41
+ var import_fs_extra = __toESM(require("fs-extra"));
42
+ var import_ignore = __toESM(require("ignore"));
43
+ var import_picomatch = __toESM(require("picomatch"));
44
+ var import_error = require("./error.js");
45
+ var import_fs = require("./fs.js");
46
+ var Git = __toESM(require("@skuba-lib/api/git"));
8
47
  const buildPatternToFilepathMap = (patterns, allFilepaths, options) => Object.fromEntries(
9
48
  patterns.map((pattern) => {
10
- const isMatch = picomatch(pattern, options);
49
+ const isMatch = (0, import_picomatch.default)(pattern, options);
11
50
  const filepaths = allFilepaths.filter((filepath) => isMatch(filepath));
12
51
  return [pattern, filepaths];
13
52
  })
14
53
  );
15
54
  const crawlDirectory = async (root, ignoreFilenames = [".gitignore"]) => {
16
55
  const ignoreFileFilter = await createInclusionFilter(
17
- ignoreFilenames.map((ignoreFilename) => path.join(root, ignoreFilename))
56
+ ignoreFilenames.map((ignoreFilename) => import_path.default.join(root, ignoreFilename))
18
57
  );
19
58
  const absoluteFilenames = await crawl(root, {
20
59
  includeDirName: (dirname) => ![".git", "node_modules"].includes(dirname),
21
- includeFilePath: (pathname) => ignoreFileFilter(path.relative(root, pathname))
60
+ includeFilePath: (pathname) => ignoreFileFilter(import_path.default.relative(root, pathname))
22
61
  });
23
62
  const relativeFilepaths = absoluteFilenames.map(
24
- (filepath) => path.relative(root, filepath)
63
+ (filepath) => import_path.default.relative(root, filepath)
25
64
  );
26
65
  return relativeFilepaths;
27
66
  };
@@ -29,26 +68,26 @@ const createInclusionFilter = async (ignoreFilepaths) => {
29
68
  const ignoreFiles = await Promise.all(
30
69
  ignoreFilepaths.map(async (ignoreFilepath) => {
31
70
  try {
32
- return await fs.promises.readFile(ignoreFilepath, "utf8");
71
+ return await import_fs_extra.default.promises.readFile(ignoreFilepath, "utf8");
33
72
  } catch (err) {
34
- if (isErrorWithCode(err, "ENOENT")) {
73
+ if ((0, import_error.isErrorWithCode)(err, "ENOENT")) {
35
74
  return;
36
75
  }
37
76
  throw err;
38
77
  }
39
78
  })
40
79
  );
41
- const managers = ignoreFiles.filter((value) => typeof value === "string").map((value) => ignore().add(value));
42
- return ignore().add(".git").add(managers).createFilter();
80
+ const managers = ignoreFiles.filter((value) => typeof value === "string").map((value) => (0, import_ignore.default)().add(value));
81
+ return (0, import_ignore.default)().add(".git").add(managers).createFilter();
43
82
  };
44
83
  async function crawl(directoryPath, filters, paths = []) {
45
84
  try {
46
- const entries = await fs.promises.readdir(directoryPath, {
85
+ const entries = await import_fs_extra.default.promises.readdir(directoryPath, {
47
86
  withFileTypes: true
48
87
  });
49
88
  await Promise.all(
50
89
  entries.map(async (entry) => {
51
- const fullPath = path.join(directoryPath, entry.name);
90
+ const fullPath = import_path.default.join(directoryPath, entry.name);
52
91
  if ((entry.isFile() || entry.isSymbolicLink()) && filters.includeFilePath(fullPath)) {
53
92
  paths.push(fullPath);
54
93
  }
@@ -66,12 +105,12 @@ const locateNearestFile = async ({
66
105
  filename
67
106
  }) => {
68
107
  let currentDir = cwd;
69
- while (currentDir !== path.dirname(currentDir)) {
70
- const filePath = path.join(currentDir, filename);
71
- if (await pathExists(filePath)) {
108
+ while (currentDir !== import_path.default.dirname(currentDir)) {
109
+ const filePath = import_path.default.join(currentDir, filename);
110
+ if (await (0, import_fs.pathExists)(filePath)) {
72
111
  return filePath;
73
112
  }
74
- currentDir = path.dirname(currentDir);
113
+ currentDir = import_path.default.dirname(currentDir);
75
114
  }
76
115
  return null;
77
116
  };
@@ -81,12 +120,12 @@ const locateFurthestFile = async ({
81
120
  }) => {
82
121
  let currentDir = cwd;
83
122
  let furthestFilePath = null;
84
- while (currentDir !== path.dirname(currentDir)) {
85
- const filePath = path.join(currentDir, filename);
86
- if (await pathExists(filePath)) {
123
+ while (currentDir !== import_path.default.dirname(currentDir)) {
124
+ const filePath = import_path.default.join(currentDir, filename);
125
+ if (await (0, import_fs.pathExists)(filePath)) {
87
126
  furthestFilePath = filePath;
88
127
  }
89
- currentDir = path.dirname(currentDir);
128
+ currentDir = import_path.default.dirname(currentDir);
90
129
  }
91
130
  return furthestFilePath;
92
131
  };
@@ -100,14 +139,14 @@ const findWorkspaceRoot = async (cwd = process.cwd()) => {
100
139
  Git.findRoot({ dir: cwd })
101
140
  ]);
102
141
  const candidates = [
103
- pnpmLock ? path.dirname(pnpmLock) : null,
104
- yarnLock ? path.dirname(yarnLock) : null,
105
- packageJson ? path.dirname(packageJson) : null,
142
+ pnpmLock ? import_path.default.dirname(pnpmLock) : null,
143
+ yarnLock ? import_path.default.dirname(yarnLock) : null,
144
+ packageJson ? import_path.default.dirname(packageJson) : null,
106
145
  gitRoot
107
146
  ].filter((dir) => dir !== null);
108
147
  if (candidates[0]) {
109
148
  return candidates.reduce((longest, current) => {
110
- if (current.split(path.sep).length > longest.split(path.sep).length) {
149
+ if (current.split(import_path.default.sep).length > longest.split(import_path.default.sep).length) {
111
150
  return current;
112
151
  }
113
152
  return longest;
@@ -122,9 +161,10 @@ const findCurrentWorkspaceProjectRoot = async (cwd = process.cwd()) => {
122
161
  cwd,
123
162
  filename: "package.json"
124
163
  });
125
- return packageJson ? path.dirname(packageJson) : null;
164
+ return packageJson ? import_path.default.dirname(packageJson) : null;
126
165
  };
127
- export {
166
+ // Annotate the CommonJS export names for ESM import in node:
167
+ 0 && (module.exports = {
128
168
  buildPatternToFilepathMap,
129
169
  crawlDirectory,
130
170
  createInclusionFilter,
@@ -132,5 +172,5 @@ export {
132
172
  findWorkspaceRoot,
133
173
  locateFurthestFile,
134
174
  locateNearestFile
135
- };
175
+ });
136
176
  //# sourceMappingURL=dir.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/dir.ts"],
4
4
  "sourcesContent": ["import path from 'path';\n\nimport fs from 'fs-extra';\nimport ignore from 'ignore';\nimport picomatch from 'picomatch';\n\nimport { isErrorWithCode } from './error.js';\nimport { pathExists } from './fs.js';\n\nimport * as Git from '@skuba-lib/api/git';\n\n/**\n * Build a map that associates each glob pattern with its matching filepaths.\n */\nexport const buildPatternToFilepathMap = (\n patterns: string[],\n allFilepaths: string[],\n options?: picomatch.PicomatchOptions,\n) =>\n Object.fromEntries(\n patterns.map((pattern) => {\n const isMatch = picomatch(pattern, options);\n\n const filepaths = allFilepaths.filter((filepath) => isMatch(filepath));\n\n return [pattern, filepaths] as const;\n }),\n );\n\n/**\n * List relative filepaths contained within a directory root.\n *\n * This excludes:\n *\n * - Patterns in the ignore files specified in `ignoreFilenames`\n * - `.git` subdirectories\n * - `node_modules` subdirectories\n */\nexport const crawlDirectory = async (\n root: string,\n ignoreFilenames = ['.gitignore'],\n) => {\n const ignoreFileFilter = await createInclusionFilter(\n ignoreFilenames.map((ignoreFilename) => path.join(root, ignoreFilename)),\n );\n\n const absoluteFilenames = await crawl(root, {\n includeDirName: (dirname) => !['.git', 'node_modules'].includes(dirname),\n includeFilePath: (pathname) =>\n ignoreFileFilter(path.relative(root, pathname)),\n });\n\n const relativeFilepaths = absoluteFilenames.map((filepath) =>\n path.relative(root, filepath),\n );\n\n return relativeFilepaths;\n};\n\n/**\n * Create a filter function that excludes filepaths based on ignore files like\n * `.gitignore` and `.prettierignore`.\n */\nexport const createInclusionFilter = async (ignoreFilepaths: string[]) => {\n const ignoreFiles = await Promise.all(\n ignoreFilepaths.map(async (ignoreFilepath) => {\n try {\n return await fs.promises.readFile(ignoreFilepath, 'utf8');\n } catch (err) {\n if (isErrorWithCode(err, 'ENOENT')) {\n return;\n }\n\n throw err;\n }\n }),\n );\n\n const managers = ignoreFiles\n .filter((value): value is string => typeof value === 'string')\n .map((value) => ignore().add(value));\n\n return ignore().add('.git').add(managers).createFilter();\n};\n\n/**\n * Recursively crawl a directory and return all file paths that match the\n * filters. `paths` is mutated and returned.\n */\nasync function crawl(\n directoryPath: string,\n filters: {\n includeDirName: (dirName: string) => boolean;\n includeFilePath: (path: string) => boolean;\n },\n paths: string[] = [],\n) {\n try {\n const entries = await fs.promises.readdir(directoryPath, {\n withFileTypes: true,\n });\n\n await Promise.all(\n entries.map(async (entry) => {\n const fullPath = path.join(directoryPath, entry.name);\n\n if (\n (entry.isFile() || entry.isSymbolicLink()) &&\n filters.includeFilePath(fullPath)\n ) {\n paths.push(fullPath);\n }\n\n if (entry.isDirectory() && filters.includeDirName(entry.name)) {\n await crawl(fullPath, filters, paths);\n }\n }),\n );\n } catch {\n // Ignore errors, because of e.g. permission issues reading directories\n }\n\n return paths;\n}\n\nexport const locateNearestFile = async ({\n cwd,\n filename,\n}: {\n cwd: string;\n filename: string;\n}) => {\n let currentDir = cwd;\n while (currentDir !== path.dirname(currentDir)) {\n const filePath = path.join(currentDir, filename);\n if (await pathExists(filePath)) {\n return filePath;\n }\n currentDir = path.dirname(currentDir);\n }\n\n return null;\n};\n\nexport const locateFurthestFile = async ({\n cwd,\n filename,\n}: {\n cwd: string;\n filename: string;\n}) => {\n let currentDir = cwd;\n let furthestFilePath: string | null = null;\n\n while (currentDir !== path.dirname(currentDir)) {\n const filePath = path.join(currentDir, filename);\n if (await pathExists(filePath)) {\n furthestFilePath = filePath;\n }\n currentDir = path.dirname(currentDir);\n }\n\n return furthestFilePath;\n};\n\nconst workspaceRootCache: Record<string, string | null> = {};\n\nexport const findWorkspaceRoot = async (\n cwd = process.cwd(),\n): Promise<string | null> => {\n const find = async (): Promise<string | null> => {\n const [pnpmLock, yarnLock, packageJson, gitRoot] = await Promise.all([\n locateNearestFile({ cwd, filename: 'pnpm-lock.yaml' }),\n locateNearestFile({ cwd, filename: 'yarn.lock' }),\n locateFurthestFile({ cwd, filename: 'package.json' }),\n Git.findRoot({ dir: cwd }),\n ]);\n\n const candidates = [\n pnpmLock ? path.dirname(pnpmLock) : null,\n yarnLock ? path.dirname(yarnLock) : null,\n packageJson ? path.dirname(packageJson) : null,\n gitRoot,\n ].filter((dir): dir is string => dir !== null);\n\n if (candidates[0]) {\n // Pick the longest path. This will be the most specific, which helps guard against someone\n // having an accidental lockfile in a parent directory by mistake.\n\n return candidates.reduce((longest, current) => {\n if (current.split(path.sep).length > longest.split(path.sep).length) {\n return current;\n }\n return longest;\n }, candidates[0]);\n }\n\n return null;\n };\n\n return (workspaceRootCache[cwd] ??= await find());\n};\n\nexport const findCurrentWorkspaceProjectRoot = async (\n cwd = process.cwd(),\n): Promise<string | null> => {\n const packageJson = await locateNearestFile({\n cwd,\n filename: 'package.json',\n });\n return packageJson ? path.dirname(packageJson) : null;\n};\n"],
5
- "mappings": "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",
6
- "names": []
5
+ "mappings": "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",
6
+ "names": ["picomatch", "path", "fs", "ignore"]
7
7
  }
package/lib/utils/env.js CHANGED
@@ -1,5 +1,29 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var env_exports = {};
20
+ __export(env_exports, {
21
+ isCiEnv: () => isCiEnv
22
+ });
23
+ module.exports = __toCommonJS(env_exports);
1
24
  const isCiEnv = (env = process.env) => Boolean(env.BUILDKITE || env.CI || env.GITHUB_ACTIONS);
2
- export {
25
+ // Annotate the CommonJS export names for ESM import in node:
26
+ 0 && (module.exports = {
3
27
  isCiEnv
4
- };
28
+ });
5
29
  //# sourceMappingURL=env.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/env.ts"],
4
4
  "sourcesContent": ["/**\n * Whether the code is executing in a CI environment.\n */\nexport const isCiEnv = (env = process.env): boolean =>\n Boolean(env.BUILDKITE || env.CI || env.GITHUB_ACTIONS);\n"],
5
- "mappings": "AAGO,MAAM,UAAU,CAAC,MAAM,QAAQ,QACpC,QAAQ,IAAI,aAAa,IAAI,MAAM,IAAI,cAAc;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGO,MAAM,UAAU,CAAC,MAAM,QAAQ,QACpC,QAAQ,IAAI,aAAa,IAAI,MAAM,IAAI,cAAc;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,43 @@
1
- import { inspect } from "util";
2
- import * as z from "zod/v4";
3
- import { log } from "./logging.js";
4
- import { hasNumberProp, hasProp } from "./validation.js";
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 __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var error_exports = {};
30
+ __export(error_exports, {
31
+ concurrentlyErrorsSchema: () => concurrentlyErrorsSchema,
32
+ createTerseError: () => createTerseError,
33
+ handleCliError: () => handleCliError,
34
+ isErrorWithCode: () => isErrorWithCode
35
+ });
36
+ module.exports = __toCommonJS(error_exports);
37
+ var import_util = require("util");
38
+ var z = __toESM(require("zod/v4"));
39
+ var import_logging = require("./logging.js");
40
+ var import_validation = require("./validation.js");
5
41
  const concurrentlyErrorsSchema = z.array(
6
42
  z.object({
7
43
  command: z.object({
@@ -13,23 +49,24 @@ const concurrentlyErrorsSchema = z.array(
13
49
  })
14
50
  );
15
51
  const createTerseError = (message) => Object.assign(new Error(message), {
16
- [inspect.custom]: () => message
52
+ [import_util.inspect.custom]: () => message
17
53
  });
18
- const isExecaError = (err) => hasNumberProp(err, "exitCode");
54
+ const isExecaError = (err) => (0, import_validation.hasNumberProp)(err, "exitCode");
19
55
  const handleCliError = (err) => {
20
56
  if (isExecaError(err)) {
21
57
  process.exitCode = err.exitCode;
22
58
  return;
23
59
  }
24
- log.err(inspect(err));
60
+ import_logging.log.err((0, import_util.inspect)(err));
25
61
  process.exitCode = 1;
26
62
  return;
27
63
  };
28
- const isErrorWithCode = (err, code) => hasProp(err, "code") && err.code === code;
29
- export {
64
+ const isErrorWithCode = (err, code) => (0, import_validation.hasProp)(err, "code") && err.code === code;
65
+ // Annotate the CommonJS export names for ESM import in node:
66
+ 0 && (module.exports = {
30
67
  concurrentlyErrorsSchema,
31
68
  createTerseError,
32
69
  handleCliError,
33
70
  isErrorWithCode
34
- };
71
+ });
35
72
  //# sourceMappingURL=error.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/error.ts"],
4
4
  "sourcesContent": ["import { inspect } from 'util';\n\nimport type { ExecaError } from 'execa';\nimport * as z from 'zod/v4';\n\nimport { log } from './logging.js';\nimport { hasNumberProp, hasProp } from './validation.js';\n\nexport type ConcurrentlyErrors = z.infer<typeof concurrentlyErrorsSchema>;\n\nexport const concurrentlyErrorsSchema = z.array(\n z.object({\n command: z.object({\n command: z.string(),\n name: z.string(),\n }),\n index: z.number(),\n exitCode: z.number(),\n }),\n);\n\n/**\n * Creates an error that returns its plain `message` rather than a full stack\n * trace when `util.inspect`ed.\n *\n * This can be useful for terser handling and logging of known error scenarios\n * that have descriptive messages.\n *\n * https://nodejs.org/api/util.html#custom-inspection-functions-on-objects\n */\nexport const createTerseError = (message?: string) =>\n Object.assign(new Error(message), {\n [inspect.custom]: () => message,\n });\n\nconst isExecaError = (err: unknown): err is ExecaError =>\n hasNumberProp(err, 'exitCode');\n\nexport const handleCliError = (err: unknown) => {\n if (isExecaError(err)) {\n process.exitCode = err.exitCode;\n return;\n }\n\n log.err(inspect(err));\n process.exitCode = 1;\n return;\n};\n\nexport const isErrorWithCode = <T>(\n err: unknown,\n code: T,\n): err is Record<PropertyKey, unknown> & { code: T } =>\n hasProp(err, 'code') && err.code === code;\n"],
5
- "mappings": "AAAA,SAAS,eAAe;AAGxB,YAAY,OAAO;AAEnB,SAAS,WAAW;AACpB,SAAS,eAAe,eAAe;AAIhC,MAAM,2BAA2B,EAAE;AAAA,EACxC,EAAE,OAAO;AAAA,IACP,SAAS,EAAE,OAAO;AAAA,MAChB,SAAS,EAAE,OAAO;AAAA,MAClB,MAAM,EAAE,OAAO;AAAA,IACjB,CAAC;AAAA,IACD,OAAO,EAAE,OAAO;AAAA,IAChB,UAAU,EAAE,OAAO;AAAA,EACrB,CAAC;AACH;AAWO,MAAM,mBAAmB,CAAC,YAC/B,OAAO,OAAO,IAAI,MAAM,OAAO,GAAG;AAAA,EAChC,CAAC,QAAQ,MAAM,GAAG,MAAM;AAC1B,CAAC;AAEH,MAAM,eAAe,CAAC,QACpB,cAAc,KAAK,UAAU;AAExB,MAAM,iBAAiB,CAAC,QAAiB;AAC9C,MAAI,aAAa,GAAG,GAAG;AACrB,YAAQ,WAAW,IAAI;AACvB;AAAA,EACF;AAEA,MAAI,IAAI,QAAQ,GAAG,CAAC;AACpB,UAAQ,WAAW;AACnB;AACF;AAEO,MAAM,kBAAkB,CAC7B,KACA,SAEA,QAAQ,KAAK,MAAM,KAAK,IAAI,SAAS;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAwB;AAGxB,QAAmB;AAEnB,qBAAoB;AACpB,wBAAuC;AAIhC,MAAM,2BAA2B,EAAE;AAAA,EACxC,EAAE,OAAO;AAAA,IACP,SAAS,EAAE,OAAO;AAAA,MAChB,SAAS,EAAE,OAAO;AAAA,MAClB,MAAM,EAAE,OAAO;AAAA,IACjB,CAAC;AAAA,IACD,OAAO,EAAE,OAAO;AAAA,IAChB,UAAU,EAAE,OAAO;AAAA,EACrB,CAAC;AACH;AAWO,MAAM,mBAAmB,CAAC,YAC/B,OAAO,OAAO,IAAI,MAAM,OAAO,GAAG;AAAA,EAChC,CAAC,oBAAQ,MAAM,GAAG,MAAM;AAC1B,CAAC;AAEH,MAAM,eAAe,CAAC,YACpB,iCAAc,KAAK,UAAU;AAExB,MAAM,iBAAiB,CAAC,QAAiB;AAC9C,MAAI,aAAa,GAAG,GAAG;AACrB,YAAQ,WAAW,IAAI;AACvB;AAAA,EACF;AAEA,qBAAI,QAAI,qBAAQ,GAAG,CAAC;AACpB,UAAQ,WAAW;AACnB;AACF;AAEO,MAAM,kBAAkB,CAC7B,KACA,aAEA,2BAAQ,KAAK,MAAM,KAAK,IAAI,SAAS;",
6
6
  "names": []
7
7
  }