skuba 4.4.1 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (330) hide show
  1. package/config/tsconfig.json +1 -0
  2. package/jest/moduleNameMapper.js +50 -78
  3. package/jest/moduleNameMapper.test.ts +4 -14
  4. package/jest/transform.js +10 -1
  5. package/jest/tsConfig.js +26 -0
  6. package/lib/api/buildkite/annotate.js +46 -33
  7. package/lib/api/buildkite/annotate.js.map +7 -1
  8. package/lib/api/buildkite/index.js +31 -7
  9. package/lib/api/buildkite/index.js.map +7 -1
  10. package/lib/api/buildkite/md.js +31 -8
  11. package/lib/api/buildkite/md.js.map +7 -1
  12. package/lib/api/git/commit.js +45 -17
  13. package/lib/api/git/commit.js.map +7 -1
  14. package/lib/api/git/commitAllChanges.js +57 -27
  15. package/lib/api/git/commitAllChanges.js.map +7 -1
  16. package/lib/api/git/currentBranch.js +50 -28
  17. package/lib/api/git/currentBranch.js.map +7 -1
  18. package/lib/api/git/getChangedFiles.js +49 -27
  19. package/lib/api/git/getChangedFiles.js.map +7 -1
  20. package/lib/api/git/index.js +54 -22
  21. package/lib/api/git/index.js.map +7 -1
  22. package/lib/api/git/log.js +63 -42
  23. package/lib/api/git/log.js.map +7 -1
  24. package/lib/api/git/pull.js +62 -31
  25. package/lib/api/git/pull.js.map +7 -1
  26. package/lib/api/git/push.js +63 -31
  27. package/lib/api/git/push.js.map +7 -1
  28. package/lib/api/git/remote.js +59 -56
  29. package/lib/api/git/remote.js.map +7 -1
  30. package/lib/api/git/reset.js +55 -27
  31. package/lib/api/git/reset.js.map +7 -1
  32. package/lib/api/git/statusMatrix.js +46 -13
  33. package/lib/api/git/statusMatrix.js.map +7 -1
  34. package/lib/api/github/checkRun.js +70 -79
  35. package/lib/api/github/checkRun.js.map +7 -1
  36. package/lib/api/github/environment.js +40 -33
  37. package/lib/api/github/environment.js.map +7 -1
  38. package/lib/api/github/index.js +47 -17
  39. package/lib/api/github/index.js.map +7 -1
  40. package/lib/api/github/issueComment.js +73 -81
  41. package/lib/api/github/issueComment.js.map +7 -1
  42. package/lib/api/github/pullRequest.js +60 -61
  43. package/lib/api/github/pullRequest.js.map +7 -1
  44. package/lib/api/github/push.js +138 -133
  45. package/lib/api/github/push.js.map +7 -1
  46. package/lib/api/jest/index.d.ts +2 -1
  47. package/lib/api/jest/index.js +35 -14
  48. package/lib/api/jest/index.js.map +7 -1
  49. package/lib/api/net/compose.js +45 -17
  50. package/lib/api/net/compose.js.map +7 -1
  51. package/lib/api/net/index.js +28 -5
  52. package/lib/api/net/index.js.map +7 -1
  53. package/lib/api/net/socket.js +58 -36
  54. package/lib/api/net/socket.js.map +7 -1
  55. package/lib/api/net/waitFor.js +38 -18
  56. package/lib/api/net/waitFor.js.map +7 -1
  57. package/lib/cli/adapter/eslint.js +95 -72
  58. package/lib/cli/adapter/eslint.js.map +7 -1
  59. package/lib/cli/adapter/prettier.js +135 -123
  60. package/lib/cli/adapter/prettier.js.map +7 -1
  61. package/lib/cli/build/args.d.ts +7 -0
  62. package/lib/cli/build/args.js +69 -0
  63. package/lib/cli/build/args.js.map +7 -0
  64. package/lib/cli/build/esbuild.d.ts +5 -0
  65. package/lib/cli/build/esbuild.js +128 -0
  66. package/lib/cli/build/esbuild.js.map +7 -0
  67. package/lib/cli/build/index.d.ts +1 -1
  68. package/lib/cli/build/index.js +68 -5
  69. package/lib/cli/build/index.js.map +7 -1
  70. package/lib/cli/build/tsc.d.ts +1 -1
  71. package/lib/cli/build/tsc.js +34 -23
  72. package/lib/cli/build/tsc.js.map +7 -1
  73. package/lib/cli/buildPackage.js +53 -23
  74. package/lib/cli/buildPackage.js.map +7 -1
  75. package/lib/cli/configure/addEmptyExports.d.ts +5 -0
  76. package/lib/cli/configure/addEmptyExports.js +67 -0
  77. package/lib/cli/configure/addEmptyExports.js.map +7 -0
  78. package/lib/cli/configure/analyseConfiguration.js +61 -31
  79. package/lib/cli/configure/analyseConfiguration.js.map +7 -1
  80. package/lib/cli/configure/analyseDependencies.js +122 -113
  81. package/lib/cli/configure/analyseDependencies.js.map +7 -1
  82. package/lib/cli/configure/analysis/diff.js +37 -11
  83. package/lib/cli/configure/analysis/diff.js.map +7 -1
  84. package/lib/cli/configure/analysis/files.js +49 -22
  85. package/lib/cli/configure/analysis/files.js.map +7 -1
  86. package/lib/cli/configure/analysis/git.js +46 -16
  87. package/lib/cli/configure/analysis/git.js.map +7 -1
  88. package/lib/cli/configure/analysis/package.js +99 -52
  89. package/lib/cli/configure/analysis/package.js.map +7 -1
  90. package/lib/cli/configure/analysis/project.js +90 -54
  91. package/lib/cli/configure/analysis/project.js.map +7 -1
  92. package/lib/cli/configure/dependencies/index.js +40 -13
  93. package/lib/cli/configure/dependencies/index.js.map +7 -1
  94. package/lib/cli/configure/dependencies/seekDatadogCustomMetrics.js +57 -32
  95. package/lib/cli/configure/dependencies/seekDatadogCustomMetrics.js.map +7 -1
  96. package/lib/cli/configure/dependencies/seekKoala.js +53 -31
  97. package/lib/cli/configure/dependencies/seekKoala.js.map +7 -1
  98. package/lib/cli/configure/dependencies/skuba.js +49 -27
  99. package/lib/cli/configure/dependencies/skuba.js.map +7 -1
  100. package/lib/cli/configure/dependencies/skubaDeps.js +49 -28
  101. package/lib/cli/configure/dependencies/skubaDeps.js.map +7 -1
  102. package/lib/cli/configure/dependencies/skubaDive.js +65 -38
  103. package/lib/cli/configure/dependencies/skubaDive.js.map +7 -1
  104. package/lib/cli/configure/ensureTemplateCompletion.js +69 -41
  105. package/lib/cli/configure/ensureTemplateCompletion.js.map +7 -1
  106. package/lib/cli/configure/getEntryPoint.js +62 -32
  107. package/lib/cli/configure/getEntryPoint.js.map +7 -1
  108. package/lib/cli/configure/getProjectType.js +50 -28
  109. package/lib/cli/configure/getProjectType.js.map +7 -1
  110. package/lib/cli/configure/index.js +134 -109
  111. package/lib/cli/configure/index.js.map +7 -1
  112. package/lib/cli/configure/modules/eslint.js +57 -26
  113. package/lib/cli/configure/modules/eslint.js.map +7 -1
  114. package/lib/cli/configure/modules/ignore.js +37 -14
  115. package/lib/cli/configure/modules/ignore.js.map +7 -1
  116. package/lib/cli/configure/modules/index.js +53 -28
  117. package/lib/cli/configure/modules/index.js.map +7 -1
  118. package/lib/cli/configure/modules/jest.js +82 -47
  119. package/lib/cli/configure/modules/jest.js.map +7 -1
  120. package/lib/cli/configure/modules/nodemon.js +29 -6
  121. package/lib/cli/configure/modules/nodemon.js.map +7 -1
  122. package/lib/cli/configure/modules/package.js +113 -92
  123. package/lib/cli/configure/modules/package.js.map +7 -1
  124. package/lib/cli/configure/modules/prettier.js +48 -19
  125. package/lib/cli/configure/modules/prettier.js.map +7 -1
  126. package/lib/cli/configure/modules/renovate.js +52 -39
  127. package/lib/cli/configure/modules/renovate.js.map +7 -1
  128. package/lib/cli/configure/modules/serverless.js +33 -15
  129. package/lib/cli/configure/modules/serverless.js.map +7 -1
  130. package/lib/cli/configure/modules/skubaDive.js +63 -37
  131. package/lib/cli/configure/modules/skubaDive.js.map +7 -1
  132. package/lib/cli/configure/modules/tsconfig.js +84 -63
  133. package/lib/cli/configure/modules/tsconfig.js.map +7 -1
  134. package/lib/cli/configure/modules/tslint.js +29 -6
  135. package/lib/cli/configure/modules/tslint.js.map +7 -1
  136. package/lib/cli/configure/processing/deleteFiles.js +30 -8
  137. package/lib/cli/configure/processing/deleteFiles.js.map +7 -1
  138. package/lib/cli/configure/processing/ignoreFile.js +65 -59
  139. package/lib/cli/configure/processing/ignoreFile.js.map +7 -1
  140. package/lib/cli/configure/processing/javascript.js +35 -15
  141. package/lib/cli/configure/processing/javascript.js.map +7 -1
  142. package/lib/cli/configure/processing/json.js +51 -20
  143. package/lib/cli/configure/processing/json.js.map +7 -1
  144. package/lib/cli/configure/processing/loadFiles.js +30 -8
  145. package/lib/cli/configure/processing/loadFiles.js.map +7 -1
  146. package/lib/cli/configure/processing/module.js +37 -14
  147. package/lib/cli/configure/processing/module.js.map +7 -1
  148. package/lib/cli/configure/processing/package.js +73 -43
  149. package/lib/cli/configure/processing/package.js.map +7 -1
  150. package/lib/cli/configure/processing/prettier.js +37 -11
  151. package/lib/cli/configure/processing/prettier.js.map +7 -1
  152. package/lib/cli/configure/processing/record.js +54 -31
  153. package/lib/cli/configure/processing/record.js.map +7 -1
  154. package/lib/cli/configure/processing/typescript.js +176 -158
  155. package/lib/cli/configure/processing/typescript.js.map +7 -1
  156. package/lib/cli/configure/refreshIgnoreFiles.js +64 -40
  157. package/lib/cli/configure/refreshIgnoreFiles.js.map +7 -1
  158. package/lib/cli/configure/types.js +16 -2
  159. package/lib/cli/configure/types.js.map +7 -1
  160. package/lib/cli/format.js +58 -31
  161. package/lib/cli/format.js.map +7 -1
  162. package/lib/cli/help.js +31 -8
  163. package/lib/cli/help.js.map +7 -1
  164. package/lib/cli/init/getConfig.d.ts +1 -1
  165. package/lib/cli/init/getConfig.js +238 -207
  166. package/lib/cli/init/getConfig.js.map +7 -1
  167. package/lib/cli/init/git.js +70 -63
  168. package/lib/cli/init/git.js.map +7 -1
  169. package/lib/cli/init/index.js +133 -100
  170. package/lib/cli/init/index.js.map +7 -1
  171. package/lib/cli/init/prompts.js +84 -54
  172. package/lib/cli/init/prompts.js.map +7 -1
  173. package/lib/cli/init/types.js +52 -52
  174. package/lib/cli/init/types.js.map +7 -1
  175. package/lib/cli/init/validation.js +34 -12
  176. package/lib/cli/init/validation.js.map +7 -1
  177. package/lib/cli/init/writePackageJson.js +51 -22
  178. package/lib/cli/init/writePackageJson.js.map +7 -1
  179. package/lib/cli/lint/annotate/buildkite/eslint.js +34 -28
  180. package/lib/cli/lint/annotate/buildkite/eslint.js.map +7 -1
  181. package/lib/cli/lint/annotate/buildkite/index.js +50 -44
  182. package/lib/cli/lint/annotate/buildkite/index.js.map +7 -1
  183. package/lib/cli/lint/annotate/buildkite/prettier.js +41 -35
  184. package/lib/cli/lint/annotate/buildkite/prettier.js.map +7 -1
  185. package/lib/cli/lint/annotate/buildkite/tsc.js +39 -39
  186. package/lib/cli/lint/annotate/buildkite/tsc.js.map +7 -1
  187. package/lib/cli/lint/annotate/github/eslint.js +40 -16
  188. package/lib/cli/lint/annotate/github/eslint.js.map +7 -1
  189. package/lib/cli/lint/annotate/github/index.js +55 -51
  190. package/lib/cli/lint/annotate/github/index.js.map +7 -1
  191. package/lib/cli/lint/annotate/github/prettier.js +36 -13
  192. package/lib/cli/lint/annotate/github/prettier.js.map +7 -1
  193. package/lib/cli/lint/annotate/github/tsc.js +52 -52
  194. package/lib/cli/lint/annotate/github/tsc.js.map +7 -1
  195. package/lib/cli/lint/annotate/index.d.ts +1 -1
  196. package/lib/cli/lint/annotate/index.js +33 -10
  197. package/lib/cli/lint/annotate/index.js.map +7 -1
  198. package/lib/cli/lint/autofix.js +122 -117
  199. package/lib/cli/lint/autofix.js.map +7 -1
  200. package/lib/cli/lint/eslint.js +48 -18
  201. package/lib/cli/lint/eslint.js.map +7 -1
  202. package/lib/cli/lint/external.js +102 -81
  203. package/lib/cli/lint/external.js.map +7 -1
  204. package/lib/cli/lint/index.js +42 -18
  205. package/lib/cli/lint/index.js.map +7 -1
  206. package/lib/cli/lint/internal.js +54 -21
  207. package/lib/cli/lint/internal.js.map +7 -1
  208. package/lib/cli/lint/prettier.js +48 -18
  209. package/lib/cli/lint/prettier.js.map +7 -1
  210. package/lib/cli/lint/tsc.js +56 -32
  211. package/lib/cli/lint/tsc.js.map +7 -1
  212. package/lib/cli/lint/types.js +16 -2
  213. package/lib/cli/lint/types.js.map +7 -1
  214. package/lib/cli/node.js +65 -58
  215. package/lib/cli/node.js.map +7 -1
  216. package/lib/cli/release.js +29 -6
  217. package/lib/cli/release.js.map +7 -1
  218. package/lib/cli/start.js +61 -24
  219. package/lib/cli/start.js.map +7 -1
  220. package/lib/cli/test/index.js +35 -11
  221. package/lib/cli/test/index.js.map +7 -1
  222. package/lib/cli/test/reporters/github/annotations.js +89 -92
  223. package/lib/cli/test/reporters/github/annotations.js.map +7 -1
  224. package/lib/cli/test/reporters/github/index.js +68 -68
  225. package/lib/cli/test/reporters/github/index.js.map +7 -1
  226. package/lib/cli/version.js +31 -8
  227. package/lib/cli/version.js.map +7 -1
  228. package/lib/enquirer.d.js +2 -0
  229. package/lib/enquirer.d.js.map +7 -0
  230. package/lib/index.d.ts +6 -0
  231. package/lib/index.js +45 -41
  232. package/lib/index.js.map +7 -1
  233. package/lib/skuba.js +45 -38
  234. package/lib/skuba.js.map +7 -1
  235. package/lib/utils/args.js +97 -96
  236. package/lib/utils/args.js.map +7 -1
  237. package/lib/utils/command.js +64 -33
  238. package/lib/utils/command.js.map +7 -1
  239. package/lib/utils/copy.js +88 -51
  240. package/lib/utils/copy.js.map +7 -1
  241. package/lib/utils/dir.js +79 -67
  242. package/lib/utils/dir.js.map +7 -1
  243. package/lib/utils/env.js +27 -7
  244. package/lib/utils/env.js.map +7 -1
  245. package/lib/utils/error.js +58 -56
  246. package/lib/utils/error.js.map +7 -1
  247. package/lib/utils/exec.js +139 -110
  248. package/lib/utils/exec.js.map +7 -1
  249. package/lib/utils/help.js +31 -8
  250. package/lib/utils/help.js.map +7 -1
  251. package/lib/utils/logging.js +52 -24
  252. package/lib/utils/logging.js.map +7 -1
  253. package/lib/utils/logo.js +65 -27
  254. package/lib/utils/logo.js.map +7 -1
  255. package/lib/utils/manifest.d.ts +1 -0
  256. package/lib/utils/manifest.js +65 -51
  257. package/lib/utils/manifest.js.map +7 -1
  258. package/lib/utils/port.js +38 -17
  259. package/lib/utils/port.js.map +7 -1
  260. package/lib/utils/template.js +106 -87
  261. package/lib/utils/template.js.map +7 -1
  262. package/lib/utils/validation.js +43 -18
  263. package/lib/utils/validation.js.map +7 -1
  264. package/lib/utils/version.js +72 -82
  265. package/lib/utils/version.js.map +7 -1
  266. package/lib/utils/wait.js +52 -25
  267. package/lib/utils/wait.js.map +7 -1
  268. package/lib/utils/worker.js +59 -44
  269. package/lib/utils/worker.js.map +7 -1
  270. package/lib/wrapper/function-arguments.d.js +2 -0
  271. package/lib/wrapper/function-arguments.d.js.map +7 -0
  272. package/lib/wrapper/functionHandler.js +56 -29
  273. package/lib/wrapper/functionHandler.js.map +7 -1
  274. package/lib/wrapper/http.js +66 -56
  275. package/lib/wrapper/http.js.map +7 -1
  276. package/lib/wrapper/index.js +9 -21
  277. package/lib/wrapper/index.js.map +7 -1
  278. package/lib/wrapper/main.js +39 -20
  279. package/lib/wrapper/main.js.map +7 -1
  280. package/lib/wrapper/requestListener.js +50 -35
  281. package/lib/wrapper/requestListener.js.map +7 -1
  282. package/package.json +85 -79
  283. package/template/base/jest.config.ts +0 -6
  284. package/template/base/jest.setup.ts +2 -0
  285. package/template/base/tsconfig.json +2 -2
  286. package/template/express-rest-api/.buildkite/pipeline.yml +1 -1
  287. package/template/express-rest-api/.nvmrc +1 -1
  288. package/template/express-rest-api/Dockerfile +1 -1
  289. package/template/express-rest-api/Dockerfile.dev-deps +1 -1
  290. package/template/express-rest-api/package.json +14 -14
  291. package/template/greeter/.buildkite/pipeline.yml +1 -1
  292. package/template/greeter/.nvmrc +1 -1
  293. package/template/greeter/Dockerfile +1 -1
  294. package/template/greeter/package.json +11 -11
  295. package/template/greeter/src/app.test.ts +3 -1
  296. package/template/koa-rest-api/.buildkite/pipeline.yml +1 -1
  297. package/template/koa-rest-api/.nvmrc +1 -1
  298. package/template/koa-rest-api/Dockerfile +1 -1
  299. package/template/koa-rest-api/Dockerfile.dev-deps +1 -1
  300. package/template/koa-rest-api/package.json +20 -21
  301. package/template/koa-rest-api/src/api/jobs/postJob.test.ts +3 -7
  302. package/template/koa-rest-api/src/api/jobs/postJob.ts +2 -2
  303. package/template/koa-rest-api/src/framework/validation.test.ts +17 -15
  304. package/template/koa-rest-api/src/framework/validation.ts +66 -12
  305. package/template/koa-rest-api/src/testing/types.ts +5 -10
  306. package/template/koa-rest-api/src/types/jobs.ts +5 -10
  307. package/template/lambda-sqs-worker/.buildkite/pipeline.yml +4 -4
  308. package/template/lambda-sqs-worker/Dockerfile +1 -1
  309. package/template/lambda-sqs-worker/package.json +16 -20
  310. package/template/lambda-sqs-worker/src/app.ts +2 -2
  311. package/template/lambda-sqs-worker/src/framework/validation.test.ts +37 -17
  312. package/template/lambda-sqs-worker/src/framework/validation.ts +10 -2
  313. package/template/lambda-sqs-worker/src/services/jobScorer.ts +2 -2
  314. package/template/lambda-sqs-worker/src/testing/types.ts +5 -10
  315. package/template/lambda-sqs-worker/src/types/jobScorer.ts +9 -16
  316. package/template/lambda-sqs-worker/src/types/pipelineEvents.ts +13 -20
  317. package/template/lambda-sqs-worker/tsconfig.json +13 -0
  318. package/template/lambda-sqs-worker-cdk/.buildkite/pipeline.yml +4 -4
  319. package/template/lambda-sqs-worker-cdk/Dockerfile +1 -1
  320. package/template/lambda-sqs-worker-cdk/infra/__snapshots__/appStack.test.ts.snap +6 -0
  321. package/template/lambda-sqs-worker-cdk/infra/appStack.ts +3 -3
  322. package/template/lambda-sqs-worker-cdk/infra/index.ts +2 -2
  323. package/template/lambda-sqs-worker-cdk/package.json +14 -14
  324. package/template/lambda-sqs-worker-cdk/shared/context-types.ts +16 -25
  325. package/template/lambda-sqs-worker-cdk/tsconfig.json +13 -0
  326. package/template/oss-npm-package/.nvmrc +1 -1
  327. package/template/oss-npm-package/_package.json +1 -1
  328. package/template/private-npm-package/.nvmrc +1 -1
  329. package/template/private-npm-package/_package.json +1 -1
  330. package/jest/resolver.js +0 -24
