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,56 @@
1
- import path from "path";
2
- import { inspect } from "util";
3
- import { glob } from "fast-glob";
4
- import fs from "fs-extra";
5
- import { log } from "../../../../../../utils/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 rewriteSrcImports_exports = {};
30
+ __export(rewriteSrcImports_exports, {
31
+ hasImportRegex: () => hasImportRegex,
32
+ hasJestMockRegex: () => hasJestMockRegex,
33
+ hasRelativeImportRegex: () => hasRelativeImportRegex,
34
+ hasRelativeRegisterImportRegex: () => hasRelativeRegisterImportRegex,
35
+ hasSkubaDiveRegisterImportRegex: () => hasSkubaDiveRegisterImportRegex,
36
+ hasSrcImportRegex: () => hasSrcImportRegex,
37
+ hasSrcSideEffectImportRegex: () => hasSrcSideEffectImportRegex,
38
+ isFileEmpty: () => isFileEmpty,
39
+ replaceSrcImport: () => replaceSrcImport,
40
+ replaceSrcImportWithConditionalRegisterRemoval: () => replaceSrcImportWithConditionalRegisterRemoval,
41
+ replaceSrcImportWithSelectiveRegisterRemoval: () => replaceSrcImportWithSelectiveRegisterRemoval,
42
+ rewriteSrcImports: () => rewriteSrcImports,
43
+ tryRewriteSrcImports: () => tryRewriteSrcImports
44
+ });
45
+ module.exports = __toCommonJS(rewriteSrcImports_exports);
46
+ var import_path = __toESM(require("path"));
47
+ var import_util = require("util");
48
+ var import_fast_glob = require("fast-glob");
49
+ var import_fs_extra = __toESM(require("fs-extra"));
50
+ var import_logging = require("../../../../../../utils/logging.js");
6
51
  const fetchFiles = async (files) => Promise.all(
7
52
  files.map(async (file) => {
8
- const contents = await fs.promises.readFile(file, "utf8");
53
+ const contents = await import_fs_extra.default.promises.readFile(file, "utf8");
9
54
  return {
10
55
  file,
11
56
  contents
@@ -28,9 +73,9 @@ const removeSelectiveRelativeImports = (contents, file, deletionSet) => contents
28
73
  if (!relativePath) {
29
74
  return match;
30
75
  }
31
- const fileDir = path.dirname(file);
32
- const resolvedPath = path.resolve(fileDir, relativePath);
33
- if (path.extname(relativePath)) {
76
+ const fileDir = import_path.default.dirname(file);
77
+ const resolvedPath = import_path.default.resolve(fileDir, relativePath);
78
+ if (import_path.default.extname(relativePath)) {
34
79
  return deletionSet.has(resolvedPath) ? "" : match;
35
80
  }
36
81
  const possiblePaths = [`${resolvedPath}.ts`, `${resolvedPath}.js`];
@@ -97,7 +142,7 @@ const replaceSrcImportWithSelectiveRegisterRemoval = (contents, file, deletionSe
97
142
  const tryRewriteSrcImports = async ({
98
143
  mode
99
144
  }) => {
100
- const tsFileNames = await glob(["**/*.ts", "**/*.test.ts"], {
145
+ const tsFileNames = await (0, import_fast_glob.glob)(["**/*.ts", "**/*.test.ts"], {
101
146
  ignore: [
102
147
  "**/.git",
103
148
  "**/node_modules",
@@ -130,7 +175,7 @@ const tryRewriteSrcImports = async ({
130
175
  )
131
176
  }));
132
177
  const filesToDelete = new Set(
133
- filesWithSkubaDiveRemoved.filter(({ afterSkubaDiveRemoval }) => isFileEmpty(afterSkubaDiveRemoval)).map(({ file }) => path.resolve(file))
178
+ filesWithSkubaDiveRemoved.filter(({ afterSkubaDiveRemoval }) => isFileEmpty(afterSkubaDiveRemoval)).map(({ file }) => import_path.default.resolve(file))
134
179
  );
135
180
  const mapped = tsFiles.map(({ file, contents }) => ({
136
181
  file,
@@ -149,11 +194,11 @@ const tryRewriteSrcImports = async ({
149
194
  await Promise.all(
150
195
  mapped.map(async ({ file, before, after }) => {
151
196
  if (isFileEmpty(after)) {
152
- await fs.promises.unlink(file);
197
+ await import_fs_extra.default.promises.unlink(file);
153
198
  return;
154
199
  }
155
200
  if (before !== after) {
156
- await fs.promises.writeFile(file, after);
201
+ await import_fs_extra.default.promises.writeFile(file, after);
157
202
  }
158
203
  })
159
204
  );
@@ -163,13 +208,13 @@ const rewriteSrcImports = async (config) => {
163
208
  try {
164
209
  return await tryRewriteSrcImports(config);
165
210
  } catch (err) {
166
- log.warn("Failed to rewrite src imports to #src");
167
- log.subtle(inspect(err));
211
+ import_logging.log.warn("Failed to rewrite src imports to #src");
212
+ import_logging.log.subtle((0, import_util.inspect)(err));
168
213
  return { result: "skip", reason: "due to an error" };
169
214
  }
170
215
  };
171
- export {
172
- fetchFiles,
216
+ // Annotate the CommonJS export names for ESM import in node:
217
+ 0 && (module.exports = {
173
218
  hasImportRegex,
174
219
  hasJestMockRegex,
175
220
  hasRelativeImportRegex,
@@ -183,5 +228,5 @@ export {
183
228
  replaceSrcImportWithSelectiveRegisterRemoval,
184
229
  rewriteSrcImports,
185
230
  tryRewriteSrcImports
186
- };
231
+ });
187
232
  //# sourceMappingURL=rewriteSrcImports.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../src/cli/lint/internalLints/upgrade/patches/12.4.1/rewriteSrcImports.ts"],
4
- "sourcesContent": ["import path from 'path';\nimport { inspect } from 'util';\n\nimport { glob } from 'fast-glob';\nimport fs from 'fs-extra';\n\nimport { log } from '../../../../../../utils/logging.js';\nimport type { PatchFunction, PatchReturnType } from '../../index.js';\n\nexport const fetchFiles = async (files: string[]) =>\n Promise.all(\n files.map(async (file) => {\n const contents = await fs.promises.readFile(file, 'utf8');\n\n return {\n file,\n contents,\n };\n }),\n );\n\nexport const hasSkubaDiveRegisterImportRegex =\n /import\\s+['\"](?:skuba-dive\\/register)(?:\\.js)?['\"];?\\s*/gm;\n\nexport const hasRelativeRegisterImportRegex =\n /import\\s+['\"](\\.\\.?\\/.*?register)(?:\\.js)?['\"];?\\s*/gm;\n\nexport const hasRelativeImportRegex =\n /import\\s+['\"](\\.\\.?\\/[^'\"]*?)(?:\\.js)?['\"];?\\s*/gm;\n\nexport const hasSrcImportRegex =\n /import\\s+(?:type\\s+(?:\\{[^}]*\\}|\\*\\s+as\\s+\\w+)|\\{[^}]*\\}|\\*\\s+as\\s+\\w+|\\w+(?:\\s*,\\s*\\{[^}]*\\})?)\\s+from\\s+['\"]src\\/[^'\"]*['\"]/gm;\n\nexport const hasSrcSideEffectImportRegex =\n /import\\s+['\"]src\\/[^'\"]*['\"];?\\s*/gm;\n\nexport const hasImportRegex = /import\\(\\s*[\"']src\\/[^'\"]*[\"']\\s*\\)/gm;\n\nexport const hasJestMockRegex = /jest\\.(mock|doMock)\\(\\s*[\"']src\\/[^'\"]*[\"']/gm;\n\nconst multiLineCommentRegex = /\\/\\*[\\s\\S]*?\\*\\//g;\n\nconst singleLineCommentRegex = /\\/\\/.*$/gm;\n\nconst whitespaceRegex = /\\s/g;\n\nconst removeSkubaDiveRegisterImport = (contents: string) =>\n contents.replace(hasSkubaDiveRegisterImportRegex, '');\n\nconst removeRelativeRegisterImport = (contents: string) =>\n contents.replace(hasRelativeRegisterImportRegex, '');\n\nconst removeSelectiveRelativeImports = (\n contents: string,\n file: string,\n deletionSet: Set<string>,\n): string =>\n contents.replace(hasRelativeImportRegex, (match, relativePath: string) => {\n if (!relativePath) {\n return match;\n }\n\n const fileDir = path.dirname(file);\n const resolvedPath = path.resolve(fileDir, relativePath);\n\n if (path.extname(relativePath)) {\n return deletionSet.has(resolvedPath) ? '' : match;\n }\n\n const possiblePaths = [`${resolvedPath}.ts`, `${resolvedPath}.js`];\n const shouldRemove = possiblePaths.some((possiblePath) =>\n deletionSet.has(possiblePath),\n );\n\n return shouldRemove ? '' : match;\n });\n\nexport const isFileEmpty = (contents: string): boolean =>\n contents\n .replace(multiLineCommentRegex, '')\n .replace(singleLineCommentRegex, '')\n .replace(whitespaceRegex, '').length === 0;\n\nexport const replaceSrcImport = (contents: string) => {\n const combinedSrcRegex = new RegExp(\n [\n hasSrcImportRegex.source,\n hasSrcSideEffectImportRegex.source,\n hasImportRegex.source,\n hasJestMockRegex.source,\n ].join('|'),\n 'gm',\n );\n\n const withReplacedSrcImports = contents.replace(combinedSrcRegex, (match) =>\n match.replace(/(['\"])src\\//g, '$1#src/'),\n );\n\n return removeSkubaDiveRegisterImport(withReplacedSrcImports);\n};\n\nexport const replaceSrcImportWithConditionalRegisterRemoval = (\n contents: string,\n shouldRemoveRelativeRegister: boolean,\n) => {\n const combinedSrcRegex = new RegExp(\n [\n hasSrcImportRegex.source,\n hasSrcSideEffectImportRegex.source,\n hasImportRegex.source,\n hasJestMockRegex.source,\n ].join('|'),\n 'gm',\n );\n\n const withReplacedSrcImports = contents.replace(combinedSrcRegex, (match) =>\n match.replace(/(['\"])src\\//g, '$1#src/'),\n );\n\n const withoutSkubaDive = removeSkubaDiveRegisterImport(\n withReplacedSrcImports,\n );\n\n return shouldRemoveRelativeRegister\n ? removeRelativeRegisterImport(withoutSkubaDive)\n : withoutSkubaDive;\n};\n\nexport const replaceSrcImportWithSelectiveRegisterRemoval = (\n contents: string,\n file: string,\n deletionSet: Set<string>,\n) => {\n const combinedSrcRegex = new RegExp(\n [\n hasSrcImportRegex.source,\n hasSrcSideEffectImportRegex.source,\n hasImportRegex.source,\n hasJestMockRegex.source,\n ].join('|'),\n 'gm',\n );\n\n const withReplacedSrcImports = contents.replace(combinedSrcRegex, (match) =>\n match.replace(/(['\"])src\\//g, '$1#src/'),\n );\n\n const withoutSkubaDive = removeSkubaDiveRegisterImport(\n withReplacedSrcImports,\n );\n\n return removeSelectiveRelativeImports(withoutSkubaDive, file, deletionSet);\n};\n\nexport const tryRewriteSrcImports: PatchFunction = async ({\n mode,\n}): Promise<PatchReturnType> => {\n const tsFileNames = await glob(['**/*.ts', '**/*.test.ts'], {\n ignore: [\n '**/.git',\n '**/node_modules',\n 'src/cli/lint/internalLints/upgrade/patches/**/*',\n ],\n });\n\n if (!tsFileNames.length) {\n return {\n result: 'skip',\n reason: 'no .ts or test.ts files found',\n };\n }\n\n const tsFiles = await fetchFiles(tsFileNames);\n\n const filesWithSkubaDiveRemoved = tsFiles.map(({ file, contents }) => ({\n file,\n before: contents,\n afterSkubaDiveRemoval: removeSkubaDiveRegisterImport(\n contents.replace(\n new RegExp(\n [\n hasSrcImportRegex.source,\n hasSrcSideEffectImportRegex.source,\n hasImportRegex.source,\n hasJestMockRegex.source,\n ].join('|'),\n 'gm',\n ),\n (match) => match.replace(/(['\"])src\\//g, '$1#src/'),\n ),\n ),\n }));\n\n const filesToDelete = new Set(\n filesWithSkubaDiveRemoved\n .filter(({ afterSkubaDiveRemoval }) => isFileEmpty(afterSkubaDiveRemoval))\n .map(({ file }) => path.resolve(file)),\n );\n\n const mapped = tsFiles.map(({ file, contents }) => ({\n file,\n before: contents,\n after: replaceSrcImportWithSelectiveRegisterRemoval(\n contents,\n file,\n filesToDelete,\n ),\n }));\n\n if (mode === 'lint') {\n return {\n result: 'apply',\n };\n }\n\n await Promise.all(\n mapped.map(async ({ file, before, after }) => {\n if (isFileEmpty(after)) {\n await fs.promises.unlink(file);\n return;\n }\n\n if (before !== after) {\n await fs.promises.writeFile(file, after);\n }\n }),\n );\n\n return { result: 'apply' };\n};\n\nexport const rewriteSrcImports: PatchFunction = async (config) => {\n try {\n return await tryRewriteSrcImports(config);\n } catch (err) {\n log.warn('Failed to rewrite src imports to #src');\n log.subtle(inspect(err));\n return { result: 'skip', reason: 'due to an error' };\n }\n};\n"],
5
- "mappings": "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",
6
- "names": []
4
+ "sourcesContent": ["import path from 'path';\nimport { inspect } from 'util';\n\nimport { glob } from 'fast-glob';\nimport fs from 'fs-extra';\n\nimport { log } from '../../../../../../utils/logging.js';\nimport type { PatchFunction, PatchReturnType } from '../../index.js';\n\nconst fetchFiles = async (files: string[]) =>\n Promise.all(\n files.map(async (file) => {\n const contents = await fs.promises.readFile(file, 'utf8');\n\n return {\n file,\n contents,\n };\n }),\n );\n\nexport const hasSkubaDiveRegisterImportRegex =\n /import\\s+['\"](?:skuba-dive\\/register)(?:\\.js)?['\"];?\\s*/gm;\n\nexport const hasRelativeRegisterImportRegex =\n /import\\s+['\"](\\.\\.?\\/.*?register)(?:\\.js)?['\"];?\\s*/gm;\n\nexport const hasRelativeImportRegex =\n /import\\s+['\"](\\.\\.?\\/[^'\"]*?)(?:\\.js)?['\"];?\\s*/gm;\n\nexport const hasSrcImportRegex =\n /import\\s+(?:type\\s+(?:\\{[^}]*\\}|\\*\\s+as\\s+\\w+)|\\{[^}]*\\}|\\*\\s+as\\s+\\w+|\\w+(?:\\s*,\\s*\\{[^}]*\\})?)\\s+from\\s+['\"]src\\/[^'\"]*['\"]/gm;\n\nexport const hasSrcSideEffectImportRegex =\n /import\\s+['\"]src\\/[^'\"]*['\"];?\\s*/gm;\n\nexport const hasImportRegex = /import\\(\\s*[\"']src\\/[^'\"]*[\"']\\s*\\)/gm;\n\nexport const hasJestMockRegex = /jest\\.(mock|doMock)\\(\\s*[\"']src\\/[^'\"]*[\"']/gm;\n\nconst multiLineCommentRegex = /\\/\\*[\\s\\S]*?\\*\\//g;\n\nconst singleLineCommentRegex = /\\/\\/.*$/gm;\n\nconst whitespaceRegex = /\\s/g;\n\nconst removeSkubaDiveRegisterImport = (contents: string) =>\n contents.replace(hasSkubaDiveRegisterImportRegex, '');\n\nconst removeRelativeRegisterImport = (contents: string) =>\n contents.replace(hasRelativeRegisterImportRegex, '');\n\nconst removeSelectiveRelativeImports = (\n contents: string,\n file: string,\n deletionSet: Set<string>,\n): string =>\n contents.replace(hasRelativeImportRegex, (match, relativePath: string) => {\n if (!relativePath) {\n return match;\n }\n\n const fileDir = path.dirname(file);\n const resolvedPath = path.resolve(fileDir, relativePath);\n\n if (path.extname(relativePath)) {\n return deletionSet.has(resolvedPath) ? '' : match;\n }\n\n const possiblePaths = [`${resolvedPath}.ts`, `${resolvedPath}.js`];\n const shouldRemove = possiblePaths.some((possiblePath) =>\n deletionSet.has(possiblePath),\n );\n\n return shouldRemove ? '' : match;\n });\n\nexport const isFileEmpty = (contents: string): boolean =>\n contents\n .replace(multiLineCommentRegex, '')\n .replace(singleLineCommentRegex, '')\n .replace(whitespaceRegex, '').length === 0;\n\nexport const replaceSrcImport = (contents: string) => {\n const combinedSrcRegex = new RegExp(\n [\n hasSrcImportRegex.source,\n hasSrcSideEffectImportRegex.source,\n hasImportRegex.source,\n hasJestMockRegex.source,\n ].join('|'),\n 'gm',\n );\n\n const withReplacedSrcImports = contents.replace(combinedSrcRegex, (match) =>\n match.replace(/(['\"])src\\//g, '$1#src/'),\n );\n\n return removeSkubaDiveRegisterImport(withReplacedSrcImports);\n};\n\nexport const replaceSrcImportWithConditionalRegisterRemoval = (\n contents: string,\n shouldRemoveRelativeRegister: boolean,\n) => {\n const combinedSrcRegex = new RegExp(\n [\n hasSrcImportRegex.source,\n hasSrcSideEffectImportRegex.source,\n hasImportRegex.source,\n hasJestMockRegex.source,\n ].join('|'),\n 'gm',\n );\n\n const withReplacedSrcImports = contents.replace(combinedSrcRegex, (match) =>\n match.replace(/(['\"])src\\//g, '$1#src/'),\n );\n\n const withoutSkubaDive = removeSkubaDiveRegisterImport(\n withReplacedSrcImports,\n );\n\n return shouldRemoveRelativeRegister\n ? removeRelativeRegisterImport(withoutSkubaDive)\n : withoutSkubaDive;\n};\n\nexport const replaceSrcImportWithSelectiveRegisterRemoval = (\n contents: string,\n file: string,\n deletionSet: Set<string>,\n) => {\n const combinedSrcRegex = new RegExp(\n [\n hasSrcImportRegex.source,\n hasSrcSideEffectImportRegex.source,\n hasImportRegex.source,\n hasJestMockRegex.source,\n ].join('|'),\n 'gm',\n );\n\n const withReplacedSrcImports = contents.replace(combinedSrcRegex, (match) =>\n match.replace(/(['\"])src\\//g, '$1#src/'),\n );\n\n const withoutSkubaDive = removeSkubaDiveRegisterImport(\n withReplacedSrcImports,\n );\n\n return removeSelectiveRelativeImports(withoutSkubaDive, file, deletionSet);\n};\n\nexport const tryRewriteSrcImports: PatchFunction = async ({\n mode,\n}): Promise<PatchReturnType> => {\n const tsFileNames = await glob(['**/*.ts', '**/*.test.ts'], {\n ignore: [\n '**/.git',\n '**/node_modules',\n 'src/cli/lint/internalLints/upgrade/patches/**/*',\n ],\n });\n\n if (!tsFileNames.length) {\n return {\n result: 'skip',\n reason: 'no .ts or test.ts files found',\n };\n }\n\n const tsFiles = await fetchFiles(tsFileNames);\n\n const filesWithSkubaDiveRemoved = tsFiles.map(({ file, contents }) => ({\n file,\n before: contents,\n afterSkubaDiveRemoval: removeSkubaDiveRegisterImport(\n contents.replace(\n new RegExp(\n [\n hasSrcImportRegex.source,\n hasSrcSideEffectImportRegex.source,\n hasImportRegex.source,\n hasJestMockRegex.source,\n ].join('|'),\n 'gm',\n ),\n (match) => match.replace(/(['\"])src\\//g, '$1#src/'),\n ),\n ),\n }));\n\n const filesToDelete = new Set(\n filesWithSkubaDiveRemoved\n .filter(({ afterSkubaDiveRemoval }) => isFileEmpty(afterSkubaDiveRemoval))\n .map(({ file }) => path.resolve(file)),\n );\n\n const mapped = tsFiles.map(({ file, contents }) => ({\n file,\n before: contents,\n after: replaceSrcImportWithSelectiveRegisterRemoval(\n contents,\n file,\n filesToDelete,\n ),\n }));\n\n if (mode === 'lint') {\n return {\n result: 'apply',\n };\n }\n\n await Promise.all(\n mapped.map(async ({ file, before, after }) => {\n if (isFileEmpty(after)) {\n await fs.promises.unlink(file);\n return;\n }\n\n if (before !== after) {\n await fs.promises.writeFile(file, after);\n }\n }),\n );\n\n return { result: 'apply' };\n};\n\nexport const rewriteSrcImports: PatchFunction = async (config) => {\n try {\n return await tryRewriteSrcImports(config);\n } catch (err) {\n log.warn('Failed to rewrite src imports to #src');\n log.subtle(inspect(err));\n return { result: 'skip', reason: 'due to an error' };\n }\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["fs", "path"]
7
7
  }
@@ -1,11 +1,45 @@
1
- import { inspect } from "util";
2
- import { glob } from "fast-glob";
3
- import fs from "fs-extra";
4
- import { Git } from "../../../../../../index.js";
5
- import { log } from "../../../../../../utils/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 updateLambdaConfigs_exports = {};
30
+ __export(updateLambdaConfigs_exports, {
31
+ tryUpdateLambdaConfigs: () => tryUpdateLambdaConfigs,
32
+ updateLambdaConfigs: () => updateLambdaConfigs
33
+ });
34
+ module.exports = __toCommonJS(updateLambdaConfigs_exports);
35
+ var import_util = require("util");
36
+ var import_fast_glob = require("fast-glob");
37
+ var import_fs_extra = __toESM(require("fs-extra"));
38
+ var import__ = require("../../../../../../index.js");
39
+ var import_logging = require("../../../../../../utils/logging.js");
6
40
  const fetchFiles = async (files) => Promise.all(
7
41
  files.map(async (file) => {
8
- const contents = await fs.promises.readFile(file, "utf8");
42
+ const contents = await import_fs_extra.default.promises.readFile(file, "utf8");
9
43
  return {
10
44
  file,
11
45
  contents
@@ -265,23 +299,23 @@ const tryUpdateLambdaConfigs = async ({
265
299
  }) => {
266
300
  let customCondition;
267
301
  try {
268
- const { repo } = await Git.getOwnerAndRepo({ dir: process.cwd() });
302
+ const { repo } = await import__.Git.getOwnerAndRepo({ dir: process.cwd() });
269
303
  customCondition = `@seek/${repo}/source`;
270
304
  } catch {
271
305
  return { result: "skip", reason: "no repository name found" };
272
306
  }
273
307
  const [tsFileNames, webpackFileNames, serverlessFileNames] = await Promise.all([
274
- glob("**/*.ts", {
308
+ (0, import_fast_glob.glob)("**/*.ts", {
275
309
  ignore: [
276
310
  "**/.git",
277
311
  "**/node_modules",
278
312
  "src/cli/lint/internalLints/upgrade/patches/**/*"
279
313
  ]
280
314
  }),
281
- glob("**/*webpack.config.js", {
315
+ (0, import_fast_glob.glob)("**/*webpack.config.js", {
282
316
  ignore: ["**/.git", "**/node_modules"]
283
317
  }),
284
- glob("**/serverless*.y*ml", {
318
+ (0, import_fast_glob.glob)("**/serverless*.y*ml", {
285
319
  ignore: ["**/.git", "**/node_modules"]
286
320
  })
287
321
  ]);
@@ -348,7 +382,7 @@ const tryUpdateLambdaConfigs = async ({
348
382
  }
349
383
  await Promise.all(
350
384
  filesToPatch.map(async ({ file, modified }) => {
351
- await fs.promises.writeFile(file, modified, "utf8");
385
+ await import_fs_extra.default.promises.writeFile(file, modified, "utf8");
352
386
  })
353
387
  );
354
388
  return { result: "apply" };
@@ -357,13 +391,14 @@ const updateLambdaConfigs = async (config) => {
357
391
  try {
358
392
  return await tryUpdateLambdaConfigs(config);
359
393
  } catch (err) {
360
- log.warn("Failed to write configure `tsconfig.json` and `package.json`");
361
- log.subtle(inspect(err));
394
+ import_logging.log.warn("Failed to write configure `tsconfig.json` and `package.json`");
395
+ import_logging.log.subtle((0, import_util.inspect)(err));
362
396
  return { result: "skip", reason: "due to an error" };
363
397
  }
364
398
  };
365
- export {
399
+ // Annotate the CommonJS export names for ESM import in node:
400
+ 0 && (module.exports = {
366
401
  tryUpdateLambdaConfigs,
367
402
  updateLambdaConfigs
368
- };
403
+ });
369
404
  //# sourceMappingURL=updateLambdaConfigs.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../src/cli/lint/internalLints/upgrade/patches/12.4.1/updateLambdaConfigs.ts"],
4
4
  "sourcesContent": ["import { inspect } from 'util';\n\nimport { glob } from 'fast-glob';\nimport fs from 'fs-extra';\n\nimport { Git } from '../../../../../../index.js';\nimport { log } from '../../../../../../utils/logging.js';\nimport type { PatchFunction, PatchReturnType } from '../../index.js';\n\nconst fetchFiles = async (files: string[]) =>\n Promise.all(\n files.map(async (file) => {\n const contents = await fs.promises.readFile(file, 'utf8');\n\n return {\n file,\n contents,\n };\n }),\n );\n\n/**\n * Find a block delimited by braces and return its content and position\n * @param content The text to search in\n * @param pattern The regex pattern to match (should match up to the opening brace)\n * @returns Object containing the matched content and indices, or undefined if not found\n */\nconst findBracedBlock = (\n content: string,\n pattern: RegExp,\n):\n | {\n content: string;\n startIndex: number;\n endIndex: number;\n matchIndex: number;\n }\n | undefined => {\n const match = pattern.exec(content);\n if (!match) {\n return undefined;\n }\n\n // Find the matching closing brace\n let braceCount = 1;\n const startIndex = match.index + match[0].length;\n let endIndex = startIndex;\n\n while (braceCount > 0 && endIndex < content.length) {\n if (content[endIndex] === '{') {\n braceCount++;\n } else if (content[endIndex] === '}') {\n braceCount--;\n }\n endIndex++;\n }\n\n if (braceCount !== 0) {\n return undefined;\n }\n\n return {\n content: content.slice(startIndex, endIndex - 1),\n startIndex,\n endIndex,\n matchIndex: match.index,\n };\n};\n\n/**\n * Find and replace all braced blocks matching a pattern\n * @param content The text to search in\n * @param pattern The regex pattern to match (should be global and match up to the opening brace)\n * @param replacer Function that receives the block content and returns the replacement, or undefined to skip\n * @returns The modified content, or undefined if no changes were made\n */\nconst replaceAllBracedBlocks = (\n content: string,\n pattern: RegExp,\n replacer: (blockContent: string) => string | undefined,\n): string | undefined => {\n let modified = content;\n let hasChanges = false;\n let match: RegExpExecArray | null;\n let offset = 0;\n\n while ((match = pattern.exec(content)) !== null) {\n const adjustedIndex = match.index + offset;\n\n // Find the matching closing brace\n let braceCount = 1;\n const startIndex = adjustedIndex + match[0].length;\n let endIndex = startIndex;\n\n while (braceCount > 0 && endIndex < modified.length) {\n if (modified[endIndex] === '{') {\n braceCount++;\n } else if (modified[endIndex] === '}') {\n braceCount--;\n }\n endIndex++;\n }\n\n if (braceCount !== 0) {\n continue;\n }\n\n const blockContent = modified.slice(startIndex, endIndex - 1);\n const replacement = replacer(blockContent);\n\n if (replacement === undefined) {\n continue;\n }\n\n // Replace this block\n const before = modified.slice(0, adjustedIndex);\n const after = modified.slice(endIndex);\n const fullReplacement = `${match[0].slice(0, -1)}{${replacement}}`;\n modified = `${before}${fullReplacement}${after}`;\n\n // Adjust offset for next iteration\n offset += fullReplacement.length - (endIndex - adjustedIndex);\n hasChanges = true;\n }\n\n return hasChanges ? modified : undefined;\n};\n\nconst patchCdkTsFile = ({\n contents,\n customCondition,\n}: {\n contents: string;\n customCondition: string;\n}):\n | {\n original: string;\n modified: string;\n }\n | undefined => {\n if (\n !contents.includes('aws_lambda_nodejs.NodejsFunction') &&\n !contents.includes('NodejsFunction')\n ) {\n return undefined;\n }\n\n const modified = replaceAllBracedBlocks(\n contents,\n /bundling:\\s*\\{/g,\n (bundlingContent) => {\n // Check if --conditions already exists\n if (bundlingContent.includes('--conditions')) {\n return undefined;\n }\n\n // Find esbuildArgs block within bundling\n const esbuildArgsBlock = findBracedBlock(\n bundlingContent,\n /esbuildArgs\\s*:\\s*\\{/,\n );\n\n if (esbuildArgsBlock) {\n const argsContent = esbuildArgsBlock.content.trim();\n const separator = argsContent ? ', ' : '';\n const newArgsContent = `'--conditions': '${customCondition}'${separator}${argsContent}`;\n\n const modifiedBundlingContent = `${bundlingContent.slice(0, esbuildArgsBlock.matchIndex)}esbuildArgs: {${newArgsContent}}${bundlingContent.slice(esbuildArgsBlock.endIndex)}`;\n\n return modifiedBundlingContent;\n }\n\n // Add new esbuildArgs property\n const modifiedBundlingContent = bundlingContent.trimStart();\n return `\\n esbuildArgs: { '--conditions': '${customCondition}' },\\n ${modifiedBundlingContent}`;\n },\n );\n\n if (!modified) {\n return undefined;\n }\n\n return {\n original: contents,\n modified,\n };\n};\n\nconst patchWebpackConfigFile = ({\n contents,\n customCondition,\n}: {\n contents: string;\n customCondition: string;\n}):\n | {\n original: string;\n modified: string;\n }\n | undefined => {\n // Find module.exports block\n const exportsBlock = findBracedBlock(contents, /module\\.exports\\s*=\\s*\\{/);\n if (!exportsBlock) {\n return undefined;\n }\n\n const exportsContent = exportsBlock.content;\n\n // Check if resolve.conditionNames already has our custom condition\n if (exportsContent.includes(customCondition)) {\n return undefined;\n }\n\n // Find resolve block within module.exports\n const resolveBlock = findBracedBlock(exportsContent, /resolve\\s*:\\s*\\{/);\n\n if (resolveBlock) {\n const resolveContent = resolveBlock.content;\n\n // Find conditionNames array within resolve\n const conditionNamesMatch = /conditionNames\\s*:\\s*\\[([^\\]]*)\\]/s.exec(\n resolveContent,\n );\n\n if (conditionNamesMatch?.[1] !== undefined) {\n // Add custom condition to existing conditionNames array\n const existingConditions = conditionNamesMatch[1].trim();\n const separator = existingConditions ? ', ' : '';\n const newConditionNames = `conditionNames: ['${customCondition}'${separator}${existingConditions}]`;\n\n const modifiedResolveContent = `${resolveContent.slice(0, conditionNamesMatch.index)}${newConditionNames}${resolveContent.slice(conditionNamesMatch.index + conditionNamesMatch[0].length)}`;\n\n const modifiedExportsContent = `${exportsContent.slice(0, resolveBlock.matchIndex)}resolve: {${modifiedResolveContent}}${exportsContent.slice(resolveBlock.endIndex)}`;\n\n const modified = `${contents.slice(0, exportsBlock.startIndex)}${modifiedExportsContent}${contents.slice(exportsBlock.endIndex)}`;\n\n return {\n original: contents,\n modified,\n };\n }\n\n // Add conditionNames property to resolve block\n const modifiedResolveContent = resolveContent.trimStart();\n const newResolveContent = `\\n conditionNames: ['${customCondition}', '...'],\\n ${modifiedResolveContent}`;\n\n const modifiedExportsContent = `${exportsContent.slice(0, resolveBlock.matchIndex)}resolve: {${newResolveContent}}${exportsContent.slice(resolveBlock.endIndex)}`;\n\n const modified = `${contents.slice(0, exportsBlock.startIndex)}${modifiedExportsContent}${contents.slice(exportsBlock.endIndex)}`;\n\n return {\n original: contents,\n modified,\n };\n }\n\n // Add resolve property with conditionNames to module.exports\n const modifiedExportsContent = exportsContent.trimStart();\n const newExportsContent = `\\n resolve: {\\n conditionNames: ['${customCondition}', '...'],\\n },\\n ${modifiedExportsContent}`;\n\n const modified = `${contents.slice(0, exportsBlock.startIndex)}${newExportsContent}${contents.slice(exportsBlock.endIndex)}`;\n\n return {\n original: contents,\n modified,\n };\n};\n\nconst patchServerlessEsbuildFile = ({\n contents,\n customCondition,\n}: {\n contents: string;\n customCondition: string;\n}):\n | {\n original: string;\n modified: string;\n }\n | undefined => {\n // Check if custom condition already exists\n if (contents.includes(customCondition)) {\n return undefined;\n }\n\n // Check for serverless-esbuild plugin or build.esbuild or custom.esbuild configuration\n if (\n !contents.includes('serverless-esbuild') &&\n !contents.includes('build:') &&\n !contents.includes('custom:')\n ) {\n return undefined;\n }\n\n // Match esbuild: blocks with nested configuration (not inline \"esbuild: false\")\n // This matches any level of indentation, not just directly under build/custom\n const esbuildBlockRegex = /^(\\s*)(esbuild:)\\s*\\n((?:\\1\\s+.+\\n)+)/gm;\n\n let match;\n let modified = contents;\n let hasChanges = false;\n\n // Reset regex lastIndex for multiple matches\n esbuildBlockRegex.lastIndex = 0;\n\n while ((match = esbuildBlockRegex.exec(contents)) !== null) {\n const [fullMatch, baseIndent, esbuildLabel, esbuildContent] = match;\n\n // Check if esbuild is disabled (esbuild: false)\n if (/esbuild:\\s*false/.exec(fullMatch)) {\n continue;\n }\n\n // Check if conditions already exists in this block\n if (esbuildContent?.includes('conditions:')) {\n continue;\n }\n\n // Determine indentation (should be baseIndent + 2 spaces for YAML)\n const conditionsIndent = `${baseIndent} `;\n const arrayItemIndent = `${conditionsIndent} `;\n\n // Build the new esbuild block with conditions added\n const newEsbuildBlock = `${baseIndent}${esbuildLabel}\\n${conditionsIndent}conditions:\\n${arrayItemIndent}- '${customCondition}'\\n${esbuildContent}`;\n\n // Replace in the modified content\n modified = modified.replace(fullMatch, newEsbuildBlock);\n hasChanges = true;\n }\n\n if (!hasChanges) {\n return undefined;\n }\n\n return {\n original: contents,\n modified,\n };\n};\n\nconst patchServerlessFile = ({\n contents,\n customCondition,\n}: {\n contents: string;\n customCondition: string;\n}):\n | {\n original: string;\n modified: string;\n }\n | undefined => {\n if (contents.includes('esbuild')) {\n return patchServerlessEsbuildFile({\n contents,\n customCondition,\n });\n }\n\n if (contents.includes('serverless-webpack')) {\n return undefined;\n }\n\n // patch package patterns for serverless framework\n if (contents.includes('package.json')) {\n return undefined;\n }\n\n // Match package: blocks with patterns: arrays (allow other properties in between)\n const packageBlockRegex = /^(\\s*)(patterns:)\\s*\\n((?:\\1\\s+-\\s+.+\\n)*)/gm;\n\n let match;\n let modified = contents;\n let hasChanges = false;\n\n // Reset regex lastIndex for multiple matches\n packageBlockRegex.lastIndex = 0;\n\n while ((match = packageBlockRegex.exec(contents)) !== null) {\n const [fullMatch, patternsIndent, patternsLabel, patternsContent] = match;\n\n // Check if package.json already exists in this block\n if (patternsContent?.includes('package.json')) {\n continue;\n }\n\n // Add package.json to the patterns list\n const arrayItemIndent = `${patternsIndent} `;\n const newPatternsBlock = `${patternsIndent}${patternsLabel}\\n${patternsContent}${arrayItemIndent}- 'package.json'\\n`;\n\n // Replace in the modified content\n modified = modified.replace(fullMatch, newPatternsBlock);\n hasChanges = true;\n }\n\n // Also match package: blocks with include: arrays (allow other properties in between)\n const packageIncludeBlockRegex =\n /^(\\s*)(include:)\\s*\\n((?:\\1\\s+-\\s+.+\\n)*)/gm;\n\n // Reset regex lastIndex for multiple matches\n packageIncludeBlockRegex.lastIndex = 0;\n\n while ((match = packageIncludeBlockRegex.exec(contents)) !== null) {\n const [fullMatch, includeIndent, includeLabel, includeContent] = match;\n\n // Check if package.json already exists in this block\n if (includeContent?.includes('package.json')) {\n continue;\n }\n\n // Add package.json to the include list\n const arrayItemIndent = `${includeIndent} `;\n const newIncludeBlock = `${includeIndent}${includeLabel}\\n${includeContent}${arrayItemIndent}- 'package.json'\\n`;\n\n // Replace in the modified content\n modified = modified.replace(fullMatch, newIncludeBlock);\n hasChanges = true;\n }\n\n if (!hasChanges) {\n return undefined;\n }\n\n return {\n original: contents,\n modified,\n };\n};\n\nexport const tryUpdateLambdaConfigs: PatchFunction = async ({\n mode,\n}): Promise<PatchReturnType> => {\n let customCondition: string;\n try {\n const { repo } = await Git.getOwnerAndRepo({ dir: process.cwd() });\n customCondition = `@seek/${repo}/source`;\n } catch {\n return { result: 'skip', reason: 'no repository name found' };\n }\n\n const [tsFileNames, webpackFileNames, serverlessFileNames] =\n await Promise.all([\n glob('**/*.ts', {\n ignore: [\n '**/.git',\n '**/node_modules',\n 'src/cli/lint/internalLints/upgrade/patches/**/*',\n ],\n }),\n glob('**/*webpack.config.js', {\n ignore: ['**/.git', '**/node_modules'],\n }),\n glob('**/serverless*.y*ml', {\n ignore: ['**/.git', '**/node_modules'],\n }),\n ]);\n\n if (\n !tsFileNames.length &&\n !webpackFileNames.length &&\n !serverlessFileNames.length\n ) {\n return {\n result: 'skip',\n reason: 'no .ts or webpack config files or .yml files found',\n };\n }\n\n const [tsFiles, webpackFiles, serverlessFiles] = await Promise.all([\n fetchFiles(tsFileNames),\n fetchFiles(webpackFileNames),\n fetchFiles(serverlessFileNames),\n ]);\n\n const filesToPatch = [\n ...tsFiles.flatMap(({ file, contents }) => {\n const patched = patchCdkTsFile({\n contents,\n customCondition,\n });\n if (patched && patched.modified !== patched.original) {\n return {\n file,\n original: patched.original,\n modified: patched.modified,\n };\n }\n return [];\n }),\n ...webpackFiles.flatMap(({ file, contents }) => {\n const patched = patchWebpackConfigFile({\n contents,\n customCondition,\n });\n if (patched && patched.modified !== patched.original) {\n return {\n file,\n original: patched.original,\n modified: patched.modified,\n };\n }\n return [];\n }),\n ...serverlessFiles.flatMap(({ file, contents }) => {\n const patched = patchServerlessFile({\n contents,\n customCondition,\n });\n if (patched && patched.modified !== patched.original) {\n return {\n file,\n original: patched.original,\n modified: patched.modified,\n };\n }\n return [];\n }),\n ];\n\n if (!filesToPatch.length) {\n return { result: 'skip', reason: 'no lambda configurations to patch' };\n }\n\n if (mode === 'lint') {\n return { result: 'apply' };\n }\n\n await Promise.all(\n filesToPatch.map(async ({ file, modified }) => {\n await fs.promises.writeFile(file, modified, 'utf8');\n }),\n );\n\n return { result: 'apply' };\n};\n\nexport const updateLambdaConfigs: PatchFunction = async (config) => {\n try {\n return await tryUpdateLambdaConfigs(config);\n } catch (err) {\n log.warn('Failed to write configure `tsconfig.json` and `package.json`');\n log.subtle(inspect(err));\n return { result: 'skip', reason: 'due to an error' };\n }\n};\n"],
5
- "mappings": "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",
6
- "names": ["modifiedBundlingContent", "modifiedResolveContent", "modifiedExportsContent", "modified"]
5
+ "mappings": "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",
6
+ "names": ["fs", "modifiedBundlingContent", "modifiedResolveContent", "modifiedExportsContent", "modified"]
7
7
  }
@@ -0,0 +1,40 @@
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 __exports = {};
20
+ __export(__exports, {
21
+ patches: () => patches
22
+ });
23
+ module.exports = __toCommonJS(__exports);
24
+ var import_patchRootTsconfig = require("./patchRootTsconfig.js");
25
+ var import_upgradeNode = require("./upgradeNode.js");
26
+ const patches = [
27
+ {
28
+ apply: import_upgradeNode.tryUpgradeNode,
29
+ description: "Upgrade Node.js version to 24 and package targets to Node.js 20"
30
+ },
31
+ {
32
+ apply: import_patchRootTsconfig.tryPatchRootTsConfig,
33
+ description: "Add 'rootDir' to root tsconfig.json compilerOptions"
34
+ }
35
+ ];
36
+ // Annotate the CommonJS export names for ESM import in node:
37
+ 0 && (module.exports = {
38
+ patches
39
+ });
40
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../src/cli/lint/internalLints/upgrade/patches/13.1.1/index.ts"],
4
+ "sourcesContent": ["import type { Patches } from '../../index.js';\n\nimport { tryPatchRootTsConfig } from './patchRootTsconfig.js';\nimport { tryUpgradeNode } from './upgradeNode.js';\n\nexport const patches: Patches = [\n {\n apply: tryUpgradeNode,\n description:\n 'Upgrade Node.js version to 24 and package targets to Node.js 20',\n },\n {\n apply: tryPatchRootTsConfig,\n description: \"Add 'rootDir' to root tsconfig.json compilerOptions\",\n },\n];\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,+BAAqC;AACrC,yBAA+B;AAExB,MAAM,UAAmB;AAAA,EAC9B;AAAA,IACE,OAAO;AAAA,IACP,aACE;AAAA,EACJ;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,aAAa;AAAA,EACf;AACF;",
6
+ "names": []
7
+ }
@@ -0,0 +1,3 @@
1
+ import type { PatchFunction } from '../../index.js';
2
+ export declare const patchRootConfig: PatchFunction;
3
+ export declare const tryPatchRootTsConfig: PatchFunction;
@@ -0,0 +1,133 @@
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 patchRootTsconfig_exports = {};
30
+ __export(patchRootTsconfig_exports, {
31
+ patchRootConfig: () => patchRootConfig,
32
+ tryPatchRootTsConfig: () => tryPatchRootTsConfig
33
+ });
34
+ module.exports = __toCommonJS(patchRootTsconfig_exports);
35
+ var import_util = require("util");
36
+ var import_lang_json = __toESM(require("@ast-grep/lang-json"));
37
+ var import_napi = require("@ast-grep/napi");
38
+ var import_fs_extra = __toESM(require("fs-extra"));
39
+ var import_logging = require("../../../../../../utils/logging.js");
40
+ const patchRootConfig = async ({
41
+ mode
42
+ }) => {
43
+ let tsconfigFile;
44
+ try {
45
+ tsconfigFile = await import_fs_extra.default.promises.readFile("tsconfig.json", "utf8");
46
+ } catch {
47
+ return {
48
+ result: "skip",
49
+ reason: "no root tsconfig.json found"
50
+ };
51
+ }
52
+ (0, import_napi.registerDynamicLanguage)({ json: import_lang_json.default });
53
+ const tsconfig = await (0, import_napi.parseAsync)("json", tsconfigFile);
54
+ const ast = tsconfig.root();
55
+ const compilerOptionsObj = ast.find({
56
+ rule: {
57
+ pattern: {
58
+ context: '{"compilerOptions":}',
59
+ selector: "pair"
60
+ }
61
+ }
62
+ });
63
+ if (!compilerOptionsObj) {
64
+ const startingBracket = ast.find({ rule: { pattern: "{" } });
65
+ if (!startingBracket) {
66
+ return {
67
+ result: "skip",
68
+ reason: "Unable to parse tsconfig.json"
69
+ };
70
+ }
71
+ const edit2 = startingBracket.replace(
72
+ `{
73
+ "compilerOptions": {
74
+ "rootDir": "."
75
+ },`
76
+ );
77
+ const newSource2 = ast.commitEdits([edit2]);
78
+ if (mode === "lint") {
79
+ return {
80
+ result: "apply"
81
+ };
82
+ }
83
+ await import_fs_extra.default.promises.writeFile("tsconfig.json", newSource2, "utf8");
84
+ return {
85
+ result: "apply"
86
+ };
87
+ }
88
+ const rootDirOption = compilerOptionsObj.find({
89
+ rule: { pattern: '"rootDir"' }
90
+ });
91
+ if (rootDirOption) {
92
+ return {
93
+ result: "skip",
94
+ reason: "rootDir already set in tsconfig.json"
95
+ };
96
+ }
97
+ const compilerOptionsStart = compilerOptionsObj.find({
98
+ rule: { pattern: "{" }
99
+ });
100
+ if (!compilerOptionsStart) {
101
+ return {
102
+ result: "skip",
103
+ reason: "Unable to parse tsconfig.json compilerOptions"
104
+ };
105
+ }
106
+ const edit = compilerOptionsStart.replace(`{
107
+ "rootDir": ".",`);
108
+ const newSource = ast.commitEdits([edit]);
109
+ if (mode === "lint") {
110
+ return {
111
+ result: "apply"
112
+ };
113
+ }
114
+ await import_fs_extra.default.promises.writeFile("tsconfig.json", newSource, "utf8");
115
+ return {
116
+ result: "apply"
117
+ };
118
+ };
119
+ const tryPatchRootTsConfig = async (config) => {
120
+ try {
121
+ return await patchRootConfig(config);
122
+ } catch (err) {
123
+ import_logging.log.warn("Failed to patch root `tsconfig.json`");
124
+ import_logging.log.subtle((0, import_util.inspect)(err));
125
+ return { result: "skip", reason: "due to an error" };
126
+ }
127
+ };
128
+ // Annotate the CommonJS export names for ESM import in node:
129
+ 0 && (module.exports = {
130
+ patchRootConfig,
131
+ tryPatchRootTsConfig
132
+ });
133
+ //# sourceMappingURL=patchRootTsconfig.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../../src/cli/lint/internalLints/upgrade/patches/13.1.1/patchRootTsconfig.ts"],
4
+ "sourcesContent": ["import { inspect } from 'util';\n\nimport json from '@ast-grep/lang-json';\nimport { parseAsync, registerDynamicLanguage } from '@ast-grep/napi';\nimport fs from 'fs-extra';\n\nimport { log } from '../../../../../../utils/logging.js';\nimport type { PatchFunction, PatchReturnType } from '../../index.js';\n\nexport const patchRootConfig: PatchFunction = async ({\n mode,\n}): Promise<PatchReturnType> => {\n let tsconfigFile: string;\n try {\n tsconfigFile = await fs.promises.readFile('tsconfig.json', 'utf8');\n } catch {\n return {\n result: 'skip',\n reason: 'no root tsconfig.json found',\n };\n }\n\n registerDynamicLanguage({ json });\n const tsconfig = await parseAsync('json', tsconfigFile);\n const ast = tsconfig.root();\n\n const compilerOptionsObj = ast.find({\n rule: {\n pattern: {\n context: '{\"compilerOptions\":}',\n selector: 'pair',\n },\n },\n });\n\n if (!compilerOptionsObj) {\n const startingBracket = ast.find({ rule: { pattern: '{' } });\n\n if (!startingBracket) {\n return {\n result: 'skip',\n reason: 'Unable to parse tsconfig.json',\n };\n }\n\n const edit = startingBracket.replace(\n `{\n \"compilerOptions\": {\n \"rootDir\": \".\"\n },`,\n );\n\n const newSource = ast.commitEdits([edit]);\n\n if (mode === 'lint') {\n return {\n result: 'apply',\n };\n }\n\n await fs.promises.writeFile('tsconfig.json', newSource, 'utf8');\n\n return {\n result: 'apply',\n };\n }\n\n const rootDirOption = compilerOptionsObj.find({\n rule: { pattern: '\"rootDir\"' },\n });\n\n if (rootDirOption) {\n return {\n result: 'skip',\n reason: 'rootDir already set in tsconfig.json',\n };\n }\n\n const compilerOptionsStart = compilerOptionsObj.find({\n rule: { pattern: '{' },\n });\n\n if (!compilerOptionsStart) {\n return {\n result: 'skip',\n reason: 'Unable to parse tsconfig.json compilerOptions',\n };\n }\n\n const edit = compilerOptionsStart.replace(`{\n \"rootDir\": \".\",`);\n\n const newSource = ast.commitEdits([edit]);\n\n if (mode === 'lint') {\n return {\n result: 'apply',\n };\n }\n\n await fs.promises.writeFile('tsconfig.json', newSource, 'utf8');\n\n return {\n result: 'apply',\n };\n};\n\nexport const tryPatchRootTsConfig: PatchFunction = async (config) => {\n try {\n return await patchRootConfig(config);\n } catch (err) {\n log.warn('Failed to patch root `tsconfig.json`');\n log.subtle(inspect(err));\n return { result: 'skip', reason: 'due to an error' };\n }\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAwB;AAExB,uBAAiB;AACjB,kBAAoD;AACpD,sBAAe;AAEf,qBAAoB;AAGb,MAAM,kBAAiC,OAAO;AAAA,EACnD;AACF,MAAgC;AAC9B,MAAI;AACJ,MAAI;AACF,mBAAe,MAAM,gBAAAA,QAAG,SAAS,SAAS,iBAAiB,MAAM;AAAA,EACnE,QAAQ;AACN,WAAO;AAAA,MACL,QAAQ;AAAA,MACR,QAAQ;AAAA,IACV;AAAA,EACF;AAEA,2CAAwB,EAAE,uBAAAC,QAAK,CAAC;AAChC,QAAM,WAAW,UAAM,wBAAW,QAAQ,YAAY;AACtD,QAAM,MAAM,SAAS,KAAK;AAE1B,QAAM,qBAAqB,IAAI,KAAK;AAAA,IAClC,MAAM;AAAA,MACJ,SAAS;AAAA,QACP,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,EACF,CAAC;AAED,MAAI,CAAC,oBAAoB;AACvB,UAAM,kBAAkB,IAAI,KAAK,EAAE,MAAM,EAAE,SAAS,IAAI,EAAE,CAAC;AAE3D,QAAI,CAAC,iBAAiB;AACpB,aAAO;AAAA,QACL,QAAQ;AAAA,QACR,QAAQ;AAAA,MACV;AAAA,IACF;AAEA,UAAMC,QAAO,gBAAgB;AAAA,MAC3B;AAAA;AAAA;AAAA;AAAA,IAIF;AAEA,UAAMC,aAAY,IAAI,YAAY,CAACD,KAAI,CAAC;AAExC,QAAI,SAAS,QAAQ;AACnB,aAAO;AAAA,QACL,QAAQ;AAAA,MACV;AAAA,IACF;AAEA,UAAM,gBAAAF,QAAG,SAAS,UAAU,iBAAiBG,YAAW,MAAM;AAE9D,WAAO;AAAA,MACL,QAAQ;AAAA,IACV;AAAA,EACF;AAEA,QAAM,gBAAgB,mBAAmB,KAAK;AAAA,IAC5C,MAAM,EAAE,SAAS,YAAY;AAAA,EAC/B,CAAC;AAED,MAAI,eAAe;AACjB,WAAO;AAAA,MACL,QAAQ;AAAA,MACR,QAAQ;AAAA,IACV;AAAA,EACF;AAEA,QAAM,uBAAuB,mBAAmB,KAAK;AAAA,IACnD,MAAM,EAAE,SAAS,IAAI;AAAA,EACvB,CAAC;AAED,MAAI,CAAC,sBAAsB;AACzB,WAAO;AAAA,MACL,QAAQ;AAAA,MACR,QAAQ;AAAA,IACV;AAAA,EACF;AAEA,QAAM,OAAO,qBAAqB,QAAQ;AAAA,oBACxB;AAElB,QAAM,YAAY,IAAI,YAAY,CAAC,IAAI,CAAC;AAExC,MAAI,SAAS,QAAQ;AACnB,WAAO;AAAA,MACL,QAAQ;AAAA,IACV;AAAA,EACF;AAEA,QAAM,gBAAAH,QAAG,SAAS,UAAU,iBAAiB,WAAW,MAAM;AAE9D,SAAO;AAAA,IACL,QAAQ;AAAA,EACV;AACF;AAEO,MAAM,uBAAsC,OAAO,WAAW;AACnE,MAAI;AACF,WAAO,MAAM,gBAAgB,MAAM;AAAA,EACrC,SAAS,KAAK;AACZ,uBAAI,KAAK,sCAAsC;AAC/C,uBAAI,WAAO,qBAAQ,GAAG,CAAC;AACvB,WAAO,EAAE,QAAQ,QAAQ,QAAQ,kBAAkB;AAAA,EACrD;AACF;",
6
+ "names": ["fs", "json", "edit", "newSource"]
7
+ }
@@ -0,0 +1,55 @@
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 upgradeNode_exports = {};
20
+ __export(upgradeNode_exports, {
21
+ tryUpgradeNode: () => tryUpgradeNode
22
+ });
23
+ module.exports = __toCommonJS(upgradeNode_exports);
24
+ var import_util = require("util");
25
+ var import_logging = require("../../../../../../utils/logging.js");
26
+ var import_migrate = require("../../../../../migrate/index.js");
27
+ const upgradeNode = async ({
28
+ mode
29
+ }) => {
30
+ if (process.env.SKIP_NODE_UPGRADE) {
31
+ return {
32
+ result: "skip",
33
+ reason: "SKIP_NODE_UPGRADE environment variable set"
34
+ };
35
+ }
36
+ if (mode === "lint") {
37
+ return { result: "apply" };
38
+ }
39
+ await import_migrate.migrations.node24();
40
+ return { result: "apply" };
41
+ };
42
+ const tryUpgradeNode = async (config) => {
43
+ try {
44
+ return await upgradeNode(config);
45
+ } catch (err) {
46
+ import_logging.log.warn("Failed to upgrade node version");
47
+ import_logging.log.subtle((0, import_util.inspect)(err));
48
+ return { result: "skip", reason: "due to an error" };
49
+ }
50
+ };
51
+ // Annotate the CommonJS export names for ESM import in node:
52
+ 0 && (module.exports = {
53
+ tryUpgradeNode
54
+ });
55
+ //# sourceMappingURL=upgradeNode.js.map