create-typescript-app 2.0.0-beta.7 → 2.0.0-beta.9

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 (626) hide show
  1. package/README.md +59 -55
  2. package/bin/index.js +14 -2
  3. package/lib/{next/base.d.ts → base.d.ts} +24 -4
  4. package/lib/{next/base.js → base.js} +19 -22
  5. package/lib/base.js.map +1 -0
  6. package/lib/{next/blocks → blocks}/blockAllContributors.d.ts +1 -1
  7. package/lib/blocks/blockAllContributors.js +139 -0
  8. package/lib/blocks/blockAllContributors.js.map +1 -0
  9. package/lib/{next/blocks → blocks}/blockAreTheTypesWrong.d.ts +1 -1
  10. package/lib/blocks/blockAreTheTypesWrong.js.map +1 -0
  11. package/lib/{next/blocks → blocks}/blockCSpell.d.ts +1 -1
  12. package/lib/{next/blocks → blocks}/blockCSpell.js +1 -1
  13. package/lib/blocks/blockCSpell.js.map +1 -0
  14. package/lib/blocks/blockCodecov.d.ts +52 -0
  15. package/lib/blocks/blockCodecov.js +50 -0
  16. package/lib/blocks/blockCodecov.js.map +1 -0
  17. package/lib/{next/blocks → blocks}/blockContributingDocs.d.ts +1 -1
  18. package/lib/{next/blocks → blocks}/blockContributingDocs.js +2 -1
  19. package/lib/blocks/blockContributingDocs.js.map +1 -0
  20. package/lib/{next/blocks → blocks}/blockContributorCovenant.d.ts +1 -1
  21. package/lib/{next/blocks → blocks}/blockContributorCovenant.js +2 -1
  22. package/lib/blocks/blockContributorCovenant.js.map +1 -0
  23. package/lib/{next/blocks → blocks}/blockDevelopmentDocs.d.ts +3 -3
  24. package/lib/{next/blocks → blocks}/blockDevelopmentDocs.js +3 -2
  25. package/lib/blocks/blockDevelopmentDocs.js.map +1 -0
  26. package/lib/{next/blocks → blocks}/blockESLint.d.ts +8 -7
  27. package/lib/{next/blocks → blocks}/blockESLint.js +14 -5
  28. package/lib/blocks/blockESLint.js.map +1 -0
  29. package/lib/{next/blocks → blocks}/blockESLintComments.d.ts +1 -1
  30. package/lib/blocks/blockESLintComments.js.map +1 -0
  31. package/lib/{next/blocks → blocks}/blockESLintJSDoc.d.ts +1 -1
  32. package/lib/blocks/blockESLintJSDoc.js.map +1 -0
  33. package/lib/{next/blocks → blocks}/blockESLintJSONC.d.ts +1 -1
  34. package/lib/blocks/blockESLintJSONC.js.map +1 -0
  35. package/lib/{next/blocks → blocks}/blockESLintMarkdown.d.ts +1 -1
  36. package/lib/blocks/blockESLintMarkdown.js.map +1 -0
  37. package/lib/{next/blocks → blocks}/blockESLintMoreStyling.d.ts +1 -1
  38. package/lib/blocks/blockESLintMoreStyling.js.map +1 -0
  39. package/lib/{next/blocks → blocks}/blockESLintNode.d.ts +1 -1
  40. package/lib/{next/blocks → blocks}/blockESLintNode.js +7 -5
  41. package/lib/blocks/blockESLintNode.js.map +1 -0
  42. package/lib/{next/blocks → blocks}/blockESLintPackageJson.d.ts +1 -1
  43. package/lib/blocks/blockESLintPackageJson.js.map +1 -0
  44. package/lib/{next/blocks → blocks}/blockESLintPerfectionist.d.ts +1 -1
  45. package/lib/blocks/blockESLintPerfectionist.js.map +1 -0
  46. package/lib/{next/blocks → blocks}/blockESLintRegexp.d.ts +1 -1
  47. package/lib/blocks/blockESLintRegexp.js.map +1 -0
  48. package/lib/{next/blocks → blocks}/blockESLintYML.d.ts +1 -1
  49. package/lib/blocks/blockESLintYML.js.map +1 -0
  50. package/lib/{next/blocks → blocks}/blockExampleFiles.d.ts +1 -1
  51. package/lib/blocks/blockExampleFiles.js.map +1 -0
  52. package/lib/{next/blocks → blocks}/blockFunding.d.ts +1 -1
  53. package/lib/{next/blocks → blocks}/blockFunding.js +1 -1
  54. package/lib/blocks/blockFunding.js.map +1 -0
  55. package/lib/{next/blocks → blocks}/blockGitHubActionsCI.d.ts +29 -3
  56. package/lib/{next/blocks → blocks}/blockGitHubActionsCI.js +21 -17
  57. package/lib/blocks/blockGitHubActionsCI.js.map +1 -0
  58. package/lib/{next/blocks → blocks}/blockGitHubApps.d.ts +1 -1
  59. package/lib/blocks/blockGitHubApps.js.map +1 -0
  60. package/lib/{next/blocks → blocks}/blockGitHubIssueTemplates.d.ts +1 -1
  61. package/lib/{next/blocks → blocks}/blockGitHubIssueTemplates.js +1 -1
  62. package/lib/blocks/blockGitHubIssueTemplates.js.map +1 -0
  63. package/lib/{next/blocks → blocks}/blockGitHubPRTemplate.d.ts +1 -1
  64. package/lib/blocks/blockGitHubPRTemplate.js.map +1 -0
  65. package/lib/{next/blocks → blocks}/blockGitignore.d.ts +1 -1
  66. package/lib/{next/blocks → blocks}/blockGitignore.js +1 -1
  67. package/lib/blocks/blockGitignore.js.map +1 -0
  68. package/lib/blocks/blockKnip.d.ts +52 -0
  69. package/lib/{next/blocks → blocks}/blockKnip.js +15 -5
  70. package/lib/blocks/blockKnip.js.map +1 -0
  71. package/lib/{next/blocks → blocks}/blockMITLicense.d.ts +1 -1
  72. package/lib/blocks/blockMITLicense.js.map +1 -0
  73. package/lib/{next/blocks → blocks}/blockMarkdownlint.d.ts +1 -1
  74. package/lib/{next/blocks → blocks}/blockMarkdownlint.js +10 -7
  75. package/lib/blocks/blockMarkdownlint.js.map +1 -0
  76. package/lib/{next/blocks → blocks}/blockNvmrc.d.ts +1 -1
  77. package/lib/blocks/blockNvmrc.js.map +1 -0
  78. package/lib/{next/blocks → blocks}/blockPRCompliance.d.ts +1 -1
  79. package/lib/{next/blocks → blocks}/blockPRCompliance.js +1 -1
  80. package/lib/blocks/blockPRCompliance.js.map +1 -0
  81. package/lib/{next/blocks → blocks}/blockPackageJson.d.ts +2 -2
  82. package/lib/{next/blocks → blocks}/blockPackageJson.js +7 -4
  83. package/lib/blocks/blockPackageJson.js.map +1 -0
  84. package/lib/{next/blocks → blocks}/blockPnpmDedupe.d.ts +1 -1
  85. package/lib/blocks/blockPnpmDedupe.js.map +1 -0
  86. package/lib/{next/blocks → blocks}/blockPrettier.d.ts +2 -2
  87. package/lib/{next/blocks → blocks}/blockPrettier.js +6 -3
  88. package/lib/blocks/blockPrettier.js.map +1 -0
  89. package/lib/{next/blocks → blocks}/blockPrettierPluginCurly.d.ts +1 -1
  90. package/lib/blocks/blockPrettierPluginCurly.js.map +1 -0
  91. package/lib/{next/blocks → blocks}/blockPrettierPluginPackageJson.d.ts +1 -1
  92. package/lib/blocks/blockPrettierPluginPackageJson.js.map +1 -0
  93. package/lib/{next/blocks → blocks}/blockPrettierPluginSh.d.ts +1 -1
  94. package/lib/blocks/blockPrettierPluginSh.js.map +1 -0
  95. package/lib/{next/blocks → blocks}/blockREADME.d.ts +3 -1
  96. package/lib/{next/blocks → blocks}/blockREADME.js +16 -19
  97. package/lib/blocks/blockREADME.js.map +1 -0
  98. package/lib/{next/blocks → blocks}/blockReleaseIt.d.ts +1 -1
  99. package/lib/{next/blocks → blocks}/blockReleaseIt.js +2 -2
  100. package/lib/blocks/blockReleaseIt.js.map +1 -0
  101. package/lib/{next/blocks → blocks}/blockRenovate.d.ts +1 -1
  102. package/lib/{next/blocks → blocks}/blockRenovate.js +6 -1
  103. package/lib/blocks/blockRenovate.js.map +1 -0
  104. package/lib/{next/blocks → blocks}/blockRepositoryBranchRuleset.d.ts +1 -1
  105. package/lib/{next/blocks → blocks}/blockRepositoryBranchRuleset.js +0 -1
  106. package/lib/blocks/blockRepositoryBranchRuleset.js.map +1 -0
  107. package/lib/{next/blocks → blocks}/blockRepositoryLabels.d.ts +1 -1
  108. package/lib/{next/blocks → blocks}/blockRepositoryLabels.js +1 -1
  109. package/lib/blocks/blockRepositoryLabels.js.map +1 -0
  110. package/lib/{next/blocks → blocks}/blockRepositorySecrets.d.ts +2 -2
  111. package/lib/blocks/blockRepositorySecrets.js.map +1 -0
  112. package/lib/{next/blocks → blocks}/blockRepositorySettings.d.ts +1 -1
  113. package/lib/blocks/blockRepositorySettings.js.map +1 -0
  114. package/lib/{next/blocks → blocks}/blockSecurityDocs.d.ts +1 -1
  115. package/lib/blocks/blockSecurityDocs.js.map +1 -0
  116. package/lib/{next/blocks → blocks}/blockTSup.d.ts +2 -1
  117. package/lib/{next/blocks → blocks}/blockTSup.js +18 -4
  118. package/lib/blocks/blockTSup.js.map +1 -0
  119. package/lib/{next/blocks/blockKnip.d.ts → blocks/blockTemplatedWith.d.ts} +3 -3
  120. package/lib/{next/blocks/blockTemplatedBy.js → blocks/blockTemplatedWith.js} +3 -3
  121. package/lib/blocks/blockTemplatedWith.js.map +1 -0
  122. package/lib/{next/blocks → blocks}/blockTypeScript.d.ts +1 -1
  123. package/lib/{next/blocks → blocks}/blockTypeScript.js +2 -2
  124. package/lib/blocks/blockTypeScript.js.map +1 -0
  125. package/lib/{next/blocks → blocks}/blockVSCode.d.ts +1 -1
  126. package/lib/blocks/blockVSCode.js.map +1 -0
  127. package/lib/{next/blocks → blocks}/blockVitest.d.ts +10 -5
  128. package/lib/{next/blocks → blocks}/blockVitest.js +19 -34
  129. package/lib/blocks/blockVitest.js.map +1 -0
  130. package/lib/blocks/files/createJobName.d.ts +3 -0
  131. package/lib/blocks/files/createJobName.js +7 -0
  132. package/lib/blocks/files/createJobName.js.map +1 -0
  133. package/lib/{steps/writing/creation/dotGitHub → blocks/files}/createMultiWorkflowFile.js +2 -1
  134. package/lib/blocks/files/createMultiWorkflowFile.js.map +1 -0
  135. package/lib/{steps/writing/creation/dotGitHub → blocks/files}/createSoloWorkflowFile.js +2 -1
  136. package/lib/blocks/files/createSoloWorkflowFile.js.map +1 -0
  137. package/lib/blocks/files/formatIgnoreFile.js.map +1 -0
  138. package/lib/{steps/writing/creation/dotGitHub → blocks/files}/formatWorkflowYaml.js +1 -1
  139. package/lib/blocks/files/formatWorkflowYaml.js.map +1 -0
  140. package/lib/{steps/writing/creation/formatters → blocks/files}/formatYaml.js +1 -3
  141. package/lib/blocks/files/formatYaml.js.map +1 -0
  142. package/lib/blocks/index.d.ts +2141 -0
  143. package/lib/blocks/index.js +178 -0
  144. package/lib/blocks/index.js.map +1 -0
  145. package/lib/blocks/options.fakes.js.map +1 -0
  146. package/lib/{steps/initializeGitHubRepository → blocks}/outcomeLabels.js +1 -0
  147. package/lib/blocks/outcomeLabels.js.map +1 -0
  148. package/lib/blocks/phases.js.map +1 -0
  149. package/lib/{next/blocks/sourcePackageJson.d.ts → data/packageData.d.ts} +45 -51
  150. package/lib/{next/blocks → data}/packageData.js +9 -3
  151. package/lib/data/packageData.js.map +1 -0
  152. package/lib/index.d.ts +50 -48
  153. package/lib/index.js +4 -5
  154. package/lib/index.js.map +1 -1
  155. package/lib/options/getUsageFromReadme.js.map +1 -0
  156. package/lib/{shared/options/createOptionDefaults → options}/parsePackageAuthor.d.ts +1 -3
  157. package/lib/options/parsePackageAuthor.js.map +1 -0
  158. package/lib/{shared/options/createOptionDefaults → options}/readDefaultsFromReadme.d.ts +1 -0
  159. package/lib/{shared/options/createOptionDefaults → options}/readDefaultsFromReadme.js +12 -3
  160. package/lib/options/readDefaultsFromReadme.js.map +1 -0
  161. package/lib/{next → options}/readDescription.d.ts +1 -3
  162. package/lib/{next → options}/readDescription.js +2 -2
  163. package/lib/options/readDescription.js.map +1 -0
  164. package/lib/options/readDescriptionFromReadme.js.map +1 -0
  165. package/lib/{next → options}/readDocumentation.js +1 -1
  166. package/lib/options/readDocumentation.js.map +1 -0
  167. package/lib/{shared/options/createOptionDefaults → options}/readEmails.js +1 -1
  168. package/lib/options/readEmails.js.map +1 -0
  169. package/lib/options/readFileAsJson.js.map +1 -0
  170. package/lib/options/readFileSafe.js.map +1 -0
  171. package/lib/{shared/options/createOptionDefaults → options}/readFunding.js +1 -1
  172. package/lib/options/readFunding.js.map +1 -0
  173. package/lib/{shared/options/createOptionDefaults → options}/readGitHubEmail.js +1 -1
  174. package/lib/options/readGitHubEmail.js.map +1 -0
  175. package/lib/{shared/options/createOptionDefaults → options}/readGuide.js +1 -1
  176. package/lib/options/readGuide.js.map +1 -0
  177. package/lib/{shared/options → options}/readLogoSizing.js +1 -1
  178. package/lib/options/readLogoSizing.js.map +1 -0
  179. package/lib/options/readPackageData.d.ts +5 -0
  180. package/lib/options/readPackageData.js +8 -0
  181. package/lib/options/readPackageData.js.map +1 -0
  182. package/lib/{next/presets/presetCommon.d.ts → presets/common.d.ts} +1 -1
  183. package/lib/{next/presets/presetCommon.js → presets/common.js} +6 -2
  184. package/lib/presets/common.js.map +1 -0
  185. package/lib/{next/presets/presetEverything.d.ts → presets/everything.d.ts} +1 -1
  186. package/lib/{next/presets/presetEverything.js → presets/everything.js} +2 -4
  187. package/lib/presets/everything.js.map +1 -0
  188. package/lib/presets/index.d.ts +310 -0
  189. package/lib/presets/index.js +18 -0
  190. package/lib/presets/index.js.map +1 -0
  191. package/lib/{next/presets/presetMinimal.d.ts → presets/minimal.d.ts} +1 -1
  192. package/lib/{next/presets/presetMinimal.js → presets/minimal.js} +5 -5
  193. package/lib/presets/minimal.js.map +1 -0
  194. package/lib/{next/template.d.ts → template.d.ts} +1 -1
  195. package/lib/{next/template.js → template.js} +3 -3
  196. package/lib/template.js.map +1 -0
  197. package/lib/types.d.ts +31 -5
  198. package/lib/utils/resolveBin.js.map +1 -0
  199. package/lib/utils/sortObject.js.map +1 -0
  200. package/lib/utils/swallowError.js.map +1 -0
  201. package/lib/utils/tryCatchAsync.js.map +1 -0
  202. package/lib/utils/tryCatchLazyValueAsync.js.map +1 -0
  203. package/package.json +22 -32
  204. package/lib/bin/help.d.ts +0 -3
  205. package/lib/bin/help.js +0 -117
  206. package/lib/bin/help.js.map +0 -1
  207. package/lib/bin/index.d.ts +0 -5
  208. package/lib/bin/index.js +0 -91
  209. package/lib/bin/index.js.map +0 -1
  210. package/lib/bin/packageJson.d.ts +0 -3
  211. package/lib/bin/packageJson.js +0 -13
  212. package/lib/bin/packageJson.js.map +0 -1
  213. package/lib/bin/promptForMode.d.ts +0 -11
  214. package/lib/bin/promptForMode.js +0 -108
  215. package/lib/bin/promptForMode.js.map +0 -1
  216. package/lib/create/createAndEnterGitDirectory.d.ts +0 -3
  217. package/lib/create/createAndEnterGitDirectory.js +0 -20
  218. package/lib/create/createAndEnterGitDirectory.js.map +0 -1
  219. package/lib/create/createRerunDirectorySuggestion.d.ts +0 -7
  220. package/lib/create/createRerunDirectorySuggestion.js +0 -8
  221. package/lib/create/createRerunDirectorySuggestion.js.map +0 -1
  222. package/lib/create/createRerunSuggestion.d.ts +0 -7
  223. package/lib/create/createRerunSuggestion.js +0 -56
  224. package/lib/create/createRerunSuggestion.js.map +0 -1
  225. package/lib/create/createWithOptions.d.ts +0 -11
  226. package/lib/create/createWithOptions.js +0 -68
  227. package/lib/create/createWithOptions.js.map +0 -1
  228. package/lib/create/index.d.ts +0 -7
  229. package/lib/create/index.js +0 -69
  230. package/lib/create/index.js.map +0 -1
  231. package/lib/greet.d.ts +0 -5
  232. package/lib/greet.js +0 -14
  233. package/lib/greet.js.map +0 -1
  234. package/lib/initialize/index.d.ts +0 -7
  235. package/lib/initialize/index.js +0 -43
  236. package/lib/initialize/index.js.map +0 -1
  237. package/lib/initialize/initializeWithOptions.d.ts +0 -9
  238. package/lib/initialize/initializeWithOptions.js +0 -66
  239. package/lib/initialize/initializeWithOptions.js.map +0 -1
  240. package/lib/migrate/index.d.ts +0 -7
  241. package/lib/migrate/index.js +0 -43
  242. package/lib/migrate/index.js.map +0 -1
  243. package/lib/migrate/migrateWithOptions.d.ts +0 -9
  244. package/lib/migrate/migrateWithOptions.js +0 -72
  245. package/lib/migrate/migrateWithOptions.js.map +0 -1
  246. package/lib/next/base.js.map +0 -1
  247. package/lib/next/blocks/blockAllContributors.js +0 -65
  248. package/lib/next/blocks/blockAllContributors.js.map +0 -1
  249. package/lib/next/blocks/blockAreTheTypesWrong.js.map +0 -1
  250. package/lib/next/blocks/blockCSpell.js.map +0 -1
  251. package/lib/next/blocks/blockContributingDocs.js.map +0 -1
  252. package/lib/next/blocks/blockContributorCovenant.js.map +0 -1
  253. package/lib/next/blocks/blockDevelopmentDocs.js.map +0 -1
  254. package/lib/next/blocks/blockESLint.js.map +0 -1
  255. package/lib/next/blocks/blockESLintComments.js.map +0 -1
  256. package/lib/next/blocks/blockESLintJSDoc.js.map +0 -1
  257. package/lib/next/blocks/blockESLintJSONC.js.map +0 -1
  258. package/lib/next/blocks/blockESLintMarkdown.js.map +0 -1
  259. package/lib/next/blocks/blockESLintMoreStyling.js.map +0 -1
  260. package/lib/next/blocks/blockESLintNode.js.map +0 -1
  261. package/lib/next/blocks/blockESLintPackageJson.js.map +0 -1
  262. package/lib/next/blocks/blockESLintPerfectionist.js.map +0 -1
  263. package/lib/next/blocks/blockESLintRegexp.js.map +0 -1
  264. package/lib/next/blocks/blockESLintYML.js.map +0 -1
  265. package/lib/next/blocks/blockExampleFiles.js.map +0 -1
  266. package/lib/next/blocks/blockFunding.js.map +0 -1
  267. package/lib/next/blocks/blockGitHubActionsCI.js.map +0 -1
  268. package/lib/next/blocks/blockGitHubApps.js.map +0 -1
  269. package/lib/next/blocks/blockGitHubIssueTemplates.js.map +0 -1
  270. package/lib/next/blocks/blockGitHubPRTemplate.js.map +0 -1
  271. package/lib/next/blocks/blockGitignore.js.map +0 -1
  272. package/lib/next/blocks/blockKnip.js.map +0 -1
  273. package/lib/next/blocks/blockMITLicense.js.map +0 -1
  274. package/lib/next/blocks/blockMarkdownlint.js.map +0 -1
  275. package/lib/next/blocks/blockNvmrc.js.map +0 -1
  276. package/lib/next/blocks/blockPRCompliance.js.map +0 -1
  277. package/lib/next/blocks/blockPackageJson.js.map +0 -1
  278. package/lib/next/blocks/blockPnpmDedupe.js.map +0 -1
  279. package/lib/next/blocks/blockPrettier.js.map +0 -1
  280. package/lib/next/blocks/blockPrettierPluginCurly.js.map +0 -1
  281. package/lib/next/blocks/blockPrettierPluginPackageJson.js.map +0 -1
  282. package/lib/next/blocks/blockPrettierPluginSh.js.map +0 -1
  283. package/lib/next/blocks/blockREADME.js.map +0 -1
  284. package/lib/next/blocks/blockReleaseIt.js.map +0 -1
  285. package/lib/next/blocks/blockRenovate.js.map +0 -1
  286. package/lib/next/blocks/blockRepositoryBranchRuleset.js.map +0 -1
  287. package/lib/next/blocks/blockRepositoryLabels.js.map +0 -1
  288. package/lib/next/blocks/blockRepositorySecrets.js.map +0 -1
  289. package/lib/next/blocks/blockRepositorySettings.js.map +0 -1
  290. package/lib/next/blocks/blockSecurityDocs.js.map +0 -1
  291. package/lib/next/blocks/blockTSup.js.map +0 -1
  292. package/lib/next/blocks/blockTemplatedBy.d.ts +0 -50
  293. package/lib/next/blocks/blockTemplatedBy.js.map +0 -1
  294. package/lib/next/blocks/blockTypeScript.js.map +0 -1
  295. package/lib/next/blocks/blockVSCode.js.map +0 -1
  296. package/lib/next/blocks/blockVitest.js.map +0 -1
  297. package/lib/next/blocks/index.d.ts +0 -43
  298. package/lib/next/blocks/index.js +0 -43
  299. package/lib/next/blocks/index.js.map +0 -1
  300. package/lib/next/blocks/options.fakes.js.map +0 -1
  301. package/lib/next/blocks/packageData.d.ts +0 -6
  302. package/lib/next/blocks/packageData.js.map +0 -1
  303. package/lib/next/blocks/phases.js.map +0 -1
  304. package/lib/next/blocks/sourcePackageJson.js +0 -10
  305. package/lib/next/blocks/sourcePackageJson.js.map +0 -1
  306. package/lib/next/presets/index.d.ts +0 -5
  307. package/lib/next/presets/index.js +0 -4
  308. package/lib/next/presets/index.js.map +0 -1
  309. package/lib/next/presets/presetCommon.js.map +0 -1
  310. package/lib/next/presets/presetEverything.js.map +0 -1
  311. package/lib/next/presets/presetMinimal.js.map +0 -1
  312. package/lib/next/readDescription.js.map +0 -1
  313. package/lib/next/readDescriptionFromReadme.js.map +0 -1
  314. package/lib/next/readDocumentation.js.map +0 -1
  315. package/lib/next/runCreateEnginePreset.d.ts +0 -7
  316. package/lib/next/runCreateEnginePreset.js +0 -20
  317. package/lib/next/runCreateEnginePreset.js.map +0 -1
  318. package/lib/next/template.js.map +0 -1
  319. package/lib/next/utils/resolveBin.js.map +0 -1
  320. package/lib/next/utils/sortObject.js.map +0 -1
  321. package/lib/next/utils/swallowError.js.map +0 -1
  322. package/lib/shared/cli/lines.d.ts +0 -5
  323. package/lib/shared/cli/lines.js +0 -17
  324. package/lib/shared/cli/lines.js.map +0 -1
  325. package/lib/shared/cli/lowerFirst.d.ts +0 -3
  326. package/lib/shared/cli/lowerFirst.js +0 -7
  327. package/lib/shared/cli/lowerFirst.js.map +0 -1
  328. package/lib/shared/cli/outro.d.ts +0 -8
  329. package/lib/shared/cli/outro.js +0 -21
  330. package/lib/shared/cli/outro.js.map +0 -1
  331. package/lib/shared/cli/spinners.d.ts +0 -6
  332. package/lib/shared/cli/spinners.js +0 -50
  333. package/lib/shared/cli/spinners.js.map +0 -1
  334. package/lib/shared/cli/startLineWithDots.d.ts +0 -3
  335. package/lib/shared/cli/startLineWithDots.js +0 -32
  336. package/lib/shared/cli/startLineWithDots.js.map +0 -1
  337. package/lib/shared/codes.d.ts +0 -8
  338. package/lib/shared/codes.js +0 -9
  339. package/lib/shared/codes.js.map +0 -1
  340. package/lib/shared/createCleanupCommands.d.ts +0 -3
  341. package/lib/shared/createCleanupCommands.js +0 -13
  342. package/lib/shared/createCleanupCommands.js.map +0 -1
  343. package/lib/shared/doesRepositoryExist.d.ts +0 -9
  344. package/lib/shared/doesRepositoryExist.js +0 -18
  345. package/lib/shared/doesRepositoryExist.js.map +0 -1
  346. package/lib/shared/ensureGitRepository.d.ts +0 -3
  347. package/lib/shared/ensureGitRepository.js +0 -12
  348. package/lib/shared/ensureGitRepository.js.map +0 -1
  349. package/lib/shared/generateNextSteps.d.ts +0 -8
  350. package/lib/shared/generateNextSteps.js +0 -60
  351. package/lib/shared/generateNextSteps.js.map +0 -1
  352. package/lib/shared/getGitHubUserAsAllContributor.d.ts +0 -8
  353. package/lib/shared/getGitHubUserAsAllContributor.js +0 -43
  354. package/lib/shared/getGitHubUserAsAllContributor.js.map +0 -1
  355. package/lib/shared/isUsingCreateEngine.d.ts +0 -3
  356. package/lib/shared/isUsingCreateEngine.js +0 -7
  357. package/lib/shared/isUsingCreateEngine.js.map +0 -1
  358. package/lib/shared/options/args.d.ts +0 -273
  359. package/lib/shared/options/args.js +0 -335
  360. package/lib/shared/options/args.js.map +0 -1
  361. package/lib/shared/options/augmentOptionsWithExcludes.d.ts +0 -7
  362. package/lib/shared/options/augmentOptionsWithExcludes.js +0 -94
  363. package/lib/shared/options/augmentOptionsWithExcludes.js.map +0 -1
  364. package/lib/shared/options/createOptionDefaults/getUsageFromReadme.js.map +0 -1
  365. package/lib/shared/options/createOptionDefaults/index.d.ts +0 -28
  366. package/lib/shared/options/createOptionDefaults/index.js +0 -49
  367. package/lib/shared/options/createOptionDefaults/index.js.map +0 -1
  368. package/lib/shared/options/createOptionDefaults/parsePackageAuthor.js.map +0 -1
  369. package/lib/shared/options/createOptionDefaults/readDefaultsFromReadme.js.map +0 -1
  370. package/lib/shared/options/createOptionDefaults/readEmails.js.map +0 -1
  371. package/lib/shared/options/createOptionDefaults/readFunding.js.map +0 -1
  372. package/lib/shared/options/createOptionDefaults/readGitHubEmail.js.map +0 -1
  373. package/lib/shared/options/createOptionDefaults/readGuide.js.map +0 -1
  374. package/lib/shared/options/createRepositoryWithApi.d.ts +0 -10
  375. package/lib/shared/options/createRepositoryWithApi.js +0 -32
  376. package/lib/shared/options/createRepositoryWithApi.js.map +0 -1
  377. package/lib/shared/options/detectEmailRedundancy.d.ts +0 -8
  378. package/lib/shared/options/detectEmailRedundancy.js +0 -16
  379. package/lib/shared/options/detectEmailRedundancy.js.map +0 -1
  380. package/lib/shared/options/ensureRepositoryExists.d.ts +0 -13
  381. package/lib/shared/options/ensureRepositoryExists.js +0 -64
  382. package/lib/shared/options/ensureRepositoryExists.js.map +0 -1
  383. package/lib/shared/options/exclusionKeys.d.ts +0 -15
  384. package/lib/shared/options/exclusionKeys.js +0 -129
  385. package/lib/shared/options/exclusionKeys.js.map +0 -1
  386. package/lib/shared/options/getBase.d.ts +0 -7
  387. package/lib/shared/options/getBase.js +0 -27
  388. package/lib/shared/options/getBase.js.map +0 -1
  389. package/lib/shared/options/getPrefillOrPromptedOption.d.ts +0 -16
  390. package/lib/shared/options/getPrefillOrPromptedOption.js +0 -37
  391. package/lib/shared/options/getPrefillOrPromptedOption.js.map +0 -1
  392. package/lib/shared/options/logInferredOptions.d.ts +0 -8
  393. package/lib/shared/options/logInferredOptions.js +0 -30
  394. package/lib/shared/options/logInferredOptions.js.map +0 -1
  395. package/lib/shared/options/optionsSchema.d.ts +0 -218
  396. package/lib/shared/options/optionsSchema.js +0 -63
  397. package/lib/shared/options/optionsSchema.js.map +0 -1
  398. package/lib/shared/options/readLogoSizing.js.map +0 -1
  399. package/lib/shared/options/readOptions.d.ts +0 -21
  400. package/lib/shared/options/readOptions.js +0 -235
  401. package/lib/shared/options/readOptions.js.map +0 -1
  402. package/lib/shared/packages.d.ts +0 -8
  403. package/lib/shared/packages.js +0 -18
  404. package/lib/shared/packages.js.map +0 -1
  405. package/lib/shared/prompts.d.ts +0 -3
  406. package/lib/shared/prompts.js +0 -8
  407. package/lib/shared/prompts.js.map +0 -1
  408. package/lib/shared/readFileAsJson.js.map +0 -1
  409. package/lib/shared/readFileSafe.js.map +0 -1
  410. package/lib/shared/readFileSafeAsJson.d.ts +0 -3
  411. package/lib/shared/readFileSafeAsJson.js +0 -8
  412. package/lib/shared/readFileSafeAsJson.js.map +0 -1
  413. package/lib/shared/runOrRestore.d.ts +0 -7
  414. package/lib/shared/runOrRestore.js +0 -37
  415. package/lib/shared/runOrRestore.js.map +0 -1
  416. package/lib/shared/tryCatchAsync.js.map +0 -1
  417. package/lib/shared/tryCatchLazyValueAsync.js.map +0 -1
  418. package/lib/shared/types.d.ts +0 -120
  419. package/lib/shared/types.js +0 -1
  420. package/lib/shared/types.js.map +0 -1
  421. package/lib/steps/addOwnerAsAllContributor.d.ts +0 -8
  422. package/lib/steps/addOwnerAsAllContributor.js +0 -43
  423. package/lib/steps/addOwnerAsAllContributor.js.map +0 -1
  424. package/lib/steps/addToolAllContributors.d.ts +0 -8
  425. package/lib/steps/addToolAllContributors.js +0 -12
  426. package/lib/steps/addToolAllContributors.js.map +0 -1
  427. package/lib/steps/clearChangelog.d.ts +0 -3
  428. package/lib/steps/clearChangelog.js +0 -12
  429. package/lib/steps/clearChangelog.js.map +0 -1
  430. package/lib/steps/clearLocalGitTags.d.ts +0 -3
  431. package/lib/steps/clearLocalGitTags.js +0 -9
  432. package/lib/steps/clearLocalGitTags.js.map +0 -1
  433. package/lib/steps/clearUnnecessaryFiles.d.ts +0 -3
  434. package/lib/steps/clearUnnecessaryFiles.js +0 -38
  435. package/lib/steps/clearUnnecessaryFiles.js.map +0 -1
  436. package/lib/steps/createJoshuaKGoldbergReplacement.d.ts +0 -11
  437. package/lib/steps/createJoshuaKGoldbergReplacement.js +0 -16
  438. package/lib/steps/createJoshuaKGoldbergReplacement.js.map +0 -1
  439. package/lib/steps/finalizeDependencies.d.ts +0 -7
  440. package/lib/steps/finalizeDependencies.js +0 -59
  441. package/lib/steps/finalizeDependencies.js.map +0 -1
  442. package/lib/steps/initializeGitHubRepository/index.d.ts +0 -8
  443. package/lib/steps/initializeGitHubRepository/index.js +0 -19
  444. package/lib/steps/initializeGitHubRepository/index.js.map +0 -1
  445. package/lib/steps/initializeGitHubRepository/initializeBranchProtectionSettings.d.ts +0 -8
  446. package/lib/steps/initializeGitHubRepository/initializeBranchProtectionSettings.js +0 -67
  447. package/lib/steps/initializeGitHubRepository/initializeBranchProtectionSettings.js.map +0 -1
  448. package/lib/steps/initializeGitHubRepository/outcomeLabels.js.map +0 -1
  449. package/lib/steps/initializeGitRemote.d.ts +0 -8
  450. package/lib/steps/initializeGitRemote.js +0 -15
  451. package/lib/steps/initializeGitRemote.js.map +0 -1
  452. package/lib/steps/initializeRepositorySettings.d.ts +0 -9
  453. package/lib/steps/initializeRepositorySettings.js +0 -27
  454. package/lib/steps/initializeRepositorySettings.js.map +0 -1
  455. package/lib/steps/populateCSpellDictionary.d.ts +0 -3
  456. package/lib/steps/populateCSpellDictionary.js +0 -36
  457. package/lib/steps/populateCSpellDictionary.js.map +0 -1
  458. package/lib/steps/removeSetupScripts.d.ts +0 -3
  459. package/lib/steps/removeSetupScripts.js +0 -29
  460. package/lib/steps/removeSetupScripts.js.map +0 -1
  461. package/lib/steps/resetGitTags.d.ts +0 -3
  462. package/lib/steps/resetGitTags.js +0 -12
  463. package/lib/steps/resetGitTags.js.map +0 -1
  464. package/lib/steps/runCleanup.d.ts +0 -7
  465. package/lib/steps/runCleanup.js +0 -37
  466. package/lib/steps/runCleanup.js.map +0 -1
  467. package/lib/steps/uninstallPackages.d.ts +0 -3
  468. package/lib/steps/uninstallPackages.js +0 -64
  469. package/lib/steps/uninstallPackages.js.map +0 -1
  470. package/lib/steps/updateAllContributorsTable.d.ts +0 -7
  471. package/lib/steps/updateAllContributorsTable.js +0 -24
  472. package/lib/steps/updateAllContributorsTable.js.map +0 -1
  473. package/lib/steps/updateLocalFiles.d.ts +0 -7
  474. package/lib/steps/updateLocalFiles.js +0 -84
  475. package/lib/steps/updateLocalFiles.js.map +0 -1
  476. package/lib/steps/updateReadme.d.ts +0 -10
  477. package/lib/steps/updateReadme.js +0 -27
  478. package/lib/steps/updateReadme.js.map +0 -1
  479. package/lib/steps/writeReadme/findExistingBadges.d.ts +0 -4
  480. package/lib/steps/writeReadme/findExistingBadges.js +0 -28
  481. package/lib/steps/writeReadme/findExistingBadges.js.map +0 -1
  482. package/lib/steps/writeReadme/findIntroSectionClose.d.ts +0 -3
  483. package/lib/steps/writeReadme/findIntroSectionClose.js +0 -22
  484. package/lib/steps/writeReadme/findIntroSectionClose.js.map +0 -1
  485. package/lib/steps/writeReadme/generateTopContent.d.ts +0 -7
  486. package/lib/steps/writeReadme/generateTopContent.js +0 -70
  487. package/lib/steps/writeReadme/generateTopContent.js.map +0 -1
  488. package/lib/steps/writeReadme/index.d.ts +0 -7
  489. package/lib/steps/writeReadme/index.js +0 -57
  490. package/lib/steps/writeReadme/index.js.map +0 -1
  491. package/lib/steps/writing/creation/createCSpellConfig.d.ts +0 -7
  492. package/lib/steps/writing/creation/createCSpellConfig.js +0 -27
  493. package/lib/steps/writing/creation/createCSpellConfig.js.map +0 -1
  494. package/lib/steps/writing/creation/createDotGitignore.d.ts +0 -7
  495. package/lib/steps/writing/creation/createDotGitignore.js +0 -14
  496. package/lib/steps/writing/creation/createDotGitignore.js.map +0 -1
  497. package/lib/steps/writing/creation/createESLintConfig.d.ts +0 -7
  498. package/lib/steps/writing/creation/createESLintConfig.js +0 -105
  499. package/lib/steps/writing/creation/createESLintConfig.js.map +0 -1
  500. package/lib/steps/writing/creation/createKnipConfig.d.ts +0 -3
  501. package/lib/steps/writing/creation/createKnipConfig.js +0 -20
  502. package/lib/steps/writing/creation/createKnipConfig.js.map +0 -1
  503. package/lib/steps/writing/creation/createTsupConfig.d.ts +0 -7
  504. package/lib/steps/writing/creation/createTsupConfig.js +0 -19
  505. package/lib/steps/writing/creation/createTsupConfig.js.map +0 -1
  506. package/lib/steps/writing/creation/dotGitHub/actions.d.ts +0 -7
  507. package/lib/steps/writing/creation/dotGitHub/actions.js +0 -32
  508. package/lib/steps/writing/creation/dotGitHub/actions.js.map +0 -1
  509. package/lib/steps/writing/creation/dotGitHub/createDevelopment/index.d.ts +0 -7
  510. package/lib/steps/writing/creation/dotGitHub/createDevelopment/index.js +0 -154
  511. package/lib/steps/writing/creation/dotGitHub/createDevelopment/index.js.map +0 -1
  512. package/lib/steps/writing/creation/dotGitHub/createDevelopment/splitIntoSections.d.ts +0 -3
  513. package/lib/steps/writing/creation/dotGitHub/createDevelopment/splitIntoSections.js +0 -24
  514. package/lib/steps/writing/creation/dotGitHub/createDevelopment/splitIntoSections.js.map +0 -1
  515. package/lib/steps/writing/creation/dotGitHub/createDotGitHubFiles.d.ts +0 -16
  516. package/lib/steps/writing/creation/dotGitHub/createDotGitHubFiles.js +0 -292
  517. package/lib/steps/writing/creation/dotGitHub/createDotGitHubFiles.js.map +0 -1
  518. package/lib/steps/writing/creation/dotGitHub/createMultiWorkflowFile.js.map +0 -1
  519. package/lib/steps/writing/creation/dotGitHub/createSoloWorkflowFile.js.map +0 -1
  520. package/lib/steps/writing/creation/dotGitHub/createWorkflows.d.ts +0 -15
  521. package/lib/steps/writing/creation/dotGitHub/createWorkflows.js +0 -237
  522. package/lib/steps/writing/creation/dotGitHub/createWorkflows.js.map +0 -1
  523. package/lib/steps/writing/creation/dotGitHub/formatWorkflowYaml.js.map +0 -1
  524. package/lib/steps/writing/creation/dotGitHub/index.d.ts +0 -36
  525. package/lib/steps/writing/creation/dotGitHub/index.js +0 -16
  526. package/lib/steps/writing/creation/dotGitHub/index.js.map +0 -1
  527. package/lib/steps/writing/creation/dotGitHub/issueTemplate.d.ts +0 -12
  528. package/lib/steps/writing/creation/dotGitHub/issueTemplate.js +0 -198
  529. package/lib/steps/writing/creation/dotGitHub/issueTemplate.js.map +0 -1
  530. package/lib/steps/writing/creation/dotHusky.d.ts +0 -6
  531. package/lib/steps/writing/creation/dotHusky.js +0 -11
  532. package/lib/steps/writing/creation/dotHusky.js.map +0 -1
  533. package/lib/steps/writing/creation/dotVSCode.d.ts +0 -12
  534. package/lib/steps/writing/creation/dotVSCode.js +0 -79
  535. package/lib/steps/writing/creation/dotVSCode.js.map +0 -1
  536. package/lib/steps/writing/creation/formatters/formatIgnoreFile.js.map +0 -1
  537. package/lib/steps/writing/creation/formatters/formatJson.d.ts +0 -3
  538. package/lib/steps/writing/creation/formatters/formatJson.js +0 -18
  539. package/lib/steps/writing/creation/formatters/formatJson.js.map +0 -1
  540. package/lib/steps/writing/creation/formatters/formatTypeScript.d.ts +0 -3
  541. package/lib/steps/writing/creation/formatters/formatTypeScript.js +0 -8
  542. package/lib/steps/writing/creation/formatters/formatTypeScript.js.map +0 -1
  543. package/lib/steps/writing/creation/formatters/formatYaml.js.map +0 -1
  544. package/lib/steps/writing/creation/index.d.ts +0 -9
  545. package/lib/steps/writing/creation/index.js +0 -78
  546. package/lib/steps/writing/creation/index.js.map +0 -1
  547. package/lib/steps/writing/creation/rootFiles.d.ts +0 -24
  548. package/lib/steps/writing/creation/rootFiles.js +0 -152
  549. package/lib/steps/writing/creation/rootFiles.js.map +0 -1
  550. package/lib/steps/writing/creation/src.d.ts +0 -12
  551. package/lib/steps/writing/creation/src.js +0 -90
  552. package/lib/steps/writing/creation/src.js.map +0 -1
  553. package/lib/steps/writing/creation/writeAllContributorsRC.d.ts +0 -7
  554. package/lib/steps/writing/creation/writeAllContributorsRC.js +0 -18
  555. package/lib/steps/writing/creation/writeAllContributorsRC.js.map +0 -1
  556. package/lib/steps/writing/creation/writePackageJson.d.ts +0 -7
  557. package/lib/steps/writing/creation/writePackageJson.js +0 -118
  558. package/lib/steps/writing/creation/writePackageJson.js.map +0 -1
  559. package/lib/steps/writing/types.d.ts +0 -5
  560. package/lib/steps/writing/types.js +0 -1
  561. package/lib/steps/writing/types.js.map +0 -1
  562. package/lib/steps/writing/writeStructure.d.ts +0 -7
  563. package/lib/steps/writing/writeStructure.js +0 -22
  564. package/lib/steps/writing/writeStructure.js.map +0 -1
  565. package/lib/steps/writing/writeStructureWorker.d.ts +0 -5
  566. package/lib/steps/writing/writeStructureWorker.js +0 -47
  567. package/lib/steps/writing/writeStructureWorker.js.map +0 -1
  568. /package/lib/{next/blocks → blocks}/blockAreTheTypesWrong.js +0 -0
  569. /package/lib/{next/blocks → blocks}/blockESLintComments.js +0 -0
  570. /package/lib/{next/blocks → blocks}/blockESLintJSDoc.js +0 -0
  571. /package/lib/{next/blocks → blocks}/blockESLintJSONC.js +0 -0
  572. /package/lib/{next/blocks → blocks}/blockESLintMarkdown.js +0 -0
  573. /package/lib/{next/blocks → blocks}/blockESLintMoreStyling.js +0 -0
  574. /package/lib/{next/blocks → blocks}/blockESLintPackageJson.js +0 -0
  575. /package/lib/{next/blocks → blocks}/blockESLintPerfectionist.js +0 -0
  576. /package/lib/{next/blocks → blocks}/blockESLintRegexp.js +0 -0
  577. /package/lib/{next/blocks → blocks}/blockESLintYML.js +0 -0
  578. /package/lib/{next/blocks → blocks}/blockExampleFiles.js +0 -0
  579. /package/lib/{next/blocks → blocks}/blockGitHubApps.js +0 -0
  580. /package/lib/{next/blocks → blocks}/blockGitHubPRTemplate.js +0 -0
  581. /package/lib/{next/blocks → blocks}/blockMITLicense.js +0 -0
  582. /package/lib/{next/blocks → blocks}/blockNvmrc.js +0 -0
  583. /package/lib/{next/blocks → blocks}/blockPnpmDedupe.js +0 -0
  584. /package/lib/{next/blocks → blocks}/blockPrettierPluginCurly.js +0 -0
  585. /package/lib/{next/blocks → blocks}/blockPrettierPluginPackageJson.js +0 -0
  586. /package/lib/{next/blocks → blocks}/blockPrettierPluginSh.js +0 -0
  587. /package/lib/{next/blocks → blocks}/blockRepositorySecrets.js +0 -0
  588. /package/lib/{next/blocks → blocks}/blockRepositorySettings.js +0 -0
  589. /package/lib/{next/blocks → blocks}/blockSecurityDocs.js +0 -0
  590. /package/lib/{next/blocks → blocks}/blockVSCode.js +0 -0
  591. /package/lib/{steps/writing/creation/dotGitHub → blocks/files}/createMultiWorkflowFile.d.ts +0 -0
  592. /package/lib/{steps/writing/creation/dotGitHub → blocks/files}/createSoloWorkflowFile.d.ts +0 -0
  593. /package/lib/{steps/writing/creation/formatters → blocks/files}/formatIgnoreFile.d.ts +0 -0
  594. /package/lib/{steps/writing/creation/formatters → blocks/files}/formatIgnoreFile.js +0 -0
  595. /package/lib/{steps/writing/creation/dotGitHub → blocks/files}/formatWorkflowYaml.d.ts +0 -0
  596. /package/lib/{steps/writing/creation/formatters → blocks/files}/formatYaml.d.ts +0 -0
  597. /package/lib/{next/blocks → blocks}/options.fakes.d.ts +0 -0
  598. /package/lib/{next/blocks → blocks}/options.fakes.js +0 -0
  599. /package/lib/{steps/initializeGitHubRepository → blocks}/outcomeLabels.d.ts +0 -0
  600. /package/lib/{next/blocks → blocks}/phases.d.ts +0 -0
  601. /package/lib/{next/blocks → blocks}/phases.js +0 -0
  602. /package/lib/{shared/options/createOptionDefaults → options}/getUsageFromReadme.d.ts +0 -0
  603. /package/lib/{shared/options/createOptionDefaults → options}/getUsageFromReadme.js +0 -0
  604. /package/lib/{shared/options/createOptionDefaults → options}/parsePackageAuthor.js +0 -0
  605. /package/lib/{next → options}/readDescriptionFromReadme.d.ts +0 -0
  606. /package/lib/{next → options}/readDescriptionFromReadme.js +0 -0
  607. /package/lib/{next → options}/readDocumentation.d.ts +0 -0
  608. /package/lib/{shared/options/createOptionDefaults → options}/readEmails.d.ts +0 -0
  609. /package/lib/{shared → options}/readFileAsJson.d.ts +0 -0
  610. /package/lib/{shared → options}/readFileAsJson.js +0 -0
  611. /package/lib/{shared → options}/readFileSafe.d.ts +0 -0
  612. /package/lib/{shared → options}/readFileSafe.js +0 -0
  613. /package/lib/{shared/options/createOptionDefaults → options}/readFunding.d.ts +0 -0
  614. /package/lib/{shared/options/createOptionDefaults → options}/readGitHubEmail.d.ts +0 -0
  615. /package/lib/{shared/options/createOptionDefaults → options}/readGuide.d.ts +0 -0
  616. /package/lib/{shared/options → options}/readLogoSizing.d.ts +0 -0
  617. /package/lib/{next/utils → utils}/resolveBin.d.ts +0 -0
  618. /package/lib/{next/utils → utils}/resolveBin.js +0 -0
  619. /package/lib/{next/utils → utils}/sortObject.d.ts +0 -0
  620. /package/lib/{next/utils → utils}/sortObject.js +0 -0
  621. /package/lib/{next/utils → utils}/swallowError.d.ts +0 -0
  622. /package/lib/{next/utils → utils}/swallowError.js +0 -0
  623. /package/lib/{shared → utils}/tryCatchAsync.d.ts +0 -0
  624. /package/lib/{shared → utils}/tryCatchAsync.js +0 -0
  625. /package/lib/{shared → utils}/tryCatchLazyValueAsync.d.ts +0 -0
  626. /package/lib/{shared → utils}/tryCatchLazyValueAsync.js +0 -0
