create-typescript-app 2.0.0 → 2.3.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 (242) hide show
  1. package/lib/base.d.ts +1 -0
  2. package/lib/base.js +4 -1
  3. package/lib/blocks/blockAllContributors.d.ts +1 -0
  4. package/lib/blocks/blockAllContributors.js +0 -1
  5. package/lib/blocks/blockAreTheTypesWrong.d.ts +1 -0
  6. package/lib/blocks/blockAreTheTypesWrong.js +0 -1
  7. package/lib/blocks/blockCSpell.d.ts +1 -0
  8. package/lib/blocks/blockCSpell.js +0 -1
  9. package/lib/blocks/blockCodecov.d.ts +1 -0
  10. package/lib/blocks/blockCodecov.js +0 -1
  11. package/lib/blocks/blockContributingDocs.d.ts +1 -0
  12. package/lib/blocks/blockContributingDocs.js +0 -1
  13. package/lib/blocks/blockContributorCovenant.d.ts +1 -0
  14. package/lib/blocks/blockContributorCovenant.js +0 -1
  15. package/lib/blocks/blockDevelopmentDocs.d.ts +1 -0
  16. package/lib/blocks/blockDevelopmentDocs.js +0 -1
  17. package/lib/blocks/blockESLint.d.ts +1 -0
  18. package/lib/blocks/blockESLint.js +2 -2
  19. package/lib/blocks/blockESLintComments.d.ts +1 -0
  20. package/lib/blocks/blockESLintComments.js +0 -1
  21. package/lib/blocks/blockESLintJSDoc.d.ts +1 -0
  22. package/lib/blocks/blockESLintJSDoc.js +0 -1
  23. package/lib/blocks/blockESLintJSONC.d.ts +1 -0
  24. package/lib/blocks/blockESLintJSONC.js +0 -1
  25. package/lib/blocks/blockESLintMarkdown.d.ts +1 -0
  26. package/lib/blocks/blockESLintMarkdown.js +0 -1
  27. package/lib/blocks/blockESLintMoreStyling.d.ts +1 -0
  28. package/lib/blocks/blockESLintMoreStyling.js +0 -1
  29. package/lib/blocks/blockESLintNode.d.ts +1 -0
  30. package/lib/blocks/blockESLintNode.js +0 -1
  31. package/lib/blocks/blockESLintPackageJson.d.ts +1 -0
  32. package/lib/blocks/blockESLintPackageJson.js +0 -1
  33. package/lib/blocks/blockESLintPerfectionist.d.ts +1 -0
  34. package/lib/blocks/blockESLintPerfectionist.js +0 -1
  35. package/lib/blocks/blockESLintRegexp.d.ts +1 -0
  36. package/lib/blocks/blockESLintRegexp.js +0 -1
  37. package/lib/blocks/blockESLintYML.d.ts +1 -0
  38. package/lib/blocks/blockESLintYML.js +0 -1
  39. package/lib/blocks/blockExampleFiles.d.ts +1 -0
  40. package/lib/blocks/blockExampleFiles.js +0 -1
  41. package/lib/blocks/blockFunding.d.ts +1 -0
  42. package/lib/blocks/blockFunding.js +0 -1
  43. package/lib/blocks/blockGitHubActionsCI.d.ts +1 -0
  44. package/lib/blocks/blockGitHubActionsCI.js +1 -3
  45. package/lib/blocks/blockGitHubApps.d.ts +1 -0
  46. package/lib/blocks/blockGitHubApps.js +0 -1
  47. package/lib/blocks/blockGitHubIssueTemplates.d.ts +1 -0
  48. package/lib/blocks/blockGitHubIssueTemplates.js +0 -1
  49. package/lib/blocks/blockGitHubPRTemplate.d.ts +1 -0
  50. package/lib/blocks/blockGitHubPRTemplate.js +0 -1
  51. package/lib/blocks/blockGitignore.d.ts +1 -0
  52. package/lib/blocks/blockGitignore.js +0 -1
  53. package/lib/blocks/blockKnip.d.ts +1 -0
  54. package/lib/blocks/blockKnip.js +0 -1
  55. package/lib/blocks/blockMITLicense.d.ts +1 -0
  56. package/lib/blocks/blockMITLicense.js +0 -1
  57. package/lib/blocks/blockMarkdownlint.d.ts +1 -0
  58. package/lib/blocks/blockMarkdownlint.js +0 -1
  59. package/lib/blocks/blockNvmrc.d.ts +1 -0
  60. package/lib/blocks/blockNvmrc.js +0 -1
  61. package/lib/blocks/blockPRCompliance.d.ts +1 -0
  62. package/lib/blocks/blockPRCompliance.js +0 -1
  63. package/lib/blocks/blockPackageJson.d.ts +1 -0
  64. package/lib/blocks/blockPackageJson.js +3 -1
  65. package/lib/blocks/blockPnpmDedupe.d.ts +1 -0
  66. package/lib/blocks/blockPnpmDedupe.js +0 -1
  67. package/lib/blocks/blockPrettier.d.ts +1 -0
  68. package/lib/blocks/blockPrettier.js +0 -1
  69. package/lib/blocks/blockPrettierPluginCurly.d.ts +1 -0
  70. package/lib/blocks/blockPrettierPluginCurly.js +0 -1
  71. package/lib/blocks/blockPrettierPluginPackageJson.d.ts +1 -0
  72. package/lib/blocks/blockPrettierPluginPackageJson.js +0 -1
  73. package/lib/blocks/blockPrettierPluginSh.d.ts +1 -0
  74. package/lib/blocks/blockPrettierPluginSh.js +0 -1
  75. package/lib/blocks/blockREADME.d.ts +1 -0
  76. package/lib/blocks/blockREADME.js +0 -1
  77. package/lib/blocks/blockReleaseIt.d.ts +1 -0
  78. package/lib/blocks/blockReleaseIt.js +0 -1
  79. package/lib/blocks/blockRenovate.d.ts +1 -0
  80. package/lib/blocks/blockRenovate.js +0 -1
  81. package/lib/blocks/blockRepositoryBranchRuleset.d.ts +1 -0
  82. package/lib/blocks/blockRepositoryBranchRuleset.js +0 -1
  83. package/lib/blocks/blockRepositoryLabels.d.ts +1 -0
  84. package/lib/blocks/blockRepositoryLabels.js +0 -1
  85. package/lib/blocks/blockRepositorySecrets.d.ts +1 -0
  86. package/lib/blocks/blockRepositorySecrets.js +0 -1
  87. package/lib/blocks/blockRepositorySettings.d.ts +1 -0
  88. package/lib/blocks/blockRepositorySettings.js +0 -1
  89. package/lib/blocks/blockSecurityDocs.d.ts +1 -0
  90. package/lib/blocks/blockSecurityDocs.js +0 -1
  91. package/lib/blocks/blockTSup.d.ts +1 -0
  92. package/lib/blocks/blockTSup.js +0 -2
  93. package/lib/blocks/blockTemplatedWith.d.ts +1 -0
  94. package/lib/blocks/blockTemplatedWith.js +0 -1
  95. package/lib/blocks/blockTypeScript.d.ts +1 -0
  96. package/lib/blocks/blockTypeScript.js +0 -2
  97. package/lib/blocks/blockVSCode.d.ts +1 -0
  98. package/lib/blocks/blockVSCode.js +0 -1
  99. package/lib/blocks/blockVitest.d.ts +1 -0
  100. package/lib/blocks/blockVitest.js +5 -3
  101. package/lib/blocks/files/createJobName.js +0 -1
  102. package/lib/blocks/files/createMultiWorkflowFile.js +0 -1
  103. package/lib/blocks/files/createSoloWorkflowFile.js +0 -1
  104. package/lib/blocks/files/formatIgnoreFile.js +0 -1
  105. package/lib/blocks/files/formatWorkflowYaml.js +0 -1
  106. package/lib/blocks/files/formatYaml.js +0 -1
  107. package/lib/blocks/index.d.ts +43 -0
  108. package/lib/blocks/index.js +0 -1
  109. package/lib/blocks/options.fakes.js +0 -1
  110. package/lib/blocks/outcomeLabels.js +0 -1
  111. package/lib/blocks/phases.js +0 -1
  112. package/lib/data/contributions.js +0 -1
  113. package/lib/data/packageData.d.ts +11 -3
  114. package/lib/data/packageData.js +0 -1
  115. package/lib/index.d.ts +2 -0
  116. package/lib/index.js +0 -1
  117. package/lib/inputs/inputFromOctokit.js +0 -1
  118. package/lib/options/getUsageFromReadme.js +0 -1
  119. package/lib/options/parsePackageAuthor.js +0 -1
  120. package/lib/options/readAllContributors.js +0 -1
  121. package/lib/options/readDefaultsFromReadme.js +0 -1
  122. package/lib/options/readDescription.js +0 -1
  123. package/lib/options/readDescriptionFromReadme.js +0 -1
  124. package/lib/options/readDocumentation.js +0 -1
  125. package/lib/options/readEmails.js +0 -1
  126. package/lib/options/readFileAsJson.js +0 -1
  127. package/lib/options/readFileSafe.js +0 -1
  128. package/lib/options/readFunding.js +0 -1
  129. package/lib/options/readGitHubEmail.js +0 -1
  130. package/lib/options/readGuide.js +0 -1
  131. package/lib/options/readLogoSizing.js +0 -1
  132. package/lib/options/readPackageData.js +0 -1
  133. package/lib/options/readPnpm.d.ts +5 -0
  134. package/lib/options/readPnpm.js +7 -0
  135. package/lib/presets/common.d.ts +1 -0
  136. package/lib/presets/common.js +0 -1
  137. package/lib/presets/everything.d.ts +1 -0
  138. package/lib/presets/everything.js +0 -1
  139. package/lib/presets/index.d.ts +3 -0
  140. package/lib/presets/index.js +0 -1
  141. package/lib/presets/minimal.d.ts +1 -0
  142. package/lib/presets/minimal.js +0 -1
  143. package/lib/template.d.ts +1 -0
  144. package/lib/template.js +0 -1
  145. package/lib/types.d.ts +1 -0
  146. package/lib/types.js +0 -1
  147. package/lib/utils/resolveBin.js +0 -1
  148. package/lib/utils/sortObject.js +0 -1
  149. package/lib/utils/swallowError.js +0 -1
  150. package/lib/utils/tryCatchAsync.js +0 -1
  151. package/lib/utils/tryCatchLazyValueAsync.js +0 -1
  152. package/package.json +5 -1
  153. package/lib/base.js.map +0 -1
  154. package/lib/blocks/blockAllContributors.js.map +0 -1
  155. package/lib/blocks/blockAreTheTypesWrong.js.map +0 -1
  156. package/lib/blocks/blockCSpell.js.map +0 -1
  157. package/lib/blocks/blockCodecov.js.map +0 -1
  158. package/lib/blocks/blockContributingDocs.js.map +0 -1
  159. package/lib/blocks/blockContributorCovenant.js.map +0 -1
  160. package/lib/blocks/blockDevelopmentDocs.js.map +0 -1
  161. package/lib/blocks/blockESLint.js.map +0 -1
  162. package/lib/blocks/blockESLintComments.js.map +0 -1
  163. package/lib/blocks/blockESLintJSDoc.js.map +0 -1
  164. package/lib/blocks/blockESLintJSONC.js.map +0 -1
  165. package/lib/blocks/blockESLintMarkdown.js.map +0 -1
  166. package/lib/blocks/blockESLintMoreStyling.js.map +0 -1
  167. package/lib/blocks/blockESLintNode.js.map +0 -1
  168. package/lib/blocks/blockESLintPackageJson.js.map +0 -1
  169. package/lib/blocks/blockESLintPerfectionist.js.map +0 -1
  170. package/lib/blocks/blockESLintRegexp.js.map +0 -1
  171. package/lib/blocks/blockESLintYML.js.map +0 -1
  172. package/lib/blocks/blockExampleFiles.js.map +0 -1
  173. package/lib/blocks/blockFunding.js.map +0 -1
  174. package/lib/blocks/blockGitHubActionsCI.js.map +0 -1
  175. package/lib/blocks/blockGitHubApps.js.map +0 -1
  176. package/lib/blocks/blockGitHubIssueTemplates.js.map +0 -1
  177. package/lib/blocks/blockGitHubPRTemplate.js.map +0 -1
  178. package/lib/blocks/blockGitignore.js.map +0 -1
  179. package/lib/blocks/blockKnip.js.map +0 -1
  180. package/lib/blocks/blockMITLicense.js.map +0 -1
  181. package/lib/blocks/blockMarkdownlint.js.map +0 -1
  182. package/lib/blocks/blockNvmrc.js.map +0 -1
  183. package/lib/blocks/blockPRCompliance.js.map +0 -1
  184. package/lib/blocks/blockPackageJson.js.map +0 -1
  185. package/lib/blocks/blockPnpmDedupe.js.map +0 -1
  186. package/lib/blocks/blockPrettier.js.map +0 -1
  187. package/lib/blocks/blockPrettierPluginCurly.js.map +0 -1
  188. package/lib/blocks/blockPrettierPluginPackageJson.js.map +0 -1
  189. package/lib/blocks/blockPrettierPluginSh.js.map +0 -1
  190. package/lib/blocks/blockREADME.js.map +0 -1
  191. package/lib/blocks/blockReleaseIt.js.map +0 -1
  192. package/lib/blocks/blockRenovate.js.map +0 -1
  193. package/lib/blocks/blockRepositoryBranchRuleset.js.map +0 -1
  194. package/lib/blocks/blockRepositoryLabels.js.map +0 -1
  195. package/lib/blocks/blockRepositorySecrets.js.map +0 -1
  196. package/lib/blocks/blockRepositorySettings.js.map +0 -1
  197. package/lib/blocks/blockSecurityDocs.js.map +0 -1
  198. package/lib/blocks/blockTSup.js.map +0 -1
  199. package/lib/blocks/blockTemplatedWith.js.map +0 -1
  200. package/lib/blocks/blockTypeScript.js.map +0 -1
  201. package/lib/blocks/blockVSCode.js.map +0 -1
  202. package/lib/blocks/blockVitest.js.map +0 -1
  203. package/lib/blocks/files/createJobName.js.map +0 -1
  204. package/lib/blocks/files/createMultiWorkflowFile.js.map +0 -1
  205. package/lib/blocks/files/createSoloWorkflowFile.js.map +0 -1
  206. package/lib/blocks/files/formatIgnoreFile.js.map +0 -1
  207. package/lib/blocks/files/formatWorkflowYaml.js.map +0 -1
  208. package/lib/blocks/files/formatYaml.js.map +0 -1
  209. package/lib/blocks/index.js.map +0 -1
  210. package/lib/blocks/options.fakes.js.map +0 -1
  211. package/lib/blocks/outcomeLabels.js.map +0 -1
  212. package/lib/blocks/phases.js.map +0 -1
  213. package/lib/data/contributions.js.map +0 -1
  214. package/lib/data/packageData.js.map +0 -1
  215. package/lib/index.js.map +0 -1
  216. package/lib/inputs/inputFromOctokit.js.map +0 -1
  217. package/lib/options/getUsageFromReadme.js.map +0 -1
  218. package/lib/options/parsePackageAuthor.js.map +0 -1
  219. package/lib/options/readAllContributors.js.map +0 -1
  220. package/lib/options/readDefaultsFromReadme.js.map +0 -1
  221. package/lib/options/readDescription.js.map +0 -1
  222. package/lib/options/readDescriptionFromReadme.js.map +0 -1
  223. package/lib/options/readDocumentation.js.map +0 -1
  224. package/lib/options/readEmails.js.map +0 -1
  225. package/lib/options/readFileAsJson.js.map +0 -1
  226. package/lib/options/readFileSafe.js.map +0 -1
  227. package/lib/options/readFunding.js.map +0 -1
  228. package/lib/options/readGitHubEmail.js.map +0 -1
  229. package/lib/options/readGuide.js.map +0 -1
  230. package/lib/options/readLogoSizing.js.map +0 -1
  231. package/lib/options/readPackageData.js.map +0 -1
  232. package/lib/presets/common.js.map +0 -1
  233. package/lib/presets/everything.js.map +0 -1
  234. package/lib/presets/index.js.map +0 -1
  235. package/lib/presets/minimal.js.map +0 -1
  236. package/lib/template.js.map +0 -1
  237. package/lib/types.js.map +0 -1
  238. package/lib/utils/resolveBin.js.map +0 -1
  239. package/lib/utils/sortObject.js.map +0 -1
  240. package/lib/utils/swallowError.js.map +0 -1
  241. package/lib/utils/tryCatchAsync.js.map +0 -1
  242. package/lib/utils/tryCatchLazyValueAsync.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  var name = "create-typescript-app";
