create-typescript-app 2.45.0 → 2.46.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 (549) hide show
  1. package/lib/base.d.ts +170 -167
  2. package/lib/base.d.ts.map +1 -0
  3. package/lib/base.js +132 -204
  4. package/lib/base.js.map +1 -0
  5. package/lib/blocks/actions/resolveUses.d.ts +5 -2
  6. package/lib/blocks/actions/resolveUses.d.ts.map +1 -0
  7. package/lib/blocks/actions/resolveUses.js +13 -20
  8. package/lib/blocks/actions/resolveUses.js.map +1 -0
  9. package/lib/blocks/actions/steps.d.ts +25 -21
  10. package/lib/blocks/actions/steps.d.ts.map +1 -0
  11. package/lib/blocks/actions/steps.js +18 -23
  12. package/lib/blocks/actions/steps.js.map +1 -0
  13. package/lib/blocks/bin/getPrimaryBin.d.ts +4 -0
  14. package/lib/blocks/bin/getPrimaryBin.d.ts.map +1 -0
  15. package/lib/blocks/bin/getPrimaryBin.js +6 -4
  16. package/lib/blocks/bin/getPrimaryBin.js.map +1 -0
  17. package/lib/blocks/blockAllContributors.d.ts +70 -67
  18. package/lib/blocks/blockAllContributors.d.ts.map +1 -0
  19. package/lib/blocks/blockAllContributors.js +122 -170
  20. package/lib/blocks/blockAllContributors.js.map +1 -0
  21. package/lib/blocks/blockAreTheTypesWrong.d.ts +70 -67
  22. package/lib/blocks/blockAreTheTypesWrong.d.ts.map +1 -0
  23. package/lib/blocks/blockAreTheTypesWrong.js +13 -25
  24. package/lib/blocks/blockAreTheTypesWrong.js.map +1 -0
  25. package/lib/blocks/blockCSpell.d.ts +72 -69
  26. package/lib/blocks/blockCSpell.d.ts.map +1 -0
  27. package/lib/blocks/blockCSpell.js +68 -105
  28. package/lib/blocks/blockCSpell.js.map +1 -0
  29. package/lib/blocks/blockCTATransitions.d.ts +70 -67
  30. package/lib/blocks/blockCTATransitions.d.ts.map +1 -0
  31. package/lib/blocks/blockCTATransitions.js +108 -158
  32. package/lib/blocks/blockCTATransitions.js.map +1 -0
  33. package/lib/blocks/blockCodecov.d.ts +71 -68
  34. package/lib/blocks/blockCodecov.d.ts.map +1 -0
  35. package/lib/blocks/blockCodecov.js +48 -75
  36. package/lib/blocks/blockCodecov.js.map +1 -0
  37. package/lib/blocks/blockContributingDocs.d.ts +70 -67
  38. package/lib/blocks/blockContributingDocs.d.ts.map +1 -0
  39. package/lib/blocks/blockContributingDocs.js +14 -21
  40. package/lib/blocks/blockContributingDocs.js.map +1 -0
  41. package/lib/blocks/blockContributorCovenant.d.ts +70 -67
  42. package/lib/blocks/blockContributorCovenant.d.ts.map +1 -0
  43. package/lib/blocks/blockContributorCovenant.js +23 -37
  44. package/lib/blocks/blockContributorCovenant.js.map +1 -0
  45. package/lib/blocks/blockDevelopmentDocs.d.ts +83 -80
  46. package/lib/blocks/blockDevelopmentDocs.d.ts.map +1 -0
  47. package/lib/blocks/blockDevelopmentDocs.js +64 -74
  48. package/lib/blocks/blockDevelopmentDocs.js.map +1 -0
  49. package/lib/blocks/blockESLint.d.ts +95 -92
  50. package/lib/blocks/blockESLint.d.ts.map +1 -0
  51. package/lib/blocks/blockESLint.js +169 -263
  52. package/lib/blocks/blockESLint.js.map +1 -0
  53. package/lib/blocks/blockESLintComments.d.ts +70 -67
  54. package/lib/blocks/blockESLintComments.d.ts.map +1 -0
  55. package/lib/blocks/blockESLintComments.js +16 -21
  56. package/lib/blocks/blockESLintComments.js.map +1 -0
  57. package/lib/blocks/blockESLintJSDoc.d.ts +70 -67
  58. package/lib/blocks/blockESLintJSDoc.d.ts.map +1 -0
  59. package/lib/blocks/blockESLintJSDoc.js +20 -20
  60. package/lib/blocks/blockESLintJSDoc.js.map +1 -0
  61. package/lib/blocks/blockESLintJSONC.d.ts +70 -67
  62. package/lib/blocks/blockESLintJSONC.d.ts.map +1 -0
  63. package/lib/blocks/blockESLintJSONC.js +16 -16
  64. package/lib/blocks/blockESLintJSONC.js.map +1 -0
  65. package/lib/blocks/blockESLintMarkdown.d.ts +70 -67
  66. package/lib/blocks/blockESLintMarkdown.d.ts.map +1 -0
  67. package/lib/blocks/blockESLintMarkdown.js +17 -22
  68. package/lib/blocks/blockESLintMarkdown.js.map +1 -0
  69. package/lib/blocks/blockESLintMoreStyling.d.ts +70 -67
  70. package/lib/blocks/blockESLintMoreStyling.d.ts.map +1 -0
  71. package/lib/blocks/blockESLintMoreStyling.js +22 -30
  72. package/lib/blocks/blockESLintMoreStyling.js.map +1 -0
  73. package/lib/blocks/blockESLintNode.d.ts +70 -67
  74. package/lib/blocks/blockESLintNode.d.ts.map +1 -0
  75. package/lib/blocks/blockESLintNode.js +20 -23
  76. package/lib/blocks/blockESLintNode.js.map +1 -0
  77. package/lib/blocks/blockESLintPackageJson.d.ts +70 -67
  78. package/lib/blocks/blockESLintPackageJson.d.ts.map +1 -0
  79. package/lib/blocks/blockESLintPackageJson.js +26 -49
  80. package/lib/blocks/blockESLintPackageJson.js.map +1 -0
  81. package/lib/blocks/blockESLintPerfectionist.d.ts +70 -67
  82. package/lib/blocks/blockESLintPerfectionist.d.ts.map +1 -0
  83. package/lib/blocks/blockESLintPerfectionist.js +20 -27
  84. package/lib/blocks/blockESLintPerfectionist.js.map +1 -0
  85. package/lib/blocks/blockESLintPlugin.d.ts +71 -68
  86. package/lib/blocks/blockESLintPlugin.d.ts.map +1 -0
  87. package/lib/blocks/blockESLintPlugin.js +89 -137
  88. package/lib/blocks/blockESLintPlugin.js.map +1 -0
  89. package/lib/blocks/blockESLintRegexp.d.ts +70 -67
  90. package/lib/blocks/blockESLintRegexp.d.ts.map +1 -0
  91. package/lib/blocks/blockESLintRegexp.js +16 -18
  92. package/lib/blocks/blockESLintRegexp.js.map +1 -0
  93. package/lib/blocks/blockESLintYML.d.ts +70 -67
  94. package/lib/blocks/blockESLintYML.d.ts.map +1 -0
  95. package/lib/blocks/blockESLintYML.js +30 -41
  96. package/lib/blocks/blockESLintYML.js.map +1 -0
  97. package/lib/blocks/blockExampleFiles.d.ts +72 -69
  98. package/lib/blocks/blockExampleFiles.d.ts.map +1 -0
  99. package/lib/blocks/blockExampleFiles.js +22 -29
  100. package/lib/blocks/blockExampleFiles.js.map +1 -0
  101. package/lib/blocks/blockFunding.d.ts +70 -67
  102. package/lib/blocks/blockFunding.d.ts.map +1 -0
  103. package/lib/blocks/blockFunding.js +10 -15
  104. package/lib/blocks/blockFunding.js.map +1 -0
  105. package/lib/blocks/blockGitHubActionsCI.d.ts +85 -82
  106. package/lib/blocks/blockGitHubActionsCI.d.ts.map +1 -0
  107. package/lib/blocks/blockGitHubActionsCI.js +83 -134
  108. package/lib/blocks/blockGitHubActionsCI.js.map +1 -0
  109. package/lib/blocks/blockGitHubApps.d.ts +74 -71
  110. package/lib/blocks/blockGitHubApps.d.ts.map +1 -0
  111. package/lib/blocks/blockGitHubApps.js +15 -24
  112. package/lib/blocks/blockGitHubApps.js.map +1 -0
  113. package/lib/blocks/blockGitHubIssueTemplates.d.ts +70 -67
  114. package/lib/blocks/blockGitHubIssueTemplates.d.ts.map +1 -0
  115. package/lib/blocks/blockGitHubIssueTemplates.js +185 -204
  116. package/lib/blocks/blockGitHubIssueTemplates.js.map +1 -0
  117. package/lib/blocks/blockGitHubPRTemplate.d.ts +70 -67
  118. package/lib/blocks/blockGitHubPRTemplate.d.ts.map +1 -0
  119. package/lib/blocks/blockGitHubPRTemplate.js +11 -16
  120. package/lib/blocks/blockGitHubPRTemplate.js.map +1 -0
  121. package/lib/blocks/blockGitignore.d.ts +71 -68
  122. package/lib/blocks/blockGitignore.d.ts.map +1 -0
  123. package/lib/blocks/blockGitignore.js +13 -18
  124. package/lib/blocks/blockGitignore.js.map +1 -0
  125. package/lib/blocks/blockKnip.d.ts +73 -70
  126. package/lib/blocks/blockKnip.d.ts.map +1 -0
  127. package/lib/blocks/blockKnip.js +60 -88
  128. package/lib/blocks/blockKnip.js.map +1 -0
  129. package/lib/blocks/blockMITLicense.d.ts +70 -67
  130. package/lib/blocks/blockMITLicense.d.ts.map +1 -0
  131. package/lib/blocks/blockMITLicense.js +21 -31
  132. package/lib/blocks/blockMITLicense.js.map +1 -0
  133. package/lib/blocks/blockMain.d.ts +72 -69
  134. package/lib/blocks/blockMain.d.ts.map +1 -0
  135. package/lib/blocks/blockMain.js +17 -29
  136. package/lib/blocks/blockMain.js.map +1 -0
  137. package/lib/blocks/blockMarkdownlint.d.ts +71 -68
  138. package/lib/blocks/blockMarkdownlint.d.ts.map +1 -0
  139. package/lib/blocks/blockMarkdownlint.js +55 -94
  140. package/lib/blocks/blockMarkdownlint.js.map +1 -0
  141. package/lib/blocks/blockNcc.d.ts +71 -68
  142. package/lib/blocks/blockNcc.d.ts.map +1 -0
  143. package/lib/blocks/blockNcc.js +44 -72
  144. package/lib/blocks/blockNcc.js.map +1 -0
  145. package/lib/blocks/blockNvmrc.d.ts +70 -67
  146. package/lib/blocks/blockNvmrc.d.ts.map +1 -0
  147. package/lib/blocks/blockNvmrc.js +16 -21
  148. package/lib/blocks/blockNvmrc.js.map +1 -0
  149. package/lib/blocks/blockOctoGuide.d.ts +71 -68
  150. package/lib/blocks/blockOctoGuide.d.ts.map +1 -0
  151. package/lib/blocks/blockOctoGuide.js +65 -93
  152. package/lib/blocks/blockOctoGuide.js.map +1 -0
  153. package/lib/blocks/blockOctoGuideStrict.d.ts +70 -67
  154. package/lib/blocks/blockOctoGuideStrict.d.ts.map +1 -0
  155. package/lib/blocks/blockOctoGuideStrict.js +10 -15
  156. package/lib/blocks/blockOctoGuideStrict.js.map +1 -0
  157. package/lib/blocks/blockPackageJson.d.ts +144 -141
  158. package/lib/blocks/blockPackageJson.d.ts.map +1 -0
  159. package/lib/blocks/blockPackageJson.js +82 -113
  160. package/lib/blocks/blockPackageJson.js.map +1 -0
  161. package/lib/blocks/blockPnpmDedupe.d.ts +70 -67
  162. package/lib/blocks/blockPnpmDedupe.d.ts.map +1 -0
  163. package/lib/blocks/blockPnpmDedupe.js +24 -49
  164. package/lib/blocks/blockPnpmDedupe.js.map +1 -0
  165. package/lib/blocks/blockPrettier.d.ts +79 -76
  166. package/lib/blocks/blockPrettier.d.ts.map +1 -0
  167. package/lib/blocks/blockPrettier.js +82 -116
  168. package/lib/blocks/blockPrettier.js.map +1 -0
  169. package/lib/blocks/blockPrettierPluginCurly.d.ts +70 -67
  170. package/lib/blocks/blockPrettierPluginCurly.d.ts.map +1 -0
  171. package/lib/blocks/blockPrettierPluginCurly.js +10 -15
  172. package/lib/blocks/blockPrettierPluginCurly.js.map +1 -0
  173. package/lib/blocks/blockPrettierPluginPackageJson.d.ts +70 -67
  174. package/lib/blocks/blockPrettierPluginPackageJson.d.ts.map +1 -0
  175. package/lib/blocks/blockPrettierPluginPackageJson.js +10 -15
  176. package/lib/blocks/blockPrettierPluginPackageJson.js.map +1 -0
  177. package/lib/blocks/blockPrettierPluginSh.d.ts +70 -67
  178. package/lib/blocks/blockPrettierPluginSh.d.ts.map +1 -0
  179. package/lib/blocks/blockPrettierPluginSh.js +10 -15
  180. package/lib/blocks/blockPrettierPluginSh.js.map +1 -0
  181. package/lib/blocks/blockREADME.d.ts +82 -79
  182. package/lib/blocks/blockREADME.d.ts.map +1 -0
  183. package/lib/blocks/blockREADME.js +46 -60
  184. package/lib/blocks/blockREADME.js.map +1 -0
  185. package/lib/blocks/blockReleaseIt.d.ts +74 -71
  186. package/lib/blocks/blockReleaseIt.d.ts.map +1 -0
  187. package/lib/blocks/blockReleaseIt.js +152 -181
  188. package/lib/blocks/blockReleaseIt.js.map +1 -0
  189. package/lib/blocks/blockRemoveDependencies.d.ts +71 -68
  190. package/lib/blocks/blockRemoveDependencies.d.ts.map +1 -0
  191. package/lib/blocks/blockRemoveDependencies.js +18 -27
  192. package/lib/blocks/blockRemoveDependencies.js.map +1 -0
  193. package/lib/blocks/blockRemoveFiles.d.ts +71 -68
  194. package/lib/blocks/blockRemoveFiles.d.ts.map +1 -0
  195. package/lib/blocks/blockRemoveFiles.js +19 -28
  196. package/lib/blocks/blockRemoveFiles.js.map +1 -0
  197. package/lib/blocks/blockRemoveWorkflows.d.ts +71 -68
  198. package/lib/blocks/blockRemoveWorkflows.d.ts.map +1 -0
  199. package/lib/blocks/blockRemoveWorkflows.js +16 -27
  200. package/lib/blocks/blockRemoveWorkflows.js.map +1 -0
  201. package/lib/blocks/blockRenovate.d.ts +71 -68
  202. package/lib/blocks/blockRenovate.d.ts.map +1 -0
  203. package/lib/blocks/blockRenovate.js +37 -52
  204. package/lib/blocks/blockRenovate.js.map +1 -0
  205. package/lib/blocks/blockRepositoryBranchRuleset.d.ts +71 -68
  206. package/lib/blocks/blockRepositoryBranchRuleset.d.ts.map +1 -0
  207. package/lib/blocks/blockRepositoryBranchRuleset.js +77 -107
  208. package/lib/blocks/blockRepositoryBranchRuleset.js.map +1 -0
  209. package/lib/blocks/blockRepositoryLabels.d.ts +70 -67
  210. package/lib/blocks/blockRepositoryLabels.d.ts.map +1 -0
  211. package/lib/blocks/blockRepositoryLabels.js +51 -58
  212. package/lib/blocks/blockRepositoryLabels.js.map +1 -0
  213. package/lib/blocks/blockRepositorySecrets.d.ts +74 -71
  214. package/lib/blocks/blockRepositorySecrets.d.ts.map +1 -0
  215. package/lib/blocks/blockRepositorySecrets.js +15 -26
  216. package/lib/blocks/blockRepositorySecrets.js.map +1 -0
  217. package/lib/blocks/blockRepositorySettings.d.ts +70 -67
  218. package/lib/blocks/blockRepositorySettings.d.ts.map +1 -0
  219. package/lib/blocks/blockRepositorySettings.js +32 -39
  220. package/lib/blocks/blockRepositorySettings.js.map +1 -0
  221. package/lib/blocks/blockSecurityDocs.d.ts +70 -67
  222. package/lib/blocks/blockSecurityDocs.d.ts.map +1 -0
  223. package/lib/blocks/blockSecurityDocs.js +11 -16
  224. package/lib/blocks/blockSecurityDocs.js.map +1 -0
  225. package/lib/blocks/blockTSDown.d.ts +79 -0
  226. package/lib/blocks/blockTSDown.d.ts.map +1 -0
  227. package/lib/blocks/blockTSDown.js +111 -0
  228. package/lib/blocks/blockTSDown.js.map +1 -0
  229. package/lib/blocks/blockTemplatedWith.d.ts +70 -67
  230. package/lib/blocks/blockTemplatedWith.d.ts.map +1 -0
  231. package/lib/blocks/blockTemplatedWith.js +12 -20
  232. package/lib/blocks/blockTemplatedWith.js.map +1 -0
  233. package/lib/blocks/blockTypeScript.d.ts +181 -178
  234. package/lib/blocks/blockTypeScript.d.ts.map +1 -0
  235. package/lib/blocks/blockTypeScript.js +94 -127
  236. package/lib/blocks/blockTypeScript.js.map +1 -0
  237. package/lib/blocks/blockVSCode.d.ts +78 -75
  238. package/lib/blocks/blockVSCode.d.ts.map +1 -0
  239. package/lib/blocks/blockVSCode.js +51 -81
  240. package/lib/blocks/blockVSCode.js.map +1 -0
  241. package/lib/blocks/blockVitest.d.ts +86 -83
  242. package/lib/blocks/blockVitest.d.ts.map +1 -0
  243. package/lib/blocks/blockVitest.js +115 -168
  244. package/lib/blocks/blockVitest.js.map +1 -0
  245. package/lib/blocks/blockWebExt.d.ts +70 -67
  246. package/lib/blocks/blockWebExt.d.ts.map +1 -0
  247. package/lib/blocks/blockWebExt.js +59 -83
  248. package/lib/blocks/blockWebExt.js.map +1 -0
  249. package/lib/blocks/eslint/blockESLintIntake.d.ts +9 -6
  250. package/lib/blocks/eslint/blockESLintIntake.d.ts.map +1 -0
  251. package/lib/blocks/eslint/blockESLintIntake.js +84 -111
  252. package/lib/blocks/eslint/blockESLintIntake.js.map +1 -0
  253. package/lib/blocks/eslint/blockESLintPluginIntake.d.ts +5 -2
  254. package/lib/blocks/eslint/blockESLintPluginIntake.d.ts.map +1 -0
  255. package/lib/blocks/eslint/blockESLintPluginIntake.js +26 -44
  256. package/lib/blocks/eslint/blockESLintPluginIntake.js.map +1 -0
  257. package/lib/blocks/eslint/schemas.d.ts +77 -73
  258. package/lib/blocks/eslint/schemas.d.ts.map +1 -0
  259. package/lib/blocks/eslint/schemas.js +31 -36
  260. package/lib/blocks/eslint/schemas.js.map +1 -0
  261. package/lib/blocks/files/createJobName.d.ts +4 -0
  262. package/lib/blocks/files/createJobName.d.ts.map +1 -0
  263. package/lib/blocks/files/createJobName.js +6 -4
  264. package/lib/blocks/files/createJobName.js.map +1 -0
  265. package/lib/blocks/files/createMultiWorkflowFile.d.ts +21 -14
  266. package/lib/blocks/files/createMultiWorkflowFile.d.ts.map +1 -0
  267. package/lib/blocks/files/createMultiWorkflowFile.js +27 -35
  268. package/lib/blocks/files/createMultiWorkflowFile.js.map +1 -0
  269. package/lib/blocks/files/createSoloWorkflowFile.d.ts +61 -52
  270. package/lib/blocks/files/createSoloWorkflowFile.d.ts.map +1 -0
  271. package/lib/blocks/files/createSoloWorkflowFile.js +19 -25
  272. package/lib/blocks/files/createSoloWorkflowFile.js.map +1 -0
  273. package/lib/blocks/files/formatIgnoreFile.d.ts +4 -0
  274. package/lib/blocks/files/formatIgnoreFile.d.ts.map +1 -0
  275. package/lib/blocks/files/formatIgnoreFile.js +6 -4
  276. package/lib/blocks/files/formatIgnoreFile.js.map +1 -0
  277. package/lib/blocks/files/formatWorkflowYaml.d.ts +4 -0
  278. package/lib/blocks/files/formatWorkflowYaml.d.ts.map +1 -0
  279. package/lib/blocks/files/formatWorkflowYaml.js +7 -4
  280. package/lib/blocks/files/formatWorkflowYaml.js.map +1 -0
  281. package/lib/blocks/files/formatYaml.d.ts +4 -0
  282. package/lib/blocks/files/formatYaml.d.ts.map +1 -0
  283. package/lib/blocks/files/formatYaml.js +16 -21
  284. package/lib/blocks/files/formatYaml.js.map +1 -0
  285. package/lib/blocks/files/removeUsesQuotes.d.ts +4 -0
  286. package/lib/blocks/files/removeUsesQuotes.d.ts.map +1 -0
  287. package/lib/blocks/files/removeUsesQuotes.js +6 -7
  288. package/lib/blocks/files/removeUsesQuotes.js.map +1 -0
  289. package/lib/blocks/getInstallationSuggestions.d.ts +4 -0
  290. package/lib/blocks/getInstallationSuggestions.d.ts.map +1 -0
  291. package/lib/blocks/getInstallationSuggestions.js +11 -12
  292. package/lib/blocks/getInstallationSuggestions.js.map +1 -0
  293. package/lib/blocks/index.d.ts +3646 -3644
  294. package/lib/blocks/index.d.ts.map +1 -0
  295. package/lib/blocks/index.js +83 -177
  296. package/lib/blocks/index.js.map +1 -0
  297. package/lib/blocks/intake/intakeFile.d.ts +5 -1
  298. package/lib/blocks/intake/intakeFile.d.ts.map +1 -0
  299. package/lib/blocks/intake/intakeFile.js +12 -18
  300. package/lib/blocks/intake/intakeFile.js.map +1 -0
  301. package/lib/blocks/intake/intakeFileAsJson.d.ts +5 -1
  302. package/lib/blocks/intake/intakeFileAsJson.d.ts.map +1 -0
  303. package/lib/blocks/intake/intakeFileAsJson.js +13 -10
  304. package/lib/blocks/intake/intakeFileAsJson.js.map +1 -0
  305. package/lib/blocks/intake/intakeFileAsYaml.d.ts +5 -1
  306. package/lib/blocks/intake/intakeFileAsYaml.d.ts.map +1 -0
  307. package/lib/blocks/intake/intakeFileAsYaml.js +13 -10
  308. package/lib/blocks/intake/intakeFileAsYaml.js.map +1 -0
  309. package/lib/blocks/intake/intakeFileDefineConfig.d.ts +5 -1
  310. package/lib/blocks/intake/intakeFileDefineConfig.d.ts.map +1 -0
  311. package/lib/blocks/intake/intakeFileDefineConfig.js +20 -23
  312. package/lib/blocks/intake/intakeFileDefineConfig.js.map +1 -0
  313. package/lib/blocks/options.fakes.d.ts +23 -20
  314. package/lib/blocks/options.fakes.d.ts.map +1 -0
  315. package/lib/blocks/options.fakes.js +19 -23
  316. package/lib/blocks/options.fakes.js.map +1 -0
  317. package/lib/blocks/outcomeLabels.d.ts +12 -9
  318. package/lib/blocks/outcomeLabels.d.ts.map +1 -0
  319. package/lib/blocks/outcomeLabels.js +93 -92
  320. package/lib/blocks/outcomeLabels.js.map +1 -0
  321. package/lib/blocks/phases.d.ts +9 -6
  322. package/lib/blocks/phases.d.ts.map +1 -0
  323. package/lib/blocks/phases.js +10 -8
  324. package/lib/blocks/phases.js.map +1 -0
  325. package/lib/constants.d.ts +8 -5
  326. package/lib/constants.d.ts.map +1 -0
  327. package/lib/constants.js +9 -9
  328. package/lib/constants.js.map +1 -0
  329. package/lib/data/contributions.d.ts +4 -0
  330. package/lib/data/contributions.d.ts.map +1 -0
  331. package/lib/data/contributions.js +13 -11
  332. package/lib/data/contributions.js.map +1 -0
  333. package/lib/data/packageData.d.ts +7 -166
  334. package/lib/data/packageData.d.ts.map +1 -0
  335. package/lib/data/packageData.js +16 -24
  336. package/lib/data/packageData.js.map +1 -0
  337. package/lib/index.d.ts +290 -288
  338. package/lib/index.d.ts.map +1 -0
  339. package/lib/index.js +61 -7
  340. package/lib/index.js.map +1 -0
  341. package/lib/inputs/inputFromDirectory.d.ts +8 -4
  342. package/lib/inputs/inputFromDirectory.d.ts.map +1 -0
  343. package/lib/inputs/inputFromDirectory.js +11 -10
  344. package/lib/inputs/inputFromDirectory.js.map +1 -0
  345. package/lib/inputs/inputFromOctokit.d.ts +9 -5
  346. package/lib/inputs/inputFromOctokit.d.ts.map +1 -0
  347. package/lib/inputs/inputFromOctokit.js +23 -24
  348. package/lib/inputs/inputFromOctokit.js.map +1 -0
  349. package/lib/options/readAccess.d.ts +5 -1
  350. package/lib/options/readAccess.d.ts.map +1 -0
  351. package/lib/options/readAccess.js +6 -4
  352. package/lib/options/readAccess.js.map +1 -0
  353. package/lib/options/readAllContributors.d.ts +6 -2
  354. package/lib/options/readAllContributors.d.ts.map +1 -0
  355. package/lib/options/readAllContributors.js +17 -22
  356. package/lib/options/readAllContributors.js.map +1 -0
  357. package/lib/options/readAuthor.d.ts +6 -3
  358. package/lib/options/readAuthor.d.ts.map +1 -0
  359. package/lib/options/readAuthor.js +6 -4
  360. package/lib/options/readAuthor.js.map +1 -0
  361. package/lib/options/readBin.d.ts +5 -1
  362. package/lib/options/readBin.d.ts.map +1 -0
  363. package/lib/options/readBin.js +8 -10
  364. package/lib/options/readBin.js.map +1 -0
  365. package/lib/options/readDescription.d.ts +5 -1
  366. package/lib/options/readDescription.d.ts.map +1 -0
  367. package/lib/options/readDescription.js +16 -23
  368. package/lib/options/readDescription.js.map +1 -0
  369. package/lib/options/readDescriptionFromReadme.d.ts +4 -0
  370. package/lib/options/readDescriptionFromReadme.d.ts.map +1 -0
  371. package/lib/options/readDescriptionFromReadme.js +11 -13
  372. package/lib/options/readDescriptionFromReadme.js.map +1 -0
  373. package/lib/options/readDevelopmentDocumentation.d.ts +5 -1
  374. package/lib/options/readDevelopmentDocumentation.d.ts.map +1 -0
  375. package/lib/options/readDevelopmentDocumentation.js +18 -21
  376. package/lib/options/readDevelopmentDocumentation.js.map +1 -0
  377. package/lib/options/readDocumentation.d.ts +5 -2
  378. package/lib/options/readDocumentation.d.ts.map +1 -0
  379. package/lib/options/readDocumentation.js +21 -19
  380. package/lib/options/readDocumentation.js.map +1 -0
  381. package/lib/options/readEmailFromCodeOfConduct.d.ts +5 -1
  382. package/lib/options/readEmailFromCodeOfConduct.d.ts.map +1 -0
  383. package/lib/options/readEmailFromCodeOfConduct.js +8 -7
  384. package/lib/options/readEmailFromCodeOfConduct.js.map +1 -0
  385. package/lib/options/readEmailFromGit.d.ts +5 -1
  386. package/lib/options/readEmailFromGit.d.ts.map +1 -0
  387. package/lib/options/readEmailFromGit.js +7 -4
  388. package/lib/options/readEmailFromGit.js.map +1 -0
  389. package/lib/options/readEmailFromNpm.d.ts +6 -3
  390. package/lib/options/readEmailFromNpm.d.ts.map +1 -0
  391. package/lib/options/readEmailFromNpm.js +6 -4
  392. package/lib/options/readEmailFromNpm.js.map +1 -0
  393. package/lib/options/readEmails.d.ts +7 -4
  394. package/lib/options/readEmails.d.ts.map +1 -0
  395. package/lib/options/readEmails.js +11 -6
  396. package/lib/options/readEmails.js.map +1 -0
  397. package/lib/options/readEmoji.d.ts +4 -0
  398. package/lib/options/readEmoji.d.ts.map +1 -0
  399. package/lib/options/readEmoji.js +6 -4
  400. package/lib/options/readEmoji.js.map +1 -0
  401. package/lib/options/readExistingLabels.d.ts +8 -4
  402. package/lib/options/readExistingLabels.d.ts.map +1 -0
  403. package/lib/options/readExistingLabels.js +21 -20
  404. package/lib/options/readExistingLabels.js.map +1 -0
  405. package/lib/options/readFileAsJson.d.ts +4 -0
  406. package/lib/options/readFileAsJson.d.ts.map +1 -0
  407. package/lib/options/readFileAsJson.js +11 -11
  408. package/lib/options/readFileAsJson.js.map +1 -0
  409. package/lib/options/readFileSafe.d.ts +4 -0
  410. package/lib/options/readFileSafe.d.ts.map +1 -0
  411. package/lib/options/readFileSafe.js +11 -8
  412. package/lib/options/readFileSafe.js.map +1 -0
  413. package/lib/options/readFunding.d.ts +5 -1
  414. package/lib/options/readFunding.d.ts.map +1 -0
  415. package/lib/options/readFunding.js +8 -7
  416. package/lib/options/readFunding.js.map +1 -0
  417. package/lib/options/readGitDefaults.d.ts +6 -2
  418. package/lib/options/readGitDefaults.d.ts.map +1 -0
  419. package/lib/options/readGitDefaults.js +9 -8
  420. package/lib/options/readGitDefaults.js.map +1 -0
  421. package/lib/options/readGuide.d.ts +7 -3
  422. package/lib/options/readGuide.d.ts.map +1 -0
  423. package/lib/options/readGuide.js +14 -19
  424. package/lib/options/readGuide.js.map +1 -0
  425. package/lib/options/readKeywords.d.ts +5 -1
  426. package/lib/options/readKeywords.d.ts.map +1 -0
  427. package/lib/options/readKeywords.js +7 -5
  428. package/lib/options/readKeywords.js.map +1 -0
  429. package/lib/options/readLogo.d.ts +8 -4
  430. package/lib/options/readLogo.d.ts.map +1 -0
  431. package/lib/options/readLogo.js +19 -22
  432. package/lib/options/readLogo.js.map +1 -0
  433. package/lib/options/readLogoSizing.d.ts +7 -3
  434. package/lib/options/readLogoSizing.d.ts.map +1 -0
  435. package/lib/options/readLogoSizing.js +26 -22
  436. package/lib/options/readLogoSizing.js.map +1 -0
  437. package/lib/options/readNode.d.ts +7 -3
  438. package/lib/options/readNode.d.ts.map +1 -0
  439. package/lib/options/readNode.js +12 -9
  440. package/lib/options/readNode.js.map +1 -0
  441. package/lib/options/readNpmDefaults.d.ts +7 -3
  442. package/lib/options/readNpmDefaults.d.ts.map +1 -0
  443. package/lib/options/readNpmDefaults.js +9 -6
  444. package/lib/options/readNpmDefaults.js.map +1 -0
  445. package/lib/options/readOwner.d.ts +7 -4
  446. package/lib/options/readOwner.d.ts.map +1 -0
  447. package/lib/options/readOwner.js +7 -6
  448. package/lib/options/readOwner.js.map +1 -0
  449. package/lib/options/readPackageAuthor.d.ts +8 -4
  450. package/lib/options/readPackageAuthor.d.ts.map +1 -0
  451. package/lib/options/readPackageAuthor.js +12 -12
  452. package/lib/options/readPackageAuthor.js.map +1 -0
  453. package/lib/options/readPackageData.d.ts +6 -2
  454. package/lib/options/readPackageData.d.ts.map +1 -0
  455. package/lib/options/readPackageData.js +8 -9
  456. package/lib/options/readPackageData.js.map +1 -0
  457. package/lib/options/readPnpm.d.ts +5 -1
  458. package/lib/options/readPnpm.d.ts.map +1 -0
  459. package/lib/options/readPnpm.js +7 -5
  460. package/lib/options/readPnpm.js.map +1 -0
  461. package/lib/options/readReadmeAdditional.d.ts +4 -0
  462. package/lib/options/readReadmeAdditional.d.ts.map +1 -0
  463. package/lib/options/readReadmeAdditional.js +15 -22
  464. package/lib/options/readReadmeAdditional.js.map +1 -0
  465. package/lib/options/readReadmeExplainer.d.ts +4 -0
  466. package/lib/options/readReadmeExplainer.d.ts.map +1 -0
  467. package/lib/options/readReadmeExplainer.js +24 -25
  468. package/lib/options/readReadmeExplainer.js.map +1 -0
  469. package/lib/options/readReadmeFootnotes.d.ts +4 -0
  470. package/lib/options/readReadmeFootnotes.d.ts.map +1 -0
  471. package/lib/options/readReadmeFootnotes.js +15 -24
  472. package/lib/options/readReadmeFootnotes.js.map +1 -0
  473. package/lib/options/readReadmeUsage.d.ts +4 -0
  474. package/lib/options/readReadmeUsage.d.ts.map +1 -0
  475. package/lib/options/readReadmeUsage.js +13 -15
  476. package/lib/options/readReadmeUsage.js.map +1 -0
  477. package/lib/options/readRepository.d.ts +8 -4
  478. package/lib/options/readRepository.d.ts.map +1 -0
  479. package/lib/options/readRepository.js +6 -4
  480. package/lib/options/readRepository.js.map +1 -0
  481. package/lib/options/readRulesetId.d.ts +5 -1
  482. package/lib/options/readRulesetId.d.ts.map +1 -0
  483. package/lib/options/readRulesetId.js +14 -13
  484. package/lib/options/readRulesetId.js.map +1 -0
  485. package/lib/options/readTitle.d.ts +4 -0
  486. package/lib/options/readTitle.d.ts.map +1 -0
  487. package/lib/options/readTitle.js +11 -10
  488. package/lib/options/readTitle.js.map +1 -0
  489. package/lib/options/readWords.d.ts +5 -1
  490. package/lib/options/readWords.d.ts.map +1 -0
  491. package/lib/options/readWords.js +9 -10
  492. package/lib/options/readWords.js.map +1 -0
  493. package/lib/options/readWorkflowsVersions.d.ts +6 -3
  494. package/lib/options/readWorkflowsVersions.d.ts.map +1 -0
  495. package/lib/options/readWorkflowsVersions.js +45 -63
  496. package/lib/options/readWorkflowsVersions.js.map +1 -0
  497. package/lib/presets/common.d.ts +169 -166
  498. package/lib/presets/common.d.ts.map +1 -0
  499. package/lib/presets/common.js +21 -18
  500. package/lib/presets/common.js.map +1 -0
  501. package/lib/presets/everything.d.ts +169 -166
  502. package/lib/presets/everything.d.ts.map +1 -0
  503. package/lib/presets/everything.js +39 -36
  504. package/lib/presets/everything.js.map +1 -0
  505. package/lib/presets/index.d.ts +504 -502
  506. package/lib/presets/index.d.ts.map +1 -0
  507. package/lib/presets/index.js +10 -13
  508. package/lib/presets/index.js.map +1 -0
  509. package/lib/presets/minimal.d.ts +169 -166
  510. package/lib/presets/minimal.d.ts.map +1 -0
  511. package/lib/presets/minimal.js +51 -48
  512. package/lib/presets/minimal.js.map +1 -0
  513. package/lib/schemas.d.ts +75 -71
  514. package/lib/schemas.d.ts.map +1 -0
  515. package/lib/schemas.js +19 -21
  516. package/lib/schemas.js.map +1 -0
  517. package/lib/template.d.ts +169 -166
  518. package/lib/template.d.ts.map +1 -0
  519. package/lib/template.js +31 -24
  520. package/lib/template.js.map +1 -0
  521. package/lib/types.d.ts +32 -30
  522. package/lib/types.d.ts.map +1 -0
  523. package/lib/utils/htmlToTextSafe.d.ts +4 -0
  524. package/lib/utils/htmlToTextSafe.d.ts.map +1 -0
  525. package/lib/utils/htmlToTextSafe.js +13 -12
  526. package/lib/utils/htmlToTextSafe.js.map +1 -0
  527. package/lib/utils/resolveBin.d.ts +4 -0
  528. package/lib/utils/resolveBin.d.ts.map +1 -0
  529. package/lib/utils/resolveBin.js +7 -4
  530. package/lib/utils/resolveBin.js.map +1 -0
  531. package/lib/utils/swallowError.d.ts +4 -0
  532. package/lib/utils/swallowError.d.ts.map +1 -0
  533. package/lib/utils/swallowError.js +6 -4
  534. package/lib/utils/swallowError.js.map +1 -0
  535. package/lib/utils/swallowErrorAsync.d.ts +4 -0
  536. package/lib/utils/swallowErrorAsync.d.ts.map +1 -0
  537. package/lib/utils/swallowErrorAsync.js +10 -8
  538. package/lib/utils/swallowErrorAsync.js.map +1 -0
  539. package/lib/utils/trimPrecedingSlash.d.ts +4 -0
  540. package/lib/utils/trimPrecedingSlash.d.ts.map +1 -0
  541. package/lib/utils/trimPrecedingSlash.js +6 -4
  542. package/lib/utils/trimPrecedingSlash.js.map +1 -0
  543. package/lib/utils/tryCatch.d.ts +4 -0
  544. package/lib/utils/tryCatch.d.ts.map +1 -0
  545. package/lib/utils/tryCatch.js +10 -8
  546. package/lib/utils/tryCatch.js.map +1 -0
  547. package/package.json +3 -3
  548. package/lib/blocks/blockTSup.d.ts +0 -76
  549. package/lib/blocks/blockTSup.js +0 -139