@@ -1 +1,7 @@
1
- {"version":3,"file":"getConfig.js","sourceRoot":"","sources":["../../../src/cli/init/getConfig.ts"],"names":[],"mappings":"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"}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/cli/init/getConfig.ts"],
4
+ "sourcesContent": ["import path from 'path';\n\nimport chalk from 'chalk';\nimport fs from 'fs-extra';\n\nimport { copyFiles } from '../../utils/copy';\nimport { isErrorWithCode } from '../../utils/error';\nimport { log } from '../../utils/logging';\nimport { getRandomPort } from '../../utils/port';\nimport {\n TEMPLATE_CONFIG_FILENAME,\n TEMPLATE_DIR,\n TemplateConfig,\n} from '../../utils/template';\n\nimport { downloadGitHubTemplate } from './git';\nimport type { BaseFields } from './prompts';\nimport {\n BASE_PROMPT_PROPS,\n GIT_PATH_PROMPT,\n SHOULD_CONTINUE_PROMPT,\n TEMPLATE_PROMPT,\n} from './prompts';\nimport type { InitConfig } from './types';\nimport { InitConfigInput } from './types';\n\nimport { Form } from 'enquirer';\nimport type { FormChoice } from 'enquirer';\n\nexport const runForm = <T = Record<string, string>>(props: {\n choices: Readonly<FormChoice[]>;\n message: string;\n name: string;\n}) => {\n const { message, name } = props;\n\n const choices = props.choices.map((choice) => ({\n ...choice,\n validate: (value: string) => {\n if (value === '' || value === choice.initial) {\n return 'Form is not complete';\n }\n\n return choice.validate?.(value) ?? true;\n },\n }));\n\n const form = new Form<T>({\n choices,\n message,\n name,\n validate: async (values) => {\n const results = await Promise.all(\n choices.map((choice) => choice.validate(values[choice.name])),\n );\n\n return (\n results.find((result) => typeof result === 'string') ??\n results.every((result) => result === true)\n );\n },\n });\n\n return form.run();\n};\n\nconst confirmShouldContinue = async (choices: Readonly<FormChoice[]>) => {\n const fieldsList = choices.map((choice) => choice.message);\n\n log.newline();\n log.plain('This template uses the following information:');\n log.newline();\n fieldsList.forEach((message) => log.subtle(`- ${message}`));\n\n log.newline();\n const result = await SHOULD_CONTINUE_PROMPT.run();\n\n return result === 'yes';\n};\n\nconst createDirectory = async (dir: string) => {\n try {\n await fs.promises.mkdir(dir);\n } catch (err) {\n if (isErrorWithCode(err, 'EEXIST')) {\n log.err(`The directory '${dir}' already exists.`);\n process.exit(1);\n }\n\n throw err;\n }\n};\n\nconst cloneTemplate = async (templateName: string, destinationDir: string) => {\n if (templateName.startsWith('github:')) {\n const gitHubPath = templateName.slice('github:'.length);\n return downloadGitHubTemplate(gitHubPath, destinationDir);\n }\n\n const templateDir = path.join(TEMPLATE_DIR, templateName);\n\n await copyFiles({\n // assume built-in templates have no extraneous files\n include: () => true,\n sourceRoot: templateDir,\n destinationRoot: destinationDir,\n processors: [],\n // built-in templates have files like _package.json\n stripUnderscorePrefix: true,\n });\n};\n\nconst getTemplateName = async () => {\n const templateSelection = await TEMPLATE_PROMPT.run();\n\n if (templateSelection === 'github \u2192') {\n const gitHubPath = await GIT_PATH_PROMPT.run();\n return `github:${gitHubPath}`;\n }\n\n return templateSelection;\n};\n\nconst generatePlaceholders = (choices: FormChoice[]) =>\n Object.fromEntries(\n choices.map(({ name }) => [name, `<%- ${name} %>`] as const),\n );\n\nexport const getTemplateConfig = (dir: string): TemplateConfig => {\n const templateConfigPath = path.join(dir, TEMPLATE_CONFIG_FILENAME);\n\n try {\n /* eslint-disable-next-line @typescript-eslint/no-var-requires */\n const templateConfig = require(templateConfigPath) as unknown;\n\n return TemplateConfig.check(templateConfig);\n } catch (err) {\n if (isErrorWithCode(err, 'MODULE_NOT_FOUND')) {\n return {\n entryPoint: undefined,\n fields: [],\n type: undefined,\n };\n }\n\n throw err;\n }\n};\n\nconst baseToTemplateData = async ({ ownerName, repoName }: BaseFields) => {\n const [orgName, teamName] = ownerName.split('/');\n\n const port = String(await getRandomPort());\n\n return {\n orgName,\n ownerName,\n port,\n repoName,\n // Use standalone username in `teamName` contexts\n teamName: teamName ?? orgName,\n };\n};\n\nexport const configureFromPrompt = async (): Promise<InitConfig> => {\n const { ownerName, repoName } = await runForm(BASE_PROMPT_PROPS);\n log.plain(chalk.cyan(repoName), 'by', chalk.cyan(ownerName));\n\n const templateData = await baseToTemplateData({ ownerName, repoName });\n\n const destinationDir = repoName;\n\n await createDirectory(destinationDir);\n\n log.newline();\n const templateName = await getTemplateName();\n\n await cloneTemplate(templateName, destinationDir);\n\n const { entryPoint, fields, noSkip, type } = getTemplateConfig(\n path.join(process.cwd(), destinationDir),\n );\n\n if (fields.length === 0) {\n return {\n destinationDir,\n entryPoint,\n templateComplete: true,\n templateData,\n templateName,\n type,\n };\n }\n\n const shouldContinue = noSkip ? true : await confirmShouldContinue(fields);\n\n if (shouldContinue) {\n log.newline();\n const customAnswers = await runForm({\n choices: fields,\n message: chalk.bold(`Complete ${chalk.cyan(templateName)}:`),\n name: 'customAnswers',\n });\n\n return {\n destinationDir,\n entryPoint,\n templateComplete: true,\n templateData: { ...templateData, ...customAnswers },\n templateName,\n type,\n };\n }\n\n log.newline();\n log.warn(`Resume this later with ${chalk.bold('yarn skuba configure')}.`);\n\n const customAnswers = generatePlaceholders(fields);\n\n return {\n destinationDir,\n entryPoint,\n templateComplete: false,\n templateData: { ...templateData, ...customAnswers },\n templateName,\n type,\n };\n};\n\nconst configureFromPipe = async (): Promise<InitConfig> => {\n let text = '';\n\n await new Promise((resolve) =>\n process.stdin.on('data', (chunk) => (text += chunk)).once('end', resolve),\n );\n\n text = text.trim();\n\n if (text === '') {\n log.err('No data from stdin.');\n process.exit(1);\n }\n\n let value: unknown;\n\n try {\n value = JSON.parse(text) as unknown;\n } catch {\n log.err('Invalid JSON from stdin.');\n process.exit(1);\n }\n\n const result = InitConfigInput.validate(value);\n\n if (!result.success) {\n log.err('Invalid data from stdin:');\n log.err(result.message);\n process.exit(1);\n }\n\n const { destinationDir, templateComplete, templateName } = result.value;\n\n const templateData = {\n ...(await baseToTemplateData(result.value.templateData)),\n ...result.value.templateData,\n };\n\n await createDirectory(destinationDir);\n\n await cloneTemplate(templateName, destinationDir);\n\n const { entryPoint, fields, noSkip, type } = getTemplateConfig(\n path.join(process.cwd(), destinationDir),\n );\n\n if (!templateComplete) {\n if (noSkip) {\n log.err('Templating for', log.bold(templateName), 'cannot be skipped.');\n process.exit(1);\n }\n\n return {\n ...result.value,\n entryPoint,\n templateData: {\n ...templateData,\n ...generatePlaceholders(fields),\n },\n type,\n };\n }\n\n const required = fields.map(({ name }) => name);\n\n const provided = new Set(Object.keys(templateData));\n\n const missing = required.filter((name) => !provided.has(name));\n\n if (missing.length > 0) {\n log.err('This template uses the following information:');\n log.newline();\n missing.forEach((name) => log.err(`- ${name}`));\n process.exit(1);\n }\n\n return {\n ...result.value,\n entryPoint,\n templateData,\n type,\n };\n};\n\nexport const getConfig = () =>\n process.stdin.isTTY ? configureFromPrompt() : configureFromPipe();\n"],
5
+ "mappings": "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",
6
+ "names": ["fs", "path", "chalk", "customAnswers"]
7
+ }
@@ -1,70 +1,77 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
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 });
24
11
  };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
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;
27
19
  };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.downloadGitHubTemplate = exports.initialiseRepo = void 0;
