create-typescript-app 2.45.0 → 2.46.1
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/lib/base.d.ts +170 -167
- package/lib/base.d.ts.map +1 -0
- package/lib/base.js +132 -204
- package/lib/base.js.map +1 -0
- package/lib/blocks/actions/resolveUses.d.ts +5 -2
- package/lib/blocks/actions/resolveUses.d.ts.map +1 -0
- package/lib/blocks/actions/resolveUses.js +13 -20
- package/lib/blocks/actions/resolveUses.js.map +1 -0
- package/lib/blocks/actions/steps.d.ts +25 -21
- package/lib/blocks/actions/steps.d.ts.map +1 -0
- package/lib/blocks/actions/steps.js +18 -23
- package/lib/blocks/actions/steps.js.map +1 -0
- package/lib/blocks/bin/getPrimaryBin.d.ts +4 -0
- package/lib/blocks/bin/getPrimaryBin.d.ts.map +1 -0
- package/lib/blocks/bin/getPrimaryBin.js +6 -4
- package/lib/blocks/bin/getPrimaryBin.js.map +1 -0
- package/lib/blocks/blockAllContributors.d.ts +70 -67
- package/lib/blocks/blockAllContributors.d.ts.map +1 -0
- package/lib/blocks/blockAllContributors.js +122 -170
- package/lib/blocks/blockAllContributors.js.map +1 -0
- package/lib/blocks/blockAreTheTypesWrong.d.ts +70 -67
- package/lib/blocks/blockAreTheTypesWrong.d.ts.map +1 -0
- package/lib/blocks/blockAreTheTypesWrong.js +13 -25
- package/lib/blocks/blockAreTheTypesWrong.js.map +1 -0
- package/lib/blocks/blockCSpell.d.ts +72 -69
- package/lib/blocks/blockCSpell.d.ts.map +1 -0
- package/lib/blocks/blockCSpell.js +68 -105
- package/lib/blocks/blockCSpell.js.map +1 -0
- package/lib/blocks/blockCTATransitions.d.ts +70 -67
- package/lib/blocks/blockCTATransitions.d.ts.map +1 -0
- package/lib/blocks/blockCTATransitions.js +108 -158
- package/lib/blocks/blockCTATransitions.js.map +1 -0
- package/lib/blocks/blockCodecov.d.ts +71 -68
- package/lib/blocks/blockCodecov.d.ts.map +1 -0
- package/lib/blocks/blockCodecov.js +48 -75
- package/lib/blocks/blockCodecov.js.map +1 -0
- package/lib/blocks/blockContributingDocs.d.ts +70 -67
- package/lib/blocks/blockContributingDocs.d.ts.map +1 -0
- package/lib/blocks/blockContributingDocs.js +14 -21
- package/lib/blocks/blockContributingDocs.js.map +1 -0
- package/lib/blocks/blockContributorCovenant.d.ts +70 -67
- package/lib/blocks/blockContributorCovenant.d.ts.map +1 -0
- package/lib/blocks/blockContributorCovenant.js +23 -37
- package/lib/blocks/blockContributorCovenant.js.map +1 -0
- package/lib/blocks/blockDevelopmentDocs.d.ts +83 -80
- package/lib/blocks/blockDevelopmentDocs.d.ts.map +1 -0
- package/lib/blocks/blockDevelopmentDocs.js +64 -74
- package/lib/blocks/blockDevelopmentDocs.js.map +1 -0
- package/lib/blocks/blockESLint.d.ts +95 -92
- package/lib/blocks/blockESLint.d.ts.map +1 -0
- package/lib/blocks/blockESLint.js +169 -263
- package/lib/blocks/blockESLint.js.map +1 -0
- package/lib/blocks/blockESLintComments.d.ts +70 -67
- package/lib/blocks/blockESLintComments.d.ts.map +1 -0
- package/lib/blocks/blockESLintComments.js +16 -21
- package/lib/blocks/blockESLintComments.js.map +1 -0
- package/lib/blocks/blockESLintJSDoc.d.ts +70 -67
- package/lib/blocks/blockESLintJSDoc.d.ts.map +1 -0
- package/lib/blocks/blockESLintJSDoc.js +20 -20
- package/lib/blocks/blockESLintJSDoc.js.map +1 -0
- package/lib/blocks/blockESLintJSONC.d.ts +70 -67
- package/lib/blocks/blockESLintJSONC.d.ts.map +1 -0
- package/lib/blocks/blockESLintJSONC.js +16 -16
- package/lib/blocks/blockESLintJSONC.js.map +1 -0
- package/lib/blocks/blockESLintMarkdown.d.ts +70 -67
- package/lib/blocks/blockESLintMarkdown.d.ts.map +1 -0
- package/lib/blocks/blockESLintMarkdown.js +17 -22
- package/lib/blocks/blockESLintMarkdown.js.map +1 -0
- package/lib/blocks/blockESLintMoreStyling.d.ts +70 -67
- package/lib/blocks/blockESLintMoreStyling.d.ts.map +1 -0
- package/lib/blocks/blockESLintMoreStyling.js +22 -30
- package/lib/blocks/blockESLintMoreStyling.js.map +1 -0
- package/lib/blocks/blockESLintNode.d.ts +70 -67
- package/lib/blocks/blockESLintNode.d.ts.map +1 -0
- package/lib/blocks/blockESLintNode.js +20 -23
- package/lib/blocks/blockESLintNode.js.map +1 -0
- package/lib/blocks/blockESLintPackageJson.d.ts +70 -67
- package/lib/blocks/blockESLintPackageJson.d.ts.map +1 -0
- package/lib/blocks/blockESLintPackageJson.js +26 -49
- package/lib/blocks/blockESLintPackageJson.js.map +1 -0
- package/lib/blocks/blockESLintPerfectionist.d.ts +70 -67
- package/lib/blocks/blockESLintPerfectionist.d.ts.map +1 -0
- package/lib/blocks/blockESLintPerfectionist.js +20 -27
- package/lib/blocks/blockESLintPerfectionist.js.map +1 -0
- package/lib/blocks/blockESLintPlugin.d.ts +71 -68
- package/lib/blocks/blockESLintPlugin.d.ts.map +1 -0
- package/lib/blocks/blockESLintPlugin.js +89 -137
- package/lib/blocks/blockESLintPlugin.js.map +1 -0
- package/lib/blocks/blockESLintRegexp.d.ts +70 -67
- package/lib/blocks/blockESLintRegexp.d.ts.map +1 -0
- package/lib/blocks/blockESLintRegexp.js +16 -18
- package/lib/blocks/blockESLintRegexp.js.map +1 -0
- package/lib/blocks/blockESLintYML.d.ts +70 -67
- package/lib/blocks/blockESLintYML.d.ts.map +1 -0
- package/lib/blocks/blockESLintYML.js +30 -41
- package/lib/blocks/blockESLintYML.js.map +1 -0
- package/lib/blocks/blockExampleFiles.d.ts +72 -69
- package/lib/blocks/blockExampleFiles.d.ts.map +1 -0
- package/lib/blocks/blockExampleFiles.js +22 -29
- package/lib/blocks/blockExampleFiles.js.map +1 -0
- package/lib/blocks/blockFunding.d.ts +70 -67
- package/lib/blocks/blockFunding.d.ts.map +1 -0
- package/lib/blocks/blockFunding.js +10 -15
- package/lib/blocks/blockFunding.js.map +1 -0
- package/lib/blocks/blockGitHubActionsCI.d.ts +85 -82
- package/lib/blocks/blockGitHubActionsCI.d.ts.map +1 -0
- package/lib/blocks/blockGitHubActionsCI.js +83 -134
- package/lib/blocks/blockGitHubActionsCI.js.map +1 -0
- package/lib/blocks/blockGitHubApps.d.ts +74 -71
- package/lib/blocks/blockGitHubApps.d.ts.map +1 -0
- package/lib/blocks/blockGitHubApps.js +15 -24
- package/lib/blocks/blockGitHubApps.js.map +1 -0
- package/lib/blocks/blockGitHubIssueTemplates.d.ts +70 -67
- package/lib/blocks/blockGitHubIssueTemplates.d.ts.map +1 -0
- package/lib/blocks/blockGitHubIssueTemplates.js +185 -204
- package/lib/blocks/blockGitHubIssueTemplates.js.map +1 -0
- package/lib/blocks/blockGitHubPRTemplate.d.ts +70 -67
- package/lib/blocks/blockGitHubPRTemplate.d.ts.map +1 -0
- package/lib/blocks/blockGitHubPRTemplate.js +11 -16
- package/lib/blocks/blockGitHubPRTemplate.js.map +1 -0
- package/lib/blocks/blockGitignore.d.ts +71 -68
- package/lib/blocks/blockGitignore.d.ts.map +1 -0
- package/lib/blocks/blockGitignore.js +13 -18
- package/lib/blocks/blockGitignore.js.map +1 -0
- package/lib/blocks/blockKnip.d.ts +73 -70
- package/lib/blocks/blockKnip.d.ts.map +1 -0
- package/lib/blocks/blockKnip.js +60 -88
- package/lib/blocks/blockKnip.js.map +1 -0
- package/lib/blocks/blockMITLicense.d.ts +70 -67
- package/lib/blocks/blockMITLicense.d.ts.map +1 -0
- package/lib/blocks/blockMITLicense.js +21 -31
- package/lib/blocks/blockMITLicense.js.map +1 -0
- package/lib/blocks/blockMain.d.ts +72 -69
- package/lib/blocks/blockMain.d.ts.map +1 -0
- package/lib/blocks/blockMain.js +17 -29
- package/lib/blocks/blockMain.js.map +1 -0
- package/lib/blocks/blockMarkdownlint.d.ts +71 -68
- package/lib/blocks/blockMarkdownlint.d.ts.map +1 -0
- package/lib/blocks/blockMarkdownlint.js +55 -94
- package/lib/blocks/blockMarkdownlint.js.map +1 -0
- package/lib/blocks/blockNcc.d.ts +71 -68
- package/lib/blocks/blockNcc.d.ts.map +1 -0
- package/lib/blocks/blockNcc.js +44 -72
- package/lib/blocks/blockNcc.js.map +1 -0
- package/lib/blocks/blockNvmrc.d.ts +70 -67
- package/lib/blocks/blockNvmrc.d.ts.map +1 -0
- package/lib/blocks/blockNvmrc.js +16 -21
- package/lib/blocks/blockNvmrc.js.map +1 -0
- package/lib/blocks/blockOctoGuide.d.ts +71 -68
- package/lib/blocks/blockOctoGuide.d.ts.map +1 -0
- package/lib/blocks/blockOctoGuide.js +65 -93
- package/lib/blocks/blockOctoGuide.js.map +1 -0
- package/lib/blocks/blockOctoGuideStrict.d.ts +70 -67
- package/lib/blocks/blockOctoGuideStrict.d.ts.map +1 -0
- package/lib/blocks/blockOctoGuideStrict.js +10 -15
- package/lib/blocks/blockOctoGuideStrict.js.map +1 -0
- package/lib/blocks/blockPackageJson.d.ts +144 -141
- package/lib/blocks/blockPackageJson.d.ts.map +1 -0
- package/lib/blocks/blockPackageJson.js +82 -113
- package/lib/blocks/blockPackageJson.js.map +1 -0
- package/lib/blocks/blockPnpmDedupe.d.ts +70 -67
- package/lib/blocks/blockPnpmDedupe.d.ts.map +1 -0
- package/lib/blocks/blockPnpmDedupe.js +24 -49
- package/lib/blocks/blockPnpmDedupe.js.map +1 -0
- package/lib/blocks/blockPrettier.d.ts +79 -76
- package/lib/blocks/blockPrettier.d.ts.map +1 -0
- package/lib/blocks/blockPrettier.js +82 -116
- package/lib/blocks/blockPrettier.js.map +1 -0
- package/lib/blocks/blockPrettierPluginCurly.d.ts +70 -67
- package/lib/blocks/blockPrettierPluginCurly.d.ts.map +1 -0
- package/lib/blocks/blockPrettierPluginCurly.js +10 -15
- package/lib/blocks/blockPrettierPluginCurly.js.map +1 -0
- package/lib/blocks/blockPrettierPluginPackageJson.d.ts +70 -67
- package/lib/blocks/blockPrettierPluginPackageJson.d.ts.map +1 -0
- package/lib/blocks/blockPrettierPluginPackageJson.js +10 -15
- package/lib/blocks/blockPrettierPluginPackageJson.js.map +1 -0
- package/lib/blocks/blockPrettierPluginSh.d.ts +70 -67
- package/lib/blocks/blockPrettierPluginSh.d.ts.map +1 -0
- package/lib/blocks/blockPrettierPluginSh.js +10 -15
- package/lib/blocks/blockPrettierPluginSh.js.map +1 -0
- package/lib/blocks/blockREADME.d.ts +82 -79
- package/lib/blocks/blockREADME.d.ts.map +1 -0
- package/lib/blocks/blockREADME.js +46 -60
- package/lib/blocks/blockREADME.js.map +1 -0
- package/lib/blocks/blockReleaseIt.d.ts +74 -71
- package/lib/blocks/blockReleaseIt.d.ts.map +1 -0
- package/lib/blocks/blockReleaseIt.js +152 -181
- package/lib/blocks/blockReleaseIt.js.map +1 -0
- package/lib/blocks/blockRemoveDependencies.d.ts +71 -68
- package/lib/blocks/blockRemoveDependencies.d.ts.map +1 -0
- package/lib/blocks/blockRemoveDependencies.js +18 -27
- package/lib/blocks/blockRemoveDependencies.js.map +1 -0
- package/lib/blocks/blockRemoveFiles.d.ts +71 -68
- package/lib/blocks/blockRemoveFiles.d.ts.map +1 -0
- package/lib/blocks/blockRemoveFiles.js +19 -28
- package/lib/blocks/blockRemoveFiles.js.map +1 -0
- package/lib/blocks/blockRemoveWorkflows.d.ts +71 -68
- package/lib/blocks/blockRemoveWorkflows.d.ts.map +1 -0
- package/lib/blocks/blockRemoveWorkflows.js +16 -27
- package/lib/blocks/blockRemoveWorkflows.js.map +1 -0
- package/lib/blocks/blockRenovate.d.ts +71 -68
- package/lib/blocks/blockRenovate.d.ts.map +1 -0
- package/lib/blocks/blockRenovate.js +37 -52
- package/lib/blocks/blockRenovate.js.map +1 -0
- package/lib/blocks/blockRepositoryBranchRuleset.d.ts +71 -68
- package/lib/blocks/blockRepositoryBranchRuleset.d.ts.map +1 -0
- package/lib/blocks/blockRepositoryBranchRuleset.js +77 -107
- package/lib/blocks/blockRepositoryBranchRuleset.js.map +1 -0
- package/lib/blocks/blockRepositoryLabels.d.ts +70 -67
- package/lib/blocks/blockRepositoryLabels.d.ts.map +1 -0
- package/lib/blocks/blockRepositoryLabels.js +51 -58
- package/lib/blocks/blockRepositoryLabels.js.map +1 -0
- package/lib/blocks/blockRepositorySecrets.d.ts +74 -71
- package/lib/blocks/blockRepositorySecrets.d.ts.map +1 -0
- package/lib/blocks/blockRepositorySecrets.js +15 -26
- package/lib/blocks/blockRepositorySecrets.js.map +1 -0
- package/lib/blocks/blockRepositorySettings.d.ts +70 -67
- package/lib/blocks/blockRepositorySettings.d.ts.map +1 -0
- package/lib/blocks/blockRepositorySettings.js +32 -39
- package/lib/blocks/blockRepositorySettings.js.map +1 -0
- package/lib/blocks/blockSecurityDocs.d.ts +70 -67
- package/lib/blocks/blockSecurityDocs.d.ts.map +1 -0
- package/lib/blocks/blockSecurityDocs.js +11 -16
- package/lib/blocks/blockSecurityDocs.js.map +1 -0
- package/lib/blocks/blockTSDown.d.ts +79 -0
- package/lib/blocks/blockTSDown.d.ts.map +1 -0
- package/lib/blocks/blockTSDown.js +111 -0
- package/lib/blocks/blockTSDown.js.map +1 -0
- package/lib/blocks/blockTemplatedWith.d.ts +70 -67
- package/lib/blocks/blockTemplatedWith.d.ts.map +1 -0
- package/lib/blocks/blockTemplatedWith.js +12 -20
- package/lib/blocks/blockTemplatedWith.js.map +1 -0
- package/lib/blocks/blockTypeScript.d.ts +181 -178
- package/lib/blocks/blockTypeScript.d.ts.map +1 -0
- package/lib/blocks/blockTypeScript.js +94 -127
- package/lib/blocks/blockTypeScript.js.map +1 -0
- package/lib/blocks/blockVSCode.d.ts +78 -75
- package/lib/blocks/blockVSCode.d.ts.map +1 -0
- package/lib/blocks/blockVSCode.js +51 -81
- package/lib/blocks/blockVSCode.js.map +1 -0
- package/lib/blocks/blockVitest.d.ts +86 -83
- package/lib/blocks/blockVitest.d.ts.map +1 -0
- package/lib/blocks/blockVitest.js +115 -168
- package/lib/blocks/blockVitest.js.map +1 -0
- package/lib/blocks/blockWebExt.d.ts +70 -67
- package/lib/blocks/blockWebExt.d.ts.map +1 -0
- package/lib/blocks/blockWebExt.js +59 -83
- package/lib/blocks/blockWebExt.js.map +1 -0
- package/lib/blocks/eslint/blockESLintIntake.d.ts +9 -6
- package/lib/blocks/eslint/blockESLintIntake.d.ts.map +1 -0
- package/lib/blocks/eslint/blockESLintIntake.js +84 -111
- package/lib/blocks/eslint/blockESLintIntake.js.map +1 -0
- package/lib/blocks/eslint/blockESLintPluginIntake.d.ts +5 -2
- package/lib/blocks/eslint/blockESLintPluginIntake.d.ts.map +1 -0
- package/lib/blocks/eslint/blockESLintPluginIntake.js +26 -44
- package/lib/blocks/eslint/blockESLintPluginIntake.js.map +1 -0
- package/lib/blocks/eslint/schemas.d.ts +77 -73
- package/lib/blocks/eslint/schemas.d.ts.map +1 -0
- package/lib/blocks/eslint/schemas.js +31 -36
- package/lib/blocks/eslint/schemas.js.map +1 -0
- package/lib/blocks/files/createJobName.d.ts +4 -0
- package/lib/blocks/files/createJobName.d.ts.map +1 -0
- package/lib/blocks/files/createJobName.js +6 -4
- package/lib/blocks/files/createJobName.js.map +1 -0
- package/lib/blocks/files/createMultiWorkflowFile.d.ts +21 -14
- package/lib/blocks/files/createMultiWorkflowFile.d.ts.map +1 -0
- package/lib/blocks/files/createMultiWorkflowFile.js +27 -35
- package/lib/blocks/files/createMultiWorkflowFile.js.map +1 -0
- package/lib/blocks/files/createSoloWorkflowFile.d.ts +61 -52
- package/lib/blocks/files/createSoloWorkflowFile.d.ts.map +1 -0
- package/lib/blocks/files/createSoloWorkflowFile.js +19 -25
- package/lib/blocks/files/createSoloWorkflowFile.js.map +1 -0
- package/lib/blocks/files/formatIgnoreFile.d.ts +4 -0
- package/lib/blocks/files/formatIgnoreFile.d.ts.map +1 -0
- package/lib/blocks/files/formatIgnoreFile.js +6 -4
- package/lib/blocks/files/formatIgnoreFile.js.map +1 -0
- package/lib/blocks/files/formatWorkflowYaml.d.ts +4 -0
- package/lib/blocks/files/formatWorkflowYaml.d.ts.map +1 -0
- package/lib/blocks/files/formatWorkflowYaml.js +7 -4
- package/lib/blocks/files/formatWorkflowYaml.js.map +1 -0
- package/lib/blocks/files/formatYaml.d.ts +4 -0
- package/lib/blocks/files/formatYaml.d.ts.map +1 -0
- package/lib/blocks/files/formatYaml.js +16 -21
- package/lib/blocks/files/formatYaml.js.map +1 -0
- package/lib/blocks/files/removeUsesQuotes.d.ts +4 -0
- package/lib/blocks/files/removeUsesQuotes.d.ts.map +1 -0
- package/lib/blocks/files/removeUsesQuotes.js +6 -7
- package/lib/blocks/files/removeUsesQuotes.js.map +1 -0
- package/lib/blocks/getInstallationSuggestions.d.ts +4 -0
- package/lib/blocks/getInstallationSuggestions.d.ts.map +1 -0
- package/lib/blocks/getInstallationSuggestions.js +11 -12
- package/lib/blocks/getInstallationSuggestions.js.map +1 -0
- package/lib/blocks/index.d.ts +3646 -3644
- package/lib/blocks/index.d.ts.map +1 -0
- package/lib/blocks/index.js +83 -177
- package/lib/blocks/index.js.map +1 -0
- package/lib/blocks/intake/intakeFile.d.ts +5 -1
- package/lib/blocks/intake/intakeFile.d.ts.map +1 -0
- package/lib/blocks/intake/intakeFile.js +12 -18
- package/lib/blocks/intake/intakeFile.js.map +1 -0
- package/lib/blocks/intake/intakeFileAsJson.d.ts +5 -1
- package/lib/blocks/intake/intakeFileAsJson.d.ts.map +1 -0
- package/lib/blocks/intake/intakeFileAsJson.js +13 -10
- package/lib/blocks/intake/intakeFileAsJson.js.map +1 -0
- package/lib/blocks/intake/intakeFileAsYaml.d.ts +5 -1
- package/lib/blocks/intake/intakeFileAsYaml.d.ts.map +1 -0
- package/lib/blocks/intake/intakeFileAsYaml.js +13 -10
- package/lib/blocks/intake/intakeFileAsYaml.js.map +1 -0
- package/lib/blocks/intake/intakeFileDefineConfig.d.ts +5 -1
- package/lib/blocks/intake/intakeFileDefineConfig.d.ts.map +1 -0
- package/lib/blocks/intake/intakeFileDefineConfig.js +20 -23
- package/lib/blocks/intake/intakeFileDefineConfig.js.map +1 -0
- package/lib/blocks/options.fakes.d.ts +23 -20
- package/lib/blocks/options.fakes.d.ts.map +1 -0
- package/lib/blocks/options.fakes.js +19 -23
- package/lib/blocks/options.fakes.js.map +1 -0
- package/lib/blocks/outcomeLabels.d.ts +12 -9
- package/lib/blocks/outcomeLabels.d.ts.map +1 -0
- package/lib/blocks/outcomeLabels.js +93 -92
- package/lib/blocks/outcomeLabels.js.map +1 -0
- package/lib/blocks/phases.d.ts +9 -6
- package/lib/blocks/phases.d.ts.map +1 -0
- package/lib/blocks/phases.js +10 -8
- package/lib/blocks/phases.js.map +1 -0
- package/lib/constants.d.ts +8 -5
- package/lib/constants.d.ts.map +1 -0
- package/lib/constants.js +9 -9
- package/lib/constants.js.map +1 -0
- package/lib/data/contributions.d.ts +4 -0
- package/lib/data/contributions.d.ts.map +1 -0
- package/lib/data/contributions.js +13 -11
- package/lib/data/contributions.js.map +1 -0
- package/lib/data/packageData.d.ts +7 -166
- package/lib/data/packageData.d.ts.map +1 -0
- package/lib/data/packageData.js +16 -24
- package/lib/data/packageData.js.map +1 -0
- package/lib/index.d.ts +290 -288
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +61 -7
- package/lib/index.js.map +1 -0
- package/lib/inputs/inputFromDirectory.d.ts +8 -4
- package/lib/inputs/inputFromDirectory.d.ts.map +1 -0
- package/lib/inputs/inputFromDirectory.js +11 -10
- package/lib/inputs/inputFromDirectory.js.map +1 -0
- package/lib/inputs/inputFromOctokit.d.ts +9 -5
- package/lib/inputs/inputFromOctokit.d.ts.map +1 -0
- package/lib/inputs/inputFromOctokit.js +23 -24
- package/lib/inputs/inputFromOctokit.js.map +1 -0
- package/lib/options/readAccess.d.ts +5 -1
- package/lib/options/readAccess.d.ts.map +1 -0
- package/lib/options/readAccess.js +6 -4
- package/lib/options/readAccess.js.map +1 -0
- package/lib/options/readAllContributors.d.ts +6 -2
- package/lib/options/readAllContributors.d.ts.map +1 -0
- package/lib/options/readAllContributors.js +17 -22
- package/lib/options/readAllContributors.js.map +1 -0
- package/lib/options/readAuthor.d.ts +6 -3
- package/lib/options/readAuthor.d.ts.map +1 -0
- package/lib/options/readAuthor.js +6 -4
- package/lib/options/readAuthor.js.map +1 -0
- package/lib/options/readBin.d.ts +5 -1
- package/lib/options/readBin.d.ts.map +1 -0
- package/lib/options/readBin.js +8 -10
- package/lib/options/readBin.js.map +1 -0
- package/lib/options/readDescription.d.ts +5 -1
- package/lib/options/readDescription.d.ts.map +1 -0
- package/lib/options/readDescription.js +16 -23
- package/lib/options/readDescription.js.map +1 -0
- package/lib/options/readDescriptionFromReadme.d.ts +4 -0
- package/lib/options/readDescriptionFromReadme.d.ts.map +1 -0
- package/lib/options/readDescriptionFromReadme.js +11 -13
- package/lib/options/readDescriptionFromReadme.js.map +1 -0
- package/lib/options/readDevelopmentDocumentation.d.ts +5 -1
- package/lib/options/readDevelopmentDocumentation.d.ts.map +1 -0
- package/lib/options/readDevelopmentDocumentation.js +18 -21
- package/lib/options/readDevelopmentDocumentation.js.map +1 -0
- package/lib/options/readDocumentation.d.ts +5 -2
- package/lib/options/readDocumentation.d.ts.map +1 -0
- package/lib/options/readDocumentation.js +21 -19
- package/lib/options/readDocumentation.js.map +1 -0
- package/lib/options/readEmailFromCodeOfConduct.d.ts +5 -1
- package/lib/options/readEmailFromCodeOfConduct.d.ts.map +1 -0
- package/lib/options/readEmailFromCodeOfConduct.js +8 -7
- package/lib/options/readEmailFromCodeOfConduct.js.map +1 -0
- package/lib/options/readEmailFromGit.d.ts +5 -1
- package/lib/options/readEmailFromGit.d.ts.map +1 -0
- package/lib/options/readEmailFromGit.js +7 -4
- package/lib/options/readEmailFromGit.js.map +1 -0
- package/lib/options/readEmailFromNpm.d.ts +6 -3
- package/lib/options/readEmailFromNpm.d.ts.map +1 -0
- package/lib/options/readEmailFromNpm.js +6 -4
- package/lib/options/readEmailFromNpm.js.map +1 -0
- package/lib/options/readEmails.d.ts +7 -4
- package/lib/options/readEmails.d.ts.map +1 -0
- package/lib/options/readEmails.js +11 -6
- package/lib/options/readEmails.js.map +1 -0
- package/lib/options/readEmoji.d.ts +4 -0
- package/lib/options/readEmoji.d.ts.map +1 -0
- package/lib/options/readEmoji.js +6 -4
- package/lib/options/readEmoji.js.map +1 -0
- package/lib/options/readExistingLabels.d.ts +8 -4
- package/lib/options/readExistingLabels.d.ts.map +1 -0
- package/lib/options/readExistingLabels.js +21 -20
- package/lib/options/readExistingLabels.js.map +1 -0
- package/lib/options/readFileAsJson.d.ts +4 -0
- package/lib/options/readFileAsJson.d.ts.map +1 -0
- package/lib/options/readFileAsJson.js +11 -11
- package/lib/options/readFileAsJson.js.map +1 -0
- package/lib/options/readFileSafe.d.ts +4 -0
- package/lib/options/readFileSafe.d.ts.map +1 -0
- package/lib/options/readFileSafe.js +11 -8
- package/lib/options/readFileSafe.js.map +1 -0
- package/lib/options/readFunding.d.ts +5 -1
- package/lib/options/readFunding.d.ts.map +1 -0
- package/lib/options/readFunding.js +8 -7
- package/lib/options/readFunding.js.map +1 -0
- package/lib/options/readGitDefaults.d.ts +6 -2
- package/lib/options/readGitDefaults.d.ts.map +1 -0
- package/lib/options/readGitDefaults.js +9 -8
- package/lib/options/readGitDefaults.js.map +1 -0
- package/lib/options/readGuide.d.ts +7 -3
- package/lib/options/readGuide.d.ts.map +1 -0
- package/lib/options/readGuide.js +14 -19
- package/lib/options/readGuide.js.map +1 -0
- package/lib/options/readKeywords.d.ts +5 -1
- package/lib/options/readKeywords.d.ts.map +1 -0
- package/lib/options/readKeywords.js +7 -5
- package/lib/options/readKeywords.js.map +1 -0
- package/lib/options/readLogo.d.ts +8 -4
- package/lib/options/readLogo.d.ts.map +1 -0
- package/lib/options/readLogo.js +19 -22
- package/lib/options/readLogo.js.map +1 -0
- package/lib/options/readLogoSizing.d.ts +7 -3
- package/lib/options/readLogoSizing.d.ts.map +1 -0
- package/lib/options/readLogoSizing.js +26 -22
- package/lib/options/readLogoSizing.js.map +1 -0
- package/lib/options/readNode.d.ts +7 -3
- package/lib/options/readNode.d.ts.map +1 -0
- package/lib/options/readNode.js +12 -9
- package/lib/options/readNode.js.map +1 -0
- package/lib/options/readNpmDefaults.d.ts +7 -3
- package/lib/options/readNpmDefaults.d.ts.map +1 -0
- package/lib/options/readNpmDefaults.js +9 -6
- package/lib/options/readNpmDefaults.js.map +1 -0
- package/lib/options/readOwner.d.ts +7 -4
- package/lib/options/readOwner.d.ts.map +1 -0
- package/lib/options/readOwner.js +7 -6
- package/lib/options/readOwner.js.map +1 -0
- package/lib/options/readPackageAuthor.d.ts +8 -4
- package/lib/options/readPackageAuthor.d.ts.map +1 -0
- package/lib/options/readPackageAuthor.js +12 -12
- package/lib/options/readPackageAuthor.js.map +1 -0
- package/lib/options/readPackageData.d.ts +6 -2
- package/lib/options/readPackageData.d.ts.map +1 -0
- package/lib/options/readPackageData.js +8 -9
- package/lib/options/readPackageData.js.map +1 -0
- package/lib/options/readPnpm.d.ts +5 -1
- package/lib/options/readPnpm.d.ts.map +1 -0
- package/lib/options/readPnpm.js +7 -5
- package/lib/options/readPnpm.js.map +1 -0
- package/lib/options/readReadmeAdditional.d.ts +4 -0
- package/lib/options/readReadmeAdditional.d.ts.map +1 -0
- package/lib/options/readReadmeAdditional.js +15 -22
- package/lib/options/readReadmeAdditional.js.map +1 -0
- package/lib/options/readReadmeExplainer.d.ts +4 -0
- package/lib/options/readReadmeExplainer.d.ts.map +1 -0
- package/lib/options/readReadmeExplainer.js +24 -25
- package/lib/options/readReadmeExplainer.js.map +1 -0
- package/lib/options/readReadmeFootnotes.d.ts +4 -0
- package/lib/options/readReadmeFootnotes.d.ts.map +1 -0
- package/lib/options/readReadmeFootnotes.js +15 -24
- package/lib/options/readReadmeFootnotes.js.map +1 -0
- package/lib/options/readReadmeUsage.d.ts +4 -0
- package/lib/options/readReadmeUsage.d.ts.map +1 -0
- package/lib/options/readReadmeUsage.js +13 -15
- package/lib/options/readReadmeUsage.js.map +1 -0
- package/lib/options/readRepository.d.ts +8 -4
- package/lib/options/readRepository.d.ts.map +1 -0
- package/lib/options/readRepository.js +6 -4
- package/lib/options/readRepository.js.map +1 -0
- package/lib/options/readRulesetId.d.ts +5 -1
- package/lib/options/readRulesetId.d.ts.map +1 -0
- package/lib/options/readRulesetId.js +14 -13
- package/lib/options/readRulesetId.js.map +1 -0
- package/lib/options/readTitle.d.ts +4 -0
- package/lib/options/readTitle.d.ts.map +1 -0
- package/lib/options/readTitle.js +11 -10
- package/lib/options/readTitle.js.map +1 -0
- package/lib/options/readWords.d.ts +5 -1
- package/lib/options/readWords.d.ts.map +1 -0
- package/lib/options/readWords.js +9 -10
- package/lib/options/readWords.js.map +1 -0
- package/lib/options/readWorkflowsVersions.d.ts +6 -3
- package/lib/options/readWorkflowsVersions.d.ts.map +1 -0
- package/lib/options/readWorkflowsVersions.js +45 -63
- package/lib/options/readWorkflowsVersions.js.map +1 -0
- package/lib/presets/common.d.ts +169 -166
- package/lib/presets/common.d.ts.map +1 -0
- package/lib/presets/common.js +21 -18
- package/lib/presets/common.js.map +1 -0
- package/lib/presets/everything.d.ts +169 -166
- package/lib/presets/everything.d.ts.map +1 -0
- package/lib/presets/everything.js +39 -36
- package/lib/presets/everything.js.map +1 -0
- package/lib/presets/index.d.ts +504 -502
- package/lib/presets/index.d.ts.map +1 -0
- package/lib/presets/index.js +10 -13
- package/lib/presets/index.js.map +1 -0
- package/lib/presets/minimal.d.ts +169 -166
- package/lib/presets/minimal.d.ts.map +1 -0
- package/lib/presets/minimal.js +51 -48
- package/lib/presets/minimal.js.map +1 -0
- package/lib/schemas.d.ts +75 -71
- package/lib/schemas.d.ts.map +1 -0
- package/lib/schemas.js +19 -21
- package/lib/schemas.js.map +1 -0
- package/lib/template.d.ts +169 -166
- package/lib/template.d.ts.map +1 -0
- package/lib/template.js +31 -24
- package/lib/template.js.map +1 -0
- package/lib/types.d.ts +32 -30
- package/lib/types.d.ts.map +1 -0
- package/lib/utils/htmlToTextSafe.d.ts +4 -0
- package/lib/utils/htmlToTextSafe.d.ts.map +1 -0
- package/lib/utils/htmlToTextSafe.js +13 -12
- package/lib/utils/htmlToTextSafe.js.map +1 -0
- package/lib/utils/resolveBin.d.ts +4 -0
- package/lib/utils/resolveBin.d.ts.map +1 -0
- package/lib/utils/resolveBin.js +7 -4
- package/lib/utils/resolveBin.js.map +1 -0
- package/lib/utils/swallowError.d.ts +4 -0
- package/lib/utils/swallowError.d.ts.map +1 -0
- package/lib/utils/swallowError.js +6 -4
- package/lib/utils/swallowError.js.map +1 -0
- package/lib/utils/swallowErrorAsync.d.ts +4 -0
- package/lib/utils/swallowErrorAsync.d.ts.map +1 -0
- package/lib/utils/swallowErrorAsync.js +10 -8
- package/lib/utils/swallowErrorAsync.js.map +1 -0
- package/lib/utils/trimPrecedingSlash.d.ts +4 -0
- package/lib/utils/trimPrecedingSlash.d.ts.map +1 -0
- package/lib/utils/trimPrecedingSlash.js +6 -4
- package/lib/utils/trimPrecedingSlash.js.map +1 -0
- package/lib/utils/tryCatch.d.ts +4 -0
- package/lib/utils/tryCatch.d.ts.map +1 -0
- package/lib/utils/tryCatch.js +10 -8
- package/lib/utils/tryCatch.js.map +1 -0
- package/package.json +3 -3
- package/lib/blocks/blockTSup.d.ts +0 -76
- package/lib/blocks/blockTSup.js +0 -139
|
@@ -1,25 +1,21 @@
|
|
|
1
1
|
import { base } from "../base.js";
|
|
2
|
-
import { blockCSpell } from "./blockCSpell.js";
|
|
3
|
-
import { blockDevelopmentDocs } from "./blockDevelopmentDocs.js";
|
|
4
2
|
import { blockGitHubActionsCI } from "./blockGitHubActionsCI.js";
|
|
5
|
-
import { blockGitignore } from "./blockGitignore.js";
|
|
6
|
-
import { blockMarkdownlint } from "./blockMarkdownlint.js";
|
|
7
3
|
import { blockPackageJson } from "./blockPackageJson.js";
|
|
4
|
+
import { blockDevelopmentDocs } from "./blockDevelopmentDocs.js";
|
|
5
|
+
import { blockCSpell } from "./blockCSpell.js";
|
|
6
|
+
import { blockGitignore } from "./blockGitignore.js";
|
|
8
7
|
import { blockPrettier } from "./blockPrettier.js";
|
|
8
|
+
import { blockMarkdownlint } from "./blockMarkdownlint.js";
|
|
9
|
+
|
|
10
|
+
//#region src/blocks/blockWebExt.ts
|
|
9
11
|
const blockWebExt = base.createBlock({
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
ignorePaths: ["assets"]
|
|
18
|
-
}),
|
|
19
|
-
blockDevelopmentDocs({
|
|
20
|
-
sections: {
|
|
21
|
-
Building: {
|
|
22
|
-
contents: `
|
|
12
|
+
about: { name: "Web-ext" },
|
|
13
|
+
produce() {
|
|
14
|
+
return { addons: [
|
|
15
|
+
blockCSpell({ ignorePaths: ["assets"] }),
|
|
16
|
+
blockDevelopmentDocs({ sections: {
|
|
17
|
+
Building: {
|
|
18
|
+
contents: `
|
|
23
19
|
Run [ESBuild](https://esbuild.github.io) locally to build source files:
|
|
24
20
|
|
|
25
21
|
\`\`\`shell
|
|
@@ -32,17 +28,17 @@ Add \`--watch\` to run the builder in a watch mode that continuously re-builds a
|
|
|
32
28
|
pnpm dev --watch
|
|
33
29
|
\`\`\`
|
|
34
30
|
`,
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
31
|
+
innerSections: [
|
|
32
|
+
{
|
|
33
|
+
contents: `
|
|
38
34
|
Follow Google Chrome's _[Load an unpacked extension](https://developer.chrome.com/docs/extensions/mv3/getstarted/#unpacked)_ guide to load this repository's directory as an extension locally.
|
|
39
35
|
|
|
40
|
-
>
|
|
36
|
+
> ♻️ Remember to reload the extension in \`chrome://extensions\` whenever you make changes locally!
|
|
41
37
|
`,
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
38
|
+
heading: "Local Development with Chrome"
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
contents: `
|
|
46
42
|
Follow Firefox's _[Temporary installation in Firefox](https://extensionworkshop.com/documentation/develop/temporary-installation-in-firefox/)_ guide to load this repository's directory as an extension locally.
|
|
47
43
|
|
|
48
44
|
You'll then need to authorize the extension to run on <https://github.com>:
|
|
@@ -51,12 +47,12 @@ You'll then need to authorize the extension to run on <https://github.com>:
|
|
|
51
47
|
2. Select the _"Manage Extension"_ gear icon next to _Refined Saved Replies_
|
|
52
48
|
3. Select the _"Always Allow on github.com"_ option
|
|
53
49
|
|
|
54
|
-
>
|
|
50
|
+
> ♻️ Remember to reload the extension in \`about:debugging#/runtime/this-firefox\` whenever you make changes locally!
|
|
55
51
|
`,
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
52
|
+
heading: "Local Development with Firefox"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
contents: `
|
|
60
56
|
Run [\`web-ext\`](https://extensionworkshop.com) to build a production-ready \`.zip\` under \`./web-ext-artifacts/\`:
|
|
61
57
|
|
|
62
58
|
\`\`\`shell
|
|
@@ -68,57 +64,37 @@ Then upload that \`./web-ext-artifacts/refined_saved_replies-*.zip\` file to:
|
|
|
68
64
|
- [Chrome Web Store Developer Dashboard](https://chrome.google.com/webstore/devconsole)
|
|
69
65
|
- [Firefox Add-ons Developer Hub](https://addons.mozilla.org/en-US/developers/addon/submit/distribution)
|
|
70
66
|
`,
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
ignores: ["assets/"]
|
|
101
|
-
}),
|
|
102
|
-
blockPackageJson({
|
|
103
|
-
properties: {
|
|
104
|
-
devDependencies: {
|
|
105
|
-
esbuild: "^0.25.0",
|
|
106
|
-
"web-ext": "^8.3.0"
|
|
107
|
-
},
|
|
108
|
-
scripts: {
|
|
109
|
-
build: "web-ext build --overwrite-dest",
|
|
110
|
-
dev: "esbuild src/content-script.ts --bundle --minify --outfile=lib/content-script.js --sourcemap",
|
|
111
|
-
"lint:web-ext": "web-ext lint"
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
}),
|
|
115
|
-
blockPrettier({
|
|
116
|
-
ignores: ["assets/"]
|
|
117
|
-
})
|
|
118
|
-
]
|
|
119
|
-
};
|
|
120
|
-
}
|
|
67
|
+
heading: "Production Builds"
|
|
68
|
+
}
|
|
69
|
+
]
|
|
70
|
+
},
|
|
71
|
+
Linting: { contents: { items: [`- \`pnpm lint:web-ext\` ([web-ext](https://extensionworkshop.com)): Lints browser extension metadata after \`pnpm dev\` creates local files`] } }
|
|
72
|
+
} }),
|
|
73
|
+
blockGitHubActionsCI({ jobs: [{
|
|
74
|
+
name: "Build",
|
|
75
|
+
steps: [{ run: "pnpm build" }]
|
|
76
|
+
}, {
|
|
77
|
+
name: "Lint Web-ext",
|
|
78
|
+
steps: [{ run: "pnpm dev" }, { run: "pnpm lint:web-ext" }]
|
|
79
|
+
}] }),
|
|
80
|
+
blockGitignore({ ignores: ["*.zip", "web-ext-artifacts"] }),
|
|
81
|
+
blockMarkdownlint({ ignores: ["assets/"] }),
|
|
82
|
+
blockPackageJson({ properties: {
|
|
83
|
+
devDependencies: {
|
|
84
|
+
esbuild: "^0.25.0",
|
|
85
|
+
"web-ext": "^8.3.0"
|
|
86
|
+
},
|
|
87
|
+
scripts: {
|
|
88
|
+
build: "web-ext build --overwrite-dest",
|
|
89
|
+
dev: "esbuild src/content-script.ts --bundle --minify --outfile=lib/content-script.js --sourcemap",
|
|
90
|
+
"lint:web-ext": "web-ext lint"
|
|
91
|
+
}
|
|
92
|
+
} }),
|
|
93
|
+
blockPrettier({ ignores: ["assets/"] })
|
|
94
|
+
] };
|
|
95
|
+
}
|
|
121
96
|
});
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
};
|
|
97
|
+
|
|
98
|
+
//#endregion
|
|
99
|
+
export { blockWebExt };
|
|
100
|
+
//# sourceMappingURL=blockWebExt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blockWebExt.js","names":[],"sources":["../../src/blocks/blockWebExt.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { blockCSpell } from \"./blockCSpell.js\";\nimport { blockDevelopmentDocs } from \"./blockDevelopmentDocs.js\";\nimport { blockGitHubActionsCI } from \"./blockGitHubActionsCI.js\";\nimport { blockGitignore } from \"./blockGitignore.js\";\nimport { blockMarkdownlint } from \"./blockMarkdownlint.js\";\nimport { blockPackageJson } from \"./blockPackageJson.js\";\nimport { blockPrettier } from \"./blockPrettier.js\";\n\nexport const blockWebExt = base.createBlock({\n\tabout: {\n\t\tname: \"Web-ext\",\n\t},\n\tproduce() {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockCSpell({\n\t\t\t\t\tignorePaths: [\"assets\"],\n\t\t\t\t}),\n\t\t\t\tblockDevelopmentDocs({\n\t\t\t\t\tsections: {\n\t\t\t\t\t\tBuilding: {\n\t\t\t\t\t\t\tcontents: `\nRun [ESBuild](https://esbuild.github.io) locally to build source files:\n\n\\`\\`\\`shell\npnpm dev\n\\`\\`\\`\n\nAdd \\`--watch\\` to run the builder in a watch mode that continuously re-builds as you save files:\n\n\\`\\`\\`shell\npnpm dev --watch\n\\`\\`\\`\n`,\n\t\t\t\t\t\t\tinnerSections: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcontents: `\nFollow Google Chrome's _[Load an unpacked extension](https://developer.chrome.com/docs/extensions/mv3/getstarted/#unpacked)_ guide to load this repository's directory as an extension locally.\n\n> ♻️ Remember to reload the extension in \\`chrome://extensions\\` whenever you make changes locally!\n`,\n\t\t\t\t\t\t\t\t\theading: \"Local Development with Chrome\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcontents: `\nFollow Firefox's _[Temporary installation in Firefox](https://extensionworkshop.com/documentation/develop/temporary-installation-in-firefox/)_ guide to load this repository's directory as an extension locally.\n\nYou'll then need to authorize the extension to run on <https://github.com>:\n\n1. Find and select the _Extensions_ icon in the top right of Firefox\n2. Select the _\"Manage Extension\"_ gear icon next to _Refined Saved Replies_\n3. Select the _\"Always Allow on github.com\"_ option\n\n> ♻️ Remember to reload the extension in \\`about:debugging#/runtime/this-firefox\\` whenever you make changes locally!\n`,\n\t\t\t\t\t\t\t\t\theading: \"Local Development with Firefox\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcontents: `\nRun [\\`web-ext\\`](https://extensionworkshop.com) to build a production-ready \\`.zip\\` under \\`./web-ext-artifacts/\\`:\n\n\\`\\`\\`shell\npnpm build\n\\`\\`\\`\n\nThen upload that \\`./web-ext-artifacts/refined_saved_replies-*.zip\\` file to:\n\n- [Chrome Web Store Developer Dashboard](https://chrome.google.com/webstore/devconsole)\n- [Firefox Add-ons Developer Hub](https://addons.mozilla.org/en-US/developers/addon/submit/distribution)\n`,\n\t\t\t\t\t\t\t\t\theading: \"Production Builds\",\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t},\n\t\t\t\t\t\tLinting: {\n\t\t\t\t\t\t\tcontents: {\n\t\t\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\t\t\t`- \\`pnpm lint:web-ext\\` ([web-ext](https://extensionworkshop.com)): Lints browser extension metadata after \\`pnpm dev\\` creates local files`,\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t\tblockGitHubActionsCI({\n\t\t\t\t\tjobs: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: \"Build\",\n\t\t\t\t\t\t\tsteps: [{ run: \"pnpm build\" }],\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: \"Lint Web-ext\",\n\t\t\t\t\t\t\tsteps: [{ run: \"pnpm dev\" }, { run: \"pnpm lint:web-ext\" }],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t\tblockGitignore({\n\t\t\t\t\tignores: [\"*.zip\", \"web-ext-artifacts\"],\n\t\t\t\t}),\n\t\t\t\tblockMarkdownlint({\n\t\t\t\t\tignores: [\"assets/\"],\n\t\t\t\t}),\n\t\t\t\tblockPackageJson({\n\t\t\t\t\tproperties: {\n\t\t\t\t\t\tdevDependencies: {\n\t\t\t\t\t\t\tesbuild: \"^0.25.0\",\n\t\t\t\t\t\t\t\"web-ext\": \"^8.3.0\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\tscripts: {\n\t\t\t\t\t\t\tbuild: \"web-ext build --overwrite-dest\",\n\t\t\t\t\t\t\tdev: \"esbuild src/content-script.ts --bundle --minify --outfile=lib/content-script.js --sourcemap\",\n\t\t\t\t\t\t\t\"lint:web-ext\": \"web-ext lint\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t\tblockPrettier({\n\t\t\t\t\tignores: [\"assets/\"],\n\t\t\t\t}),\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":";;;;;;;;;;AASA,MAAa,cAAc,KAAK,YAAY;CAC3C,OAAO,EACN,MAAM,UACN;CACD,UAAU;AACT,SAAO,EACN,QAAQ;GACP,YAAY,EACX,aAAa,CAAC,QAAS,EACvB,EAAC;GACF,qBAAqB,EACpB,UAAU;IACT,UAAU;KACT,WAAW;;;;;;;;;;;;;KAaX,eAAe;MACd;OACC,WAAW;;;;;OAKX,SAAS;MACT;MACD;OACC,WAAW;;;;;;;;;;;OAWX,SAAS;MACT;MACD;OACC,WAAW;;;;;;;;;;;;OAYX,SAAS;MACT;KACD;IACD;IACD,SAAS,EACR,UAAU,EACT,OAAO,EACL,4IACD,EACD,EACD;GACD,EACD,EAAC;GACF,qBAAqB,EACpB,MAAM,CACL;IACC,MAAM;IACN,OAAO,CAAC,EAAE,KAAK,aAAc,CAAC;GAC9B,GACD;IACC,MAAM;IACN,OAAO,CAAC,EAAE,KAAK,WAAY,GAAE,EAAE,KAAK,oBAAqB,CAAC;GAC1D,CACD,EACD,EAAC;GACF,eAAe,EACd,SAAS,CAAC,SAAS,mBAAoB,EACvC,EAAC;GACF,kBAAkB,EACjB,SAAS,CAAC,SAAU,EACpB,EAAC;GACF,iBAAiB,EAChB,YAAY;IACX,iBAAiB;KAChB,SAAS;KACT,WAAW;IACX;IACD,SAAS;KACR,OAAO;KACP,KAAK;KACL,gBAAgB;IAChB;GACD,EACD,EAAC;GACF,cAAc,EACb,SAAS,CAAC,SAAU,EACpB,EAAC;EACF,EACD;CACD;AACD,EAAC"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
+
//#region src/blocks/eslint/blockESLintIntake.d.ts
|
|
1
2
|
declare function blockESLintIntake(sourceText: string): {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
ignores: string[];
|
|
4
|
+
rules: {
|
|
5
|
+
entries: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]>;
|
|
6
|
+
comment?: string | undefined;
|
|
7
|
+
}[];
|
|
7
8
|
} | undefined;
|
|
8
|
-
|
|
9
|
+
//# sourceMappingURL=blockESLintIntake.d.ts.map
|
|
10
|
+
//#endregion
|
|
9
11
|
export { blockESLintIntake };
|
|
12
|
+
//# sourceMappingURL=blockESLintIntake.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blockESLintIntake.d.ts","names":[],"sources":["../../../src/blocks/eslint/blockESLintIntake.ts"],"sourcesContent":[],"mappings":";iBAegB,iBAAA;EAAA,OAAA,EAAA,MAAA,EAAA;;aAAiB"}
|
|
@@ -1,116 +1,89 @@
|
|
|
1
|
-
import {
|
|
2
|
-
AST_NODE_TYPES,
|
|
3
|
-
parse as parseAST
|
|
4
|
-
} from "@typescript-eslint/typescript-estree";
|
|
5
|
-
import JSON5 from "json5";
|
|
6
1
|
import { tryCatch } from "../../utils/tryCatch.js";
|
|
7
2
|
import { stylisticComment } from "../blockESLintMoreStyling.js";
|
|
8
3
|
import { zRuleOptions } from "./schemas.js";
|
|
4
|
+
import JSON5 from "json5";
|
|
5
|
+
import { AST_NODE_TYPES, parse } from "@typescript-eslint/typescript-estree";
|
|
6
|
+
|
|
7
|
+
//#region src/blocks/eslint/blockESLintIntake.ts
|
|
9
8
|
function blockESLintIntake(sourceText) {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
return node.type === AST_NODE_TYPES.ObjectExpression && node.properties.length === 1 && node.properties[0].type === AST_NODE_TYPES.Property && node.properties[0].key.type === AST_NODE_TYPES.Identifier && node.properties[0].key.name === "ignores" && node.properties[0].value.type === AST_NODE_TYPES.ArrayExpression && node.properties[0].value.elements.every(
|
|
87
|
-
(element) => element?.type === AST_NODE_TYPES.Literal && typeof element.value === "string"
|
|
88
|
-
) && node.properties[0].value.elements.map(
|
|
89
|
-
(element) => element.value
|
|
90
|
-
);
|
|
91
|
-
}
|
|
92
|
-
function getConfigRulesObject(nodes) {
|
|
93
|
-
const configObject = nodes.find(
|
|
94
|
-
(node) => node.type === AST_NODE_TYPES.ObjectExpression && areArraysEqual(
|
|
95
|
-
node.properties.map(
|
|
96
|
-
(property) => property.type === AST_NODE_TYPES.Property && property.key.type === AST_NODE_TYPES.Identifier ? property.key.name : void 0
|
|
97
|
-
),
|
|
98
|
-
["extends", "files", "languageOptions", "rules", "settings"]
|
|
99
|
-
)
|
|
100
|
-
);
|
|
101
|
-
if (!configObject) {
|
|
102
|
-
return void 0;
|
|
103
|
-
}
|
|
104
|
-
const rulesObject2 = configObject.properties[3];
|
|
105
|
-
return rulesObject2.type === AST_NODE_TYPES.Property && rulesObject2.value.type === AST_NODE_TYPES.ObjectExpression && rulesObject2.value;
|
|
106
|
-
}
|
|
107
|
-
function nodeIsConfigExport(node) {
|
|
108
|
-
return node.type === AST_NODE_TYPES.ExportDefaultDeclaration && node.declaration.type === AST_NODE_TYPES.CallExpression && nodeIsConfigFunction(node.declaration.callee);
|
|
109
|
-
}
|
|
110
|
-
function nodeIsConfigFunction(node) {
|
|
111
|
-
return node.type === AST_NODE_TYPES.MemberExpression && node.object.type === AST_NODE_TYPES.Identifier && node.object.name === "tseslint" && node.property.type === AST_NODE_TYPES.Identifier && node.property.name === "config";
|
|
112
|
-
}
|
|
9
|
+
const ast = tryCatch(() => parse(sourceText, {
|
|
10
|
+
comment: true,
|
|
11
|
+
loc: true,
|
|
12
|
+
range: true
|
|
13
|
+
}));
|
|
14
|
+
const configExport = ast?.body.find(nodeIsConfigExport);
|
|
15
|
+
if (!configExport) return void 0;
|
|
16
|
+
const configArguments = configExport.declaration.arguments;
|
|
17
|
+
if (configArguments.length < 2) return void 0;
|
|
18
|
+
const ignores = getConfigIgnores(configArguments[0]);
|
|
19
|
+
if (!ignores) return void 0;
|
|
20
|
+
const rulesObject = getConfigRulesObject(configArguments.slice(1));
|
|
21
|
+
if (!rulesObject) return void 0;
|
|
22
|
+
const rules = collectRulesObjectGroups(sourceText, rulesObject);
|
|
23
|
+
if (!rules) return void 0;
|
|
24
|
+
return {
|
|
25
|
+
ignores,
|
|
26
|
+
rules
|
|
27
|
+
};
|
|
28
|
+
function areArraysEqual(a, b) {
|
|
29
|
+
if (a.length !== b.length) return false;
|
|
30
|
+
for (let i = 0; i < a.length; i++) if (a[i] !== b[i]) return false;
|
|
31
|
+
return true;
|
|
32
|
+
}
|
|
33
|
+
function collectRuleFromProperty(property) {
|
|
34
|
+
if (property.type !== AST_NODE_TYPES.Property || property.key.type !== AST_NODE_TYPES.Literal || typeof property.key.value !== "string") return void 0;
|
|
35
|
+
const name = property.key.value;
|
|
36
|
+
const { data } = zRuleOptions.safeParse(JSON5.parse(sourceText.slice(...property.value.range)));
|
|
37
|
+
return data && {
|
|
38
|
+
entry: data,
|
|
39
|
+
name
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
function collectRulesObjectGroups(sourceText$1, rulesObject$1) {
|
|
43
|
+
let previousNode;
|
|
44
|
+
let currentGroup;
|
|
45
|
+
const groups = [];
|
|
46
|
+
for (const property of rulesObject$1.properties) {
|
|
47
|
+
const precedingText = sourceText$1.slice((previousNode?.range[1] ?? rulesObject$1.range[0]) + 1, property.range[0]);
|
|
48
|
+
const comment = precedingText.replaceAll(/\/\/ ?|\t\s*/g, "").trim() || void 0;
|
|
49
|
+
if (comment === stylisticComment) break;
|
|
50
|
+
const rule = collectRuleFromProperty(property);
|
|
51
|
+
if (!rule) return void 0;
|
|
52
|
+
if (!currentGroup || comment) {
|
|
53
|
+
currentGroup = {
|
|
54
|
+
comment,
|
|
55
|
+
entries: {}
|
|
56
|
+
};
|
|
57
|
+
groups.push(currentGroup);
|
|
58
|
+
}
|
|
59
|
+
currentGroup.entries[rule.name] = rule.entry;
|
|
60
|
+
previousNode = property;
|
|
61
|
+
}
|
|
62
|
+
return groups;
|
|
63
|
+
}
|
|
64
|
+
function getConfigIgnores(node) {
|
|
65
|
+
return node.type === AST_NODE_TYPES.ObjectExpression && node.properties.length === 1 && node.properties[0].type === AST_NODE_TYPES.Property && node.properties[0].key.type === AST_NODE_TYPES.Identifier && node.properties[0].key.name === "ignores" && node.properties[0].value.type === AST_NODE_TYPES.ArrayExpression && node.properties[0].value.elements.every((element) => element?.type === AST_NODE_TYPES.Literal && typeof element.value === "string") && node.properties[0].value.elements.map((element) => element.value);
|
|
66
|
+
}
|
|
67
|
+
function getConfigRulesObject(nodes) {
|
|
68
|
+
const configObject = nodes.find((node) => node.type === AST_NODE_TYPES.ObjectExpression && areArraysEqual(node.properties.map((property) => property.type === AST_NODE_TYPES.Property && property.key.type === AST_NODE_TYPES.Identifier ? property.key.name : void 0), [
|
|
69
|
+
"extends",
|
|
70
|
+
"files",
|
|
71
|
+
"languageOptions",
|
|
72
|
+
"rules",
|
|
73
|
+
"settings"
|
|
74
|
+
]));
|
|
75
|
+
if (!configObject) return void 0;
|
|
76
|
+
const rulesObject$1 = configObject.properties[3];
|
|
77
|
+
return rulesObject$1.type === AST_NODE_TYPES.Property && rulesObject$1.value.type === AST_NODE_TYPES.ObjectExpression && rulesObject$1.value;
|
|
78
|
+
}
|
|
79
|
+
function nodeIsConfigExport(node) {
|
|
80
|
+
return node.type === AST_NODE_TYPES.ExportDefaultDeclaration && node.declaration.type === AST_NODE_TYPES.CallExpression && nodeIsConfigFunction(node.declaration.callee);
|
|
81
|
+
}
|
|
82
|
+
function nodeIsConfigFunction(node) {
|
|
83
|
+
return node.type === AST_NODE_TYPES.MemberExpression && node.object.type === AST_NODE_TYPES.Identifier && node.object.name === "tseslint" && node.property.type === AST_NODE_TYPES.Identifier && node.property.name === "config";
|
|
84
|
+
}
|
|
113
85
|
}
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
};
|
|
86
|
+
|
|
87
|
+
//#endregion
|
|
88
|
+
export { blockESLintIntake };
|
|
89
|
+
//# sourceMappingURL=blockESLintIntake.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blockESLintIntake.js","names":["sourceText: string","a: T[]","b: T[]","property: TSESTree.ObjectLiteralElement","rulesObject: TSESTree.ObjectExpression","previousNode: TSESTree.Node | undefined","currentGroup: ExtensionRuleGroup | undefined","groups: ExtensionRuleGroup[]","rulesObject","node: TSESTree.Node","nodes: TSESTree.Node[]"],"sources":["../../../src/blocks/eslint/blockESLintIntake.ts"],"sourcesContent":["import {\n\tAST_NODE_TYPES,\n\tparse as parseAST,\n\tTSESTree,\n} from \"@typescript-eslint/typescript-estree\";\nimport JSON5 from \"json5\";\n\nimport { tryCatch } from \"../../utils/tryCatch.js\";\nimport { stylisticComment } from \"../blockESLintMoreStyling.js\";\nimport { type ExtensionRuleGroup, zRuleOptions } from \"./schemas.js\";\n\ntype ConfigExport = TSESTree.ExportDefaultDeclaration & {\n\tdeclaration: TSESTree.CallExpression;\n};\n\nexport function blockESLintIntake(sourceText: string) {\n\tconst ast = tryCatch(() =>\n\t\tparseAST(sourceText, {\n\t\t\tcomment: true,\n\t\t\tloc: true,\n\t\t\trange: true,\n\t\t}),\n\t);\n\tconst configExport = ast?.body.find(nodeIsConfigExport);\n\tif (!configExport) {\n\t\treturn undefined;\n\t}\n\n\tconst configArguments = configExport.declaration.arguments;\n\tif (configArguments.length < 2) {\n\t\treturn undefined;\n\t}\n\n\tconst ignores = getConfigIgnores(configArguments[0]);\n\tif (!ignores) {\n\t\treturn undefined;\n\t}\n\n\tconst rulesObject = getConfigRulesObject(configArguments.slice(1));\n\tif (!rulesObject) {\n\t\treturn undefined;\n\t}\n\n\tconst rules = collectRulesObjectGroups(sourceText, rulesObject);\n\tif (!rules) {\n\t\treturn undefined;\n\t}\n\n\treturn { ignores, rules };\n\n\tfunction areArraysEqual<T>(a: T[], b: T[]) {\n\t\tif (a.length !== b.length) {\n\t\t\treturn false;\n\t\t}\n\n\t\tfor (let i = 0; i < a.length; i++) {\n\t\t\tif (a[i] !== b[i]) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\treturn true;\n\t}\n\n\tfunction collectRuleFromProperty(property: TSESTree.ObjectLiteralElement) {\n\t\tif (\n\t\t\tproperty.type !== AST_NODE_TYPES.Property ||\n\t\t\tproperty.key.type !== AST_NODE_TYPES.Literal ||\n\t\t\ttypeof property.key.value !== \"string\"\n\t\t) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst name = property.key.value;\n\n\t\tconst { data } = zRuleOptions.safeParse(\n\t\t\tJSON5.parse(sourceText.slice(...property.value.range)),\n\t\t);\n\n\t\treturn data && { entry: data, name };\n\t}\n\n\tfunction collectRulesObjectGroups(\n\t\tsourceText: string,\n\t\trulesObject: TSESTree.ObjectExpression,\n\t) {\n\t\tlet previousNode: TSESTree.Node | undefined;\n\t\tlet currentGroup: ExtensionRuleGroup | undefined;\n\t\tconst groups: ExtensionRuleGroup[] = [];\n\n\t\tfor (const property of rulesObject.properties) {\n\t\t\tconst precedingText = sourceText.slice(\n\t\t\t\t(previousNode?.range[1] ?? rulesObject.range[0]) + 1,\n\t\t\t\tproperty.range[0],\n\t\t\t);\n\t\t\tconst comment =\n\t\t\t\tprecedingText.replaceAll(/\\/\\/ ?|\\t\\s*/g, \"\").trim() || undefined;\n\n\t\t\t// blockESLintMoreStyling's comment always gets pushed to the end.\n\t\t\tif (comment === stylisticComment) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tconst rule = collectRuleFromProperty(property);\n\t\t\tif (!rule) {\n\t\t\t\treturn undefined;\n\t\t\t}\n\n\t\t\tif (!currentGroup || comment) {\n\t\t\t\tcurrentGroup = { comment, entries: {} };\n\t\t\t\tgroups.push(currentGroup);\n\t\t\t}\n\n\t\t\tcurrentGroup.entries[rule.name] = rule.entry;\n\t\t\tpreviousNode = property;\n\t\t}\n\n\t\treturn groups;\n\t}\n\n\tfunction getConfigIgnores(node: TSESTree.Node) {\n\t\treturn (\n\t\t\tnode.type === AST_NODE_TYPES.ObjectExpression &&\n\t\t\tnode.properties.length === 1 &&\n\t\t\tnode.properties[0].type === AST_NODE_TYPES.Property &&\n\t\t\tnode.properties[0].key.type === AST_NODE_TYPES.Identifier &&\n\t\t\tnode.properties[0].key.name === \"ignores\" &&\n\t\t\tnode.properties[0].value.type === AST_NODE_TYPES.ArrayExpression &&\n\t\t\tnode.properties[0].value.elements.every(\n\t\t\t\t(element): element is TSESTree.Literal & { value: string } =>\n\t\t\t\t\telement?.type === AST_NODE_TYPES.Literal &&\n\t\t\t\t\ttypeof element.value === \"string\",\n\t\t\t) &&\n\t\t\tnode.properties[0].value.elements.map(\n\t\t\t\t(element) => element.value as string,\n\t\t\t)\n\t\t);\n\t}\n\n\tfunction getConfigRulesObject(nodes: TSESTree.Node[]) {\n\t\tconst configObject = nodes.find(\n\t\t\t(node): node is TSESTree.ObjectExpression =>\n\t\t\t\tnode.type === AST_NODE_TYPES.ObjectExpression &&\n\t\t\t\tareArraysEqual(\n\t\t\t\t\tnode.properties.map((property) =>\n\t\t\t\t\t\tproperty.type === AST_NODE_TYPES.Property &&\n\t\t\t\t\t\tproperty.key.type === AST_NODE_TYPES.Identifier\n\t\t\t\t\t\t\t? property.key.name\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t),\n\t\t\t\t\t[\"extends\", \"files\", \"languageOptions\", \"rules\", \"settings\"],\n\t\t\t\t),\n\t\t);\n\t\tif (!configObject) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst rulesObject = configObject.properties[3];\n\t\treturn (\n\t\t\trulesObject.type === AST_NODE_TYPES.Property &&\n\t\t\trulesObject.value.type === AST_NODE_TYPES.ObjectExpression &&\n\t\t\trulesObject.value\n\t\t);\n\t}\n\n\tfunction nodeIsConfigExport(node: TSESTree.Node): node is ConfigExport {\n\t\treturn (\n\t\t\tnode.type === AST_NODE_TYPES.ExportDefaultDeclaration &&\n\t\t\tnode.declaration.type === AST_NODE_TYPES.CallExpression &&\n\t\t\tnodeIsConfigFunction(node.declaration.callee)\n\t\t);\n\t}\n\n\tfunction nodeIsConfigFunction(node: TSESTree.Node) {\n\t\treturn (\n\t\t\tnode.type === AST_NODE_TYPES.MemberExpression &&\n\t\t\tnode.object.type === AST_NODE_TYPES.Identifier &&\n\t\t\tnode.object.name === \"tseslint\" &&\n\t\t\tnode.property.type === AST_NODE_TYPES.Identifier &&\n\t\t\tnode.property.name === \"config\"\n\t\t);\n\t}\n}\n"],"mappings":";;;;;;;AAeA,SAAgB,kBAAkBA,YAAoB;CACrD,MAAM,MAAM,SAAS,MACpB,MAAS,YAAY;EACpB,SAAS;EACT,KAAK;EACL,OAAO;CACP,EAAC,CACF;CACD,MAAM,eAAe,KAAK,KAAK,KAAK,mBAAmB;AACvD,MAAK,aACJ;CAGD,MAAM,kBAAkB,aAAa,YAAY;AACjD,KAAI,gBAAgB,SAAS,EAC5B;CAGD,MAAM,UAAU,iBAAiB,gBAAgB,GAAG;AACpD,MAAK,QACJ;CAGD,MAAM,cAAc,qBAAqB,gBAAgB,MAAM,EAAE,CAAC;AAClE,MAAK,YACJ;CAGD,MAAM,QAAQ,yBAAyB,YAAY,YAAY;AAC/D,MAAK,MACJ;AAGD,QAAO;EAAE;EAAS;CAAO;CAEzB,SAAS,eAAkBC,GAAQC,GAAQ;AAC1C,MAAI,EAAE,WAAW,EAAE,OAClB,QAAO;AAGR,OAAK,IAAI,IAAI,GAAG,IAAI,EAAE,QAAQ,IAC7B,KAAI,EAAE,OAAO,EAAE,GACd,QAAO;AAIT,SAAO;CACP;CAED,SAAS,wBAAwBC,UAAyC;AACzE,MACC,SAAS,SAAS,eAAe,YACjC,SAAS,IAAI,SAAS,eAAe,kBAC9B,SAAS,IAAI,UAAU,SAE9B;EAGD,MAAM,OAAO,SAAS,IAAI;EAE1B,MAAM,EAAE,MAAM,GAAG,aAAa,UAC7B,MAAM,MAAM,WAAW,MAAM,GAAG,SAAS,MAAM,MAAM,CAAC,CACtD;AAED,SAAO,QAAQ;GAAE,OAAO;GAAM;EAAM;CACpC;CAED,SAAS,yBACRH,cACAI,eACC;EACD,IAAIC;EACJ,IAAIC;EACJ,MAAMC,SAA+B,CAAE;AAEvC,OAAK,MAAM,YAAYC,cAAY,YAAY;GAC9C,MAAM,gBAAgB,aAAW,OAC/B,cAAc,MAAM,MAAMA,cAAY,MAAM,MAAM,GACnD,SAAS,MAAM,GACf;GACD,MAAM,UACL,cAAc,WAAW,iBAAiB,GAAG,CAAC,MAAM;AAGrD,OAAI,YAAY,iBACf;GAGD,MAAM,OAAO,wBAAwB,SAAS;AAC9C,QAAK,KACJ;AAGD,QAAK,gBAAgB,SAAS;AAC7B,mBAAe;KAAE;KAAS,SAAS,CAAE;IAAE;AACvC,WAAO,KAAK,aAAa;GACzB;AAED,gBAAa,QAAQ,KAAK,QAAQ,KAAK;AACvC,kBAAe;EACf;AAED,SAAO;CACP;CAED,SAAS,iBAAiBC,MAAqB;AAC9C,SACC,KAAK,SAAS,eAAe,oBAC7B,KAAK,WAAW,WAAW,KAC3B,KAAK,WAAW,GAAG,SAAS,eAAe,YAC3C,KAAK,WAAW,GAAG,IAAI,SAAS,eAAe,cAC/C,KAAK,WAAW,GAAG,IAAI,SAAS,aAChC,KAAK,WAAW,GAAG,MAAM,SAAS,eAAe,mBACjD,KAAK,WAAW,GAAG,MAAM,SAAS,MACjC,CAAC,YACA,SAAS,SAAS,eAAe,kBAC1B,QAAQ,UAAU,SAC1B,IACD,KAAK,WAAW,GAAG,MAAM,SAAS,IACjC,CAAC,YAAY,QAAQ,MACrB;CAEF;CAED,SAAS,qBAAqBC,OAAwB;EACrD,MAAM,eAAe,MAAM,KAC1B,CAAC,SACA,KAAK,SAAS,eAAe,oBAC7B,eACC,KAAK,WAAW,IAAI,CAAC,aACpB,SAAS,SAAS,eAAe,YACjC,SAAS,IAAI,SAAS,eAAe,aAClC,SAAS,IAAI,cAEhB,EACD;GAAC;GAAW;GAAS;GAAmB;GAAS;EAAW,EAC5D,CACF;AACD,OAAK,aACJ;EAGD,MAAMF,gBAAc,aAAa,WAAW;AAC5C,SACCA,cAAY,SAAS,eAAe,YACpCA,cAAY,MAAM,SAAS,eAAe,oBAC1CA,cAAY;CAEb;CAED,SAAS,mBAAmBC,MAA2C;AACtE,SACC,KAAK,SAAS,eAAe,4BAC7B,KAAK,YAAY,SAAS,eAAe,kBACzC,qBAAqB,KAAK,YAAY,OAAO;CAE9C;CAED,SAAS,qBAAqBA,MAAqB;AAClD,SACC,KAAK,SAAS,eAAe,oBAC7B,KAAK,OAAO,SAAS,eAAe,cACpC,KAAK,OAAO,SAAS,cACrB,KAAK,SAAS,SAAS,eAAe,cACtC,KAAK,SAAS,SAAS;CAExB;AACD"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
//#region src/blocks/eslint/blockESLintPluginIntake.d.ts
|
|
1
2
|
declare function blockESLintPluginIntake(sourceText: string): {
|
|
2
|
-
|
|
3
|
+
configEmoji: [string, string][];
|
|
3
4
|
} | undefined;
|
|
4
|
-
|
|
5
|
+
//# sourceMappingURL=blockESLintPluginIntake.d.ts.map
|
|
6
|
+
//#endregion
|
|
5
7
|
export { blockESLintPluginIntake };
|
|
8
|
+
//# sourceMappingURL=blockESLintPluginIntake.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blockESLintPluginIntake.d.ts","names":[],"sources":["../../../src/blocks/eslint/blockESLintPluginIntake.ts"],"sourcesContent":[],"mappings":";iBAUgB,uBAAA;EAAA,WAAA,EAAA,CAAA,MAAA,EAAA,MAAuB,CAAA,EAAA"}
|
|
@@ -1,48 +1,30 @@
|
|
|
1
|
-
import {
|
|
2
|
-
AST_NODE_TYPES,
|
|
3
|
-
parse as parseAST
|
|
4
|
-
} from "@typescript-eslint/typescript-estree";
|
|
5
|
-
import JSON5 from "json5";
|
|
6
1
|
import { tryCatch } from "../../utils/tryCatch.js";
|
|
7
2
|
import { zConfigEmoji } from "./schemas.js";
|
|
3
|
+
import JSON5 from "json5";
|
|
4
|
+
import { AST_NODE_TYPES, parse } from "@typescript-eslint/typescript-estree";
|
|
5
|
+
|
|
6
|
+
//#region src/blocks/eslint/blockESLintPluginIntake.ts
|
|
8
7
|
function blockESLintPluginIntake(sourceText) {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
const { data } = zConfigEmoji.safeParse(
|
|
28
|
-
JSON5.parse(sourceText.slice(...configEmoji.range))
|
|
29
|
-
);
|
|
30
|
-
return data && { configEmoji: data };
|
|
31
|
-
function findConfig(body) {
|
|
32
|
-
for (const node of body) {
|
|
33
|
-
if (node.type === AST_NODE_TYPES.VariableDeclaration && node.declarations[0].id.type === AST_NODE_TYPES.Identifier && node.declarations[0].id.name === "config" && node.declarations[0].init?.type === AST_NODE_TYPES.ObjectExpression) {
|
|
34
|
-
return node.declarations[0].init;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
function findConfigEmoji(properties) {
|
|
39
|
-
for (const node of properties) {
|
|
40
|
-
if (node.type === AST_NODE_TYPES.Property && node.key.type === AST_NODE_TYPES.Identifier && node.key.name === "configEmoji" && node.value.type === AST_NODE_TYPES.ArrayExpression) {
|
|
41
|
-
return node.value;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
}
|
|
8
|
+
const ast = tryCatch(() => parse(sourceText, {
|
|
9
|
+
comment: true,
|
|
10
|
+
loc: true,
|
|
11
|
+
range: true
|
|
12
|
+
}));
|
|
13
|
+
if (!ast) return void 0;
|
|
14
|
+
const config = findConfig(ast.body);
|
|
15
|
+
if (!config) return void 0;
|
|
16
|
+
const configEmoji = findConfigEmoji(config.properties);
|
|
17
|
+
if (!configEmoji) return void 0;
|
|
18
|
+
const { data } = zConfigEmoji.safeParse(JSON5.parse(sourceText.slice(...configEmoji.range)));
|
|
19
|
+
return data && { configEmoji: data };
|
|
20
|
+
function findConfig(body) {
|
|
21
|
+
for (const node of body) if (node.type === AST_NODE_TYPES.VariableDeclaration && node.declarations[0].id.type === AST_NODE_TYPES.Identifier && node.declarations[0].id.name === "config" && node.declarations[0].init?.type === AST_NODE_TYPES.ObjectExpression) return node.declarations[0].init;
|
|
22
|
+
}
|
|
23
|
+
function findConfigEmoji(properties) {
|
|
24
|
+
for (const node of properties) if (node.type === AST_NODE_TYPES.Property && node.key.type === AST_NODE_TYPES.Identifier && node.key.name === "configEmoji" && node.value.type === AST_NODE_TYPES.ArrayExpression) return node.value;
|
|
25
|
+
}
|
|
45
26
|
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
};
|
|
27
|
+
|
|
28
|
+
//#endregion
|
|
29
|
+
export { blockESLintPluginIntake };
|
|
30
|
+
//# sourceMappingURL=blockESLintPluginIntake.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blockESLintPluginIntake.js","names":["sourceText: string","body: TSESTree.ProgramStatement[]","properties: TSESTree.ObjectLiteralElement[]"],"sources":["../../../src/blocks/eslint/blockESLintPluginIntake.ts"],"sourcesContent":["import {\n\tAST_NODE_TYPES,\n\tparse as parseAST,\n\tTSESTree,\n} from \"@typescript-eslint/typescript-estree\";\nimport JSON5 from \"json5\";\n\nimport { tryCatch } from \"../../utils/tryCatch.js\";\nimport { zConfigEmoji } from \"./schemas.js\";\n\nexport function blockESLintPluginIntake(sourceText: string) {\n\tconst ast = tryCatch(() =>\n\t\tparseAST(sourceText, {\n\t\t\tcomment: true,\n\t\t\tloc: true,\n\t\t\trange: true,\n\t\t}),\n\t);\n\tif (!ast) {\n\t\treturn undefined;\n\t}\n\n\tconst config = findConfig(ast.body);\n\tif (!config) {\n\t\treturn undefined;\n\t}\n\n\tconst configEmoji = findConfigEmoji(config.properties);\n\tif (!configEmoji) {\n\t\treturn undefined;\n\t}\n\n\tconst { data } = zConfigEmoji.safeParse(\n\t\tJSON5.parse(sourceText.slice(...configEmoji.range)),\n\t);\n\n\treturn data && { configEmoji: data };\n\n\tfunction findConfig(body: TSESTree.ProgramStatement[]) {\n\t\tfor (const node of body) {\n\t\t\tif (\n\t\t\t\tnode.type === AST_NODE_TYPES.VariableDeclaration &&\n\t\t\t\tnode.declarations[0].id.type === AST_NODE_TYPES.Identifier &&\n\t\t\t\tnode.declarations[0].id.name === \"config\" &&\n\t\t\t\tnode.declarations[0].init?.type === AST_NODE_TYPES.ObjectExpression\n\t\t\t) {\n\t\t\t\treturn node.declarations[0].init;\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction findConfigEmoji(properties: TSESTree.ObjectLiteralElement[]) {\n\t\tfor (const node of properties) {\n\t\t\tif (\n\t\t\t\tnode.type === AST_NODE_TYPES.Property &&\n\t\t\t\tnode.key.type === AST_NODE_TYPES.Identifier &&\n\t\t\t\tnode.key.name === \"configEmoji\" &&\n\t\t\t\tnode.value.type === AST_NODE_TYPES.ArrayExpression\n\t\t\t) {\n\t\t\t\treturn node.value;\n\t\t\t}\n\t\t}\n\t}\n}\n"],"mappings":";;;;;;AAUA,SAAgB,wBAAwBA,YAAoB;CAC3D,MAAM,MAAM,SAAS,MACpB,MAAS,YAAY;EACpB,SAAS;EACT,KAAK;EACL,OAAO;CACP,EAAC,CACF;AACD,MAAK,IACJ;CAGD,MAAM,SAAS,WAAW,IAAI,KAAK;AACnC,MAAK,OACJ;CAGD,MAAM,cAAc,gBAAgB,OAAO,WAAW;AACtD,MAAK,YACJ;CAGD,MAAM,EAAE,MAAM,GAAG,aAAa,UAC7B,MAAM,MAAM,WAAW,MAAM,GAAG,YAAY,MAAM,CAAC,CACnD;AAED,QAAO,QAAQ,EAAE,aAAa,KAAM;CAEpC,SAAS,WAAWC,MAAmC;AACtD,OAAK,MAAM,QAAQ,KAClB,KACC,KAAK,SAAS,eAAe,uBAC7B,KAAK,aAAa,GAAG,GAAG,SAAS,eAAe,cAChD,KAAK,aAAa,GAAG,GAAG,SAAS,YACjC,KAAK,aAAa,GAAG,MAAM,SAAS,eAAe,iBAEnD,QAAO,KAAK,aAAa,GAAG;CAG9B;CAED,SAAS,gBAAgBC,YAA6C;AACrE,OAAK,MAAM,QAAQ,WAClB,KACC,KAAK,SAAS,eAAe,YAC7B,KAAK,IAAI,SAAS,eAAe,cACjC,KAAK,IAAI,SAAS,iBAClB,KAAK,MAAM,SAAS,eAAe,gBAEnC,QAAO,KAAK;CAGd;AACD"}
|