@@ -1,25 +1,21 @@
1
1
  import { base } from "../base.js";
2
- import { blockCSpell } from "./blockCSpell.js";
3
- import { blockDevelopmentDocs } from "./blockDevelopmentDocs.js";
4
2
  import { blockGitHubActionsCI } from "./blockGitHubActionsCI.js";
5
- import { blockGitignore } from "./blockGitignore.js";
6
- import { blockMarkdownlint } from "./blockMarkdownlint.js";
7
3
  import { blockPackageJson } from "./blockPackageJson.js";
4
+ import { blockDevelopmentDocs } from "./blockDevelopmentDocs.js";
5
+ import { blockCSpell } from "./blockCSpell.js";
6
+ import { blockGitignore } from "./blockGitignore.js";
8
7
  import { blockPrettier } from "./blockPrettier.js";
8
+ import { blockMarkdownlint } from "./blockMarkdownlint.js";
9
+
10
+ //#region src/blocks/blockWebExt.ts
9
11
  const blockWebExt = base.createBlock({
10
- about: {
11
- name: "Web-ext"
12
- },
13
- produce() {
14
- return {
15
- addons: [
16
- blockCSpell({
17
- ignorePaths: ["assets"]
18
- }),
19
- blockDevelopmentDocs({
20
- sections: {
21
- Building: {
22
- contents: `
12
+ about: { name: "Web-ext" },
13
+ produce() {
14
+ return { addons: [
15
+ blockCSpell({ ignorePaths: ["assets"] }),
16
+ blockDevelopmentDocs({ sections: {
17
+ Building: {
18
+ contents: `
23
19
  Run [ESBuild](https://esbuild.github.io) locally to build source files:
24
20
 
25
21
  \`\`\`shell
@@ -32,17 +28,17 @@ Add \`--watch\` to run the builder in a watch mode that continuously re-builds a
32
28
  pnpm dev --watch
33
29
  \`\`\`
34
30
  `,
35
- innerSections: [
36
- {
37
- contents: `
31
+ innerSections: [
32
+ {
33
+ contents: `
38
34
  Follow Google Chrome's _[Load an unpacked extension](https://developer.chrome.com/docs/extensions/mv3/getstarted/#unpacked)_ guide to load this repository's directory as an extension locally.
39
35
 
40
- > \u267B\uFE0F Remember to reload the extension in \`chrome://extensions\` whenever you make changes locally!
36
+ > ♻️ Remember to reload the extension in \`chrome://extensions\` whenever you make changes locally!
41
37
  `,
42
- heading: "Local Development with Chrome"
43
- },
44
- {
45
- contents: `
38
+ heading: "Local Development with Chrome"
39
+ },
40
+ {
41
+ contents: `
46
42
  Follow Firefox's _[Temporary installation in Firefox](https://extensionworkshop.com/documentation/develop/temporary-installation-in-firefox/)_ guide to load this repository's directory as an extension locally.
47
43
 
48
44
  You'll then need to authorize the extension to run on <https://github.com>:
@@ -51,12 +47,12 @@ You'll then need to authorize the extension to run on <https://github.com>:
51
47
  2. Select the _"Manage Extension"_ gear icon next to _Refined Saved Replies_
52
48
  3. Select the _"Always Allow on github.com"_ option
53
49
 
54
- > \u267B\uFE0F Remember to reload the extension in \`about:debugging#/runtime/this-firefox\` whenever you make changes locally!
50
+ > ♻️ Remember to reload the extension in \`about:debugging#/runtime/this-firefox\` whenever you make changes locally!
55
51
  `,
56
- heading: "Local Development with Firefox"
57
- },
58
- {
59
- contents: `
52
+ heading: "Local Development with Firefox"
53
+ },
54
+ {
55
+ contents: `
60
56
  Run [\`web-ext\`](https://extensionworkshop.com) to build a production-ready \`.zip\` under \`./web-ext-artifacts/\`:
61
57
 
62
58
  \`\`\`shell
@@ -68,57 +64,37 @@ Then upload that \`./web-ext-artifacts/refined_saved_replies-*.zip\` file to:
68
64
  - [Chrome Web Store Developer Dashboard](https://chrome.google.com/webstore/devconsole)
69
65
  - [Firefox Add-ons Developer Hub](https://addons.mozilla.org/en-US/developers/addon/submit/distribution)
70
66
  `,
71
- heading: "Production Builds"
72
- }
73
- ]
74
- },
75
- Linting: {
76
- contents: {
77
- items: [
78
- `- \`pnpm lint:web-ext\` ([web-ext](https://extensionworkshop.com)): Lints browser extension metadata after \`pnpm dev\` creates local files`
79
- ]
80
- }
81
- }
82
- }
83
- }),
84
- blockGitHubActionsCI({
85
- jobs: [
86
- {
87
- name: "Build",
88
- steps: [{ run: "pnpm build" }]
89
- },
90
- {
91
- name: "Lint Web-ext",
92
- steps: [{ run: "pnpm dev" }, { run: "pnpm lint:web-ext" }]
93
- }
94
- ]
95
- }),
96
- blockGitignore({
97
- ignores: ["*.zip", "web-ext-artifacts"]
98
- }),
99
- blockMarkdownlint({
100
- ignores: ["assets/"]
101
- }),
102
- blockPackageJson({
103
- properties: {
104
- devDependencies: {
105
- esbuild: "^0.25.0",
106
- "web-ext": "^8.3.0"
107
- },
108
- scripts: {
109
- build: "web-ext build --overwrite-dest",
110
- dev: "esbuild src/content-script.ts --bundle --minify --outfile=lib/content-script.js --sourcemap",
111
- "lint:web-ext": "web-ext lint"
112
- }
113
- }
114
- }),
115
- blockPrettier({
116
- ignores: ["assets/"]
117
- })
118
- ]
119
- };
120
- }
67
+ heading: "Production Builds"
68
+ }
69
+ ]
70
+ },
71
+ Linting: { contents: { items: [`- \`pnpm lint:web-ext\` ([web-ext](https://extensionworkshop.com)): Lints browser extension metadata after \`pnpm dev\` creates local files`] } }
72
+ } }),
73
+ blockGitHubActionsCI({ jobs: [{
74
+ name: "Build",
75
+ steps: [{ run: "pnpm build" }]
76
+ }, {
77
+ name: "Lint Web-ext",
78
+ steps: [{ run: "pnpm dev" }, { run: "pnpm lint:web-ext" }]
79
+ }] }),
80
+ blockGitignore({ ignores: ["*.zip", "web-ext-artifacts"] }),
81
+ blockMarkdownlint({ ignores: ["assets/"] }),
82
+ blockPackageJson({ properties: {
83
+ devDependencies: {
84
+ esbuild: "^0.25.0",
85
+ "web-ext": "^8.3.0"
86
+ },
87
+ scripts: {
88
+ build: "web-ext build --overwrite-dest",
89
+ dev: "esbuild src/content-script.ts --bundle --minify --outfile=lib/content-script.js --sourcemap",
90
+ "lint:web-ext": "web-ext lint"
91
+ }
92
+ } }),
93
+ blockPrettier({ ignores: ["assets/"] })
94
+ ] };
95
+ }
121
96
  });