30
- const path_1 = __importDefault(require("path"));
31
- const fs_extra_1 = __importDefault(require("fs-extra"));
32
- const isomorphic_git_1 = __importDefault(require("isomorphic-git"));
33
- const simple_git_1 = __importDefault(require("simple-git"));
34
- const Git = __importStar(require("../../api/git"));
35
- const logging_1 = require("../../utils/logging");
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
+ mod
23
+ ));
24
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
+ var git_exports = {};
26
+ __export(git_exports, {
27
+ downloadGitHubTemplate: () => downloadGitHubTemplate,
28
+ initialiseRepo: () => initialiseRepo
29
+ });
30
+ module.exports = __toCommonJS(git_exports);
31
+ var import_path = __toESM(require("path"));
32
+ var import_fs_extra = __toESM(require("fs-extra"));
33
+ var import_isomorphic_git = __toESM(require("isomorphic-git"));
34
+ var import_simple_git = __toESM(require("simple-git"));
35
+ var Git = __toESM(require("../../api/git"));
36
+ var import_logging = require("../../utils/logging");
36
37
  const initialiseRepo = async (dir, { orgName, repoName }) => {
37
- await isomorphic_git_1.default.init({
38
- // TODO: support main as an alternative.
39
- defaultBranch: 'master',
40
- dir,
41
- fs: fs_extra_1.default,
42
- });
43
- await Git.commit({
44
- dir,
45
- message: 'Initial commit',
46
- });
47
- await isomorphic_git_1.default.addRemote({
48
- dir,
49
- fs: fs_extra_1.default,
50
- remote: 'origin',
51
- url: `git@github.com:${orgName}/${repoName}.git`,
52
- });
38
+ await import_isomorphic_git.default.init({
39
+ defaultBranch: "master",
40
+ dir,
41
+ fs: import_fs_extra.default
42
+ });
43
+ await Git.commit({
44
+ dir,
45
+ message: "Initial commit"
46
+ });
47
+ await import_isomorphic_git.default.addRemote({
48
+ dir,
49
+ fs: import_fs_extra.default,
50
+ remote: "origin",
51
+ url: `git@github.com:${orgName}/${repoName}.git`
52
+ });
53
53
  };
