skuba 14.0.0-esmify-skuba-20251105034821 → 14.0.0-hacky-hack-lang-json-20260108235938

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 (408) 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 +3 -3
  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 +3 -2
  19. package/lib/cli/build/assets.js +60 -28
  20. package/lib/cli/build/assets.js.map +3 -3
  21. package/lib/cli/build/esbuild.d.ts +4 -2
  22. package/lib/cli/build/esbuild.js +64 -23
  23. package/lib/cli/build/esbuild.js.map +2 -2
  24. package/lib/cli/build/index.js +53 -21
  25. package/lib/cli/build/index.js.map +2 -2
  26. package/lib/cli/build/tsc.js +60 -24
  27. package/lib/cli/build/tsc.js.map +3 -3
  28. package/lib/cli/buildPackage/index.js +32 -8
  29. package/lib/cli/buildPackage/index.js.map +1 -1
  30. package/lib/cli/configure/analyseConfiguration.js +50 -16
  31. package/lib/cli/configure/analyseConfiguration.js.map +2 -2
  32. package/lib/cli/configure/analyseDependencies.d.ts +1 -1
  33. package/lib/cli/configure/analyseDependencies.js +59 -25
  34. package/lib/cli/configure/analyseDependencies.js.map +3 -3
  35. package/lib/cli/configure/analysis/diff.js +29 -5
  36. package/lib/cli/configure/analysis/diff.js.map +2 -2
  37. package/lib/cli/configure/analysis/files.js +42 -8
  38. package/lib/cli/configure/analysis/files.js.map +2 -2
  39. package/lib/cli/configure/analysis/git.js +46 -12
  40. package/lib/cli/configure/analysis/git.js.map +2 -2
  41. package/lib/cli/configure/analysis/package.d.ts +3 -2
  42. package/lib/cli/configure/analysis/package.js +45 -10
  43. package/lib/cli/configure/analysis/package.js.map +3 -3
  44. package/lib/cli/configure/analysis/project.js +50 -18
  45. package/lib/cli/configure/analysis/project.js.map +2 -2
  46. package/lib/cli/configure/dependencies/index.js +35 -7
  47. package/lib/cli/configure/dependencies/index.js.map +1 -1
  48. package/lib/cli/configure/dependencies/seekDatadogCustomMetrics.js +28 -4
  49. package/lib/cli/configure/dependencies/seekDatadogCustomMetrics.js.map +1 -1
  50. package/lib/cli/configure/dependencies/seekKoala.js +28 -4
  51. package/lib/cli/configure/dependencies/seekKoala.js.map +1 -1
  52. package/lib/cli/configure/dependencies/skuba.js +28 -4
  53. package/lib/cli/configure/dependencies/skuba.js.map +1 -1
  54. package/lib/cli/configure/dependencies/skubaDeps.js +26 -2
  55. package/lib/cli/configure/dependencies/skubaDeps.js.map +1 -1
  56. package/lib/cli/configure/dependencies/skubaDive.js +29 -4
  57. package/lib/cli/configure/dependencies/skubaDive.js.map +1 -1
  58. package/lib/cli/configure/ensureTemplateCompletion.d.ts +1 -1
  59. package/lib/cli/configure/ensureTemplateCompletion.js +63 -32
  60. package/lib/cli/configure/ensureTemplateCompletion.js.map +3 -3
  61. package/lib/cli/configure/getEntryPoint.d.ts +2 -2
  62. package/lib/cli/configure/getEntryPoint.js +51 -19
  63. package/lib/cli/configure/getEntryPoint.js.map +3 -3
  64. package/lib/cli/configure/getProjectType.d.ts +1 -1
  65. package/lib/cli/configure/getProjectType.js +36 -17
  66. package/lib/cli/configure/getProjectType.js.map +2 -2
  67. package/lib/cli/configure/index.js +91 -56
  68. package/lib/cli/configure/index.js.map +3 -3
  69. package/lib/cli/configure/modules/eslint.js +34 -10
  70. package/lib/cli/configure/modules/eslint.js.map +1 -1
  71. package/lib/cli/configure/modules/ignore.js +32 -8
  72. package/lib/cli/configure/modules/ignore.js.map +1 -1
  73. package/lib/cli/configure/modules/index.js +44 -18
  74. package/lib/cli/configure/modules/index.js.map +2 -2
  75. package/lib/cli/configure/modules/jest.d.ts +2 -0
  76. package/lib/cli/configure/modules/jest.js +86 -0
  77. package/lib/cli/configure/modules/jest.js.map +7 -0
  78. package/lib/cli/configure/modules/nodemon.js +28 -4
  79. package/lib/cli/configure/modules/nodemon.js.map +1 -1
  80. package/lib/cli/configure/modules/package.js +34 -10
  81. package/lib/cli/configure/modules/package.js.map +1 -1
  82. package/lib/cli/configure/modules/prettier.js +35 -11
  83. package/lib/cli/configure/modules/prettier.js.map +1 -1
  84. package/lib/cli/configure/modules/renovate.js +40 -17
  85. package/lib/cli/configure/modules/renovate.js.map +2 -2
  86. package/lib/cli/configure/modules/serverless.js +26 -2
  87. package/lib/cli/configure/modules/serverless.js.map +1 -1
  88. package/lib/cli/configure/modules/tslint.js +28 -4
  89. package/lib/cli/configure/modules/tslint.js.map +1 -1
  90. package/lib/cli/configure/processing/configFile.js +39 -3
  91. package/lib/cli/configure/processing/configFile.js.map +1 -1
  92. package/lib/cli/configure/processing/deleteFiles.js +26 -2
  93. package/lib/cli/configure/processing/deleteFiles.js.map +1 -1
  94. package/lib/cli/configure/processing/javascript.js +27 -2
  95. package/lib/cli/configure/processing/javascript.js.map +1 -1
  96. package/lib/cli/configure/processing/json.js +31 -6
  97. package/lib/cli/configure/processing/json.js.map +1 -1
  98. package/lib/cli/configure/processing/loadFiles.js +26 -2
  99. package/lib/cli/configure/processing/loadFiles.js.map +1 -1
  100. package/lib/cli/configure/processing/module.js +28 -4
  101. package/lib/cli/configure/processing/module.js.map +1 -1
  102. package/lib/cli/configure/processing/package.d.ts +67 -1
  103. package/lib/cli/configure/processing/package.js +45 -8
  104. package/lib/cli/configure/processing/package.js.map +3 -3
  105. package/lib/cli/configure/processing/prettier.js +38 -4
  106. package/lib/cli/configure/processing/prettier.js.map +2 -2
  107. package/lib/cli/configure/processing/record.js +41 -5
  108. package/lib/cli/configure/processing/record.js.map +2 -2
  109. package/lib/cli/configure/processing/typescript.js +63 -26
  110. package/lib/cli/configure/processing/typescript.js.map +2 -2
  111. package/lib/cli/configure/types.d.ts +4 -15
  112. package/lib/cli/configure/types.js +16 -0
  113. package/lib/cli/configure/types.js.map +3 -3
  114. package/lib/cli/format/index.js +44 -20
  115. package/lib/cli/format/index.js.map +2 -2
  116. package/lib/cli/help/index.js +30 -6
  117. package/lib/cli/help/index.js.map +1 -1
  118. package/lib/cli/init/getConfig.d.ts +2 -2
  119. package/lib/cli/init/getConfig.js +121 -102
  120. package/lib/cli/init/getConfig.js.map +3 -3
  121. package/lib/cli/init/git.js +51 -16
  122. package/lib/cli/init/git.js.map +2 -2
  123. package/lib/cli/init/index.js +98 -67
  124. package/lib/cli/init/index.js.map +2 -2
  125. package/lib/cli/init/prompts.d.ts +13 -10
  126. package/lib/cli/init/prompts.js +56 -35
  127. package/lib/cli/init/prompts.js.map +2 -2
  128. package/lib/cli/init/types.d.ts +1 -1
  129. package/lib/cli/init/types.js +41 -7
  130. package/lib/cli/init/types.js.map +1 -1
  131. package/lib/cli/init/validation.js +30 -2
  132. package/lib/cli/init/validation.js.map +1 -1
  133. package/lib/cli/init/writePackageJson.js +42 -8
  134. package/lib/cli/init/writePackageJson.js.map +2 -2
  135. package/lib/cli/lint/annotate/buildkite/eslint.js +37 -3
  136. package/lib/cli/lint/annotate/buildkite/eslint.js.map +1 -1
  137. package/lib/cli/lint/annotate/buildkite/index.js +45 -11
  138. package/lib/cli/lint/annotate/buildkite/index.js.map +1 -1
  139. package/lib/cli/lint/annotate/buildkite/internal.js +37 -3
  140. package/lib/cli/lint/annotate/buildkite/internal.js.map +1 -1
  141. package/lib/cli/lint/annotate/buildkite/prettier.js +37 -3
  142. package/lib/cli/lint/annotate/buildkite/prettier.js.map +1 -1
  143. package/lib/cli/lint/annotate/buildkite/tsc.js +37 -3
  144. package/lib/cli/lint/annotate/buildkite/tsc.js.map +1 -1
  145. package/lib/cli/lint/annotate/github/eslint.js +26 -2
  146. package/lib/cli/lint/annotate/github/eslint.js.map +1 -1
  147. package/lib/cli/lint/annotate/github/index.js +45 -11
  148. package/lib/cli/lint/annotate/github/index.js.map +1 -1
  149. package/lib/cli/lint/annotate/github/internal.js +26 -2
  150. package/lib/cli/lint/annotate/github/internal.js.map +1 -1
  151. package/lib/cli/lint/annotate/github/prettier.js +26 -2
  152. package/lib/cli/lint/annotate/github/prettier.js.map +1 -1
  153. package/lib/cli/lint/annotate/github/tsc.js +28 -4
  154. package/lib/cli/lint/annotate/github/tsc.js.map +2 -2
  155. package/lib/cli/lint/annotate/index.js +30 -6
  156. package/lib/cli/lint/annotate/index.js.map +1 -1
  157. package/lib/cli/lint/autofix.d.ts +5 -0
  158. package/lib/cli/lint/autofix.js +80 -40
  159. package/lib/cli/lint/autofix.js.map +2 -2
  160. package/lib/cli/lint/eslint.js +51 -16
  161. package/lib/cli/lint/eslint.js.map +3 -3
  162. package/lib/cli/lint/external.js +51 -19
  163. package/lib/cli/lint/external.js.map +2 -2
  164. package/lib/cli/lint/index.js +50 -28
  165. package/lib/cli/lint/index.js.map +2 -2
  166. package/lib/cli/lint/internal.js +44 -18
  167. package/lib/cli/lint/internal.js.map +2 -2
  168. package/lib/cli/lint/internalLints/detectBadCodeowners.js +33 -8
  169. package/lib/cli/lint/internalLints/detectBadCodeowners.js.map +1 -1
  170. package/lib/cli/lint/internalLints/noSkubaTemplateJs.js +46 -14
  171. package/lib/cli/lint/internalLints/noSkubaTemplateJs.js.map +3 -3
  172. package/lib/cli/lint/internalLints/patchRenovateConfig.js +55 -21
  173. package/lib/cli/lint/internalLints/patchRenovateConfig.js.map +2 -2
  174. package/lib/cli/lint/internalLints/refreshConfigFiles.js +64 -35
  175. package/lib/cli/lint/internalLints/refreshConfigFiles.js.map +3 -3
  176. package/lib/cli/lint/internalLints/upgrade/index.d.ts +2 -2
  177. package/lib/cli/lint/internalLints/upgrade/index.js +105 -41
  178. package/lib/cli/lint/internalLints/upgrade/index.js.map +3 -3
  179. package/lib/cli/lint/internalLints/upgrade/patches/10.0.4/index.js +28 -4
  180. package/lib/cli/lint/internalLints/upgrade/patches/10.0.4/index.js.map +1 -1
  181. package/lib/cli/lint/internalLints/upgrade/patches/10.0.4/removeYarnIgnoreOptionalFlags.js +45 -11
  182. package/lib/cli/lint/internalLints/upgrade/patches/10.0.4/removeYarnIgnoreOptionalFlags.js.map +2 -2
  183. package/lib/cli/lint/internalLints/upgrade/patches/10.1.0/index.js +30 -6
  184. package/lib/cli/lint/internalLints/upgrade/patches/10.1.0/index.js.map +1 -1
  185. package/lib/cli/lint/internalLints/upgrade/patches/10.1.0/migrateNpmrcToPnpmWorkspace.js +65 -34
  186. package/lib/cli/lint/internalLints/upgrade/patches/10.1.0/migrateNpmrcToPnpmWorkspace.js.map +2 -2
  187. package/lib/cli/lint/internalLints/upgrade/patches/10.1.0/stopBundlingInCDKTests.js +46 -11
  188. package/lib/cli/lint/internalLints/upgrade/patches/10.1.0/stopBundlingInCDKTests.js.map +2 -2
  189. package/lib/cli/lint/internalLints/upgrade/patches/12.0.2/index.js +28 -4
  190. package/lib/cli/lint/internalLints/upgrade/patches/12.0.2/index.js.map +1 -1
  191. package/lib/cli/lint/internalLints/upgrade/patches/12.0.2/unhandledRejections.js +59 -23
  192. package/lib/cli/lint/internalLints/upgrade/patches/12.0.2/unhandledRejections.js.map +2 -2
  193. package/lib/cli/lint/internalLints/upgrade/patches/12.1.1/index.js +28 -4
  194. package/lib/cli/lint/internalLints/upgrade/patches/12.1.1/index.js.map +1 -1
  195. package/lib/cli/lint/internalLints/upgrade/patches/12.1.1/patchJestSnapshots.js +46 -11
  196. package/lib/cli/lint/internalLints/upgrade/patches/12.1.1/patchJestSnapshots.js.map +2 -2
  197. package/lib/cli/lint/internalLints/upgrade/patches/12.3.0/index.js +30 -6
  198. package/lib/cli/lint/internalLints/upgrade/patches/12.3.0/index.js.map +1 -1
  199. package/lib/cli/lint/internalLints/upgrade/patches/12.3.0/patchApiTokenFromEnvironment.js +46 -11
  200. package/lib/cli/lint/internalLints/upgrade/patches/12.3.0/patchApiTokenFromEnvironment.js.map +2 -2
  201. package/lib/cli/lint/internalLints/upgrade/patches/12.3.0/patchDockerfileSyntaxDirective.js +46 -11
  202. package/lib/cli/lint/internalLints/upgrade/patches/12.3.0/patchDockerfileSyntaxDirective.js.map +2 -2
  203. package/lib/cli/lint/internalLints/upgrade/patches/12.4.0/index.js +28 -4
  204. package/lib/cli/lint/internalLints/upgrade/patches/12.4.0/index.js.map +1 -1
  205. package/lib/cli/lint/internalLints/upgrade/patches/12.4.0/patchDockerfileCIVariable.js +46 -11
  206. package/lib/cli/lint/internalLints/upgrade/patches/12.4.0/patchDockerfileCIVariable.js.map +2 -2
  207. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/configureTsConfigForESM.js +67 -29
  208. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/configureTsConfigForESM.js.map +2 -2
  209. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/index.js +34 -10
  210. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/index.js.map +1 -1
  211. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/patchApiDockerfiles.js +45 -11
  212. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/patchApiDockerfiles.js.map +2 -2
  213. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/rewriteSrcImports.js +63 -17
  214. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/rewriteSrcImports.js.map +2 -2
  215. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/updateLambdaConfigs.js +50 -15
  216. package/lib/cli/lint/internalLints/upgrade/patches/12.4.1/updateLambdaConfigs.js.map +2 -2
  217. package/lib/cli/lint/internalLints/upgrade/patches/13.1.1/index.js +40 -0
  218. package/lib/cli/lint/internalLints/upgrade/patches/13.1.1/index.js.map +7 -0
  219. package/lib/cli/lint/internalLints/upgrade/patches/13.1.1/patchRootTsconfig.d.ts +3 -0
  220. package/lib/cli/lint/internalLints/upgrade/patches/13.1.1/patchRootTsconfig.js +149 -0
  221. package/lib/cli/lint/internalLints/upgrade/patches/13.1.1/patchRootTsconfig.js.map +7 -0
  222. package/lib/cli/lint/internalLints/upgrade/patches/13.1.1/upgradeNode.js +55 -0
  223. package/lib/cli/lint/internalLints/upgrade/patches/13.1.1/upgradeNode.js.map +7 -0
  224. package/lib/cli/lint/internalLints/upgrade/patches/7.3.1/addEmptyExports.js +51 -17
  225. package/lib/cli/lint/internalLints/upgrade/patches/7.3.1/addEmptyExports.js.map +2 -2
  226. package/lib/cli/lint/internalLints/upgrade/patches/7.3.1/index.js +34 -10
  227. package/lib/cli/lint/internalLints/upgrade/patches/7.3.1/index.js.map +1 -1
  228. package/lib/cli/lint/internalLints/upgrade/patches/7.3.1/patchDockerfile.js +44 -10
  229. package/lib/cli/lint/internalLints/upgrade/patches/7.3.1/patchDockerfile.js.map +2 -2
  230. package/lib/cli/lint/internalLints/upgrade/patches/7.3.1/patchServerListener.js +46 -12
  231. package/lib/cli/lint/internalLints/upgrade/patches/7.3.1/patchServerListener.js.map +2 -2
  232. package/lib/cli/lint/internalLints/upgrade/patches/8.0.0/index.js +28 -4
  233. package/lib/cli/lint/internalLints/upgrade/patches/8.0.0/index.js.map +1 -1
  234. package/lib/cli/lint/internalLints/upgrade/patches/8.0.0/patchPnpmPackageManager.js +49 -15
  235. package/lib/cli/lint/internalLints/upgrade/patches/8.0.0/patchPnpmPackageManager.js.map +2 -2
  236. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/collapseDuplicateMergeKeys.js +45 -11
  237. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/collapseDuplicateMergeKeys.js.map +2 -2
  238. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/index.js +34 -10
  239. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/index.js.map +1 -1
  240. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/moveNpmrcMounts.js +45 -11
  241. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/moveNpmrcMounts.js.map +2 -2
  242. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/patchDockerCompose.js +45 -11
  243. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/patchDockerCompose.js.map +2 -2
  244. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/patchDockerImages.js +47 -13
  245. package/lib/cli/lint/internalLints/upgrade/patches/8.2.1/patchDockerImages.js.map +2 -2
  246. package/lib/cli/lint/internalLints/upgrade/patches/9.0.1/index.js +28 -4
  247. package/lib/cli/lint/internalLints/upgrade/patches/9.0.1/index.js.map +1 -1
  248. package/lib/cli/lint/internalLints/upgrade/patches/9.0.1/patchPnpmDockerImages.js +45 -11
  249. package/lib/cli/lint/internalLints/upgrade/patches/9.0.1/patchPnpmDockerImages.js.map +2 -2
  250. package/lib/cli/lint/prettier.js +50 -15
  251. package/lib/cli/lint/prettier.js.map +3 -3
  252. package/lib/cli/lint/tsc.js +28 -4
  253. package/lib/cli/lint/tsc.js.map +1 -1
  254. package/lib/cli/lint/types.js +16 -0
  255. package/lib/cli/lint/types.js.map +3 -3
  256. package/lib/cli/migrate/index.d.ts +5 -0
  257. package/lib/cli/migrate/index.js +79 -15
  258. package/lib/cli/migrate/index.js.map +2 -2
  259. package/lib/cli/migrate/nodeVersion/checks.d.ts +1 -14
  260. package/lib/cli/migrate/nodeVersion/checks.js +51 -120
  261. package/lib/cli/migrate/nodeVersion/checks.js.map +2 -2
  262. package/lib/cli/migrate/nodeVersion/index.d.ts +8 -2
  263. package/lib/cli/migrate/nodeVersion/index.js +239 -65
  264. package/lib/cli/migrate/nodeVersion/index.js.map +3 -3
  265. package/lib/cli/migrate/nodeVersion/upgrade.d.ts +8 -0
  266. package/lib/cli/migrate/nodeVersion/upgrade.js +179 -0
  267. package/lib/cli/migrate/nodeVersion/upgrade.js.map +7 -0
  268. package/lib/cli/node/index.js +57 -20
  269. package/lib/cli/node/index.js.map +3 -3
  270. package/lib/cli/release/index.js +28 -4
  271. package/lib/cli/release/index.js.map +1 -1
  272. package/lib/cli/start/index.js +50 -16
  273. package/lib/cli/start/index.js.map +3 -3
  274. package/lib/cli/test/index.js +44 -4
  275. package/lib/cli/test/index.js.map +2 -2
  276. package/lib/cli/test/reporters/github/annotations.d.ts +9 -0
  277. package/lib/cli/test/reporters/github/annotations.js +102 -0
  278. package/lib/cli/test/reporters/github/annotations.js.map +7 -0
  279. package/lib/cli/test/reporters/github/index.d.ts +5 -0
  280. package/lib/cli/test/reporters/github/index.js +74 -0
  281. package/lib/cli/test/reporters/github/index.js.map +7 -0
  282. package/lib/cli/version/index.js +30 -6
  283. package/lib/cli/version/index.js.map +1 -1
  284. package/lib/index.d.ts +1 -0
  285. package/lib/index.js +46 -6
  286. package/lib/index.js.map +2 -2
  287. package/lib/skuba.js +45 -26
  288. package/lib/skuba.js.map +3 -3
  289. package/lib/utils/args.js +43 -6
  290. package/lib/utils/args.js.map +2 -2
  291. package/lib/utils/command.js +42 -4
  292. package/lib/utils/command.js.map +3 -3
  293. package/lib/utils/copy.js +57 -20
  294. package/lib/utils/copy.js.map +2 -2
  295. package/lib/utils/dir.js +72 -32
  296. package/lib/utils/dir.js.map +2 -2
  297. package/lib/utils/env.js +26 -2
  298. package/lib/utils/env.js.map +1 -1
  299. package/lib/utils/error.js +47 -10
  300. package/lib/utils/error.js.map +1 -1
  301. package/lib/utils/exec.d.ts +3 -2
  302. package/lib/utils/exec.js +62 -24
  303. package/lib/utils/exec.js.map +3 -3
  304. package/lib/utils/fs.js +40 -6
  305. package/lib/utils/fs.js.map +2 -2
  306. package/lib/utils/help.js +30 -6
  307. package/lib/utils/help.js.map +1 -1
  308. package/lib/utils/logging.d.ts +9 -10
  309. package/lib/utils/logging.js +38 -11
  310. package/lib/utils/logging.js.map +2 -2
  311. package/lib/utils/logo.js +52 -25
  312. package/lib/utils/logo.js.map +2 -2
  313. package/lib/utils/manifest.d.ts +2 -3
  314. package/lib/utils/manifest.js +48 -8
  315. package/lib/utils/manifest.js.map +3 -3
  316. package/lib/utils/npmrc.js +26 -2
  317. package/lib/utils/npmrc.js.map +1 -1
  318. package/lib/utils/packageManager.js +49 -12
  319. package/lib/utils/packageManager.js.map +2 -2
  320. package/lib/utils/port.js +39 -4
  321. package/lib/utils/port.js.map +2 -2
  322. package/lib/utils/sleep.js +26 -2
  323. package/lib/utils/sleep.js.map +1 -1
  324. package/lib/utils/template.js +55 -18
  325. package/lib/utils/template.js.map +3 -3
  326. package/lib/utils/validation.js +31 -2
  327. package/lib/utils/validation.js.map +1 -1
  328. package/lib/utils/version.js +46 -9
  329. package/lib/utils/version.js.map +2 -2
  330. package/lib/utils/wait.js +32 -7
  331. package/lib/utils/wait.js.map +1 -1
  332. package/lib/utils/worker.d.ts +3 -3
  333. package/lib/utils/worker.js +35 -10
  334. package/lib/utils/worker.js.map +1 -1
  335. package/lib/wrapper/function-arguments.d.js +1 -0
  336. package/lib/wrapper/functionHandler.js +49 -18
  337. package/lib/wrapper/functionHandler.js.map +2 -2
  338. package/lib/wrapper/http.js +43 -8
  339. package/lib/wrapper/http.js.map +2 -2
  340. package/lib/wrapper/index.js +7 -6
  341. package/lib/wrapper/index.js.map +1 -1
  342. package/lib/wrapper/main.js +42 -8
  343. package/lib/wrapper/main.js.map +3 -3
  344. package/lib/wrapper/requestListener.js +47 -13
  345. package/lib/wrapper/requestListener.js.map +2 -2
  346. package/lib/wrapper/server.js +28 -4
  347. package/lib/wrapper/server.js.map +2 -2
  348. package/package.json +43 -45
  349. package/template/base/_.prettierrc.js +1 -1
  350. package/template/base/_eslint.config.js +1 -1
  351. package/template/base/_pnpm-workspace.yaml +4 -3
  352. package/template/base/jest.config.ts +19 -0
  353. package/template/base/jest.setup.ts +3 -0
  354. package/template/express-rest-api/.buildkite/pipeline.yml +1 -1
  355. package/template/express-rest-api/.nvmrc +1 -1
  356. package/template/express-rest-api/package.json +8 -9
  357. package/template/express-rest-api/skuba.template.js +1 -1
  358. package/template/express-rest-api/src/app.test.ts +0 -1
  359. package/template/greeter/.buildkite/pipeline.yml +1 -1
  360. package/template/greeter/.nvmrc +1 -1
  361. package/template/greeter/package.json +4 -5
  362. package/template/greeter/skuba.template.js +1 -1
  363. package/template/greeter/src/app.test.ts +1 -3
  364. package/template/koa-rest-api/.buildkite/pipeline.yml +1 -1
  365. package/template/koa-rest-api/.nvmrc +1 -1
  366. package/template/koa-rest-api/package.json +9 -11
  367. package/template/koa-rest-api/skuba.template.js +1 -1
  368. package/template/koa-rest-api/src/api/jobs/getJobs.test.ts +0 -2
  369. package/template/koa-rest-api/src/api/jobs/postJob.test.ts +0 -2
  370. package/template/koa-rest-api/src/app.test.ts +0 -2
  371. package/template/koa-rest-api/src/framework/server.test.ts +2 -2
  372. package/template/koa-rest-api/src/framework/validation.test.ts +0 -2
  373. package/template/koa-rest-api/src/testing/metrics.ts +0 -2
  374. package/template/lambda-sqs-worker-cdk/.buildkite/pipeline.yml +2 -2
  375. package/template/lambda-sqs-worker-cdk/.nvmrc +1 -1
  376. package/template/lambda-sqs-worker-cdk/infra/__snapshots__/appStack.test.ts.snap +7 -21
  377. package/template/lambda-sqs-worker-cdk/infra/appStack.test.ts +9 -11
  378. package/template/lambda-sqs-worker-cdk/infra/appStack.ts +3 -3
  379. package/template/lambda-sqs-worker-cdk/infra/config.ts +2 -4
  380. package/template/lambda-sqs-worker-cdk/package.json +9 -9
  381. package/template/lambda-sqs-worker-cdk/skuba.template.js +13 -1
  382. package/template/lambda-sqs-worker-cdk/src/app.test.ts +13 -22
  383. package/template/lambda-sqs-worker-cdk/src/framework/handler.test.ts +0 -1
  384. package/template/lambda-sqs-worker-cdk/src/framework/validation.test.ts +31 -33
  385. package/template/lambda-sqs-worker-cdk/src/services/jobScorer.test.ts +2 -8
  386. package/template/lambda-sqs-worker-cdk/src/services/pipelineEventSender.test.ts +2 -3
  387. package/template/lambda-sqs-worker-cdk/src/testing/services.ts +3 -4
  388. package/template/oss-npm-package/.github/workflows/release.yml +1 -1
  389. package/template/oss-npm-package/.github/workflows/validate.yml +1 -1
  390. package/template/oss-npm-package/.nvmrc +1 -1
  391. package/template/oss-npm-package/_package.json +0 -1
  392. package/template/oss-npm-package/skuba.template.js +1 -1
  393. package/template/oss-npm-package/src/index.test.ts +0 -2
  394. package/template/private-npm-package/.nvmrc +1 -1
  395. package/template/private-npm-package/_package.json +1 -2
  396. package/template/private-npm-package/skuba.template.js +2 -2
  397. package/template/private-npm-package/src/index.test.ts +0 -2
  398. package/lib/cli/lint/internalLints/upgrade/patches/9.1.0/index.js +0 -11
  399. package/lib/cli/lint/internalLints/upgrade/patches/9.1.0/index.js.map +0 -7
  400. package/lib/cli/lint/internalLints/upgrade/patches/9.1.0/upgradeNode.js +0 -34
  401. package/lib/cli/lint/internalLints/upgrade/patches/9.1.0/upgradeNode.js.map +0 -7
  402. package/lib/enquirer.d.js +0 -1
  403. package/lib/enquirer.d.js.map +0 -7
  404. package/lib/eslint.d.js +0 -1
  405. package/lib/eslint.d.js.map +0 -7
  406. package/template/base/vitest.config.ts +0 -25
  407. /package/lib/cli/lint/internalLints/upgrade/patches/{9.1.0 → 13.1.1}/index.d.ts +0 -0
  408. /package/lib/cli/lint/internalLints/upgrade/patches/{9.1.0 → 13.1.1}/upgradeNode.d.ts +0 -0