122
- export {
123
- blockWebExt
124
- };
97
+
98
+ //#endregion
99
+ export { blockWebExt };
100
+ //# sourceMappingURL=blockWebExt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blockWebExt.js","names":[],"sources":["../../src/blocks/blockWebExt.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { blockCSpell } from \"./blockCSpell.js\";\nimport { blockDevelopmentDocs } from \"./blockDevelopmentDocs.js\";\nimport { blockGitHubActionsCI } from \"./blockGitHubActionsCI.js\";\nimport { blockGitignore } from \"./blockGitignore.js\";\nimport { blockMarkdownlint } from \"./blockMarkdownlint.js\";\nimport { blockPackageJson } from \"./blockPackageJson.js\";\nimport { blockPrettier } from \"./blockPrettier.js\";\n\nexport const blockWebExt = base.createBlock({\n\tabout: {\n\t\tname: \"Web-ext\",\n\t},\n\tproduce() {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockCSpell({\n\t\t\t\t\tignorePaths: [\"assets\"],\n\t\t\t\t}),\n\t\t\t\tblockDevelopmentDocs({\n\t\t\t\t\tsections: {\n\t\t\t\t\t\tBuilding: {\n\t\t\t\t\t\t\tcontents: `\nRun [ESBuild](https://esbuild.github.io) locally to build source files:\n\n\\`\\`\\`shell\npnpm dev\n\\`\\`\\`\n\nAdd \\`--watch\\` to run the builder in a watch mode that continuously re-builds as you save files:\n\n\\`\\`\\`shell\npnpm dev --watch\n\\`\\`\\`\n`,\n\t\t\t\t\t\t\tinnerSections: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcontents: `\nFollow Google Chrome's _[Load an unpacked extension](https://developer.chrome.com/docs/extensions/mv3/getstarted/#unpacked)_ guide to load this repository's directory as an extension locally.\n\n> ♻️ Remember to reload the extension in \\`chrome://extensions\\` whenever you make changes locally!\n`,\n\t\t\t\t\t\t\t\t\theading: \"Local Development with Chrome\",\n\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\tcontents: `\nFollow Firefox's _[Temporary installation in Firefox](https://extensionworkshop.com/documentation/develop/temporary-installation-in-firefox/)_ guide to load this repository's directory as an extension locally.\n\nYou'll then need to authorize the extension to run on <https://github.com>:\n\n1. Find and select the _Extensions_ icon in the top right of Firefox\n2. Select the _\"Manage Extension\"_ gear icon next to _Refined Saved Replies_\n3. Select the _\"Always Allow on github.com\"_ option\n\n> ♻️ Remember to reload the extension in \\`about:debugging#/runtime/this-firefox\\` whenever you make changes locally!\n`,\n\t\t\t\t\t\t\t\t\theading: \"Local Development with Firefox\",\n\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\tcontents: `\nRun [\\`web-ext\\`](https://extensionworkshop.com) to build a production-ready \\`.zip\\` under \\`./web-ext-artifacts/\\`:\n\n\\`\\`\\`shell\npnpm build\n\\`\\`\\`\n\nThen upload that \\`./web-ext-artifacts/refined_saved_replies-*.zip\\` file to:\n\n- [Chrome Web Store Developer Dashboard](https://chrome.google.com/webstore/devconsole)\n- [Firefox Add-ons Developer Hub](https://addons.mozilla.org/en-US/developers/addon/submit/distribution)\n`,\n\t\t\t\t\t\t\t\t\theading: \"Production Builds\",\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\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:web-ext\\` ([web-ext](https://extensionworkshop.com)): Lints browser extension metadata after \\`pnpm dev\\` creates local 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\tblockGitHubActionsCI({\n\t\t\t\t\tjobs: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: \"Build\",\n\t\t\t\t\t\t\tsteps: [{ run: \"pnpm build\" }],\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: \"Lint Web-ext\",\n\t\t\t\t\t\t\tsteps: [{ run: \"pnpm dev\" }, { run: \"pnpm lint:web-ext\" }],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t\tblockGitignore({\n\t\t\t\t\tignores: [\"*.zip\", \"web-ext-artifacts\"],\n\t\t\t\t}),\n\t\t\t\tblockMarkdownlint({\n\t\t\t\t\tignores: [\"assets/\"],\n\t\t\t\t}),\n\t\t\t\tblockPackageJson({\n\t\t\t\t\tproperties: {\n\t\t\t\t\t\tdevDependencies: {\n\t\t\t\t\t\t\tesbuild: \"^0.25.0\",\n\t\t\t\t\t\t\t\"web-ext\": \"^8.3.0\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\tscripts: {\n\t\t\t\t\t\t\tbuild: \"web-ext build --overwrite-dest\",\n\t\t\t\t\t\t\tdev: \"esbuild src/content-script.ts --bundle --minify --outfile=lib/content-script.js --sourcemap\",\n\t\t\t\t\t\t\t\"lint:web-ext\": \"web-ext lint\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t\tblockPrettier({\n\t\t\t\t\tignores: [\"assets/\"],\n\t\t\t\t}),\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":";;;;;;;;;;AASA,MAAa,cAAc,KAAK,YAAY;CAC3C,OAAO,EACN,MAAM,UACN;CACD,UAAU;AACT,SAAO,EACN,QAAQ;GACP,YAAY,EACX,aAAa,CAAC,QAAS,EACvB,EAAC;GACF,qBAAqB,EACpB,UAAU;IACT,UAAU;KACT,WAAW;;;;;;;;;;;;;KAaX,eAAe;MACd;OACC,WAAW;;;;;OAKX,SAAS;MACT;MACD;OACC,WAAW;;;;;;;;;;;OAWX,SAAS;MACT;MACD;OACC,WAAW;;;;;;;;;;;;OAYX,SAAS;MACT;KACD;IACD;IACD,SAAS,EACR,UAAU,EACT,OAAO,EACL,4IACD,EACD,EACD;GACD,EACD,EAAC;GACF,qBAAqB,EACpB,MAAM,CACL;IACC,MAAM;IACN,OAAO,CAAC,EAAE,KAAK,aAAc,CAAC;GAC9B,GACD;IACC,MAAM;IACN,OAAO,CAAC,EAAE,KAAK,WAAY,GAAE,EAAE,KAAK,oBAAqB,CAAC;GAC1D,CACD,EACD,EAAC;GACF,eAAe,EACd,SAAS,CAAC,SAAS,mBAAoB,EACvC,EAAC;GACF,kBAAkB,EACjB,SAAS,CAAC,SAAU,EACpB,EAAC;GACF,iBAAiB,EAChB,YAAY;IACX,iBAAiB;KAChB,SAAS;KACT,WAAW;IACX;IACD,SAAS;KACR,OAAO;KACP,KAAK;KACL,gBAAgB;IAChB;GACD,EACD,EAAC;GACF,cAAc,EACb,SAAS,CAAC,SAAU,EACpB,EAAC;EACF,EACD;CACD;AACD,EAAC"}
@@ -1,9 +1,12 @@
1
+ //#region src/blocks/eslint/blockESLintIntake.d.ts
1
2
  declare function blockESLintIntake(sourceText: string): {
2
- ignores: string[];
3
- rules: {
4
- entries: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]>;
5
- comment?: string | undefined;
6
- }[];
3
+ ignores: string[];
4
+ rules: {
5
+ entries: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]>;
6
+ comment?: string | undefined;
7
+ }[];
7
8
  } | undefined;