@@ -1,70 +0,0 @@
1
- function generateTopContent(options, existingBadges) {
2
- const remainingExistingBadges = new Set(existingBadges);
3
- const badges = [];
4
- for (const [badgeLine, existingMatcher] of [
5
- [
6
- !options.excludeAllContributors && `<!-- prettier-ignore-start -->
7
- <!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
8
- <a href="#contributors" target="_blank"><img alt="\u{1F46A} All Contributors: 1" src="https://img.shields.io/badge/\u{1F46A}_all_contributors-1-21bb42.svg" /></a>
9
- <!-- ALL-CONTRIBUTORS-BADGE:END -->
10
- <!-- prettier-ignore-end -->`,
11
- /<a\s+href.*contributors.*All\s+Contributors/
12
- ],
13
- [
14
- `<a href="https://github.com/${options.owner}/${options.repository}/blob/main/.github/CODE_OF_CONDUCT.md" target="_blank"><img alt="\u{1F91D} Code of Conduct: Kept" src="https://img.shields.io/badge/%F0%9F%A4%9D_code_of_conduct-kept-21bb42" /></a>`,
15
- /CODE_OF_CONDUCT\.md/
16
- ],
17
- [
18
- !options.excludeTests && `<a href="https://codecov.io/gh/${options.owner}/${options.repository}" target="_blank"><img alt="\u{1F9EA} Coverage" src="https://img.shields.io/codecov/c/github/${options.owner}/${options.repository}?label=%F0%9F%A7%AA%20coverage" /></a>`,
19
- /https:\/\/codecov\.io\/gh/
20
- ],
21
- [
22
- `<a href="https://github.com/${options.owner}/${options.repository}/blob/main/LICENSE.md" target="_blank"><img alt="\u{1F4DD} License: MIT" src="https://img.shields.io/badge/%F0%9F%93%9D_license-MIT-21bb42.svg"></a>`,
23
- /LICENSE\.(md|txt)/
24
- ],
25
- [
26
- `<a href="http://npmjs.com/package/${options.repository}"><img alt="\u{1F4E6} npm version" src="https://img.shields.io/npm/v/${options.repository}?color=21bb42&label=%F0%9F%93%A6%20npm" /></a>`,
27
- /npm.*v/i
28
- ],
29
- [
30
- `<img alt="\u{1F4AA} TypeScript: Strict" src="https://img.shields.io/badge/%F0%9F%92%AA_typescript-strict-21bb42.svg" />`,
31
- /typescript.*strict/i
32
- ]
33
- ]) {
34
- const existingMatch = existingBadges.find(
35
- (existingLine) => existingMatcher.test(existingLine)
36
- );
37
- if (existingMatch) {
38
- remainingExistingBadges.delete(existingMatch);
39
- }
40
- if (badgeLine) {
41
- badges.push(badgeLine);
42
- }
43
- }
44
- return `<h1 align="center">${options.title}</h1>
45
-
46
- <p align="center">${options.description}</p>
47
-
48
- <p align="center">
49
- ${[...badges, ...remainingExistingBadges].map((badge) => ` ${badge}`).join("\n")}
50
- </p>${options.logo ? `
51
-
52
- <img align="right" alt="${options.logo.alt}" src="${options.logo.src}">
53
-
54
- ` : ""}${options.mode === "migrate" ? "" : `
55
-
56
- ## Usage
57
-
58
- \`\`\`shell
59
- npm i ${options.repository}
60
- \`\`\`
61
- \`\`\`ts
62
- import { greet } from "${options.repository}";
63
-
64
- greet("Hello, world! \u{1F496}");
65
- \`\`\``}`;
66
- }
67
- export {
68
- generateTopContent
69
- };
70
- //# sourceMappingURL=generateTopContent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/steps/writeReadme/generateTopContent.ts"],"sourcesContent":["import { Options } from \"../../shared/types.js\";\n\nexport function generateTopContent(options: Options, existingBadges: string[]) {\n\tconst remainingExistingBadges = new Set(existingBadges);\n\tconst badges: string[] = [];\n\n\tfor (const [badgeLine, existingMatcher] of [\n\t\t[\n\t\t\t!options.excludeAllContributors &&\n\t\t\t\t`<!-- prettier-ignore-start -->\n\t<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->\n\t<a href=\"#contributors\" target=\"_blank\"><img alt=\"👪 All Contributors: 1\" src=\"https://img.shields.io/badge/👪_all_contributors-1-21bb42.svg\" /></a>\n\t<!-- ALL-CONTRIBUTORS-BADGE:END -->\n\t<!-- prettier-ignore-end -->`,\n\t\t\t/<a\\s+href.*contributors.*All\\s+Contributors/,\n\t\t],\n\t\t[\n\t\t\t`<a href=\"https://github.com/${options.owner}/${options.repository}/blob/main/.github/CODE_OF_CONDUCT.md\" target=\"_blank\"><img alt=\"🤝 Code of Conduct: Kept\" src=\"https://img.shields.io/badge/%F0%9F%A4%9D_code_of_conduct-kept-21bb42\" /></a>`,\n\t\t\t/CODE_OF_CONDUCT\\.md/,\n\t\t],\n\t\t[\n\t\t\t!options.excludeTests &&\n\t\t\t\t`<a href=\"https://codecov.io/gh/${options.owner}/${options.repository}\" target=\"_blank\"><img alt=\"🧪 Coverage\" src=\"https://img.shields.io/codecov/c/github/${options.owner}/${options.repository}?label=%F0%9F%A7%AA%20coverage\" /></a>`,\n\t\t\t/https:\\/\\/codecov\\.io\\/gh/,\n\t\t],\n\t\t[\n\t\t\t`<a href=\"https://github.com/${options.owner}/${options.repository}/blob/main/LICENSE.md\" target=\"_blank\"><img alt=\"📝 License: MIT\" src=\"https://img.shields.io/badge/%F0%9F%93%9D_license-MIT-21bb42.svg\"></a>`,\n\t\t\t/LICENSE\\.(md|txt)/,\n\t\t],\n\t\t[\n\t\t\t`<a href=\"http://npmjs.com/package/${options.repository}\"><img alt=\"📦 npm version\" src=\"https://img.shields.io/npm/v/${options.repository}?color=21bb42&label=%F0%9F%93%A6%20npm\" /></a>`,\n\t\t\t/npm.*v/i,\n\t\t],\n\t\t[\n\t\t\t`<img alt=\"💪 TypeScript: Strict\" src=\"https://img.shields.io/badge/%F0%9F%92%AA_typescript-strict-21bb42.svg\" />`,\n\t\t\t/typescript.*strict/i,\n\t\t],\n\t] as const) {\n\t\tconst existingMatch = existingBadges.find((existingLine) =>\n\t\t\texistingMatcher.test(existingLine),\n\t\t);\n\n\t\tif (existingMatch) {\n\t\t\tremainingExistingBadges.delete(existingMatch);\n\t\t}\n\n\t\tif (badgeLine) {\n\t\t\tbadges.push(badgeLine);\n\t\t}\n\t}\n\n\treturn `<h1 align=\"center\">${options.title}</h1>\n\n<p align=\"center\">${options.description}</p>\n\n<p align=\"center\">\n${[...badges, ...remainingExistingBadges]\n\t.map((badge) => `\\t${badge}`)\n\t.join(\"\\n\")}\n</p>${\n\t\toptions.logo\n\t\t\t? `\n\n<img align=\"right\" alt=\"${options.logo.alt}\" src=\"${options.logo.src}\">\n\n`\n\t\t\t: \"\"\n\t}${\n\t\toptions.mode === \"migrate\"\n\t\t\t? \"\"\n\t\t\t: `\n\n## Usage\n\n\\`\\`\\`shell\nnpm i ${options.repository}\n\\`\\`\\`\n\\`\\`\\`ts\nimport { greet } from \"${options.repository}\";\n\ngreet(\"Hello, world! 💖\");\n\\`\\`\\``\n\t}`;\n}\n"],"mappings":"AAEO,SAAS,mBAAmB,SAAkB,gBAA0B;AAC9E,QAAM,0BAA0B,IAAI,IAAI,cAAc;AACtD,QAAM,SAAmB,CAAC;AAE1B,aAAW,CAAC,WAAW,eAAe,KAAK;AAAA,IAC1C;AAAA,MACC,CAAC,QAAQ,0BACR;AAAA;AAAA;AAAA;AAAA;AAAA,MAKD;AAAA,IACD;AAAA,IACA;AAAA,MACC,+BAA+B,QAAQ,KAAK,IAAI,QAAQ,UAAU;AAAA,MAClE;AAAA,IACD;AAAA,IACA;AAAA,MACC,CAAC,QAAQ,gBACR,kCAAkC,QAAQ,KAAK,IAAI,QAAQ,UAAU,gGAAyF,QAAQ,KAAK,IAAI,QAAQ,UAAU;AAAA,MAClM;AAAA,IACD;AAAA,IACA;AAAA,MACC,+BAA+B,QAAQ,KAAK,IAAI,QAAQ,UAAU;AAAA,MAClE;AAAA,IACD;AAAA,IACA;AAAA,MACC,qCAAqC,QAAQ,UAAU,wEAAiE,QAAQ,UAAU;AAAA,MAC1I;AAAA,IACD;AAAA,IACA;AAAA,MACC;AAAA,MACA;AAAA,IACD;AAAA,EACD,GAAY;AACX,UAAM,gBAAgB,eAAe;AAAA,MAAK,CAAC,iBAC1C,gBAAgB,KAAK,YAAY;AAAA,IAClC;AAEA,QAAI,eAAe;AAClB,8BAAwB,OAAO,aAAa;AAAA,IAC7C;AAEA,QAAI,WAAW;AACd,aAAO,KAAK,SAAS;AAAA,IACtB;AAAA,EACD;AAEA,SAAO,sBAAsB,QAAQ,KAAK;AAAA;AAAA,oBAEvB,QAAQ,WAAW;AAAA;AAAA;AAAA,EAGrC,CAAC,GAAG,QAAQ,GAAG,uBAAuB,EACtC,IAAI,CAAC,UAAU,IAAK,KAAK,EAAE,EAC3B,KAAK,IAAI,CAAC;AAAA,MAEV,QAAQ,OACL;AAAA;AAAA,0BAEqB,QAAQ,KAAK,GAAG,UAAU,QAAQ,KAAK,GAAG;AAAA;AAAA,IAG/D,EACJ,GACC,QAAQ,SAAS,YACd,KACA;AAAA;AAAA;AAAA;AAAA;AAAA,QAKG,QAAQ,UAAU;AAAA;AAAA;AAAA,yBAGD,QAAQ,UAAU;AAAA;AAAA;AAAA,OAI1C;AACD;","names":[]}
@@ -1,7 +0,0 @@
1
- import { Options } from '../../shared/types.js';
2
- import 'zod';
3
- import '../../shared/codes.js';
4
-
5
- declare function writeReadme(options: Options): Promise<void>;
6
-
7
- export { writeReadme };
@@ -1,57 +0,0 @@
1
- import * as fs from "node:fs/promises";
2
- import { readFileSafe } from "../../shared/readFileSafe.js";
3
- import { endOfReadmeMatcher, endOfReadmeNotice } from "../updateReadme.js";
4
- import { findExistingBadges } from "./findExistingBadges.js";
5
- import { findIntroSectionClose } from "./findIntroSectionClose.js";
6
- import { generateTopContent } from "./generateTopContent.js";
7
- const contributorsIndicator = `<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->`;
8
- async function writeReadme(options) {
9
- const allContributorsContent = !options.excludeAllContributors && generateAllContributorsContent(options);
10
- let contents = await readFileSafe("README.md", "");
11
- if (!contents) {
12
- await fs.writeFile(
13
- "README.md",
14
- [
15
- generateTopContent(options, []),
16
- allContributorsContent,
17
- endOfReadmeNotice.slice(1)
18
- ].filter(Boolean).join("\n\n")
19
- );
20
- return;
21
- }
22
- const endOfIntroSection = findIntroSectionClose(contents);
23
- contents = [
24
- generateTopContent(options, findExistingBadges(contents)),
25
- contents.slice(endOfIntroSection)
26
- ].join("").replace(/\[!\[.+\]\(.+\)\]\(.+\)/g, "").replace(/!\[.+\]\(.+\)/g, "").replaceAll("\r", "").replaceAll("\n\n\n", "\n\n");
27
- if (allContributorsContent && !contents.includes(contributorsIndicator)) {
28
- contents = [contents, allContributorsContent].join("\n\n");
29
- }
30
- if (!endOfReadmeMatcher.test(contents)) {
31
- contents = [contents, endOfReadmeNotice].join("\n");
32
- }
33
- await fs.writeFile("README.md", contents);
34
- }
35
- function generateAllContributorsContent(options) {
36
- return [
37
- `## Contributors`,
38
- ``,
39
- `<!-- spellchecker: disable -->`,
40
- contributorsIndicator,
41
- `<!-- prettier-ignore-start -->`,
42
- !options.excludeLintMd && `<!-- markdownlint-disable -->`,
43
- `<table>`,
44
- `<!-- (this will be filled in by all-contributors) -->`,
45
- `</table>`,
46
- ``,
47
- !options.excludeLintMd && `<!-- markdownlint-restore -->`,
48
- `<!-- prettier-ignore-end -->`,
49
- ``,
50
- `<!-- ALL-CONTRIBUTORS-LIST:END -->`,
51
- `<!-- spellchecker: enable -->`
52
- ].filter(Boolean).join("\n");
53
- }
54
- export {
55
- writeReadme
56
- };
57
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/steps/writeReadme/index.ts"],"sourcesContent":["import * as fs from \"node:fs/promises\";\n\nimport { readFileSafe } from \"../../shared/readFileSafe.js\";\nimport { Options } from \"../../shared/types.js\";\nimport { endOfReadmeMatcher, endOfReadmeNotice } from \"../updateReadme.js\";\nimport { findExistingBadges } from \"./findExistingBadges.js\";\nimport { findIntroSectionClose } from \"./findIntroSectionClose.js\";\nimport { generateTopContent } from \"./generateTopContent.js\";\n\nconst contributorsIndicator = `<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->`;\n\nexport async function writeReadme(options: Options) {\n\tconst allContributorsContent =\n\t\t!options.excludeAllContributors && generateAllContributorsContent(options);\n\tlet contents = await readFileSafe(\"README.md\", \"\");\n\tif (!contents) {\n\t\tawait fs.writeFile(\n\t\t\t\"README.md\",\n\t\t\t[\n\t\t\t\tgenerateTopContent(options, []),\n\t\t\t\tallContributorsContent,\n\t\t\t\tendOfReadmeNotice.slice(1),\n\t\t\t]\n\t\t\t\t.filter(Boolean)\n\t\t\t\t.join(\"\\n\\n\"),\n\t\t);\n\t\treturn;\n\t}\n\n\tconst endOfIntroSection = findIntroSectionClose(contents);\n\n\tcontents = [\n\t\tgenerateTopContent(options, findExistingBadges(contents)),\n\t\tcontents.slice(endOfIntroSection),\n\t]\n\t\t.join(\"\")\n\t\t.replace(/\\[!\\[.+\\]\\(.+\\)\\]\\(.+\\)/g, \"\")\n\t\t.replace(/!\\[.+\\]\\(.+\\)/g, \"\")\n\t\t.replaceAll(\"\\r\", \"\")\n\t\t.replaceAll(\"\\n\\n\\n\", \"\\n\\n\");\n\n\tif (allContributorsContent && !contents.includes(contributorsIndicator)) {\n\t\tcontents = [contents, allContributorsContent].join(\"\\n\\n\");\n\t}\n\n\tif (!endOfReadmeMatcher.test(contents)) {\n\t\tcontents = [contents, endOfReadmeNotice].join(\"\\n\");\n\t}\n\n\tawait fs.writeFile(\"README.md\", contents);\n}\n\nfunction generateAllContributorsContent(options: Options) {\n\treturn [\n\t\t`## Contributors`,\n\t\t``,\n\t\t`<!-- spellchecker: disable -->`,\n\t\tcontributorsIndicator,\n\t\t`<!-- prettier-ignore-start -->`,\n\t\t!options.excludeLintMd && `<!-- markdownlint-disable -->`,\n\t\t`<table>`,\n\t\t`<!-- (this will be filled in by all-contributors) -->`,\n\t\t`</table>`,\n\t\t``,\n\t\t!options.excludeLintMd && `<!-- markdownlint-restore -->`,\n\t\t`<!-- prettier-ignore-end -->`,\n\t\t``,\n\t\t`<!-- ALL-CONTRIBUTORS-LIST:END -->`,\n\t\t`<!-- spellchecker: enable -->`,\n\t]\n\t\t.filter(Boolean)\n\t\t.join(\"\\n\");\n}\n"],"mappings":"AAAA,YAAY,QAAQ;AAEpB,SAAS,oBAAoB;AAE7B,SAAS,oBAAoB,yBAAyB;AACtD,SAAS,0BAA0B;AACnC,SAAS,6BAA6B;AACtC,SAAS,0BAA0B;AAEnC,MAAM,wBAAwB;AAE9B,eAAsB,YAAY,SAAkB;AACnD,QAAM,yBACL,CAAC,QAAQ,0BAA0B,+BAA+B,OAAO;AAC1E,MAAI,WAAW,MAAM,aAAa,aAAa,EAAE;AACjD,MAAI,CAAC,UAAU;AACd,UAAM,GAAG;AAAA,MACR;AAAA,MACA;AAAA,QACC,mBAAmB,SAAS,CAAC,CAAC;AAAA,QAC9B;AAAA,QACA,kBAAkB,MAAM,CAAC;AAAA,MAC1B,EACE,OAAO,OAAO,EACd,KAAK,MAAM;AAAA,IACd;AACA;AAAA,EACD;AAEA,QAAM,oBAAoB,sBAAsB,QAAQ;AAExD,aAAW;AAAA,IACV,mBAAmB,SAAS,mBAAmB,QAAQ,CAAC;AAAA,IACxD,SAAS,MAAM,iBAAiB;AAAA,EACjC,EACE,KAAK,EAAE,EACP,QAAQ,4BAA4B,EAAE,EACtC,QAAQ,kBAAkB,EAAE,EAC5B,WAAW,MAAM,EAAE,EACnB,WAAW,UAAU,MAAM;AAE7B,MAAI,0BAA0B,CAAC,SAAS,SAAS,qBAAqB,GAAG;AACxE,eAAW,CAAC,UAAU,sBAAsB,EAAE,KAAK,MAAM;AAAA,EAC1D;AAEA,MAAI,CAAC,mBAAmB,KAAK,QAAQ,GAAG;AACvC,eAAW,CAAC,UAAU,iBAAiB,EAAE,KAAK,IAAI;AAAA,EACnD;AAEA,QAAM,GAAG,UAAU,aAAa,QAAQ;AACzC;AAEA,SAAS,+BAA+B,SAAkB;AACzD,SAAO;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,CAAC,QAAQ,iBAAiB;AAAA,IAC1B;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,CAAC,QAAQ,iBAAiB;AAAA,IAC1B;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD,EACE,OAAO,OAAO,EACd,KAAK,IAAI;AACZ;","names":[]}
@@ -1,7 +0,0 @@
1
- import { Options } from '../../../shared/types.js';
2
- import 'zod';
3
- import '../../../shared/codes.js';
4
-
5
- declare function createCSpellConfig(options: Pick<Options, "excludeAllContributors" | "excludeLintMd" | "excludeReleases" | "excludeRenovate" | "excludeTemplatedBy" | "excludeTests">): Promise<string>;
6
-
7
- export { createCSpellConfig };
@@ -1,27 +0,0 @@
1
- import { formatJson } from "./formatters/formatJson.js";
2
- async function createCSpellConfig(options) {
3
- const words = [
4
- "tseslint",
5
- !options.excludeReleases && "apexskier",
6
- !options.excludeRenovate && "automerge",
7
- !options.excludeLintMd && "markdownlintignore",
8
- !options.excludeTemplatedBy && "joshuakgoldberg"
9
- ].filter(Boolean).sort();
10
- return await formatJson({
11
- dictionaries: ["npm", "node", "typescript"],
12
- ignorePaths: [
13
- ...options.excludeAllContributors ? [] : [".all-contributorsrc"],
14
- ".github",
15
- "CHANGELOG.md",
16
- ...options.excludeTests ? [] : ["coverage"],
17
- "lib",
18
- "node_modules",
19
- "pnpm-lock.yaml"
20
- ],
21
- words
22
- });
23
- }
24
- export {
25
- createCSpellConfig
26
- };
27
- //# sourceMappingURL=createCSpellConfig.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/steps/writing/creation/createCSpellConfig.ts"],"sourcesContent":["import { Options } from \"../../../shared/types.js\";\nimport { formatJson } from \"./formatters/formatJson.js\";\n\nexport async function createCSpellConfig(\n\toptions: Pick<\n\t\tOptions,\n\t\t| \"excludeAllContributors\"\n\t\t| \"excludeLintMd\"\n\t\t| \"excludeReleases\"\n\t\t| \"excludeRenovate\"\n\t\t| \"excludeTemplatedBy\"\n\t\t| \"excludeTests\"\n\t>,\n) {\n\tconst words = [\n\t\t\"tseslint\",\n\t\t!options.excludeReleases && \"apexskier\",\n\t\t!options.excludeRenovate && \"automerge\",\n\t\t!options.excludeLintMd && \"markdownlintignore\",\n\t\t!options.excludeTemplatedBy && \"joshuakgoldberg\",\n\t]\n\t\t.filter(Boolean)\n\t\t.sort();\n\n\treturn await formatJson({\n\t\tdictionaries: [\"npm\", \"node\", \"typescript\"],\n\t\tignorePaths: [\n\t\t\t...(options.excludeAllContributors ? [] : [\".all-contributorsrc\"]),\n\t\t\t\".github\",\n\t\t\t\"CHANGELOG.md\",\n\t\t\t...(options.excludeTests ? [] : [\"coverage\"]),\n\t\t\t\"lib\",\n\t\t\t\"node_modules\",\n\t\t\t\"pnpm-lock.yaml\",\n\t\t],\n\t\twords,\n\t});\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,eAAsB,mBACrB,SASC;AACD,QAAM,QAAQ;AAAA,IACb;AAAA,IACA,CAAC,QAAQ,mBAAmB;AAAA,IAC5B,CAAC,QAAQ,mBAAmB;AAAA,IAC5B,CAAC,QAAQ,iBAAiB;AAAA,IAC1B,CAAC,QAAQ,sBAAsB;AAAA,EAChC,EACE,OAAO,OAAO,EACd,KAAK;AAEP,SAAO,MAAM,WAAW;AAAA,IACvB,cAAc,CAAC,OAAO,QAAQ,YAAY;AAAA,IAC1C,aAAa;AAAA,MACZ,GAAI,QAAQ,yBAAyB,CAAC,IAAI,CAAC,qBAAqB;AAAA,MAChE;AAAA,MACA;AAAA,MACA,GAAI,QAAQ,eAAe,CAAC,IAAI,CAAC,UAAU;AAAA,MAC3C;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,IACA;AAAA,EACD,CAAC;AACF;","names":[]}
@@ -1,7 +0,0 @@
1
- import { Options } from '../../../shared/types.js';
2
- import 'zod';
3
- import '../../../shared/codes.js';
4
-
5
- declare function createDotGitignore(options: Pick<Options, "excludeTests">): string;
6
-
7
- export { createDotGitignore };
@@ -1,14 +0,0 @@
1
- import { formatIgnoreFile } from "./formatters/formatIgnoreFile.js";
2
- function createDotGitignore(options) {
3
- return formatIgnoreFile(
4
- [
5
- ...options.excludeTests ? [] : ["/coverage"],
6
- "/lib",
7
- "/node_modules"
8
- ].sort()
9
- );
10
- }
11
- export {
12
- createDotGitignore
13
- };
14
- //# sourceMappingURL=createDotGitignore.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/steps/writing/creation/createDotGitignore.ts"],"sourcesContent":["import { Options } from \"../../../shared/types.js\";\nimport { formatIgnoreFile } from \"./formatters/formatIgnoreFile.js\";\n\nexport function createDotGitignore(options: Pick<Options, \"excludeTests\">) {\n\treturn formatIgnoreFile(\n\t\t[\n\t\t\t...(options.excludeTests ? [] : [\"/coverage\"]),\n\t\t\t\"/lib\",\n\t\t\t\"/node_modules\",\n\t\t].sort(),\n\t);\n}\n"],"mappings":"AACA,SAAS,wBAAwB;AAE1B,SAAS,mBAAmB,SAAwC;AAC1E,SAAO;AAAA,IACN;AAAA,MACC,GAAI,QAAQ,eAAe,CAAC,IAAI,CAAC,WAAW;AAAA,MAC5C;AAAA,MACA;AAAA,IACD,EAAE,KAAK;AAAA,EACR;AACD;","names":[]}
@@ -1,7 +0,0 @@
1
- import { Options } from '../../../shared/types.js';
2
- import 'zod';
3
- import '../../../shared/codes.js';
4
-
5
- declare function createESLintConfig(options: Options): Promise<string>;
6
-
7
- export { createESLintConfig };
@@ -1,105 +0,0 @@
1
- import { formatTypeScript } from "./formatters/formatTypeScript.js";
2
- async function createESLintConfig(options) {
3
- const tseslintBase = options.excludeLintStrict ? "recommended" : "strict";
4
- const imports = [
5
- !options.excludeLintESLint && `import comments from "@eslint-community/eslint-plugin-eslint-comments/configs";`,
6
- `import eslint from "@eslint/js";`,
7
- !options.excludeTests && `import vitest from "@vitest/eslint-plugin";`,
8
- !options.excludeLintJSDoc && `import jsdoc from "eslint-plugin-jsdoc";`,
9
- !options.excludeLintJson && `import jsonc from "eslint-plugin-jsonc";`,
10
- !options.excludeLintMd && `import markdown from "eslint-plugin-markdown";`,
11
- `import n from "eslint-plugin-n";`,
12
- !options.excludeLintPackageJson && `import packageJson from "eslint-plugin-package-json/configs/recommended";`,
13
- !options.excludeLintPerfectionist && `import perfectionist from "eslint-plugin-perfectionist";`,
14
- !options.excludeLintRegexp && `import * as regexp from "eslint-plugin-regexp";`,
15
- !options.excludeLintYml && `import yml from "eslint-plugin-yml";`,
16
- `import tseslint from "typescript-eslint";`
17
- ].filter(Boolean);
18
- const elements = [
19
- `eslint.configs.recommended,`,
20
- !options.excludeLintESLint && ` comments.recommended,`,
21
- !options.excludeLintJSDoc && ` jsdoc.configs["flat/contents-typescript-error"],
22
- jsdoc.configs["flat/logical-typescript-error"],
23
- jsdoc.configs["flat/stylistic-typescript-error"],`,
24
- !options.excludeLintJson && ` jsonc.configs["flat/recommended-with-json"],`,
25
- !options.excludeLintMd && ` markdown.configs.recommended,`,
26
- ` n.configs["flat/recommended"],`,
27
- !options.excludeLintPackageJson && ` packageJson,`,
28
- !options.excludeLintPerfectionist && ` perfectionist.configs["recommended-natural"],`,
29
- !options.excludeLintRegexp && ` regexp.configs["flat/recommended"],`
30
- ].filter(Boolean);
31
- const ignores = [
32
- ...options.excludeTests ? [] : ["**/*.snap", "coverage"],
33
- "lib",
34
- "node_modules",
35
- "pnpm-lock.yaml"
36
- ].map((ignore) => JSON.stringify(ignore)).sort();
37
- const rules = !options.excludeLintStylistic && `{
38
- // Stylistic concerns that don't interfere with Prettier
39
- "logical-assignment-operators": [
40
- "error",
41
- "always",
42
- { enforceForIfStatements: true },
43
- ],
44
- "no-useless-rename": "error",
45
- "object-shorthand": "error",
46
- "operator-assignment": "error",
47
- }`;
48
- return await formatTypeScript(`${imports.join("\n")}
49
-
50
- export default tseslint.config(
51
- { ignores: [${ignores.join(", ")}], },
52
- { linterOptions: { reportUnusedDisableDirectives: "error" } },
53
- ${elements.join("\n")}
54
- {
55
- extends: ${options.excludeLintStylistic ? `tseslint.configs.${tseslintBase}TypeChecked` : `[
56
- tseslint.configs.${tseslintBase}TypeChecked,
57
- tseslint.configs.stylisticTypeChecked,
58
- ]`},
59
- files: ["**/*.js", "**/*.ts"],
60
- languageOptions: {
61
- parserOptions: {
62
- projectService: { allowDefaultProject: ["*.config.*s"] },
63
- tsconfigRootDir: import.meta.dirname
64
- },
65
- },${rules ? `
66
- rules: ${rules},` : ""}${options.excludeLintPerfectionist ? "" : `
67
- settings: { perfectionist: { partitionByComment: true, type: "natural" } },`}
68
- },
69
- {
70
- extends: [tseslint.configs.disableTypeChecked],
71
- files: ["**/*.md/*.ts"],
72
- rules: {
73
- "n/no-missing-import": [
74
- "error",
75
- { allowModules: ["${options.repository}"] },
76
- ],
77
- },
78
- },${options.excludeTests ? "" : `
79
- {
80
- extends: [vitest.configs.recommended],
81
- files: ["**/*.test.*"],
82
- rules: { "@typescript-eslint/no-unsafe-assignment": "off" },
83
- },`}${options.excludeLintYml ? "" : `
84
- {
85
- extends: [yml.configs["flat/recommended"], yml.configs["flat/prettier"]],
86
- files: ["**/*.{yml,yaml}"],
87
- rules: {
88
- "yml/file-extension": ["error", { extension: "yml" }],
89
- "yml/sort-keys": [
90
- "error",
91
- { order: { type: "asc" }, pathPattern: "^.*$" },
92
- ],
93
- "yml/sort-sequence-values": [
94
- "error",
95
- { order: { type: "asc" }, pathPattern: "^.*$" },
96
- ],
97
- },
98
- },`}
99
- );
100
- `);
101
- }
102
- export {
103
- createESLintConfig
104
- };
105
- //# sourceMappingURL=createESLintConfig.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/steps/writing/creation/createESLintConfig.ts"],"sourcesContent":["import { Options } from \"../../../shared/types.js\";\nimport { formatTypeScript } from \"./formatters/formatTypeScript.js\";\n\nexport async function createESLintConfig(options: Options) {\n\tconst tseslintBase = options.excludeLintStrict ? \"recommended\" : \"strict\";\n\n\tconst imports = [\n\t\t!options.excludeLintESLint &&\n\t\t\t`import comments from \"@eslint-community/eslint-plugin-eslint-comments/configs\";`,\n\t\t`import eslint from \"@eslint/js\";`,\n\t\t!options.excludeTests && `import vitest from \"@vitest/eslint-plugin\";`,\n\t\t!options.excludeLintJSDoc && `import jsdoc from \"eslint-plugin-jsdoc\";`,\n\t\t!options.excludeLintJson && `import jsonc from \"eslint-plugin-jsonc\";`,\n\t\t!options.excludeLintMd && `import markdown from \"eslint-plugin-markdown\";`,\n\t\t`import n from \"eslint-plugin-n\";`,\n\t\t!options.excludeLintPackageJson &&\n\t\t\t`import packageJson from \"eslint-plugin-package-json/configs/recommended\";`,\n\t\t!options.excludeLintPerfectionist &&\n\t\t\t`import perfectionist from \"eslint-plugin-perfectionist\";`,\n\t\t!options.excludeLintRegexp &&\n\t\t\t`import * as regexp from \"eslint-plugin-regexp\";`,\n\t\t!options.excludeLintYml && `import yml from \"eslint-plugin-yml\";`,\n\t\t`import tseslint from \"typescript-eslint\";`,\n\t].filter(Boolean);\n\n\tconst elements = [\n\t\t`eslint.configs.recommended,`,\n\t\t!options.excludeLintESLint && `\tcomments.recommended,`,\n\t\t!options.excludeLintJSDoc &&\n\t\t\t`\tjsdoc.configs[\"flat/contents-typescript-error\"],\n\t\tjsdoc.configs[\"flat/logical-typescript-error\"],\n\t\tjsdoc.configs[\"flat/stylistic-typescript-error\"],`,\n\t\t!options.excludeLintJson && `\tjsonc.configs[\"flat/recommended-with-json\"],`,\n\t\t!options.excludeLintMd && `\tmarkdown.configs.recommended,`,\n\t\t`\tn.configs[\"flat/recommended\"],`,\n\t\t!options.excludeLintPackageJson && `\tpackageJson,`,\n\t\t!options.excludeLintPerfectionist &&\n\t\t\t`\tperfectionist.configs[\"recommended-natural\"],`,\n\t\t!options.excludeLintRegexp && `\tregexp.configs[\"flat/recommended\"],`,\n\t].filter(Boolean);\n\n\tconst ignores = [\n\t\t...(options.excludeTests ? [] : [\"**/*.snap\", \"coverage\"]),\n\t\t\"lib\",\n\t\t\"node_modules\",\n\t\t\"pnpm-lock.yaml\",\n\t]\n\t\t.map((ignore) => JSON.stringify(ignore))\n\t\t.sort();\n\n\tconst rules =\n\t\t!options.excludeLintStylistic &&\n\t\t`{\n\t\t\t// Stylistic concerns that don't interfere with Prettier\n\t\t\t\"logical-assignment-operators\": [\n\t\t\t\t\"error\",\n\t\t\t\t\"always\",\n\t\t\t\t{ enforceForIfStatements: true },\n\t\t\t],\n\t\t\t\"no-useless-rename\": \"error\",\n\t\t\t\"object-shorthand\": \"error\",\n\t\t\t\"operator-assignment\": \"error\",\n\t\t}`;\n\n\treturn await formatTypeScript(`${imports.join(\"\\n\")}\n\nexport default tseslint.config(\n\t{ ignores: [${ignores.join(\", \")}], },\n\t{ linterOptions: { reportUnusedDisableDirectives: \"error\" } },\n\t${elements.join(\"\\n\")}\n\t{\n\t\textends: ${\n\t\t\toptions.excludeLintStylistic\n\t\t\t\t? `tseslint.configs.${tseslintBase}TypeChecked`\n\t\t\t\t: `[\n\t\t\ttseslint.configs.${tseslintBase}TypeChecked,\n\t\t\ttseslint.configs.stylisticTypeChecked,\n\t\t]`\n\t\t},\n\t\tfiles: [\"**/*.js\", \"**/*.ts\"],\n\t\tlanguageOptions: {\n\t\t\tparserOptions: {\n\t\t\t\tprojectService: { allowDefaultProject: [\"*.config.*s\"] },\n\t\t\t\ttsconfigRootDir: import.meta.dirname\n\t\t\t},\n\t\t},${\n\t\t\trules\n\t\t\t\t? `\n\t\trules: ${rules},`\n\t\t\t\t: \"\"\n\t\t}${\n\t\t\toptions.excludeLintPerfectionist\n\t\t\t\t? \"\"\n\t\t\t\t: `\n\t\tsettings: { perfectionist: { partitionByComment: true, type: \"natural\" } },`\n\t\t}\n\t},\n\t{\n\t\textends: [tseslint.configs.disableTypeChecked],\n\t\tfiles: [\"**/*.md/*.ts\"],\n\t\trules: {\n\t\t\t\"n/no-missing-import\": [\n\t\t\t\t\"error\",\n\t\t\t\t{ allowModules: [\"${options.repository}\"] },\n\t\t\t],\n\t\t},\n\t},${\n\t\toptions.excludeTests\n\t\t\t? \"\"\n\t\t\t: `\n\t{\n\t\textends: [vitest.configs.recommended],\n\t\tfiles: [\"**/*.test.*\"],\n\t\trules: { \"@typescript-eslint/no-unsafe-assignment\": \"off\" },\n\t},`\n\t}${\n\t\toptions.excludeLintYml\n\t\t\t? \"\"\n\t\t\t: `\n\t{\n\t\textends: [yml.configs[\"flat/recommended\"], yml.configs[\"flat/prettier\"]],\n\t\tfiles: [\"**/*.{yml,yaml}\"],\n\t\trules: {\n\t\t\t\"yml/file-extension\": [\"error\", { extension: \"yml\" }],\n\t\t\t\"yml/sort-keys\": [\n\t\t\t\t\"error\",\n\t\t\t\t{ order: { type: \"asc\" }, pathPattern: \"^.*$\" },\n\t\t\t],\n\t\t\t\"yml/sort-sequence-values\": [\n\t\t\t\t\"error\",\n\t\t\t\t{ order: { type: \"asc\" }, pathPattern: \"^.*$\" },\n\t\t\t],\n\t\t},\n\t},`\n\t}\n);\n`);\n}\n"],"mappings":"AACA,SAAS,wBAAwB;AAEjC,eAAsB,mBAAmB,SAAkB;AAC1D,QAAM,eAAe,QAAQ,oBAAoB,gBAAgB;AAEjE,QAAM,UAAU;AAAA,IACf,CAAC,QAAQ,qBACR;AAAA,IACD;AAAA,IACA,CAAC,QAAQ,gBAAgB;AAAA,IACzB,CAAC,QAAQ,oBAAoB;AAAA,IAC7B,CAAC,QAAQ,mBAAmB;AAAA,IAC5B,CAAC,QAAQ,iBAAiB;AAAA,IAC1B;AAAA,IACA,CAAC,QAAQ,0BACR;AAAA,IACD,CAAC,QAAQ,4BACR;AAAA,IACD,CAAC,QAAQ,qBACR;AAAA,IACD,CAAC,QAAQ,kBAAkB;AAAA,IAC3B;AAAA,EACD,EAAE,OAAO,OAAO;AAEhB,QAAM,WAAW;AAAA,IAChB;AAAA,IACA,CAAC,QAAQ,qBAAqB;AAAA,IAC9B,CAAC,QAAQ,oBACR;AAAA;AAAA;AAAA,IAGD,CAAC,QAAQ,mBAAmB;AAAA,IAC5B,CAAC,QAAQ,iBAAiB;AAAA,IAC1B;AAAA,IACA,CAAC,QAAQ,0BAA0B;AAAA,IACnC,CAAC,QAAQ,4BACR;AAAA,IACD,CAAC,QAAQ,qBAAqB;AAAA,EAC/B,EAAE,OAAO,OAAO;AAEhB,QAAM,UAAU;AAAA,IACf,GAAI,QAAQ,eAAe,CAAC,IAAI,CAAC,aAAa,UAAU;AAAA,IACxD;AAAA,IACA;AAAA,IACA;AAAA,EACD,EACE,IAAI,CAAC,WAAW,KAAK,UAAU,MAAM,CAAC,EACtC,KAAK;AAEP,QAAM,QACL,CAAC,QAAQ,wBACT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYD,SAAO,MAAM,iBAAiB,GAAG,QAAQ,KAAK,IAAI,CAAC;AAAA;AAAA;AAAA,eAGrC,QAAQ,KAAK,IAAI,CAAC;AAAA;AAAA,GAE9B,SAAS,KAAK,IAAI,CAAC;AAAA;AAAA,aAGnB,QAAQ,uBACL,oBAAoB,YAAY,gBAChC;AAAA,sBACgB,YAAY;AAAA;AAAA,IAGhC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQC,QACG;AAAA,WACK,KAAK,MACV,EACJ,GACC,QAAQ,2BACL,KACA;AAAA,8EAEJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAQsB,QAAQ,UAAU;AAAA;AAAA;AAAA,KAIxC,QAAQ,eACL,KACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMJ,GACC,QAAQ,iBACL,KACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAgBJ;AAAA;AAAA,CAEA;AACD;","names":[]}
@@ -1,3 +0,0 @@
1
- declare function createKnipConfig(): Promise<string>;
2
-
3
- export { createKnipConfig };
@@ -1,20 +0,0 @@
1
- import { readFileSafeAsJson } from "../../../shared/readFileSafeAsJson.js";
2
- import { formatJson } from "./formatters/formatJson.js";
3
- async function createKnipConfig() {
4
- const existingPackageJson = await readFileSafeAsJson(
5
- "./package.json"
6
- );
7
- return await formatJson({
8
- $schema: `https://unpkg.com/knip@${existingPackageJson?.devDependencies?.knip ?? "latest"}/schema.json`,
9
- entry: ["src/index.ts!"],
10
- ignoreExportsUsedInFile: {
11
- interface: true,
12
- type: true
13
- },
14
- project: ["src/**/*.ts!"]
15
- });
16
- }
17
- export {
18
- createKnipConfig
19
- };
20
- //# sourceMappingURL=createKnipConfig.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/steps/writing/creation/createKnipConfig.ts"],"sourcesContent":["import { readFileSafeAsJson } from \"../../../shared/readFileSafeAsJson.js\";\nimport { PartialPackageData } from \"../../../shared/types.js\";\nimport { formatJson } from \"./formatters/formatJson.js\";\n\nexport async function createKnipConfig() {\n\tconst existingPackageJson = (await readFileSafeAsJson(\n\t\t\"./package.json\",\n\t)) as null | PartialPackageData;\n\n\treturn await formatJson({\n\t\t$schema: `https://unpkg.com/knip@${existingPackageJson?.devDependencies?.knip ?? \"latest\"}/schema.json`,\n\t\tentry: [\"src/index.ts!\"],\n\t\tignoreExportsUsedInFile: {\n\t\t\tinterface: true,\n\t\t\ttype: true,\n\t\t},\n\t\tproject: [\"src/**/*.ts!\"],\n\t});\n}\n"],"mappings":"AAAA,SAAS,0BAA0B;AAEnC,SAAS,kBAAkB;AAE3B,eAAsB,mBAAmB;AACxC,QAAM,sBAAuB,MAAM;AAAA,IAClC;AAAA,EACD;AAEA,SAAO,MAAM,WAAW;AAAA,IACvB,SAAS,0BAA0B,qBAAqB,iBAAiB,QAAQ,QAAQ;AAAA,IACzF,OAAO,CAAC,eAAe;AAAA,IACvB,yBAAyB;AAAA,MACxB,WAAW;AAAA,MACX,MAAM;AAAA,IACP;AAAA,IACA,SAAS,CAAC,cAAc;AAAA,EACzB,CAAC;AACF;","names":[]}
@@ -1,7 +0,0 @@
1
- import { Options } from '../../../shared/types.js';
2
- import 'zod';
3
- import '../../../shared/codes.js';
4
-
5
- declare function createTsupConfig(options: Pick<Options, "excludeTests">): Promise<string>;
6
-
7
- export { createTsupConfig };
@@ -1,19 +0,0 @@
1
- import { formatTypeScript } from "./formatters/formatTypeScript.js";
2
- async function createTsupConfig(options) {
3
- return await formatTypeScript(`import { defineConfig } from "tsup";
4
-
5
- export default defineConfig({
6
- bundle: false,
7
- clean: true,
8
- dts: true,
9
- entry: ["src/**/*.ts"${options.excludeTests ? "" : `, "!src/**/*.test.*"`}],
10
- format: "esm",
11
- outDir: "lib",
12
- sourcemap: true,
13
- });
14
- `);
15
- }
16
- export {
17
- createTsupConfig
18
- };
19
- //# sourceMappingURL=createTsupConfig.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/steps/writing/creation/createTsupConfig.ts"],"sourcesContent":["import { Options } from \"../../../shared/types.js\";\nimport { formatTypeScript } from \"./formatters/formatTypeScript.js\";\n\nexport async function createTsupConfig(options: Pick<Options, \"excludeTests\">) {\n\treturn await formatTypeScript(`import { defineConfig } from \"tsup\";\n\nexport default defineConfig({\n\tbundle: false,\n\tclean: true,\n\tdts: true,\n\tentry: [\"src/**/*.ts\"${options.excludeTests ? \"\" : `, \"!src/**/*.test.*\"`}],\n\tformat: \"esm\",\n\toutDir: \"lib\",\n\tsourcemap: true,\n});\n`);\n}\n"],"mappings":"AACA,SAAS,wBAAwB;AAEjC,eAAsB,iBAAiB,SAAwC;AAC9E,SAAO,MAAM,iBAAiB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAMP,QAAQ,eAAe,KAAK,sBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA,CAKzE;AACD;","names":[]}
@@ -1,7 +0,0 @@
1
- declare function createDotGitHubActions(): {
2
- prepare: {
3
- "action.yml": string;
4
- };
5
- };
6
-
7
- export { createDotGitHubActions };
@@ -1,32 +0,0 @@
1
- import jsYaml from "js-yaml";
2
- function createDotGitHubActions() {
3
- return {
4
- prepare: {
5
- "action.yml": jsYaml.dump({
6
- description: "Prepares the repo for a typical CI job",
7
- name: "Prepare",
8
- runs: {
9
- steps: [
10
- {
11
- uses: "pnpm/action-setup@v4",
12
- with: { version: 9 }
13
- },
14
- {
15
- uses: "actions/setup-node@v4",
16
- with: { cache: "pnpm", "node-version": "20" }
17
- },
18
- {
19
- run: "pnpm install --frozen-lockfile",
20
- shell: "bash"
21
- }
22
- ],
23
- using: "composite"
24
- }
25
- }).replaceAll(/\n(\S)/g, "\n\n$1")
26
- }
27
- };
28
- }
29
- export {
30
- createDotGitHubActions
31
- };
32
- //# sourceMappingURL=actions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../../src/steps/writing/creation/dotGitHub/actions.ts"],"sourcesContent":["import jsYaml from \"js-yaml\";\n\nexport function createDotGitHubActions() {\n\treturn {\n\t\tprepare: {\n\t\t\t\"action.yml\": jsYaml\n\t\t\t\t.dump({\n\t\t\t\t\tdescription: \"Prepares the repo for a typical CI job\",\n\t\t\t\t\tname: \"Prepare\",\n\t\t\t\t\truns: {\n\t\t\t\t\t\tsteps: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tuses: \"pnpm/action-setup@v4\",\n\t\t\t\t\t\t\t\twith: { version: 9 },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tuses: \"actions/setup-node@v4\",\n\t\t\t\t\t\t\t\twith: { cache: \"pnpm\", \"node-version\": \"20\" },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\trun: \"pnpm install --frozen-lockfile\",\n\t\t\t\t\t\t\t\tshell: \"bash\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tusing: \"composite\",\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\t.replaceAll(/\\n(\\S)/g, \"\\n\\n$1\"),\n\t\t},\n\t};\n}\n"],"mappings":"AAAA,OAAO,YAAY;AAEZ,SAAS,yBAAyB;AACxC,SAAO;AAAA,IACN,SAAS;AAAA,MACR,cAAc,OACZ,KAAK;AAAA,QACL,aAAa;AAAA,QACb,MAAM;AAAA,QACN,MAAM;AAAA,UACL,OAAO;AAAA,YACN;AAAA,cACC,MAAM;AAAA,cACN,MAAM,EAAE,SAAS,EAAE;AAAA,YACpB;AAAA,YACA;AAAA,cACC,MAAM;AAAA,cACN,MAAM,EAAE,OAAO,QAAQ,gBAAgB,KAAK;AAAA,YAC7C;AAAA,YACA;AAAA,cACC,KAAK;AAAA,cACL,OAAO;AAAA,YACR;AAAA,UACD;AAAA,UACA,OAAO;AAAA,QACR;AAAA,MACD,CAAC,EACA,WAAW,WAAW,QAAQ;AAAA,IACjC;AAAA,EACD;AACD;","names":[]}
@@ -1,7 +0,0 @@
1
- import { Options } from '../../../../../shared/types.js';
2
- import 'zod';
3
- import '../../../../../shared/codes.js';
4
-
5
- declare function createDevelopment(options: Options): Promise<string>;
6
-
7
- export { createDevelopment };
@@ -1,154 +0,0 @@
1
- import { readFileSafe } from "../../../../../shared/readFileSafe.js";
2
- import { splitIntoSections } from "./splitIntoSections.js";
3
- const headingAliases = /* @__PURE__ */ new Map([
4
- ["build", "Building"],
5
- ["builds", "Building"],
6
- ["format", "Formatting"],
7
- ["lint", "Linting"],
8
- ["test", "Testing"],
9
- ["tests", "Testing"]
10
- ]);
11
- async function createDevelopment(options) {
12
- const existingContents = await readFileSafe(".github/DEVELOPMENT.md", "");
13
- const newSections = {
14
- "## Building": `Run [**tsup**](https://tsup.egoist.dev) locally to build source files from \`src/\` into output files in \`lib/\`:
15
-
16
- \`\`\`shell
17
- pnpm build
18
- \`\`\`
19
-
20
- Add \`--watch\` to run the builder in a watch mode that continuously cleans and recreates \`lib/\` as you save files:
21
-
22
- \`\`\`shell
23
- pnpm build --watch
24
- \`\`\``,
25
- ...options.bin && {
26
- "### Built App Debugging": `This repository includes a [VS Code launch configuration](https://code.visualstudio.com/docs/editor/debugging) for debugging.
27
- To debug a \`bin\` app, add a breakpoint to your code, then run _Debug Program_ from the VS Code Debug panel (or press F5).
28
- VS Code will automatically run the \`build\` task in the background before running \`${options.bin}\`.`
29
- },
30
- "## Formatting": `[Prettier](https://prettier.io) is used to format code.
31
- It should be applied automatically when you save files in VS Code or make a Git commit.
32
-
33
- To manually reformat all files, you can run:
34
-
35
- \`\`\`shell
36
- pnpm format --write
37
- \`\`\``,
38
- "## Linting": `${createLintingSection(options)}
39
-
40
- \`\`\`shell
41
- pnpm run lint --fix
42
- \`\`\`
43
-
44
- Note that you'll need to run \`pnpm build\` before \`pnpm lint\` so that lint rules which check the file system can pick up on any built files.`,
45
- ...!options.excludeTests && {
46
- "## Testing": `[Vitest](https://vitest.dev) is used for tests.
47
- You can run it locally on the command-line:
48
-
49
- \`\`\`shell
50
- pnpm run test
51
- \`\`\`
52
-
53
- Add the \`--coverage\` flag to compute test coverage and place reports in the \`coverage/\` directory:
54
-
55
- \`\`\`shell
56
- pnpm run test --coverage
57
- \`\`\`
58
-
59
- Note that [console-fail-test](https://github.com/JoshuaKGoldberg/console-fail-test) is enabled for all test runs.
60
- Calls to \`console.log\`, \`console.warn\`, and other console methods will cause a test to fail.`,
61
- // Debugging tests are intentionally put second
62
- "### Debugging Tests": `This repository includes a [VS Code launch configuration](https://code.visualstudio.com/docs/editor/debugging) for debugging unit tests.
63
- To launch it, open a test file, then run _Debug Current Test File_ from the VS Code Debug panel (or press F5).`
64
- },
65
- "## Type Checking": `You should be able to see suggestions from [TypeScript](https://typescriptlang.org) in your editor for all open files.
66
-
67
- However, it can be useful to run the TypeScript command-line (\`tsc\`) to type check all files in \`src/\`:
68
-
69
- \`\`\`shell
70
- pnpm tsc
71
- \`\`\`
72
-
73
- Add \`--watch\` to keep the type checker running in a watch mode that updates the display as you save files:
74
-
75
- \`\`\`shell
76
- pnpm tsc --watch
77
- \`\`\``
78
- };
79
- const newSectionHeadings = /* @__PURE__ */ new Set([
80
- "Development",
81
- Object.keys(newSections).map((key) => key.replace(/^#* /, ""))
82
- ]);
83
- const existingSectionsSplit = splitIntoSections(existingContents);
84
- const preservedSectionsSplit = existingSectionsSplit.filter(([key]) => {
85
- const keyText = key.replace(/^#* /, "");
86
- return !newSectionHeadings.has(
87
- headingAliases.get(keyText.toLowerCase()) ?? keyText
88
- );
89
- });
90
- const preservedSections = Object.fromEntries(preservedSectionsSplit);
91
- const sectionLines = [];
92
- const seen = /* @__PURE__ */ new Set();
93
- for (const sections of [newSections, preservedSections]) {
94
- for (const heading in sections) {
95
- if (seen.has(heading)) {
96
- continue;
97
- }
98
- seen.add(heading);
99
- const contents = sections[heading];
100
- sectionLines.push("");
101
- sectionLines.push(heading);
102
- sectionLines.push("");
103
- sectionLines.push(contents);
104
- }
105
- }
106
- const result = `# Development
107
- ${options.guide ? `
108
- > If you'd like a more guided walkthrough, see [${options.guide.title}](${options.guide.href}).
109
- > It'll walk you through the common activities you'll need to contribute.
110
- ` : ""}
111
- After [forking the repo from GitHub](https://help.github.com/articles/fork-a-repo) and [installing pnpm](https://pnpm.io/installation):
112
-
113
- \`\`\`shell
114
- git clone https://github.com/<your-name-here>/${options.repository}
115
- cd ${options.repository}
116
- pnpm install
117
- \`\`\`
118
-
119
- > This repository includes a list of suggested VS Code extensions.
120
- > It's a good idea to use [VS Code](https://code.visualstudio.com) and accept its suggestion to install them, as they'll help with development.
121
- ${sectionLines.join("\n")}
122
- `;
123
- return result;
124
- }
125
- function createLintingSection(options) {
126
- const lintLines = [
127
- !options.excludeLintKnip && `- \`pnpm lint:knip\` ([knip](https://github.com/webpro/knip)): Detects unused files, dependencies, and code exports`,
128
- !options.excludeLintMd && `- \`pnpm lint:md\` ([Markdownlint](https://github.com/DavidAnson/markdownlint)): Checks Markdown source files`,
129
- !options.excludeLintPackages && `- \`pnpm lint:packages\` ([pnpm dedupe --check](https://pnpm.io/cli/dedupe)): Checks for unnecessarily duplicated packages in the \`pnpm-lock.yml\` file`,
130
- !options.excludeLintSpelling && `- \`pnpm lint:spelling\` ([cspell](https://cspell.org)): Spell checks across all source files`
131
- ].filter(Boolean);
132
- return lintLines.length ? [
133
- `This package includes several forms of linting to enforce consistent code quality and styling.`,
134
- `Each should be shown in VS Code, and can be run manually on the command-line:`,
135
- ``,
136
- `- \`pnpm lint\` ([ESLint](https://eslint.org) with [typescript-eslint](https://typescript-eslint.io)): Lints JavaScript and TypeScript source files`,
137
- ...lintLines,
138
- ``,
139
- `Read the individual documentation for each linter to understand how it can be configured and used best.`,
140
- ``,
141
- `For example, ESLint can be run with \`--fix\` to auto-fix some lint rule complaints:`
142
- ].join("\n") : `[ESLint](https://eslint.org) is used with with [typescript-eslint](https://typescript-eslint.io)) to lint JavaScript and TypeScript source files.
143
- You can run it locally on the command-line:
144
-
145
- \`\`\`shell
146
- pnpm run lint
147
- \`\`\`
148
-
149
- ESLint can be run with \`--fix\` to auto-fix some lint rule complaints:`;
150
- }
151
- export {
152
- createDevelopment
153
- };
154
- //# sourceMappingURL=index.js.map