54
- exports.initialiseRepo = initialiseRepo;
55
54
  const downloadGitHubTemplate = async (gitHubPath, destinationDir) => {
56
- logging_1.log.newline();
57
- logging_1.log.plain('Downloading', logging_1.log.bold(gitHubPath), 'from GitHub...');
58
- await (0, simple_git_1.default)().clone(`git@github.com:${gitHubPath}.git`, destinationDir, [
59
- '--depth=1',
60
- '--quiet',
61
- ]);
62
- await fs_extra_1.default.promises.rm(path_1.default.join(destinationDir, '.git'), {
63
- force: true,
64
- recursive: true,
65
- });
66
- logging_1.log.newline();
67
- logging_1.log.warn('You may need to run', logging_1.log.bold('yarn skuba configure'), 'once this is done.');
55
+ import_logging.log.newline();
56
+ import_logging.log.plain("Downloading", import_logging.log.bold(gitHubPath), "from GitHub...");
57
+ await (0, import_simple_git.default)().clone(`git@github.com:${gitHubPath}.git`, destinationDir, [
58
+ "--depth=1",
59
+ "--quiet"
60
+ ]);
61
+ await import_fs_extra.default.promises.rm(import_path.default.join(destinationDir, ".git"), {
62
+ force: true,
63
+ recursive: true
64
+ });
65
+ import_logging.log.newline();
66
+ import_logging.log.warn(
67
+ "You may need to run",
68
+ import_logging.log.bold("yarn skuba configure"),
69
+ "once this is done."
70
+ );
68
71
  };