2
- var version = "2.0.0";
2
+ var version = "2.2.0";
3
3
  var description = "Quickstart-friendly TypeScript template with comprehensive, configurable, opinionated tooling. 🎁";
4
4
  var repository = {
5
5
  type: "git",
@@ -104,9 +104,13 @@ var devDependencies = {
104
104
  "typescript-eslint": "8.26.0",
105
105
  vitest: "3.0.7"
106
106
  };
107
+ var packageManager = "pnpm@10.5.2";
107
108
  var engines = {
108
109
  node: ">=18.3.0"
109
110
  };
111
+ var publishConfig = {
112
+ provenance: true
113
+ };
110
114
  var _package = {
111
115
  name: name,
112
116
  version: version,
@@ -124,7 +128,9 @@ var _package = {
124
128
  },
125
129
  dependencies: dependencies,
126
130
  devDependencies: devDependencies,
127
- engines: engines
131
+ packageManager: packageManager,
132
+ engines: engines,
133
+ publishConfig: publishConfig
128
134
  };
129
135
 
130
136
  declare const ______package_json_author: typeof author;
@@ -137,12 +143,14 @@ declare const ______package_json_files: typeof files;
137
143
  declare const ______package_json_license: typeof license;
138
144
  declare const ______package_json_main: typeof main;
139
145
  declare const ______package_json_name: typeof name;
146
+ declare const ______package_json_packageManager: typeof packageManager;
147
+ declare const ______package_json_publishConfig: typeof publishConfig;
140
148
  declare const ______package_json_repository: typeof repository;
141
149
  declare const ______package_json_scripts: typeof scripts;
142
150
  declare const ______package_json_type: typeof type;
143
151
  declare const ______package_json_version: typeof version;
144
152
  declare namespace ______package_json {
145
- export { ______package_json_author as author, ______package_json_bin as bin, _package as default, ______package_json_dependencies as dependencies, ______package_json_description as description, ______package_json_devDependencies as devDependencies, ______package_json_engines as engines, ______package_json_files as files, ______package_json_license as license, ______package_json_main as main, ______package_json_name as name, ______package_json_repository as repository, ______package_json_scripts as scripts, ______package_json_type as type, ______package_json_version as version };
153
+ export { ______package_json_author as author, ______package_json_bin as bin, _package as default, ______package_json_dependencies as dependencies, ______package_json_description as description, ______package_json_devDependencies as devDependencies, ______package_json_engines as engines, ______package_json_files as files, ______package_json_license as license, ______package_json_main as main, ______package_json_name as name, ______package_json_packageManager as packageManager, ______package_json_publishConfig as publishConfig, ______package_json_repository as repository, ______package_json_scripts as scripts, ______package_json_type as type, ______package_json_version as version };
146
154
  }
147
155
 
148
156
  declare const packageData: typeof ______package_json;
@@ -29,4 +29,3 @@ export {
29
29
  getPackageDependency,
30
30
  packageData
31
31
  };
32
- //# sourceMappingURL=packageData.js.map
package/lib/index.d.ts CHANGED
@@ -148,6 +148,7 @@ declare const createConfig: bingo.CreateTemplateConfig<{
148
148
  devDependencies?: Record<string, string> | undefined;
149
149
  scripts?: Record<string, string> | undefined;
150
150
  }>>;
151
+ pnpm: zod.ZodOptional<zod.ZodString>;
151
152
  repository: zod.ZodString;
152
153
  rulesetId: zod.ZodOptional<zod.ZodString>;
153
154
  title: zod.ZodString;
@@ -196,6 +197,7 @@ declare const createConfig: bingo.CreateTemplateConfig<{
196
197
  devDependencies?: Record<string, string> | undefined;
197
198
  scripts?: Record<string, string> | undefined;
198
199
  } | undefined;
200
+ pnpm?: string | undefined;
199
201
  rulesetId?: string | undefined;
200
202
  usage?: string | undefined;
201
203
  version?: string | undefined;
package/lib/index.js CHANGED
@@ -7,4 +7,3 @@ export {
7
7
  createConfig,
8
8
  template
9
9
  };
10
- //# sourceMappingURL=index.js.map
@@ -25,4 +25,3 @@ const inputFromOctokit = createInput({
25
25
  export {
26
26
  inputFromOctokit
27
27
  };
28
- //# sourceMappingURL=inputFromOctokit.js.map
@@ -18,4 +18,3 @@ function getUsageFromReadme(readme) {
18
18
  export {
19
19
  getUsageFromReadme
20
20
  };
21
- //# sourceMappingURL=getUsageFromReadme.js.map
@@ -18,4 +18,3 @@ function parsePackageAuthor(packageData) {
18
18
  export {
19
19
  parsePackageAuthor
20
20
  };
21
- //# sourceMappingURL=parsePackageAuthor.js.map
@@ -24,4 +24,3 @@ async function readAllContributors(take) {
24
24
  export {
25
25
  readAllContributors
26
26
  };
27
- //# sourceMappingURL=readAllContributors.js.map
@@ -55,4 +55,3 @@ greet("Hello, world! \u{1F496}");
55
55
  export {
56
56
  readDefaultsFromReadme
57
57
  };
58
- //# sourceMappingURL=readDefaultsFromReadme.js.map
@@ -15,4 +15,3 @@ async function readDescription(getPackageData, getReadme) {
15
15
  export {
16
16
  readDescription
17
17
  };
18
- //# sourceMappingURL=readDescription.js.map
@@ -15,4 +15,3 @@ async function readDescriptionFromReadme(getReadme) {
15
15
  export {
16
16
  readDescriptionFromReadme
17
17
  };
18
- //# sourceMappingURL=readDescriptionFromReadme.js.map
@@ -25,4 +25,3 @@ function parseHeading(section) {
25
25
  export {
26
26
  readDocumentation
27
27
  };
28
- //# sourceMappingURL=readDocumentation.js.map
@@ -11,4 +11,3 @@ async function readEmails(npmDefaults, packageAuthor) {
11
11
  export {
12
12
  readEmails
13
13
  };
14
- //# sourceMappingURL=readEmails.js.map
@@ -12,4 +12,3 @@ async function readFileAsJson(filePath) {
12
12
  export {
13
13
  readFileAsJson
14
14
  };
15
- //# sourceMappingURL=readFileAsJson.js.map
@@ -9,4 +9,3 @@ async function readFileSafe(filePath, fallback) {
9
9
  export {
10
10
  readFileSafe
11
11
  };
12
- //# sourceMappingURL=readFileSafe.js.map
@@ -8,4 +8,3 @@ async function readFunding() {
8
8
  export {
9
9
  readFunding
10
10
  };
11
- //# sourceMappingURL=readFunding.js.map
@@ -9,4 +9,3 @@ async function readGitHubEmail() {
9
9
  export {
10
10
  readGitHubEmail
11
11
  };
12
- //# sourceMappingURL=readGitHubEmail.js.map
@@ -15,4 +15,3 @@ async function readGuide() {
15
15
  export {
16
16
  readGuide
17
17
  };
18
- //# sourceMappingURL=readGuide.js.map
@@ -26,4 +26,3 @@ function imageSizeSafe(src) {
26
26
  export {
27
27
  readLogoSizing
28
28
  };
29
- //# sourceMappingURL=readLogoSizing.js.map
@@ -5,4 +5,3 @@ async function readPackageData() {
5
5
  export {
6
6
  readPackageData
7
7
  };
8
- //# sourceMappingURL=readPackageData.js.map
@@ -0,0 +1,5 @@
1
+ import { PartialPackageData } from '../types.js';
2
+
3
+ declare function readPnpm(packageData: () => Promise<PartialPackageData>): Promise<string>;
4
+
5
+ export { readPnpm };
@@ -0,0 +1,7 @@
1
+ async function readPnpm(packageData) {
2
+ const { packageManager } = await packageData();
3
+ return packageManager?.startsWith("pnpm@") ? packageManager.slice("pnpm@".length) : "10.4.0";
4
+ }
5
+ export {
6
+ readPnpm
7
+ };
@@ -96,6 +96,7 @@ declare const presetCommon: bingo_stratum.Preset<{
96
96
  devDependencies?: Record<string, string> | undefined;
97
97
  scripts?: Record<string, string> | undefined;
98
98
  }>>;
99
+ pnpm: zod.ZodOptional<zod.ZodString>;
99
100
  repository: zod.ZodString;
100
101
  rulesetId: zod.ZodOptional<zod.ZodString>;
101
102
  title: zod.ZodString;
@@ -22,4 +22,3 @@ const presetCommon = base.createPreset({
22
22
  export {
23
23
  presetCommon
24
24
  };
25
- //# sourceMappingURL=common.js.map
@@ -96,6 +96,7 @@ declare const presetEverything: bingo_stratum.Preset<{
96
96
  devDependencies?: Record<string, string> | undefined;
97
97
  scripts?: Record<string, string> | undefined;
98
98
  }>>;
99
+ pnpm: zod.ZodOptional<zod.ZodString>;
99
100
  repository: zod.ZodString;
100
101
  rulesetId: zod.ZodOptional<zod.ZodString>;
101
102
  title: zod.ZodString;
@@ -54,4 +54,3 @@ const presetEverything = base.createPreset({
54
54
  export {
55
55
  presetEverything
56
56
  };
57
- //# sourceMappingURL=everything.js.map
@@ -100,6 +100,7 @@ declare const presets: {
100
100
  devDependencies?: Record<string, string> | undefined;
101
101
  scripts?: Record<string, string> | undefined;
102
102
  }>>;
103
+ pnpm: zod.ZodOptional<zod.ZodString>;
103
104
  repository: zod.ZodString;
104
105
  rulesetId: zod.ZodOptional<zod.ZodString>;
105
106
  title: zod.ZodString;
@@ -201,6 +202,7 @@ declare const presets: {
201
202
  devDependencies?: Record<string, string> | undefined;
202
203
  scripts?: Record<string, string> | undefined;
203
204
  }>>;
205
+ pnpm: zod.ZodOptional<zod.ZodString>;
204
206
  repository: zod.ZodString;
205
207
  rulesetId: zod.ZodOptional<zod.ZodString>;
206
208
  title: zod.ZodString;
@@ -302,6 +304,7 @@ declare const presets: {
302
304
  devDependencies?: Record<string, string> | undefined;
303
305
  scripts?: Record<string, string> | undefined;
304
306
  }>>;
307
+ pnpm: zod.ZodOptional<zod.ZodString>;
305
308
  repository: zod.ZodString;
306
309
  rulesetId: zod.ZodOptional<zod.ZodString>;
307
310
  title: zod.ZodString;
@@ -15,4 +15,3 @@ export {
15
15
  presetMinimal2 as presetMinimal,
16
16
  presets
17
17
  };
18
- //# sourceMappingURL=index.js.map
@@ -96,6 +96,7 @@ declare const presetMinimal: bingo_stratum.Preset<{
96
96
  devDependencies?: Record<string, string> | undefined;
97
97
  scripts?: Record<string, string> | undefined;
98
98
  }>>;
99
+ pnpm: zod.ZodOptional<zod.ZodString>;
99
100
  repository: zod.ZodString;
100
101
  rulesetId: zod.ZodOptional<zod.ZodString>;
101
102
  title: zod.ZodString;
@@ -54,4 +54,3 @@ const presetMinimal = base.createPreset({
54
54
  export {
55
55
  presetMinimal
56
56
  };
57
- //# sourceMappingURL=minimal.js.map
package/lib/template.d.ts CHANGED
@@ -96,6 +96,7 @@ declare const template: bingo_stratum_lib_types_templates_js.StratumTemplate<{
96
96
  devDependencies?: Record<string, string> | undefined;
97
97
  scripts?: Record<string, string> | undefined;
98
98
  }>>;
99
+ pnpm: zod.ZodOptional<zod.ZodString>;
99
100
  repository: zod.ZodString;
100
101
  rulesetId: zod.ZodOptional<zod.ZodString>;
101
102
  title: zod.ZodString;
package/lib/template.js CHANGED
@@ -16,4 +16,3 @@ const template = base.createStratumTemplate({
16
16
  export {
17
17
  template
18
18
  };
19
- //# sourceMappingURL=template.js.map
package/lib/types.d.ts CHANGED
@@ -22,6 +22,7 @@ interface PartialPackageData {
22
22
  node?: string;
23
23
  };
24
24
  name?: string;
25
+ packageManager?: string;
25
26
  repository?: string | {
26
27
  type: string;
27
28
  url: string;
package/lib/types.js CHANGED
@@ -1 +0,0 @@
1
- //# sourceMappingURL=types.js.map
@@ -4,4 +4,3 @@ function resolveBin(bin) {
4
4
  export {
5
5
  resolveBin
6
6
  };
7
- //# sourceMappingURL=resolveBin.js.map
@@ -6,4 +6,3 @@ function sortObject(value) {
6
6
  export {
7
7
  sortObject
8
8
  };
9
- //# sourceMappingURL=sortObject.js.map
@@ -4,4 +4,3 @@ function swallowError(value) {
4
4
  export {
5
5
  swallowError
6
6
  };
7
- //# sourceMappingURL=swallowError.js.map
@@ -8,4 +8,3 @@ async function tryCatchAsync(get) {
8
8
  export {
9
9
  tryCatchAsync
10
10
  };
11
- //# sourceMappingURL=tryCatchAsync.js.map
@@ -6,4 +6,3 @@ function tryCatchLazyValueAsync(get) {
6
6
  export {
7
7
  tryCatchLazyValueAsync
8
8
  };
9
- //# sourceMappingURL=tryCatchLazyValueAsync.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-typescript-app",
3
- "version": "2.0.0",
3
+ "version": "2.3.0",
4
4
  "description": "Quickstart-friendly TypeScript template with comprehensive, configurable, opinionated tooling. 🎁",
5
5
  "repository": {
6
6
  "type": "git",
@@ -108,7 +108,11 @@
108
108
  "typescript-eslint": "8.26.0",
109
109
  "vitest": "3.0.7"
110
110
  },
111
+ "packageManager": "pnpm@10.5.2",
111
112
  "engines": {
112
113
  "node": ">=18.3.0"
114
+ },
115
+ "publishConfig": {
116
+ "provenance": true
113
117
  }
114
118
  }
package/lib/base.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/base.ts"],"sourcesContent":["import { BaseOptionsFor, createBase } from \"bingo-stratum\";\nimport { execaCommand } from \"execa\";\nimport gitRemoteOriginUrl from \"git-remote-origin-url\";\nimport gitUrlParse from \"git-url-parse\";\nimport { inputFromFile } from \"input-from-file\";\nimport { inputFromScript } from \"input-from-script\";\nimport lazyValue from \"lazy-value\";\nimport npmUser from \"npm-user\";\nimport { z } from \"zod\";\n\nimport { inputFromOctokit } from \"./inputs/inputFromOctokit.js\";\nimport { parsePackageAuthor } from \"./options/parsePackageAuthor.js\";\nimport { readAllContributors } from \"./options/readAllContributors.js\";\nimport { readDefaultsFromReadme } from \"./options/readDefaultsFromReadme.js\";\nimport { readDescription } from \"./options/readDescription.js\";\nimport { readDocumentation } from \"./options/readDocumentation.js\";\nimport { readEmails } from \"./options/readEmails.js\";\nimport { readFileSafe } from \"./options/readFileSafe.js\";\nimport { readFunding } from \"./options/readFunding.js\";\nimport { readGuide } from \"./options/readGuide.js\";\nimport { readPackageData } from \"./options/readPackageData.js\";\nimport { swallowError } from \"./utils/swallowError.js\";\nimport { tryCatchLazyValueAsync } from \"./utils/tryCatchLazyValueAsync.js\";\n\nconst zContributor = z.object({\n\tavatar_url: z.string(),\n\tcontributions: z.array(z.string()),\n\tlogin: z.string(),\n\tname: z.string(),\n\tprofile: z.string(),\n});\n\nexport type Contributor = z.infer<typeof zContributor>;\n\nexport const base = createBase({\n\toptions: {\n\t\taccess: z\n\t\t\t.union([z.literal(\"public\"), z.literal(\"restricted\")])\n\t\t\t.describe(\"which `npm publish --access` to release npm packages with\"),\n\t\tauthor: z\n\t\t\t.string()\n\t\t\t.optional()\n\t\t\t.describe(\"username on npm to publish packages under\"),\n\t\tbin: z\n\t\t\t.string()\n\t\t\t.optional()\n\t\t\t.describe('value to set in `package.json`\\'s `\"bin\"` property'),\n\t\tcontributors: z\n\t\t\t.array(zContributor)\n\t\t\t.optional()\n\t\t\t.describe(\"AllContributors contributors to store in .all-contributorsrc\"),\n\t\tdescription: z\n\t\t\t.string()\n\t\t\t.default(\"A very lovely package. Hooray! 💖\")\n\t\t\t.describe(\"'Sentence case.' description of the repository\"),\n\t\tdirectory: z.string().describe(\"Directory to create the repository in\"),\n\t\tdocumentation: z\n\t\t\t.string()\n\t\t\t.optional()\n\t\t\t.describe(\"any additional docs to add to .github/DEVELOPMENT.md\"),\n\t\temail: z\n\t\t\t.union([\n\t\t\t\tz.string(),\n\t\t\t\tz.object({\n\t\t\t\t\tgithub: z.string(),\n\t\t\t\t\tnpm: z.string(),\n\t\t\t\t}),\n\t\t\t])\n\t\t\t.transform((email) =>\n\t\t\t\ttypeof email === \"string\" ? { github: email, npm: email } : email,\n\t\t\t)\n\t\t\t.describe(\n\t\t\t\t\"email address to be listed as the point of contact in docs and packages\",\n\t\t\t),\n\t\texplainer: z\n\t\t\t.array(z.string())\n\t\t\t.optional()\n\t\t\t.describe(\"additional README.md sentence(s) describing the package\"),\n\t\tfunding: z\n\t\t\t.string()\n\t\t\t.optional()\n\t\t\t.describe(\"GitHub organization or username to mention in `funding.yml`\"),\n\t\tguide: z\n\t\t\t.object({\n\t\t\t\thref: z.string(),\n\t\t\t\ttitle: z.string(),\n\t\t\t})\n\t\t\t.optional()\n\t\t\t.describe(\n\t\t\t\t\"link to a contribution guide to place at the top of development docs\",\n\t\t\t),\n\t\tkeywords: z\n\t\t\t.array(z.string())\n\t\t\t.optional()\n\t\t\t.describe(\"any number of keywords to include in `package.json`\"),\n\t\tlogo: z\n\t\t\t.object({\n\t\t\t\talt: z.string(),\n\t\t\t\theight: z.number().optional(),\n\t\t\t\tsrc: z.string(),\n\t\t\t\twidth: z.number().optional(),\n\t\t\t})\n\t\t\t.optional()\n\t\t\t.describe(\n\t\t\t\t\"local image file in the repository to display near the top of the README.md\",\n\t\t\t),\n\t\tnode: z\n\t\t\t.object({\n\t\t\t\tminimum: z.string(),\n\t\t\t\tpinned: z.string().optional(),\n\t\t\t})\n\t\t\t.optional()\n\t\t\t.describe(\"node.js engine version(s) to pin and require a minimum of\"),\n\t\towner: z\n\t\t\t.string()\n\t\t\t.describe(\"GitHub organization or user the repository is underneath\"),\n\t\tpackageData: z\n\t\t\t.object({\n\t\t\t\tdependencies: z.record(z.string(), z.string()).optional(),\n\t\t\t\tdevDependencies: z.record(z.string(), z.string()).optional(),\n\t\t\t\tscripts: z.record(z.string(), z.string()).optional(),\n\t\t\t})\n\t\t\t.optional()\n\t\t\t.describe(\"additional properties to include in `package.json`\"),\n\t\trepository: z\n\t\t\t.string()\n\t\t\t.describe(\"'kebab-case' or 'PascalCase' title of the repository\"),\n\t\trulesetId: z\n\t\t\t.string()\n\t\t\t.optional()\n\t\t\t.describe(\"GitHub branch ruleset ID for main branch protections\"),\n\t\ttitle: z.string().describe(\"'Title Case' title for the repository\"),\n\t\tusage: z\n\t\t\t.string()\n\t\t\t.optional()\n\t\t\t.describe(\"markdown docs to put in README.md under the ## Usage heading\"),\n\t\tversion: z\n\t\t\t.string()\n\t\t\t.optional()\n\t\t\t.describe(\"package version to publish as and store in `package.json`\"),\n\t},\n\tprepare({ options, take }) {\n\t\tconst allContributors = lazyValue(async () => readAllContributors(take));\n\t\tconst documentation = lazyValue(async () => readDocumentation(take));\n\n\t\tconst nvmrc = lazyValue(\n\t\t\tasync () =>\n\t\t\t\tawait take(inputFromFile, {\n\t\t\t\t\tfilePath: \".nvmrc\",\n\t\t\t\t}),\n\t\t);\n\n\t\tconst githubCliUser = lazyValue(async () => {\n\t\t\treturn swallowError(\n\t\t\t\tawait take(inputFromScript, {\n\t\t\t\t\tcommand: \"gh config get user -h github.com\",\n\t\t\t\t}),\n\t\t\t)?.stdout?.toString();\n\t\t});\n\n\t\tconst readme = lazyValue(async () => await readFileSafe(\"README.md\", \"\"));\n\n\t\tconst rulesetId = lazyValue(async () => {\n\t\t\tconst rulesets = (await take(inputFromOctokit, {\n\t\t\t\tendpoint: \"GET /repos/{owner}/{repo}/rulesets\",\n\t\t\t\toptions: {\n\t\t\t\t\towner: await owner(),\n\t\t\t\t\trepo: await repository(),\n\t\t\t\t},\n\t\t\t})) as undefined | { id: string; name: string }[];\n\n\t\t\treturn rulesets?.find(\n\t\t\t\t(ruleset) => ruleset.name === \"Branch protection for main\",\n\t\t\t)?.id;\n\t\t});\n\n\t\t// TODO: Make these all use take\n\n\t\tconst gitDefaults = tryCatchLazyValueAsync(async () =>\n\t\t\tgitUrlParse(await gitRemoteOriginUrl()),\n\t\t);\n\n\t\tconst npmDefaults = tryCatchLazyValueAsync(async () => {\n\t\t\tconst whoami = (await execaCommand(`npm whoami`)).stdout;\n\t\t\treturn whoami ? await npmUser(whoami) : undefined;\n\t\t});\n\n\t\tconst packageData = lazyValue(readPackageData);\n\t\tconst packageAuthor = lazyValue(async () =>\n\t\t\tparsePackageAuthor(await packageData()),\n\t\t);\n\n\t\tconst author = lazyValue(\n\t\t\tasync () =>\n\t\t\t\t(await packageAuthor()).author ??\n\t\t\t\t(await npmDefaults())?.name ??\n\t\t\t\toptions.owner,\n\t\t);\n\n\t\tconst node = lazyValue(async () => {\n\t\t\tconst { engines } = await packageData();\n\n\t\t\treturn {\n\t\t\t\tminimum:\n\t\t\t\t\t(engines?.node && /[\\d+.]+/.exec(engines.node))?.[0] ?? \"18.3.0\",\n\t\t\t\tpinned: swallowError(await nvmrc())?.trim() ?? \"20.18.0\",\n\t\t\t};\n\t\t});\n\n\t\tconst version = lazyValue(async () => (await packageData()).version);\n\n\t\tconst owner = lazyValue(\n\t\t\tasync () =>\n\t\t\t\t(await gitDefaults())?.organization ??\n\t\t\t\t(await packageAuthor()).author ??\n\t\t\t\t(await githubCliUser()),\n\t\t);\n\n\t\tconst repository = lazyValue(\n\t\t\tasync () =>\n\t\t\t\toptions.repository ??\n\t\t\t\t(await gitDefaults())?.name ??\n\t\t\t\t(await packageData()).name ??\n\t\t\t\toptions.directory,\n\t\t);\n\n\t\tconst email = lazyValue(async () => readEmails(npmDefaults, packageAuthor));\n\n\t\treturn {\n\t\t\taccess: \"public\" as const,\n\t\t\tauthor,\n\t\t\tbin: async () => (await packageData()).bin,\n\t\t\tcontributors: allContributors,\n\t\t\tdescription: async () => await readDescription(packageData, readme),\n\t\t\tdocumentation,\n\t\t\temail,\n\t\t\tfunding: readFunding,\n\t\t\tguide: readGuide,\n\t\t\tlogin: author,\n\t\t\tnode,\n\t\t\towner,\n\t\t\tpackageData: async () => {\n\t\t\t\tconst original = await packageData();\n\n\t\t\t\treturn {\n\t\t\t\t\tdependencies: original.dependencies,\n\t\t\t\t\tdevDependencies: original.devDependencies,\n\t\t\t\t\tscripts: original.scripts,\n\t\t\t\t};\n\t\t\t},\n\t\t\trepository,\n\t\t\trulesetId,\n\t\t\t...readDefaultsFromReadme(readme, repository),\n\t\t\tversion,\n\t\t};\n\t},\n});\n\nexport type BaseOptions = BaseOptionsFor<typeof base>;\n"],"mappings":"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","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockAllContributors.ts"],"sourcesContent":["import _ from \"lodash\";\n\nimport { base, Contributor } from \"../base.js\";\nimport { ownerContributions } from \"../data/contributions.js\";\nimport { blockREADME } from \"./blockREADME.js\";\nimport { blockRepositorySecrets } from \"./blockRepositorySecrets.js\";\nimport { createSoloWorkflowFile } from \"./files/createSoloWorkflowFile.js\";\nimport { CommandPhase } from \"./phases.js\";\n\nexport const blockAllContributors = base.createBlock({\n\tabout: {\n\t\tname: \"AllContributors\",\n\t},\n\tproduce({ options }) {\n\t\tconst contributions = options.contributors?.length;\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockREADME({\n\t\t\t\t\tbadges: [\n\t\t\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: ${contributions}\" src=\"https://img.shields.io/badge/%F0%9F%91%AA_all_contributors-${contributions}-21bb42.svg\" /></a>\n<!-- ALL-CONTRIBUTORS-BADGE:END -->\n\\t<!-- prettier-ignore-end -->`,\n\t\t\t\t\t],\n\t\t\t\t\tsections: options.contributors\n\t\t\t\t\t\t? [printAllContributorsTable(options.contributors)]\n\t\t\t\t\t\t: undefined,\n\t\t\t\t}),\n\t\t\t\tblockRepositorySecrets({\n\t\t\t\t\tsecrets: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdescription: \"a GitHub PAT with repo and workflow permissions\",\n\t\t\t\t\t\t\tname: \"ACCESS_TOKEN\",\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t],\n\t\t\tfiles: {\n\t\t\t\t\".all-contributorsrc\": JSON.stringify({\n\t\t\t\t\tbadgeTemplate:\n\t\t\t\t\t\t'\t<a href=\"#contributors\" target=\"_blank\"><img alt=\"👪 All Contributors: <%= contributors.length %>\" src=\"https://img.shields.io/badge/%F0%9F%91%AA_all_contributors-<%= contributors.length %>-21bb42.svg\" /></a>',\n\t\t\t\t\tcontributors: options.contributors ?? [],\n\t\t\t\t\tcontributorsSortAlphabetically: true,\n\t\t\t\t\tprojectName: options.repository,\n\t\t\t\t\tprojectOwner: options.owner,\n\t\t\t\t}),\n\t\t\t\t\".github\": {\n\t\t\t\t\tworkflows: {\n\t\t\t\t\t\t\"contributors.yml\": createSoloWorkflowFile({\n\t\t\t\t\t\t\tname: \"Contributors\",\n\t\t\t\t\t\t\ton: {\n\t\t\t\t\t\t\t\tpush: {\n\t\t\t\t\t\t\t\t\tbranches: [\"main\"],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tsteps: [\n\t\t\t\t\t\t\t\t{ uses: \"actions/checkout@v4\", with: { \"fetch-depth\": 0 } },\n\t\t\t\t\t\t\t\t{ uses: \"./.github/actions/prepare\" },\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tenv: { GITHUB_TOKEN: \"${{ secrets.ACCESS_TOKEN }}\" },\n\t\t\t\t\t\t\t\t\tuses: `JoshuaKGoldberg/all-contributors-auto-action@v0.5.0`,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t}),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tscripts: [\n\t\t\t\t{\n\t\t\t\t\tcommands: [\n\t\t\t\t\t\t`pnpx all-contributors-cli add ${options.owner} ${ownerContributions.join(\",\")}`,\n\t\t\t\t\t],\n\t\t\t\t\tphase: CommandPhase.Process,\n\t\t\t\t},\n\t\t\t],\n\t\t};\n\t},\n});\n\nfunction printAllContributorsTable(contributors: Contributor[]) {\n\treturn [\n\t\t`## Contributors`,\n\t\t``,\n\t\t`<!-- spellchecker: disable -->`,\n\t\t`<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->`,\n\t\t`<!-- prettier-ignore-start -->`,\n\t\t`<!-- markdownlint-disable -->`,\n\t\t`<table>`,\n\t\t` <tbody>`,\n\t\t` <tr>`,\n\t\t// This intentionally uses the same sort as all-contributors-cli:\n\t\t// https://github.com/all-contributors/cli/blob/74bc388bd6f0ae2658e6495e9d3781d737438a97/src/generate/index.js#L76\n\t\t..._.sortBy(contributors, \"name\").flatMap((contributor, i) => {\n\t\t\tconst row = printContributorCell(contributor);\n\n\t\t\treturn i && i % 7 === 0 ? [` </tr>`, ` <tr>`, row] : [row];\n\t\t}),\n\t\t` </tr>`,\n\t\t` </tbody>`,\n\t\t`</table>`,\n\t\t``,\n\t\t`<!-- 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].join(\"\\n\");\n}\n\nfunction printContributorCell(contributor: Contributor) {\n\treturn [\n\t\t` <td align=\"center\" valign=\"top\" width=\"14.28%\">`,\n\t\t`<a href=\"${contributor.profile}\">`,\n\t\t`<img src=\"${contributor.avatar_url}?s=100\" width=\"100px;\" alt=\"${contributor.name}\"/>`,\n\t\t`<br />`,\n\t\t`<sub><b>${contributor.name}</b></sub></a><br />`,\n\t\tcontributor.contributions\n\t\t\t.map((contribution) => {\n\t\t\t\tswitch (contribution) {\n\t\t\t\t\tcase \"bug\":\n\t\t\t\t\t\treturn `<a href=\"https://github.com/JoshuaKGoldberg/create-typescript-app/issues?q=author%3A${contributor.login}\" title=\"Bug reports\">🐛</a>`;\n\t\t\t\t\tcase \"code\":\n\t\t\t\t\t\treturn `<a href=\"https://github.com/JoshuaKGoldberg/create-typescript-app/commits?author=${contributor.login}\" title=\"Code\">💻</a>`;\n\t\t\t\t\tcase \"design\":\n\t\t\t\t\t\treturn `<a href=\"#design-${contributor.login}\" title=\"Design\">🎨</a>`;\n\t\t\t\t\tcase \"doc\":\n\t\t\t\t\t\treturn `<a href=\"https://github.com/JoshuaKGoldberg/create-typescript-app/commits?author=${contributor.login}\" title=\"Documentation\">📖</a>`;\n\t\t\t\t\tcase \"ideas\":\n\t\t\t\t\t\treturn `<a href=\"#ideas-${contributor.login}\" title=\"Ideas, Planning, & Feedback\">🤔</a>`;\n\t\t\t\t\tcase \"infra\":\n\t\t\t\t\t\treturn `<a href=\"#infra-${contributor.login}\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a>`;\n\t\t\t\t\tcase \"maintenance\":\n\t\t\t\t\t\treturn `<a href=\"#maintenance-${contributor.login}\" title=\"Maintenance\">🚧</a>`;\n\t\t\t\t\tcase \"review\":\n\t\t\t\t\t\treturn `<a href=\"https://github.com/JoshuaKGoldberg/create-typescript-app/pulls?q=is%3Apr+reviewed-by%3A${contributor.login}\" title=\"Reviewed Pull Requests\">👀</a>`;\n\t\t\t\t\tcase \"test\":\n\t\t\t\t\t\treturn `<a href=\"https://github.com/JoshuaKGoldberg/create-typescript-app/commits?author=${contributor.login}\" title=\"Tests\">⚠️</a>`;\n\t\t\t\t\tcase \"tool\":\n\t\t\t\t\t\treturn `<a href=\"#tool-${contributor.login}\" title=\"Tools\">🔧</a>`;\n\t\t\t\t}\n\t\t\t})\n\t\t\t.join(\" \"),\n\t\t`</td>`,\n\t].join(\"\");\n}\n"],"mappings":"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","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockAreTheTypesWrong.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { blockGitHubActionsCI } from \"./blockGitHubActionsCI.js\";\n\nexport const blockAreTheTypesWrong = base.createBlock({\n\tabout: {\n\t\tname: \"Are The Types Wrong\",\n\t},\n\tproduce() {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockGitHubActionsCI({\n\t\t\t\t\tjobs: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: \"Are The Types Wrong?\",\n\t\t\t\t\t\t\tsteps: [\n\t\t\t\t\t\t\t\t{ run: \"pnpm build\" },\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\trun: \"npx --yes @arethetypeswrong/cli --pack . --ignore-rules cjs-resolves-to-esm\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,YAAY;AACrB,SAAS,4BAA4B;AAE9B,MAAM,wBAAwB,KAAK,YAAY;AAAA,EACrD,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,UAAU;AACT,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,qBAAqB;AAAA,UACpB,MAAM;AAAA,YACL;AAAA,cACC,MAAM;AAAA,cACN,OAAO;AAAA,gBACN,EAAE,KAAK,aAAa;AAAA,gBACpB;AAAA,kBACC,KAAK;AAAA,gBACN;AAAA,cACD;AAAA,YACD;AAAA,UACD;AAAA,QACD,CAAC;AAAA,MACF;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockCSpell.ts"],"sourcesContent":["import { getObjectStringsDeep } from \"object-strings-deep\";\nimport { z } from \"zod\";\n\nimport { base } from \"../base.js\";\nimport { getPackageDependencies } from \"../data/packageData.js\";\nimport { resolveBin } from \"../utils/resolveBin.js\";\nimport { blockDevelopmentDocs } from \"./blockDevelopmentDocs.js\";\nimport { blockGitHubActionsCI } from \"./blockGitHubActionsCI.js\";\nimport { blockPackageJson } from \"./blockPackageJson.js\";\nimport { blockVSCode } from \"./blockVSCode.js\";\nimport { CommandPhase } from \"./phases.js\";\n\nconst filesGlob = `\"**\" \".github/**/*\"`;\n\nexport const blockCSpell = base.createBlock({\n\tabout: {\n\t\tname: \"CSpell\",\n\t},\n\taddons: {\n\t\tignores: z.array(z.string()).default([]),\n\t\twords: z.array(z.string()).default([]),\n\t},\n\tproduce({ addons }) {\n\t\tconst { ignores, words } = addons;\n\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockDevelopmentDocs({\n\t\t\t\t\tsections: {\n\t\t\t\t\t\tLinting: {\n\t\t\t\t\t\t\tcontents: {\n\t\t\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\t\t\t`- \\`pnpm lint:spelling\\` ([cspell](https://cspell.org)): Spell checks across all source files`,\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t\tblockVSCode({\n\t\t\t\t\textensions: [\"streetsidesoftware.code-spell-checker\"],\n\t\t\t\t}),\n\t\t\t\tblockGitHubActionsCI({\n\t\t\t\t\tjobs: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: \"Lint Spelling\",\n\t\t\t\t\t\t\tsteps: [{ run: \"pnpm lint:spelling\" }],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t\tblockPackageJson({\n\t\t\t\t\tproperties: {\n\t\t\t\t\t\tdevDependencies: getPackageDependencies(\"cspell\"),\n\t\t\t\t\t\tscripts: {\n\t\t\t\t\t\t\t\"lint:spelling\": `cspell ${filesGlob}`,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t],\n\t\t\tfiles: {\n\t\t\t\t\"cspell.json\": JSON.stringify({\n\t\t\t\t\tdictionaries: [\"npm\", \"node\", \"typescript\"],\n\t\t\t\t\tignorePaths: [\n\t\t\t\t\t\t\".github\",\n\t\t\t\t\t\t\"CHANGELOG.md\",\n\t\t\t\t\t\t\"lib\",\n\t\t\t\t\t\t\"node_modules\",\n\t\t\t\t\t\t\"pnpm-lock.yaml\",\n\t\t\t\t\t\t...ignores,\n\t\t\t\t\t].sort(),\n\t\t\t\t\t...(words.length && { words: words.sort() }),\n\t\t\t\t}),\n\t\t\t},\n\t\t};\n\t},\n\tsetup({ options }) {\n\t\tconst wordArgs = getObjectStringsDeep(options)\n\t\t\t.map((word) => `--words \"${word.replaceAll(`\"`, \" \")}\"`)\n\t\t\t.join(\" \");\n\n\t\treturn {\n\t\t\tscripts: [\n\t\t\t\t{\n\t\t\t\t\tcommands: [\n\t\t\t\t\t\t`node ${resolveBin(\"cspell-populate-words/bin/index.mjs\")} ${wordArgs}`,\n\t\t\t\t\t],\n\t\t\t\t\tphase: CommandPhase.Process,\n\t\t\t\t},\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,4BAA4B;AACrC,SAAS,SAAS;AAElB,SAAS,YAAY;AACrB,SAAS,8BAA8B;AACvC,SAAS,kBAAkB;AAC3B,SAAS,4BAA4B;AACrC,SAAS,4BAA4B;AACrC,SAAS,wBAAwB;AACjC,SAAS,mBAAmB;AAC5B,SAAS,oBAAoB;AAE7B,MAAM,YAAY;AAEX,MAAM,cAAc,KAAK,YAAY;AAAA,EAC3C,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,QAAQ;AAAA,IACP,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;AAAA,IACvC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;AAAA,EACtC;AAAA,EACA,QAAQ,EAAE,OAAO,GAAG;AACnB,UAAM,EAAE,SAAS,MAAM,IAAI;AAE3B,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,qBAAqB;AAAA,UACpB,UAAU;AAAA,YACT,SAAS;AAAA,cACR,UAAU;AAAA,gBACT,OAAO;AAAA,kBACN;AAAA,gBACD;AAAA,cACD;AAAA,YACD;AAAA,UACD;AAAA,QACD,CAAC;AAAA,QACD,YAAY;AAAA,UACX,YAAY,CAAC,uCAAuC;AAAA,QACrD,CAAC;AAAA,QACD,qBAAqB;AAAA,UACpB,MAAM;AAAA,YACL;AAAA,cACC,MAAM;AAAA,cACN,OAAO,CAAC,EAAE,KAAK,qBAAqB,CAAC;AAAA,YACtC;AAAA,UACD;AAAA,QACD,CAAC;AAAA,QACD,iBAAiB;AAAA,UAChB,YAAY;AAAA,YACX,iBAAiB,uBAAuB,QAAQ;AAAA,YAChD,SAAS;AAAA,cACR,iBAAiB,UAAU,SAAS;AAAA,YACrC;AAAA,UACD;AAAA,QACD,CAAC;AAAA,MACF;AAAA,MACA,OAAO;AAAA,QACN,eAAe,KAAK,UAAU;AAAA,UAC7B,cAAc,CAAC,OAAO,QAAQ,YAAY;AAAA,UAC1C,aAAa;AAAA,YACZ;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA,GAAG;AAAA,UACJ,EAAE,KAAK;AAAA,UACP,GAAI,MAAM,UAAU,EAAE,OAAO,MAAM,KAAK,EAAE;AAAA,QAC3C,CAAC;AAAA,MACF;AAAA,IACD;AAAA,EACD;AAAA,EACA,MAAM,EAAE,QAAQ,GAAG;AAClB,UAAM,WAAW,qBAAqB,OAAO,EAC3C,IAAI,CAAC,SAAS,YAAY,KAAK,WAAW,KAAK,GAAG,CAAC,GAAG,EACtD,KAAK,GAAG;AAEV,WAAO;AAAA,MACN,SAAS;AAAA,QACR;AAAA,UACC,UAAU;AAAA,YACT,QAAQ,WAAW,qCAAqC,CAAC,IAAI,QAAQ;AAAA,UACtE;AAAA,UACA,OAAO,aAAa;AAAA,QACrB;AAAA,MACD;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockCodecov.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { base } from \"../base.js\";\nimport { blockGitHubApps } from \"./blockGitHubApps.js\";\nimport { blockVitest } from \"./blockVitest.js\";\nimport { CommandPhase } from \"./phases.js\";\n\nexport const blockCodecov = base.createBlock({\n\tabout: {\n\t\tname: \"Codecov\",\n\t},\n\taddons: { env: z.record(z.string(), z.string()).optional() },\n\tproduce({ addons }) {\n\t\tconst { env } = addons;\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockGitHubApps({\n\t\t\t\t\tapps: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: \"Codecov\",\n\t\t\t\t\t\t\turl: \"https://github.com/apps/codecov\",\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t\tblockVitest({\n\t\t\t\t\tactionSteps: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t...(env && { env }),\n\t\t\t\t\t\t\tif: \"always()\",\n\t\t\t\t\t\t\tuses: \"codecov/codecov-action@v3\",\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t],\n\t\t};\n\t},\n\ttransition() {\n\t\treturn {\n\t\t\tscripts: [\n\t\t\t\t{\n\t\t\t\t\tcommands: [\"rm .github/codecov.yml codecov.yml\"],\n\t\t\t\t\tphase: CommandPhase.Migrations,\n\t\t\t\t\tsilent: true,\n\t\t\t\t},\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,SAAS;AAElB,SAAS,YAAY;AACrB,SAAS,uBAAuB;AAChC,SAAS,mBAAmB;AAC5B,SAAS,oBAAoB;AAEtB,MAAM,eAAe,KAAK,YAAY;AAAA,EAC5C,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE;AAAA,EAC3D,QAAQ,EAAE,OAAO,GAAG;AACnB,UAAM,EAAE,IAAI,IAAI;AAChB,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,gBAAgB;AAAA,UACf,MAAM;AAAA,YACL;AAAA,cACC,MAAM;AAAA,cACN,KAAK;AAAA,YACN;AAAA,UACD;AAAA,QACD,CAAC;AAAA,QACD,YAAY;AAAA,UACX,aAAa;AAAA,YACZ;AAAA,cACC,GAAI,OAAO,EAAE,IAAI;AAAA,cACjB,IAAI;AAAA,cACJ,MAAM;AAAA,YACP;AAAA,UACD;AAAA,QACD,CAAC;AAAA,MACF;AAAA,IACD;AAAA,EACD;AAAA,EACA,aAAa;AACZ,WAAO;AAAA,MACN,SAAS;AAAA,QACR;AAAA,UACC,UAAU,CAAC,oCAAoC;AAAA,UAC/C,OAAO,aAAa;AAAA,UACpB,QAAQ;AAAA,QACT;AAAA,MACD;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockContributingDocs.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { CommandPhase } from \"./phases.js\";\n\nexport const blockContributingDocs = base.createBlock({\n\tabout: {\n\t\tname: \"Contributing Docs\",\n\t},\n\tproduce({ options }) {\n\t\treturn {\n\t\t\tfiles: {\n\t\t\t\t\".github\": {\n\t\t\t\t\t\"CONTRIBUTING.md\": `# Contributing\n\nThanks for your interest in contributing to \\`${options.repository}\\`! 💖\n\n> After this page, see [DEVELOPMENT.md](./DEVELOPMENT.md) for local development instructions.\n\n## Code of Conduct\n\nThis project contains a [Contributor Covenant code of conduct](./CODE_OF_CONDUCT.md) all contributors are expected to follow.\n\n## Reporting Issues\n\nPlease do [report an issue on the issue tracker](https://github.com/${options.owner}/${options.repository}/issues/new/choose) if there's any bugfix, documentation improvement, or general enhancement you'd like to see in the repository! Please fully fill out all required fields in the most appropriate issue form.\n\n## Sending Contributions\n\nSending your own changes as contribution is always appreciated!\nThere are two steps involved:\n\n1. [Finding an Issue](#finding-an-issue)\n2. [Sending a Pull Request](#sending-a-pull-request)\n\n### Finding an Issue\n\nWith the exception of very small typos, all changes to this repository generally need to correspond to an [unassigned open issue marked as \\`status: accepting prs\\` on the issue tracker](https://github.com/${options.owner}/${options.repository}/issues?q=is%3Aissue+is%3Aopen+label%3A%22status%3A+accepting+prs%22+no%3Aassignee+).\nIf this is your first time contributing, consider searching for [unassigned issues that also have the \\`good first issue\\` label](https://github.com/${options.owner}/${options.repository}/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22+label%3A%22status%3A+accepting+prs%22+no%3Aassignee+).\nIf the issue you'd like to fix isn't found on the issue, see [Reporting Issues](#reporting-issues) for filing your own (please do!).\n\n#### Issue Claiming\n\nWe don't use any kind of issue claiming system.\nWe've found in the past that they result in accidental [\"licked cookie\"](https://devblogs.microsoft.com/oldnewthing/20091201-00/?p=15843) situations where contributors claim an issue but run out of time or energy trying before sending a PR.\n\nIf an unassigned issue has been marked as \\`status: accepting prs\\` and an open PR does not exist, feel free to send a PR.\nPlease don't post comments asking for permission or stating you will work on an issue.\n\n### Sending a Pull Request\n\nOnce you've identified an open issue accepting PRs that doesn't yet have a PR sent, you're free to send a pull request.\nBe sure to fill out the pull request template's requested information -- otherwise your PR will likely be closed.\n\nPRs are also expected to have a title that adheres to [conventional commits](https://www.conventionalcommits.org/en/v1.0.0).\nOnly PR titles need to be in that format, not individual commits.\nDon't worry if you get this wrong: you can always change the PR title after sending it.\nCheck [previously merged PRs](https://github.com/${options.owner}/${options.repository}/pulls?q=is%3Apr+is%3Amerged+-label%3Adependencies+) for reference.\n\n#### Draft PRs\n\nIf you don't think your PR is ready for review, [set it as a draft](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/changing-the-stage-of-a-pull-request#converting-a-pull-request-to-a-draft).\nDraft PRs won't be reviewed.\n\n#### Granular PRs\n\nPlease keep pull requests single-purpose: in other words, don't attempt to solve multiple unrelated problems in one pull request.\nSend one PR per area of concern.\nMulti-purpose pull requests are harder and slower to review, block all changes from being merged until the whole pull request is reviewed, and are difficult to name well with semantic PR titles.\n\n#### Pull Request Reviews\n\nWhen a PR is not in draft, it's considered ready for review.\nPlease don't manually \\`@\\` tag anybody to request review.\nA maintainer will look at it when they're next able to.\n\nPRs should have passing [GitHub status checks](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks) before review is requested (unless there are explicit questions asked in the PR about any failures).\n\n#### Asking Questions\n\nIf you need help and/or have a question, posting a comment in the PR is a great way to do so.\nThere's no need to tag anybody individually.\nOne of us will drop by and help when we can.\n\nPlease post comments as [line comments](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/commenting-on-a-pull-request#adding-line-comments-to-a-pull-request) when possible, so that they can be threaded.\nYou can [resolve conversations](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/commenting-on-a-pull-request#resolving-conversations) on your own when you feel they're resolved - no need to comment explicitly and/or wait for a maintainer.\n\n#### Requested Changes\n\nAfter a maintainer reviews your PR, they may request changes on it.\nOnce you've made those changes, [re-request review on GitHub](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/about-pull-request-reviews#re-requesting-a-review).\n\nPlease try not to force-push commits to PRs that have already been reviewed.\nDoing so makes it harder to review the changes.\nWe squash merge all commits so there's no need to try to preserve Git history within a PR branch.\n\nOnce you've addressed all our feedback by making code changes and/or started a followup discussion, [re-request review](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/about-pull-request-reviews#re-requesting-a-review) from each maintainer whose feedback you addressed.\n\nOnce all feedback is addressed and the PR is approved, we'll ensure the branch is up to date with \\`main\\` and merge it for you.\n\n#### Post-Merge Recognition\n\nOnce your PR is merged, if you haven't yet been added to the [_Contributors_ table in the README.md](../README.md#contributors) for its [type of contribution](https://allcontributors.org/docs/en/emoji-key \"Allcontributors emoji key\"), you should be soon.\nPlease do ping the maintainer who merged your PR if that doesn't happen within 24 hours - it was likely an oversight on our end!\n\n## Emojis & Appreciation\n\nIf you made it all the way to the end, bravo dear user, we love you.\nPlease include your favorite emoji in the bottom of your issues and PRs to signal to us that you did in fact read this file and are trying to conform to it as best as possible.\n💖 is a good starter if you're not sure which to use.\n`,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t},\n\ttransition() {\n\t\treturn {\n\t\t\tscripts: [\n\t\t\t\t{\n\t\t\t\t\tcommands: [\"rm CONTRIBUTING.md\"],\n\t\t\t\t\tphase: CommandPhase.Migrations,\n\t\t\t\t\tsilent: true,\n\t\t\t\t},\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,YAAY;AACrB,SAAS,oBAAoB;AAEtB,MAAM,wBAAwB,KAAK,YAAY;AAAA,EACrD,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,QAAQ,EAAE,QAAQ,GAAG;AACpB,WAAO;AAAA,MACN,OAAO;AAAA,QACN,WAAW;AAAA,UACV,mBAAmB;AAAA;AAAA,gDAEwB,QAAQ,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sEAUI,QAAQ,KAAK,IAAI,QAAQ,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gNAYuG,QAAQ,KAAK,IAAI,QAAQ,UAAU;AAAA,uJAC5F,QAAQ,KAAK,IAAI,QAAQ,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mDAmBvI,QAAQ,KAAK,IAAI,QAAQ,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAsDlF;AAAA,MACD;AAAA,IACD;AAAA,EACD;AAAA,EACA,aAAa;AACZ,WAAO;AAAA,MACN,SAAS;AAAA,QACR;AAAA,UACC,UAAU,CAAC,oBAAoB;AAAA,UAC/B,OAAO,aAAa;AAAA,UACpB,QAAQ;AAAA,QACT;AAAA,MACD;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockContributorCovenant.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { CommandPhase } from \"./phases.js\";\n\nexport const blockContributorCovenant = base.createBlock({\n\tabout: {\n\t\tname: \"Contributor Covenant\",\n\t},\n\tproduce({ options }) {\n\t\treturn {\n\t\t\tfiles: {\n\t\t\t\t\".github\": {\n\t\t\t\t\t\"CODE_OF_CONDUCT.md\": `# Contributor Covenant Code of Conduct\n\n## Our Pledge\n\nWe as members, contributors, and leaders pledge to make participation in our\ncommunity a harassment-free experience for everyone, regardless of age, body\nsize, visible or invisible disability, ethnicity, sex characteristics, gender\nidentity and expression, level of experience, education, socio-economic status,\nnationality, personal appearance, race, caste, color, religion, or sexual\nidentity and orientation.\n\nWe pledge to act and interact in ways that contribute to an open, welcoming,\ndiverse, inclusive, and healthy community.\n\n## Our Standards\n\nExamples of behavior that contributes to a positive environment for our\ncommunity include:\n\n- Demonstrating empathy and kindness toward other people\n- Being respectful of differing opinions, viewpoints, and experiences\n- Giving and gracefully accepting constructive feedback\n- Accepting responsibility and apologizing to those affected by our mistakes,\n and learning from the experience\n- Focusing on what is best not just for us as individuals, but for the overall\n community\n\nExamples of unacceptable behavior include:\n\n- The use of sexualized language or imagery, and sexual attention or advances of\nany kind\n- Trolling, insulting or derogatory comments, and personal or political attacks\n- Public or private harassment\n- Publishing others' private information, such as a physical or email address,\nwithout their explicit permission\n- Other conduct which could reasonably be considered inappropriate in a\nprofessional setting\n\n## Enforcement Responsibilities\n\nCommunity leaders are responsible for clarifying and enforcing our standards of\nacceptable behavior and will take appropriate and fair corrective action in\nresponse to any behavior that they deem inappropriate, threatening, offensive,\nor harmful.\n\nCommunity leaders have the right and responsibility to remove, edit, or reject\ncomments, commits, code, wiki edits, issues, and other contributions that are\nnot aligned to this Code of Conduct, and will communicate reasons for moderation\ndecisions when appropriate.\n\n## Scope\n\nThis Code of Conduct applies within all community spaces, and also applies when\nan individual is officially representing the community in public spaces.\nExamples of representing our community include using an official e-mail address,\nposting via an official social media account, or acting as an appointed\nrepresentative at an online or offline event.\n\n## Enforcement\n\nInstances of abusive, harassing, or otherwise unacceptable behavior may be\nreported to the community leaders responsible for enforcement at\n${options.email.github}.\nAll complaints will be reviewed and investigated promptly and fairly.\n\nAll community leaders are obligated to respect the privacy and security of the\nreporter of any incident.\n\n## Enforcement Guidelines\n\nCommunity leaders will follow these Community Impact Guidelines in determining\nthe consequences for any action they deem in violation of this Code of Conduct:\n\n### 1. Correction\n\n**Community Impact**: Use of inappropriate language or other behavior deemed\nunprofessional or unwelcome in the community.\n\n**Consequence**: A private, written warning from community leaders, providing\nclarity around the nature of the violation and an explanation of why the\nbehavior was inappropriate. A public apology may be requested.\n\n### 2. Warning\n\n**Community Impact**: A violation through a single incident or series of\nactions.\n\n**Consequence**: A warning with consequences for continued behavior. No\ninteraction with the people involved, including unsolicited interaction with\nthose enforcing the Code of Conduct, for a specified period of time. This\nincludes avoiding interactions in community spaces as well as external channels\nlike social media. Violating these terms may lead to a temporary or permanent\nban.\n\n### 3. Temporary Ban\n\n**Community Impact**: A serious violation of community standards, including\nsustained inappropriate behavior.\n\n**Consequence**: A temporary ban from any sort of interaction or public\ncommunication with the community for a specified period of time. No public or\nprivate interaction with the people involved, including unsolicited interaction\nwith those enforcing the Code of Conduct, is allowed during this period.\nViolating these terms may lead to a permanent ban.\n\n### 4. Permanent Ban\n\n**Community Impact**: Demonstrating a pattern of violation of community\nstandards, including sustained inappropriate behavior, harassment of an\nindividual, or aggression toward or disparagement of classes of individuals.\n\n**Consequence**: A permanent ban from any sort of public interaction within the\ncommunity.\n\n## Attribution\n\nThis Code of Conduct is adapted from the [Contributor Covenant][homepage],\nversion 2.1, available at\n[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1].\n\nCommunity Impact Guidelines were inspired by\n[Mozilla's code of conduct enforcement ladder][mozilla coc].\n\nFor answers to common questions about this code of conduct, see the FAQ at\n[https://www.contributor-covenant.org/faq][faq]. Translations are available at\n[https://www.contributor-covenant.org/translations][translations].\n\n[homepage]: https://www.contributor-covenant.org\n[v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html\n[mozilla coc]: https://github.com/mozilla/diversity\n[faq]: https://www.contributor-covenant.org/faq\n[translations]: https://www.contributor-covenant.org/translations\n`,\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t},\n\ttransition() {\n\t\treturn {\n\t\t\tscripts: [\n\t\t\t\t{\n\t\t\t\t\tcommands: [\"rm CODE_OF_CONDUCT.md\"],\n\t\t\t\t\tphase: CommandPhase.Migrations,\n\t\t\t\t\tsilent: true,\n\t\t\t\t},\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,YAAY;AACrB,SAAS,oBAAoB;AAEtB,MAAM,2BAA2B,KAAK,YAAY;AAAA,EACxD,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,QAAQ,EAAE,QAAQ,GAAG;AACpB,WAAO;AAAA,MACN,OAAO;AAAA,QACN,WAAW;AAAA,UACV,sBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA8DzB,QAAQ,MAAM,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,QAuElB;AAAA,MACD;AAAA,IACD;AAAA,EACD;AAAA,EACA,aAAa;AACZ,WAAO;AAAA,MACN,SAAS;AAAA,QACR;AAAA,UACC,UAAU,CAAC,uBAAuB;AAAA,UAClC,OAAO,aAAa;AAAA,UACpB,QAAQ;AAAA,QACT;AAAA,MACD;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockDevelopmentDocs.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { base } from \"../base.js\";\nimport { CommandPhase } from \"./phases.js\";\n\nconst zInnerSection = z.object({\n\tcontents: z.string(),\n\theading: z.string(),\n});\n\ntype InnerSection = z.infer<typeof zInnerSection>;\n\nfunction printInnerSection(innerSection: InnerSection) {\n\treturn [`### ${innerSection.heading}`, ``, innerSection.contents];\n}\n\nconst zSection = z.object({\n\tcontents: z\n\t\t.union([\n\t\t\tz.string(),\n\t\t\tz.object({\n\t\t\t\tafter: z.array(z.string()).optional(),\n\t\t\t\tbefore: z.string().optional(),\n\t\t\t\titems: z.array(z.string()).optional(),\n\t\t\t\tplural: z.string().optional(),\n\t\t\t}),\n\t\t])\n\t\t.optional(),\n\tinnerSections: z.array(zInnerSection).optional(),\n});\n\ntype Section = z.infer<typeof zSection>;\n\nfunction printSection(heading: string, section: Section) {\n\tconst innerSections = section.innerSections?.flatMap(printInnerSection) ?? [];\n\n\tif (section.contents === undefined) {\n\t\treturn innerSections;\n\t}\n\n\tconst contents =\n\t\ttypeof section.contents === \"string\"\n\t\t\t? { before: section.contents }\n\t\t\t: section.contents;\n\n\treturn [\n\t\t`## ${heading}`,\n\t\t``,\n\t\t...(contents.before ? [contents.before] : []),\n\t\t...(contents.items?.sort((a, b) =>\n\t\t\ta.replaceAll(\"`\", \"\").localeCompare(b.replaceAll(\"`\", \"\")),\n\t\t) ?? []),\n\t\t...(contents.items?.length && contents.plural ? [``, contents.plural] : []),\n\t\t...(contents.after ?? []),\n\t\t...innerSections,\n\t];\n}\n\nexport const blockDevelopmentDocs = base.createBlock({\n\tabout: {\n\t\tname: \"Development Docs\",\n\t},\n\taddons: {\n\t\thints: z.array(z.string()).default([]),\n\t\tsections: z.record(z.string(), zSection).default({}),\n\t},\n\tproduce({ addons, options }) {\n\t\tconst lines = [\n\t\t\t`# Development`,\n\t\t\t``,\n\t\t\t...(options.guide\n\t\t\t\t? [\n\t\t\t\t\t\t`> If you'd like a more guided walkthrough, see [${options.guide.title}](${options.guide.href}).`,\n\t\t\t\t\t\t`> It'll walk you through the common activities you'll need to contribute.`,\n\t\t\t\t\t\t``,\n\t\t\t\t\t]\n\t\t\t\t: []),\n\t\t\t`After [forking the repo from GitHub](https://help.github.com/articles/fork-a-repo) and [installing pnpm](https://pnpm.io/installation):`,\n\t\t\t``,\n\t\t\t`\\`\\`\\`shell`,\n\t\t\t`git clone https://github.com/(your-name-here)/${options.repository}`,\n\t\t\t`cd ${options.repository}`,\n\t\t\t`pnpm install`,\n\t\t\t`\\`\\`\\``,\n\t\t\t``,\n\t\t\t...(addons.hints.length ? [...addons.hints, ``] : []),\n\t\t\t...Object.entries(addons.sections)\n\t\t\t\t.sort(([a], [b]) => a.localeCompare(b))\n\t\t\t\t.flatMap(([heading, section]) => printSection(heading, section)),\n\t\t\t...(options.documentation ? [options.documentation] : []),\n\t\t];\n\n\t\treturn {\n\t\t\tfiles: {\n\t\t\t\t\".github\": {\n\t\t\t\t\t\"DEVELOPMENT.md\": lines.join(\"\\n\"),\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t},\n\ttransition() {\n\t\treturn {\n\t\t\tscripts: [\n\t\t\t\t{\n\t\t\t\t\tcommands: [\"rm DEVELOPMENT.md\"],\n\t\t\t\t\tphase: CommandPhase.Migrations,\n\t\t\t\t\tsilent: true,\n\t\t\t\t},\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,SAAS;AAElB,SAAS,YAAY;AACrB,SAAS,oBAAoB;AAE7B,MAAM,gBAAgB,EAAE,OAAO;AAAA,EAC9B,UAAU,EAAE,OAAO;AAAA,EACnB,SAAS,EAAE,OAAO;AACnB,CAAC;AAID,SAAS,kBAAkB,cAA4B;AACtD,SAAO,CAAC,OAAO,aAAa,OAAO,IAAI,IAAI,aAAa,QAAQ;AACjE;AAEA,MAAM,WAAW,EAAE,OAAO;AAAA,EACzB,UAAU,EACR,MAAM;AAAA,IACN,EAAE,OAAO;AAAA,IACT,EAAE,OAAO;AAAA,MACR,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS;AAAA,MACpC,QAAQ,EAAE,OAAO,EAAE,SAAS;AAAA,MAC5B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS;AAAA,MACpC,QAAQ,EAAE,OAAO,EAAE,SAAS;AAAA,IAC7B,CAAC;AAAA,EACF,CAAC,EACA,SAAS;AAAA,EACX,eAAe,EAAE,MAAM,aAAa,EAAE,SAAS;AAChD,CAAC;AAID,SAAS,aAAa,SAAiB,SAAkB;AACxD,QAAM,gBAAgB,QAAQ,eAAe,QAAQ,iBAAiB,KAAK,CAAC;AAE5E,MAAI,QAAQ,aAAa,QAAW;AACnC,WAAO;AAAA,EACR;AAEA,QAAM,WACL,OAAO,QAAQ,aAAa,WACzB,EAAE,QAAQ,QAAQ,SAAS,IAC3B,QAAQ;AAEZ,SAAO;AAAA,IACN,MAAM,OAAO;AAAA,IACb;AAAA,IACA,GAAI,SAAS,SAAS,CAAC,SAAS,MAAM,IAAI,CAAC;AAAA,IAC3C,GAAI,SAAS,OAAO;AAAA,MAAK,CAAC,GAAG,MAC5B,EAAE,WAAW,KAAK,EAAE,EAAE,cAAc,EAAE,WAAW,KAAK,EAAE,CAAC;AAAA,IAC1D,KAAK,CAAC;AAAA,IACN,GAAI,SAAS,OAAO,UAAU,SAAS,SAAS,CAAC,IAAI,SAAS,MAAM,IAAI,CAAC;AAAA,IACzE,GAAI,SAAS,SAAS,CAAC;AAAA,IACvB,GAAG;AAAA,EACJ;AACD;AAEO,MAAM,uBAAuB,KAAK,YAAY;AAAA,EACpD,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,QAAQ;AAAA,IACP,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;AAAA,IACrC,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAAA,EACpD;AAAA,EACA,QAAQ,EAAE,QAAQ,QAAQ,GAAG;AAC5B,UAAM,QAAQ;AAAA,MACb;AAAA,MACA;AAAA,MACA,GAAI,QAAQ,QACT;AAAA,QACA,mDAAmD,QAAQ,MAAM,KAAK,KAAK,QAAQ,MAAM,IAAI;AAAA,QAC7F;AAAA,QACA;AAAA,MACD,IACC,CAAC;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA,iDAAiD,QAAQ,UAAU;AAAA,MACnE,MAAM,QAAQ,UAAU;AAAA,MACxB;AAAA,MACA;AAAA,MACA;AAAA,MACA,GAAI,OAAO,MAAM,SAAS,CAAC,GAAG,OAAO,OAAO,EAAE,IAAI,CAAC;AAAA,MACnD,GAAG,OAAO,QAAQ,OAAO,QAAQ,EAC/B,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,EACrC,QAAQ,CAAC,CAAC,SAAS,OAAO,MAAM,aAAa,SAAS,OAAO,CAAC;AAAA,MAChE,GAAI,QAAQ,gBAAgB,CAAC,QAAQ,aAAa,IAAI,CAAC;AAAA,IACxD;AAEA,WAAO;AAAA,MACN,OAAO;AAAA,QACN,WAAW;AAAA,UACV,kBAAkB,MAAM,KAAK,IAAI;AAAA,QAClC;AAAA,MACD;AAAA,IACD;AAAA,EACD;AAAA,EACA,aAAa;AACZ,WAAO;AAAA,MACN,SAAS;AAAA,QACR;AAAA,UACC,UAAU,CAAC,mBAAmB;AAAA,UAC9B,OAAO,aAAa;AAAA,UACpB,QAAQ;AAAA,QACT;AAAA,MACD;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockESLint.ts"],"sourcesContent":["// @ts-expect-error -- https://github.com/egoist/parse-package-name/issues/30\nimport { parse as parsePackageName } from \"parse-package-name\";\nimport { z } from \"zod\";\n\nimport { base } from \"../base.js\";\nimport { getPackageDependencies } from \"../data/packageData.js\";\nimport { blockCSpell } from \"./blockCSpell.js\";\nimport { blockDevelopmentDocs } from \"./blockDevelopmentDocs.js\";\nimport { blockGitHubActionsCI } from \"./blockGitHubActionsCI.js\";\nimport { blockPackageJson } from \"./blockPackageJson.js\";\nimport { blockVSCode } from \"./blockVSCode.js\";\nimport { CommandPhase } from \"./phases.js\";\n\nconst zRuleOptions = z.union([\n\tz.literal(\"error\"),\n\tz.literal(\"off\"),\n\tz.literal(\"warn\"),\n\tz.union([\n\t\tz.tuple([z.union([z.literal(\"error\"), z.literal(\"warn\")]), z.unknown()]),\n\t\tz.tuple([\n\t\t\tz.union([z.literal(\"error\"), z.literal(\"warn\")]),\n\t\t\tz.unknown(),\n\t\t\tz.unknown(),\n\t\t]),\n\t]),\n]);\n\nconst zExtensionRules = z.union([\n\tz.record(z.string(), zRuleOptions),\n\tz.array(\n\t\tz.object({\n\t\t\tcomment: z.string().optional(),\n\t\t\tentries: z.record(z.string(), zRuleOptions),\n\t\t}),\n\t),\n]);\n\nconst zExtension = z.object({\n\textends: z.array(z.string()).optional(),\n\tfiles: z.array(z.string()).optional(),\n\tlanguageOptions: z.unknown().optional(),\n\tlinterOptions: z.unknown().optional(),\n\tplugins: z.record(z.string(), z.string()).optional(),\n\trules: zExtensionRules.optional(),\n\tsettings: z.record(z.string(), z.unknown()).optional(),\n});\n\nconst zPackageImport = z.object({\n\tsource: z.string(),\n\tspecifier: z.string(),\n\ttypes: z.boolean().optional(),\n});\n\nexport const blockESLint = base.createBlock({\n\tabout: {\n\t\tname: \"ESLint\",\n\t},\n\taddons: {\n\t\tbeforeLint: z.string().optional(),\n\t\texplanations: z.array(z.string()).default([]),\n\t\textensions: z.array(z.union([z.string(), zExtension])).default([]),\n\t\tignores: z.array(z.string()).default([]),\n\t\timports: z.array(zPackageImport).default([]),\n\t\trules: zExtensionRules.optional(),\n\t\tsettings: z.record(z.string(), z.unknown()).optional(),\n\t},\n\tproduce({ addons, options }) {\n\t\tconst { explanations, extensions, ignores, imports, rules, settings } =\n\t\t\taddons;\n\n\t\tconst explanation =\n\t\t\texplanations.length > 0\n\t\t\t\t? `${explanations\n\t\t\t\t\t\t.map((explanation) => `/*\\n${explanation}\\n*/\\n`)\n\t\t\t\t\t\t.join(\"\")}\\n`\n\t\t\t\t: \"\";\n\n\t\tconst importLines = [\n\t\t\t'import eslint from \"@eslint/js\";',\n\t\t\t'import tseslint from \"typescript-eslint\";',\n\t\t\t...imports.map(\n\t\t\t\t(packageImport) =>\n\t\t\t\t\t`import ${packageImport.specifier} from \"${packageImport.source}\"`,\n\t\t\t),\n\t\t].sort((a, b) =>\n\t\t\ta.replace(/.+from/, \"\").localeCompare(b.replace(/.+from/, \"\")),\n\t\t);\n\n\t\tconst ignoreLines = [\"lib\", \"node_modules\", \"pnpm-lock.yaml\", ...ignores]\n\t\t\t.map((ignore) => JSON.stringify(ignore))\n\t\t\t.sort();\n\n\t\tconst extensionLines = [\n\t\t\tprintExtension({\n\t\t\t\textends: [\n\t\t\t\t\t\"tseslint.configs.strictTypeChecked\",\n\t\t\t\t\t\"tseslint.configs.stylisticTypeChecked\",\n\t\t\t\t],\n\t\t\t\tfiles: [\"**/*.js\", \"**/*.ts\"],\n\t\t\t\tlanguageOptions: {\n\t\t\t\t\tparserOptions: {\n\t\t\t\t\t\tprojectService: {\n\t\t\t\t\t\t\tallowDefaultProject: Array.from(\n\t\t\t\t\t\t\t\tnew Set([\"*.config.*s\", options.bin].filter(Boolean).sort()),\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t\ttsconfigRootDir: \"import.meta.dirname\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t...(rules && { rules }),\n\t\t\t\t...(settings && { settings }),\n\t\t\t}),\n\t\t\t...extensions.map((extension) =>\n\t\t\t\ttypeof extension === \"string\" ? extension : printExtension(extension),\n\t\t\t),\n\t\t]\n\t\t\t.sort((a, b) => processForSort(a).localeCompare(processForSort(b)))\n\t\t\t.map((t) => t);\n\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockCSpell({\n\t\t\t\t\twords: [\"tseslint\"],\n\t\t\t\t}),\n\t\t\t\tblockDevelopmentDocs({\n\t\t\t\t\tsections: {\n\t\t\t\t\t\tLinting: {\n\t\t\t\t\t\t\tcontents: {\n\t\t\t\t\t\t\t\tafter: [\n\t\t\t\t\t\t\t\t\t`\nFor example, ESLint can be run with \\`--fix\\` to auto-fix some lint rule complaints:\n\n\\`\\`\\`shell\npnpm run lint --fix\n\\`\\`\\`\n`,\n\t\t\t\t\t\t\t\t\t...(addons.beforeLint ? [addons.beforeLint] : []),\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tbefore: `\nThis package includes several forms of linting to enforce consistent code quality and styling.\nEach should be shown in VS Code, and can be run manually on the command-line:\n`,\n\t\t\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\t\t\t`- \\`pnpm lint\\` ([ESLint](https://eslint.org) with [typescript-eslint](https://typescript-eslint.io)): Lints JavaScript and TypeScript source files`,\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tplural: `Read the individual documentation for each linter to understand how it can be configured and used best.`,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t\tblockGitHubActionsCI({\n\t\t\t\t\tjobs: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: \"Lint\",\n\t\t\t\t\t\t\tsteps: [\n\t\t\t\t\t\t\t\t...(options.bin ? [{ run: \"pnpm build\" }] : []),\n\t\t\t\t\t\t\t\t{ run: \"pnpm lint\" },\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t\tblockPackageJson({\n\t\t\t\t\tproperties: {\n\t\t\t\t\t\tdevDependencies: getPackageDependencies(\n\t\t\t\t\t\t\t\"@eslint/js\",\n\t\t\t\t\t\t\t\"@types/node\",\n\t\t\t\t\t\t\t\"eslint\",\n\t\t\t\t\t\t\t\"typescript-eslint\",\n\t\t\t\t\t\t\t...imports.flatMap(({ source, types }) => {\n\t\t\t\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-unsafe-call -- https://github.com/egoist/parse-package-name/issues/30\n\t\t\t\t\t\t\t\tconst { name } = parsePackageName(source) as { name: string };\n\t\t\t\t\t\t\t\treturn types ? [name, `@types/${name}`] : [name];\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t),\n\t\t\t\t\t\tscripts: {\n\t\t\t\t\t\t\tlint: \"eslint . --max-warnings 0\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t\tblockVSCode({\n\t\t\t\t\textensions: [\"dbaeumer.vscode-eslint\"],\n\t\t\t\t\tsettings: {\n\t\t\t\t\t\t\"editor.codeActionsOnSave\": {\n\t\t\t\t\t\t\t\"source.fixAll.eslint\": \"explicit\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"eslint.probe\": [\n\t\t\t\t\t\t\t\"javascript\",\n\t\t\t\t\t\t\t\"javascriptreact\",\n\t\t\t\t\t\t\t\"json\",\n\t\t\t\t\t\t\t\"jsonc\",\n\t\t\t\t\t\t\t\"markdown\",\n\t\t\t\t\t\t\t\"typescript\",\n\t\t\t\t\t\t\t\"typescriptreact\",\n\t\t\t\t\t\t\t\"yaml\",\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"eslint.rules.customizations\": [{ rule: \"*\", severity: \"warn\" }],\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t],\n\t\t\tfiles: {\n\t\t\t\t\"eslint.config.js\": `${explanation}${importLines.join(\"\\n\")}\n\nexport default tseslint.config(\n\t{ ignores: [${ignoreLines.join(\", \")}] },\n\t${printExtension({\n\t\tlinterOptions: { reportUnusedDisableDirectives: \"error\" },\n\t})},\n\teslint.configs.recommended,\n\t${extensionLines.join(\",\")}\n);`,\n\t\t\t},\n\t\t\tscripts: [\n\t\t\t\t{\n\t\t\t\t\tcommands: [\"pnpm lint --fix\"],\n\t\t\t\t\tphase: CommandPhase.Process,\n\t\t\t\t},\n\t\t\t],\n\t\t};\n\t},\n\ttransition() {\n\t\treturn {\n\t\t\tscripts: [\n\t\t\t\t{\n\t\t\t\t\tcommands: [\"rm .eslintrc* .eslintignore eslint.config.*\"],\n\t\t\t\t\tphase: CommandPhase.Migrations,\n\t\t\t\t\tsilent: true,\n\t\t\t\t},\n\t\t\t],\n\t\t};\n\t},\n});\n\nfunction printExtension(extension: z.infer<typeof zExtension>) {\n\treturn [\n\t\t\"{\",\n\t\textension.extends && `extends: [${extension.extends.join(\", \")}],`,\n\t\textension.files &&\n\t\t\t`files: [${extension.files.map((glob) => JSON.stringify(glob)).join(\", \")}],`,\n\t\textension.languageOptions &&\n\t\t\t`languageOptions: ${JSON.stringify(extension.languageOptions).replace('\"import.meta.dirname\"', \"import.meta.dirname\")},`,\n\t\textension.linterOptions &&\n\t\t\t`linterOptions: ${JSON.stringify(extension.linterOptions)}`,\n\t\textension.rules && `rules: ${printExtensionRules(extension.rules)},`,\n\t\textension.settings && `settings: ${JSON.stringify(extension.settings)},`,\n\t\t\"}\",\n\t]\n\t\t.filter(Boolean)\n\t\t.join(\" \");\n}\n\nfunction printExtensionRules(rules: z.infer<typeof zExtensionRules>) {\n\tif (!Array.isArray(rules)) {\n\t\treturn JSON.stringify(rules);\n\t}\n\n\treturn [\n\t\t\"{\",\n\t\t...rules.flatMap((group) => [\n\t\t\tgroup.comment ? `\\n\\n// ${group.comment}\\n` : \"\",\n\t\t\t...Object.entries(group.entries).map(\n\t\t\t\t([ruleName, options]) => `\"${ruleName}\": ${JSON.stringify(options)},`,\n\t\t\t),\n\t\t]),\n\t\t\"}\",\n\t].join(\"\");\n}\n\nfunction processForSort(line: string) {\n\tif (line.startsWith(\"...\") || /\\w+/.test(line[0])) {\n\t\treturn `A\\n${line.replaceAll(/\\W+/g, \"\")}`;\n\t}\n\n\treturn `B\\n${(/files: (.+)/.exec(line)?.[1] ?? line).replaceAll(/\\W+/g, \"\")}`;\n}\n"],"mappings":"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","names":["explanation"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockESLintComments.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { blockESLint } from \"./blockESLint.js\";\n\nexport const blockESLintComments = base.createBlock({\n\tabout: {\n\t\tname: \"ESLint Comments Plugin\",\n\t},\n\tproduce() {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockESLint({\n\t\t\t\t\textensions: [\"comments.recommended\"],\n\t\t\t\t\timports: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tsource: \"@eslint-community/eslint-plugin-eslint-comments/configs\",\n\t\t\t\t\t\t\tspecifier: \"comments\",\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,YAAY;AACrB,SAAS,mBAAmB;AAErB,MAAM,sBAAsB,KAAK,YAAY;AAAA,EACnD,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,UAAU;AACT,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,YAAY;AAAA,UACX,YAAY,CAAC,sBAAsB;AAAA,UACnC,SAAS;AAAA,YACR;AAAA,cACC,QAAQ;AAAA,cACR,WAAW;AAAA,YACZ;AAAA,UACD;AAAA,QACD,CAAC;AAAA,MACF;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockESLintJSDoc.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { blockESLint } from \"./blockESLint.js\";\n\nexport const blockESLintJSDoc = base.createBlock({\n\tabout: {\n\t\tname: \"ESLint JSDoc Plugin\",\n\t},\n\tproduce() {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockESLint({\n\t\t\t\t\textensions: [\n\t\t\t\t\t\t'jsdoc.configs[\"flat/contents-typescript-error\"]',\n\t\t\t\t\t\t'jsdoc.configs[\"flat/logical-typescript-error\"]',\n\t\t\t\t\t\t'jsdoc.configs[\"flat/stylistic-typescript-error\"]',\n\t\t\t\t\t],\n\t\t\t\t\timports: [{ source: \"eslint-plugin-jsdoc\", specifier: \"jsdoc\" }],\n\t\t\t\t}),\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,YAAY;AACrB,SAAS,mBAAmB;AAErB,MAAM,mBAAmB,KAAK,YAAY;AAAA,EAChD,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,UAAU;AACT,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,YAAY;AAAA,UACX,YAAY;AAAA,YACX;AAAA,YACA;AAAA,YACA;AAAA,UACD;AAAA,UACA,SAAS,CAAC,EAAE,QAAQ,uBAAuB,WAAW,QAAQ,CAAC;AAAA,QAChE,CAAC;AAAA,MACF;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockESLintJSONC.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { blockESLint } from \"./blockESLint.js\";\n\nexport const blockESLintJSONC = base.createBlock({\n\tabout: {\n\t\tname: \"ESLint JSONC Plugin\",\n\t},\n\tproduce() {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockESLint({\n\t\t\t\t\textensions: [`jsonc.configs[\"flat/recommended-with-json\"]`],\n\t\t\t\t\timports: [{ source: \"eslint-plugin-jsonc\", specifier: \"jsonc\" }],\n\t\t\t\t}),\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,YAAY;AACrB,SAAS,mBAAmB;AAErB,MAAM,mBAAmB,KAAK,YAAY;AAAA,EAChD,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,UAAU;AACT,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,YAAY;AAAA,UACX,YAAY,CAAC,6CAA6C;AAAA,UAC1D,SAAS,CAAC,EAAE,QAAQ,uBAAuB,WAAW,QAAQ,CAAC;AAAA,QAChE,CAAC;AAAA,MACF;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockESLintMarkdown.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { blockESLint } from \"./blockESLint.js\";\n\nexport const blockESLintMarkdown = base.createBlock({\n\tabout: {\n\t\tname: \"ESLint Markdown Plugin\",\n\t},\n\tproduce() {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockESLint({\n\t\t\t\t\textensions: [\"markdown.configs.recommended\"],\n\t\t\t\t\timports: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tsource: \"eslint-plugin-markdown\",\n\t\t\t\t\t\t\tspecifier: \"markdown\",\n\t\t\t\t\t\t\ttypes: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,YAAY;AACrB,SAAS,mBAAmB;AAErB,MAAM,sBAAsB,KAAK,YAAY;AAAA,EACnD,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,UAAU;AACT,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,YAAY;AAAA,UACX,YAAY,CAAC,8BAA8B;AAAA,UAC3C,SAAS;AAAA,YACR;AAAA,cACC,QAAQ;AAAA,cACR,WAAW;AAAA,cACX,OAAO;AAAA,YACR;AAAA,UACD;AAAA,QACD,CAAC;AAAA,MACF;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockESLintMoreStyling.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { blockESLint } from \"./blockESLint.js\";\n\nexport const blockESLintMoreStyling = base.createBlock({\n\tabout: {\n\t\tname: \"ESLint More Styling\",\n\t},\n\tproduce() {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockESLint({\n\t\t\t\t\trules: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcomment: \"Stylistic concerns that don't interfere with Prettier\",\n\t\t\t\t\t\t\tentries: {\n\t\t\t\t\t\t\t\t\"logical-assignment-operators\": [\n\t\t\t\t\t\t\t\t\t\"error\",\n\t\t\t\t\t\t\t\t\t\"always\",\n\t\t\t\t\t\t\t\t\t{ enforceForIfStatements: true },\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"no-useless-rename\": \"error\",\n\t\t\t\t\t\t\t\t\"object-shorthand\": \"error\",\n\t\t\t\t\t\t\t\t\"operator-assignment\": \"error\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,YAAY;AACrB,SAAS,mBAAmB;AAErB,MAAM,yBAAyB,KAAK,YAAY;AAAA,EACtD,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,UAAU;AACT,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,YAAY;AAAA,UACX,OAAO;AAAA,YACN;AAAA,cACC,SAAS;AAAA,cACT,SAAS;AAAA,gBACR,gCAAgC;AAAA,kBAC/B;AAAA,kBACA;AAAA,kBACA,EAAE,wBAAwB,KAAK;AAAA,gBAChC;AAAA,gBACA,qBAAqB;AAAA,gBACrB,oBAAoB;AAAA,gBACpB,uBAAuB;AAAA,cACxB;AAAA,YACD;AAAA,UACD;AAAA,QACD,CAAC;AAAA,MACF;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockESLintNode.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { blockESLint } from \"./blockESLint.js\";\n\nexport const blockESLintNode = base.createBlock({\n\tabout: {\n\t\tname: \"ESLint Node Plugin\",\n\t},\n\tproduce({ options }) {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockESLint({\n\t\t\t\t\textensions: [\n\t\t\t\t\t\t'n.configs[\"flat/recommended\"]',\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\textends: [\"tseslint.configs.disableTypeChecked\"],\n\t\t\t\t\t\t\tfiles: [\"**/*.md/*.ts\"],\n\t\t\t\t\t\t\t...(options.usage?.includes(`from \"${options.repository}`) && {\n\t\t\t\t\t\t\t\trules: {\n\t\t\t\t\t\t\t\t\t\"n/no-missing-import\": [\n\t\t\t\t\t\t\t\t\t\t\"error\",\n\t\t\t\t\t\t\t\t\t\t{ allowModules: [options.repository] },\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t\timports: [{ source: \"eslint-plugin-n\", specifier: \"n\" }],\n\t\t\t\t}),\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,YAAY;AACrB,SAAS,mBAAmB;AAErB,MAAM,kBAAkB,KAAK,YAAY;AAAA,EAC/C,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,QAAQ,EAAE,QAAQ,GAAG;AACpB,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,YAAY;AAAA,UACX,YAAY;AAAA,YACX;AAAA,YACA;AAAA,cACC,SAAS,CAAC,qCAAqC;AAAA,cAC/C,OAAO,CAAC,cAAc;AAAA,cACtB,GAAI,QAAQ,OAAO,SAAS,SAAS,QAAQ,UAAU,EAAE,KAAK;AAAA,gBAC7D,OAAO;AAAA,kBACN,uBAAuB;AAAA,oBACtB;AAAA,oBACA,EAAE,cAAc,CAAC,QAAQ,UAAU,EAAE;AAAA,kBACtC;AAAA,gBACD;AAAA,cACD;AAAA,YACD;AAAA,UACD;AAAA,UACA,SAAS,CAAC,EAAE,QAAQ,mBAAmB,WAAW,IAAI,CAAC;AAAA,QACxD,CAAC;AAAA,MACF;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockESLintPackageJson.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { blockESLint } from \"./blockESLint.js\";\n\nexport const blockESLintPackageJson = base.createBlock({\n\tabout: {\n\t\tname: \"ESLint package.json Plugin\",\n\t},\n\tproduce() {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockESLint({\n\t\t\t\t\textensions: [\"packageJson\"],\n\t\t\t\t\timports: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tsource: \"eslint-plugin-package-json/configs/recommended\",\n\t\t\t\t\t\t\tspecifier: \"packageJson\",\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,YAAY;AACrB,SAAS,mBAAmB;AAErB,MAAM,yBAAyB,KAAK,YAAY;AAAA,EACtD,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,UAAU;AACT,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,YAAY;AAAA,UACX,YAAY,CAAC,aAAa;AAAA,UAC1B,SAAS;AAAA,YACR;AAAA,cACC,QAAQ;AAAA,cACR,WAAW;AAAA,YACZ;AAAA,UACD;AAAA,QACD,CAAC;AAAA,MACF;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockESLintPerfectionist.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { blockESLint } from \"./blockESLint.js\";\n\nexport const blockESLintPerfectionist = base.createBlock({\n\tabout: {\n\t\tname: \"ESLint Perfectionist Plugin\",\n\t},\n\tproduce() {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockESLint({\n\t\t\t\t\textensions: [`perfectionist.configs[\"recommended-natural\"]`],\n\t\t\t\t\timports: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tsource: \"eslint-plugin-perfectionist\",\n\t\t\t\t\t\t\tspecifier: \"perfectionist\",\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t\tsettings: {\n\t\t\t\t\t\tperfectionist: {\n\t\t\t\t\t\t\tpartitionByComment: true,\n\t\t\t\t\t\t\ttype: \"natural\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,YAAY;AACrB,SAAS,mBAAmB;AAErB,MAAM,2BAA2B,KAAK,YAAY;AAAA,EACxD,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,UAAU;AACT,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,YAAY;AAAA,UACX,YAAY,CAAC,8CAA8C;AAAA,UAC3D,SAAS;AAAA,YACR;AAAA,cACC,QAAQ;AAAA,cACR,WAAW;AAAA,YACZ;AAAA,UACD;AAAA,UACA,UAAU;AAAA,YACT,eAAe;AAAA,cACd,oBAAoB;AAAA,cACpB,MAAM;AAAA,YACP;AAAA,UACD;AAAA,QACD,CAAC;AAAA,MACF;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockESLintRegexp.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { blockESLint } from \"./blockESLint.js\";\n\nexport const blockESLintRegexp = base.createBlock({\n\tabout: {\n\t\tname: \"ESLint Regexp Plugin\",\n\t},\n\tproduce() {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockESLint({\n\t\t\t\t\textensions: [`regexp.configs[\"flat/recommended\"]`],\n\t\t\t\t\timports: [\n\t\t\t\t\t\t{ source: \"eslint-plugin-regexp\", specifier: \"* as regexp\" },\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,YAAY;AACrB,SAAS,mBAAmB;AAErB,MAAM,oBAAoB,KAAK,YAAY;AAAA,EACjD,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,UAAU;AACT,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,YAAY;AAAA,UACX,YAAY,CAAC,oCAAoC;AAAA,UACjD,SAAS;AAAA,YACR,EAAE,QAAQ,wBAAwB,WAAW,cAAc;AAAA,UAC5D;AAAA,QACD,CAAC;AAAA,MACF;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockESLintYML.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { blockESLint } from \"./blockESLint.js\";\n\nexport const blockESLintYML = base.createBlock({\n\tabout: {\n\t\tname: \"ESLint YML Plugin\",\n\t},\n\tproduce() {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockESLint({\n\t\t\t\t\textensions: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\textends: [\n\t\t\t\t\t\t\t\t'yml.configs[\"flat/recommended\"]',\n\t\t\t\t\t\t\t\t'yml.configs[\"flat/prettier\"]',\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\tfiles: [\"**/*.{yml,yaml}\"],\n\t\t\t\t\t\t\trules: {\n\t\t\t\t\t\t\t\t\"yml/file-extension\": [\"error\", { extension: \"yml\" }],\n\t\t\t\t\t\t\t\t\"yml/sort-keys\": [\n\t\t\t\t\t\t\t\t\t\"error\",\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\torder: { type: \"asc\" },\n\t\t\t\t\t\t\t\t\t\tpathPattern: \"^.*$\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"yml/sort-sequence-values\": [\n\t\t\t\t\t\t\t\t\t\"error\",\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\torder: { type: \"asc\" },\n\t\t\t\t\t\t\t\t\t\tpathPattern: \"^.*$\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t\timports: [{ source: \"eslint-plugin-yml\", specifier: \"yml\" }],\n\t\t\t\t}),\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,YAAY;AACrB,SAAS,mBAAmB;AAErB,MAAM,iBAAiB,KAAK,YAAY;AAAA,EAC9C,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,UAAU;AACT,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,YAAY;AAAA,UACX,YAAY;AAAA,YACX;AAAA,cACC,SAAS;AAAA,gBACR;AAAA,gBACA;AAAA,cACD;AAAA,cACA,OAAO,CAAC,iBAAiB;AAAA,cACzB,OAAO;AAAA,gBACN,sBAAsB,CAAC,SAAS,EAAE,WAAW,MAAM,CAAC;AAAA,gBACpD,iBAAiB;AAAA,kBAChB;AAAA,kBACA;AAAA,oBACC,OAAO,EAAE,MAAM,MAAM;AAAA,oBACrB,aAAa;AAAA,kBACd;AAAA,gBACD;AAAA,gBACA,4BAA4B;AAAA,kBAC3B;AAAA,kBACA;AAAA,oBACC,OAAO,EAAE,MAAM,MAAM;AAAA,oBACrB,aAAa;AAAA,kBACd;AAAA,gBACD;AAAA,cACD;AAAA,YACD;AAAA,UACD;AAAA,UACA,SAAS,CAAC,EAAE,QAAQ,qBAAqB,WAAW,MAAM,CAAC;AAAA,QAC5D,CAAC;AAAA,MACF;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/blocks/blockExampleFiles.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { base } from \"../base.js\";\n\nexport const blockExampleFiles = base.createBlock({\n\tabout: {\n\t\tname: \"Example Files\",\n\t},\n\taddons: {\n\t\tfiles: z.record(z.string()).default({}),\n\t},\n\tsetup({ addons }) {\n\t\treturn {\n\t\t\tfiles: {\n\t\t\t\tsrc: addons.files,\n\t\t\t},\n\t\t};\n\t},\n\t// TODO: Make produce() optional\n\t// This needs createBlock to be generic to know if block.produce({}) is ok\n\tproduce() {\n\t\treturn {};\n\t},\n});\n"],"mappings":"AAAA,SAAS,SAAS;AAElB,SAAS,YAAY;AAEd,MAAM,oBAAoB,KAAK,YAAY;AAAA,EACjD,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,QAAQ;AAAA,IACP,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;AAAA,EACvC;AAAA,EACA,MAAM,EAAE,OAAO,GAAG;AACjB,WAAO;AAAA,MACN,OAAO;AAAA,QACN,KAAK,OAAO;AAAA,MACb;AAAA,IACD;AAAA,EACD;AAAA;AAAA;AAAA,EAGA,UAAU;AACT,WAAO,CAAC;AAAA,EACT;AACD,CAAC;","names":[]}