8
-
9
+ //# sourceMappingURL=blockESLintIntake.d.ts.map
10
+ //#endregion
9
11
  export { blockESLintIntake };
12
+ //# sourceMappingURL=blockESLintIntake.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blockESLintIntake.d.ts","names":[],"sources":["../../../src/blocks/eslint/blockESLintIntake.ts"],"sourcesContent":[],"mappings":";iBAegB,iBAAA;EAAA,OAAA,EAAA,MAAA,EAAA;;aAAiB"}
@@ -1,116 +1,89 @@
1
- import {
2
- AST_NODE_TYPES,
3
- parse as parseAST
4
- } from "@typescript-eslint/typescript-estree";
5
- import JSON5 from "json5";
6
1
  import { tryCatch } from "../../utils/tryCatch.js";
7
2
  import { stylisticComment } from "../blockESLintMoreStyling.js";
8
3
  import { zRuleOptions } from "./schemas.js";
4
+ import JSON5 from "json5";
5
+ import { AST_NODE_TYPES, parse } from "@typescript-eslint/typescript-estree";
6
+
7
+ //#region src/blocks/eslint/blockESLintIntake.ts
9
8
  function blockESLintIntake(sourceText) {
10
- const ast = tryCatch(
11
- () => parseAST(sourceText, {
12
- comment: true,
13
- loc: true,
14
- range: true
15
- })
16
- );
17
- const configExport = ast?.body.find(nodeIsConfigExport);
18
- if (!configExport) {
19
- return void 0;
20
- }
21
- const configArguments = configExport.declaration.arguments;
22
- if (configArguments.length < 2) {
23
- return void 0;
24
- }
25
- const ignores = getConfigIgnores(configArguments[0]);
26
- if (!ignores) {
27
- return void 0;
28
- }
29
- const rulesObject = getConfigRulesObject(configArguments.slice(1));
30
- if (!rulesObject) {
31
- return void 0;
32
- }
33
- const rules = collectRulesObjectGroups(sourceText, rulesObject);
34
- if (!rules) {
35
- return void 0;
36
- }
37
- return { ignores, rules };
38
- function areArraysEqual(a, b) {
39
- if (a.length !== b.length) {
40
- return false;
41
- }
42
- for (let i = 0; i < a.length; i++) {
43
- if (a[i] !== b[i]) {
44
- return false;
45
- }
46
- }
47
- return true;
48
- }
49
- function collectRuleFromProperty(property) {
50
- if (property.type !== AST_NODE_TYPES.Property || property.key.type !== AST_NODE_TYPES.Literal || typeof property.key.value !== "string") {
51
- return void 0;
52
- }
53
- const name = property.key.value;
54
- const { data } = zRuleOptions.safeParse(
55
- JSON5.parse(sourceText.slice(...property.value.range))
56
- );
57
- return data && { entry: data, name };
58
- }
59
- function collectRulesObjectGroups(sourceText2, rulesObject2) {
60
- let previousNode;
61
- let currentGroup;
62
- const groups = [];
63
- for (const property of rulesObject2.properties) {
64
- const precedingText = sourceText2.slice(
65
- (previousNode?.range[1] ?? rulesObject2.range[0]) + 1,
66
- property.range[0]
67
- );
68
- const comment = precedingText.replaceAll(/\/\/ ?|\t\s*/g, "").trim() || void 0;
69
- if (comment === stylisticComment) {
70
- break;
71
- }
72
- const rule = collectRuleFromProperty(property);
73
- if (!rule) {
74
- return void 0;
75
- }
76
- if (!currentGroup || comment) {
77
- currentGroup = { comment, entries: {} };
78
- groups.push(currentGroup);
79
- }
80
- currentGroup.entries[rule.name] = rule.entry;
81
- previousNode = property;
82
- }
83
- return groups;
84
- }
85
- function getConfigIgnores(node) {
86
- return node.type === AST_NODE_TYPES.ObjectExpression && node.properties.length === 1 && node.properties[0].type === AST_NODE_TYPES.Property && node.properties[0].key.type === AST_NODE_TYPES.Identifier && node.properties[0].key.name === "ignores" && node.properties[0].value.type === AST_NODE_TYPES.ArrayExpression && node.properties[0].value.elements.every(
87
- (element) => element?.type === AST_NODE_TYPES.Literal && typeof element.value === "string"
88
- ) && node.properties[0].value.elements.map(
89
- (element) => element.value
90
- );
91
- }
92
- function getConfigRulesObject(nodes) {
93
- const configObject = nodes.find(
94
- (node) => node.type === AST_NODE_TYPES.ObjectExpression && areArraysEqual(
95
- node.properties.map(
96
- (property) => property.type === AST_NODE_TYPES.Property && property.key.type === AST_NODE_TYPES.Identifier ? property.key.name : void 0
97
- ),
98
- ["extends", "files", "languageOptions", "rules", "settings"]
99
- )
100
- );
101
- if (!configObject) {
102
- return void 0;
103
- }
104
- const rulesObject2 = configObject.properties[3];
105
- return rulesObject2.type === AST_NODE_TYPES.Property && rulesObject2.value.type === AST_NODE_TYPES.ObjectExpression && rulesObject2.value;
106
- }
107
- function nodeIsConfigExport(node) {
108
- return node.type === AST_NODE_TYPES.ExportDefaultDeclaration && node.declaration.type === AST_NODE_TYPES.CallExpression && nodeIsConfigFunction(node.declaration.callee);
109
- }
110
- function nodeIsConfigFunction(node) {
111
- return node.type === AST_NODE_TYPES.MemberExpression && node.object.type === AST_NODE_TYPES.Identifier && node.object.name === "tseslint" && node.property.type === AST_NODE_TYPES.Identifier && node.property.name === "config";
112
- }
9
+ const ast = tryCatch(() => parse(sourceText, {
10
+ comment: true,
11
+ loc: true,
12
+ range: true
13
+ }));
14
+ const configExport = ast?.body.find(nodeIsConfigExport);
15
+ if (!configExport) return void 0;
16
+ const configArguments = configExport.declaration.arguments;
17
+ if (configArguments.length < 2) return void 0;
18
+ const ignores = getConfigIgnores(configArguments[0]);
19
+ if (!ignores) return void 0;
20
+ const rulesObject = getConfigRulesObject(configArguments.slice(1));
21
+ if (!rulesObject) return void 0;
22
+ const rules = collectRulesObjectGroups(sourceText, rulesObject);
23
+ if (!rules) return void 0;
24
+ return {
25
+ ignores,
26
+ rules
27
+ };
28
+ function areArraysEqual(a, b) {
29
+ if (a.length !== b.length) return false;
30
+ for (let i = 0; i < a.length; i++) if (a[i] !== b[i]) return false;
31
+ return true;
32
+ }
33
+ function collectRuleFromProperty(property) {
34
+ if (property.type !== AST_NODE_TYPES.Property || property.key.type !== AST_NODE_TYPES.Literal || typeof property.key.value !== "string") return void 0;
35
+ const name = property.key.value;
36
+ const { data } = zRuleOptions.safeParse(JSON5.parse(sourceText.slice(...property.value.range)));
37
+ return data && {
38
+ entry: data,
39
+ name
40
+ };
41
+ }
42
+ function collectRulesObjectGroups(sourceText$1, rulesObject$1) {
43
+ let previousNode;
44
+ let currentGroup;
45
+ const groups = [];
46
+ for (const property of rulesObject$1.properties) {
47
+ const precedingText = sourceText$1.slice((previousNode?.range[1] ?? rulesObject$1.range[0]) + 1, property.range[0]);
48
+ const comment = precedingText.replaceAll(/\/\/ ?|\t\s*/g, "").trim() || void 0;
49
+ if (comment === stylisticComment) break;
50
+ const rule = collectRuleFromProperty(property);
51
+ if (!rule) return void 0;
52
+ if (!currentGroup || comment) {
53
+ currentGroup = {
54
+ comment,
55
+ entries: {}
56
+ };
57
+ groups.push(currentGroup);
58
+ }
59
+ currentGroup.entries[rule.name] = rule.entry;
60
+ previousNode = property;
61
+ }
62
+ return groups;
63
+ }
64
+ function getConfigIgnores(node) {
65
+ return node.type === AST_NODE_TYPES.ObjectExpression && node.properties.length === 1 && node.properties[0].type === AST_NODE_TYPES.Property && node.properties[0].key.type === AST_NODE_TYPES.Identifier && node.properties[0].key.name === "ignores" && node.properties[0].value.type === AST_NODE_TYPES.ArrayExpression && node.properties[0].value.elements.every((element) => element?.type === AST_NODE_TYPES.Literal && typeof element.value === "string") && node.properties[0].value.elements.map((element) => element.value);
66
+ }
67
+ function getConfigRulesObject(nodes) {
68
+ const configObject = nodes.find((node) => node.type === AST_NODE_TYPES.ObjectExpression && areArraysEqual(node.properties.map((property) => property.type === AST_NODE_TYPES.Property && property.key.type === AST_NODE_TYPES.Identifier ? property.key.name : void 0), [
69
+ "extends",
70
+ "files",
71
+ "languageOptions",
72
+ "rules",
73
+ "settings"
74
+ ]));
75
+ if (!configObject) return void 0;
76
+ const rulesObject$1 = configObject.properties[3];
77
+ return rulesObject$1.type === AST_NODE_TYPES.Property && rulesObject$1.value.type === AST_NODE_TYPES.ObjectExpression && rulesObject$1.value;
78
+ }
79
+ function nodeIsConfigExport(node) {
80
+ return node.type === AST_NODE_TYPES.ExportDefaultDeclaration && node.declaration.type === AST_NODE_TYPES.CallExpression && nodeIsConfigFunction(node.declaration.callee);
81
+ }
82
+ function nodeIsConfigFunction(node) {
83
+ return node.type === AST_NODE_TYPES.MemberExpression && node.object.type === AST_NODE_TYPES.Identifier && node.object.name === "tseslint" && node.property.type === AST_NODE_TYPES.Identifier && node.property.name === "config";
84
+ }
113
85
  }