69
- exports.downloadGitHubTemplate = downloadGitHubTemplate;
70
- //# sourceMappingURL=git.js.map
72
+ // Annotate the CommonJS export names for ESM import in node:
73
+ 0 && (module.exports = {
74
+ downloadGitHubTemplate,
75
+ initialiseRepo
76
+ });
77
+ //# sourceMappingURL=git.js.map
@@ -1 +1,7 @@
1
- {"version":3,"file":"git.js","sourceRoot":"","sources":["../../../src/cli/init/git.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAwB;AAExB,wDAA0B;AAC1B,oEAAiC;AACjC,4DAAmC;AAEnC,mDAAqC;AACrC,iDAA0C;AAOnC,MAAM,cAAc,GAAG,KAAK,EACjC,GAAW,EACX,EAAE,OAAO,EAAE,QAAQ,EAAiB,EACpC,EAAE;IACF,MAAM,wBAAG,CAAC,IAAI,CAAC;QACb,wCAAwC;QACxC,aAAa,EAAE,QAAQ;QACvB,GAAG;QACH,EAAE,EAAF,kBAAE;KACH,CAAC,CAAC;IAEH,MAAM,GAAG,CAAC,MAAM,CAAC;QACf,GAAG;QACH,OAAO,EAAE,gBAAgB;KAC1B,CAAC,CAAC;IAEH,MAAM,wBAAG,CAAC,SAAS,CAAC;QAClB,GAAG;QACH,EAAE,EAAF,kBAAE;QACF,MAAM,EAAE,QAAQ;QAChB,GAAG,EAAE,kBAAkB,OAAO,IAAI,QAAQ,MAAM;KACjD,CAAC,CAAC;AACL,CAAC,CAAC;AAtBW,QAAA,cAAc,kBAsBzB;AAEK,MAAM,sBAAsB,GAAG,KAAK,EACzC,UAAkB,EAClB,cAAsB,EACtB,EAAE;IACF,aAAG,CAAC,OAAO,EAAE,CAAC;IACd,aAAG,CAAC,KAAK,CAAC,aAAa,EAAE,aAAG,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAEjE,MAAM,IAAA,oBAAS,GAAE,CAAC,KAAK,CAAC,kBAAkB,UAAU,MAAM,EAAE,cAAc,EAAE;QAC1E,WAAW;QACX,SAAS;KACV,CAAC,CAAC;IAEH,MAAM,kBAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,cAAI,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,EAAE;QACtD,KAAK,EAAE,IAAI;QACX,SAAS,EAAE,IAAI;KAChB,CAAC,CAAC;IAEH,aAAG,CAAC,OAAO,EAAE,CAAC;IACd,aAAG,CAAC,IAAI,CACN,qBAAqB,EACrB,aAAG,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAChC,oBAAoB,CACrB,CAAC;AACJ,CAAC,CAAC;AAvBW,QAAA,sBAAsB,0BAuBjC"}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/cli/init/git.ts"],
4
+ "sourcesContent": ["import path from 'path';\n\nimport fs from 'fs-extra';\nimport git from 'isomorphic-git';\nimport simpleGit from 'simple-git';\n\nimport * as Git from '../../api/git';\nimport { log } from '../../utils/logging';\n\ninterface GitHubProject {\n orgName: string;\n repoName: string;\n}\n\nexport const initialiseRepo = async (\n dir: string,\n { orgName, repoName }: GitHubProject,\n) => {\n await git.init({\n // TODO: support main as an alternative.\n defaultBranch: 'master',\n dir,\n fs,\n });\n\n await Git.commit({\n dir,\n message: 'Initial commit',\n });\n\n await git.addRemote({\n dir,\n fs,\n remote: 'origin',\n url: `git@github.com:${orgName}/${repoName}.git`,\n });\n};\n\nexport const downloadGitHubTemplate = async (\n gitHubPath: string,\n destinationDir: string,\n) => {\n log.newline();\n log.plain('Downloading', log.bold(gitHubPath), 'from GitHub...');\n\n await simpleGit().clone(`git@github.com:${gitHubPath}.git`, destinationDir, [\n '--depth=1',\n '--quiet',\n ]);\n\n await fs.promises.rm(path.join(destinationDir, '.git'), {\n force: true,\n recursive: true,\n });\n\n log.newline();\n log.warn(\n 'You may need to run',\n log.bold('yarn skuba configure'),\n 'once this is done.',\n );\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAiB;AAEjB,sBAAe;AACf,4BAAgB;AAChB,wBAAsB;AAEtB,UAAqB;AACrB,qBAAoB;AAOb,MAAM,iBAAiB,OAC5B,KACA,EAAE,SAAS,SAAS,MACjB;AACH,QAAM,sBAAAA,QAAI,KAAK;AAAA,IAEb,eAAe;AAAA,IACf;AAAA,IACA,oBAAAC;AAAA,EACF,CAAC;AAED,QAAM,IAAI,OAAO;AAAA,IACf;AAAA,IACA,SAAS;AAAA,EACX,CAAC;AAED,QAAM,sBAAAD,QAAI,UAAU;AAAA,IAClB;AAAA,IACA,oBAAAC;AAAA,IACA,QAAQ;AAAA,IACR,KAAK,kBAAkB,WAAW;AAAA,EACpC,CAAC;AACH;AAEO,MAAM,yBAAyB,OACpC,YACA,mBACG;AACH,qBAAI,QAAQ;AACZ,qBAAI,MAAM,eAAe,mBAAI,KAAK,UAAU,GAAG,gBAAgB;AAE/D,YAAM,kBAAAC,SAAU,EAAE,MAAM,kBAAkB,kBAAkB,gBAAgB;AAAA,IAC1E;AAAA,IACA;AAAA,EACF,CAAC;AAED,QAAM,gBAAAD,QAAG,SAAS,GAAG,YAAAE,QAAK,KAAK,gBAAgB,MAAM,GAAG;AAAA,IACtD,OAAO;AAAA,IACP,WAAW;AAAA,EACb,CAAC;AAED,qBAAI,QAAQ;AACZ,qBAAI;AAAA,IACF;AAAA,IACA,mBAAI,KAAK,sBAAsB;AAAA,IAC/B;AAAA,EACF;AACF;",
6
+ "names": ["git", "fs", "simpleGit", "path"]
7
+ }
@@ -1,105 +1,138 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
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 });
4
11
  };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.init = void 0;
