create-typescript-app 2.0.0-beta.9 → 2.2.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 (116) hide show
  1. package/README.md +14 -15
  2. package/bin/index.js +3 -13
  3. package/lib/base.d.ts +5 -3
  4. package/lib/base.js +29 -15
  5. package/lib/base.js.map +1 -1
  6. package/lib/blocks/blockAllContributors.d.ts +6 -4
  7. package/lib/blocks/blockAllContributors.js +3 -2
  8. package/lib/blocks/blockAllContributors.js.map +1 -1
  9. package/lib/blocks/blockAreTheTypesWrong.d.ts +6 -4
  10. package/lib/blocks/blockCSpell.d.ts +6 -4
  11. package/lib/blocks/blockCSpell.js +13 -13
  12. package/lib/blocks/blockCSpell.js.map +1 -1
  13. package/lib/blocks/blockCodecov.d.ts +6 -4
  14. package/lib/blocks/blockCodecov.js +11 -11
  15. package/lib/blocks/blockCodecov.js.map +1 -1
  16. package/lib/blocks/blockContributingDocs.d.ts +6 -4
  17. package/lib/blocks/blockContributingDocs.js +11 -11
  18. package/lib/blocks/blockContributingDocs.js.map +1 -1
  19. package/lib/blocks/blockContributorCovenant.d.ts +6 -4
  20. package/lib/blocks/blockContributorCovenant.js +11 -11
  21. package/lib/blocks/blockContributorCovenant.js.map +1 -1
  22. package/lib/blocks/blockDevelopmentDocs.d.ts +6 -4
  23. package/lib/blocks/blockDevelopmentDocs.js +11 -11
  24. package/lib/blocks/blockDevelopmentDocs.js.map +1 -1
  25. package/lib/blocks/blockESLint.d.ts +6 -4
  26. package/lib/blocks/blockESLint.js +13 -12
  27. package/lib/blocks/blockESLint.js.map +1 -1
  28. package/lib/blocks/blockESLintComments.d.ts +6 -4
  29. package/lib/blocks/blockESLintJSDoc.d.ts +6 -4
  30. package/lib/blocks/blockESLintJSONC.d.ts +6 -4
  31. package/lib/blocks/blockESLintMarkdown.d.ts +6 -4
  32. package/lib/blocks/blockESLintMoreStyling.d.ts +6 -4
  33. package/lib/blocks/blockESLintNode.d.ts +6 -4
  34. package/lib/blocks/blockESLintPackageJson.d.ts +6 -4
  35. package/lib/blocks/blockESLintPerfectionist.d.ts +6 -4
  36. package/lib/blocks/blockESLintRegexp.d.ts +6 -4
  37. package/lib/blocks/blockESLintYML.d.ts +6 -4
  38. package/lib/blocks/blockExampleFiles.d.ts +6 -4
  39. package/lib/blocks/blockExampleFiles.js +3 -2
  40. package/lib/blocks/blockExampleFiles.js.map +1 -1
  41. package/lib/blocks/blockFunding.d.ts +6 -4
  42. package/lib/blocks/blockGitHubActionsCI.d.ts +6 -4
  43. package/lib/blocks/blockGitHubActionsCI.js +12 -13
  44. package/lib/blocks/blockGitHubActionsCI.js.map +1 -1
  45. package/lib/blocks/blockGitHubApps.d.ts +6 -4
  46. package/lib/blocks/blockGitHubIssueTemplates.d.ts +6 -4
  47. package/lib/blocks/blockGitHubPRTemplate.d.ts +6 -4
  48. package/lib/blocks/blockGitignore.d.ts +6 -4
  49. package/lib/blocks/blockKnip.d.ts +6 -4
  50. package/lib/blocks/blockKnip.js +11 -11
  51. package/lib/blocks/blockKnip.js.map +1 -1
  52. package/lib/blocks/blockMITLicense.d.ts +6 -4
  53. package/lib/blocks/blockMarkdownlint.d.ts +6 -4
  54. package/lib/blocks/blockNvmrc.d.ts +6 -4
  55. package/lib/blocks/blockPRCompliance.d.ts +6 -4
  56. package/lib/blocks/blockPackageJson.d.ts +6 -4
  57. package/lib/blocks/blockPackageJson.js +14 -11
  58. package/lib/blocks/blockPackageJson.js.map +1 -1
  59. package/lib/blocks/blockPnpmDedupe.d.ts +6 -4
  60. package/lib/blocks/blockPrettier.d.ts +6 -4
  61. package/lib/blocks/blockPrettier.js +11 -10
  62. package/lib/blocks/blockPrettier.js.map +1 -1
  63. package/lib/blocks/blockPrettierPluginCurly.d.ts +6 -4
  64. package/lib/blocks/blockPrettierPluginPackageJson.d.ts +6 -4
  65. package/lib/blocks/blockPrettierPluginSh.d.ts +6 -4
  66. package/lib/blocks/blockREADME.d.ts +6 -4
  67. package/lib/blocks/blockReleaseIt.d.ts +6 -4
  68. package/lib/blocks/blockReleaseIt.js +0 -1
  69. package/lib/blocks/blockReleaseIt.js.map +1 -1
  70. package/lib/blocks/blockRenovate.d.ts +6 -4
  71. package/lib/blocks/blockRepositoryBranchRuleset.d.ts +6 -4
  72. package/lib/blocks/blockRepositoryBranchRuleset.js +78 -54
  73. package/lib/blocks/blockRepositoryBranchRuleset.js.map +1 -1
  74. package/lib/blocks/blockRepositoryLabels.d.ts +6 -4
  75. package/lib/blocks/blockRepositorySecrets.d.ts +7 -5
  76. package/lib/blocks/blockRepositorySettings.d.ts +6 -4
  77. package/lib/blocks/blockSecurityDocs.d.ts +6 -4
  78. package/lib/blocks/blockTSup.d.ts +6 -4
  79. package/lib/blocks/blockTSup.js +18 -18
  80. package/lib/blocks/blockTSup.js.map +1 -1
  81. package/lib/blocks/blockTemplatedWith.d.ts +6 -4
  82. package/lib/blocks/blockTemplatedWith.js +2 -2
  83. package/lib/blocks/blockTemplatedWith.js.map +1 -1
  84. package/lib/blocks/blockTypeScript.d.ts +6 -4
  85. package/lib/blocks/blockVSCode.d.ts +6 -4
  86. package/lib/blocks/blockVitest.d.ts +6 -4
  87. package/lib/blocks/blockVitest.js +22 -19
  88. package/lib/blocks/blockVitest.js.map +1 -1
  89. package/lib/blocks/index.d.ts +216 -130
  90. package/lib/data/contributions.d.ts +3 -0
  91. package/lib/data/contributions.js +14 -0
  92. package/lib/data/contributions.js.map +1 -0
  93. package/lib/data/packageData.d.ts +41 -37
  94. package/lib/index.d.ts +157 -3
  95. package/lib/index.js +4 -2
  96. package/lib/index.js.map +1 -1
  97. package/lib/inputs/inputFromOctokit.d.ts +9 -0
  98. package/lib/inputs/inputFromOctokit.js +28 -0
  99. package/lib/inputs/inputFromOctokit.js.map +1 -0
  100. package/lib/options/readAllContributors.d.ts +6 -0
  101. package/lib/options/readAllContributors.js +27 -0
  102. package/lib/options/readAllContributors.js.map +1 -0
  103. package/lib/options/readDocumentation.d.ts +1 -1
  104. package/lib/options/readDocumentation.js.map +1 -1
  105. package/lib/options/readPnpm.d.ts +5 -0
  106. package/lib/options/readPnpm.js +8 -0
  107. package/lib/options/readPnpm.js.map +1 -0
  108. package/lib/presets/common.d.ts +6 -4
  109. package/lib/presets/everything.d.ts +6 -4
  110. package/lib/presets/index.d.ts +16 -10
  111. package/lib/presets/minimal.d.ts +6 -4
  112. package/lib/template.d.ts +7 -5
  113. package/lib/template.js +6 -4
  114. package/lib/template.js.map +1 -1
  115. package/lib/types.d.ts +1 -0
  116. package/package.json +38 -36
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/blocks/blockReleaseIt.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { getPackageDependencies } from \"../data/packageData.js\";\nimport { blockCSpell } from \"./blockCSpell.js\";\nimport { blockPackageJson } from \"./blockPackageJson.js\";\nimport { blockRepositorySecrets } from \"./blockRepositorySecrets.js\";\nimport { createSoloWorkflowFile } from \"./files/createSoloWorkflowFile.js\";\n\nexport const blockReleaseIt = base.createBlock({\n\tabout: {\n\t\tname: \"release-it\",\n\t},\n\tproduce({ options }) {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockCSpell({\n\t\t\t\t\twords: [\"apexskier\"],\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\"@release-it/conventional-changelog\",\n\t\t\t\t\t\t\t\"release-it\",\n\t\t\t\t\t\t),\n\t\t\t\t\t\tpublishConfig: {\n\t\t\t\t\t\t\tprovenance: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\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\t{\n\t\t\t\t\t\t\tdescription: \"an npm access token with automation permissions\",\n\t\t\t\t\t\t\tname: \"NPM_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\".github\": {\n\t\t\t\t\tworkflows: {\n\t\t\t\t\t\t\"post-release.yml\": createSoloWorkflowFile({\n\t\t\t\t\t\t\tname: \"Post Release\",\n\t\t\t\t\t\t\ton: {\n\t\t\t\t\t\t\t\trelease: {\n\t\t\t\t\t\t\t\t\ttypes: [\"published\"],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tpermissions: {\n\t\t\t\t\t\t\t\tissues: \"write\",\n\t\t\t\t\t\t\t\t\"pull-requests\": \"write\",\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{\n\t\t\t\t\t\t\t\t\trun: `echo \"npm_version=$(npm pkg get version | tr -d '\"')\" >> \"$GITHUB_ENV\"`,\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\tuses: \"apexskier/github-release-commenter@v1\",\n\t\t\t\t\t\t\t\t\twith: {\n\t\t\t\t\t\t\t\t\t\t\"comment-template\": `\n\t\t\t\t\t\t\t:tada: This is included in version {release_link} :tada:\n\n\t\t\t\t\t\t\tThe release is available on:\n\n\t\t\t\t\t\t\t* [GitHub releases](https://github.com/${options.owner}/${options.repository}/releases/tag/{release_tag})\n\t\t\t\t\t\t\t* [npm package (@latest dist-tag)](https://www.npmjs.com/package/${options.repository}/v/\\${{ env.npm_version }})\n\n\t\t\t\t\t\t\tCheers! 📦🚀\n\t\t\t\t\t\t`,\n\t\t\t\t\t\t\t\t\t\tGITHUB_TOKEN: \"${{ secrets.GITHUB_TOKEN }}\",\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\t\"release.yml\": createSoloWorkflowFile({\n\t\t\t\t\t\t\tconcurrency: {\n\t\t\t\t\t\t\t\tgroup: \"${{ github.workflow }}\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tname: \"Release\",\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\tpermissions: {\n\t\t\t\t\t\t\t\tcontents: \"write\",\n\t\t\t\t\t\t\t\t\"id-token\": \"write\",\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{\n\t\t\t\t\t\t\t\t\tuses: \"actions/checkout@v4\",\n\t\t\t\t\t\t\t\t\twith: {\n\t\t\t\t\t\t\t\t\t\t\"fetch-depth\": 0,\n\t\t\t\t\t\t\t\t\t\tref: \"main\",\n\t\t\t\t\t\t\t\t\t\ttoken: \"${{ secrets.ACCESS_TOKEN }}\",\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{\n\t\t\t\t\t\t\t\t\tuses: \"./.github/actions/prepare\",\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\trun: \"pnpm build\",\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\tenv: {\n\t\t\t\t\t\t\t\t\t\tGITHUB_TOKEN: \"${{ secrets.ACCESS_TOKEN }}\",\n\t\t\t\t\t\t\t\t\t\tNPM_TOKEN: \"${{ secrets.NPM_TOKEN }}\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tuses: \"JoshuaKGoldberg/release-it-action@v0.2.2\",\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\t\".release-it.json\": JSON.stringify({\n\t\t\t\t\tgit: {\n\t\t\t\t\t\tcommitMessage: \"chore: release v${version}\",\n\t\t\t\t\t\trequireCommits: true,\n\t\t\t\t\t},\n\t\t\t\t\tgithub: {\n\t\t\t\t\t\tautoGenerate: true,\n\t\t\t\t\t\trelease: true,\n\t\t\t\t\t\treleaseName: \"v${version}\",\n\t\t\t\t\t},\n\t\t\t\t\tnpm: {\n\t\t\t\t\t\tpublishArgs: [`--access ${options.access}`, \"--provenance\"],\n\t\t\t\t\t},\n\t\t\t\t\tplugins: {\n\t\t\t\t\t\t\"@release-it/conventional-changelog\": {\n\t\t\t\t\t\t\tinfile: \"CHANGELOG.md\",\n\t\t\t\t\t\t\tpreset: \"angular\",\n\t\t\t\t\t\t\ttypes: [\n\t\t\t\t\t\t\t\t{ section: \"Features\", type: \"feat\" },\n\t\t\t\t\t\t\t\t{ section: \"Bug Fixes\", type: \"fix\" },\n\t\t\t\t\t\t\t\t{ section: \"Performance Improvements\", type: \"perf\" },\n\t\t\t\t\t\t\t\t{ hidden: true, type: \"build\" },\n\t\t\t\t\t\t\t\t{ hidden: true, type: \"chore\" },\n\t\t\t\t\t\t\t\t{ hidden: true, type: \"ci\" },\n\t\t\t\t\t\t\t\t{ hidden: true, type: \"docs\" },\n\t\t\t\t\t\t\t\t{ hidden: true, type: \"refactor\" },\n\t\t\t\t\t\t\t\t{ hidden: true, type: \"style\" },\n\t\t\t\t\t\t\t\t{ hidden: true, type: \"test\" },\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":"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","names":[]}
1
+ {"version":3,"sources":["../../src/blocks/blockReleaseIt.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { getPackageDependencies } from \"../data/packageData.js\";\nimport { blockCSpell } from \"./blockCSpell.js\";\nimport { blockPackageJson } from \"./blockPackageJson.js\";\nimport { blockRepositorySecrets } from \"./blockRepositorySecrets.js\";\nimport { createSoloWorkflowFile } from \"./files/createSoloWorkflowFile.js\";\n\nexport const blockReleaseIt = base.createBlock({\n\tabout: {\n\t\tname: \"release-it\",\n\t},\n\tproduce({ options }) {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockCSpell({\n\t\t\t\t\twords: [\"apexskier\"],\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\"@release-it/conventional-changelog\",\n\t\t\t\t\t\t\t\"release-it\",\n\t\t\t\t\t\t),\n\t\t\t\t\t\tpublishConfig: {\n\t\t\t\t\t\t\tprovenance: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\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\t{\n\t\t\t\t\t\t\tdescription: \"an npm access token with automation permissions\",\n\t\t\t\t\t\t\tname: \"NPM_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\".github\": {\n\t\t\t\t\tworkflows: {\n\t\t\t\t\t\t\"post-release.yml\": createSoloWorkflowFile({\n\t\t\t\t\t\t\tname: \"Post Release\",\n\t\t\t\t\t\t\ton: {\n\t\t\t\t\t\t\t\trelease: {\n\t\t\t\t\t\t\t\t\ttypes: [\"published\"],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tpermissions: {\n\t\t\t\t\t\t\t\tissues: \"write\",\n\t\t\t\t\t\t\t\t\"pull-requests\": \"write\",\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{\n\t\t\t\t\t\t\t\t\trun: `echo \"npm_version=$(npm pkg get version | tr -d '\"')\" >> \"$GITHUB_ENV\"`,\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\tuses: \"apexskier/github-release-commenter@v1\",\n\t\t\t\t\t\t\t\t\twith: {\n\t\t\t\t\t\t\t\t\t\t\"comment-template\": `\n\t\t\t\t\t\t\t:tada: This is included in version {release_link} :tada:\n\n\t\t\t\t\t\t\tThe release is available on:\n\n\t\t\t\t\t\t\t* [GitHub releases](https://github.com/${options.owner}/${options.repository}/releases/tag/{release_tag})\n\t\t\t\t\t\t\t* [npm package (@latest dist-tag)](https://www.npmjs.com/package/${options.repository}/v/\\${{ env.npm_version }})\n\n\t\t\t\t\t\t\tCheers! 📦🚀\n\t\t\t\t\t\t`,\n\t\t\t\t\t\t\t\t\t\tGITHUB_TOKEN: \"${{ secrets.GITHUB_TOKEN }}\",\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\t\"release.yml\": createSoloWorkflowFile({\n\t\t\t\t\t\t\tconcurrency: {\n\t\t\t\t\t\t\t\tgroup: \"${{ github.workflow }}\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tname: \"Release\",\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\tpermissions: {\n\t\t\t\t\t\t\t\tcontents: \"write\",\n\t\t\t\t\t\t\t\t\"id-token\": \"write\",\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{\n\t\t\t\t\t\t\t\t\tuses: \"actions/checkout@v4\",\n\t\t\t\t\t\t\t\t\twith: {\n\t\t\t\t\t\t\t\t\t\t\"fetch-depth\": 0,\n\t\t\t\t\t\t\t\t\t\tref: \"main\",\n\t\t\t\t\t\t\t\t\t\ttoken: \"${{ secrets.ACCESS_TOKEN }}\",\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{\n\t\t\t\t\t\t\t\t\tuses: \"./.github/actions/prepare\",\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\trun: \"pnpm build\",\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\tenv: {\n\t\t\t\t\t\t\t\t\t\tGITHUB_TOKEN: \"${{ secrets.ACCESS_TOKEN }}\",\n\t\t\t\t\t\t\t\t\t\tNPM_TOKEN: \"${{ secrets.NPM_TOKEN }}\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tuses: \"JoshuaKGoldberg/release-it-action@v0.2.2\",\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\t\".release-it.json\": JSON.stringify({\n\t\t\t\t\tgit: {\n\t\t\t\t\t\tcommitMessage: \"chore: release v${version}\",\n\t\t\t\t\t\trequireCommits: true,\n\t\t\t\t\t},\n\t\t\t\t\tgithub: {\n\t\t\t\t\t\trelease: true,\n\t\t\t\t\t\treleaseName: \"v${version}\",\n\t\t\t\t\t},\n\t\t\t\t\tnpm: {\n\t\t\t\t\t\tpublishArgs: [`--access ${options.access}`, \"--provenance\"],\n\t\t\t\t\t},\n\t\t\t\t\tplugins: {\n\t\t\t\t\t\t\"@release-it/conventional-changelog\": {\n\t\t\t\t\t\t\tinfile: \"CHANGELOG.md\",\n\t\t\t\t\t\t\tpreset: \"angular\",\n\t\t\t\t\t\t\ttypes: [\n\t\t\t\t\t\t\t\t{ section: \"Features\", type: \"feat\" },\n\t\t\t\t\t\t\t\t{ section: \"Bug Fixes\", type: \"fix\" },\n\t\t\t\t\t\t\t\t{ section: \"Performance Improvements\", type: \"perf\" },\n\t\t\t\t\t\t\t\t{ hidden: true, type: \"build\" },\n\t\t\t\t\t\t\t\t{ hidden: true, type: \"chore\" },\n\t\t\t\t\t\t\t\t{ hidden: true, type: \"ci\" },\n\t\t\t\t\t\t\t\t{ hidden: true, type: \"docs\" },\n\t\t\t\t\t\t\t\t{ hidden: true, type: \"refactor\" },\n\t\t\t\t\t\t\t\t{ hidden: true, type: \"style\" },\n\t\t\t\t\t\t\t\t{ hidden: true, type: \"test\" },\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":"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","names":[]}
@@ -1,8 +1,8 @@
1
- import * as create from 'create';
1
+ import * as bingo_stratum from 'bingo-stratum';
2
2
 
3
- declare const blockRenovate: create.BlockWithoutAddons<{
4
- description: string;
3
+ declare const blockRenovate: bingo_stratum.BlockWithoutAddons<{
5
4
  access: "public" | "restricted";
5
+ description: string;
6
6
  directory: string;
7
7
  email: {
8
8
  github: string;
@@ -14,10 +14,10 @@ declare const blockRenovate: create.BlockWithoutAddons<{
14
14
  author?: string | undefined;
15
15
  bin?: string | undefined;
16
16
  contributors?: {
17
- name: string;
18
17
  avatar_url: string;
19
18
  contributions: string[];
20
19
  login: string;
20
+ name: string;
21
21
  profile: string;
22
22
  }[] | undefined;
23
23
  documentation?: string | undefined;
@@ -43,6 +43,8 @@ declare const blockRenovate: create.BlockWithoutAddons<{
43
43
  devDependencies?: Record<string, string> | undefined;
44
44
  scripts?: Record<string, string> | undefined;
45
45
  } | undefined;
46
+ pnpm?: string | undefined;
47
+ rulesetId?: string | undefined;
46
48
  usage?: string | undefined;
47
49
  version?: string | undefined;
48
50
  }>;
@@ -1,10 +1,10 @@
1
- import * as create from 'create';
1
+ import * as bingo_stratum from 'bingo-stratum';
2
2
 
3
- declare const blockRepositoryBranchRuleset: create.BlockWithAddons<{
3
+ declare const blockRepositoryBranchRuleset: bingo_stratum.BlockWithAddons<{
4
4
  requiredStatusChecks: string[];
5
5
  }, {
6
- description: string;
7
6
  access: "public" | "restricted";
7
+ description: string;
8
8
  directory: string;
9
9
  email: {
10
10
  github: string;
@@ -16,10 +16,10 @@ declare const blockRepositoryBranchRuleset: create.BlockWithAddons<{
16
16
  author?: string | undefined;
17
17
  bin?: string | undefined;
18
18
  contributors?: {
19
- name: string;
20
19
  avatar_url: string;
21
20
  contributions: string[];
22
21
  login: string;
22
+ name: string;
23
23
  profile: string;
24
24
  }[] | undefined;
25
25
  documentation?: string | undefined;
@@ -45,6 +45,8 @@ declare const blockRepositoryBranchRuleset: create.BlockWithAddons<{
45
45
  devDependencies?: Record<string, string> | undefined;
46
46
  scripts?: Record<string, string> | undefined;
47
47
  } | undefined;
48
+ pnpm?: string | undefined;
49
+ rulesetId?: string | undefined;
48
50
  usage?: string | undefined;
49
51
  version?: string | undefined;
50
52
  }>;
@@ -7,63 +7,87 @@ const blockRepositoryBranchRuleset = base.createBlock({
7
7
  addons: {
8
8
  requiredStatusChecks: z.array(z.string()).default([])
9
9
  },
10
- produce({ addons, options }) {
11
- return {
12
- requests: [
13
- {
14
- id: "branch-ruleset",
15
- async send({ octokit }) {
16
- await octokit.request("POST /repos/{owner}/{repo}/rulesets", {
17
- bypass_actors: [
18
- {
19
- // This *seems* to be the Repository Admin role always?
20
- // https://github.com/github/rest-api-description/issues/4406
21
- actor_id: 5,
22
- actor_type: "RepositoryRole",
23
- bypass_mode: "always"
24
- }
25
- ],
26
- conditions: {
27
- ref_name: {
28
- exclude: [],
29
- include: ["refs/heads/main"]
30
- }
10
+ setup({ addons, options }) {
11
+ return createRequestSend(
12
+ addons.requiredStatusChecks,
13
+ "POST /repos/{owner}/{repo}/rulesets",
14
+ options,
15
+ "branch-ruleset-create",
16
+ void 0
17
+ );
18
+ },
19
+ transition({ addons, options }) {
20
+ return createRequestSend(
21
+ addons.requiredStatusChecks,
22
+ `PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}`,
23
+ options,
24
+ "branch-ruleset-update",
25
+ options.rulesetId
26
+ );
27
+ },
28
+ // TODO: Make produce() optional
29
+ // This needs createBlock to be generic to know if block.produce({}) is ok
30
+ produce() {
31
+ return {};
32
+ }
33
+ });
34
+ function createRequestSend(contexts, endpoint, options, requestId, rulesetId) {
35
+ return {
36
+ requests: [
37
+ {
38
+ id: requestId,
39
+ async send({ octokit }) {
40
+ await octokit.request(endpoint, {
41
+ bypass_actors: [
42
+ {
43
+ // This *seems* to be the Repository Admin role always?
44
+ // https://github.com/github/rest-api-description/issues/4406
45
+ actor_id: 5,
46
+ actor_type: "RepositoryRole",
47
+ bypass_mode: "always"
48
+ }
49
+ ],
50
+ conditions: {
51
+ ref_name: {
52
+ exclude: [],
53
+ include: ["refs/heads/main"]
54
+ }
55
+ },
56
+ enforcement: "active",
57
+ name: "Branch protection for main",
58
+ owner: options.owner,
59
+ repo: options.repository,
60
+ rules: [
61
+ { type: "deletion" },
62
+ {
63
+ parameters: {
64
+ allowed_merge_methods: ["squash"],
65
+ dismiss_stale_reviews_on_push: false,
66
+ require_code_owner_review: false,
67
+ require_last_push_approval: false,
68
+ required_approving_review_count: 0,
69
+ required_review_thread_resolution: false
70
+ },
71
+ type: "pull_request"
31
72
  },
32
- enforcement: "active",
33
- name: "Branch protection for main",
34
- owner: options.owner,
35
- repo: options.repository,
36
- rules: [
37
- { type: "deletion" },
38
- {
39
- parameters: {
40
- allowed_merge_methods: ["squash"],
41
- dismiss_stale_reviews_on_push: false,
42
- require_code_owner_review: false,
43
- require_last_push_approval: false,
44
- required_approving_review_count: 0,
45
- required_review_thread_resolution: false
46
- },
47
- type: "pull_request"
73
+ {
74
+ parameters: {
75
+ required_status_checks: contexts.map((context) => ({
76
+ context
77
+ })),
78
+ strict_required_status_checks_policy: false
48
79
  },
49
- {
50
- parameters: {
51
- required_status_checks: addons.requiredStatusChecks.map(
52
- (context) => ({ context })
53
- ),
54
- strict_required_status_checks_policy: false
55
- },
56
- type: "required_status_checks"
57
- }
58
- ],
59
- target: "branch"
60
- });
61
- }
80
+ type: "required_status_checks"
81
+ }
82
+ ],
83
+ ruleset_id: rulesetId,
84
+ target: "branch"
85
+ });
62
86
  }
63
- ]
64
- };
65
- }
66
- });
87
+ }
88
+ ]
89
+ };
90
+ }
67
91
  export {
68
92
  blockRepositoryBranchRuleset
69
93
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/blocks/blockRepositoryBranchRuleset.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { base } from \"../base.js\";\n\nexport const blockRepositoryBranchRuleset = base.createBlock({\n\tabout: {\n\t\tname: \"Repository Branch Ruleset\",\n\t},\n\taddons: {\n\t\trequiredStatusChecks: z.array(z.string()).default([]),\n\t},\n\tproduce({ addons, options }) {\n\t\treturn {\n\t\t\trequests: [\n\t\t\t\t{\n\t\t\t\t\tid: \"branch-ruleset\",\n\t\t\t\t\tasync send({ octokit }) {\n\t\t\t\t\t\tawait octokit.request(\"POST /repos/{owner}/{repo}/rulesets\", {\n\t\t\t\t\t\t\tbypass_actors: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t// This *seems* to be the Repository Admin role always?\n\t\t\t\t\t\t\t\t\t// https://github.com/github/rest-api-description/issues/4406\n\t\t\t\t\t\t\t\t\tactor_id: 5,\n\t\t\t\t\t\t\t\t\tactor_type: \"RepositoryRole\",\n\t\t\t\t\t\t\t\t\tbypass_mode: \"always\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\tconditions: {\n\t\t\t\t\t\t\t\tref_name: {\n\t\t\t\t\t\t\t\t\texclude: [],\n\t\t\t\t\t\t\t\t\tinclude: [\"refs/heads/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\tenforcement: \"active\",\n\t\t\t\t\t\t\tname: \"Branch protection for main\",\n\t\t\t\t\t\t\towner: options.owner,\n\t\t\t\t\t\t\trepo: options.repository,\n\t\t\t\t\t\t\trules: [\n\t\t\t\t\t\t\t\t{ type: \"deletion\" },\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tparameters: {\n\t\t\t\t\t\t\t\t\t\tallowed_merge_methods: [\"squash\"],\n\t\t\t\t\t\t\t\t\t\tdismiss_stale_reviews_on_push: false,\n\t\t\t\t\t\t\t\t\t\trequire_code_owner_review: false,\n\t\t\t\t\t\t\t\t\t\trequire_last_push_approval: false,\n\t\t\t\t\t\t\t\t\t\trequired_approving_review_count: 0,\n\t\t\t\t\t\t\t\t\t\trequired_review_thread_resolution: false,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\ttype: \"pull_request\",\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\tparameters: {\n\t\t\t\t\t\t\t\t\t\trequired_status_checks: addons.requiredStatusChecks.map(\n\t\t\t\t\t\t\t\t\t\t\t(context) => ({ context }),\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\tstrict_required_status_checks_policy: false,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\ttype: \"required_status_checks\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\ttarget: \"branch\",\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,SAAS;AAElB,SAAS,YAAY;AAEd,MAAM,+BAA+B,KAAK,YAAY;AAAA,EAC5D,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,QAAQ;AAAA,IACP,sBAAsB,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;AAAA,EACrD;AAAA,EACA,QAAQ,EAAE,QAAQ,QAAQ,GAAG;AAC5B,WAAO;AAAA,MACN,UAAU;AAAA,QACT;AAAA,UACC,IAAI;AAAA,UACJ,MAAM,KAAK,EAAE,QAAQ,GAAG;AACvB,kBAAM,QAAQ,QAAQ,uCAAuC;AAAA,cAC5D,eAAe;AAAA,gBACd;AAAA;AAAA;AAAA,kBAGC,UAAU;AAAA,kBACV,YAAY;AAAA,kBACZ,aAAa;AAAA,gBACd;AAAA,cACD;AAAA,cACA,YAAY;AAAA,gBACX,UAAU;AAAA,kBACT,SAAS,CAAC;AAAA,kBACV,SAAS,CAAC,iBAAiB;AAAA,gBAC5B;AAAA,cACD;AAAA,cACA,aAAa;AAAA,cACb,MAAM;AAAA,cACN,OAAO,QAAQ;AAAA,cACf,MAAM,QAAQ;AAAA,cACd,OAAO;AAAA,gBACN,EAAE,MAAM,WAAW;AAAA,gBACnB;AAAA,kBACC,YAAY;AAAA,oBACX,uBAAuB,CAAC,QAAQ;AAAA,oBAChC,+BAA+B;AAAA,oBAC/B,2BAA2B;AAAA,oBAC3B,4BAA4B;AAAA,oBAC5B,iCAAiC;AAAA,oBACjC,mCAAmC;AAAA,kBACpC;AAAA,kBACA,MAAM;AAAA,gBACP;AAAA,gBACA;AAAA,kBACC,YAAY;AAAA,oBACX,wBAAwB,OAAO,qBAAqB;AAAA,sBACnD,CAAC,aAAa,EAAE,QAAQ;AAAA,oBACzB;AAAA,oBACA,sCAAsC;AAAA,kBACvC;AAAA,kBACA,MAAM;AAAA,gBACP;AAAA,cACD;AAAA,cACA,QAAQ;AAAA,YACT,CAAC;AAAA,UACF;AAAA,QACD;AAAA,MACD;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
1
+ {"version":3,"sources":["../../src/blocks/blockRepositoryBranchRuleset.ts"],"sourcesContent":["import { BlockCreation } from \"bingo-stratum\";\nimport { z } from \"zod\";\n\nimport { base, BaseOptions } from \"../base.js\";\n\nexport const blockRepositoryBranchRuleset = base.createBlock({\n\tabout: {\n\t\tname: \"Repository Branch Ruleset\",\n\t},\n\taddons: {\n\t\trequiredStatusChecks: z.array(z.string()).default([]),\n\t},\n\tsetup({ addons, options }) {\n\t\treturn createRequestSend(\n\t\t\taddons.requiredStatusChecks,\n\t\t\t\"POST /repos/{owner}/{repo}/rulesets\",\n\t\t\toptions,\n\t\t\t\"branch-ruleset-create\",\n\t\t\tundefined,\n\t\t);\n\t},\n\ttransition({ addons, options }) {\n\t\treturn createRequestSend(\n\t\t\taddons.requiredStatusChecks,\n\t\t\t`PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}`,\n\t\t\toptions,\n\t\t\t\"branch-ruleset-update\",\n\t\t\toptions.rulesetId,\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\nfunction createRequestSend(\n\tcontexts: string[],\n\tendpoint: string,\n\toptions: BaseOptions,\n\trequestId: string,\n\trulesetId: string | undefined,\n): Partial<BlockCreation<BaseOptions>> {\n\treturn {\n\t\trequests: [\n\t\t\t{\n\t\t\t\tid: requestId,\n\t\t\t\tasync send({ octokit }) {\n\t\t\t\t\tawait octokit.request(endpoint, {\n\t\t\t\t\t\tbypass_actors: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t// This *seems* to be the Repository Admin role always?\n\t\t\t\t\t\t\t\t// https://github.com/github/rest-api-description/issues/4406\n\t\t\t\t\t\t\t\tactor_id: 5,\n\t\t\t\t\t\t\t\tactor_type: \"RepositoryRole\",\n\t\t\t\t\t\t\t\tbypass_mode: \"always\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tconditions: {\n\t\t\t\t\t\t\tref_name: {\n\t\t\t\t\t\t\t\texclude: [],\n\t\t\t\t\t\t\t\tinclude: [\"refs/heads/main\"],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tenforcement: \"active\",\n\t\t\t\t\t\tname: \"Branch protection for main\",\n\t\t\t\t\t\towner: options.owner,\n\t\t\t\t\t\trepo: options.repository,\n\t\t\t\t\t\trules: [\n\t\t\t\t\t\t\t{ type: \"deletion\" },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tparameters: {\n\t\t\t\t\t\t\t\t\tallowed_merge_methods: [\"squash\"],\n\t\t\t\t\t\t\t\t\tdismiss_stale_reviews_on_push: false,\n\t\t\t\t\t\t\t\t\trequire_code_owner_review: false,\n\t\t\t\t\t\t\t\t\trequire_last_push_approval: false,\n\t\t\t\t\t\t\t\t\trequired_approving_review_count: 0,\n\t\t\t\t\t\t\t\t\trequired_review_thread_resolution: false,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\ttype: \"pull_request\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tparameters: {\n\t\t\t\t\t\t\t\t\trequired_status_checks: contexts.map((context) => ({\n\t\t\t\t\t\t\t\t\t\tcontext,\n\t\t\t\t\t\t\t\t\t})),\n\t\t\t\t\t\t\t\t\tstrict_required_status_checks_policy: false,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\ttype: \"required_status_checks\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\truleset_id: rulesetId,\n\t\t\t\t\t\ttarget: \"branch\",\n\t\t\t\t\t});\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t};\n}\n"],"mappings":"AACA,SAAS,SAAS;AAElB,SAAS,YAAyB;AAE3B,MAAM,+BAA+B,KAAK,YAAY;AAAA,EAC5D,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,QAAQ;AAAA,IACP,sBAAsB,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;AAAA,EACrD;AAAA,EACA,MAAM,EAAE,QAAQ,QAAQ,GAAG;AAC1B,WAAO;AAAA,MACN,OAAO;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACD;AAAA,EACA,WAAW,EAAE,QAAQ,QAAQ,GAAG;AAC/B,WAAO;AAAA,MACN,OAAO;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA,QAAQ;AAAA,IACT;AAAA,EACD;AAAA;AAAA;AAAA,EAGA,UAAU;AACT,WAAO,CAAC;AAAA,EACT;AACD,CAAC;AAED,SAAS,kBACR,UACA,UACA,SACA,WACA,WACsC;AACtC,SAAO;AAAA,IACN,UAAU;AAAA,MACT;AAAA,QACC,IAAI;AAAA,QACJ,MAAM,KAAK,EAAE,QAAQ,GAAG;AACvB,gBAAM,QAAQ,QAAQ,UAAU;AAAA,YAC/B,eAAe;AAAA,cACd;AAAA;AAAA;AAAA,gBAGC,UAAU;AAAA,gBACV,YAAY;AAAA,gBACZ,aAAa;AAAA,cACd;AAAA,YACD;AAAA,YACA,YAAY;AAAA,cACX,UAAU;AAAA,gBACT,SAAS,CAAC;AAAA,gBACV,SAAS,CAAC,iBAAiB;AAAA,cAC5B;AAAA,YACD;AAAA,YACA,aAAa;AAAA,YACb,MAAM;AAAA,YACN,OAAO,QAAQ;AAAA,YACf,MAAM,QAAQ;AAAA,YACd,OAAO;AAAA,cACN,EAAE,MAAM,WAAW;AAAA,cACnB;AAAA,gBACC,YAAY;AAAA,kBACX,uBAAuB,CAAC,QAAQ;AAAA,kBAChC,+BAA+B;AAAA,kBAC/B,2BAA2B;AAAA,kBAC3B,4BAA4B;AAAA,kBAC5B,iCAAiC;AAAA,kBACjC,mCAAmC;AAAA,gBACpC;AAAA,gBACA,MAAM;AAAA,cACP;AAAA,cACA;AAAA,gBACC,YAAY;AAAA,kBACX,wBAAwB,SAAS,IAAI,CAAC,aAAa;AAAA,oBAClD;AAAA,kBACD,EAAE;AAAA,kBACF,sCAAsC;AAAA,gBACvC;AAAA,gBACA,MAAM;AAAA,cACP;AAAA,YACD;AAAA,YACA,YAAY;AAAA,YACZ,QAAQ;AAAA,UACT,CAAC;AAAA,QACF;AAAA,MACD;AAAA,IACD;AAAA,EACD;AACD;","names":[]}
@@ -1,8 +1,8 @@
1
- import * as create from 'create';
1
+ import * as bingo_stratum from 'bingo-stratum';
2
2
 
3
- declare const blockRepositoryLabels: create.BlockWithoutAddons<{
4
- description: string;
3
+ declare const blockRepositoryLabels: bingo_stratum.BlockWithoutAddons<{
5
4
  access: "public" | "restricted";
5
+ description: string;
6
6
  directory: string;
7
7
  email: {
8
8
  github: string;
@@ -14,10 +14,10 @@ declare const blockRepositoryLabels: create.BlockWithoutAddons<{
14
14
  author?: string | undefined;
15
15
  bin?: string | undefined;
16
16
  contributors?: {
17
- name: string;
18
17
  avatar_url: string;
19
18
  contributions: string[];
20
19
  login: string;
20
+ name: string;
21
21
  profile: string;
22
22
  }[] | undefined;
23
23
  documentation?: string | undefined;
@@ -43,6 +43,8 @@ declare const blockRepositoryLabels: create.BlockWithoutAddons<{
43
43
  devDependencies?: Record<string, string> | undefined;
44
44
  scripts?: Record<string, string> | undefined;
45
45
  } | undefined;
46
+ pnpm?: string | undefined;
47
+ rulesetId?: string | undefined;
46
48
  usage?: string | undefined;
47
49
  version?: string | undefined;
48
50
  }>;
@@ -1,13 +1,13 @@
1
- import * as create from 'create';
1
+ import * as bingo_stratum from 'bingo-stratum';
2
2
 
3
- declare const blockRepositorySecrets: create.BlockWithAddons<{
3
+ declare const blockRepositorySecrets: bingo_stratum.BlockWithAddons<{
4
4
  secrets: {
5
- description: string;
6
5
  name: string;
6
+ description: string;
7
7
  }[];
8
8
  }, {
9
- description: string;
10
9
  access: "public" | "restricted";
10
+ description: string;
11
11
  directory: string;
12
12
  email: {
13
13
  github: string;
@@ -19,10 +19,10 @@ declare const blockRepositorySecrets: create.BlockWithAddons<{
19
19
  author?: string | undefined;
20
20
  bin?: string | undefined;
21
21
  contributors?: {
22
- name: string;
23
22
  avatar_url: string;
24
23
  contributions: string[];
25
24
  login: string;
25
+ name: string;
26
26
  profile: string;
27
27
  }[] | undefined;
28
28
  documentation?: string | undefined;
@@ -48,6 +48,8 @@ declare const blockRepositorySecrets: create.BlockWithAddons<{
48
48
  devDependencies?: Record<string, string> | undefined;
49
49
  scripts?: Record<string, string> | undefined;
50
50
  } | undefined;
51
+ pnpm?: string | undefined;
52
+ rulesetId?: string | undefined;
51
53
  usage?: string | undefined;
52
54
  version?: string | undefined;
53
55
  }>;
@@ -1,8 +1,8 @@
1
- import * as create from 'create';
1
+ import * as bingo_stratum from 'bingo-stratum';
2
2
 
3
- declare const blockRepositorySettings: create.BlockWithoutAddons<{
4
- description: string;
3
+ declare const blockRepositorySettings: bingo_stratum.BlockWithoutAddons<{
5
4
  access: "public" | "restricted";
5
+ description: string;
6
6
  directory: string;
7
7
  email: {
8
8
  github: string;
@@ -14,10 +14,10 @@ declare const blockRepositorySettings: create.BlockWithoutAddons<{
14
14
  author?: string | undefined;
15
15
  bin?: string | undefined;
16
16
  contributors?: {
17
- name: string;
18
17
  avatar_url: string;
19
18
  contributions: string[];
20
19
  login: string;
20
+ name: string;
21
21
  profile: string;
22
22
  }[] | undefined;
23
23
  documentation?: string | undefined;
@@ -43,6 +43,8 @@ declare const blockRepositorySettings: create.BlockWithoutAddons<{
43
43
  devDependencies?: Record<string, string> | undefined;
44
44
  scripts?: Record<string, string> | undefined;
45
45
  } | undefined;
46
+ pnpm?: string | undefined;
47
+ rulesetId?: string | undefined;
46
48
  usage?: string | undefined;
47
49
  version?: string | undefined;
48
50
  }>;
@@ -1,8 +1,8 @@
1
- import * as create from 'create';
1
+ import * as bingo_stratum from 'bingo-stratum';
2
2
 
3
- declare const blockSecurityDocs: create.BlockWithoutAddons<{
4
- description: string;
3
+ declare const blockSecurityDocs: bingo_stratum.BlockWithoutAddons<{
5
4
  access: "public" | "restricted";
5
+ description: string;
6
6
  directory: string;
7
7
  email: {
8
8
  github: string;
@@ -14,10 +14,10 @@ declare const blockSecurityDocs: create.BlockWithoutAddons<{
14
14
  author?: string | undefined;
15
15
  bin?: string | undefined;
16
16
  contributors?: {
17
- name: string;
18
17
  avatar_url: string;
19
18
  contributions: string[];
20
19
  login: string;
20
+ name: string;
21
21
  profile: string;
22
22
  }[] | undefined;
23
23
  documentation?: string | undefined;
@@ -43,6 +43,8 @@ declare const blockSecurityDocs: create.BlockWithoutAddons<{
43
43
  devDependencies?: Record<string, string> | undefined;
44
44
  scripts?: Record<string, string> | undefined;
45
45
  } | undefined;
46
+ pnpm?: string | undefined;
47
+ rulesetId?: string | undefined;
46
48
  usage?: string | undefined;
47
49
  version?: string | undefined;
48
50
  }>;
@@ -1,11 +1,11 @@
1
- import * as create from 'create';
1
+ import * as bingo_stratum from 'bingo-stratum';
2
2
 
3
- declare const blockTSup: create.BlockWithAddons<{
3
+ declare const blockTSup: bingo_stratum.BlockWithAddons<{
4
4
  entry: string[];
5
5
  runArgs: string[];
6
6
  }, {
7
- description: string;
8
7
  access: "public" | "restricted";
8
+ description: string;
9
9
  directory: string;
10
10
  email: {
11
11
  github: string;
@@ -17,10 +17,10 @@ declare const blockTSup: create.BlockWithAddons<{
17
17
  author?: string | undefined;
18
18
  bin?: string | undefined;
19
19
  contributors?: {
20
- name: string;
21
20
  avatar_url: string;
22
21
  contributions: string[];
23
22
  login: string;
23
+ name: string;
24
24
  profile: string;
25
25
  }[] | undefined;
26
26
  documentation?: string | undefined;
@@ -46,6 +46,8 @@ declare const blockTSup: create.BlockWithAddons<{
46
46
  devDependencies?: Record<string, string> | undefined;
47
47
  scripts?: Record<string, string> | undefined;
48
48
  } | undefined;
49
+ pnpm?: string | undefined;
50
+ rulesetId?: string | undefined;
49
51
  usage?: string | undefined;
50
52
  version?: string | undefined;
51
53
  }>;
@@ -9,29 +9,12 @@ import { blockPackageJson } from "./blockPackageJson.js";
9
9
  import { CommandPhase } from "./phases.js";
10
10
  const blockTSup = base.createBlock({
11
11
  about: {
12
- name: "tsup"
12
+ name: "TSup"
13
13
  },
14
14
  addons: {
15
15
  entry: z.array(z.string()).default([]),
16
16
  runArgs: z.array(z.string()).default([])
17
17
  },
18
- migrate() {
19
- return {
20
- scripts: [
21
- {
22
- commands: [
23
- `node ${resolveBin("remove-dependencies/bin/index.js")} @babel/core babel`
24
- ],
25
- phase: CommandPhase.Process
26
- },
27
- {
28
- commands: ["rm -rf .babelrc* babel.config.* dist lib"],
29
- phase: CommandPhase.Migrations,
30
- silent: true
31
- }
32
- ]
33
- };
34
- },
35
18
  produce({ addons, options }) {
36
19
  const { entry } = addons;
37
20
  return {
@@ -101,6 +84,23 @@ export default defineConfig({
101
84
  }
102
85
  ] : void 0
103
86
  };
87
+ },
88
+ transition() {
89
+ return {
90
+ scripts: [
91
+ {
92
+ commands: [
93
+ `node ${resolveBin("remove-dependencies/bin/index.js")} @babel/core babel`
94
+ ],
95
+ phase: CommandPhase.Process
96
+ },
97
+ {
98
+ commands: ["rm -rf .babelrc* babel.config.* dist lib"],
99
+ phase: CommandPhase.Migrations,
100
+ silent: true
101
+ }
102
+ ]
103
+ };
104
104
  }
105
105
  });
106
106
  export {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/blocks/blockTSup.ts"],"sourcesContent":["import { 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 { blockESLint } from \"./blockESLint.js\";\nimport { blockGitHubActionsCI } from \"./blockGitHubActionsCI.js\";\nimport { blockPackageJson } from \"./blockPackageJson.js\";\nimport { CommandPhase } from \"./phases.js\";\n\nexport const blockTSup = base.createBlock({\n\tabout: {\n\t\tname: \"tsup\",\n\t},\n\taddons: {\n\t\tentry: z.array(z.string()).default([]),\n\t\trunArgs: z.array(z.string()).default([]),\n\t},\n\tmigrate() {\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(\"remove-dependencies/bin/index.js\")} @babel/core babel`,\n\t\t\t\t\t],\n\t\t\t\t\tphase: CommandPhase.Process,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcommands: [\"rm -rf .babelrc* babel.config.* dist lib\"],\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\tproduce({ addons, options }) {\n\t\tconst { entry } = 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\tBuilding: {\n\t\t\t\t\t\t\tcontents: `\nRun [**tsup**](https://tsup.egoist.dev) locally to build source files from \\`src/\\` into output files in \\`lib/\\`:\n\n\\`\\`\\`shell\npnpm build\n\\`\\`\\`\n\nAdd \\`--watch\\` to run the builder in a watch mode that continuously cleans and recreates \\`lib/\\` as you save files:\n\n\\`\\`\\`shell\npnpm build --watch\n\\`\\`\\`\n`,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t\tblockESLint({\n\t\t\t\t\tbeforeLint: `Note that you'll need to run \\`pnpm build\\` before \\`pnpm lint\\` so that lint rules which check the file system can pick up on any built files.`,\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: [\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: `node lib/index.js${addons.runArgs.map((arg) => ` ${arg}`).join(\"\")}`,\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\tblockPackageJson({\n\t\t\t\t\tproperties: {\n\t\t\t\t\t\tdevDependencies: getPackageDependencies(\"tsup\"),\n\t\t\t\t\t\tscripts: {\n\t\t\t\t\t\t\tbuild: \"tsup\",\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\"tsup.config.ts\": `import { defineConfig } from \"tsup\";\n\nexport default defineConfig({\n\tbundle: false,\n\tclean: true,\n\tdts: true,\n\tentry: ${JSON.stringify([\"src/**/*.ts\", ...entry])},\n\tformat: \"esm\",\n\toutDir: \"lib\",\n\tsourcemap: true,\n});\n`,\n\t\t\t},\n\t\t\tscripts: options.bin\n\t\t\t\t? [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcommands: [\"pnpm build\"],\n\t\t\t\t\t\t\tphase: CommandPhase.Build,\n\t\t\t\t\t\t},\n\t\t\t\t\t]\n\t\t\t\t: undefined,\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,SAAS;AAElB,SAAS,YAAY;AACrB,SAAS,8BAA8B;AACvC,SAAS,kBAAkB;AAC3B,SAAS,4BAA4B;AACrC,SAAS,mBAAmB;AAC5B,SAAS,4BAA4B;AACrC,SAAS,wBAAwB;AACjC,SAAS,oBAAoB;AAEtB,MAAM,YAAY,KAAK,YAAY;AAAA,EACzC,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,QAAQ;AAAA,IACP,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;AAAA,IACrC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;AAAA,EACxC;AAAA,EACA,UAAU;AACT,WAAO;AAAA,MACN,SAAS;AAAA,QACR;AAAA,UACC,UAAU;AAAA,YACT,QAAQ,WAAW,kCAAkC,CAAC;AAAA,UACvD;AAAA,UACA,OAAO,aAAa;AAAA,QACrB;AAAA,QACA;AAAA,UACC,UAAU,CAAC,0CAA0C;AAAA,UACrD,OAAO,aAAa;AAAA,UACpB,QAAQ;AAAA,QACT;AAAA,MACD;AAAA,IACD;AAAA,EACD;AAAA,EACA,QAAQ,EAAE,QAAQ,QAAQ,GAAG;AAC5B,UAAM,EAAE,MAAM,IAAI;AAElB,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,qBAAqB;AAAA,UACpB,UAAU;AAAA,YACT,UAAU;AAAA,cACT,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,YAaX;AAAA,UACD;AAAA,QACD,CAAC;AAAA,QACD,YAAY;AAAA,UACX,YAAY;AAAA,QACb,CAAC;AAAA,QACD,qBAAqB;AAAA,UACpB,MAAM;AAAA,YACL;AAAA,cACC,MAAM;AAAA,cACN,OAAO;AAAA,gBACN,EAAE,KAAK,aAAa;AAAA,gBACpB;AAAA,kBACC,KAAK,oBAAoB,OAAO,QAAQ,IAAI,CAAC,QAAQ,IAAI,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC;AAAA,gBACzE;AAAA,cACD;AAAA,YACD;AAAA,UACD;AAAA,QACD,CAAC;AAAA,QACD,iBAAiB;AAAA,UAChB,YAAY;AAAA,YACX,iBAAiB,uBAAuB,MAAM;AAAA,YAC9C,SAAS;AAAA,cACR,OAAO;AAAA,YACR;AAAA,UACD;AAAA,QACD,CAAC;AAAA,MACF;AAAA,MACA,OAAO;AAAA,QACN,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,UAMZ,KAAK,UAAU,CAAC,eAAe,GAAG,KAAK,CAAC,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAMhD;AAAA,MACA,SAAS,QAAQ,MACd;AAAA,QACA;AAAA,UACC,UAAU,CAAC,YAAY;AAAA,UACvB,OAAO,aAAa;AAAA,QACrB;AAAA,MACD,IACC;AAAA,IACJ;AAAA,EACD;AACD,CAAC;","names":[]}
1
+ {"version":3,"sources":["../../src/blocks/blockTSup.ts"],"sourcesContent":["import { 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 { blockESLint } from \"./blockESLint.js\";\nimport { blockGitHubActionsCI } from \"./blockGitHubActionsCI.js\";\nimport { blockPackageJson } from \"./blockPackageJson.js\";\nimport { CommandPhase } from \"./phases.js\";\n\nexport const blockTSup = base.createBlock({\n\tabout: {\n\t\tname: \"TSup\",\n\t},\n\taddons: {\n\t\tentry: z.array(z.string()).default([]),\n\t\trunArgs: z.array(z.string()).default([]),\n\t},\n\tproduce({ addons, options }) {\n\t\tconst { entry } = 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\tBuilding: {\n\t\t\t\t\t\t\tcontents: `\nRun [**tsup**](https://tsup.egoist.dev) locally to build source files from \\`src/\\` into output files in \\`lib/\\`:\n\n\\`\\`\\`shell\npnpm build\n\\`\\`\\`\n\nAdd \\`--watch\\` to run the builder in a watch mode that continuously cleans and recreates \\`lib/\\` as you save files:\n\n\\`\\`\\`shell\npnpm build --watch\n\\`\\`\\`\n`,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t\tblockESLint({\n\t\t\t\t\tbeforeLint: `Note that you'll need to run \\`pnpm build\\` before \\`pnpm lint\\` so that lint rules which check the file system can pick up on any built files.`,\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: [\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: `node lib/index.js${addons.runArgs.map((arg) => ` ${arg}`).join(\"\")}`,\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\tblockPackageJson({\n\t\t\t\t\tproperties: {\n\t\t\t\t\t\tdevDependencies: getPackageDependencies(\"tsup\"),\n\t\t\t\t\t\tscripts: {\n\t\t\t\t\t\t\tbuild: \"tsup\",\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\"tsup.config.ts\": `import { defineConfig } from \"tsup\";\n\nexport default defineConfig({\n\tbundle: false,\n\tclean: true,\n\tdts: true,\n\tentry: ${JSON.stringify([\"src/**/*.ts\", ...entry])},\n\tformat: \"esm\",\n\toutDir: \"lib\",\n\tsourcemap: true,\n});\n`,\n\t\t\t},\n\t\t\tscripts: options.bin\n\t\t\t\t? [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcommands: [\"pnpm build\"],\n\t\t\t\t\t\t\tphase: CommandPhase.Build,\n\t\t\t\t\t\t},\n\t\t\t\t\t]\n\t\t\t\t: undefined,\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: [\n\t\t\t\t\t\t`node ${resolveBin(\"remove-dependencies/bin/index.js\")} @babel/core babel`,\n\t\t\t\t\t],\n\t\t\t\t\tphase: CommandPhase.Process,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcommands: [\"rm -rf .babelrc* babel.config.* dist lib\"],\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,8BAA8B;AACvC,SAAS,kBAAkB;AAC3B,SAAS,4BAA4B;AACrC,SAAS,mBAAmB;AAC5B,SAAS,4BAA4B;AACrC,SAAS,wBAAwB;AACjC,SAAS,oBAAoB;AAEtB,MAAM,YAAY,KAAK,YAAY;AAAA,EACzC,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,QAAQ;AAAA,IACP,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;AAAA,IACrC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;AAAA,EACxC;AAAA,EACA,QAAQ,EAAE,QAAQ,QAAQ,GAAG;AAC5B,UAAM,EAAE,MAAM,IAAI;AAElB,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,qBAAqB;AAAA,UACpB,UAAU;AAAA,YACT,UAAU;AAAA,cACT,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,YAaX;AAAA,UACD;AAAA,QACD,CAAC;AAAA,QACD,YAAY;AAAA,UACX,YAAY;AAAA,QACb,CAAC;AAAA,QACD,qBAAqB;AAAA,UACpB,MAAM;AAAA,YACL;AAAA,cACC,MAAM;AAAA,cACN,OAAO;AAAA,gBACN,EAAE,KAAK,aAAa;AAAA,gBACpB;AAAA,kBACC,KAAK,oBAAoB,OAAO,QAAQ,IAAI,CAAC,QAAQ,IAAI,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC;AAAA,gBACzE;AAAA,cACD;AAAA,YACD;AAAA,UACD;AAAA,QACD,CAAC;AAAA,QACD,iBAAiB;AAAA,UAChB,YAAY;AAAA,YACX,iBAAiB,uBAAuB,MAAM;AAAA,YAC9C,SAAS;AAAA,cACR,OAAO;AAAA,YACR;AAAA,UACD;AAAA,QACD,CAAC;AAAA,MACF;AAAA,MACA,OAAO;AAAA,QACN,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,UAMZ,KAAK,UAAU,CAAC,eAAe,GAAG,KAAK,CAAC,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAMhD;AAAA,MACA,SAAS,QAAQ,MACd;AAAA,QACA;AAAA,UACC,UAAU,CAAC,YAAY;AAAA,UACvB,OAAO,aAAa;AAAA,QACrB;AAAA,MACD,IACC;AAAA,IACJ;AAAA,EACD;AAAA,EACA,aAAa;AACZ,WAAO;AAAA,MACN,SAAS;AAAA,QACR;AAAA,UACC,UAAU;AAAA,YACT,QAAQ,WAAW,kCAAkC,CAAC;AAAA,UACvD;AAAA,UACA,OAAO,aAAa;AAAA,QACrB;AAAA,QACA;AAAA,UACC,UAAU,CAAC,0CAA0C;AAAA,UACrD,OAAO,aAAa;AAAA,UACpB,QAAQ;AAAA,QACT;AAAA,MACD;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
@@ -1,8 +1,8 @@
1
- import * as create from 'create';
1
+ import * as bingo_stratum from 'bingo-stratum';
2
2
 
3
- declare const blockTemplatedWith: create.BlockWithoutAddons<{
4
- description: string;
3
+ declare const blockTemplatedWith: bingo_stratum.BlockWithoutAddons<{
5
4
  access: "public" | "restricted";
5
+ description: string;
6
6
  directory: string;
7
7
  email: {
8
8
  github: string;
@@ -14,10 +14,10 @@ declare const blockTemplatedWith: create.BlockWithoutAddons<{
14
14
  author?: string | undefined;
15
15
  bin?: string | undefined;
16
16
  contributors?: {
17
- name: string;
18
17
  avatar_url: string;
19
18
  contributions: string[];
20
19
  login: string;
20
+ name: string;
21
21
  profile: string;
22
22
  }[] | undefined;
23
23
  documentation?: string | undefined;
@@ -43,6 +43,8 @@ declare const blockTemplatedWith: create.BlockWithoutAddons<{
43
43
  devDependencies?: Record<string, string> | undefined;
44
44
  scripts?: Record<string, string> | undefined;
45
45
  } | undefined;
46
+ pnpm?: string | undefined;
47
+ rulesetId?: string | undefined;
46
48
  usage?: string | undefined;
47
49
  version?: string | undefined;
48
50
  }>;
@@ -3,7 +3,7 @@ import { blockCSpell } from "./blockCSpell.js";
3
3
  import { blockREADME } from "./blockREADME.js";
4
4
  const blockTemplatedWith = base.createBlock({
5
5
  about: {
6
- name: "Templated By Notice"
6
+ name: "Templated With"
7
7
  },
8
8
  produce() {
9
9
  return {
@@ -16,7 +16,7 @@ const blockTemplatedWith = base.createBlock({
16
16
  `
17
17
  <!-- You can remove this notice if you don't want it \u{1F642} no worries! -->
18
18
 
19
- > \u{1F49D} This package was templated with [\`create-typescript-app\`](https://github.com/JoshuaKGoldberg/create-typescript-app) using the [\`create\` engine](https://create.bingo).
19
+ > \u{1F49D} This package was templated with [\`create-typescript-app\`](https://github.com/JoshuaKGoldberg/create-typescript-app) using the [Bingo engine](https://create.bingo).
20
20
  `
21
21
  ]
22
22
  })
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/blocks/blockTemplatedWith.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { blockCSpell } from \"./blockCSpell.js\";\nimport { blockREADME } from \"./blockREADME.js\";\n\nexport const blockTemplatedWith = base.createBlock({\n\tabout: {\n\t\tname: \"Templated By Notice\",\n\t},\n\tproduce() {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockCSpell({\n\t\t\t\t\twords: [\"joshuakgoldberg\"],\n\t\t\t\t}),\n\t\t\t\tblockREADME({\n\t\t\t\t\tnotices: [\n\t\t\t\t\t\t`\n<!-- You can remove this notice if you don't want it 🙂 no worries! -->\n\n> 💝 This package was templated with [\\`create-typescript-app\\`](https://github.com/JoshuaKGoldberg/create-typescript-app) using the [\\`create\\` engine](https://create.bingo).\n`,\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;AAC5B,SAAS,mBAAmB;AAErB,MAAM,qBAAqB,KAAK,YAAY;AAAA,EAClD,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,UAAU;AACT,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,YAAY;AAAA,UACX,OAAO,CAAC,iBAAiB;AAAA,QAC1B,CAAC;AAAA,QACD,YAAY;AAAA,UACX,SAAS;AAAA,YACR;AAAA;AAAA;AAAA;AAAA;AAAA,UAKD;AAAA,QACD,CAAC;AAAA,MACF;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
1
+ {"version":3,"sources":["../../src/blocks/blockTemplatedWith.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { blockCSpell } from \"./blockCSpell.js\";\nimport { blockREADME } from \"./blockREADME.js\";\n\nexport const blockTemplatedWith = base.createBlock({\n\tabout: {\n\t\tname: \"Templated With\",\n\t},\n\tproduce() {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockCSpell({\n\t\t\t\t\twords: [\"joshuakgoldberg\"],\n\t\t\t\t}),\n\t\t\t\tblockREADME({\n\t\t\t\t\tnotices: [\n\t\t\t\t\t\t`\n<!-- You can remove this notice if you don't want it 🙂 no worries! -->\n\n> 💝 This package was templated with [\\`create-typescript-app\\`](https://github.com/JoshuaKGoldberg/create-typescript-app) using the [Bingo engine](https://create.bingo).\n`,\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;AAC5B,SAAS,mBAAmB;AAErB,MAAM,qBAAqB,KAAK,YAAY;AAAA,EAClD,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,UAAU;AACT,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,YAAY;AAAA,UACX,OAAO,CAAC,iBAAiB;AAAA,QAC1B,CAAC;AAAA,QACD,YAAY;AAAA,UACX,SAAS;AAAA,YACR;AAAA;AAAA;AAAA;AAAA;AAAA,UAKD;AAAA,QACD,CAAC;AAAA,MACF;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
@@ -1,8 +1,8 @@
1
- import * as create from 'create';
1
+ import * as bingo_stratum from 'bingo-stratum';
2
2
 
3
- declare const blockTypeScript: create.BlockWithoutAddons<{
4
- description: string;
3
+ declare const blockTypeScript: bingo_stratum.BlockWithoutAddons<{
5
4
  access: "public" | "restricted";
5
+ description: string;
6
6
  directory: string;
7
7
  email: {
8
8
  github: string;
@@ -14,10 +14,10 @@ declare const blockTypeScript: create.BlockWithoutAddons<{
14
14
  author?: string | undefined;
15
15
  bin?: string | undefined;
16
16
  contributors?: {
17
- name: string;
18
17
  avatar_url: string;
19
18
  contributions: string[];
20
19
  login: string;
20
+ name: string;
21
21
  profile: string;
22
22
  }[] | undefined;
23
23
  documentation?: string | undefined;
@@ -43,6 +43,8 @@ declare const blockTypeScript: create.BlockWithoutAddons<{
43
43
  devDependencies?: Record<string, string> | undefined;
44
44
  scripts?: Record<string, string> | undefined;
45
45
  } | undefined;
46
+ pnpm?: string | undefined;
47
+ rulesetId?: string | undefined;
46
48
  usage?: string | undefined;
47
49
  version?: string | undefined;
48
50
  }>;