114
- export {
115
- blockESLintIntake
116
- };
86
+
87
+ //#endregion
88
+ export { blockESLintIntake };
89
+ //# sourceMappingURL=blockESLintIntake.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blockESLintIntake.js","names":["sourceText: string","a: T[]","b: T[]","property: TSESTree.ObjectLiteralElement","rulesObject: TSESTree.ObjectExpression","previousNode: TSESTree.Node | undefined","currentGroup: ExtensionRuleGroup | undefined","groups: ExtensionRuleGroup[]","rulesObject","node: TSESTree.Node","nodes: TSESTree.Node[]"],"sources":["../../../src/blocks/eslint/blockESLintIntake.ts"],"sourcesContent":["import {\n\tAST_NODE_TYPES,\n\tparse as parseAST,\n\tTSESTree,\n} from \"@typescript-eslint/typescript-estree\";\nimport JSON5 from \"json5\";\n\nimport { tryCatch } from \"../../utils/tryCatch.js\";\nimport { stylisticComment } from \"../blockESLintMoreStyling.js\";\nimport { type ExtensionRuleGroup, zRuleOptions } from \"./schemas.js\";\n\ntype ConfigExport = TSESTree.ExportDefaultDeclaration & {\n\tdeclaration: TSESTree.CallExpression;\n};\n\nexport function blockESLintIntake(sourceText: string) {\n\tconst ast = tryCatch(() =>\n\t\tparseAST(sourceText, {\n\t\t\tcomment: true,\n\t\t\tloc: true,\n\t\t\trange: true,\n\t\t}),\n\t);\n\tconst configExport = ast?.body.find(nodeIsConfigExport);\n\tif (!configExport) {\n\t\treturn undefined;\n\t}\n\n\tconst configArguments = configExport.declaration.arguments;\n\tif (configArguments.length < 2) {\n\t\treturn undefined;\n\t}\n\n\tconst ignores = getConfigIgnores(configArguments[0]);\n\tif (!ignores) {\n\t\treturn undefined;\n\t}\n\n\tconst rulesObject = getConfigRulesObject(configArguments.slice(1));\n\tif (!rulesObject) {\n\t\treturn undefined;\n\t}\n\n\tconst rules = collectRulesObjectGroups(sourceText, rulesObject);\n\tif (!rules) {\n\t\treturn undefined;\n\t}\n\n\treturn { ignores, rules };\n\n\tfunction areArraysEqual<T>(a: T[], b: T[]) {\n\t\tif (a.length !== b.length) {\n\t\t\treturn false;\n\t\t}\n\n\t\tfor (let i = 0; i < a.length; i++) {\n\t\t\tif (a[i] !== b[i]) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\treturn true;\n\t}\n\n\tfunction collectRuleFromProperty(property: TSESTree.ObjectLiteralElement) {\n\t\tif (\n\t\t\tproperty.type !== AST_NODE_TYPES.Property ||\n\t\t\tproperty.key.type !== AST_NODE_TYPES.Literal ||\n\t\t\ttypeof property.key.value !== \"string\"\n\t\t) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst name = property.key.value;\n\n\t\tconst { data } = zRuleOptions.safeParse(\n\t\t\tJSON5.parse(sourceText.slice(...property.value.range)),\n\t\t);\n\n\t\treturn data && { entry: data, name };\n\t}\n\n\tfunction collectRulesObjectGroups(\n\t\tsourceText: string,\n\t\trulesObject: TSESTree.ObjectExpression,\n\t) {\n\t\tlet previousNode: TSESTree.Node | undefined;\n\t\tlet currentGroup: ExtensionRuleGroup | undefined;\n\t\tconst groups: ExtensionRuleGroup[] = [];\n\n\t\tfor (const property of rulesObject.properties) {\n\t\t\tconst precedingText = sourceText.slice(\n\t\t\t\t(previousNode?.range[1] ?? rulesObject.range[0]) + 1,\n\t\t\t\tproperty.range[0],\n\t\t\t);\n\t\t\tconst comment =\n\t\t\t\tprecedingText.replaceAll(/\\/\\/ ?|\\t\\s*/g, \"\").trim() || undefined;\n\n\t\t\t// blockESLintMoreStyling's comment always gets pushed to the end.\n\t\t\tif (comment === stylisticComment) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tconst rule = collectRuleFromProperty(property);\n\t\t\tif (!rule) {\n\t\t\t\treturn undefined;\n\t\t\t}\n\n\t\t\tif (!currentGroup || comment) {\n\t\t\t\tcurrentGroup = { comment, entries: {} };\n\t\t\t\tgroups.push(currentGroup);\n\t\t\t}\n\n\t\t\tcurrentGroup.entries[rule.name] = rule.entry;\n\t\t\tpreviousNode = property;\n\t\t}\n\n\t\treturn groups;\n\t}\n\n\tfunction getConfigIgnores(node: TSESTree.Node) {\n\t\treturn (\n\t\t\tnode.type === AST_NODE_TYPES.ObjectExpression &&\n\t\t\tnode.properties.length === 1 &&\n\t\t\tnode.properties[0].type === AST_NODE_TYPES.Property &&\n\t\t\tnode.properties[0].key.type === AST_NODE_TYPES.Identifier &&\n\t\t\tnode.properties[0].key.name === \"ignores\" &&\n\t\t\tnode.properties[0].value.type === AST_NODE_TYPES.ArrayExpression &&\n\t\t\tnode.properties[0].value.elements.every(\n\t\t\t\t(element): element is TSESTree.Literal & { value: string } =>\n\t\t\t\t\telement?.type === AST_NODE_TYPES.Literal &&\n\t\t\t\t\ttypeof element.value === \"string\",\n\t\t\t) &&\n\t\t\tnode.properties[0].value.elements.map(\n\t\t\t\t(element) => element.value as string,\n\t\t\t)\n\t\t);\n\t}\n\n\tfunction getConfigRulesObject(nodes: TSESTree.Node[]) {\n\t\tconst configObject = nodes.find(\n\t\t\t(node): node is TSESTree.ObjectExpression =>\n\t\t\t\tnode.type === AST_NODE_TYPES.ObjectExpression &&\n\t\t\t\tareArraysEqual(\n\t\t\t\t\tnode.properties.map((property) =>\n\t\t\t\t\t\tproperty.type === AST_NODE_TYPES.Property &&\n\t\t\t\t\t\tproperty.key.type === AST_NODE_TYPES.Identifier\n\t\t\t\t\t\t\t? property.key.name\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t),\n\t\t\t\t\t[\"extends\", \"files\", \"languageOptions\", \"rules\", \"settings\"],\n\t\t\t\t),\n\t\t);\n\t\tif (!configObject) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst rulesObject = configObject.properties[3];\n\t\treturn (\n\t\t\trulesObject.type === AST_NODE_TYPES.Property &&\n\t\t\trulesObject.value.type === AST_NODE_TYPES.ObjectExpression &&\n\t\t\trulesObject.value\n\t\t);\n\t}\n\n\tfunction nodeIsConfigExport(node: TSESTree.Node): node is ConfigExport {\n\t\treturn (\n\t\t\tnode.type === AST_NODE_TYPES.ExportDefaultDeclaration &&\n\t\t\tnode.declaration.type === AST_NODE_TYPES.CallExpression &&\n\t\t\tnodeIsConfigFunction(node.declaration.callee)\n\t\t);\n\t}\n\n\tfunction nodeIsConfigFunction(node: TSESTree.Node) {\n\t\treturn (\n\t\t\tnode.type === AST_NODE_TYPES.MemberExpression &&\n\t\t\tnode.object.type === AST_NODE_TYPES.Identifier &&\n\t\t\tnode.object.name === \"tseslint\" &&\n\t\t\tnode.property.type === AST_NODE_TYPES.Identifier &&\n\t\t\tnode.property.name === \"config\"\n\t\t);\n\t}\n}\n"],"mappings":";;;;;;;AAeA,SAAgB,kBAAkBA,YAAoB;CACrD,MAAM,MAAM,SAAS,MACpB,MAAS,YAAY;EACpB,SAAS;EACT,KAAK;EACL,OAAO;CACP,EAAC,CACF;CACD,MAAM,eAAe,KAAK,KAAK,KAAK,mBAAmB;AACvD,MAAK,aACJ;CAGD,MAAM,kBAAkB,aAAa,YAAY;AACjD,KAAI,gBAAgB,SAAS,EAC5B;CAGD,MAAM,UAAU,iBAAiB,gBAAgB,GAAG;AACpD,MAAK,QACJ;CAGD,MAAM,cAAc,qBAAqB,gBAAgB,MAAM,EAAE,CAAC;AAClE,MAAK,YACJ;CAGD,MAAM,QAAQ,yBAAyB,YAAY,YAAY;AAC/D,MAAK,MACJ;AAGD,QAAO;EAAE;EAAS;CAAO;CAEzB,SAAS,eAAkBC,GAAQC,GAAQ;AAC1C,MAAI,EAAE,WAAW,EAAE,OAClB,QAAO;AAGR,OAAK,IAAI,IAAI,GAAG,IAAI,EAAE,QAAQ,IAC7B,KAAI,EAAE,OAAO,EAAE,GACd,QAAO;AAIT,SAAO;CACP;CAED,SAAS,wBAAwBC,UAAyC;AACzE,MACC,SAAS,SAAS,eAAe,YACjC,SAAS,IAAI,SAAS,eAAe,kBAC9B,SAAS,IAAI,UAAU,SAE9B;EAGD,MAAM,OAAO,SAAS,IAAI;EAE1B,MAAM,EAAE,MAAM,GAAG,aAAa,UAC7B,MAAM,MAAM,WAAW,MAAM,GAAG,SAAS,MAAM,MAAM,CAAC,CACtD;AAED,SAAO,QAAQ;GAAE,OAAO;GAAM;EAAM;CACpC;CAED,SAAS,yBACRH,cACAI,eACC;EACD,IAAIC;EACJ,IAAIC;EACJ,MAAMC,SAA+B,CAAE;AAEvC,OAAK,MAAM,YAAYC,cAAY,YAAY;GAC9C,MAAM,gBAAgB,aAAW,OAC/B,cAAc,MAAM,MAAMA,cAAY,MAAM,MAAM,GACnD,SAAS,MAAM,GACf;GACD,MAAM,UACL,cAAc,WAAW,iBAAiB,GAAG,CAAC,MAAM;AAGrD,OAAI,YAAY,iBACf;GAGD,MAAM,OAAO,wBAAwB,SAAS;AAC9C,QAAK,KACJ;AAGD,QAAK,gBAAgB,SAAS;AAC7B,mBAAe;KAAE;KAAS,SAAS,CAAE;IAAE;AACvC,WAAO,KAAK,aAAa;GACzB;AAED,gBAAa,QAAQ,KAAK,QAAQ,KAAK;AACvC,kBAAe;EACf;AAED,SAAO;CACP;CAED,SAAS,iBAAiBC,MAAqB;AAC9C,SACC,KAAK,SAAS,eAAe,oBAC7B,KAAK,WAAW,WAAW,KAC3B,KAAK,WAAW,GAAG,SAAS,eAAe,YAC3C,KAAK,WAAW,GAAG,IAAI,SAAS,eAAe,cAC/C,KAAK,WAAW,GAAG,IAAI,SAAS,aAChC,KAAK,WAAW,GAAG,MAAM,SAAS,eAAe,mBACjD,KAAK,WAAW,GAAG,MAAM,SAAS,MACjC,CAAC,YACA,SAAS,SAAS,eAAe,kBAC1B,QAAQ,UAAU,SAC1B,IACD,KAAK,WAAW,GAAG,MAAM,SAAS,IACjC,CAAC,YAAY,QAAQ,MACrB;CAEF;CAED,SAAS,qBAAqBC,OAAwB;EACrD,MAAM,eAAe,MAAM,KAC1B,CAAC,SACA,KAAK,SAAS,eAAe,oBAC7B,eACC,KAAK,WAAW,IAAI,CAAC,aACpB,SAAS,SAAS,eAAe,YACjC,SAAS,IAAI,SAAS,eAAe,aAClC,SAAS,IAAI,cAEhB,EACD;GAAC;GAAW;GAAS;GAAmB;GAAS;EAAW,EAC5D,CACF;AACD,OAAK,aACJ;EAGD,MAAMF,gBAAc,aAAa,WAAW;AAC5C,SACCA,cAAY,SAAS,eAAe,YACpCA,cAAY,MAAM,SAAS,eAAe,oBAC1CA,cAAY;CAEb;CAED,SAAS,mBAAmBC,MAA2C;AACtE,SACC,KAAK,SAAS,eAAe,4BAC7B,KAAK,YAAY,SAAS,eAAe,kBACzC,qBAAqB,KAAK,YAAY,OAAO;CAE9C;CAED,SAAS,qBAAqBA,MAAqB;AAClD,SACC,KAAK,SAAS,eAAe,oBAC7B,KAAK,OAAO,SAAS,eAAe,cACpC,KAAK,OAAO,SAAS,cACrB,KAAK,SAAS,SAAS,eAAe,cACtC,KAAK,SAAS,SAAS;CAExB;AACD"}
@@ -1,5 +1,8 @@
1
+ //#region src/blocks/eslint/blockESLintPluginIntake.d.ts
1
2
  declare function blockESLintPluginIntake(sourceText: string): {
2
- configEmoji: [string, string][];
3
+ configEmoji: [string, string][];
3
4
  } | undefined;
