create-typescript-app 2.0.0-beta.7 → 2.0.0-beta.8
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.
- package/README.md +59 -55
- package/bin/index.js +14 -2
- package/lib/{next/base.d.ts → base.d.ts} +24 -4
- package/lib/{next/base.js → base.js} +19 -22
- package/lib/base.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockAllContributors.d.ts +1 -1
- package/lib/blocks/blockAllContributors.js +139 -0
- package/lib/blocks/blockAllContributors.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockAreTheTypesWrong.d.ts +1 -1
- package/lib/blocks/blockAreTheTypesWrong.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockCSpell.d.ts +1 -1
- package/lib/{next/blocks → blocks}/blockCSpell.js +1 -1
- package/lib/blocks/blockCSpell.js.map +1 -0
- package/lib/blocks/blockCodecov.d.ts +52 -0
- package/lib/blocks/blockCodecov.js +50 -0
- package/lib/blocks/blockCodecov.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockContributingDocs.d.ts +1 -1
- package/lib/{next/blocks → blocks}/blockContributingDocs.js +2 -1
- package/lib/blocks/blockContributingDocs.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockContributorCovenant.d.ts +1 -1
- package/lib/{next/blocks → blocks}/blockContributorCovenant.js +2 -1
- package/lib/blocks/blockContributorCovenant.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockDevelopmentDocs.d.ts +3 -3
- package/lib/{next/blocks → blocks}/blockDevelopmentDocs.js +3 -2
- package/lib/blocks/blockDevelopmentDocs.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockESLint.d.ts +8 -7
- package/lib/{next/blocks → blocks}/blockESLint.js +14 -5
- package/lib/blocks/blockESLint.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockESLintComments.d.ts +1 -1
- package/lib/blocks/blockESLintComments.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockESLintJSDoc.d.ts +1 -1
- package/lib/blocks/blockESLintJSDoc.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockESLintJSONC.d.ts +1 -1
- package/lib/blocks/blockESLintJSONC.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockESLintMarkdown.d.ts +1 -1
- package/lib/blocks/blockESLintMarkdown.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockESLintMoreStyling.d.ts +1 -1
- package/lib/blocks/blockESLintMoreStyling.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockESLintNode.d.ts +1 -1
- package/lib/{next/blocks → blocks}/blockESLintNode.js +7 -5
- package/lib/blocks/blockESLintNode.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockESLintPackageJson.d.ts +1 -1
- package/lib/blocks/blockESLintPackageJson.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockESLintPerfectionist.d.ts +1 -1
- package/lib/blocks/blockESLintPerfectionist.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockESLintRegexp.d.ts +1 -1
- package/lib/blocks/blockESLintRegexp.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockESLintYML.d.ts +1 -1
- package/lib/blocks/blockESLintYML.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockExampleFiles.d.ts +1 -1
- package/lib/blocks/blockExampleFiles.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockFunding.d.ts +1 -1
- package/lib/{next/blocks → blocks}/blockFunding.js +1 -1
- package/lib/blocks/blockFunding.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockGitHubActionsCI.d.ts +29 -3
- package/lib/{next/blocks → blocks}/blockGitHubActionsCI.js +21 -17
- package/lib/blocks/blockGitHubActionsCI.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockGitHubApps.d.ts +1 -1
- package/lib/blocks/blockGitHubApps.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockGitHubIssueTemplates.d.ts +1 -1
- package/lib/{next/blocks → blocks}/blockGitHubIssueTemplates.js +1 -1
- package/lib/blocks/blockGitHubIssueTemplates.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockGitHubPRTemplate.d.ts +1 -1
- package/lib/blocks/blockGitHubPRTemplate.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockGitignore.d.ts +1 -1
- package/lib/{next/blocks → blocks}/blockGitignore.js +1 -1
- package/lib/blocks/blockGitignore.js.map +1 -0
- package/lib/blocks/blockKnip.d.ts +52 -0
- package/lib/{next/blocks → blocks}/blockKnip.js +15 -5
- package/lib/blocks/blockKnip.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockMITLicense.d.ts +1 -1
- package/lib/blocks/blockMITLicense.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockMarkdownlint.d.ts +1 -1
- package/lib/{next/blocks → blocks}/blockMarkdownlint.js +10 -7
- package/lib/blocks/blockMarkdownlint.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockNvmrc.d.ts +1 -1
- package/lib/blocks/blockNvmrc.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockPRCompliance.d.ts +1 -1
- package/lib/{next/blocks → blocks}/blockPRCompliance.js +1 -1
- package/lib/blocks/blockPRCompliance.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockPackageJson.d.ts +2 -2
- package/lib/{next/blocks → blocks}/blockPackageJson.js +7 -4
- package/lib/blocks/blockPackageJson.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockPnpmDedupe.d.ts +1 -1
- package/lib/blocks/blockPnpmDedupe.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockPrettier.d.ts +2 -2
- package/lib/{next/blocks → blocks}/blockPrettier.js +6 -3
- package/lib/blocks/blockPrettier.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockPrettierPluginCurly.d.ts +1 -1
- package/lib/blocks/blockPrettierPluginCurly.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockPrettierPluginPackageJson.d.ts +1 -1
- package/lib/blocks/blockPrettierPluginPackageJson.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockPrettierPluginSh.d.ts +1 -1
- package/lib/blocks/blockPrettierPluginSh.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockREADME.d.ts +3 -1
- package/lib/{next/blocks → blocks}/blockREADME.js +16 -19
- package/lib/blocks/blockREADME.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockReleaseIt.d.ts +1 -1
- package/lib/{next/blocks → blocks}/blockReleaseIt.js +2 -2
- package/lib/blocks/blockReleaseIt.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockRenovate.d.ts +1 -1
- package/lib/{next/blocks → blocks}/blockRenovate.js +6 -1
- package/lib/blocks/blockRenovate.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockRepositoryBranchRuleset.d.ts +1 -1
- package/lib/{next/blocks → blocks}/blockRepositoryBranchRuleset.js +0 -1
- package/lib/blocks/blockRepositoryBranchRuleset.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockRepositoryLabels.d.ts +1 -1
- package/lib/{next/blocks → blocks}/blockRepositoryLabels.js +1 -1
- package/lib/blocks/blockRepositoryLabels.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockRepositorySecrets.d.ts +2 -2
- package/lib/blocks/blockRepositorySecrets.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockRepositorySettings.d.ts +1 -1
- package/lib/blocks/blockRepositorySettings.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockSecurityDocs.d.ts +1 -1
- package/lib/blocks/blockSecurityDocs.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockTSup.d.ts +2 -1
- package/lib/{next/blocks → blocks}/blockTSup.js +18 -4
- package/lib/blocks/blockTSup.js.map +1 -0
- package/lib/{next/blocks/blockKnip.d.ts → blocks/blockTemplatedWith.d.ts} +3 -3
- package/lib/{next/blocks/blockTemplatedBy.js → blocks/blockTemplatedWith.js} +3 -3
- package/lib/blocks/blockTemplatedWith.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockTypeScript.d.ts +1 -1
- package/lib/{next/blocks → blocks}/blockTypeScript.js +2 -2
- package/lib/blocks/blockTypeScript.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockVSCode.d.ts +1 -1
- package/lib/blocks/blockVSCode.js.map +1 -0
- package/lib/{next/blocks → blocks}/blockVitest.d.ts +10 -5
- package/lib/{next/blocks → blocks}/blockVitest.js +19 -34
- package/lib/blocks/blockVitest.js.map +1 -0
- package/lib/blocks/files/createJobName.d.ts +3 -0
- package/lib/blocks/files/createJobName.js +7 -0
- package/lib/blocks/files/createJobName.js.map +1 -0
- package/lib/{steps/writing/creation/dotGitHub → blocks/files}/createMultiWorkflowFile.js +2 -1
- package/lib/blocks/files/createMultiWorkflowFile.js.map +1 -0
- package/lib/{steps/writing/creation/dotGitHub → blocks/files}/createSoloWorkflowFile.js +2 -1
- package/lib/blocks/files/createSoloWorkflowFile.js.map +1 -0
- package/lib/blocks/files/formatIgnoreFile.js.map +1 -0
- package/lib/{steps/writing/creation/dotGitHub → blocks/files}/formatWorkflowYaml.js +1 -1
- package/lib/blocks/files/formatWorkflowYaml.js.map +1 -0
- package/lib/{steps/writing/creation/formatters → blocks/files}/formatYaml.js +1 -3
- package/lib/blocks/files/formatYaml.js.map +1 -0
- package/lib/blocks/index.d.ts +2141 -0
- package/lib/blocks/index.js +178 -0
- package/lib/blocks/index.js.map +1 -0
- package/lib/blocks/options.fakes.js.map +1 -0
- package/lib/{steps/initializeGitHubRepository → blocks}/outcomeLabels.js +1 -0
- package/lib/blocks/outcomeLabels.js.map +1 -0
- package/lib/blocks/phases.js.map +1 -0
- package/lib/{next/blocks/sourcePackageJson.d.ts → data/packageData.d.ts} +44 -50
- package/lib/{next/blocks → data}/packageData.js +9 -3
- package/lib/data/packageData.js.map +1 -0
- package/lib/index.d.ts +50 -48
- package/lib/index.js +4 -5
- package/lib/index.js.map +1 -1
- package/lib/options/getUsageFromReadme.js.map +1 -0
- package/lib/{shared/options/createOptionDefaults → options}/parsePackageAuthor.d.ts +1 -3
- package/lib/options/parsePackageAuthor.js.map +1 -0
- package/lib/{shared/options/createOptionDefaults → options}/readDefaultsFromReadme.d.ts +1 -0
- package/lib/{shared/options/createOptionDefaults → options}/readDefaultsFromReadme.js +12 -3
- package/lib/options/readDefaultsFromReadme.js.map +1 -0
- package/lib/{next → options}/readDescription.d.ts +1 -3
- package/lib/{next → options}/readDescription.js +2 -2
- package/lib/options/readDescription.js.map +1 -0
- package/lib/options/readDescriptionFromReadme.js.map +1 -0
- package/lib/{next → options}/readDocumentation.js +1 -1
- package/lib/options/readDocumentation.js.map +1 -0
- package/lib/{shared/options/createOptionDefaults → options}/readEmails.js +1 -1
- package/lib/options/readEmails.js.map +1 -0
- package/lib/options/readFileAsJson.js.map +1 -0
- package/lib/options/readFileSafe.js.map +1 -0
- package/lib/{shared/options/createOptionDefaults → options}/readFunding.js +1 -1
- package/lib/options/readFunding.js.map +1 -0
- package/lib/{shared/options/createOptionDefaults → options}/readGitHubEmail.js +1 -1
- package/lib/options/readGitHubEmail.js.map +1 -0
- package/lib/{shared/options/createOptionDefaults → options}/readGuide.js +1 -1
- package/lib/options/readGuide.js.map +1 -0
- package/lib/{shared/options → options}/readLogoSizing.js +1 -1
- package/lib/options/readLogoSizing.js.map +1 -0
- package/lib/options/readPackageData.d.ts +5 -0
- package/lib/options/readPackageData.js +8 -0
- package/lib/options/readPackageData.js.map +1 -0
- package/lib/{next/presets/presetCommon.d.ts → presets/common.d.ts} +1 -1
- package/lib/{next/presets/presetCommon.js → presets/common.js} +6 -2
- package/lib/presets/common.js.map +1 -0
- package/lib/{next/presets/presetEverything.d.ts → presets/everything.d.ts} +1 -1
- package/lib/{next/presets/presetEverything.js → presets/everything.js} +2 -4
- package/lib/presets/everything.js.map +1 -0
- package/lib/presets/index.d.ts +310 -0
- package/lib/presets/index.js +18 -0
- package/lib/presets/index.js.map +1 -0
- package/lib/{next/presets/presetMinimal.d.ts → presets/minimal.d.ts} +1 -1
- package/lib/{next/presets/presetMinimal.js → presets/minimal.js} +5 -5
- package/lib/presets/minimal.js.map +1 -0
- package/lib/{next/template.d.ts → template.d.ts} +1 -1
- package/lib/{next/template.js → template.js} +3 -3
- package/lib/template.js.map +1 -0
- package/lib/types.d.ts +31 -5
- package/lib/utils/resolveBin.js.map +1 -0
- package/lib/utils/sortObject.js.map +1 -0
- package/lib/utils/swallowError.js.map +1 -0
- package/lib/utils/tryCatchAsync.js.map +1 -0
- package/lib/utils/tryCatchLazyValueAsync.js.map +1 -0
- package/package.json +21 -31
- package/lib/bin/help.d.ts +0 -3
- package/lib/bin/help.js +0 -117
- package/lib/bin/help.js.map +0 -1
- package/lib/bin/index.d.ts +0 -5
- package/lib/bin/index.js +0 -91
- package/lib/bin/index.js.map +0 -1
- package/lib/bin/packageJson.d.ts +0 -3
- package/lib/bin/packageJson.js +0 -13
- package/lib/bin/packageJson.js.map +0 -1
- package/lib/bin/promptForMode.d.ts +0 -11
- package/lib/bin/promptForMode.js +0 -108
- package/lib/bin/promptForMode.js.map +0 -1
- package/lib/create/createAndEnterGitDirectory.d.ts +0 -3
- package/lib/create/createAndEnterGitDirectory.js +0 -20
- package/lib/create/createAndEnterGitDirectory.js.map +0 -1
- package/lib/create/createRerunDirectorySuggestion.d.ts +0 -7
- package/lib/create/createRerunDirectorySuggestion.js +0 -8
- package/lib/create/createRerunDirectorySuggestion.js.map +0 -1
- package/lib/create/createRerunSuggestion.d.ts +0 -7
- package/lib/create/createRerunSuggestion.js +0 -56
- package/lib/create/createRerunSuggestion.js.map +0 -1
- package/lib/create/createWithOptions.d.ts +0 -11
- package/lib/create/createWithOptions.js +0 -68
- package/lib/create/createWithOptions.js.map +0 -1
- package/lib/create/index.d.ts +0 -7
- package/lib/create/index.js +0 -69
- package/lib/create/index.js.map +0 -1
- package/lib/greet.d.ts +0 -5
- package/lib/greet.js +0 -14
- package/lib/greet.js.map +0 -1
- package/lib/initialize/index.d.ts +0 -7
- package/lib/initialize/index.js +0 -43
- package/lib/initialize/index.js.map +0 -1
- package/lib/initialize/initializeWithOptions.d.ts +0 -9
- package/lib/initialize/initializeWithOptions.js +0 -66
- package/lib/initialize/initializeWithOptions.js.map +0 -1
- package/lib/migrate/index.d.ts +0 -7
- package/lib/migrate/index.js +0 -43
- package/lib/migrate/index.js.map +0 -1
- package/lib/migrate/migrateWithOptions.d.ts +0 -9
- package/lib/migrate/migrateWithOptions.js +0 -72
- package/lib/migrate/migrateWithOptions.js.map +0 -1
- package/lib/next/base.js.map +0 -1
- package/lib/next/blocks/blockAllContributors.js +0 -65
- package/lib/next/blocks/blockAllContributors.js.map +0 -1
- package/lib/next/blocks/blockAreTheTypesWrong.js.map +0 -1
- package/lib/next/blocks/blockCSpell.js.map +0 -1
- package/lib/next/blocks/blockContributingDocs.js.map +0 -1
- package/lib/next/blocks/blockContributorCovenant.js.map +0 -1
- package/lib/next/blocks/blockDevelopmentDocs.js.map +0 -1
- package/lib/next/blocks/blockESLint.js.map +0 -1
- package/lib/next/blocks/blockESLintComments.js.map +0 -1
- package/lib/next/blocks/blockESLintJSDoc.js.map +0 -1
- package/lib/next/blocks/blockESLintJSONC.js.map +0 -1
- package/lib/next/blocks/blockESLintMarkdown.js.map +0 -1
- package/lib/next/blocks/blockESLintMoreStyling.js.map +0 -1
- package/lib/next/blocks/blockESLintNode.js.map +0 -1
- package/lib/next/blocks/blockESLintPackageJson.js.map +0 -1
- package/lib/next/blocks/blockESLintPerfectionist.js.map +0 -1
- package/lib/next/blocks/blockESLintRegexp.js.map +0 -1
- package/lib/next/blocks/blockESLintYML.js.map +0 -1
- package/lib/next/blocks/blockExampleFiles.js.map +0 -1
- package/lib/next/blocks/blockFunding.js.map +0 -1
- package/lib/next/blocks/blockGitHubActionsCI.js.map +0 -1
- package/lib/next/blocks/blockGitHubApps.js.map +0 -1
- package/lib/next/blocks/blockGitHubIssueTemplates.js.map +0 -1
- package/lib/next/blocks/blockGitHubPRTemplate.js.map +0 -1
- package/lib/next/blocks/blockGitignore.js.map +0 -1
- package/lib/next/blocks/blockKnip.js.map +0 -1
- package/lib/next/blocks/blockMITLicense.js.map +0 -1
- package/lib/next/blocks/blockMarkdownlint.js.map +0 -1
- package/lib/next/blocks/blockNvmrc.js.map +0 -1
- package/lib/next/blocks/blockPRCompliance.js.map +0 -1
- package/lib/next/blocks/blockPackageJson.js.map +0 -1
- package/lib/next/blocks/blockPnpmDedupe.js.map +0 -1
- package/lib/next/blocks/blockPrettier.js.map +0 -1
- package/lib/next/blocks/blockPrettierPluginCurly.js.map +0 -1
- package/lib/next/blocks/blockPrettierPluginPackageJson.js.map +0 -1
- package/lib/next/blocks/blockPrettierPluginSh.js.map +0 -1
- package/lib/next/blocks/blockREADME.js.map +0 -1
- package/lib/next/blocks/blockReleaseIt.js.map +0 -1
- package/lib/next/blocks/blockRenovate.js.map +0 -1
- package/lib/next/blocks/blockRepositoryBranchRuleset.js.map +0 -1
- package/lib/next/blocks/blockRepositoryLabels.js.map +0 -1
- package/lib/next/blocks/blockRepositorySecrets.js.map +0 -1
- package/lib/next/blocks/blockRepositorySettings.js.map +0 -1
- package/lib/next/blocks/blockSecurityDocs.js.map +0 -1
- package/lib/next/blocks/blockTSup.js.map +0 -1
- package/lib/next/blocks/blockTemplatedBy.d.ts +0 -50
- package/lib/next/blocks/blockTemplatedBy.js.map +0 -1
- package/lib/next/blocks/blockTypeScript.js.map +0 -1
- package/lib/next/blocks/blockVSCode.js.map +0 -1
- package/lib/next/blocks/blockVitest.js.map +0 -1
- package/lib/next/blocks/index.d.ts +0 -43
- package/lib/next/blocks/index.js +0 -43
- package/lib/next/blocks/index.js.map +0 -1
- package/lib/next/blocks/options.fakes.js.map +0 -1
- package/lib/next/blocks/packageData.d.ts +0 -6
- package/lib/next/blocks/packageData.js.map +0 -1
- package/lib/next/blocks/phases.js.map +0 -1
- package/lib/next/blocks/sourcePackageJson.js +0 -10
- package/lib/next/blocks/sourcePackageJson.js.map +0 -1
- package/lib/next/presets/index.d.ts +0 -5
- package/lib/next/presets/index.js +0 -4
- package/lib/next/presets/index.js.map +0 -1
- package/lib/next/presets/presetCommon.js.map +0 -1
- package/lib/next/presets/presetEverything.js.map +0 -1
- package/lib/next/presets/presetMinimal.js.map +0 -1
- package/lib/next/readDescription.js.map +0 -1
- package/lib/next/readDescriptionFromReadme.js.map +0 -1
- package/lib/next/readDocumentation.js.map +0 -1
- package/lib/next/runCreateEnginePreset.d.ts +0 -7
- package/lib/next/runCreateEnginePreset.js +0 -20
- package/lib/next/runCreateEnginePreset.js.map +0 -1
- package/lib/next/template.js.map +0 -1
- package/lib/next/utils/resolveBin.js.map +0 -1
- package/lib/next/utils/sortObject.js.map +0 -1
- package/lib/next/utils/swallowError.js.map +0 -1
- package/lib/shared/cli/lines.d.ts +0 -5
- package/lib/shared/cli/lines.js +0 -17
- package/lib/shared/cli/lines.js.map +0 -1
- package/lib/shared/cli/lowerFirst.d.ts +0 -3
- package/lib/shared/cli/lowerFirst.js +0 -7
- package/lib/shared/cli/lowerFirst.js.map +0 -1
- package/lib/shared/cli/outro.d.ts +0 -8
- package/lib/shared/cli/outro.js +0 -21
- package/lib/shared/cli/outro.js.map +0 -1
- package/lib/shared/cli/spinners.d.ts +0 -6
- package/lib/shared/cli/spinners.js +0 -50
- package/lib/shared/cli/spinners.js.map +0 -1
- package/lib/shared/cli/startLineWithDots.d.ts +0 -3
- package/lib/shared/cli/startLineWithDots.js +0 -32
- package/lib/shared/cli/startLineWithDots.js.map +0 -1
- package/lib/shared/codes.d.ts +0 -8
- package/lib/shared/codes.js +0 -9
- package/lib/shared/codes.js.map +0 -1
- package/lib/shared/createCleanupCommands.d.ts +0 -3
- package/lib/shared/createCleanupCommands.js +0 -13
- package/lib/shared/createCleanupCommands.js.map +0 -1
- package/lib/shared/doesRepositoryExist.d.ts +0 -9
- package/lib/shared/doesRepositoryExist.js +0 -18
- package/lib/shared/doesRepositoryExist.js.map +0 -1
- package/lib/shared/ensureGitRepository.d.ts +0 -3
- package/lib/shared/ensureGitRepository.js +0 -12
- package/lib/shared/ensureGitRepository.js.map +0 -1
- package/lib/shared/generateNextSteps.d.ts +0 -8
- package/lib/shared/generateNextSteps.js +0 -60
- package/lib/shared/generateNextSteps.js.map +0 -1
- package/lib/shared/getGitHubUserAsAllContributor.d.ts +0 -8
- package/lib/shared/getGitHubUserAsAllContributor.js +0 -43
- package/lib/shared/getGitHubUserAsAllContributor.js.map +0 -1
- package/lib/shared/isUsingCreateEngine.d.ts +0 -3
- package/lib/shared/isUsingCreateEngine.js +0 -7
- package/lib/shared/isUsingCreateEngine.js.map +0 -1
- package/lib/shared/options/args.d.ts +0 -273
- package/lib/shared/options/args.js +0 -335
- package/lib/shared/options/args.js.map +0 -1
- package/lib/shared/options/augmentOptionsWithExcludes.d.ts +0 -7
- package/lib/shared/options/augmentOptionsWithExcludes.js +0 -94
- package/lib/shared/options/augmentOptionsWithExcludes.js.map +0 -1
- package/lib/shared/options/createOptionDefaults/getUsageFromReadme.js.map +0 -1
- package/lib/shared/options/createOptionDefaults/index.d.ts +0 -28
- package/lib/shared/options/createOptionDefaults/index.js +0 -49
- package/lib/shared/options/createOptionDefaults/index.js.map +0 -1
- package/lib/shared/options/createOptionDefaults/parsePackageAuthor.js.map +0 -1
- package/lib/shared/options/createOptionDefaults/readDefaultsFromReadme.js.map +0 -1
- package/lib/shared/options/createOptionDefaults/readEmails.js.map +0 -1
- package/lib/shared/options/createOptionDefaults/readFunding.js.map +0 -1
- package/lib/shared/options/createOptionDefaults/readGitHubEmail.js.map +0 -1
- package/lib/shared/options/createOptionDefaults/readGuide.js.map +0 -1
- package/lib/shared/options/createRepositoryWithApi.d.ts +0 -10
- package/lib/shared/options/createRepositoryWithApi.js +0 -32
- package/lib/shared/options/createRepositoryWithApi.js.map +0 -1
- package/lib/shared/options/detectEmailRedundancy.d.ts +0 -8
- package/lib/shared/options/detectEmailRedundancy.js +0 -16
- package/lib/shared/options/detectEmailRedundancy.js.map +0 -1
- package/lib/shared/options/ensureRepositoryExists.d.ts +0 -13
- package/lib/shared/options/ensureRepositoryExists.js +0 -64
- package/lib/shared/options/ensureRepositoryExists.js.map +0 -1
- package/lib/shared/options/exclusionKeys.d.ts +0 -15
- package/lib/shared/options/exclusionKeys.js +0 -129
- package/lib/shared/options/exclusionKeys.js.map +0 -1
- package/lib/shared/options/getBase.d.ts +0 -7
- package/lib/shared/options/getBase.js +0 -27
- package/lib/shared/options/getBase.js.map +0 -1
- package/lib/shared/options/getPrefillOrPromptedOption.d.ts +0 -16
- package/lib/shared/options/getPrefillOrPromptedOption.js +0 -37
- package/lib/shared/options/getPrefillOrPromptedOption.js.map +0 -1
- package/lib/shared/options/logInferredOptions.d.ts +0 -8
- package/lib/shared/options/logInferredOptions.js +0 -30
- package/lib/shared/options/logInferredOptions.js.map +0 -1
- package/lib/shared/options/optionsSchema.d.ts +0 -218
- package/lib/shared/options/optionsSchema.js +0 -63
- package/lib/shared/options/optionsSchema.js.map +0 -1
- package/lib/shared/options/readLogoSizing.js.map +0 -1
- package/lib/shared/options/readOptions.d.ts +0 -21
- package/lib/shared/options/readOptions.js +0 -235
- package/lib/shared/options/readOptions.js.map +0 -1
- package/lib/shared/packages.d.ts +0 -8
- package/lib/shared/packages.js +0 -18
- package/lib/shared/packages.js.map +0 -1
- package/lib/shared/prompts.d.ts +0 -3
- package/lib/shared/prompts.js +0 -8
- package/lib/shared/prompts.js.map +0 -1
- package/lib/shared/readFileAsJson.js.map +0 -1
- package/lib/shared/readFileSafe.js.map +0 -1
- package/lib/shared/readFileSafeAsJson.d.ts +0 -3
- package/lib/shared/readFileSafeAsJson.js +0 -8
- package/lib/shared/readFileSafeAsJson.js.map +0 -1
- package/lib/shared/runOrRestore.d.ts +0 -7
- package/lib/shared/runOrRestore.js +0 -37
- package/lib/shared/runOrRestore.js.map +0 -1
- package/lib/shared/tryCatchAsync.js.map +0 -1
- package/lib/shared/tryCatchLazyValueAsync.js.map +0 -1
- package/lib/shared/types.d.ts +0 -120
- package/lib/shared/types.js +0 -1
- package/lib/shared/types.js.map +0 -1
- package/lib/steps/addOwnerAsAllContributor.d.ts +0 -8
- package/lib/steps/addOwnerAsAllContributor.js +0 -43
- package/lib/steps/addOwnerAsAllContributor.js.map +0 -1
- package/lib/steps/addToolAllContributors.d.ts +0 -8
- package/lib/steps/addToolAllContributors.js +0 -12
- package/lib/steps/addToolAllContributors.js.map +0 -1
- package/lib/steps/clearChangelog.d.ts +0 -3
- package/lib/steps/clearChangelog.js +0 -12
- package/lib/steps/clearChangelog.js.map +0 -1
- package/lib/steps/clearLocalGitTags.d.ts +0 -3
- package/lib/steps/clearLocalGitTags.js +0 -9
- package/lib/steps/clearLocalGitTags.js.map +0 -1
- package/lib/steps/clearUnnecessaryFiles.d.ts +0 -3
- package/lib/steps/clearUnnecessaryFiles.js +0 -38
- package/lib/steps/clearUnnecessaryFiles.js.map +0 -1
- package/lib/steps/createJoshuaKGoldbergReplacement.d.ts +0 -11
- package/lib/steps/createJoshuaKGoldbergReplacement.js +0 -16
- package/lib/steps/createJoshuaKGoldbergReplacement.js.map +0 -1
- package/lib/steps/finalizeDependencies.d.ts +0 -7
- package/lib/steps/finalizeDependencies.js +0 -59
- package/lib/steps/finalizeDependencies.js.map +0 -1
- package/lib/steps/initializeGitHubRepository/index.d.ts +0 -8
- package/lib/steps/initializeGitHubRepository/index.js +0 -19
- package/lib/steps/initializeGitHubRepository/index.js.map +0 -1
- package/lib/steps/initializeGitHubRepository/initializeBranchProtectionSettings.d.ts +0 -8
- package/lib/steps/initializeGitHubRepository/initializeBranchProtectionSettings.js +0 -67
- package/lib/steps/initializeGitHubRepository/initializeBranchProtectionSettings.js.map +0 -1
- package/lib/steps/initializeGitHubRepository/outcomeLabels.js.map +0 -1
- package/lib/steps/initializeGitRemote.d.ts +0 -8
- package/lib/steps/initializeGitRemote.js +0 -15
- package/lib/steps/initializeGitRemote.js.map +0 -1
- package/lib/steps/initializeRepositorySettings.d.ts +0 -9
- package/lib/steps/initializeRepositorySettings.js +0 -27
- package/lib/steps/initializeRepositorySettings.js.map +0 -1
- package/lib/steps/populateCSpellDictionary.d.ts +0 -3
- package/lib/steps/populateCSpellDictionary.js +0 -36
- package/lib/steps/populateCSpellDictionary.js.map +0 -1
- package/lib/steps/removeSetupScripts.d.ts +0 -3
- package/lib/steps/removeSetupScripts.js +0 -29
- package/lib/steps/removeSetupScripts.js.map +0 -1
- package/lib/steps/resetGitTags.d.ts +0 -3
- package/lib/steps/resetGitTags.js +0 -12
- package/lib/steps/resetGitTags.js.map +0 -1
- package/lib/steps/runCleanup.d.ts +0 -7
- package/lib/steps/runCleanup.js +0 -37
- package/lib/steps/runCleanup.js.map +0 -1
- package/lib/steps/uninstallPackages.d.ts +0 -3
- package/lib/steps/uninstallPackages.js +0 -64
- package/lib/steps/uninstallPackages.js.map +0 -1
- package/lib/steps/updateAllContributorsTable.d.ts +0 -7
- package/lib/steps/updateAllContributorsTable.js +0 -24
- package/lib/steps/updateAllContributorsTable.js.map +0 -1
- package/lib/steps/updateLocalFiles.d.ts +0 -7
- package/lib/steps/updateLocalFiles.js +0 -84
- package/lib/steps/updateLocalFiles.js.map +0 -1
- package/lib/steps/updateReadme.d.ts +0 -10
- package/lib/steps/updateReadme.js +0 -27
- package/lib/steps/updateReadme.js.map +0 -1
- package/lib/steps/writeReadme/findExistingBadges.d.ts +0 -4
- package/lib/steps/writeReadme/findExistingBadges.js +0 -28
- package/lib/steps/writeReadme/findExistingBadges.js.map +0 -1
- package/lib/steps/writeReadme/findIntroSectionClose.d.ts +0 -3
- package/lib/steps/writeReadme/findIntroSectionClose.js +0 -22
- package/lib/steps/writeReadme/findIntroSectionClose.js.map +0 -1
- package/lib/steps/writeReadme/generateTopContent.d.ts +0 -7
- package/lib/steps/writeReadme/generateTopContent.js +0 -70
- package/lib/steps/writeReadme/generateTopContent.js.map +0 -1
- package/lib/steps/writeReadme/index.d.ts +0 -7
- package/lib/steps/writeReadme/index.js +0 -57
- package/lib/steps/writeReadme/index.js.map +0 -1
- package/lib/steps/writing/creation/createCSpellConfig.d.ts +0 -7
- package/lib/steps/writing/creation/createCSpellConfig.js +0 -27
- package/lib/steps/writing/creation/createCSpellConfig.js.map +0 -1
- package/lib/steps/writing/creation/createDotGitignore.d.ts +0 -7
- package/lib/steps/writing/creation/createDotGitignore.js +0 -14
- package/lib/steps/writing/creation/createDotGitignore.js.map +0 -1
- package/lib/steps/writing/creation/createESLintConfig.d.ts +0 -7
- package/lib/steps/writing/creation/createESLintConfig.js +0 -105
- package/lib/steps/writing/creation/createESLintConfig.js.map +0 -1
- package/lib/steps/writing/creation/createKnipConfig.d.ts +0 -3
- package/lib/steps/writing/creation/createKnipConfig.js +0 -20
- package/lib/steps/writing/creation/createKnipConfig.js.map +0 -1
- package/lib/steps/writing/creation/createTsupConfig.d.ts +0 -7
- package/lib/steps/writing/creation/createTsupConfig.js +0 -19
- package/lib/steps/writing/creation/createTsupConfig.js.map +0 -1
- package/lib/steps/writing/creation/dotGitHub/actions.d.ts +0 -7
- package/lib/steps/writing/creation/dotGitHub/actions.js +0 -32
- package/lib/steps/writing/creation/dotGitHub/actions.js.map +0 -1
- package/lib/steps/writing/creation/dotGitHub/createDevelopment/index.d.ts +0 -7
- package/lib/steps/writing/creation/dotGitHub/createDevelopment/index.js +0 -154
- package/lib/steps/writing/creation/dotGitHub/createDevelopment/index.js.map +0 -1
- package/lib/steps/writing/creation/dotGitHub/createDevelopment/splitIntoSections.d.ts +0 -3
- package/lib/steps/writing/creation/dotGitHub/createDevelopment/splitIntoSections.js +0 -24
- package/lib/steps/writing/creation/dotGitHub/createDevelopment/splitIntoSections.js.map +0 -1
- package/lib/steps/writing/creation/dotGitHub/createDotGitHubFiles.d.ts +0 -16
- package/lib/steps/writing/creation/dotGitHub/createDotGitHubFiles.js +0 -292
- package/lib/steps/writing/creation/dotGitHub/createDotGitHubFiles.js.map +0 -1
- package/lib/steps/writing/creation/dotGitHub/createMultiWorkflowFile.js.map +0 -1
- package/lib/steps/writing/creation/dotGitHub/createSoloWorkflowFile.js.map +0 -1
- package/lib/steps/writing/creation/dotGitHub/createWorkflows.d.ts +0 -15
- package/lib/steps/writing/creation/dotGitHub/createWorkflows.js +0 -237
- package/lib/steps/writing/creation/dotGitHub/createWorkflows.js.map +0 -1
- package/lib/steps/writing/creation/dotGitHub/formatWorkflowYaml.js.map +0 -1
- package/lib/steps/writing/creation/dotGitHub/index.d.ts +0 -36
- package/lib/steps/writing/creation/dotGitHub/index.js +0 -16
- package/lib/steps/writing/creation/dotGitHub/index.js.map +0 -1
- package/lib/steps/writing/creation/dotGitHub/issueTemplate.d.ts +0 -12
- package/lib/steps/writing/creation/dotGitHub/issueTemplate.js +0 -198
- package/lib/steps/writing/creation/dotGitHub/issueTemplate.js.map +0 -1
- package/lib/steps/writing/creation/dotHusky.d.ts +0 -6
- package/lib/steps/writing/creation/dotHusky.js +0 -11
- package/lib/steps/writing/creation/dotHusky.js.map +0 -1
- package/lib/steps/writing/creation/dotVSCode.d.ts +0 -12
- package/lib/steps/writing/creation/dotVSCode.js +0 -79
- package/lib/steps/writing/creation/dotVSCode.js.map +0 -1
- package/lib/steps/writing/creation/formatters/formatIgnoreFile.js.map +0 -1
- package/lib/steps/writing/creation/formatters/formatJson.d.ts +0 -3
- package/lib/steps/writing/creation/formatters/formatJson.js +0 -18
- package/lib/steps/writing/creation/formatters/formatJson.js.map +0 -1
- package/lib/steps/writing/creation/formatters/formatTypeScript.d.ts +0 -3
- package/lib/steps/writing/creation/formatters/formatTypeScript.js +0 -8
- package/lib/steps/writing/creation/formatters/formatTypeScript.js.map +0 -1
- package/lib/steps/writing/creation/formatters/formatYaml.js.map +0 -1
- package/lib/steps/writing/creation/index.d.ts +0 -9
- package/lib/steps/writing/creation/index.js +0 -78
- package/lib/steps/writing/creation/index.js.map +0 -1
- package/lib/steps/writing/creation/rootFiles.d.ts +0 -24
- package/lib/steps/writing/creation/rootFiles.js +0 -152
- package/lib/steps/writing/creation/rootFiles.js.map +0 -1
- package/lib/steps/writing/creation/src.d.ts +0 -12
- package/lib/steps/writing/creation/src.js +0 -90
- package/lib/steps/writing/creation/src.js.map +0 -1
- package/lib/steps/writing/creation/writeAllContributorsRC.d.ts +0 -7
- package/lib/steps/writing/creation/writeAllContributorsRC.js +0 -18
- package/lib/steps/writing/creation/writeAllContributorsRC.js.map +0 -1
- package/lib/steps/writing/creation/writePackageJson.d.ts +0 -7
- package/lib/steps/writing/creation/writePackageJson.js +0 -118
- package/lib/steps/writing/creation/writePackageJson.js.map +0 -1
- package/lib/steps/writing/types.d.ts +0 -5
- package/lib/steps/writing/types.js +0 -1
- package/lib/steps/writing/types.js.map +0 -1
- package/lib/steps/writing/writeStructure.d.ts +0 -7
- package/lib/steps/writing/writeStructure.js +0 -22
- package/lib/steps/writing/writeStructure.js.map +0 -1
- package/lib/steps/writing/writeStructureWorker.d.ts +0 -5
- package/lib/steps/writing/writeStructureWorker.js +0 -47
- package/lib/steps/writing/writeStructureWorker.js.map +0 -1
- /package/lib/{next/blocks → blocks}/blockAreTheTypesWrong.js +0 -0
- /package/lib/{next/blocks → blocks}/blockESLintComments.js +0 -0
- /package/lib/{next/blocks → blocks}/blockESLintJSDoc.js +0 -0
- /package/lib/{next/blocks → blocks}/blockESLintJSONC.js +0 -0
- /package/lib/{next/blocks → blocks}/blockESLintMarkdown.js +0 -0
- /package/lib/{next/blocks → blocks}/blockESLintMoreStyling.js +0 -0
- /package/lib/{next/blocks → blocks}/blockESLintPackageJson.js +0 -0
- /package/lib/{next/blocks → blocks}/blockESLintPerfectionist.js +0 -0
- /package/lib/{next/blocks → blocks}/blockESLintRegexp.js +0 -0
- /package/lib/{next/blocks → blocks}/blockESLintYML.js +0 -0
- /package/lib/{next/blocks → blocks}/blockExampleFiles.js +0 -0
- /package/lib/{next/blocks → blocks}/blockGitHubApps.js +0 -0
- /package/lib/{next/blocks → blocks}/blockGitHubPRTemplate.js +0 -0
- /package/lib/{next/blocks → blocks}/blockMITLicense.js +0 -0
- /package/lib/{next/blocks → blocks}/blockNvmrc.js +0 -0
- /package/lib/{next/blocks → blocks}/blockPnpmDedupe.js +0 -0
- /package/lib/{next/blocks → blocks}/blockPrettierPluginCurly.js +0 -0
- /package/lib/{next/blocks → blocks}/blockPrettierPluginPackageJson.js +0 -0
- /package/lib/{next/blocks → blocks}/blockPrettierPluginSh.js +0 -0
- /package/lib/{next/blocks → blocks}/blockRepositorySecrets.js +0 -0
- /package/lib/{next/blocks → blocks}/blockRepositorySettings.js +0 -0
- /package/lib/{next/blocks → blocks}/blockSecurityDocs.js +0 -0
- /package/lib/{next/blocks → blocks}/blockVSCode.js +0 -0
- /package/lib/{steps/writing/creation/dotGitHub → blocks/files}/createMultiWorkflowFile.d.ts +0 -0
- /package/lib/{steps/writing/creation/dotGitHub → blocks/files}/createSoloWorkflowFile.d.ts +0 -0
- /package/lib/{steps/writing/creation/formatters → blocks/files}/formatIgnoreFile.d.ts +0 -0
- /package/lib/{steps/writing/creation/formatters → blocks/files}/formatIgnoreFile.js +0 -0
- /package/lib/{steps/writing/creation/dotGitHub → blocks/files}/formatWorkflowYaml.d.ts +0 -0
- /package/lib/{steps/writing/creation/formatters → blocks/files}/formatYaml.d.ts +0 -0
- /package/lib/{next/blocks → blocks}/options.fakes.d.ts +0 -0
- /package/lib/{next/blocks → blocks}/options.fakes.js +0 -0
- /package/lib/{steps/initializeGitHubRepository → blocks}/outcomeLabels.d.ts +0 -0
- /package/lib/{next/blocks → blocks}/phases.d.ts +0 -0
- /package/lib/{next/blocks → blocks}/phases.js +0 -0
- /package/lib/{shared/options/createOptionDefaults → options}/getUsageFromReadme.d.ts +0 -0
- /package/lib/{shared/options/createOptionDefaults → options}/getUsageFromReadme.js +0 -0
- /package/lib/{shared/options/createOptionDefaults → options}/parsePackageAuthor.js +0 -0
- /package/lib/{next → options}/readDescriptionFromReadme.d.ts +0 -0
- /package/lib/{next → options}/readDescriptionFromReadme.js +0 -0
- /package/lib/{next → options}/readDocumentation.d.ts +0 -0
- /package/lib/{shared/options/createOptionDefaults → options}/readEmails.d.ts +0 -0
- /package/lib/{shared → options}/readFileAsJson.d.ts +0 -0
- /package/lib/{shared → options}/readFileAsJson.js +0 -0
- /package/lib/{shared → options}/readFileSafe.d.ts +0 -0
- /package/lib/{shared → options}/readFileSafe.js +0 -0
- /package/lib/{shared/options/createOptionDefaults → options}/readFunding.d.ts +0 -0
- /package/lib/{shared/options/createOptionDefaults → options}/readGitHubEmail.d.ts +0 -0
- /package/lib/{shared/options/createOptionDefaults → options}/readGuide.d.ts +0 -0
- /package/lib/{shared/options → options}/readLogoSizing.d.ts +0 -0
- /package/lib/{next/utils → utils}/resolveBin.d.ts +0 -0
- /package/lib/{next/utils → utils}/resolveBin.js +0 -0
- /package/lib/{next/utils → utils}/sortObject.d.ts +0 -0
- /package/lib/{next/utils → utils}/sortObject.js +0 -0
- /package/lib/{next/utils → utils}/swallowError.d.ts +0 -0
- /package/lib/{next/utils → utils}/swallowError.js +0 -0
- /package/lib/{shared → utils}/tryCatchAsync.d.ts +0 -0
- /package/lib/{shared → utils}/tryCatchAsync.js +0 -0
- /package/lib/{shared → utils}/tryCatchLazyValueAsync.d.ts +0 -0
- /package/lib/{shared → utils}/tryCatchLazyValueAsync.js +0 -0
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
function generateTopContent(options, existingBadges) {
|
|
2
|
-
const remainingExistingBadges = new Set(existingBadges);
|
|
3
|
-
const badges = [];
|
|
4
|
-
for (const [badgeLine, existingMatcher] of [
|
|
5
|
-
[
|
|
6
|
-
!options.excludeAllContributors && `<!-- prettier-ignore-start -->
|
|
7
|
-
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
|
|
8
|
-
<a href="#contributors" target="_blank"><img alt="\u{1F46A} All Contributors: 1" src="https://img.shields.io/badge/\u{1F46A}_all_contributors-1-21bb42.svg" /></a>
|
|
9
|
-
<!-- ALL-CONTRIBUTORS-BADGE:END -->
|
|
10
|
-
<!-- prettier-ignore-end -->`,
|
|
11
|
-
/<a\s+href.*contributors.*All\s+Contributors/
|
|
12
|
-
],
|
|
13
|
-
[
|
|
14
|
-
`<a href="https://github.com/${options.owner}/${options.repository}/blob/main/.github/CODE_OF_CONDUCT.md" target="_blank"><img alt="\u{1F91D} Code of Conduct: Kept" src="https://img.shields.io/badge/%F0%9F%A4%9D_code_of_conduct-kept-21bb42" /></a>`,
|
|
15
|
-
/CODE_OF_CONDUCT\.md/
|
|
16
|
-
],
|
|
17
|
-
[
|
|
18
|
-
!options.excludeTests && `<a href="https://codecov.io/gh/${options.owner}/${options.repository}" target="_blank"><img alt="\u{1F9EA} Coverage" src="https://img.shields.io/codecov/c/github/${options.owner}/${options.repository}?label=%F0%9F%A7%AA%20coverage" /></a>`,
|
|
19
|
-
/https:\/\/codecov\.io\/gh/
|
|
20
|
-
],
|
|
21
|
-
[
|
|
22
|
-
`<a href="https://github.com/${options.owner}/${options.repository}/blob/main/LICENSE.md" target="_blank"><img alt="\u{1F4DD} License: MIT" src="https://img.shields.io/badge/%F0%9F%93%9D_license-MIT-21bb42.svg"></a>`,
|
|
23
|
-
/LICENSE\.(md|txt)/
|
|
24
|
-
],
|
|
25
|
-
[
|
|
26
|
-
`<a href="http://npmjs.com/package/${options.repository}"><img alt="\u{1F4E6} npm version" src="https://img.shields.io/npm/v/${options.repository}?color=21bb42&label=%F0%9F%93%A6%20npm" /></a>`,
|
|
27
|
-
/npm.*v/i
|
|
28
|
-
],
|
|
29
|
-
[
|
|
30
|
-
`<img alt="\u{1F4AA} TypeScript: Strict" src="https://img.shields.io/badge/%F0%9F%92%AA_typescript-strict-21bb42.svg" />`,
|
|
31
|
-
/typescript.*strict/i
|
|
32
|
-
]
|
|
33
|
-
]) {
|
|
34
|
-
const existingMatch = existingBadges.find(
|
|
35
|
-
(existingLine) => existingMatcher.test(existingLine)
|
|
36
|
-
);
|
|
37
|
-
if (existingMatch) {
|
|
38
|
-
remainingExistingBadges.delete(existingMatch);
|
|
39
|
-
}
|
|
40
|
-
if (badgeLine) {
|
|
41
|
-
badges.push(badgeLine);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
return `<h1 align="center">${options.title}</h1>
|
|
45
|
-
|
|
46
|
-
<p align="center">${options.description}</p>
|
|
47
|
-
|
|
48
|
-
<p align="center">
|
|
49
|
-
${[...badges, ...remainingExistingBadges].map((badge) => ` ${badge}`).join("\n")}
|
|
50
|
-
</p>${options.logo ? `
|
|
51
|
-
|
|
52
|
-
<img align="right" alt="${options.logo.alt}" src="${options.logo.src}">
|
|
53
|
-
|
|
54
|
-
` : ""}${options.mode === "migrate" ? "" : `
|
|
55
|
-
|
|
56
|
-
## Usage
|
|
57
|
-
|
|
58
|
-
\`\`\`shell
|
|
59
|
-
npm i ${options.repository}
|
|
60
|
-
\`\`\`
|
|
61
|
-
\`\`\`ts
|
|
62
|
-
import { greet } from "${options.repository}";
|
|
63
|
-
|
|
64
|
-
greet("Hello, world! \u{1F496}");
|
|
65
|
-
\`\`\``}`;
|
|
66
|
-
}
|
|
67
|
-
export {
|
|
68
|
-
generateTopContent
|
|
69
|
-
};
|
|
70
|
-
//# sourceMappingURL=generateTopContent.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/steps/writeReadme/generateTopContent.ts"],"sourcesContent":["import { Options } from \"../../shared/types.js\";\n\nexport function generateTopContent(options: Options, existingBadges: string[]) {\n\tconst remainingExistingBadges = new Set(existingBadges);\n\tconst badges: string[] = [];\n\n\tfor (const [badgeLine, existingMatcher] of [\n\t\t[\n\t\t\t!options.excludeAllContributors &&\n\t\t\t\t`<!-- prettier-ignore-start -->\n\t<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->\n\t<a href=\"#contributors\" target=\"_blank\"><img alt=\"👪 All Contributors: 1\" src=\"https://img.shields.io/badge/👪_all_contributors-1-21bb42.svg\" /></a>\n\t<!-- ALL-CONTRIBUTORS-BADGE:END -->\n\t<!-- prettier-ignore-end -->`,\n\t\t\t/<a\\s+href.*contributors.*All\\s+Contributors/,\n\t\t],\n\t\t[\n\t\t\t`<a href=\"https://github.com/${options.owner}/${options.repository}/blob/main/.github/CODE_OF_CONDUCT.md\" target=\"_blank\"><img alt=\"🤝 Code of Conduct: Kept\" src=\"https://img.shields.io/badge/%F0%9F%A4%9D_code_of_conduct-kept-21bb42\" /></a>`,\n\t\t\t/CODE_OF_CONDUCT\\.md/,\n\t\t],\n\t\t[\n\t\t\t!options.excludeTests &&\n\t\t\t\t`<a href=\"https://codecov.io/gh/${options.owner}/${options.repository}\" target=\"_blank\"><img alt=\"🧪 Coverage\" src=\"https://img.shields.io/codecov/c/github/${options.owner}/${options.repository}?label=%F0%9F%A7%AA%20coverage\" /></a>`,\n\t\t\t/https:\\/\\/codecov\\.io\\/gh/,\n\t\t],\n\t\t[\n\t\t\t`<a href=\"https://github.com/${options.owner}/${options.repository}/blob/main/LICENSE.md\" target=\"_blank\"><img alt=\"📝 License: MIT\" src=\"https://img.shields.io/badge/%F0%9F%93%9D_license-MIT-21bb42.svg\"></a>`,\n\t\t\t/LICENSE\\.(md|txt)/,\n\t\t],\n\t\t[\n\t\t\t`<a href=\"http://npmjs.com/package/${options.repository}\"><img alt=\"📦 npm version\" src=\"https://img.shields.io/npm/v/${options.repository}?color=21bb42&label=%F0%9F%93%A6%20npm\" /></a>`,\n\t\t\t/npm.*v/i,\n\t\t],\n\t\t[\n\t\t\t`<img alt=\"💪 TypeScript: Strict\" src=\"https://img.shields.io/badge/%F0%9F%92%AA_typescript-strict-21bb42.svg\" />`,\n\t\t\t/typescript.*strict/i,\n\t\t],\n\t] as const) {\n\t\tconst existingMatch = existingBadges.find((existingLine) =>\n\t\t\texistingMatcher.test(existingLine),\n\t\t);\n\n\t\tif (existingMatch) {\n\t\t\tremainingExistingBadges.delete(existingMatch);\n\t\t}\n\n\t\tif (badgeLine) {\n\t\t\tbadges.push(badgeLine);\n\t\t}\n\t}\n\n\treturn `<h1 align=\"center\">${options.title}</h1>\n\n<p align=\"center\">${options.description}</p>\n\n<p align=\"center\">\n${[...badges, ...remainingExistingBadges]\n\t.map((badge) => `\\t${badge}`)\n\t.join(\"\\n\")}\n</p>${\n\t\toptions.logo\n\t\t\t? `\n\n<img align=\"right\" alt=\"${options.logo.alt}\" src=\"${options.logo.src}\">\n\n`\n\t\t\t: \"\"\n\t}${\n\t\toptions.mode === \"migrate\"\n\t\t\t? \"\"\n\t\t\t: `\n\n## Usage\n\n\\`\\`\\`shell\nnpm i ${options.repository}\n\\`\\`\\`\n\\`\\`\\`ts\nimport { greet } from \"${options.repository}\";\n\ngreet(\"Hello, world! 💖\");\n\\`\\`\\``\n\t}`;\n}\n"],"mappings":"AAEO,SAAS,mBAAmB,SAAkB,gBAA0B;AAC9E,QAAM,0BAA0B,IAAI,IAAI,cAAc;AACtD,QAAM,SAAmB,CAAC;AAE1B,aAAW,CAAC,WAAW,eAAe,KAAK;AAAA,IAC1C;AAAA,MACC,CAAC,QAAQ,0BACR;AAAA;AAAA;AAAA;AAAA;AAAA,MAKD;AAAA,IACD;AAAA,IACA;AAAA,MACC,+BAA+B,QAAQ,KAAK,IAAI,QAAQ,UAAU;AAAA,MAClE;AAAA,IACD;AAAA,IACA;AAAA,MACC,CAAC,QAAQ,gBACR,kCAAkC,QAAQ,KAAK,IAAI,QAAQ,UAAU,gGAAyF,QAAQ,KAAK,IAAI,QAAQ,UAAU;AAAA,MAClM;AAAA,IACD;AAAA,IACA;AAAA,MACC,+BAA+B,QAAQ,KAAK,IAAI,QAAQ,UAAU;AAAA,MAClE;AAAA,IACD;AAAA,IACA;AAAA,MACC,qCAAqC,QAAQ,UAAU,wEAAiE,QAAQ,UAAU;AAAA,MAC1I;AAAA,IACD;AAAA,IACA;AAAA,MACC;AAAA,MACA;AAAA,IACD;AAAA,EACD,GAAY;AACX,UAAM,gBAAgB,eAAe;AAAA,MAAK,CAAC,iBAC1C,gBAAgB,KAAK,YAAY;AAAA,IAClC;AAEA,QAAI,eAAe;AAClB,8BAAwB,OAAO,aAAa;AAAA,IAC7C;AAEA,QAAI,WAAW;AACd,aAAO,KAAK,SAAS;AAAA,IACtB;AAAA,EACD;AAEA,SAAO,sBAAsB,QAAQ,KAAK;AAAA;AAAA,oBAEvB,QAAQ,WAAW;AAAA;AAAA;AAAA,EAGrC,CAAC,GAAG,QAAQ,GAAG,uBAAuB,EACtC,IAAI,CAAC,UAAU,IAAK,KAAK,EAAE,EAC3B,KAAK,IAAI,CAAC;AAAA,MAEV,QAAQ,OACL;AAAA;AAAA,0BAEqB,QAAQ,KAAK,GAAG,UAAU,QAAQ,KAAK,GAAG;AAAA;AAAA,IAG/D,EACJ,GACC,QAAQ,SAAS,YACd,KACA;AAAA;AAAA;AAAA;AAAA;AAAA,QAKG,QAAQ,UAAU;AAAA;AAAA;AAAA,yBAGD,QAAQ,UAAU;AAAA;AAAA;AAAA,OAI1C;AACD;","names":[]}
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import * as fs from "node:fs/promises";
|
|
2
|
-
import { readFileSafe } from "../../shared/readFileSafe.js";
|
|
3
|
-
import { endOfReadmeMatcher, endOfReadmeNotice } from "../updateReadme.js";
|
|
4
|
-
import { findExistingBadges } from "./findExistingBadges.js";
|
|
5
|
-
import { findIntroSectionClose } from "./findIntroSectionClose.js";
|
|
6
|
-
import { generateTopContent } from "./generateTopContent.js";
|
|
7
|
-
const contributorsIndicator = `<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->`;
|
|
8
|
-
async function writeReadme(options) {
|
|
9
|
-
const allContributorsContent = !options.excludeAllContributors && generateAllContributorsContent(options);
|
|
10
|
-
let contents = await readFileSafe("README.md", "");
|
|
11
|
-
if (!contents) {
|
|
12
|
-
await fs.writeFile(
|
|
13
|
-
"README.md",
|
|
14
|
-
[
|
|
15
|
-
generateTopContent(options, []),
|
|
16
|
-
allContributorsContent,
|
|
17
|
-
endOfReadmeNotice.slice(1)
|
|
18
|
-
].filter(Boolean).join("\n\n")
|
|
19
|
-
);
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
const endOfIntroSection = findIntroSectionClose(contents);
|
|
23
|
-
contents = [
|
|
24
|
-
generateTopContent(options, findExistingBadges(contents)),
|
|
25
|
-
contents.slice(endOfIntroSection)
|
|
26
|
-
].join("").replace(/\[!\[.+\]\(.+\)\]\(.+\)/g, "").replace(/!\[.+\]\(.+\)/g, "").replaceAll("\r", "").replaceAll("\n\n\n", "\n\n");
|
|
27
|
-
if (allContributorsContent && !contents.includes(contributorsIndicator)) {
|
|
28
|
-
contents = [contents, allContributorsContent].join("\n\n");
|
|
29
|
-
}
|
|
30
|
-
if (!endOfReadmeMatcher.test(contents)) {
|
|
31
|
-
contents = [contents, endOfReadmeNotice].join("\n");
|
|
32
|
-
}
|
|
33
|
-
await fs.writeFile("README.md", contents);
|
|
34
|
-
}
|
|
35
|
-
function generateAllContributorsContent(options) {
|
|
36
|
-
return [
|
|
37
|
-
`## Contributors`,
|
|
38
|
-
``,
|
|
39
|
-
`<!-- spellchecker: disable -->`,
|
|
40
|
-
contributorsIndicator,
|
|
41
|
-
`<!-- prettier-ignore-start -->`,
|
|
42
|
-
!options.excludeLintMd && `<!-- markdownlint-disable -->`,
|
|
43
|
-
`<table>`,
|
|
44
|
-
`<!-- (this will be filled in by all-contributors) -->`,
|
|
45
|
-
`</table>`,
|
|
46
|
-
``,
|
|
47
|
-
!options.excludeLintMd && `<!-- markdownlint-restore -->`,
|
|
48
|
-
`<!-- prettier-ignore-end -->`,
|
|
49
|
-
``,
|
|
50
|
-
`<!-- ALL-CONTRIBUTORS-LIST:END -->`,
|
|
51
|
-
`<!-- spellchecker: enable -->`
|
|
52
|
-
].filter(Boolean).join("\n");
|
|
53
|
-
}
|
|
54
|
-
export {
|
|
55
|
-
writeReadme
|
|
56
|
-
};
|
|
57
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/steps/writeReadme/index.ts"],"sourcesContent":["import * as fs from \"node:fs/promises\";\n\nimport { readFileSafe } from \"../../shared/readFileSafe.js\";\nimport { Options } from \"../../shared/types.js\";\nimport { endOfReadmeMatcher, endOfReadmeNotice } from \"../updateReadme.js\";\nimport { findExistingBadges } from \"./findExistingBadges.js\";\nimport { findIntroSectionClose } from \"./findIntroSectionClose.js\";\nimport { generateTopContent } from \"./generateTopContent.js\";\n\nconst contributorsIndicator = `<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->`;\n\nexport async function writeReadme(options: Options) {\n\tconst allContributorsContent =\n\t\t!options.excludeAllContributors && generateAllContributorsContent(options);\n\tlet contents = await readFileSafe(\"README.md\", \"\");\n\tif (!contents) {\n\t\tawait fs.writeFile(\n\t\t\t\"README.md\",\n\t\t\t[\n\t\t\t\tgenerateTopContent(options, []),\n\t\t\t\tallContributorsContent,\n\t\t\t\tendOfReadmeNotice.slice(1),\n\t\t\t]\n\t\t\t\t.filter(Boolean)\n\t\t\t\t.join(\"\\n\\n\"),\n\t\t);\n\t\treturn;\n\t}\n\n\tconst endOfIntroSection = findIntroSectionClose(contents);\n\n\tcontents = [\n\t\tgenerateTopContent(options, findExistingBadges(contents)),\n\t\tcontents.slice(endOfIntroSection),\n\t]\n\t\t.join(\"\")\n\t\t.replace(/\\[!\\[.+\\]\\(.+\\)\\]\\(.+\\)/g, \"\")\n\t\t.replace(/!\\[.+\\]\\(.+\\)/g, \"\")\n\t\t.replaceAll(\"\\r\", \"\")\n\t\t.replaceAll(\"\\n\\n\\n\", \"\\n\\n\");\n\n\tif (allContributorsContent && !contents.includes(contributorsIndicator)) {\n\t\tcontents = [contents, allContributorsContent].join(\"\\n\\n\");\n\t}\n\n\tif (!endOfReadmeMatcher.test(contents)) {\n\t\tcontents = [contents, endOfReadmeNotice].join(\"\\n\");\n\t}\n\n\tawait fs.writeFile(\"README.md\", contents);\n}\n\nfunction generateAllContributorsContent(options: Options) {\n\treturn [\n\t\t`## Contributors`,\n\t\t``,\n\t\t`<!-- spellchecker: disable -->`,\n\t\tcontributorsIndicator,\n\t\t`<!-- prettier-ignore-start -->`,\n\t\t!options.excludeLintMd && `<!-- markdownlint-disable -->`,\n\t\t`<table>`,\n\t\t`<!-- (this will be filled in by all-contributors) -->`,\n\t\t`</table>`,\n\t\t``,\n\t\t!options.excludeLintMd && `<!-- markdownlint-restore -->`,\n\t\t`<!-- prettier-ignore-end -->`,\n\t\t``,\n\t\t`<!-- ALL-CONTRIBUTORS-LIST:END -->`,\n\t\t`<!-- spellchecker: enable -->`,\n\t]\n\t\t.filter(Boolean)\n\t\t.join(\"\\n\");\n}\n"],"mappings":"AAAA,YAAY,QAAQ;AAEpB,SAAS,oBAAoB;AAE7B,SAAS,oBAAoB,yBAAyB;AACtD,SAAS,0BAA0B;AACnC,SAAS,6BAA6B;AACtC,SAAS,0BAA0B;AAEnC,MAAM,wBAAwB;AAE9B,eAAsB,YAAY,SAAkB;AACnD,QAAM,yBACL,CAAC,QAAQ,0BAA0B,+BAA+B,OAAO;AAC1E,MAAI,WAAW,MAAM,aAAa,aAAa,EAAE;AACjD,MAAI,CAAC,UAAU;AACd,UAAM,GAAG;AAAA,MACR;AAAA,MACA;AAAA,QACC,mBAAmB,SAAS,CAAC,CAAC;AAAA,QAC9B;AAAA,QACA,kBAAkB,MAAM,CAAC;AAAA,MAC1B,EACE,OAAO,OAAO,EACd,KAAK,MAAM;AAAA,IACd;AACA;AAAA,EACD;AAEA,QAAM,oBAAoB,sBAAsB,QAAQ;AAExD,aAAW;AAAA,IACV,mBAAmB,SAAS,mBAAmB,QAAQ,CAAC;AAAA,IACxD,SAAS,MAAM,iBAAiB;AAAA,EACjC,EACE,KAAK,EAAE,EACP,QAAQ,4BAA4B,EAAE,EACtC,QAAQ,kBAAkB,EAAE,EAC5B,WAAW,MAAM,EAAE,EACnB,WAAW,UAAU,MAAM;AAE7B,MAAI,0BAA0B,CAAC,SAAS,SAAS,qBAAqB,GAAG;AACxE,eAAW,CAAC,UAAU,sBAAsB,EAAE,KAAK,MAAM;AAAA,EAC1D;AAEA,MAAI,CAAC,mBAAmB,KAAK,QAAQ,GAAG;AACvC,eAAW,CAAC,UAAU,iBAAiB,EAAE,KAAK,IAAI;AAAA,EACnD;AAEA,QAAM,GAAG,UAAU,aAAa,QAAQ;AACzC;AAEA,SAAS,+BAA+B,SAAkB;AACzD,SAAO;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,CAAC,QAAQ,iBAAiB;AAAA,IAC1B;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,CAAC,QAAQ,iBAAiB;AAAA,IAC1B;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD,EACE,OAAO,OAAO,EACd,KAAK,IAAI;AACZ;","names":[]}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { Options } from '../../../shared/types.js';
|
|
2
|
-
import 'zod';
|
|
3
|
-
import '../../../shared/codes.js';
|
|
4
|
-
|
|
5
|
-
declare function createCSpellConfig(options: Pick<Options, "excludeAllContributors" | "excludeLintMd" | "excludeReleases" | "excludeRenovate" | "excludeTemplatedBy" | "excludeTests">): Promise<string>;
|
|
6
|
-
|
|
7
|
-
export { createCSpellConfig };
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { formatJson } from "./formatters/formatJson.js";
|
|
2
|
-
async function createCSpellConfig(options) {
|
|
3
|
-
const words = [
|
|
4
|
-
"tseslint",
|
|
5
|
-
!options.excludeReleases && "apexskier",
|
|
6
|
-
!options.excludeRenovate && "automerge",
|
|
7
|
-
!options.excludeLintMd && "markdownlintignore",
|
|
8
|
-
!options.excludeTemplatedBy && "joshuakgoldberg"
|
|
9
|
-
].filter(Boolean).sort();
|
|
10
|
-
return await formatJson({
|
|
11
|
-
dictionaries: ["npm", "node", "typescript"],
|
|
12
|
-
ignorePaths: [
|
|
13
|
-
...options.excludeAllContributors ? [] : [".all-contributorsrc"],
|
|
14
|
-
".github",
|
|
15
|
-
"CHANGELOG.md",
|
|
16
|
-
...options.excludeTests ? [] : ["coverage"],
|
|
17
|
-
"lib",
|
|
18
|
-
"node_modules",
|
|
19
|
-
"pnpm-lock.yaml"
|
|
20
|
-
],
|
|
21
|
-
words
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
export {
|
|
25
|
-
createCSpellConfig
|
|
26
|
-
};
|
|
27
|
-
//# sourceMappingURL=createCSpellConfig.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/steps/writing/creation/createCSpellConfig.ts"],"sourcesContent":["import { Options } from \"../../../shared/types.js\";\nimport { formatJson } from \"./formatters/formatJson.js\";\n\nexport async function createCSpellConfig(\n\toptions: Pick<\n\t\tOptions,\n\t\t| \"excludeAllContributors\"\n\t\t| \"excludeLintMd\"\n\t\t| \"excludeReleases\"\n\t\t| \"excludeRenovate\"\n\t\t| \"excludeTemplatedBy\"\n\t\t| \"excludeTests\"\n\t>,\n) {\n\tconst words = [\n\t\t\"tseslint\",\n\t\t!options.excludeReleases && \"apexskier\",\n\t\t!options.excludeRenovate && \"automerge\",\n\t\t!options.excludeLintMd && \"markdownlintignore\",\n\t\t!options.excludeTemplatedBy && \"joshuakgoldberg\",\n\t]\n\t\t.filter(Boolean)\n\t\t.sort();\n\n\treturn await formatJson({\n\t\tdictionaries: [\"npm\", \"node\", \"typescript\"],\n\t\tignorePaths: [\n\t\t\t...(options.excludeAllContributors ? [] : [\".all-contributorsrc\"]),\n\t\t\t\".github\",\n\t\t\t\"CHANGELOG.md\",\n\t\t\t...(options.excludeTests ? [] : [\"coverage\"]),\n\t\t\t\"lib\",\n\t\t\t\"node_modules\",\n\t\t\t\"pnpm-lock.yaml\",\n\t\t],\n\t\twords,\n\t});\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,eAAsB,mBACrB,SASC;AACD,QAAM,QAAQ;AAAA,IACb;AAAA,IACA,CAAC,QAAQ,mBAAmB;AAAA,IAC5B,CAAC,QAAQ,mBAAmB;AAAA,IAC5B,CAAC,QAAQ,iBAAiB;AAAA,IAC1B,CAAC,QAAQ,sBAAsB;AAAA,EAChC,EACE,OAAO,OAAO,EACd,KAAK;AAEP,SAAO,MAAM,WAAW;AAAA,IACvB,cAAc,CAAC,OAAO,QAAQ,YAAY;AAAA,IAC1C,aAAa;AAAA,MACZ,GAAI,QAAQ,yBAAyB,CAAC,IAAI,CAAC,qBAAqB;AAAA,MAChE;AAAA,MACA;AAAA,MACA,GAAI,QAAQ,eAAe,CAAC,IAAI,CAAC,UAAU;AAAA,MAC3C;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,IACA;AAAA,EACD,CAAC;AACF;","names":[]}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { formatIgnoreFile } from "./formatters/formatIgnoreFile.js";
|
|
2
|
-
function createDotGitignore(options) {
|
|
3
|
-
return formatIgnoreFile(
|
|
4
|
-
[
|
|
5
|
-
...options.excludeTests ? [] : ["/coverage"],
|
|
6
|
-
"/lib",
|
|
7
|
-
"/node_modules"
|
|
8
|
-
].sort()
|
|
9
|
-
);
|
|
10
|
-
}
|
|
11
|
-
export {
|
|
12
|
-
createDotGitignore
|
|
13
|
-
};
|
|
14
|
-
//# sourceMappingURL=createDotGitignore.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/steps/writing/creation/createDotGitignore.ts"],"sourcesContent":["import { Options } from \"../../../shared/types.js\";\nimport { formatIgnoreFile } from \"./formatters/formatIgnoreFile.js\";\n\nexport function createDotGitignore(options: Pick<Options, \"excludeTests\">) {\n\treturn formatIgnoreFile(\n\t\t[\n\t\t\t...(options.excludeTests ? [] : [\"/coverage\"]),\n\t\t\t\"/lib\",\n\t\t\t\"/node_modules\",\n\t\t].sort(),\n\t);\n}\n"],"mappings":"AACA,SAAS,wBAAwB;AAE1B,SAAS,mBAAmB,SAAwC;AAC1E,SAAO;AAAA,IACN;AAAA,MACC,GAAI,QAAQ,eAAe,CAAC,IAAI,CAAC,WAAW;AAAA,MAC5C;AAAA,MACA;AAAA,IACD,EAAE,KAAK;AAAA,EACR;AACD;","names":[]}
|
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
import { formatTypeScript } from "./formatters/formatTypeScript.js";
|
|
2
|
-
async function createESLintConfig(options) {
|
|
3
|
-
const tseslintBase = options.excludeLintStrict ? "recommended" : "strict";
|
|
4
|
-
const imports = [
|
|
5
|
-
!options.excludeLintESLint && `import comments from "@eslint-community/eslint-plugin-eslint-comments/configs";`,
|
|
6
|
-
`import eslint from "@eslint/js";`,
|
|
7
|
-
!options.excludeTests && `import vitest from "@vitest/eslint-plugin";`,
|
|
8
|
-
!options.excludeLintJSDoc && `import jsdoc from "eslint-plugin-jsdoc";`,
|
|
9
|
-
!options.excludeLintJson && `import jsonc from "eslint-plugin-jsonc";`,
|
|
10
|
-
!options.excludeLintMd && `import markdown from "eslint-plugin-markdown";`,
|
|
11
|
-
`import n from "eslint-plugin-n";`,
|
|
12
|
-
!options.excludeLintPackageJson && `import packageJson from "eslint-plugin-package-json/configs/recommended";`,
|
|
13
|
-
!options.excludeLintPerfectionist && `import perfectionist from "eslint-plugin-perfectionist";`,
|
|
14
|
-
!options.excludeLintRegexp && `import * as regexp from "eslint-plugin-regexp";`,
|
|
15
|
-
!options.excludeLintYml && `import yml from "eslint-plugin-yml";`,
|
|
16
|
-
`import tseslint from "typescript-eslint";`
|
|
17
|
-
].filter(Boolean);
|
|
18
|
-
const elements = [
|
|
19
|
-
`eslint.configs.recommended,`,
|
|
20
|
-
!options.excludeLintESLint && ` comments.recommended,`,
|
|
21
|
-
!options.excludeLintJSDoc && ` jsdoc.configs["flat/contents-typescript-error"],
|
|
22
|
-
jsdoc.configs["flat/logical-typescript-error"],
|
|
23
|
-
jsdoc.configs["flat/stylistic-typescript-error"],`,
|
|
24
|
-
!options.excludeLintJson && ` jsonc.configs["flat/recommended-with-json"],`,
|
|
25
|
-
!options.excludeLintMd && ` markdown.configs.recommended,`,
|
|
26
|
-
` n.configs["flat/recommended"],`,
|
|
27
|
-
!options.excludeLintPackageJson && ` packageJson,`,
|
|
28
|
-
!options.excludeLintPerfectionist && ` perfectionist.configs["recommended-natural"],`,
|
|
29
|
-
!options.excludeLintRegexp && ` regexp.configs["flat/recommended"],`
|
|
30
|
-
].filter(Boolean);
|
|
31
|
-
const ignores = [
|
|
32
|
-
...options.excludeTests ? [] : ["**/*.snap", "coverage"],
|
|
33
|
-
"lib",
|
|
34
|
-
"node_modules",
|
|
35
|
-
"pnpm-lock.yaml"
|
|
36
|
-
].map((ignore) => JSON.stringify(ignore)).sort();
|
|
37
|
-
const rules = !options.excludeLintStylistic && `{
|
|
38
|
-
// Stylistic concerns that don't interfere with Prettier
|
|
39
|
-
"logical-assignment-operators": [
|
|
40
|
-
"error",
|
|
41
|
-
"always",
|
|
42
|
-
{ enforceForIfStatements: true },
|
|
43
|
-
],
|
|
44
|
-
"no-useless-rename": "error",
|
|
45
|
-
"object-shorthand": "error",
|
|
46
|
-
"operator-assignment": "error",
|
|
47
|
-
}`;
|
|
48
|
-
return await formatTypeScript(`${imports.join("\n")}
|
|
49
|
-
|
|
50
|
-
export default tseslint.config(
|
|
51
|
-
{ ignores: [${ignores.join(", ")}], },
|
|
52
|
-
{ linterOptions: { reportUnusedDisableDirectives: "error" } },
|
|
53
|
-
${elements.join("\n")}
|
|
54
|
-
{
|
|
55
|
-
extends: ${options.excludeLintStylistic ? `tseslint.configs.${tseslintBase}TypeChecked` : `[
|
|
56
|
-
tseslint.configs.${tseslintBase}TypeChecked,
|
|
57
|
-
tseslint.configs.stylisticTypeChecked,
|
|
58
|
-
]`},
|
|
59
|
-
files: ["**/*.js", "**/*.ts"],
|
|
60
|
-
languageOptions: {
|
|
61
|
-
parserOptions: {
|
|
62
|
-
projectService: { allowDefaultProject: ["*.config.*s"] },
|
|
63
|
-
tsconfigRootDir: import.meta.dirname
|
|
64
|
-
},
|
|
65
|
-
},${rules ? `
|
|
66
|
-
rules: ${rules},` : ""}${options.excludeLintPerfectionist ? "" : `
|
|
67
|
-
settings: { perfectionist: { partitionByComment: true, type: "natural" } },`}
|
|
68
|
-
},
|
|
69
|
-
{
|
|
70
|
-
extends: [tseslint.configs.disableTypeChecked],
|
|
71
|
-
files: ["**/*.md/*.ts"],
|
|
72
|
-
rules: {
|
|
73
|
-
"n/no-missing-import": [
|
|
74
|
-
"error",
|
|
75
|
-
{ allowModules: ["${options.repository}"] },
|
|
76
|
-
],
|
|
77
|
-
},
|
|
78
|
-
},${options.excludeTests ? "" : `
|
|
79
|
-
{
|
|
80
|
-
extends: [vitest.configs.recommended],
|
|
81
|
-
files: ["**/*.test.*"],
|
|
82
|
-
rules: { "@typescript-eslint/no-unsafe-assignment": "off" },
|
|
83
|
-
},`}${options.excludeLintYml ? "" : `
|
|
84
|
-
{
|
|
85
|
-
extends: [yml.configs["flat/recommended"], yml.configs["flat/prettier"]],
|
|
86
|
-
files: ["**/*.{yml,yaml}"],
|
|
87
|
-
rules: {
|
|
88
|
-
"yml/file-extension": ["error", { extension: "yml" }],
|
|
89
|
-
"yml/sort-keys": [
|
|
90
|
-
"error",
|
|
91
|
-
{ order: { type: "asc" }, pathPattern: "^.*$" },
|
|
92
|
-
],
|
|
93
|
-
"yml/sort-sequence-values": [
|
|
94
|
-
"error",
|
|
95
|
-
{ order: { type: "asc" }, pathPattern: "^.*$" },
|
|
96
|
-
],
|
|
97
|
-
},
|
|
98
|
-
},`}
|
|
99
|
-
);
|
|
100
|
-
`);
|
|
101
|
-
}
|
|
102
|
-
export {
|
|
103
|
-
createESLintConfig
|
|
104
|
-
};
|
|
105
|
-
//# sourceMappingURL=createESLintConfig.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/steps/writing/creation/createESLintConfig.ts"],"sourcesContent":["import { Options } from \"../../../shared/types.js\";\nimport { formatTypeScript } from \"./formatters/formatTypeScript.js\";\n\nexport async function createESLintConfig(options: Options) {\n\tconst tseslintBase = options.excludeLintStrict ? \"recommended\" : \"strict\";\n\n\tconst imports = [\n\t\t!options.excludeLintESLint &&\n\t\t\t`import comments from \"@eslint-community/eslint-plugin-eslint-comments/configs\";`,\n\t\t`import eslint from \"@eslint/js\";`,\n\t\t!options.excludeTests && `import vitest from \"@vitest/eslint-plugin\";`,\n\t\t!options.excludeLintJSDoc && `import jsdoc from \"eslint-plugin-jsdoc\";`,\n\t\t!options.excludeLintJson && `import jsonc from \"eslint-plugin-jsonc\";`,\n\t\t!options.excludeLintMd && `import markdown from \"eslint-plugin-markdown\";`,\n\t\t`import n from \"eslint-plugin-n\";`,\n\t\t!options.excludeLintPackageJson &&\n\t\t\t`import packageJson from \"eslint-plugin-package-json/configs/recommended\";`,\n\t\t!options.excludeLintPerfectionist &&\n\t\t\t`import perfectionist from \"eslint-plugin-perfectionist\";`,\n\t\t!options.excludeLintRegexp &&\n\t\t\t`import * as regexp from \"eslint-plugin-regexp\";`,\n\t\t!options.excludeLintYml && `import yml from \"eslint-plugin-yml\";`,\n\t\t`import tseslint from \"typescript-eslint\";`,\n\t].filter(Boolean);\n\n\tconst elements = [\n\t\t`eslint.configs.recommended,`,\n\t\t!options.excludeLintESLint && `\tcomments.recommended,`,\n\t\t!options.excludeLintJSDoc &&\n\t\t\t`\tjsdoc.configs[\"flat/contents-typescript-error\"],\n\t\tjsdoc.configs[\"flat/logical-typescript-error\"],\n\t\tjsdoc.configs[\"flat/stylistic-typescript-error\"],`,\n\t\t!options.excludeLintJson && `\tjsonc.configs[\"flat/recommended-with-json\"],`,\n\t\t!options.excludeLintMd && `\tmarkdown.configs.recommended,`,\n\t\t`\tn.configs[\"flat/recommended\"],`,\n\t\t!options.excludeLintPackageJson && `\tpackageJson,`,\n\t\t!options.excludeLintPerfectionist &&\n\t\t\t`\tperfectionist.configs[\"recommended-natural\"],`,\n\t\t!options.excludeLintRegexp && `\tregexp.configs[\"flat/recommended\"],`,\n\t].filter(Boolean);\n\n\tconst ignores = [\n\t\t...(options.excludeTests ? [] : [\"**/*.snap\", \"coverage\"]),\n\t\t\"lib\",\n\t\t\"node_modules\",\n\t\t\"pnpm-lock.yaml\",\n\t]\n\t\t.map((ignore) => JSON.stringify(ignore))\n\t\t.sort();\n\n\tconst rules =\n\t\t!options.excludeLintStylistic &&\n\t\t`{\n\t\t\t// Stylistic concerns that don't interfere with Prettier\n\t\t\t\"logical-assignment-operators\": [\n\t\t\t\t\"error\",\n\t\t\t\t\"always\",\n\t\t\t\t{ enforceForIfStatements: true },\n\t\t\t],\n\t\t\t\"no-useless-rename\": \"error\",\n\t\t\t\"object-shorthand\": \"error\",\n\t\t\t\"operator-assignment\": \"error\",\n\t\t}`;\n\n\treturn await formatTypeScript(`${imports.join(\"\\n\")}\n\nexport default tseslint.config(\n\t{ ignores: [${ignores.join(\", \")}], },\n\t{ linterOptions: { reportUnusedDisableDirectives: \"error\" } },\n\t${elements.join(\"\\n\")}\n\t{\n\t\textends: ${\n\t\t\toptions.excludeLintStylistic\n\t\t\t\t? `tseslint.configs.${tseslintBase}TypeChecked`\n\t\t\t\t: `[\n\t\t\ttseslint.configs.${tseslintBase}TypeChecked,\n\t\t\ttseslint.configs.stylisticTypeChecked,\n\t\t]`\n\t\t},\n\t\tfiles: [\"**/*.js\", \"**/*.ts\"],\n\t\tlanguageOptions: {\n\t\t\tparserOptions: {\n\t\t\t\tprojectService: { allowDefaultProject: [\"*.config.*s\"] },\n\t\t\t\ttsconfigRootDir: import.meta.dirname\n\t\t\t},\n\t\t},${\n\t\t\trules\n\t\t\t\t? `\n\t\trules: ${rules},`\n\t\t\t\t: \"\"\n\t\t}${\n\t\t\toptions.excludeLintPerfectionist\n\t\t\t\t? \"\"\n\t\t\t\t: `\n\t\tsettings: { perfectionist: { partitionByComment: true, type: \"natural\" } },`\n\t\t}\n\t},\n\t{\n\t\textends: [tseslint.configs.disableTypeChecked],\n\t\tfiles: [\"**/*.md/*.ts\"],\n\t\trules: {\n\t\t\t\"n/no-missing-import\": [\n\t\t\t\t\"error\",\n\t\t\t\t{ allowModules: [\"${options.repository}\"] },\n\t\t\t],\n\t\t},\n\t},${\n\t\toptions.excludeTests\n\t\t\t? \"\"\n\t\t\t: `\n\t{\n\t\textends: [vitest.configs.recommended],\n\t\tfiles: [\"**/*.test.*\"],\n\t\trules: { \"@typescript-eslint/no-unsafe-assignment\": \"off\" },\n\t},`\n\t}${\n\t\toptions.excludeLintYml\n\t\t\t? \"\"\n\t\t\t: `\n\t{\n\t\textends: [yml.configs[\"flat/recommended\"], yml.configs[\"flat/prettier\"]],\n\t\tfiles: [\"**/*.{yml,yaml}\"],\n\t\trules: {\n\t\t\t\"yml/file-extension\": [\"error\", { extension: \"yml\" }],\n\t\t\t\"yml/sort-keys\": [\n\t\t\t\t\"error\",\n\t\t\t\t{ order: { type: \"asc\" }, pathPattern: \"^.*$\" },\n\t\t\t],\n\t\t\t\"yml/sort-sequence-values\": [\n\t\t\t\t\"error\",\n\t\t\t\t{ order: { type: \"asc\" }, pathPattern: \"^.*$\" },\n\t\t\t],\n\t\t},\n\t},`\n\t}\n);\n`);\n}\n"],"mappings":"AACA,SAAS,wBAAwB;AAEjC,eAAsB,mBAAmB,SAAkB;AAC1D,QAAM,eAAe,QAAQ,oBAAoB,gBAAgB;AAEjE,QAAM,UAAU;AAAA,IACf,CAAC,QAAQ,qBACR;AAAA,IACD;AAAA,IACA,CAAC,QAAQ,gBAAgB;AAAA,IACzB,CAAC,QAAQ,oBAAoB;AAAA,IAC7B,CAAC,QAAQ,mBAAmB;AAAA,IAC5B,CAAC,QAAQ,iBAAiB;AAAA,IAC1B;AAAA,IACA,CAAC,QAAQ,0BACR;AAAA,IACD,CAAC,QAAQ,4BACR;AAAA,IACD,CAAC,QAAQ,qBACR;AAAA,IACD,CAAC,QAAQ,kBAAkB;AAAA,IAC3B;AAAA,EACD,EAAE,OAAO,OAAO;AAEhB,QAAM,WAAW;AAAA,IAChB;AAAA,IACA,CAAC,QAAQ,qBAAqB;AAAA,IAC9B,CAAC,QAAQ,oBACR;AAAA;AAAA;AAAA,IAGD,CAAC,QAAQ,mBAAmB;AAAA,IAC5B,CAAC,QAAQ,iBAAiB;AAAA,IAC1B;AAAA,IACA,CAAC,QAAQ,0BAA0B;AAAA,IACnC,CAAC,QAAQ,4BACR;AAAA,IACD,CAAC,QAAQ,qBAAqB;AAAA,EAC/B,EAAE,OAAO,OAAO;AAEhB,QAAM,UAAU;AAAA,IACf,GAAI,QAAQ,eAAe,CAAC,IAAI,CAAC,aAAa,UAAU;AAAA,IACxD;AAAA,IACA;AAAA,IACA;AAAA,EACD,EACE,IAAI,CAAC,WAAW,KAAK,UAAU,MAAM,CAAC,EACtC,KAAK;AAEP,QAAM,QACL,CAAC,QAAQ,wBACT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYD,SAAO,MAAM,iBAAiB,GAAG,QAAQ,KAAK,IAAI,CAAC;AAAA;AAAA;AAAA,eAGrC,QAAQ,KAAK,IAAI,CAAC;AAAA;AAAA,GAE9B,SAAS,KAAK,IAAI,CAAC;AAAA;AAAA,aAGnB,QAAQ,uBACL,oBAAoB,YAAY,gBAChC;AAAA,sBACgB,YAAY;AAAA;AAAA,IAGhC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAQC,QACG;AAAA,WACK,KAAK,MACV,EACJ,GACC,QAAQ,2BACL,KACA;AAAA,8EAEJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAQsB,QAAQ,UAAU;AAAA;AAAA;AAAA,KAIxC,QAAQ,eACL,KACA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMJ,GACC,QAAQ,iBACL,KACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAgBJ;AAAA;AAAA,CAEA;AACD;","names":[]}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { readFileSafeAsJson } from "../../../shared/readFileSafeAsJson.js";
|
|
2
|
-
import { formatJson } from "./formatters/formatJson.js";
|
|
3
|
-
async function createKnipConfig() {
|
|
4
|
-
const existingPackageJson = await readFileSafeAsJson(
|
|
5
|
-
"./package.json"
|
|
6
|
-
);
|
|
7
|
-
return await formatJson({
|
|
8
|
-
$schema: `https://unpkg.com/knip@${existingPackageJson?.devDependencies?.knip ?? "latest"}/schema.json`,
|
|
9
|
-
entry: ["src/index.ts!"],
|
|
10
|
-
ignoreExportsUsedInFile: {
|
|
11
|
-
interface: true,
|
|
12
|
-
type: true
|
|
13
|
-
},
|
|
14
|
-
project: ["src/**/*.ts!"]
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
export {
|
|
18
|
-
createKnipConfig
|
|
19
|
-
};
|
|
20
|
-
//# sourceMappingURL=createKnipConfig.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/steps/writing/creation/createKnipConfig.ts"],"sourcesContent":["import { readFileSafeAsJson } from \"../../../shared/readFileSafeAsJson.js\";\nimport { PartialPackageData } from \"../../../shared/types.js\";\nimport { formatJson } from \"./formatters/formatJson.js\";\n\nexport async function createKnipConfig() {\n\tconst existingPackageJson = (await readFileSafeAsJson(\n\t\t\"./package.json\",\n\t)) as null | PartialPackageData;\n\n\treturn await formatJson({\n\t\t$schema: `https://unpkg.com/knip@${existingPackageJson?.devDependencies?.knip ?? \"latest\"}/schema.json`,\n\t\tentry: [\"src/index.ts!\"],\n\t\tignoreExportsUsedInFile: {\n\t\t\tinterface: true,\n\t\t\ttype: true,\n\t\t},\n\t\tproject: [\"src/**/*.ts!\"],\n\t});\n}\n"],"mappings":"AAAA,SAAS,0BAA0B;AAEnC,SAAS,kBAAkB;AAE3B,eAAsB,mBAAmB;AACxC,QAAM,sBAAuB,MAAM;AAAA,IAClC;AAAA,EACD;AAEA,SAAO,MAAM,WAAW;AAAA,IACvB,SAAS,0BAA0B,qBAAqB,iBAAiB,QAAQ,QAAQ;AAAA,IACzF,OAAO,CAAC,eAAe;AAAA,IACvB,yBAAyB;AAAA,MACxB,WAAW;AAAA,MACX,MAAM;AAAA,IACP;AAAA,IACA,SAAS,CAAC,cAAc;AAAA,EACzB,CAAC;AACF;","names":[]}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { formatTypeScript } from "./formatters/formatTypeScript.js";
|
|
2
|
-
async function createTsupConfig(options) {
|
|
3
|
-
return await formatTypeScript(`import { defineConfig } from "tsup";
|
|
4
|
-
|
|
5
|
-
export default defineConfig({
|
|
6
|
-
bundle: false,
|
|
7
|
-
clean: true,
|
|
8
|
-
dts: true,
|
|
9
|
-
entry: ["src/**/*.ts"${options.excludeTests ? "" : `, "!src/**/*.test.*"`}],
|
|
10
|
-
format: "esm",
|
|
11
|
-
outDir: "lib",
|
|
12
|
-
sourcemap: true,
|
|
13
|
-
});
|
|
14
|
-
`);
|
|
15
|
-
}
|
|
16
|
-
export {
|
|
17
|
-
createTsupConfig
|
|
18
|
-
};
|
|
19
|
-
//# sourceMappingURL=createTsupConfig.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/steps/writing/creation/createTsupConfig.ts"],"sourcesContent":["import { Options } from \"../../../shared/types.js\";\nimport { formatTypeScript } from \"./formatters/formatTypeScript.js\";\n\nexport async function createTsupConfig(options: Pick<Options, \"excludeTests\">) {\n\treturn await formatTypeScript(`import { defineConfig } from \"tsup\";\n\nexport default defineConfig({\n\tbundle: false,\n\tclean: true,\n\tdts: true,\n\tentry: [\"src/**/*.ts\"${options.excludeTests ? \"\" : `, \"!src/**/*.test.*\"`}],\n\tformat: \"esm\",\n\toutDir: \"lib\",\n\tsourcemap: true,\n});\n`);\n}\n"],"mappings":"AACA,SAAS,wBAAwB;AAEjC,eAAsB,iBAAiB,SAAwC;AAC9E,SAAO,MAAM,iBAAiB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAMP,QAAQ,eAAe,KAAK,sBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA,CAKzE;AACD;","names":[]}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import jsYaml from "js-yaml";
|
|
2
|
-
function createDotGitHubActions() {
|
|
3
|
-
return {
|
|
4
|
-
prepare: {
|
|
5
|
-
"action.yml": jsYaml.dump({
|
|
6
|
-
description: "Prepares the repo for a typical CI job",
|
|
7
|
-
name: "Prepare",
|
|
8
|
-
runs: {
|
|
9
|
-
steps: [
|
|
10
|
-
{
|
|
11
|
-
uses: "pnpm/action-setup@v4",
|
|
12
|
-
with: { version: 9 }
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
uses: "actions/setup-node@v4",
|
|
16
|
-
with: { cache: "pnpm", "node-version": "20" }
|
|
17
|
-
},
|
|
18
|
-
{
|
|
19
|
-
run: "pnpm install --frozen-lockfile",
|
|
20
|
-
shell: "bash"
|
|
21
|
-
}
|
|
22
|
-
],
|
|
23
|
-
using: "composite"
|
|
24
|
-
}
|
|
25
|
-
}).replaceAll(/\n(\S)/g, "\n\n$1")
|
|
26
|
-
}
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
export {
|
|
30
|
-
createDotGitHubActions
|
|
31
|
-
};
|
|
32
|
-
//# sourceMappingURL=actions.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/steps/writing/creation/dotGitHub/actions.ts"],"sourcesContent":["import jsYaml from \"js-yaml\";\n\nexport function createDotGitHubActions() {\n\treturn {\n\t\tprepare: {\n\t\t\t\"action.yml\": jsYaml\n\t\t\t\t.dump({\n\t\t\t\t\tdescription: \"Prepares the repo for a typical CI job\",\n\t\t\t\t\tname: \"Prepare\",\n\t\t\t\t\truns: {\n\t\t\t\t\t\tsteps: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tuses: \"pnpm/action-setup@v4\",\n\t\t\t\t\t\t\t\twith: { version: 9 },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tuses: \"actions/setup-node@v4\",\n\t\t\t\t\t\t\t\twith: { cache: \"pnpm\", \"node-version\": \"20\" },\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\trun: \"pnpm install --frozen-lockfile\",\n\t\t\t\t\t\t\t\tshell: \"bash\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tusing: \"composite\",\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\t.replaceAll(/\\n(\\S)/g, \"\\n\\n$1\"),\n\t\t},\n\t};\n}\n"],"mappings":"AAAA,OAAO,YAAY;AAEZ,SAAS,yBAAyB;AACxC,SAAO;AAAA,IACN,SAAS;AAAA,MACR,cAAc,OACZ,KAAK;AAAA,QACL,aAAa;AAAA,QACb,MAAM;AAAA,QACN,MAAM;AAAA,UACL,OAAO;AAAA,YACN;AAAA,cACC,MAAM;AAAA,cACN,MAAM,EAAE,SAAS,EAAE;AAAA,YACpB;AAAA,YACA;AAAA,cACC,MAAM;AAAA,cACN,MAAM,EAAE,OAAO,QAAQ,gBAAgB,KAAK;AAAA,YAC7C;AAAA,YACA;AAAA,cACC,KAAK;AAAA,cACL,OAAO;AAAA,YACR;AAAA,UACD;AAAA,UACA,OAAO;AAAA,QACR;AAAA,MACD,CAAC,EACA,WAAW,WAAW,QAAQ;AAAA,IACjC;AAAA,EACD;AACD;","names":[]}
|
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
import { readFileSafe } from "../../../../../shared/readFileSafe.js";
|
|
2
|
-
import { splitIntoSections } from "./splitIntoSections.js";
|
|
3
|
-
const headingAliases = /* @__PURE__ */ new Map([
|
|
4
|
-
["build", "Building"],
|
|
5
|
-
["builds", "Building"],
|
|
6
|
-
["format", "Formatting"],
|
|
7
|
-
["lint", "Linting"],
|
|
8
|
-
["test", "Testing"],
|
|
9
|
-
["tests", "Testing"]
|
|
10
|
-
]);
|
|
11
|
-
async function createDevelopment(options) {
|
|
12
|
-
const existingContents = await readFileSafe(".github/DEVELOPMENT.md", "");
|
|
13
|
-
const newSections = {
|
|
14
|
-
"## Building": `Run [**tsup**](https://tsup.egoist.dev) locally to build source files from \`src/\` into output files in \`lib/\`:
|
|
15
|
-
|
|
16
|
-
\`\`\`shell
|
|
17
|
-
pnpm build
|
|
18
|
-
\`\`\`
|
|
19
|
-
|
|
20
|
-
Add \`--watch\` to run the builder in a watch mode that continuously cleans and recreates \`lib/\` as you save files:
|
|
21
|
-
|
|
22
|
-
\`\`\`shell
|
|
23
|
-
pnpm build --watch
|
|
24
|
-
\`\`\``,
|
|
25
|
-
...options.bin && {
|
|
26
|
-
"### Built App Debugging": `This repository includes a [VS Code launch configuration](https://code.visualstudio.com/docs/editor/debugging) for debugging.
|
|
27
|
-
To debug a \`bin\` app, add a breakpoint to your code, then run _Debug Program_ from the VS Code Debug panel (or press F5).
|
|
28
|
-
VS Code will automatically run the \`build\` task in the background before running \`${options.bin}\`.`
|
|
29
|
-
},
|
|
30
|
-
"## Formatting": `[Prettier](https://prettier.io) is used to format code.
|
|
31
|
-
It should be applied automatically when you save files in VS Code or make a Git commit.
|
|
32
|
-
|
|
33
|
-
To manually reformat all files, you can run:
|
|
34
|
-
|
|
35
|
-
\`\`\`shell
|
|
36
|
-
pnpm format --write
|
|
37
|
-
\`\`\``,
|
|
38
|
-
"## Linting": `${createLintingSection(options)}
|
|
39
|
-
|
|
40
|
-
\`\`\`shell
|
|
41
|
-
pnpm run lint --fix
|
|
42
|
-
\`\`\`
|
|
43
|
-
|
|
44
|
-
Note that you'll need to run \`pnpm build\` before \`pnpm lint\` so that lint rules which check the file system can pick up on any built files.`,
|
|
45
|
-
...!options.excludeTests && {
|
|
46
|
-
"## Testing": `[Vitest](https://vitest.dev) is used for tests.
|
|
47
|
-
You can run it locally on the command-line:
|
|
48
|
-
|
|
49
|
-
\`\`\`shell
|
|
50
|
-
pnpm run test
|
|
51
|
-
\`\`\`
|
|
52
|
-
|
|
53
|
-
Add the \`--coverage\` flag to compute test coverage and place reports in the \`coverage/\` directory:
|
|
54
|
-
|
|
55
|
-
\`\`\`shell
|
|
56
|
-
pnpm run test --coverage
|
|
57
|
-
\`\`\`
|
|
58
|
-
|
|
59
|
-
Note that [console-fail-test](https://github.com/JoshuaKGoldberg/console-fail-test) is enabled for all test runs.
|
|
60
|
-
Calls to \`console.log\`, \`console.warn\`, and other console methods will cause a test to fail.`,
|
|
61
|
-
// Debugging tests are intentionally put second
|
|
62
|
-
"### Debugging Tests": `This repository includes a [VS Code launch configuration](https://code.visualstudio.com/docs/editor/debugging) for debugging unit tests.
|
|
63
|
-
To launch it, open a test file, then run _Debug Current Test File_ from the VS Code Debug panel (or press F5).`
|
|
64
|
-
},
|
|
65
|
-
"## Type Checking": `You should be able to see suggestions from [TypeScript](https://typescriptlang.org) in your editor for all open files.
|
|
66
|
-
|
|
67
|
-
However, it can be useful to run the TypeScript command-line (\`tsc\`) to type check all files in \`src/\`:
|
|
68
|
-
|
|
69
|
-
\`\`\`shell
|
|
70
|
-
pnpm tsc
|
|
71
|
-
\`\`\`
|
|
72
|
-
|
|
73
|
-
Add \`--watch\` to keep the type checker running in a watch mode that updates the display as you save files:
|
|
74
|
-
|
|
75
|
-
\`\`\`shell
|
|
76
|
-
pnpm tsc --watch
|
|
77
|
-
\`\`\``
|
|
78
|
-
};
|
|
79
|
-
const newSectionHeadings = /* @__PURE__ */ new Set([
|
|
80
|
-
"Development",
|
|
81
|
-
Object.keys(newSections).map((key) => key.replace(/^#* /, ""))
|
|
82
|
-
]);
|
|
83
|
-
const existingSectionsSplit = splitIntoSections(existingContents);
|
|
84
|
-
const preservedSectionsSplit = existingSectionsSplit.filter(([key]) => {
|
|
85
|
-
const keyText = key.replace(/^#* /, "");
|
|
86
|
-
return !newSectionHeadings.has(
|
|
87
|
-
headingAliases.get(keyText.toLowerCase()) ?? keyText
|
|
88
|
-
);
|
|
89
|
-
});
|
|
90
|
-
const preservedSections = Object.fromEntries(preservedSectionsSplit);
|
|
91
|
-
const sectionLines = [];
|
|
92
|
-
const seen = /* @__PURE__ */ new Set();
|
|
93
|
-
for (const sections of [newSections, preservedSections]) {
|
|
94
|
-
for (const heading in sections) {
|
|
95
|
-
if (seen.has(heading)) {
|
|
96
|
-
continue;
|
|
97
|
-
}
|
|
98
|
-
seen.add(heading);
|
|
99
|
-
const contents = sections[heading];
|
|
100
|
-
sectionLines.push("");
|
|
101
|
-
sectionLines.push(heading);
|
|
102
|
-
sectionLines.push("");
|
|
103
|
-
sectionLines.push(contents);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
const result = `# Development
|
|
107
|
-
${options.guide ? `
|
|
108
|
-
> If you'd like a more guided walkthrough, see [${options.guide.title}](${options.guide.href}).
|
|
109
|
-
> It'll walk you through the common activities you'll need to contribute.
|
|
110
|
-
` : ""}
|
|
111
|
-
After [forking the repo from GitHub](https://help.github.com/articles/fork-a-repo) and [installing pnpm](https://pnpm.io/installation):
|
|
112
|
-
|
|
113
|
-
\`\`\`shell
|
|
114
|
-
git clone https://github.com/<your-name-here>/${options.repository}
|
|
115
|
-
cd ${options.repository}
|
|
116
|
-
pnpm install
|
|
117
|
-
\`\`\`
|
|
118
|
-
|
|
119
|
-
> This repository includes a list of suggested VS Code extensions.
|
|
120
|
-
> It's a good idea to use [VS Code](https://code.visualstudio.com) and accept its suggestion to install them, as they'll help with development.
|
|
121
|
-
${sectionLines.join("\n")}
|
|
122
|
-
`;
|
|
123
|
-
return result;
|
|
124
|
-
}
|
|
125
|
-
function createLintingSection(options) {
|
|
126
|
-
const lintLines = [
|
|
127
|
-
!options.excludeLintKnip && `- \`pnpm lint:knip\` ([knip](https://github.com/webpro/knip)): Detects unused files, dependencies, and code exports`,
|
|
128
|
-
!options.excludeLintMd && `- \`pnpm lint:md\` ([Markdownlint](https://github.com/DavidAnson/markdownlint)): Checks Markdown source files`,
|
|
129
|
-
!options.excludeLintPackages && `- \`pnpm lint:packages\` ([pnpm dedupe --check](https://pnpm.io/cli/dedupe)): Checks for unnecessarily duplicated packages in the \`pnpm-lock.yml\` file`,
|
|
130
|
-
!options.excludeLintSpelling && `- \`pnpm lint:spelling\` ([cspell](https://cspell.org)): Spell checks across all source files`
|
|
131
|
-
].filter(Boolean);
|
|
132
|
-
return lintLines.length ? [
|
|
133
|
-
`This package includes several forms of linting to enforce consistent code quality and styling.`,
|
|
134
|
-
`Each should be shown in VS Code, and can be run manually on the command-line:`,
|
|
135
|
-
``,
|
|
136
|
-
`- \`pnpm lint\` ([ESLint](https://eslint.org) with [typescript-eslint](https://typescript-eslint.io)): Lints JavaScript and TypeScript source files`,
|
|
137
|
-
...lintLines,
|
|
138
|
-
``,
|
|
139
|
-
`Read the individual documentation for each linter to understand how it can be configured and used best.`,
|
|
140
|
-
``,
|
|
141
|
-
`For example, ESLint can be run with \`--fix\` to auto-fix some lint rule complaints:`
|
|
142
|
-
].join("\n") : `[ESLint](https://eslint.org) is used with with [typescript-eslint](https://typescript-eslint.io)) to lint JavaScript and TypeScript source files.
|
|
143
|
-
You can run it locally on the command-line:
|
|
144
|
-
|
|
145
|
-
\`\`\`shell
|
|
146
|
-
pnpm run lint
|
|
147
|
-
\`\`\`
|
|
148
|
-
|
|
149
|
-
ESLint can be run with \`--fix\` to auto-fix some lint rule complaints:`;
|
|
150
|
-
}
|
|
151
|
-
export {
|
|
152
|
-
createDevelopment
|
|
153
|
-
};
|
|
154
|
-
//# sourceMappingURL=index.js.map
|