package/lib/utils/help.js CHANGED
@@ -1,10 +1,34 @@
1
- import { COMMAND_LIST } from "./command.js";
2
- import { log } from "./logging.js";
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 help_exports = {};
20
+ __export(help_exports, {
21
+ showHelp: () => showHelp
22
+ });
23
+ module.exports = __toCommonJS(help_exports);
24
+ var import_command = require("./command.js");
25
+ var import_logging = require("./logging.js");
3
26
  const showHelp = () => {
4
- log.plain(log.bold("Available commands:"));
5
- COMMAND_LIST.forEach((item) => log.plain(item));
27
+ import_logging.log.plain(import_logging.log.bold("Available commands:"));
28
+ import_command.COMMAND_LIST.forEach((item) => import_logging.log.plain(item));
6
29
  };
7
- export {
30
+ // Annotate the CommonJS export names for ESM import in node:
31
+ 0 && (module.exports = {
8
32
  showHelp
9
- };
33
+ });
10
34
  //# sourceMappingURL=help.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/help.ts"],
4
4
  "sourcesContent": ["import { COMMAND_LIST } from './command.js';\nimport { log } from './logging.js';\n\nexport const showHelp = () => {\n log.plain(log.bold('Available commands:'));\n\n COMMAND_LIST.forEach((item) => log.plain(item));\n};\n"],