4
-
5
+ //# sourceMappingURL=blockESLintPluginIntake.d.ts.map
6
+ //#endregion
5
7
  export { blockESLintPluginIntake };
8
+ //# sourceMappingURL=blockESLintPluginIntake.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blockESLintPluginIntake.d.ts","names":[],"sources":["../../../src/blocks/eslint/blockESLintPluginIntake.ts"],"sourcesContent":[],"mappings":";iBAUgB,uBAAA;EAAA,WAAA,EAAA,CAAA,MAAA,EAAA,MAAuB,CAAA,EAAA"}
@@ -1,48 +1,30 @@
1
- import {
2
- AST_NODE_TYPES,
3
- parse as parseAST
4
- } from "@typescript-eslint/typescript-estree";
5
- import JSON5 from "json5";
6
1
  import { tryCatch } from "../../utils/tryCatch.js";
7
2
  import { zConfigEmoji } from "./schemas.js";
3
+ import JSON5 from "json5";
4
+ import { AST_NODE_TYPES, parse } from "@typescript-eslint/typescript-estree";
5
+
6
+ //#region src/blocks/eslint/blockESLintPluginIntake.ts
8
7
  function blockESLintPluginIntake(sourceText) {
9
- const ast = tryCatch(
10
- () => parseAST(sourceText, {
11
- comment: true,
12
- loc: true,
13
- range: true
14
- })
15
- );
16
- if (!ast) {
17
- return void 0;
18
- }
19
- const config = findConfig(ast.body);
20
- if (!config) {
21
- return void 0;
22
- }
23
- const configEmoji = findConfigEmoji(config.properties);
24
- if (!configEmoji) {
25
- return void 0;
26
- }
27
- const { data } = zConfigEmoji.safeParse(
28
- JSON5.parse(sourceText.slice(...configEmoji.range))
29
- );
30
- return data && { configEmoji: data };
31
- function findConfig(body) {
32
- for (const node of body) {
33
- if (node.type === AST_NODE_TYPES.VariableDeclaration && node.declarations[0].id.type === AST_NODE_TYPES.Identifier && node.declarations[0].id.name === "config" && node.declarations[0].init?.type === AST_NODE_TYPES.ObjectExpression) {
34
- return node.declarations[0].init;
35
- }
36
- }
37
- }
38
- function findConfigEmoji(properties) {
39
- for (const node of properties) {
40
- if (node.type === AST_NODE_TYPES.Property && node.key.type === AST_NODE_TYPES.Identifier && node.key.name === "configEmoji" && node.value.type === AST_NODE_TYPES.ArrayExpression) {
41
- return node.value;
42
- }
43
- }
44
- }
8
+ const ast = tryCatch(() => parse(sourceText, {
9
+ comment: true,
10
+ loc: true,
11
+ range: true
12
+ }));
13
+ if (!ast) return void 0;
14
+ const config = findConfig(ast.body);
15
+ if (!config) return void 0;
16
+ const configEmoji = findConfigEmoji(config.properties);
17
+ if (!configEmoji) return void 0;
18
+ const { data } = zConfigEmoji.safeParse(JSON5.parse(sourceText.slice(...configEmoji.range)));
19
+ return data && { configEmoji: data };
20
+ function findConfig(body) {
21
+ for (const node of body) if (node.type === AST_NODE_TYPES.VariableDeclaration && node.declarations[0].id.type === AST_NODE_TYPES.Identifier && node.declarations[0].id.name === "config" && node.declarations[0].init?.type === AST_NODE_TYPES.ObjectExpression) return node.declarations[0].init;
22
+ }
23
+ function findConfigEmoji(properties) {
24
+ for (const node of properties) if (node.type === AST_NODE_TYPES.Property && node.key.type === AST_NODE_TYPES.Identifier && node.key.name === "configEmoji" && node.value.type === AST_NODE_TYPES.ArrayExpression) return node.value;
25
+ }
45
26
  }