7
- const path_1 = __importDefault(require("path"));
8
- const git_1 = require("../../api/git");
9
- const copy_1 = require("../../utils/copy");
10
- const dir_1 = require("../../utils/dir");
11
- const exec_1 = require("../../utils/exec");
12
- const logging_1 = require("../../utils/logging");
13
- const logo_1 = require("../../utils/logo");
14
- const template_1 = require("../../utils/template");
15
- const getConfig_1 = require("./getConfig");
16
- const git_2 = require("./git");
17
- const writePackageJson_1 = require("./writePackageJson");
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
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
+ mod
23
+ ));
24
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
25
+ var init_exports = {};
26
+ __export(init_exports, {
27
+ init: () => init
28
+ });
29
+ module.exports = __toCommonJS(init_exports);
30
+ var import_path = __toESM(require("path"));
31
+ var import_git = require("../../api/git");
32
+ var import_copy = require("../../utils/copy");
33
+ var import_dir = require("../../utils/dir");
34
+ var import_exec = require("../../utils/exec");
35
+ var import_logging = require("../../utils/logging");
36
+ var import_logo = require("../../utils/logo");
37
+ var import_template = require("../../utils/template");
38
+ var import_getConfig = require("./getConfig");
39
+ var import_git2 = require("./git");
40
+ var import_writePackageJson = require("./writePackageJson");
18
41
  const init = async () => {
19
- const skubaVersionInfo = await (0, logo_1.showLogoAndVersionInfo)();
20
- await (0, exec_1.ensureCommands)('yarn');
21
- const { destinationDir, entryPoint, templateComplete, templateData, templateName, type, } = await (0, getConfig_1.getConfig)();
22
- const include = await (0, dir_1.createInclusionFilter)([
23
- path_1.default.join(destinationDir, '.gitignore'),
24
- path_1.default.join(template_1.BASE_TEMPLATE_DIR, '_.gitignore'),
25
- ]);
26
- const processors = [(0, copy_1.createEjsRenderer)(templateData)];
27
- await (0, copy_1.copyFiles)({
28
- sourceRoot: template_1.BASE_TEMPLATE_DIR,
29
- destinationRoot: destinationDir,
30
- include,
31
- // prefer template-specific files
32
- overwrite: false,
33
- processors,
34
- // base template has files like _.eslintrc.js
35
- stripUnderscorePrefix: true,
36
- });
37
- await (0, copy_1.copyFiles)({
38
- sourceRoot: destinationDir,
39
- destinationRoot: destinationDir,
40
- include,
41
- processors,
42
- });
43
- await Promise.all([
44
- templateComplete
45
- ? (0, template_1.ensureTemplateConfigDeletion)(destinationDir)
46
- : Promise.resolve(),
47
- (0, writePackageJson_1.writePackageJson)({
48
- cwd: destinationDir,
49
- entryPoint,
50
- template: templateName,
51
- type,
52
- version: skubaVersionInfo.local,
53
- }),
54
- ]);
55
- const exec = (0, exec_1.createExec)({
56
- cwd: destinationDir,
57
- stdio: 'pipe',
58
- streamStdio: 'yarn',
59
- });
60
- logging_1.log.newline();
61
- await (0, git_2.initialiseRepo)(destinationDir, templateData);
62
- const skubaSlug = `skuba@${skubaVersionInfo.local}`;
63
- let depsInstalled = false;
64
- try {
65
- await exec('yarn', 'add', '--dev', skubaSlug);
66
- depsInstalled = true;
67
- await exec('npx', 'yarn-deduplicate', '--strategy=highest');
68
- }
69
- catch { }
70
- await (0, git_1.commitAllChanges)({
71
- dir: destinationDir,
72
- message: `Clone ${templateName}`,
73
- });
74
- const logGitHubRepoCreation = () => {
75
- logging_1.log.plain('Next, create an empty', logging_1.log.bold(`${templateData.orgName}/${templateData.repoName}`), 'repository:');
76
- logging_1.log.ok('https://github.com/new');
77
- };
78
- if (!depsInstalled) {
79
- logging_1.log.newline();
80
- logging_1.log.warn(logging_1.log.bold('✗ Failed to install dependencies.'));
81
- logging_1.log.newline();
82
- logGitHubRepoCreation();
83
- logging_1.log.newline();
84
- logging_1.log.plain('Then, resume initialisation:');
85
- logging_1.log.ok('cd', destinationDir);
86
- logging_1.log.ok('yarn add --dev', skubaSlug);
87
- logging_1.log.ok('git add --all');
88
- logging_1.log.ok('git commit --message', `'Pin ${skubaSlug}'`);
89
- logging_1.log.ok('git push --set-upstream origin master');
90
- logging_1.log.newline();
91
- process.exitCode = 1;
92
- return;
93
- }
94
- logging_1.log.newline();
95
- logging_1.log.ok(logging_1.log.bold('✔ Project initialised!'));
96
- logging_1.log.newline();
42
+ const skubaVersionInfo = await (0, import_logo.showLogoAndVersionInfo)();
43
+ await (0, import_exec.ensureCommands)("yarn");
44
+ const {
45
+ destinationDir,
46
+ entryPoint,
47
+ templateComplete,
48
+ templateData,
49
+ templateName,
50
+ type
51
+ } = await (0, import_getConfig.getConfig)();
52
+ const include = await (0, import_dir.createInclusionFilter)([
53
+ import_path.default.join(destinationDir, ".gitignore"),
54
+ import_path.default.join(import_template.BASE_TEMPLATE_DIR, "_.gitignore")
55
+ ]);
56
+ const processors = [(0, import_copy.createEjsRenderer)(templateData)];
57
+ await (0, import_copy.copyFiles)({
58
+ sourceRoot: import_template.BASE_TEMPLATE_DIR,
59
+ destinationRoot: destinationDir,
60
+ include,
61
+ overwrite: false,
62
+ processors,
63
+ stripUnderscorePrefix: true
64
+ });
65
+ await (0, import_copy.copyFiles)({
66
+ sourceRoot: destinationDir,
67
+ destinationRoot: destinationDir,
68
+ include,
69
+ processors
70
+ });
71
+ await Promise.all([
72
+ templateComplete ? (0, import_template.ensureTemplateConfigDeletion)(destinationDir) : Promise.resolve(),
73
+ (0, import_writePackageJson.writePackageJson)({
74
+ cwd: destinationDir,
75
+ entryPoint,
76
+ template: templateName,
77
+ type,
78
+ version: skubaVersionInfo.local
79
+ })
80
+ ]);
81
+ const exec = (0, import_exec.createExec)({
82
+ cwd: destinationDir,
83
+ stdio: "pipe",
84
+ streamStdio: "yarn"
85
+ });
86
+ import_logging.log.newline();
87
+ await (0, import_git2.initialiseRepo)(destinationDir, templateData);
88
+ const skubaSlug = `skuba@${skubaVersionInfo.local}`;
89
+ let depsInstalled = false;
90
+ try {
91
+ await exec("yarn", "add", "--dev", skubaSlug);
92
+ depsInstalled = true;
93
+ await exec("npx", "yarn-deduplicate", "--strategy=highest");
94
+ } catch {
95
+ }
96
+ await (0, import_git.commitAllChanges)({
97
+ dir: destinationDir,
98
+ message: `Clone ${templateName}`
99
+ });
100
+ const logGitHubRepoCreation = () => {
101
+ import_logging.log.plain(
102
+ "Next, create an empty",
103
+ import_logging.log.bold(`${templateData.orgName}/${templateData.repoName}`),
104
+ "repository:"
105
+ );
106
+ import_logging.log.ok("https://github.com/new");
107
+ };
108
+ if (!depsInstalled) {
109
+ import_logging.log.newline();
110
+ import_logging.log.warn(import_logging.log.bold("\u2717 Failed to install dependencies."));
111
+ import_logging.log.newline();
97
112
  logGitHubRepoCreation();
98
- logging_1.log.newline();
99
- logging_1.log.plain('Then, push your local changes:');
100
- logging_1.log.ok('cd', destinationDir);
101
- logging_1.log.ok('git push --set-upstream origin master');
102
- logging_1.log.newline();
113
+ import_logging.log.newline();
114
+ import_logging.log.plain("Then, resume initialisation:");
115
+ import_logging.log.ok("cd", destinationDir);
116
+ import_logging.log.ok("yarn add --dev", skubaSlug);
117
+ import_logging.log.ok("git add --all");
118
+ import_logging.log.ok("git commit --message", `'Pin ${skubaSlug}'`);
119
+ import_logging.log.ok("git push --set-upstream origin master");
120
+ import_logging.log.newline();
121
+ process.exitCode = 1;
122
+ return;
123
+ }
124
+ import_logging.log.newline();
125
+ import_logging.log.ok(import_logging.log.bold("\u2714 Project initialised!"));
126
+ import_logging.log.newline();
127
+ logGitHubRepoCreation();
128
+ import_logging.log.newline();
129
+ import_logging.log.plain("Then, push your local changes:");
130
+ import_logging.log.ok("cd", destinationDir);
131
+ import_logging.log.ok("git push --set-upstream origin master");
132
+ import_logging.log.newline();
103
133
  };