5
- "mappings": "AAAA,SAAS,oBAAoB;AAC7B,SAAS,WAAW;AAEb,MAAM,WAAW,MAAM;AAC5B,MAAI,MAAM,IAAI,KAAK,qBAAqB,CAAC;AAEzC,eAAa,QAAQ,CAAC,SAAS,IAAI,MAAM,IAAI,CAAC;AAChD;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAA6B;AAC7B,qBAAoB;AAEb,MAAM,WAAW,MAAM;AAC5B,qBAAI,MAAM,mBAAI,KAAK,qBAAqB,CAAC;AAEzC,8BAAa,QAAQ,CAAC,SAAS,mBAAI,MAAM,IAAI,CAAC;AAChD;",
6
6
  "names": []
7
7
  }
@@ -1,4 +1,3 @@
1
- import chalk from 'chalk';
2
1
  export type Logger = typeof log;
3
2
  export declare const createLogger: ({ debug, prefixes, suffixes, }: {
4
3
  debug: boolean;
@@ -10,9 +9,9 @@ export declare const createLogger: ({ debug, prefixes, suffixes, }: {
10
9
  prefixes: unknown[];
11
10
  suffixes: unknown[];
12
11
  };
13
- bold: chalk.Chalk;
14
- dim: chalk.Chalk;
15
- formatSubtle: chalk.Chalk;
12
+ bold: (text: string) => string;
13
+ dim: (text: string) => string;
14
+ formatSubtle: (text: string) => string;
16
15
  timing: (start: bigint, end: bigint) => string;
17
16
  debug: (...message: unknown[]) => void;
18
17
  subtle: (...message: unknown[]) => void;
@@ -28,9 +27,9 @@ export declare const log: {
28
27
  prefixes: unknown[];
29
28
  suffixes: unknown[];
30
29
  };
31
- bold: chalk.Chalk;
32
- dim: chalk.Chalk;
33
- formatSubtle: chalk.Chalk;
30
+ bold: (text: string) => string;
31
+ dim: (text: string) => string;
32
+ formatSubtle: (text: string) => string;
34
33
  timing: (start: bigint, end: bigint) => string;
35
34
  debug: (...message: unknown[]) => void;
36
35
  subtle: (...message: unknown[]) => void;
@@ -46,9 +45,9 @@ export declare const childLogger: (logger: Logger, settings: Partial<Logger["set
46
45
  prefixes: unknown[];
47
46
  suffixes: unknown[];
48
47
  };
49
- bold: chalk.Chalk;
50
- dim: chalk.Chalk;
51
- formatSubtle: chalk.Chalk;
48
+ bold: (text: string) => string;
49
+ dim: (text: string) => string;
50
+ formatSubtle: (text: string) => string;
52
51
  timing: (start: bigint, end: bigint) => string;
53
52
  debug: (...message: unknown[]) => void;
54
53
  subtle: (...message: unknown[]) => void;
@@ -1,4 +1,30 @@
1
- import chalk from "chalk";
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 logging_exports = {};
20
+ __export(logging_exports, {
21
+ childLogger: () => childLogger,
22
+ createLogger: () => createLogger,
23
+ log: () => log,
24
+ pluralise: () => pluralise
25
+ });
26
+ module.exports = __toCommonJS(logging_exports);
27
+ var import_node_util = require("node:util");
2
28
  const createLogger = ({
3
29
  debug,
4
30
  prefixes = [],
@@ -8,17 +34,17 @@ const createLogger = ({
8
34
  const log2 = (...message) => logWithoutSuffixes(...message, ...suffixes);
9
35
  return {
10
36
  settings: { debug, prefixes, suffixes },
11
- bold: chalk.bold,
12
- dim: chalk.dim,
13
- formatSubtle: chalk.grey,
37
+ bold: (text) => (0, import_node_util.styleText)("bold", text),
38
+ dim: (text) => (0, import_node_util.styleText)("dim", text),
39
+ formatSubtle: (text) => (0, import_node_util.styleText)("gray", text),
14
40
  timing: (start, end) => `${Number((end - start) / BigInt(1e7)) / 100}s`,
15
- debug: (...message) => debug ? log2(chalk.grey(...message)) : void 0,
16
- subtle: (...message) => log2(chalk.grey(...message)),
17
- err: (...message) => log2(chalk.red(...message)),
41
+ debug: (...message) => debug ? log2(...message.map((m) => (0, import_node_util.styleText)("gray", String(m)))) : void 0,
42
+ subtle: (...message) => log2(...message.map((m) => (0, import_node_util.styleText)("gray", String(m)))),
43
+ err: (...message) => log2(...message.map((m) => (0, import_node_util.styleText)("red", String(m)))),
18
44
  newline: () => logWithoutSuffixes(),
19
- ok: (...message) => log2(chalk.green(...message)),
45
+ ok: (...message) => log2(...message.map((m) => (0, import_node_util.styleText)("green", String(m)))),
20
46
  plain: (...message) => log2(...message),
21
- warn: (...message) => log2(chalk.yellow(...message))
47
+ warn: (...message) => log2(...message.map((m) => (0, import_node_util.styleText)("yellow", String(m))))
22
48
  };
23
49
  };
24
50
  const log = createLogger({ debug: false });
@@ -28,10 +54,11 @@ const childLogger = (logger, settings) => createLogger({
28
54
  suffixes: [...logger.settings.suffixes, ...settings.suffixes ?? []]
29
55
  });
30
56
  const pluralise = (count, subject) => `${count} ${subject}${count === 1 ? "" : "s"}`;
31
- export {
57
+ // Annotate the CommonJS export names for ESM import in node:
58
+ 0 && (module.exports = {
32
59
  childLogger,
33
60
  createLogger,
34
61
  log,
35
62
  pluralise
36
- };
63
+ });
37
64
  //# sourceMappingURL=logging.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/logging.ts"],
4
- "sourcesContent": ["/* eslint-disable no-console */\n\nimport chalk from 'chalk';\n\nexport type Logger = typeof log;\n\nexport const createLogger = ({\n debug,\n prefixes = [],\n suffixes = [],\n}: {\n debug: boolean;\n prefixes?: unknown[];\n suffixes?: unknown[];\n}) => {\n const logWithoutSuffixes = (...message: unknown[]) =>\n console.log(...prefixes, ...message);\n\n const log = (...message: unknown[]) =>\n logWithoutSuffixes(...message, ...suffixes);\n\n return {\n settings: { debug, prefixes, suffixes },\n\n bold: chalk.bold,\n dim: chalk.dim,\n formatSubtle: chalk.grey,\n\n timing: (start: bigint, end: bigint) =>\n `${Number((end - start) / BigInt(10_000_000)) / 100}s`,\n\n debug: (...message: unknown[]) =>\n debug ? log(chalk.grey(...message)) : undefined,\n subtle: (...message: unknown[]) => log(chalk.grey(...message)),\n err: (...message: unknown[]) => log(chalk.red(...message)),\n newline: () => logWithoutSuffixes(),\n ok: (...message: unknown[]) => log(chalk.green(...message)),\n plain: (...message: unknown[]) => log(...message),\n warn: (...message: unknown[]) => log(chalk.yellow(...message)),\n };\n};\n\nexport const log = createLogger({ debug: false });\n\nexport const childLogger = (\n logger: Logger,\n settings: Partial<Logger['settings']>,\n) =>\n createLogger({\n debug: settings.debug ?? logger.settings.debug,\n prefixes: [...(settings.prefixes ?? []), ...logger.settings.prefixes],\n suffixes: [...logger.settings.suffixes, ...(settings.suffixes ?? [])],\n });\n\nexport const pluralise = (count: number, subject: string) =>\n `${count} ${subject}${count === 1 ? '' : 's'}`;\n"],
5
- "mappings": "AAEA,OAAO,WAAW;AAIX,MAAM,eAAe,CAAC;AAAA,EAC3B;AAAA,EACA,WAAW,CAAC;AAAA,EACZ,WAAW,CAAC;AACd,MAIM;AACJ,QAAM,qBAAqB,IAAI,YAC7B,QAAQ,IAAI,GAAG,UAAU,GAAG,OAAO;AAErC,QAAMA,OAAM,IAAI,YACd,mBAAmB,GAAG,SAAS,GAAG,QAAQ;AAE5C,SAAO;AAAA,IACL,UAAU,EAAE,OAAO,UAAU,SAAS;AAAA,IAEtC,MAAM,MAAM;AAAA,IACZ,KAAK,MAAM;AAAA,IACX,cAAc,MAAM;AAAA,IAEpB,QAAQ,CAAC,OAAe,QACtB,GAAG,QAAQ,MAAM,SAAS,OAAO,GAAU,CAAC,IAAI,GAAG;AAAA,IAErD,OAAO,IAAI,YACT,QAAQA,KAAI,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI;AAAA,IACxC,QAAQ,IAAI,YAAuBA,KAAI,MAAM,KAAK,GAAG,OAAO,CAAC;AAAA,IAC7D,KAAK,IAAI,YAAuBA,KAAI,MAAM,IAAI,GAAG,OAAO,CAAC;AAAA,IACzD,SAAS,MAAM,mBAAmB;AAAA,IAClC,IAAI,IAAI,YAAuBA,KAAI,MAAM,MAAM,GAAG,OAAO,CAAC;AAAA,IAC1D,OAAO,IAAI,YAAuBA,KAAI,GAAG,OAAO;AAAA,IAChD,MAAM,IAAI,YAAuBA,KAAI,MAAM,OAAO,GAAG,OAAO,CAAC;AAAA,EAC/D;AACF;AAEO,MAAM,MAAM,aAAa,EAAE,OAAO,MAAM,CAAC;AAEzC,MAAM,cAAc,CACzB,QACA,aAEA,aAAa;AAAA,EACX,OAAO,SAAS,SAAS,OAAO,SAAS;AAAA,EACzC,UAAU,CAAC,GAAI,SAAS,YAAY,CAAC,GAAI,GAAG,OAAO,SAAS,QAAQ;AAAA,EACpE,UAAU,CAAC,GAAG,OAAO,SAAS,UAAU,GAAI,SAAS,YAAY,CAAC,CAAE;AACtE,CAAC;AAEI,MAAM,YAAY,CAAC,OAAe,YACvC,GAAG,KAAK,IAAI,OAAO,GAAG,UAAU,IAAI,KAAK,GAAG;",
4
+ "sourcesContent": ["/* eslint-disable no-console */\n\nimport { styleText } from 'node:util';\n\nexport type Logger = typeof log;\n\nexport const createLogger = ({\n debug,\n prefixes = [],\n suffixes = [],\n}: {\n debug: boolean;\n prefixes?: unknown[];\n suffixes?: unknown[];\n}) => {\n const logWithoutSuffixes = (...message: unknown[]) =>\n console.log(...prefixes, ...message);\n\n const log = (...message: unknown[]) =>\n logWithoutSuffixes(...message, ...suffixes);\n\n return {\n settings: { debug, prefixes, suffixes },\n\n bold: (text: string) => styleText('bold', text),\n dim: (text: string) => styleText('dim', text),\n formatSubtle: (text: string) => styleText('gray', text),\n\n timing: (start: bigint, end: bigint) =>\n `${Number((end - start) / BigInt(10_000_000)) / 100}s`,\n\n debug: (...message: unknown[]) =>\n debug\n ? log(...message.map((m) => styleText('gray', String(m))))\n : undefined,\n subtle: (...message: unknown[]) =>\n log(...message.map((m) => styleText('gray', String(m)))),\n err: (...message: unknown[]) =>\n log(...message.map((m) => styleText('red', String(m)))),\n newline: () => logWithoutSuffixes(),\n ok: (...message: unknown[]) =>\n log(...message.map((m) => styleText('green', String(m)))),\n plain: (...message: unknown[]) => log(...message),\n warn: (...message: unknown[]) =>\n log(...message.map((m) => styleText('yellow', String(m)))),\n };\n};\n\nexport const log = createLogger({ debug: false });\n\nexport const childLogger = (\n logger: Logger,\n settings: Partial<Logger['settings']>,\n) =>\n createLogger({\n debug: settings.debug ?? logger.settings.debug,\n prefixes: [...(settings.prefixes ?? []), ...logger.settings.prefixes],\n suffixes: [...logger.settings.suffixes, ...(settings.suffixes ?? [])],\n });\n\nexport const pluralise = (count: number, subject: string) =>\n `${count} ${subject}${count === 1 ? '' : 's'}`;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,uBAA0B;AAInB,MAAM,eAAe,CAAC;AAAA,EAC3B;AAAA,EACA,WAAW,CAAC;AAAA,EACZ,WAAW,CAAC;AACd,MAIM;AACJ,QAAM,qBAAqB,IAAI,YAC7B,QAAQ,IAAI,GAAG,UAAU,GAAG,OAAO;AAErC,QAAMA,OAAM,IAAI,YACd,mBAAmB,GAAG,SAAS,GAAG,QAAQ;AAE5C,SAAO;AAAA,IACL,UAAU,EAAE,OAAO,UAAU,SAAS;AAAA,IAEtC,MAAM,CAAC,aAAiB,4BAAU,QAAQ,IAAI;AAAA,IAC9C,KAAK,CAAC,aAAiB,4BAAU,OAAO,IAAI;AAAA,IAC5C,cAAc,CAAC,aAAiB,4BAAU,QAAQ,IAAI;AAAA,IAEtD,QAAQ,CAAC,OAAe,QACtB,GAAG,QAAQ,MAAM,SAAS,OAAO,GAAU,CAAC,IAAI,GAAG;AAAA,IAErD,OAAO,IAAI,YACT,QACIA,KAAI,GAAG,QAAQ,IAAI,CAAC,UAAM,4BAAU,QAAQ,OAAO,CAAC,CAAC,CAAC,CAAC,IACvD;AAAA,IACN,QAAQ,IAAI,YACVA,KAAI,GAAG,QAAQ,IAAI,CAAC,UAAM,4BAAU,QAAQ,OAAO,CAAC,CAAC,CAAC,CAAC;AAAA,IACzD,KAAK,IAAI,YACPA,KAAI,GAAG,QAAQ,IAAI,CAAC,UAAM,4BAAU,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;AAAA,IACxD,SAAS,MAAM,mBAAmB;AAAA,IAClC,IAAI,IAAI,YACNA,KAAI,GAAG,QAAQ,IAAI,CAAC,UAAM,4BAAU,SAAS,OAAO,CAAC,CAAC,CAAC,CAAC;AAAA,IAC1D,OAAO,IAAI,YAAuBA,KAAI,GAAG,OAAO;AAAA,IAChD,MAAM,IAAI,YACRA,KAAI,GAAG,QAAQ,IAAI,CAAC,UAAM,4BAAU,UAAU,OAAO,CAAC,CAAC,CAAC,CAAC;AAAA,EAC7D;AACF;AAEO,MAAM,MAAM,aAAa,EAAE,OAAO,MAAM,CAAC;AAEzC,MAAM,cAAc,CACzB,QACA,aAEA,aAAa;AAAA,EACX,OAAO,SAAS,SAAS,OAAO,SAAS;AAAA,EACzC,UAAU,CAAC,GAAI,SAAS,YAAY,CAAC,GAAI,GAAG,OAAO,SAAS,QAAQ;AAAA,EACpE,UAAU,CAAC,GAAG,OAAO,SAAS,UAAU,GAAI,SAAS,YAAY,CAAC,CAAE;AACtE,CAAC;AAEI,MAAM,YAAY,CAAC,OAAe,YACvC,GAAG,KAAK,IAAI,OAAO,GAAG,UAAU,IAAI,KAAK,GAAG;",
6
6
  "names": ["log"]
7
7
  }
package/lib/utils/logo.js CHANGED
@@ -1,38 +1,65 @@
1
- import chalk from "chalk";
2
- import { log } from "./logging.js";
3
- import { detectPackageManager } from "./packageManager.js";
4
- import { getSkubaVersionInfo } from "./version.js";
5
- const LOGO = chalk.blueBright(`
6
- \u256D\u2500\u256E ${chalk.magentaBright(" ")}\u256D\u2500\u256E
7
- \u256D\u2500\u2500\u2500\u2502 \u2570\u2500${chalk.magentaBright("\u256D\u2500\u252C\u2500\u256E")} \u2570\u2500\u256E\u2500\u2500\u2500\u256E
8
- \u2502_ \u2500\u2524 <${chalk.magentaBright("\u2502 \u2575 \u2502")} \u2022 \u2502 \u2022 \u2502
9
- \u2570\u2500\u2500\u2500\u2570\u2500\u2534\u2500${chalk.magentaBright("\u2570\u2500\u2500\u2500\u256F")}\u2500\u2500\u2500\u256F\u2500\u2500 \u2570
10
- `);
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 logo_exports = {};
20
+ __export(logo_exports, {
21
+ showLogoAndVersionInfo: () => showLogoAndVersionInfo
22
+ });
23
+ module.exports = __toCommonJS(logo_exports);
24
+ var import_node_util = require("node:util");
25
+ var import_logging = require("./logging.js");
26
+ var import_packageManager = require("./packageManager.js");
27
+ var import_version = require("./version.js");
28
+ const LOGO = (0, import_node_util.styleText)(
29
+ "blueBright",
30
+ `
31
+ \u256D\u2500\u256E ${(0, import_node_util.styleText)("magentaBright", " ")}\u256D\u2500\u256E
32
+ \u256D\u2500\u2500\u2500\u2502 \u2570\u2500${(0, import_node_util.styleText)("magentaBright", "\u256D\u2500\u252C\u2500\u256E")} \u2570\u2500\u256E\u2500\u2500\u2500\u256E
33
+ \u2502_ \u2500\u2524 <${(0, import_node_util.styleText)("magentaBright", "\u2502 \u2575 \u2502")} \u2022 \u2502 \u2022 \u2502
34
+ \u2570\u2500\u2500\u2500\u2570\u2500\u2534\u2500${(0, import_node_util.styleText)("magentaBright", "\u2570\u2500\u2500\u2500\u256F")}\u2500\u2500\u2500\u256F\u2500\u2500 \u2570
35
+ `
36
+ );
11
37
  const showLogoAndVersionInfo = async () => {
12
38
  const [versionInfo, packageManager] = await Promise.all([
13
- getSkubaVersionInfo(),
14
- detectPackageManager()
39
+ (0, import_version.getSkubaVersionInfo)(),
40
+ (0, import_packageManager.detectPackageManager)()
15
41
  ]);
16
- log.plain(LOGO);
17
- log.subtle(
18
- log.bold(versionInfo.local),
42
+ import_logging.log.plain(LOGO);
43
+ import_logging.log.subtle(
44
+ import_logging.log.bold(versionInfo.local),
19
45
  "|",
20
46
  "latest",
21
- log.bold(versionInfo.latest ?? "offline \u2708")
47
+ import_logging.log.bold(versionInfo.latest ?? "offline \u2708")
22
48
  );
23
- log.newline();
49
+ import_logging.log.newline();
24
50
  if (versionInfo.isStale) {
25
- log.warn("Your skuba installation is out of date.");
26
- log.warn("Consider upgrading:");
27
- log.newline();
28
- log.warn(
29
- log.bold(packageManager.print.update, `skuba@${versionInfo.latest}`)
51
+ import_logging.log.warn("Your skuba installation is out of date.");
52
+ import_logging.log.warn("Consider upgrading:");
53
+ import_logging.log.newline();
54
+ import_logging.log.warn(
55
+ import_logging.log.bold(`${packageManager.print.update} skuba@${versionInfo.latest}`)
30
56
  );
31
- log.newline();
57
+ import_logging.log.newline();
32
58
  }
33
59
  return versionInfo;
34
60
  };
35
- export {
61
+ // Annotate the CommonJS export names for ESM import in node:
62
+ 0 && (module.exports = {
36
63
  showLogoAndVersionInfo
37
- };
64
+ });
38
65
  //# sourceMappingURL=logo.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/logo.ts"],
4
- "sourcesContent": ["import chalk from 'chalk';\n\nimport { log } from './logging.js';\nimport { detectPackageManager } from './packageManager.js';\nimport { getSkubaVersionInfo } from './version.js';\n\nconst LOGO = chalk.blueBright(`\n \u256D\u2500\u256E ${chalk.magentaBright(' ')}\u256D\u2500\u256E\n\u256D\u2500\u2500\u2500\u2502 \u2570\u2500${chalk.magentaBright('\u256D\u2500\u252C\u2500\u256E')} \u2570\u2500\u256E\u2500\u2500\u2500\u256E\n\u2502_ \u2500\u2524 <${chalk.magentaBright('\u2502 \u2575 \u2502')} \u2022 \u2502 \u2022 \u2502\n\u2570\u2500\u2500\u2500\u2570\u2500\u2534\u2500${chalk.magentaBright('\u2570\u2500\u2500\u2500\u256F')}\u2500\u2500\u2500\u256F\u2500\u2500 \u2570\n`);\n\nexport const showLogoAndVersionInfo = async () => {\n const [versionInfo, packageManager] = await Promise.all([\n getSkubaVersionInfo(),\n detectPackageManager(),\n ]);\n\n log.plain(LOGO);\n log.subtle(\n log.bold(versionInfo.local),\n '|',\n 'latest',\n log.bold(versionInfo.latest ?? 'offline \u2708'),\n );\n log.newline();\n\n if (versionInfo.isStale) {\n log.warn('Your skuba installation is out of date.');\n log.warn('Consider upgrading:');\n log.newline();\n log.warn(\n log.bold(packageManager.print.update, `skuba@${versionInfo.latest}`),\n );\n log.newline();\n }\n\n return versionInfo;\n};\n"],
5
- "mappings": "AAAA,OAAO,WAAW;AAElB,SAAS,WAAW;AACpB,SAAS,4BAA4B;AACrC,SAAS,2BAA2B;AAEpC,MAAM,OAAO,MAAM,WAAW;AAAA,yBACpB,MAAM,cAAc,MAAM,CAAC;AAAA,6CAC3B,MAAM,cAAc,gCAAO,CAAC;AAAA,yBAC5B,MAAM,cAAc,sBAAO,CAAC;AAAA,kDAC5B,MAAM,cAAc,gCAAO,CAAC;AAAA,CACrC;AAEM,MAAM,yBAAyB,YAAY;AAChD,QAAM,CAAC,aAAa,cAAc,IAAI,MAAM,QAAQ,IAAI;AAAA,IACtD,oBAAoB;AAAA,IACpB,qBAAqB;AAAA,EACvB,CAAC;AAED,MAAI,MAAM,IAAI;AACd,MAAI;AAAA,IACF,IAAI,KAAK,YAAY,KAAK;AAAA,IAC1B;AAAA,IACA;AAAA,IACA,IAAI,KAAK,YAAY,UAAU,gBAAW;AAAA,EAC5C;AACA,MAAI,QAAQ;AAEZ,MAAI,YAAY,SAAS;AACvB,QAAI,KAAK,yCAAyC;AAClD,QAAI,KAAK,qBAAqB;AAC9B,QAAI,QAAQ;AACZ,QAAI;AAAA,MACF,IAAI,KAAK,eAAe,MAAM,QAAQ,SAAS,YAAY,MAAM,EAAE;AAAA,IACrE;AACA,QAAI,QAAQ;AAAA,EACd;AAEA,SAAO;AACT;",
4
+ "sourcesContent": ["import { styleText } from 'node:util';\n\nimport { log } from './logging.js';\nimport { detectPackageManager } from './packageManager.js';\nimport { getSkubaVersionInfo } from './version.js';\n\nconst LOGO = styleText(\n 'blueBright',\n `\n \u256D\u2500\u256E ${styleText('magentaBright', ' ')}\u256D\u2500\u256E\n\u256D\u2500\u2500\u2500\u2502 \u2570\u2500${styleText('magentaBright', '\u256D\u2500\u252C\u2500\u256E')} \u2570\u2500\u256E\u2500\u2500\u2500\u256E\n\u2502_ \u2500\u2524 <${styleText('magentaBright', '\u2502 \u2575 \u2502')} \u2022 \u2502 \u2022 \u2502\n\u2570\u2500\u2500\u2500\u2570\u2500\u2534\u2500${styleText('magentaBright', '\u2570\u2500\u2500\u2500\u256F')}\u2500\u2500\u2500\u256F\u2500\u2500 \u2570\n`,\n);\n\nexport const showLogoAndVersionInfo = async () => {\n const [versionInfo, packageManager] = await Promise.all([\n getSkubaVersionInfo(),\n detectPackageManager(),\n ]);\n\n log.plain(LOGO);\n log.subtle(\n log.bold(versionInfo.local),\n '|',\n 'latest',\n log.bold(versionInfo.latest ?? 'offline \u2708'),\n );\n log.newline();\n\n if (versionInfo.isStale) {\n log.warn('Your skuba installation is out of date.');\n log.warn('Consider upgrading:');\n log.newline();\n log.warn(\n log.bold(`${packageManager.print.update} skuba@${versionInfo.latest}`),\n );\n log.newline();\n }\n\n return versionInfo;\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAA0B;AAE1B,qBAAoB;AACpB,4BAAqC;AACrC,qBAAoC;AAEpC,MAAM,WAAO;AAAA,EACX;AAAA,EACA;AAAA,6BACQ,4BAAU,iBAAiB,MAAM,CAAC;AAAA,iDAClC,4BAAU,iBAAiB,gCAAO,CAAC;AAAA,6BACnC,4BAAU,iBAAiB,sBAAO,CAAC;AAAA,sDACnC,4BAAU,iBAAiB,gCAAO,CAAC;AAAA;AAE7C;AAEO,MAAM,yBAAyB,YAAY;AAChD,QAAM,CAAC,aAAa,cAAc,IAAI,MAAM,QAAQ,IAAI;AAAA,QACtD,oCAAoB;AAAA,QACpB,4CAAqB;AAAA,EACvB,CAAC;AAED,qBAAI,MAAM,IAAI;AACd,qBAAI;AAAA,IACF,mBAAI,KAAK,YAAY,KAAK;AAAA,IAC1B;AAAA,IACA;AAAA,IACA,mBAAI,KAAK,YAAY,UAAU,gBAAW;AAAA,EAC5C;AACA,qBAAI,QAAQ;AAEZ,MAAI,YAAY,SAAS;AACvB,uBAAI,KAAK,yCAAyC;AAClD,uBAAI,KAAK,qBAAqB;AAC9B,uBAAI,QAAQ;AACZ,uBAAI;AAAA,MACF,mBAAI,KAAK,GAAG,eAAe,MAAM,MAAM,UAAU,YAAY,MAAM,EAAE;AAAA,IACvE;AACA,uBAAI,QAAQ;AAAA,EACd;AAEA,SAAO;AACT;",
6
6
  "names": []
7
7
  }
@@ -1,11 +1,10 @@
1
- import { type NormalizedPackageJson } from 'read-package-up';
1
+ import readPkgUp, { type NormalizedPackageJson } from 'read-pkg-up';
2
2
  import * as z from 'zod/v4';
3
- import type { ReadResult } from '../cli/configure/types.js';
4
3
  export type ProjectType = z.infer<typeof projectTypeSchema>;
5
4
  export declare const projectTypeSchema: z.ZodUnion<readonly [z.ZodLiteral<"application">, z.ZodLiteral<"package">]>;
6
5
  export declare const PROJECT_TYPES: readonly ["application", "package"];
7
6
  export declare const getSkubaManifest: () => Promise<NormalizedPackageJson>;
8
- export declare const getConsumerManifest: (cwd?: string) => Promise<ReadResult | undefined>;
7
+ export declare const getConsumerManifest: (cwd?: string) => Promise<readPkgUp.ReadResult | undefined>;
9
8
  export declare const getManifestProperties: <T extends string, V = unknown>(prop: T) => Promise<{
10
9
  value: V | undefined;
11
10
  type: string | undefined;
@@ -1,6 +1,45 @@
1
- import { readPackageUp } from "read-package-up";
2
- import * as z from "zod/v4";
3
- import { 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 manifest_exports = {};
30
+ __export(manifest_exports, {
31
+ PROJECT_TYPES: () => PROJECT_TYPES,
32
+ getConsumerManifest: () => getConsumerManifest,
33
+ getEntryPointFromManifest: () => getEntryPointFromManifest,
34
+ getManifestProperties: () => getManifestProperties,
35
+ getSkubaManifest: () => getSkubaManifest,
36
+ getStringPropFromConsumerManifest: () => getStringPropFromConsumerManifest,
37
+ projectTypeSchema: () => projectTypeSchema
38
+ });
39
+ module.exports = __toCommonJS(manifest_exports);
40
+ var import_read_pkg_up = __toESM(require("read-pkg-up"));
41
+ var z = __toESM(require("zod/v4"));
42
+ var import_validation = require("./validation.js");
4
43
  const projectTypeSchema = z.union([
5
44
  z.literal("application"),
6
45
  z.literal("package")
@@ -12,19 +51,19 @@ const getSkubaManifest = async () => {
12
51
  if (skubaManifest !== void 0) {
13
52
  return skubaManifest;
14
53
  }
15
- const result = await readPackageUp({ cwd: import.meta.dirname });
54
+ const result = await (0, import_read_pkg_up.default)({ cwd: __dirname });
16
55
  if (result === void 0) {
17
56
  throw Error("skuba could not find its own manifest");
18
57
  }
19
58
  return skubaManifest = result.packageJson;
20
59
  };
21
- const getConsumerManifest = (cwd) => readPackageUp({ cwd, normalize: false });
60
+ const getConsumerManifest = (cwd) => (0, import_read_pkg_up.default)({ cwd, normalize: false });
22
61
  const getManifestProperties = async (prop) => {
23
62
  const manifest = await getConsumerManifest();
24
63
  if (!manifest) {
25
64
  return void 0;
26
65
  }
27
- const value = hasProp(manifest.packageJson.skuba, prop) ? manifest.packageJson.skuba[prop] : void 0;
66
+ const value = (0, import_validation.hasProp)(manifest.packageJson.skuba, prop) ? manifest.packageJson.skuba[prop] : void 0;
28
67
  const type = typeof manifest.packageJson.type === "string" ? manifest.packageJson.type : void 0;
29
68
  return {
30
69
  value,
@@ -40,7 +79,8 @@ const getEntryPointFromManifest = async () => {
40
79
  const entryPoint = await getStringPropFromConsumerManifest("entryPoint");
41
80
  return entryPoint ?? DEFAULT_ENTRY_POINT;
42
81
  };
43
- export {
82
+ // Annotate the CommonJS export names for ESM import in node:
83
+ 0 && (module.exports = {
44
84
  PROJECT_TYPES,
45
85
  getConsumerManifest,
46
86
  getEntryPointFromManifest,
@@ -48,5 +88,5 @@ export {
48
88
  getSkubaManifest,
49
89
  getStringPropFromConsumerManifest,
50
90
  projectTypeSchema
51
- };
91
+ });
52
92
  //# sourceMappingURL=manifest.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/manifest.ts"],
4
- "sourcesContent": ["import { type NormalizedPackageJson, readPackageUp } from 'read-package-up';\nimport * as z from 'zod/v4';\n\nimport type { ReadResult } from '../cli/configure/types.js';\n\nimport { hasProp } from './validation.js';\n\nexport type ProjectType = z.infer<typeof projectTypeSchema>;\n\nexport const projectTypeSchema = z.union([\n z.literal('application'),\n z.literal('package'),\n]);\n\nexport const PROJECT_TYPES = ['application', 'package'] as const;\n\nconst DEFAULT_ENTRY_POINT = 'src/app.ts';\n\nlet skubaManifest: NormalizedPackageJson | undefined;\n\nexport const getSkubaManifest = async (): Promise<NormalizedPackageJson> => {\n if (skubaManifest !== undefined) {\n return skubaManifest;\n }\n\n const result = await readPackageUp({ cwd: import.meta.dirname });\n\n if (result === undefined) {\n throw Error('skuba could not find its own manifest');\n }\n\n return (skubaManifest = result.packageJson);\n};\n\nexport const getConsumerManifest = (\n cwd?: string,\n): Promise<ReadResult | undefined> => readPackageUp({ cwd, normalize: false });\n\nexport const getManifestProperties = async <T extends string, V = unknown>(\n prop: T,\n): Promise<\n | {\n value: V | undefined;\n type: string | undefined;\n path: string;\n }\n | undefined\n> => {\n const manifest = await getConsumerManifest();\n\n if (!manifest) {\n return undefined;\n }\n\n const value = hasProp<T, V>(manifest.packageJson.skuba, prop)\n ? manifest.packageJson.skuba[prop]\n : undefined;\n\n const type =\n typeof manifest.packageJson.type === 'string'\n ? manifest.packageJson.type\n : undefined;\n\n return {\n value,\n type,\n path: manifest.path,\n };\n};\n\nexport const getStringPropFromConsumerManifest = async <T extends string>(\n prop: T,\n): Promise<string | undefined> => {\n const manifest = await getManifestProperties(prop);\n\n return typeof manifest?.value === 'string' ? manifest.value : undefined;\n};\n\nexport const getEntryPointFromManifest = async (): Promise<string> => {\n const entryPoint = await getStringPropFromConsumerManifest('entryPoint');\n\n return entryPoint ?? DEFAULT_ENTRY_POINT;\n};\n"],
5
- "mappings": "AAAA,SAAqC,qBAAqB;AAC1D,YAAY,OAAO;AAInB,SAAS,eAAe;AAIjB,MAAM,oBAAoB,EAAE,MAAM;AAAA,EACvC,EAAE,QAAQ,aAAa;AAAA,EACvB,EAAE,QAAQ,SAAS;AACrB,CAAC;AAEM,MAAM,gBAAgB,CAAC,eAAe,SAAS;AAEtD,MAAM,sBAAsB;AAE5B,IAAI;AAEG,MAAM,mBAAmB,YAA4C;AAC1E,MAAI,kBAAkB,QAAW;AAC/B,WAAO;AAAA,EACT;AAEA,QAAM,SAAS,MAAM,cAAc,EAAE,KAAK,YAAY,QAAQ,CAAC;AAE/D,MAAI,WAAW,QAAW;AACxB,UAAM,MAAM,uCAAuC;AAAA,EACrD;AAEA,SAAQ,gBAAgB,OAAO;AACjC;AAEO,MAAM,sBAAsB,CACjC,QACoC,cAAc,EAAE,KAAK,WAAW,MAAM,CAAC;AAEtE,MAAM,wBAAwB,OACnC,SAQG;AACH,QAAM,WAAW,MAAM,oBAAoB;AAE3C,MAAI,CAAC,UAAU;AACb,WAAO;AAAA,EACT;AAEA,QAAM,QAAQ,QAAc,SAAS,YAAY,OAAO,IAAI,IACxD,SAAS,YAAY,MAAM,IAAI,IAC/B;AAEJ,QAAM,OACJ,OAAO,SAAS,YAAY,SAAS,WACjC,SAAS,YAAY,OACrB;AAEN,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA,MAAM,SAAS;AAAA,EACjB;AACF;AAEO,MAAM,oCAAoC,OAC/C,SACgC;AAChC,QAAM,WAAW,MAAM,sBAAsB,IAAI;AAEjD,SAAO,OAAO,UAAU,UAAU,WAAW,SAAS,QAAQ;AAChE;AAEO,MAAM,4BAA4B,YAA6B;AACpE,QAAM,aAAa,MAAM,kCAAkC,YAAY;AAEvE,SAAO,cAAc;AACvB;",
6
- "names": []
4
+ "sourcesContent": ["import readPkgUp, { type NormalizedPackageJson } from 'read-pkg-up';\nimport * as z from 'zod/v4';\n\nimport { hasProp } from './validation.js';\n\nexport type ProjectType = z.infer<typeof projectTypeSchema>;\n\nexport const projectTypeSchema = z.union([\n z.literal('application'),\n z.literal('package'),\n]);\n\nexport const PROJECT_TYPES = ['application', 'package'] as const;\n\nconst DEFAULT_ENTRY_POINT = 'src/app.ts';\n\nlet skubaManifest: NormalizedPackageJson | undefined;\n\nexport const getSkubaManifest = async (): Promise<NormalizedPackageJson> => {\n if (skubaManifest !== undefined) {\n return skubaManifest;\n }\n\n const result = await readPkgUp({ cwd: __dirname });\n\n if (result === undefined) {\n throw Error('skuba could not find its own manifest');\n }\n\n return (skubaManifest = result.packageJson);\n};\n\nexport const getConsumerManifest = (cwd?: string) =>\n readPkgUp({ cwd, normalize: false });\n\nexport const getManifestProperties = async <T extends string, V = unknown>(\n prop: T,\n): Promise<\n | {\n value: V | undefined;\n type: string | undefined;\n path: string;\n }\n | undefined\n> => {\n const manifest = await getConsumerManifest();\n\n if (!manifest) {\n return undefined;\n }\n\n const value = hasProp<T, V>(manifest.packageJson.skuba, prop)\n ? manifest.packageJson.skuba[prop]\n : undefined;\n\n const type =\n typeof manifest.packageJson.type === 'string'\n ? manifest.packageJson.type\n : undefined;\n\n return {\n value,\n type,\n path: manifest.path,\n };\n};\n\nexport const getStringPropFromConsumerManifest = async <T extends string>(\n prop: T,\n): Promise<string | undefined> => {\n const manifest = await getManifestProperties(prop);\n\n return typeof manifest?.value === 'string' ? manifest.value : undefined;\n};\n\nexport const getEntryPointFromManifest = async (): Promise<string> => {\n const entryPoint = await getStringPropFromConsumerManifest('entryPoint');\n\n return entryPoint ?? DEFAULT_ENTRY_POINT;\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,yBAAsD;AACtD,QAAmB;AAEnB,wBAAwB;AAIjB,MAAM,oBAAoB,EAAE,MAAM;AAAA,EACvC,EAAE,QAAQ,aAAa;AAAA,EACvB,EAAE,QAAQ,SAAS;AACrB,CAAC;AAEM,MAAM,gBAAgB,CAAC,eAAe,SAAS;AAEtD,MAAM,sBAAsB;AAE5B,IAAI;AAEG,MAAM,mBAAmB,YAA4C;AAC1E,MAAI,kBAAkB,QAAW;AAC/B,WAAO;AAAA,EACT;AAEA,QAAM,SAAS,UAAM,mBAAAA,SAAU,EAAE,KAAK,UAAU,CAAC;AAEjD,MAAI,WAAW,QAAW;AACxB,UAAM,MAAM,uCAAuC;AAAA,EACrD;AAEA,SAAQ,gBAAgB,OAAO;AACjC;AAEO,MAAM,sBAAsB,CAAC,YAClC,mBAAAA,SAAU,EAAE,KAAK,WAAW,MAAM,CAAC;AAE9B,MAAM,wBAAwB,OACnC,SAQG;AACH,QAAM,WAAW,MAAM,oBAAoB;AAE3C,MAAI,CAAC,UAAU;AACb,WAAO;AAAA,EACT;AAEA,QAAM,YAAQ,2BAAc,SAAS,YAAY,OAAO,IAAI,IACxD,SAAS,YAAY,MAAM,IAAI,IAC/B;AAEJ,QAAM,OACJ,OAAO,SAAS,YAAY,SAAS,WACjC,SAAS,YAAY,OACrB;AAEN,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA,MAAM,SAAS;AAAA,EACjB;AACF;AAEO,MAAM,oCAAoC,OAC/C,SACgC;AAChC,QAAM,WAAW,MAAM,sBAAsB,IAAI;AAEjD,SAAO,OAAO,UAAU,UAAU,WAAW,SAAS,QAAQ;AAChE;AAEO,MAAM,4BAA4B,YAA6B;AACpE,QAAM,aAAa,MAAM,kCAAkC,YAAY;AAEvE,SAAO,cAAc;AACvB;",
6
+ "names": ["readPkgUp"]
7
7
  }
@@ -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 npmrc_exports = {};
20
+ __export(npmrc_exports, {
21
+ hasNpmrcSecret: () => hasNpmrcSecret
22
+ });
23
+ module.exports = __toCommonJS(npmrc_exports);
1
24
  const hasNpmrcSecret = (lineOrFullFileContents) => lineOrFullFileContents.includes("_auth") || lineOrFullFileContents.includes("_password");
2
- export {
25
+ // Annotate the CommonJS export names for ESM import in node:
26
+ 0 && (module.exports = {
3
27
  hasNpmrcSecret
4
- };
28
+ });
5
29
  //# sourceMappingURL=npmrc.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/npmrc.ts"],
4
4
  "sourcesContent": ["// Preventing against _auth, _authToken, _password\n// https://docs.npmjs.com/cli/v10/configuring-npm/npmrc#auth-related-configuration\nexport const hasNpmrcSecret = (lineOrFullFileContents: string): boolean =>\n lineOrFullFileContents.includes('_auth') ||\n lineOrFullFileContents.includes('_password');\n"],
5
- "mappings": "AAEO,MAAM,iBAAiB,CAAC,2BAC7B,uBAAuB,SAAS,OAAO,KACvC,uBAAuB,SAAS,WAAW;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,MAAM,iBAAiB,CAAC,2BAC7B,uBAAuB,SAAS,OAAO,KACvC,uBAAuB,SAAS,WAAW;",
6
6
  "names": []
7
7
  }
@@ -1,21 +1,57 @@
1
- import findUp from "find-up";
2
- import isInstalledGlobally from "is-installed-globally";
3
- import * as z from "zod/v4";
4
- 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 packageManager_exports = {};
30
+ __export(packageManager_exports, {
31
+ DEFAULT_PACKAGE_MANAGER: () => DEFAULT_PACKAGE_MANAGER,
32
+ configForPackageManager: () => configForPackageManager,
33
+ detectPackageManager: () => detectPackageManager,
34
+ packageManagerSchema: () => packageManagerSchema
35
+ });
36
+ module.exports = __toCommonJS(packageManager_exports);
37
+ var import_find_up = __toESM(require("find-up"));
38
+ var import_is_installed_globally = __toESM(require("is-installed-globally"));
39
+ var z = __toESM(require("zod/v4"));
40
+ var import_logging = require("./logging.js");
5
41
  const DEFAULT_PACKAGE_MANAGER = "pnpm";
6
42
  const PACKAGE_MANAGERS = {
7
43
  pnpm: {
8
44
  print: {
9
45
  exec: "pnpm exec",
10
46
  runSilent: "pnpm --silent run",
11
- update: isInstalledGlobally ? "pnpm update --global" : "pnpm update"
47
+ update: import_is_installed_globally.default ? "pnpm update --global" : "pnpm update"
12
48
  }
13
49
  },
14
50
  yarn: {
15
51
  print: {
16
52
  exec: "yarn",
17
53
  runSilent: "yarn -s",
18
- update: isInstalledGlobally ? "yarn global upgrade" : "yarn upgrade"
54
+ update: import_is_installed_globally.default ? "yarn global upgrade" : "yarn upgrade"
19
55
  }
20
56
  }
21
57
  };
@@ -35,12 +71,12 @@ const detectPackageManager = async (cwd) => {
35
71
  }
36
72
  packageManager = (pnpmDepth ?? -1) > (yarnDepth ?? -1) ? "pnpm" : "yarn";
37
73
  } catch (err) {
38
- log.warn(
39
- `Failed to detect package manager; defaulting to ${log.bold(
74
+ import_logging.log.warn(
75
+ `Failed to detect package manager; defaulting to ${import_logging.log.bold(
40
76
  DEFAULT_PACKAGE_MANAGER
41
77
  )}.`
42
78
  );
43
- log.subtle(
79
+ import_logging.log.subtle(
44
80
  (() => {
45
81
  switch (true) {
46
82
  case err instanceof Error:
@@ -54,14 +90,15 @@ const detectPackageManager = async (cwd) => {
54
90
  return configForPackageManager(packageManager);
55
91
  };
56
92
  const findDepth = async (filename, cwd) => {
57
- const path = await findUp(filename, { cwd });
93
+ const path = await (0, import_find_up.default)(filename, { cwd });
58
94
  return path ? path.split("/").length : void 0;
59
95
  };
60
96
  const packageManagerSchema = z.enum(["pnpm", "yarn"]).default(DEFAULT_PACKAGE_MANAGER);
61
- export {
97
+ // Annotate the CommonJS export names for ESM import in node:
98
+ 0 && (module.exports = {
62
99
  DEFAULT_PACKAGE_MANAGER,
63
100
  configForPackageManager,
64
101
  detectPackageManager,
65
102
  packageManagerSchema
66
- };
103
+ });
67
104
  //# sourceMappingURL=packageManager.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/packageManager.ts"],
4
4
  "sourcesContent": ["import findUp from 'find-up';\nimport isInstalledGlobally from 'is-installed-globally';\nimport * as z from 'zod/v4';\n\nimport { log } from './logging.js';\n\nexport const DEFAULT_PACKAGE_MANAGER = 'pnpm';\n\nexport type PackageManagerConfig =\n (typeof PACKAGE_MANAGERS)[keyof typeof PACKAGE_MANAGERS] & {\n command: PackageManager;\n };\n\nconst PACKAGE_MANAGERS = {\n pnpm: {\n print: {\n exec: 'pnpm exec',\n runSilent: 'pnpm --silent run',\n update: isInstalledGlobally ? 'pnpm update --global' : 'pnpm update',\n },\n },\n yarn: {\n print: {\n exec: 'yarn',\n runSilent: 'yarn -s',\n update: isInstalledGlobally ? 'yarn global upgrade' : 'yarn upgrade',\n },\n },\n};\n\nexport const configForPackageManager = (\n packageManager: PackageManager,\n): PackageManagerConfig => ({\n ...PACKAGE_MANAGERS[packageManager],\n command: packageManager,\n});\n\nexport const detectPackageManager = async (\n cwd?: string,\n): Promise<PackageManagerConfig> => {\n let packageManager: PackageManager = DEFAULT_PACKAGE_MANAGER;\n\n try {\n const [yarnDepth, pnpmDepth] = await Promise.all([\n findDepth('yarn.lock', cwd),\n findDepth('pnpm-lock.yaml', cwd),\n ]);\n\n if (yarnDepth === undefined && pnpmDepth === undefined) {\n throw new Error('No package manager lockfile found.');\n }\n\n packageManager = (pnpmDepth ?? -1) > (yarnDepth ?? -1) ? 'pnpm' : 'yarn';\n } catch (err) {\n log.warn(\n `Failed to detect package manager; defaulting to ${log.bold(\n DEFAULT_PACKAGE_MANAGER,\n )}.`,\n );\n log.subtle(\n (() => {\n switch (true) {\n case err instanceof Error:\n return err.message;\n\n default:\n return String(err);\n }\n })(),\n );\n }\n\n return configForPackageManager(packageManager);\n};\n\nconst findDepth = async (filename: string, cwd?: string) => {\n const path = await findUp(filename, { cwd });\n return path ? path.split('/').length : undefined;\n};\n\nexport type PackageManager = z.infer<typeof packageManagerSchema>;\n\nexport const packageManagerSchema = z\n .enum(['pnpm', 'yarn'])\n .default(DEFAULT_PACKAGE_MANAGER);\n"],
5
- "mappings": "AAAA,OAAO,YAAY;AACnB,OAAO,yBAAyB;AAChC,YAAY,OAAO;AAEnB,SAAS,WAAW;AAEb,MAAM,0BAA0B;AAOvC,MAAM,mBAAmB;AAAA,EACvB,MAAM;AAAA,IACJ,OAAO;AAAA,MACL,MAAM;AAAA,MACN,WAAW;AAAA,MACX,QAAQ,sBAAsB,yBAAyB;AAAA,IACzD;AAAA,EACF;AAAA,EACA,MAAM;AAAA,IACJ,OAAO;AAAA,MACL,MAAM;AAAA,MACN,WAAW;AAAA,MACX,QAAQ,sBAAsB,wBAAwB;AAAA,IACxD;AAAA,EACF;AACF;AAEO,MAAM,0BAA0B,CACrC,oBAC0B;AAAA,EAC1B,GAAG,iBAAiB,cAAc;AAAA,EAClC,SAAS;AACX;AAEO,MAAM,uBAAuB,OAClC,QACkC;AAClC,MAAI,iBAAiC;AAErC,MAAI;AACF,UAAM,CAAC,WAAW,SAAS,IAAI,MAAM,QAAQ,IAAI;AAAA,MAC/C,UAAU,aAAa,GAAG;AAAA,MAC1B,UAAU,kBAAkB,GAAG;AAAA,IACjC,CAAC;AAED,QAAI,cAAc,UAAa,cAAc,QAAW;AACtD,YAAM,IAAI,MAAM,oCAAoC;AAAA,IACtD;AAEA,sBAAkB,aAAa,OAAO,aAAa,MAAM,SAAS;AAAA,EACpE,SAAS,KAAK;AACZ,QAAI;AAAA,MACF,mDAAmD,IAAI;AAAA,QACrD;AAAA,MACF,CAAC;AAAA,IACH;AACA,QAAI;AAAA,OACD,MAAM;AACL,gBAAQ,MAAM;AAAA,UACZ,KAAK,eAAe;AAClB,mBAAO,IAAI;AAAA,UAEb;AACE,mBAAO,OAAO,GAAG;AAAA,QACrB;AAAA,MACF,GAAG;AAAA,IACL;AAAA,EACF;AAEA,SAAO,wBAAwB,cAAc;AAC/C;AAEA,MAAM,YAAY,OAAO,UAAkB,QAAiB;AAC1D,QAAM,OAAO,MAAM,OAAO,UAAU,EAAE,IAAI,CAAC;AAC3C,SAAO,OAAO,KAAK,MAAM,GAAG,EAAE,SAAS;AACzC;AAIO,MAAM,uBAAuB,EACjC,KAAK,CAAC,QAAQ,MAAM,CAAC,EACrB,QAAQ,uBAAuB;",
6
- "names": []
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAmB;AACnB,mCAAgC;AAChC,QAAmB;AAEnB,qBAAoB;AAEb,MAAM,0BAA0B;AAOvC,MAAM,mBAAmB;AAAA,EACvB,MAAM;AAAA,IACJ,OAAO;AAAA,MACL,MAAM;AAAA,MACN,WAAW;AAAA,MACX,QAAQ,6BAAAA,UAAsB,yBAAyB;AAAA,IACzD;AAAA,EACF;AAAA,EACA,MAAM;AAAA,IACJ,OAAO;AAAA,MACL,MAAM;AAAA,MACN,WAAW;AAAA,MACX,QAAQ,6BAAAA,UAAsB,wBAAwB;AAAA,IACxD;AAAA,EACF;AACF;AAEO,MAAM,0BAA0B,CACrC,oBAC0B;AAAA,EAC1B,GAAG,iBAAiB,cAAc;AAAA,EAClC,SAAS;AACX;AAEO,MAAM,uBAAuB,OAClC,QACkC;AAClC,MAAI,iBAAiC;AAErC,MAAI;AACF,UAAM,CAAC,WAAW,SAAS,IAAI,MAAM,QAAQ,IAAI;AAAA,MAC/C,UAAU,aAAa,GAAG;AAAA,MAC1B,UAAU,kBAAkB,GAAG;AAAA,IACjC,CAAC;AAED,QAAI,cAAc,UAAa,cAAc,QAAW;AACtD,YAAM,IAAI,MAAM,oCAAoC;AAAA,IACtD;AAEA,sBAAkB,aAAa,OAAO,aAAa,MAAM,SAAS;AAAA,EACpE,SAAS,KAAK;AACZ,uBAAI;AAAA,MACF,mDAAmD,mBAAI;AAAA,QACrD;AAAA,MACF,CAAC;AAAA,IACH;AACA,uBAAI;AAAA,OACD,MAAM;AACL,gBAAQ,MAAM;AAAA,UACZ,KAAK,eAAe;AAClB,mBAAO,IAAI;AAAA,UAEb;AACE,mBAAO,OAAO,GAAG;AAAA,QACrB;AAAA,MACF,GAAG;AAAA,IACL;AAAA,EACF;AAEA,SAAO,wBAAwB,cAAc;AAC/C;AAEA,MAAM,YAAY,OAAO,UAAkB,QAAiB;AAC1D,QAAM,OAAO,UAAM,eAAAC,SAAO,UAAU,EAAE,IAAI,CAAC;AAC3C,SAAO,OAAO,KAAK,MAAM,GAAG,EAAE,SAAS;AACzC;AAIO,MAAM,uBAAuB,EACjC,KAAK,CAAC,QAAQ,MAAM,CAAC,EACrB,QAAQ,uBAAuB;",
6
+ "names": ["isInstalledGlobally", "findUp"]
7
7
  }