46
- export {
47
- blockESLintPluginIntake
48
- };
27
+
28
+ //#endregion
29
+ export { blockESLintPluginIntake };
30
+ //# sourceMappingURL=blockESLintPluginIntake.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blockESLintPluginIntake.js","names":["sourceText: string","body: TSESTree.ProgramStatement[]","properties: TSESTree.ObjectLiteralElement[]"],"sources":["../../../src/blocks/eslint/blockESLintPluginIntake.ts"],"sourcesContent":["import {\n\tAST_NODE_TYPES,\n\tparse as parseAST,\n\tTSESTree,\n} from \"@typescript-eslint/typescript-estree\";\nimport JSON5 from \"json5\";\n\nimport { tryCatch } from \"../../utils/tryCatch.js\";\nimport { zConfigEmoji } from \"./schemas.js\";\n\nexport function blockESLintPluginIntake(sourceText: string) {\n\tconst ast = tryCatch(() =>\n\t\tparseAST(sourceText, {\n\t\t\tcomment: true,\n\t\t\tloc: true,\n\t\t\trange: true,\n\t\t}),\n\t);\n\tif (!ast) {\n\t\treturn undefined;\n\t}\n\n\tconst config = findConfig(ast.body);\n\tif (!config) {\n\t\treturn undefined;\n\t}\n\n\tconst configEmoji = findConfigEmoji(config.properties);\n\tif (!configEmoji) {\n\t\treturn undefined;\n\t}\n\n\tconst { data } = zConfigEmoji.safeParse(\n\t\tJSON5.parse(sourceText.slice(...configEmoji.range)),\n\t);\n\n\treturn data && { configEmoji: data };\n\n\tfunction findConfig(body: TSESTree.ProgramStatement[]) {\n\t\tfor (const node of body) {\n\t\t\tif (\n\t\t\t\tnode.type === AST_NODE_TYPES.VariableDeclaration &&\n\t\t\t\tnode.declarations[0].id.type === AST_NODE_TYPES.Identifier &&\n\t\t\t\tnode.declarations[0].id.name === \"config\" &&\n\t\t\t\tnode.declarations[0].init?.type === AST_NODE_TYPES.ObjectExpression\n\t\t\t) {\n\t\t\t\treturn node.declarations[0].init;\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction findConfigEmoji(properties: TSESTree.ObjectLiteralElement[]) {\n\t\tfor (const node of properties) {\n\t\t\tif (\n\t\t\t\tnode.type === AST_NODE_TYPES.Property &&\n\t\t\t\tnode.key.type === AST_NODE_TYPES.Identifier &&\n\t\t\t\tnode.key.name === \"configEmoji\" &&\n\t\t\t\tnode.value.type === AST_NODE_TYPES.ArrayExpression\n\t\t\t) {\n\t\t\t\treturn node.value;\n\t\t\t}\n\t\t}\n\t}\n}\n"],"mappings":";;;;;;AAUA,SAAgB,wBAAwBA,YAAoB;CAC3D,MAAM,MAAM,SAAS,MACpB,MAAS,YAAY;EACpB,SAAS;EACT,KAAK;EACL,OAAO;CACP,EAAC,CACF;AACD,MAAK,IACJ;CAGD,MAAM,SAAS,WAAW,IAAI,KAAK;AACnC,MAAK,OACJ;CAGD,MAAM,cAAc,gBAAgB,OAAO,WAAW;AACtD,MAAK,YACJ;CAGD,MAAM,EAAE,MAAM,GAAG,aAAa,UAC7B,MAAM,MAAM,WAAW,MAAM,GAAG,YAAY,MAAM,CAAC,CACnD;AAED,QAAO,QAAQ,EAAE,aAAa,KAAM;CAEpC,SAAS,WAAWC,MAAmC;AACtD,OAAK,MAAM,QAAQ,KAClB,KACC,KAAK,SAAS,eAAe,uBAC7B,KAAK,aAAa,GAAG,GAAG,SAAS,eAAe,cAChD,KAAK,aAAa,GAAG,GAAG,SAAS,YACjC,KAAK,aAAa,GAAG,MAAM,SAAS,eAAe,iBAEnD,QAAO,KAAK,aAAa,GAAG;CAG9B;CAED,SAAS,gBAAgBC,YAA6C;AACrE,OAAK,MAAM,QAAQ,WAClB,KACC,KAAK,SAAS,eAAe,YAC7B,KAAK,IAAI,SAAS,eAAe,cACjC,KAAK,IAAI,SAAS,iBAClB,KAAK,MAAM,SAAS,eAAe,gBAEnC,QAAO,KAAK;CAGd;AACD"}