104
- exports.init = init;
105
- //# sourceMappingURL=index.js.map
134
+ // Annotate the CommonJS export names for ESM import in node:
135
+ 0 && (module.exports = {
136
+ init
137
+ });
138
+ //# sourceMappingURL=index.js.map
@@ -1 +1,7 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/init/index.ts"],"names":[],"mappings":"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"}
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/cli/init/index.ts"],
4
+ "sourcesContent": ["import path from 'path';\n\nimport { commitAllChanges } from '../../api/git';\nimport { copyFiles, createEjsRenderer } from '../../utils/copy';\nimport { createInclusionFilter } from '../../utils/dir';\nimport { createExec, ensureCommands } from '../../utils/exec';\nimport { log } from '../../utils/logging';\nimport { showLogoAndVersionInfo } from '../../utils/logo';\nimport {\n BASE_TEMPLATE_DIR,\n ensureTemplateConfigDeletion,\n} from '../../utils/template';\n\nimport { getConfig } from './getConfig';\nimport { initialiseRepo } from './git';\nimport { writePackageJson } from './writePackageJson';\n\nexport const init = async () => {\n const skubaVersionInfo = await showLogoAndVersionInfo();\n\n await ensureCommands('yarn');\n\n const {\n destinationDir,\n entryPoint,\n templateComplete,\n templateData,\n templateName,\n type,\n } = await getConfig();\n\n const include = await createInclusionFilter([\n path.join(destinationDir, '.gitignore'),\n path.join(BASE_TEMPLATE_DIR, '_.gitignore'),\n ]);\n\n const processors = [createEjsRenderer(templateData)];\n\n await copyFiles({\n sourceRoot: BASE_TEMPLATE_DIR,\n destinationRoot: destinationDir,\n include,\n // prefer template-specific files\n overwrite: false,\n processors,\n // base template has files like _.eslintrc.js\n stripUnderscorePrefix: true,\n });\n\n await copyFiles({\n sourceRoot: destinationDir,\n destinationRoot: destinationDir,\n include,\n processors,\n });\n\n await Promise.all([\n templateComplete\n ? ensureTemplateConfigDeletion(destinationDir)\n : Promise.resolve(),\n\n writePackageJson({\n cwd: destinationDir,\n entryPoint,\n template: templateName,\n type,\n version: skubaVersionInfo.local,\n }),\n ]);\n\n const exec = createExec({\n cwd: destinationDir,\n stdio: 'pipe',\n streamStdio: 'yarn',\n });\n\n log.newline();\n await initialiseRepo(destinationDir, templateData);\n\n const skubaSlug = `skuba@${skubaVersionInfo.local}`;\n\n let depsInstalled = false;\n try {\n await exec('yarn', 'add', '--dev', skubaSlug);\n depsInstalled = true;\n await exec('npx', 'yarn-deduplicate', '--strategy=highest');\n } catch {}\n\n await commitAllChanges({\n dir: destinationDir,\n message: `Clone ${templateName}`,\n });\n\n const logGitHubRepoCreation = () => {\n log.plain(\n 'Next, create an empty',\n log.bold(`${templateData.orgName}/${templateData.repoName}`),\n 'repository:',\n );\n log.ok('https://github.com/new');\n };\n\n if (!depsInstalled) {\n log.newline();\n log.warn(log.bold('\u2717 Failed to install dependencies.'));\n\n log.newline();\n logGitHubRepoCreation();\n\n log.newline();\n log.plain('Then, resume initialisation:');\n log.ok('cd', destinationDir);\n log.ok('yarn add --dev', skubaSlug);\n log.ok('git add --all');\n log.ok('git commit --message', `'Pin ${skubaSlug}'`);\n log.ok('git push --set-upstream origin master');\n\n log.newline();\n process.exitCode = 1;\n return;\n }\n\n log.newline();\n log.ok(log.bold('\u2714 Project initialised!'));\n\n log.newline();\n logGitHubRepoCreation();\n\n log.newline();\n log.plain('Then, push your local changes:');\n log.ok('cd', destinationDir);\n log.ok('git push --set-upstream origin master');\n\n log.newline();\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAiB;AAEjB,iBAAiC;AACjC,kBAA6C;AAC7C,iBAAsC;AACtC,kBAA2C;AAC3C,qBAAoB;AACpB,kBAAuC;AACvC,sBAGO;AAEP,uBAA0B;AAC1B,IAAAA,cAA+B;AAC/B,8BAAiC;AAE1B,MAAM,OAAO,YAAY;AAC9B,QAAM,mBAAmB,UAAM,oCAAuB;AAEtD,YAAM,4BAAe,MAAM;AAE3B,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI,UAAM,4BAAU;AAEpB,QAAM,UAAU,UAAM,kCAAsB;AAAA,IAC1C,YAAAC,QAAK,KAAK,gBAAgB,YAAY;AAAA,IACtC,YAAAA,QAAK,KAAK,mCAAmB,aAAa;AAAA,EAC5C,CAAC;AAED,QAAM,aAAa,KAAC,+BAAkB,YAAY,CAAC;AAEnD,YAAM,uBAAU;AAAA,IACd,YAAY;AAAA,IACZ,iBAAiB;AAAA,IACjB;AAAA,IAEA,WAAW;AAAA,IACX;AAAA,IAEA,uBAAuB;AAAA,EACzB,CAAC;AAED,YAAM,uBAAU;AAAA,IACd,YAAY;AAAA,IACZ,iBAAiB;AAAA,IACjB;AAAA,IACA;AAAA,EACF,CAAC;AAED,QAAM,QAAQ,IAAI;AAAA,IAChB,uBACI,8CAA6B,cAAc,IAC3C,QAAQ,QAAQ;AAAA,QAEpB,0CAAiB;AAAA,MACf,KAAK;AAAA,MACL;AAAA,MACA,UAAU;AAAA,MACV;AAAA,MACA,SAAS,iBAAiB;AAAA,IAC5B,CAAC;AAAA,EACH,CAAC;AAED,QAAM,WAAO,wBAAW;AAAA,IACtB,KAAK;AAAA,IACL,OAAO;AAAA,IACP,aAAa;AAAA,EACf,CAAC;AAED,qBAAI,QAAQ;AACZ,YAAM,4BAAe,gBAAgB,YAAY;AAEjD,QAAM,YAAY,SAAS,iBAAiB;AAE5C,MAAI,gBAAgB;AACpB,MAAI;AACF,UAAM,KAAK,QAAQ,OAAO,SAAS,SAAS;AAC5C,oBAAgB;AAChB,UAAM,KAAK,OAAO,oBAAoB,oBAAoB;AAAA,EAC5D,QAAE;AAAA,EAAO;AAET,YAAM,6BAAiB;AAAA,IACrB,KAAK;AAAA,IACL,SAAS,SAAS;AAAA,EACpB,CAAC;AAED,QAAM,wBAAwB,MAAM;AAClC,uBAAI;AAAA,MACF;AAAA,MACA,mBAAI,KAAK,GAAG,aAAa,WAAW,aAAa,UAAU;AAAA,MAC3D;AAAA,IACF;AACA,uBAAI,GAAG,wBAAwB;AAAA,EACjC;AAEA,MAAI,CAAC,eAAe;AAClB,uBAAI,QAAQ;AACZ,uBAAI,KAAK,mBAAI,KAAK,wCAAmC,CAAC;AAEtD,uBAAI,QAAQ;AACZ,0BAAsB;AAEtB,uBAAI,QAAQ;AACZ,uBAAI,MAAM,8BAA8B;AACxC,uBAAI,GAAG,MAAM,cAAc;AAC3B,uBAAI,GAAG,kBAAkB,SAAS;AAClC,uBAAI,GAAG,eAAe;AACtB,uBAAI,GAAG,wBAAwB,QAAQ,YAAY;AACnD,uBAAI,GAAG,uCAAuC;AAE9C,uBAAI,QAAQ;AACZ,YAAQ,WAAW;AACnB;AAAA,EACF;AAEA,qBAAI,QAAQ;AACZ,qBAAI,GAAG,mBAAI,KAAK,6BAAwB,CAAC;AAEzC,qBAAI,QAAQ;AACZ,wBAAsB;AAEtB,qBAAI,QAAQ;AACZ,qBAAI,MAAM,gCAAgC;AAC1C,qBAAI,GAAG,MAAM,cAAc;AAC3B,qBAAI,GAAG,uCAAuC;AAE9C,qBAAI,QAAQ;AACd;",
6
+ "names": ["import_git", "path"]
7
+ }
@@ -1,61 +1,91 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TEMPLATE_PROMPT = exports.GIT_PATH_PROMPT = exports.SHOULD_CONTINUE_PROMPT = exports.BASE_PROMPT_PROPS = void 0;
4
- const enquirer_1 = require("enquirer");
5
- const fs_extra_1 = require("fs-extra");
6
- const template_1 = require("../../utils/template");
7
- const validation_1 = require("./validation");
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 prompts_exports = {};
20
+ __export(prompts_exports, {
21
+ BASE_PROMPT_PROPS: () => BASE_PROMPT_PROPS,
22
+ GIT_PATH_PROMPT: () => GIT_PATH_PROMPT,
23
+ SHOULD_CONTINUE_PROMPT: () => SHOULD_CONTINUE_PROMPT,
24
+ TEMPLATE_PROMPT: () => TEMPLATE_PROMPT
25
+ });
26
+ module.exports = __toCommonJS(prompts_exports);
27
+ var import_fs_extra = require("fs-extra");
28
+ var import_template = require("../../utils/template");
29
+ var import_validation = require("./validation");
30
+ var import_enquirer = require("enquirer");
8
31
  const BASE_CHOICES = [
9
- {
10
- name: 'ownerName',
11
- message: 'Owner',
12
- initial: 'SEEK-Jobs/my-team',
13
- validate: (value) => {
14
- if (typeof value !== 'string') {
15
- return 'required';
16
- }
17
- const [org, team] = value.split('/');
18
- if (!(0, validation_1.isGitHubOrg)(org)) {
19
- return 'fails GitHub validation';
20
- }
21
- return (team === undefined || (0, validation_1.isGitHubTeam)(team) || 'fails GitHub validation');
22
- },
23
- },
24
- {
25
- name: 'repoName',
26
- message: 'Repo',
27
- initial: 'my-repo',
28
- validate: async (value) => {
29
- if (typeof value !== 'string') {
30
- return 'required';
31
- }
32
- if (!(0, validation_1.isGitHubRepo)(value)) {
33
- return 'fails GitHub validation';
34
- }
35
- const exists = await (0, fs_extra_1.pathExists)(value);
36
- return !exists || `'${value}' is an existing directory`;
37
- },
38
- },
32
+ {
33
+ name: "ownerName",
34
+ message: "Owner",
35
+ initial: "SEEK-Jobs/my-team",
36
+ validate: (value) => {
37
+ if (typeof value !== "string") {
38
+ return "required";
39
+ }
40
+ const [org, team] = value.split("/");
41
+ if (!(0, import_validation.isGitHubOrg)(org)) {
42
+ return "fails GitHub validation";
43
+ }
44
+ return team === void 0 || (0, import_validation.isGitHubTeam)(team) || "fails GitHub validation";
45
+ }
46
+ },
47
+ {
48
+ name: "repoName",
49
+ message: "Repo",
50
+ initial: "my-repo",
51
+ validate: async (value) => {
52
+ if (typeof value !== "string") {
53
+ return "required";
54
+ }
55
+ if (!(0, import_validation.isGitHubRepo)(value)) {
56
+ return "fails GitHub validation";
57
+ }
58
+ const exists = await (0, import_fs_extra.pathExists)(value);
59
+ return !exists || `'${value}' is an existing directory`;
60
+ }
61
+ }
39
62
  ];
40
- exports.BASE_PROMPT_PROPS = {
41
- choices: BASE_CHOICES,
42
- message: 'For starters, some GitHub details:',
43
- name: 'baseAnswers',
63
+ const BASE_PROMPT_PROPS = {
64
+ choices: BASE_CHOICES,
65
+ message: "For starters, some GitHub details:",
66
+ name: "baseAnswers"
44
67
  };
45
- exports.SHOULD_CONTINUE_PROMPT = new enquirer_1.Select({
46
- choices: ['yes', 'no'],
47
- message: 'Fill this in now?',
48
- name: 'shouldContinue',
68
+ const SHOULD_CONTINUE_PROMPT = new import_enquirer.Select({
69
+ choices: ["yes", "no"],
70
+ message: "Fill this in now?",
71
+ name: "shouldContinue"
72
+ });
73
+ const GIT_PATH_PROMPT = new import_enquirer.Input({
74
+ message: "Git path",
75
+ name: "gitPath",
76
+ initial: "seek-oss/skuba",
77
+ validate: (value) => /[^/]+\/[^/]+/.test(value) || "Path is not valid"
49
78
  });
50
- exports.GIT_PATH_PROMPT = new enquirer_1.Input({
51
- message: 'Git path',
52
- name: 'gitPath',
53
- initial: 'seek-oss/skuba',
54
- validate: (value) => /[^/]+\/[^/]+/.test(value) || 'Path is not valid',
79
+ const TEMPLATE_PROMPT = new import_enquirer.Select({
80
+ choices: import_template.TEMPLATE_NAMES_WITH_BYO,
81
+ message: "Select a template:",
82
+ name: "templateName"
55
83
  });
56
- exports.TEMPLATE_PROMPT = new enquirer_1.Select({
57
- choices: template_1.TEMPLATE_NAMES_WITH_BYO,
58
- message: 'Select a template:',
59
- name: 'templateName',
84
+ // Annotate the CommonJS export names for ESM import in node:
85
+ 0 && (module.exports = {
86
+ BASE_PROMPT_PROPS,
87
+ GIT_PATH_PROMPT,
88
+ SHOULD_CONTINUE_PROMPT,
89
+ TEMPLATE_PROMPT
60
90
  });
61
- //# sourceMappingURL=prompts.js.map
91
+ //# sourceMappingURL=prompts.js.map