create-typescript-app 2.50.0 → 2.52.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/_virtual/rolldown_runtime.js +20 -0
- package/lib/base.d.ts +2 -3
- package/lib/base.d.ts.map +1 -1
- package/lib/base.js +6 -12
- package/lib/base.js.map +1 -1
- package/lib/blocks/actions/resolveUses.d.ts +0 -2
- package/lib/blocks/actions/resolveUses.js.map +1 -1
- package/lib/blocks/actions/steps.d.ts +0 -2
- package/lib/blocks/actions/steps.d.ts.map +1 -1
- package/lib/blocks/actions/steps.js +2 -2
- package/lib/blocks/actions/steps.js.map +1 -1
- package/lib/blocks/bin/getPrimaryBin.d.ts +0 -2
- package/lib/blocks/bin/getPrimaryBin.d.ts.map +1 -1
- package/lib/blocks/bin/getPrimaryBin.js.map +1 -1
- package/lib/blocks/blockAllContributors.d.ts +2 -3
- package/lib/blocks/blockAllContributors.d.ts.map +1 -1
- package/lib/blocks/blockAllContributors.js.map +1 -1
- package/lib/blocks/blockAreTheTypesWrong.d.ts +2 -3
- package/lib/blocks/blockAreTheTypesWrong.d.ts.map +1 -1
- package/lib/blocks/blockAreTheTypesWrong.js.map +1 -1
- package/lib/blocks/blockCSpell.d.ts +2 -3
- package/lib/blocks/blockCSpell.d.ts.map +1 -1
- package/lib/blocks/blockCSpell.js +2 -2
- package/lib/blocks/blockCSpell.js.map +1 -1
- package/lib/blocks/blockCTATransitions.d.ts +2 -3
- package/lib/blocks/blockCTATransitions.d.ts.map +1 -1
- package/lib/blocks/blockCTATransitions.js.map +1 -1
- package/lib/blocks/blockCodecov.d.ts +2 -3
- package/lib/blocks/blockCodecov.d.ts.map +1 -1
- package/lib/blocks/blockCodecov.js +2 -2
- package/lib/blocks/blockCodecov.js.map +1 -1
- package/lib/blocks/blockContributingDocs.d.ts +2 -3
- package/lib/blocks/blockContributingDocs.d.ts.map +1 -1
- package/lib/blocks/blockContributingDocs.js.map +1 -1
- package/lib/blocks/blockContributorCovenant.d.ts +2 -3
- package/lib/blocks/blockContributorCovenant.d.ts.map +1 -1
- package/lib/blocks/blockContributorCovenant.js.map +1 -1
- package/lib/blocks/blockDevelopmentDocs.d.ts +3 -4
- package/lib/blocks/blockDevelopmentDocs.d.ts.map +1 -1
- package/lib/blocks/blockDevelopmentDocs.js.map +1 -1
- package/lib/blocks/blockESLint.d.ts +7 -13
- package/lib/blocks/blockESLint.d.ts.map +1 -1
- package/lib/blocks/blockESLint.js +23 -27
- package/lib/blocks/blockESLint.js.map +1 -1
- package/lib/blocks/blockESLintComments.d.ts +2 -3
- package/lib/blocks/blockESLintComments.d.ts.map +1 -1
- package/lib/blocks/blockESLintComments.js +6 -2
- package/lib/blocks/blockESLintComments.js.map +1 -1
- package/lib/blocks/blockESLintJSDoc.d.ts +2 -3
- package/lib/blocks/blockESLintJSDoc.d.ts.map +1 -1
- package/lib/blocks/blockESLintJSDoc.js +10 -6
- package/lib/blocks/blockESLintJSDoc.js.map +1 -1
- package/lib/blocks/blockESLintJSONC.d.ts +2 -3
- package/lib/blocks/blockESLintJSONC.d.ts.map +1 -1
- package/lib/blocks/blockESLintJSONC.js +4 -1
- package/lib/blocks/blockESLintJSONC.js.map +1 -1
- package/lib/blocks/blockESLintMarkdown.d.ts +2 -3
- package/lib/blocks/blockESLintMarkdown.d.ts.map +1 -1
- package/lib/blocks/blockESLintMarkdown.js +4 -1
- package/lib/blocks/blockESLintMarkdown.js.map +1 -1
- package/lib/blocks/blockESLintMoreStyling.d.ts +2 -3
- package/lib/blocks/blockESLintMoreStyling.d.ts.map +1 -1
- package/lib/blocks/blockESLintMoreStyling.js +17 -13
- package/lib/blocks/blockESLintMoreStyling.js.map +1 -1
- package/lib/blocks/blockESLintNode.d.ts +2 -3
- package/lib/blocks/blockESLintNode.d.ts.map +1 -1
- package/lib/blocks/blockESLintNode.js +6 -2
- package/lib/blocks/blockESLintNode.js.map +1 -1
- package/lib/blocks/blockESLintPackageJson.d.ts +2 -3
- package/lib/blocks/blockESLintPackageJson.d.ts.map +1 -1
- package/lib/blocks/blockESLintPackageJson.js +4 -1
- package/lib/blocks/blockESLintPackageJson.js.map +1 -1
- package/lib/blocks/blockESLintPerfectionist.d.ts +2 -3
- package/lib/blocks/blockESLintPerfectionist.d.ts.map +1 -1
- package/lib/blocks/blockESLintPerfectionist.js +11 -7
- package/lib/blocks/blockESLintPerfectionist.js.map +1 -1
- package/lib/blocks/blockESLintPlugin.d.ts +2 -3
- package/lib/blocks/blockESLintPlugin.d.ts.map +1 -1
- package/lib/blocks/blockESLintPlugin.js +5 -1
- package/lib/blocks/blockESLintPlugin.js.map +1 -1
- package/lib/blocks/blockESLintRegexp.d.ts +2 -3
- package/lib/blocks/blockESLintRegexp.d.ts.map +1 -1
- package/lib/blocks/blockESLintRegexp.js +6 -2
- package/lib/blocks/blockESLintRegexp.js.map +1 -1
- package/lib/blocks/blockESLintYML.d.ts +2 -3
- package/lib/blocks/blockESLintYML.d.ts.map +1 -1
- package/lib/blocks/blockESLintYML.js.map +1 -1
- package/lib/blocks/blockExampleFiles.d.ts +2 -3
- package/lib/blocks/blockExampleFiles.d.ts.map +1 -1
- package/lib/blocks/blockExampleFiles.js.map +1 -1
- package/lib/blocks/blockFunding.d.ts +2 -3
- package/lib/blocks/blockFunding.d.ts.map +1 -1
- package/lib/blocks/blockFunding.js.map +1 -1
- package/lib/blocks/blockGitHubActionsCI.d.ts +3 -4
- package/lib/blocks/blockGitHubActionsCI.d.ts.map +1 -1
- package/lib/blocks/blockGitHubActionsCI.js +3 -3
- package/lib/blocks/blockGitHubActionsCI.js.map +1 -1
- package/lib/blocks/blockGitHubApps.d.ts +2 -3
- package/lib/blocks/blockGitHubApps.d.ts.map +1 -1
- package/lib/blocks/blockGitHubApps.js.map +1 -1
- package/lib/blocks/blockGitHubIssueTemplates.d.ts +2 -3
- package/lib/blocks/blockGitHubIssueTemplates.d.ts.map +1 -1
- package/lib/blocks/blockGitHubIssueTemplates.js.map +1 -1
- package/lib/blocks/blockGitHubPRTemplate.d.ts +2 -3
- package/lib/blocks/blockGitHubPRTemplate.d.ts.map +1 -1
- package/lib/blocks/blockGitHubPRTemplate.js.map +1 -1
- package/lib/blocks/blockGitignore.d.ts +2 -3
- package/lib/blocks/blockGitignore.d.ts.map +1 -1
- package/lib/blocks/blockGitignore.js.map +1 -1
- package/lib/blocks/blockKnip.d.ts +2 -3
- package/lib/blocks/blockKnip.d.ts.map +1 -1
- package/lib/blocks/blockKnip.js +1 -1
- package/lib/blocks/blockKnip.js.map +1 -1
- package/lib/blocks/blockMITLicense.d.ts +2 -3
- package/lib/blocks/blockMITLicense.d.ts.map +1 -1
- package/lib/blocks/blockMITLicense.js +1 -4
- package/lib/blocks/blockMITLicense.js.map +1 -1
- package/lib/blocks/blockMain.d.ts +2 -3
- package/lib/blocks/blockMain.d.ts.map +1 -1
- package/lib/blocks/blockMain.js.map +1 -1
- package/lib/blocks/blockMarkdownlint.d.ts +2 -3
- package/lib/blocks/blockMarkdownlint.d.ts.map +1 -1
- package/lib/blocks/blockMarkdownlint.js +3 -2
- package/lib/blocks/blockMarkdownlint.js.map +1 -1
- package/lib/blocks/blockNcc.d.ts +2 -3
- package/lib/blocks/blockNcc.d.ts.map +1 -1
- package/lib/blocks/blockNcc.js.map +1 -1
- package/lib/blocks/blockNvmrc.d.ts +2 -3
- package/lib/blocks/blockNvmrc.d.ts.map +1 -1
- package/lib/blocks/blockNvmrc.js.map +1 -1
- package/lib/blocks/blockOctoGuide.d.ts +2 -3
- package/lib/blocks/blockOctoGuide.d.ts.map +1 -1
- package/lib/blocks/blockOctoGuide.js +2 -2
- package/lib/blocks/blockOctoGuide.js.map +1 -1
- package/lib/blocks/blockOctoGuideStrict.d.ts +2 -3
- package/lib/blocks/blockOctoGuideStrict.d.ts.map +1 -1
- package/lib/blocks/blockOctoGuideStrict.js.map +1 -1
- package/lib/blocks/blockPackageJson.d.ts +10 -11
- package/lib/blocks/blockPackageJson.d.ts.map +1 -1
- package/lib/blocks/blockPackageJson.js +2 -8
- package/lib/blocks/blockPackageJson.js.map +1 -1
- package/lib/blocks/blockPnpmDedupe.d.ts +2 -3
- package/lib/blocks/blockPnpmDedupe.d.ts.map +1 -1
- package/lib/blocks/blockPnpmDedupe.js.map +1 -1
- package/lib/blocks/blockPrettier.d.ts +3 -4
- package/lib/blocks/blockPrettier.d.ts.map +1 -1
- package/lib/blocks/blockPrettier.js.map +1 -1
- package/lib/blocks/blockPrettierPluginCurly.d.ts +2 -3
- package/lib/blocks/blockPrettierPluginCurly.d.ts.map +1 -1
- package/lib/blocks/blockPrettierPluginCurly.js.map +1 -1
- package/lib/blocks/blockPrettierPluginPackageJson.d.ts +2 -3
- package/lib/blocks/blockPrettierPluginPackageJson.d.ts.map +1 -1
- package/lib/blocks/blockPrettierPluginPackageJson.js.map +1 -1
- package/lib/blocks/blockPrettierPluginSentencesPerLine.d.ts +2 -3
- package/lib/blocks/blockPrettierPluginSentencesPerLine.d.ts.map +1 -1
- package/lib/blocks/blockPrettierPluginSentencesPerLine.js.map +1 -1
- package/lib/blocks/blockPrettierPluginSh.d.ts +2 -3
- package/lib/blocks/blockPrettierPluginSh.d.ts.map +1 -1
- package/lib/blocks/blockPrettierPluginSh.js.map +1 -1
- package/lib/blocks/blockREADME.d.ts +3 -4
- package/lib/blocks/blockREADME.d.ts.map +1 -1
- package/lib/blocks/blockREADME.js +1 -2
- package/lib/blocks/blockREADME.js.map +1 -1
- package/lib/blocks/blockReleaseIt.d.ts +2 -3
- package/lib/blocks/blockReleaseIt.d.ts.map +1 -1
- package/lib/blocks/blockReleaseIt.js.map +1 -1
- package/lib/blocks/blockRemoveDependencies.d.ts +2 -3
- package/lib/blocks/blockRemoveDependencies.d.ts.map +1 -1
- package/lib/blocks/blockRemoveDependencies.js.map +1 -1
- package/lib/blocks/blockRemoveFiles.d.ts +2 -3
- package/lib/blocks/blockRemoveFiles.d.ts.map +1 -1
- package/lib/blocks/blockRemoveFiles.js.map +1 -1
- package/lib/blocks/blockRemoveWorkflows.d.ts +2 -3
- package/lib/blocks/blockRemoveWorkflows.d.ts.map +1 -1
- package/lib/blocks/blockRemoveWorkflows.js.map +1 -1
- package/lib/blocks/blockRenovate.d.ts +2 -3
- package/lib/blocks/blockRenovate.d.ts.map +1 -1
- package/lib/blocks/blockRenovate.js.map +1 -1
- package/lib/blocks/blockRepositoryBranchRuleset.d.ts +2 -3
- package/lib/blocks/blockRepositoryBranchRuleset.d.ts.map +1 -1
- package/lib/blocks/blockRepositoryBranchRuleset.js.map +1 -1
- package/lib/blocks/blockRepositoryLabels.d.ts +2 -3
- package/lib/blocks/blockRepositoryLabels.d.ts.map +1 -1
- package/lib/blocks/blockRepositoryLabels.js.map +1 -1
- package/lib/blocks/blockRepositorySecrets.d.ts +2 -3
- package/lib/blocks/blockRepositorySecrets.d.ts.map +1 -1
- package/lib/blocks/blockRepositorySecrets.js.map +1 -1
- package/lib/blocks/blockRepositorySettings.d.ts +2 -3
- package/lib/blocks/blockRepositorySettings.d.ts.map +1 -1
- package/lib/blocks/blockRepositorySettings.js +1 -2
- package/lib/blocks/blockRepositorySettings.js.map +1 -1
- package/lib/blocks/blockSecurityDocs.d.ts +2 -3
- package/lib/blocks/blockSecurityDocs.d.ts.map +1 -1
- package/lib/blocks/blockSecurityDocs.js.map +1 -1
- package/lib/blocks/blockTSDown.d.ts +2 -3
- package/lib/blocks/blockTSDown.d.ts.map +1 -1
- package/lib/blocks/blockTSDown.js +3 -2
- package/lib/blocks/blockTSDown.js.map +1 -1
- package/lib/blocks/blockTemplatedWith.d.ts +2 -3
- package/lib/blocks/blockTemplatedWith.d.ts.map +1 -1
- package/lib/blocks/blockTemplatedWith.js.map +1 -1
- package/lib/blocks/blockTypeScript.d.ts +2 -3
- package/lib/blocks/blockTypeScript.d.ts.map +1 -1
- package/lib/blocks/blockTypeScript.js +1 -1
- package/lib/blocks/blockTypeScript.js.map +1 -1
- package/lib/blocks/blockVSCode.d.ts +2 -3
- package/lib/blocks/blockVSCode.d.ts.map +1 -1
- package/lib/blocks/blockVSCode.js.map +1 -1
- package/lib/blocks/blockVitest.d.ts +2 -3
- package/lib/blocks/blockVitest.d.ts.map +1 -1
- package/lib/blocks/blockVitest.js +5 -5
- package/lib/blocks/blockVitest.js.map +1 -1
- package/lib/blocks/blockWebExt.d.ts +2 -3
- package/lib/blocks/blockWebExt.d.ts.map +1 -1
- package/lib/blocks/blockWebExt.js.map +1 -1
- package/lib/blocks/eslint/blockESLintIntake.d.ts +0 -1
- package/lib/blocks/eslint/blockESLintIntake.js +11 -13
- package/lib/blocks/eslint/blockESLintIntake.js.map +1 -1
- package/lib/blocks/eslint/blockESLintPluginIntake.d.ts +0 -1
- package/lib/blocks/eslint/blockESLintPluginIntake.js +3 -3
- package/lib/blocks/eslint/blockESLintPluginIntake.js.map +1 -1
- package/lib/blocks/eslint/getScriptFileExtension.d.ts +8 -0
- package/lib/blocks/eslint/getScriptFileExtension.d.ts.map +1 -0
- package/lib/blocks/eslint/getScriptFileExtension.js +8 -0
- package/lib/blocks/eslint/getScriptFileExtension.js.map +1 -0
- package/lib/blocks/eslint/mergeAllExtensions.d.ts +18 -0
- package/lib/blocks/eslint/mergeAllExtensions.d.ts.map +1 -0
- package/lib/blocks/eslint/mergeAllExtensions.js +48 -0
- package/lib/blocks/eslint/mergeAllExtensions.js.map +1 -0
- package/lib/blocks/eslint/schemas.d.ts +23 -12
- package/lib/blocks/eslint/schemas.d.ts.map +1 -1
- package/lib/blocks/eslint/schemas.js +5 -3
- package/lib/blocks/eslint/schemas.js.map +1 -1
- package/lib/blocks/files/createJobName.d.ts +0 -2
- package/lib/blocks/files/createJobName.d.ts.map +1 -1
- package/lib/blocks/files/createJobName.js.map +1 -1
- package/lib/blocks/files/createMultiWorkflowFile.d.ts +0 -2
- package/lib/blocks/files/createMultiWorkflowFile.d.ts.map +1 -1
- package/lib/blocks/files/createMultiWorkflowFile.js.map +1 -1
- package/lib/blocks/files/createSoloWorkflowFile.d.ts.map +1 -1
- package/lib/blocks/files/createSoloWorkflowFile.js +1 -1
- package/lib/blocks/files/createSoloWorkflowFile.js.map +1 -1
- package/lib/blocks/files/formatIgnoreFile.d.ts +0 -2
- package/lib/blocks/files/formatIgnoreFile.d.ts.map +1 -1
- package/lib/blocks/files/formatIgnoreFile.js.map +1 -1
- package/lib/blocks/files/formatWorkflowYaml.d.ts +0 -2
- package/lib/blocks/files/formatWorkflowYaml.d.ts.map +1 -1
- package/lib/blocks/files/formatWorkflowYaml.js.map +1 -1
- package/lib/blocks/files/formatYaml.d.ts +0 -2
- package/lib/blocks/files/formatYaml.d.ts.map +1 -1
- package/lib/blocks/files/formatYaml.js.map +1 -1
- package/lib/blocks/files/removeUsesQuotes.d.ts +0 -2
- package/lib/blocks/files/removeUsesQuotes.d.ts.map +1 -1
- package/lib/blocks/files/removeUsesQuotes.js.map +1 -1
- package/lib/blocks/getInstallationSuggestions.d.ts +0 -2
- package/lib/blocks/getInstallationSuggestions.d.ts.map +1 -1
- package/lib/blocks/getInstallationSuggestions.js.map +1 -1
- package/lib/blocks/index.d.ts +67 -72
- package/lib/blocks/index.d.ts.map +1 -1
- package/lib/blocks/index.js.map +1 -1
- package/lib/blocks/intake/intakeFile.d.ts +0 -2
- package/lib/blocks/intake/intakeFile.js +3 -4
- package/lib/blocks/intake/intakeFile.js.map +1 -1
- package/lib/blocks/intake/intakeFileAsJson.d.ts +0 -2
- package/lib/blocks/intake/intakeFileAsJson.js +1 -1
- package/lib/blocks/intake/intakeFileAsJson.js.map +1 -1
- package/lib/blocks/intake/intakeFileAsYaml.d.ts +0 -2
- package/lib/blocks/intake/intakeFileAsYaml.js +1 -1
- package/lib/blocks/intake/intakeFileAsYaml.js.map +1 -1
- package/lib/blocks/intake/intakeFileDefineConfig.d.ts +0 -2
- package/lib/blocks/intake/intakeFileDefineConfig.js +4 -4
- package/lib/blocks/intake/intakeFileDefineConfig.js.map +1 -1
- package/lib/blocks/options.fakes.d.ts +0 -1
- package/lib/blocks/options.fakes.js.map +1 -1
- package/lib/blocks/outcomeLabels.d.ts +0 -1
- package/lib/blocks/outcomeLabels.js.map +1 -1
- package/lib/blocks/phases.d.ts +0 -1
- package/lib/blocks/phases.js.map +1 -1
- package/lib/constants.d.ts +0 -1
- package/lib/constants.js.map +1 -1
- package/lib/data/contributions.d.ts +0 -2
- package/lib/data/contributions.d.ts.map +1 -1
- package/lib/data/contributions.js.map +1 -1
- package/lib/data/packageData.d.ts +2 -4
- package/lib/data/packageData.d.ts.map +1 -1
- package/lib/data/packageData.js +1 -2
- package/lib/data/packageData.js.map +1 -1
- package/lib/index.d.ts +72 -72
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib/inputs/inputFromDirectory.d.ts +2 -4
- package/lib/inputs/inputFromDirectory.d.ts.map +1 -1
- package/lib/inputs/inputFromDirectory.js.map +1 -1
- package/lib/inputs/inputFromOctokit.d.ts +2 -4
- package/lib/inputs/inputFromOctokit.d.ts.map +1 -1
- package/lib/inputs/inputFromOctokit.js +4 -4
- package/lib/inputs/inputFromOctokit.js.map +1 -1
- package/lib/options/readAccess.d.ts +0 -2
- package/lib/options/readAccess.js.map +1 -1
- package/lib/options/readAllContributors.d.ts +0 -2
- package/lib/options/readAllContributors.js.map +1 -1
- package/lib/options/readAuthor.d.ts +0 -2
- package/lib/options/readAuthor.js.map +1 -1
- package/lib/options/readBin.d.ts +0 -2
- package/lib/options/readBin.js.map +1 -1
- package/lib/options/readDescription.d.ts +0 -2
- package/lib/options/readDescription.js +3 -4
- package/lib/options/readDescription.js.map +1 -1
- package/lib/options/readDescriptionFromReadme.d.ts +0 -2
- package/lib/options/readDescriptionFromReadme.d.ts.map +1 -1
- package/lib/options/readDescriptionFromReadme.js +2 -2
- package/lib/options/readDescriptionFromReadme.js.map +1 -1
- package/lib/options/readDevelopmentDocumentation.d.ts +0 -2
- package/lib/options/readDevelopmentDocumentation.js +1 -1
- package/lib/options/readDevelopmentDocumentation.js.map +1 -1
- package/lib/options/readDocumentation.d.ts +0 -2
- package/lib/options/readDocumentation.js.map +1 -1
- package/lib/options/readEmailFromCodeOfConduct.d.ts +0 -2
- package/lib/options/readEmailFromCodeOfConduct.js.map +1 -1
- package/lib/options/readEmailFromGit.d.ts +0 -2
- package/lib/options/readEmailFromGit.js.map +1 -1
- package/lib/options/readEmailFromNpm.d.ts +0 -2
- package/lib/options/readEmailFromNpm.js.map +1 -1
- package/lib/options/readEmails.d.ts +0 -2
- package/lib/options/readEmails.d.ts.map +1 -1
- package/lib/options/readEmails.js.map +1 -1
- package/lib/options/readEmoji.d.ts +0 -2
- package/lib/options/readEmoji.d.ts.map +1 -1
- package/lib/options/readEmoji.js.map +1 -1
- package/lib/options/readExistingLabels.d.ts +0 -2
- package/lib/options/readExistingLabels.d.ts.map +1 -1
- package/lib/options/readExistingLabels.js.map +1 -1
- package/lib/options/readFileAsJson.d.ts +0 -2
- package/lib/options/readFileAsJson.d.ts.map +1 -1
- package/lib/options/readFileAsJson.js.map +1 -1
- package/lib/options/readFileSafe.d.ts +0 -2
- package/lib/options/readFileSafe.d.ts.map +1 -1
- package/lib/options/readFileSafe.js.map +1 -1
- package/lib/options/readFunding.d.ts +0 -2
- package/lib/options/readFunding.js.map +1 -1
- package/lib/options/readGitDefaults.d.ts +0 -2
- package/lib/options/readGitDefaults.js.map +1 -1
- package/lib/options/readGuide.d.ts +0 -2
- package/lib/options/readGuide.d.ts.map +1 -1
- package/lib/options/readGuide.js +2 -2
- package/lib/options/readGuide.js.map +1 -1
- package/lib/options/readKeywords.d.ts +0 -2
- package/lib/options/readKeywords.js.map +1 -1
- package/lib/options/readLogo.d.ts +0 -2
- package/lib/options/readLogo.d.ts.map +1 -1
- package/lib/options/readLogo.js +4 -5
- package/lib/options/readLogo.js.map +1 -1
- package/lib/options/readLogoSizing.d.ts +0 -2
- package/lib/options/readLogoSizing.d.ts.map +1 -1
- package/lib/options/readLogoSizing.js +2 -2
- package/lib/options/readLogoSizing.js.map +1 -1
- package/lib/options/readNode.d.ts +0 -2
- package/lib/options/readNode.d.ts.map +1 -1
- package/lib/options/readNode.js.map +1 -1
- package/lib/options/readNpmDefaults.d.ts +2 -4
- package/lib/options/readNpmDefaults.d.ts.map +1 -1
- package/lib/options/readNpmDefaults.js.map +1 -1
- package/lib/options/readOwner.d.ts +0 -2
- package/lib/options/readOwner.js.map +1 -1
- package/lib/options/readPackageAuthor.d.ts +0 -2
- package/lib/options/readPackageAuthor.d.ts.map +1 -1
- package/lib/options/readPackageAuthor.js.map +1 -1
- package/lib/options/readPackageData.d.ts +0 -2
- package/lib/options/readPackageData.js.map +1 -1
- package/lib/options/readPnpm.d.ts +0 -2
- package/lib/options/readPnpm.js.map +1 -1
- package/lib/options/readReadmeAdditional.d.ts +0 -2
- package/lib/options/readReadmeAdditional.d.ts.map +1 -1
- package/lib/options/readReadmeAdditional.js +2 -2
- package/lib/options/readReadmeAdditional.js.map +1 -1
- package/lib/options/readReadmeExplainer.d.ts +0 -2
- package/lib/options/readReadmeExplainer.d.ts.map +1 -1
- package/lib/options/readReadmeExplainer.js +2 -3
- package/lib/options/readReadmeExplainer.js.map +1 -1
- package/lib/options/readReadmeFootnotes.d.ts +0 -2
- package/lib/options/readReadmeFootnotes.d.ts.map +1 -1
- package/lib/options/readReadmeFootnotes.js +2 -2
- package/lib/options/readReadmeFootnotes.js.map +1 -1
- package/lib/options/readReadmeUsage.d.ts +0 -2
- package/lib/options/readReadmeUsage.d.ts.map +1 -1
- package/lib/options/readReadmeUsage.js +3 -4
- package/lib/options/readReadmeUsage.js.map +1 -1
- package/lib/options/readRepository.d.ts +0 -2
- package/lib/options/readRepository.d.ts.map +1 -1
- package/lib/options/readRepository.js.map +1 -1
- package/lib/options/readRulesetId.d.ts +0 -2
- package/lib/options/readRulesetId.js +2 -3
- package/lib/options/readRulesetId.js.map +1 -1
- package/lib/options/readTitle.d.ts +0 -2
- package/lib/options/readTitle.d.ts.map +1 -1
- package/lib/options/readTitle.js.map +1 -1
- package/lib/options/readWords.d.ts +0 -2
- package/lib/options/readWords.js +1 -2
- package/lib/options/readWords.js.map +1 -1
- package/lib/options/readWorkflowsVersions.d.ts +0 -2
- package/lib/options/readWorkflowsVersions.js.map +1 -1
- package/lib/package.d.ts +144 -0
- package/lib/package.d.ts.map +1 -0
- package/lib/presets/common.d.ts +69 -70
- package/lib/presets/common.d.ts.map +1 -1
- package/lib/presets/common.js.map +1 -1
- package/lib/presets/everything.d.ts +69 -70
- package/lib/presets/everything.d.ts.map +1 -1
- package/lib/presets/everything.js.map +1 -1
- package/lib/presets/index.d.ts +203 -203
- package/lib/presets/index.d.ts.map +1 -1
- package/lib/presets/index.js.map +1 -1
- package/lib/presets/minimal.d.ts +69 -70
- package/lib/presets/minimal.d.ts.map +1 -1
- package/lib/presets/minimal.js.map +1 -1
- package/lib/schemas.d.ts +0 -2
- package/lib/schemas.d.ts.map +1 -1
- package/lib/schemas.js.map +1 -1
- package/lib/template.d.ts +69 -70
- package/lib/template.d.ts.map +1 -1
- package/lib/template.js.map +1 -1
- package/lib/types.d.ts.map +1 -1
- package/lib/types.js +1 -0
- package/lib/utils/htmlToTextSafe.d.ts +0 -2
- package/lib/utils/htmlToTextSafe.d.ts.map +1 -1
- package/lib/utils/htmlToTextSafe.js.map +1 -1
- package/lib/utils/resolveBin.d.ts +0 -2
- package/lib/utils/resolveBin.d.ts.map +1 -1
- package/lib/utils/resolveBin.js.map +1 -1
- package/lib/utils/swallowError.d.ts +0 -2
- package/lib/utils/swallowError.d.ts.map +1 -1
- package/lib/utils/swallowError.js.map +1 -1
- package/lib/utils/swallowErrorAsync.d.ts +0 -2
- package/lib/utils/swallowErrorAsync.d.ts.map +1 -1
- package/lib/utils/swallowErrorAsync.js +1 -1
- package/lib/utils/swallowErrorAsync.js.map +1 -1
- package/lib/utils/trimPrecedingSlash.d.ts +0 -2
- package/lib/utils/trimPrecedingSlash.d.ts.map +1 -1
- package/lib/utils/trimPrecedingSlash.js.map +1 -1
- package/lib/utils/tryCatch.d.ts +0 -2
- package/lib/utils/tryCatch.d.ts.map +1 -1
- package/lib/utils/tryCatch.js +1 -1
- package/lib/utils/tryCatch.js.map +1 -1
- package/package.json +51 -55
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blockVitest.d.ts","names":[],"sources":["../../src/blocks/blockVitest.ts"],"sourcesContent":[],"mappings":";;;cAyDa
|
|
1
|
+
{"version":3,"file":"blockVitest.d.ts","names":[],"sources":["../../src/blocks/blockVitest.ts"],"sourcesContent":[],"mappings":";;;cAyDa,6BAAW;;;IAAX,GAAA,CAAA,QAgOX,CAAA,MAAA,EAAA,MAAA,CAAA,GAAA,SAAA;;;;;;;;;;;;EAhOsB,KAAA,EAAA,MAAA,EAAA"}
|
|
@@ -32,9 +32,9 @@ const zTest = z.object({
|
|
|
32
32
|
}).partial();
|
|
33
33
|
function intakeFromConfig(files) {
|
|
34
34
|
const rawData = intakeFileDefineConfig(files, ["vitest.config.ts"]);
|
|
35
|
-
if (typeof rawData?.test !== "object") return
|
|
35
|
+
if (typeof rawData?.test !== "object") return;
|
|
36
36
|
const parsedData = zTest.safeParse(rawData.test).data;
|
|
37
|
-
if (!parsedData) return
|
|
37
|
+
if (!parsedData) return;
|
|
38
38
|
return {
|
|
39
39
|
coverage: parsedData.coverage,
|
|
40
40
|
environment: parsedData.environment,
|
|
@@ -85,14 +85,14 @@ Calls to \`console.log\`, \`console.warn\`, and other console methods will cause
|
|
|
85
85
|
extensions: [{
|
|
86
86
|
extends: ["vitest.configs.recommended"],
|
|
87
87
|
files: ["**/*.test.*"],
|
|
88
|
-
rules: [{ entries: { "@typescript-eslint/no-unsafe-assignment": "off" } }]
|
|
88
|
+
rules: [{ entries: { "@typescript-eslint/no-unsafe-assignment": "off" } }],
|
|
89
|
+
settings: { vitest: { typecheck: true } }
|
|
89
90
|
}],
|
|
90
91
|
ignores: ["coverage", "**/*.snap"],
|
|
91
92
|
imports: [{
|
|
92
93
|
source: "@vitest/eslint-plugin",
|
|
93
94
|
specifier: "vitest"
|
|
94
|
-
}]
|
|
95
|
-
settings: { vitest: { typecheck: true } }
|
|
95
|
+
}]
|
|
96
96
|
}),
|
|
97
97
|
blockExampleFiles({ files: { "greet.test.ts": `import { describe, expect, it, vi } from "vitest";
|
|
98
98
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blockVitest.js","names":["files: IntakeDirectory"],"sources":["../../src/blocks/blockVitest.ts"],"sourcesContent":["import { IntakeDirectory } from \"bingo-fs\";\nimport { z } from \"zod\";\n\nimport { base } from \"../base.js\";\nimport { getPackageDependencies } from \"../data/packageData.js\";\nimport { zActionStep } from \"./actions/steps.js\";\nimport { blockCSpell } from \"./blockCSpell.js\";\nimport { blockDevelopmentDocs } from \"./blockDevelopmentDocs.js\";\nimport { blockESLint } from \"./blockESLint.js\";\nimport { blockExampleFiles } from \"./blockExampleFiles.js\";\nimport { blockGitHubActionsCI } from \"./blockGitHubActionsCI.js\";\nimport { blockGitignore } from \"./blockGitignore.js\";\nimport { blockKnip } from \"./blockKnip.js\";\nimport { blockPackageJson } from \"./blockPackageJson.js\";\nimport { blockPrettier } from \"./blockPrettier.js\";\nimport { blockRemoveDependencies } from \"./blockRemoveDependencies.js\";\nimport { blockRemoveFiles } from \"./blockRemoveFiles.js\";\nimport { blockRemoveWorkflows } from \"./blockRemoveWorkflows.js\";\nimport { blockTSDown } from \"./blockTSDown.js\";\nimport { blockVSCode } from \"./blockVSCode.js\";\nimport { intakeFileDefineConfig } from \"./intake/intakeFileDefineConfig.js\";\n\nconst zCoverage = z.object({\n\texclude: z.array(z.string()).optional(),\n\tinclude: z.array(z.string()).optional(),\n});\n\nconst zEnvironment = z.string();\n\nconst zExclude = z.array(z.string());\n\nconst zTest = z\n\t.object({\n\t\tcoverage: zCoverage,\n\t\tenvironment: zEnvironment,\n\t\texclude: zExclude,\n\t})\n\t.partial();\n\nfunction intakeFromConfig(files: IntakeDirectory) {\n\tconst rawData = intakeFileDefineConfig(files, [\"vitest.config.ts\"]);\n\tif (typeof rawData?.test !== \"object\") {\n\t\treturn undefined;\n\t}\n\n\tconst parsedData = zTest.safeParse(rawData.test).data;\n\tif (!parsedData) {\n\t\treturn undefined;\n\t}\n\n\treturn {\n\t\tcoverage: parsedData.coverage,\n\t\tenvironment: parsedData.environment,\n\t\texclude: parsedData.exclude,\n\t};\n}\n\nexport const blockVitest = base.createBlock({\n\tabout: {\n\t\tname: \"Vitest\",\n\t},\n\taddons: {\n\t\tactionSteps: z.array(zActionStep).default([]),\n\t\tcoverage: zCoverage.default({}),\n\t\tenvironment: zEnvironment.optional(),\n\t\texclude: zExclude.default([]),\n\t\tflags: z.array(z.string()).default([]),\n\t},\n\tintake({ files, options }) {\n\t\treturn {\n\t\t\t...intakeFromConfig(files),\n\t\t\tflags: options.packageData?.scripts?.test\n\t\t\t\t?.match(/^vitest (.+)/)?.[1]\n\t\t\t\t.split(\" \"),\n\t\t};\n\t},\n\tproduce({ addons }) {\n\t\tconst { actionSteps, coverage, environment, exclude = [] } = addons;\n\t\tconst excludeText = JSON.stringify(\n\t\t\tArray.from(new Set([\"node_modules\", ...exclude])).sort(),\n\t\t);\n\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockCSpell({\n\t\t\t\t\tignorePaths: [\"coverage\"],\n\t\t\t\t}),\n\t\t\t\tblockDevelopmentDocs({\n\t\t\t\t\tsections: {\n\t\t\t\t\t\tTesting: {\n\t\t\t\t\t\t\tcontents: `\n[Vitest](https://vitest.dev) is used for tests.\nYou can run it locally on the command-line:\n\n\\`\\`\\`shell\npnpm run test\n\\`\\`\\`\n\nAdd the \\`--coverage\\` flag to compute test coverage and place reports in the \\`coverage/\\` directory:\n\n\\`\\`\\`shell\npnpm run test --coverage\n\\`\\`\\`\n\nNote that [console-fail-test](https://github.com/JoshuaKGoldberg/console-fail-test) is enabled for all test runs.\nCalls to \\`console.log\\`, \\`console.warn\\`, and other console methods will cause a test to fail.\n\n\n\t\t`,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t\tblockESLint({\n\t\t\t\t\textensions: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\textends: [\"vitest.configs.recommended\"],\n\t\t\t\t\t\t\tfiles: [\"**/*.test.*\"],\n\t\t\t\t\t\t\trules: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tentries: {\n\t\t\t\t\t\t\t\t\t\t\"@typescript-eslint/no-unsafe-assignment\": \"off\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t\tignores: [\"coverage\", \"**/*.snap\"],\n\t\t\t\t\timports: [{ source: \"@vitest/eslint-plugin\", specifier: \"vitest\" }],\n\t\t\t\t\tsettings: {\n\t\t\t\t\t\tvitest: { typecheck: true },\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t\tblockExampleFiles({\n\t\t\t\t\tfiles: {\n\t\t\t\t\t\t\"greet.test.ts\": `import { describe, expect, it, vi } from \"vitest\";\n\nimport { greet } from \"./greet.js\";\n\nconst message = \"Yay, testing!\";\n\ndescribe(greet, () => {\n\tit(\"logs to the console once when message is provided as a string\", () => {\n\t\tconst logger = vi.spyOn(console, \"log\").mockImplementation(() => undefined);\n\n\t\tgreet(message);\n\n\t\texpect(logger).toHaveBeenCalledWith(message);\n\t\texpect(logger).toHaveBeenCalledTimes(1);\n\t});\n\n\tit(\"logs to the console once when message is provided as an object\", () => {\n\t\tconst logger = vi.spyOn(console, \"log\").mockImplementation(() => undefined);\n\n\t\tgreet({ message });\n\n\t\texpect(logger).toHaveBeenCalledWith(message);\n\t\texpect(logger).toHaveBeenCalledTimes(1);\n\t});\n\n\tit(\"logs once when times is not provided in an object\", () => {\n\t\tconst logger = vi.fn();\n\n\t\tgreet({ logger, message });\n\n\t\texpect(logger).toHaveBeenCalledWith(message);\n\t\texpect(logger).toHaveBeenCalledTimes(1);\n\t});\n\n\tit(\"logs a specified number of times when times is provided\", () => {\n\t\tconst logger = vi.fn();\n\t\tconst times = 7;\n\n\t\tgreet({ logger, message, times });\n\n\t\texpect(logger).toHaveBeenCalledWith(message);\n\t\texpect(logger).toHaveBeenCalledTimes(7);\n\t});\n});\n`,\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t\tblockGitignore({\n\t\t\t\t\tignores: [\"/coverage\"],\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: \"Test\",\n\t\t\t\t\t\t\tsteps: [{ run: \"pnpm run test --coverage\" }, ...actionSteps],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t\tblockKnip({\n\t\t\t\t\tentry: [\"src/**/*.test.*\"],\n\t\t\t\t}),\n\t\t\t\tblockPackageJson({\n\t\t\t\t\tproperties: {\n\t\t\t\t\t\tdevDependencies: getPackageDependencies(\n\t\t\t\t\t\t\t\"@vitest/coverage-v8\",\n\t\t\t\t\t\t\t\"@vitest/eslint-plugin\",\n\t\t\t\t\t\t\t\"console-fail-test\",\n\t\t\t\t\t\t\t\"vitest\",\n\t\t\t\t\t\t),\n\t\t\t\t\t\tscripts: {\n\t\t\t\t\t\t\ttest: `vitest ${addons.flags.join(\" \")}`.trim(),\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: [\"/coverage\"],\n\t\t\t\t}),\n\t\t\t\tblockTSDown({\n\t\t\t\t\tentry: [\"!src/**/*.test.*\"],\n\t\t\t\t}),\n\t\t\t\tblockVSCode({\n\t\t\t\t\tdebuggers: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\targs: [\"run\", \"${relativeFile}\"],\n\t\t\t\t\t\t\tautoAttachChildProcesses: true,\n\t\t\t\t\t\t\tconsole: \"integratedTerminal\",\n\t\t\t\t\t\t\tname: \"Debug Current Test File\",\n\t\t\t\t\t\t\tprogram: \"${workspaceRoot}/node_modules/vitest/vitest.mjs\",\n\t\t\t\t\t\t\trequest: \"launch\",\n\t\t\t\t\t\t\tskipFiles: [\"<node_internals>/**\", \"**/node_modules/**\"],\n\t\t\t\t\t\t\tsmartStep: true,\n\t\t\t\t\t\t\ttype: \"node\",\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t\textensions: [\"vitest.explorer\"],\n\t\t\t\t}),\n\t\t\t],\n\t\t\tfiles: {\n\t\t\t\t\"vitest.config.ts\": `import { defineConfig } from \"vitest/config\";\n\nexport default defineConfig({\n\ttest: {\n\t\tclearMocks: true,\n\t\tcoverage: {\n\t\t\tall: true,\n\t\t\t${\n\t\t\t\tcoverage.exclude?.length\n\t\t\t\t\t? `exclude: ${JSON.stringify(coverage.exclude)},\n\t\t\t`\n\t\t\t\t\t: \"\"\n\t\t\t}include: ${JSON.stringify(coverage.include)},\n\t\t\treporter: [\"html\", \"lcov\"],\n\t\t},${\n\t\t\tenvironment\n\t\t\t\t? `\n\t\tenvironment: \"${environment}\",`\n\t\t\t\t: \"\"\n\t\t}\n\t\texclude: [${excludeText.slice(1, excludeText.length - 1)}],\n\t\tsetupFiles: [\"console-fail-test/setup\"],\n\t},\n});\n\t`,\n\t\t\t},\n\t\t};\n\t},\n\ttransition() {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockRemoveDependencies({\n\t\t\t\t\tdependencies: [\n\t\t\t\t\t\t\"@vitest/coverage-istanbul\",\n\t\t\t\t\t\t\"eslint-plugin-jest\",\n\t\t\t\t\t\t\"eslint-plugin-mocha\",\n\t\t\t\t\t\t\"eslint-plugin-vitest\",\n\t\t\t\t\t\t\"jest mocha\",\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t\tblockRemoveFiles({\n\t\t\t\t\tfiles: [\".mocha*\", \"jest.config.*\", \"vitest.config.{c,j,m}*\"],\n\t\t\t\t}),\n\t\t\t\tblockRemoveWorkflows({\n\t\t\t\t\tworkflows: [\"test\"],\n\t\t\t\t}),\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"blockVitest.js","names":[],"sources":["../../src/blocks/blockVitest.ts"],"sourcesContent":["import { IntakeDirectory } from \"bingo-fs\";\nimport { z } from \"zod\";\n\nimport { base } from \"../base.js\";\nimport { getPackageDependencies } from \"../data/packageData.js\";\nimport { zActionStep } from \"./actions/steps.js\";\nimport { blockCSpell } from \"./blockCSpell.js\";\nimport { blockDevelopmentDocs } from \"./blockDevelopmentDocs.js\";\nimport { blockESLint } from \"./blockESLint.js\";\nimport { blockExampleFiles } from \"./blockExampleFiles.js\";\nimport { blockGitHubActionsCI } from \"./blockGitHubActionsCI.js\";\nimport { blockGitignore } from \"./blockGitignore.js\";\nimport { blockKnip } from \"./blockKnip.js\";\nimport { blockPackageJson } from \"./blockPackageJson.js\";\nimport { blockPrettier } from \"./blockPrettier.js\";\nimport { blockRemoveDependencies } from \"./blockRemoveDependencies.js\";\nimport { blockRemoveFiles } from \"./blockRemoveFiles.js\";\nimport { blockRemoveWorkflows } from \"./blockRemoveWorkflows.js\";\nimport { blockTSDown } from \"./blockTSDown.js\";\nimport { blockVSCode } from \"./blockVSCode.js\";\nimport { intakeFileDefineConfig } from \"./intake/intakeFileDefineConfig.js\";\n\nconst zCoverage = z.object({\n\texclude: z.array(z.string()).optional(),\n\tinclude: z.array(z.string()).optional(),\n});\n\nconst zEnvironment = z.string();\n\nconst zExclude = z.array(z.string());\n\nconst zTest = z\n\t.object({\n\t\tcoverage: zCoverage,\n\t\tenvironment: zEnvironment,\n\t\texclude: zExclude,\n\t})\n\t.partial();\n\nfunction intakeFromConfig(files: IntakeDirectory) {\n\tconst rawData = intakeFileDefineConfig(files, [\"vitest.config.ts\"]);\n\tif (typeof rawData?.test !== \"object\") {\n\t\treturn undefined;\n\t}\n\n\tconst parsedData = zTest.safeParse(rawData.test).data;\n\tif (!parsedData) {\n\t\treturn undefined;\n\t}\n\n\treturn {\n\t\tcoverage: parsedData.coverage,\n\t\tenvironment: parsedData.environment,\n\t\texclude: parsedData.exclude,\n\t};\n}\n\nexport const blockVitest = base.createBlock({\n\tabout: {\n\t\tname: \"Vitest\",\n\t},\n\taddons: {\n\t\tactionSteps: z.array(zActionStep).default([]),\n\t\tcoverage: zCoverage.default({}),\n\t\tenvironment: zEnvironment.optional(),\n\t\texclude: zExclude.default([]),\n\t\tflags: z.array(z.string()).default([]),\n\t},\n\tintake({ files, options }) {\n\t\treturn {\n\t\t\t...intakeFromConfig(files),\n\t\t\tflags: options.packageData?.scripts?.test\n\t\t\t\t?.match(/^vitest (.+)/)?.[1]\n\t\t\t\t.split(\" \"),\n\t\t};\n\t},\n\tproduce({ addons }) {\n\t\tconst { actionSteps, coverage, environment, exclude = [] } = addons;\n\t\tconst excludeText = JSON.stringify(\n\t\t\tArray.from(new Set([\"node_modules\", ...exclude])).sort(),\n\t\t);\n\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockCSpell({\n\t\t\t\t\tignorePaths: [\"coverage\"],\n\t\t\t\t}),\n\t\t\t\tblockDevelopmentDocs({\n\t\t\t\t\tsections: {\n\t\t\t\t\t\tTesting: {\n\t\t\t\t\t\t\tcontents: `\n[Vitest](https://vitest.dev) is used for tests.\nYou can run it locally on the command-line:\n\n\\`\\`\\`shell\npnpm run test\n\\`\\`\\`\n\nAdd the \\`--coverage\\` flag to compute test coverage and place reports in the \\`coverage/\\` directory:\n\n\\`\\`\\`shell\npnpm run test --coverage\n\\`\\`\\`\n\nNote that [console-fail-test](https://github.com/JoshuaKGoldberg/console-fail-test) is enabled for all test runs.\nCalls to \\`console.log\\`, \\`console.warn\\`, and other console methods will cause a test to fail.\n\n\n\t\t`,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t\tblockESLint({\n\t\t\t\t\textensions: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\textends: [\"vitest.configs.recommended\"],\n\t\t\t\t\t\t\tfiles: [\"**/*.test.*\"],\n\t\t\t\t\t\t\trules: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tentries: {\n\t\t\t\t\t\t\t\t\t\t\"@typescript-eslint/no-unsafe-assignment\": \"off\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\tsettings: {\n\t\t\t\t\t\t\t\tvitest: { typecheck: true },\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\tignores: [\"coverage\", \"**/*.snap\"],\n\t\t\t\t\timports: [{ source: \"@vitest/eslint-plugin\", specifier: \"vitest\" }],\n\t\t\t\t}),\n\t\t\t\tblockExampleFiles({\n\t\t\t\t\tfiles: {\n\t\t\t\t\t\t\"greet.test.ts\": `import { describe, expect, it, vi } from \"vitest\";\n\nimport { greet } from \"./greet.js\";\n\nconst message = \"Yay, testing!\";\n\ndescribe(greet, () => {\n\tit(\"logs to the console once when message is provided as a string\", () => {\n\t\tconst logger = vi.spyOn(console, \"log\").mockImplementation(() => undefined);\n\n\t\tgreet(message);\n\n\t\texpect(logger).toHaveBeenCalledWith(message);\n\t\texpect(logger).toHaveBeenCalledTimes(1);\n\t});\n\n\tit(\"logs to the console once when message is provided as an object\", () => {\n\t\tconst logger = vi.spyOn(console, \"log\").mockImplementation(() => undefined);\n\n\t\tgreet({ message });\n\n\t\texpect(logger).toHaveBeenCalledWith(message);\n\t\texpect(logger).toHaveBeenCalledTimes(1);\n\t});\n\n\tit(\"logs once when times is not provided in an object\", () => {\n\t\tconst logger = vi.fn();\n\n\t\tgreet({ logger, message });\n\n\t\texpect(logger).toHaveBeenCalledWith(message);\n\t\texpect(logger).toHaveBeenCalledTimes(1);\n\t});\n\n\tit(\"logs a specified number of times when times is provided\", () => {\n\t\tconst logger = vi.fn();\n\t\tconst times = 7;\n\n\t\tgreet({ logger, message, times });\n\n\t\texpect(logger).toHaveBeenCalledWith(message);\n\t\texpect(logger).toHaveBeenCalledTimes(7);\n\t});\n});\n`,\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t\tblockGitignore({\n\t\t\t\t\tignores: [\"/coverage\"],\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: \"Test\",\n\t\t\t\t\t\t\tsteps: [{ run: \"pnpm run test --coverage\" }, ...actionSteps],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t\tblockKnip({\n\t\t\t\t\tentry: [\"src/**/*.test.*\"],\n\t\t\t\t}),\n\t\t\t\tblockPackageJson({\n\t\t\t\t\tproperties: {\n\t\t\t\t\t\tdevDependencies: getPackageDependencies(\n\t\t\t\t\t\t\t\"@vitest/coverage-v8\",\n\t\t\t\t\t\t\t\"@vitest/eslint-plugin\",\n\t\t\t\t\t\t\t\"console-fail-test\",\n\t\t\t\t\t\t\t\"vitest\",\n\t\t\t\t\t\t),\n\t\t\t\t\t\tscripts: {\n\t\t\t\t\t\t\ttest: `vitest ${addons.flags.join(\" \")}`.trim(),\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: [\"/coverage\"],\n\t\t\t\t}),\n\t\t\t\tblockTSDown({\n\t\t\t\t\tentry: [\"!src/**/*.test.*\"],\n\t\t\t\t}),\n\t\t\t\tblockVSCode({\n\t\t\t\t\tdebuggers: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\targs: [\"run\", \"${relativeFile}\"],\n\t\t\t\t\t\t\tautoAttachChildProcesses: true,\n\t\t\t\t\t\t\tconsole: \"integratedTerminal\",\n\t\t\t\t\t\t\tname: \"Debug Current Test File\",\n\t\t\t\t\t\t\tprogram: \"${workspaceRoot}/node_modules/vitest/vitest.mjs\",\n\t\t\t\t\t\t\trequest: \"launch\",\n\t\t\t\t\t\t\tskipFiles: [\"<node_internals>/**\", \"**/node_modules/**\"],\n\t\t\t\t\t\t\tsmartStep: true,\n\t\t\t\t\t\t\ttype: \"node\",\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t\textensions: [\"vitest.explorer\"],\n\t\t\t\t}),\n\t\t\t],\n\t\t\tfiles: {\n\t\t\t\t\"vitest.config.ts\": `import { defineConfig } from \"vitest/config\";\n\nexport default defineConfig({\n\ttest: {\n\t\tclearMocks: true,\n\t\tcoverage: {\n\t\t\tall: true,\n\t\t\t${\n\t\t\t\tcoverage.exclude?.length\n\t\t\t\t\t? `exclude: ${JSON.stringify(coverage.exclude)},\n\t\t\t`\n\t\t\t\t\t: \"\"\n\t\t\t}include: ${JSON.stringify(coverage.include)},\n\t\t\treporter: [\"html\", \"lcov\"],\n\t\t},${\n\t\t\tenvironment\n\t\t\t\t? `\n\t\tenvironment: \"${environment}\",`\n\t\t\t\t: \"\"\n\t\t}\n\t\texclude: [${excludeText.slice(1, excludeText.length - 1)}],\n\t\tsetupFiles: [\"console-fail-test/setup\"],\n\t},\n});\n\t`,\n\t\t\t},\n\t\t};\n\t},\n\ttransition() {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockRemoveDependencies({\n\t\t\t\t\tdependencies: [\n\t\t\t\t\t\t\"@vitest/coverage-istanbul\",\n\t\t\t\t\t\t\"eslint-plugin-jest\",\n\t\t\t\t\t\t\"eslint-plugin-mocha\",\n\t\t\t\t\t\t\"eslint-plugin-vitest\",\n\t\t\t\t\t\t\"jest mocha\",\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t\tblockRemoveFiles({\n\t\t\t\t\tfiles: [\".mocha*\", \"jest.config.*\", \"vitest.config.{c,j,m}*\"],\n\t\t\t\t}),\n\t\t\t\tblockRemoveWorkflows({\n\t\t\t\t\tworkflows: [\"test\"],\n\t\t\t\t}),\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as bingo_stratum21 from "bingo-stratum";
|
|
2
2
|
|
|
3
3
|
//#region src/blocks/blockWebExt.d.ts
|
|
4
|
-
declare const blockWebExt:
|
|
4
|
+
declare const blockWebExt: bingo_stratum21.BlockWithoutAddons<{
|
|
5
5
|
access: "public" | "restricted";
|
|
6
6
|
description: string;
|
|
7
7
|
directory: string;
|
|
@@ -69,7 +69,6 @@ declare const blockWebExt: bingo_stratum1099.BlockWithoutAddons<{
|
|
|
69
69
|
hash?: string | undefined;
|
|
70
70
|
}>> | undefined;
|
|
71
71
|
}>;
|
|
72
|
-
//# sourceMappingURL=blockWebExt.d.ts.map
|
|
73
72
|
//#endregion
|
|
74
73
|
export { blockWebExt };
|
|
75
74
|
//# sourceMappingURL=blockWebExt.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blockWebExt.d.ts","names":[],"sources":["../../src/blocks/blockWebExt.ts"],"sourcesContent":[],"mappings":";;;cASa
|
|
1
|
+
{"version":3,"file":"blockWebExt.d.ts","names":[],"sources":["../../src/blocks/blockWebExt.ts"],"sourcesContent":[],"mappings":";;;cASa,6BAAW;;;EAAX,SAAA,EAAA,MAgHX;;;;;;;;;;EAhHsB,KAAA,EAAA"}
|
|
@@ -1 +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,
|
|
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,WACN;CACD,UAAU;AACT,SAAO,EACN,QAAQ;GACP,YAAY,EACX,aAAa,CAAC,SAAS,EACvB,CAAC;GACF,qBAAqB,EACpB,UAAU;IACT,UAAU;KACT,UAAU;;;;;;;;;;;;;KAaV,eAAe;MACd;OACC,UAAU;;;;;OAKV,SAAS;OACT;MACD;OACC,UAAU;;;;;;;;;;;OAWV,SAAS;OACT;MACD;OACC,UAAU;;;;;;;;;;;;OAYV,SAAS;OACT;MACD;KACD;IACD,SAAS,EACR,UAAU,EACT,OAAO,CACN,8IACA,EACD,EACD;IACD,EACD,CAAC;GACF,qBAAqB,EACpB,MAAM,CACL;IACC,MAAM;IACN,OAAO,CAAC,EAAE,KAAK,cAAc,CAAC;IAC9B,EACD;IACC,MAAM;IACN,OAAO,CAAC,EAAE,KAAK,YAAY,EAAE,EAAE,KAAK,qBAAqB,CAAC;IAC1D,CACD,EACD,CAAC;GACF,eAAe,EACd,SAAS,CAAC,SAAS,oBAAoB,EACvC,CAAC;GACF,kBAAkB,EACjB,SAAS,CAAC,UAAU,EACpB,CAAC;GACF,iBAAiB,EAChB,YAAY;IACX,iBAAiB;KAChB,SAAS;KACT,WAAW;KACX;IACD,SAAS;KACR,OAAO;KACP,KAAK;KACL,gBAAgB;KAChB;IACD,EACD,CAAC;GACF,cAAc,EACb,SAAS,CAAC,UAAU,EACpB,CAAC;GACF,EACD;;CAEF,CAAC"}
|
|
@@ -6,21 +6,20 @@ import { AST_NODE_TYPES, parse } from "@typescript-eslint/typescript-estree";
|
|
|
6
6
|
|
|
7
7
|
//#region src/blocks/eslint/blockESLintIntake.ts
|
|
8
8
|
function blockESLintIntake(sourceText) {
|
|
9
|
-
const
|
|
9
|
+
const configExport = tryCatch(() => parse(sourceText, {
|
|
10
10
|
comment: true,
|
|
11
11
|
loc: true,
|
|
12
12
|
range: true
|
|
13
|
-
}));
|
|
14
|
-
|
|
15
|
-
if (!configExport) return void 0;
|
|
13
|
+
}))?.body.find(nodeIsConfigExport);
|
|
14
|
+
if (!configExport) return;
|
|
16
15
|
const configArguments = configExport.declaration.arguments;
|
|
17
|
-
if (configArguments.length < 2) return
|
|
16
|
+
if (configArguments.length < 2) return;
|
|
18
17
|
const ignores = getConfigIgnores(configArguments[0]);
|
|
19
|
-
if (!ignores) return
|
|
18
|
+
if (!ignores) return;
|
|
20
19
|
const rulesObject = getConfigRulesObject(configArguments.slice(1));
|
|
21
|
-
if (!rulesObject) return
|
|
20
|
+
if (!rulesObject) return;
|
|
22
21
|
const rules = collectRulesObjectGroups(sourceText, rulesObject);
|
|
23
|
-
if (!rules) return
|
|
22
|
+
if (!rules) return;
|
|
24
23
|
return {
|
|
25
24
|
ignores,
|
|
26
25
|
rules
|
|
@@ -31,7 +30,7 @@ function blockESLintIntake(sourceText) {
|
|
|
31
30
|
return true;
|
|
32
31
|
}
|
|
33
32
|
function collectRuleFromProperty(property) {
|
|
34
|
-
if (property.type !== AST_NODE_TYPES.Property || property.key.type !== AST_NODE_TYPES.Literal || typeof property.key.value !== "string") return
|
|
33
|
+
if (property.type !== AST_NODE_TYPES.Property || property.key.type !== AST_NODE_TYPES.Literal || typeof property.key.value !== "string") return;
|
|
35
34
|
const name = property.key.value;
|
|
36
35
|
const { data } = zRuleOptions.safeParse(JSON5.parse(sourceText.slice(...property.value.range)));
|
|
37
36
|
return data && {
|
|
@@ -44,11 +43,10 @@ function blockESLintIntake(sourceText) {
|
|
|
44
43
|
let currentGroup;
|
|
45
44
|
const groups = [];
|
|
46
45
|
for (const property of rulesObject$1.properties) {
|
|
47
|
-
const
|
|
48
|
-
const comment = precedingText.replaceAll(/\/\/ ?|\t\s*/g, "").trim() || void 0;
|
|
46
|
+
const comment = sourceText$1.slice((previousNode?.range[1] ?? rulesObject$1.range[0]) + 1, property.range[0]).replaceAll(/\/\/ ?|\t\s*/g, "").trim() || void 0;
|
|
49
47
|
if (comment === stylisticComment) break;
|
|
50
48
|
const rule = collectRuleFromProperty(property);
|
|
51
|
-
if (!rule) return
|
|
49
|
+
if (!rule) return;
|
|
52
50
|
if (!currentGroup || comment) {
|
|
53
51
|
currentGroup = {
|
|
54
52
|
comment,
|
|
@@ -72,7 +70,7 @@ function blockESLintIntake(sourceText) {
|
|
|
72
70
|
"rules",
|
|
73
71
|
"settings"
|
|
74
72
|
]));
|
|
75
|
-
if (!configObject) return
|
|
73
|
+
if (!configObject) return;
|
|
76
74
|
const rulesObject$1 = configObject.properties[3];
|
|
77
75
|
return rulesObject$1.type === AST_NODE_TYPES.Property && rulesObject$1.value.type === AST_NODE_TYPES.ObjectExpression && rulesObject$1.value;
|
|
78
76
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blockESLintIntake.js","names":["
|
|
1
|
+
{"version":3,"file":"blockESLintIntake.js","names":["parseAST","previousNode: TSESTree.Node | undefined","currentGroup: ExtensionRuleGroup | undefined","groups: ExtensionRuleGroup[]","rulesObject","sourceText"],"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":"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"}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
declare function blockESLintPluginIntake(sourceText: string): {
|
|
3
3
|
configEmoji: [string, string][];
|
|
4
4
|
} | undefined;
|
|
5
|
-
//# sourceMappingURL=blockESLintPluginIntake.d.ts.map
|
|
6
5
|
//#endregion
|
|
7
6
|
export { blockESLintPluginIntake };
|
|
8
7
|
//# sourceMappingURL=blockESLintPluginIntake.d.ts.map
|
|
@@ -10,11 +10,11 @@ function blockESLintPluginIntake(sourceText) {
|
|
|
10
10
|
loc: true,
|
|
11
11
|
range: true
|
|
12
12
|
}));
|
|
13
|
-
if (!ast) return
|
|
13
|
+
if (!ast) return;
|
|
14
14
|
const config = findConfig(ast.body);
|
|
15
|
-
if (!config) return
|
|
15
|
+
if (!config) return;
|
|
16
16
|
const configEmoji = findConfigEmoji(config.properties);
|
|
17
|
-
if (!configEmoji) return
|
|
17
|
+
if (!configEmoji) return;
|
|
18
18
|
const { data } = zConfigEmoji.safeParse(JSON5.parse(sourceText.slice(...configEmoji.range)));
|
|
19
19
|
return data && { configEmoji: data };
|
|
20
20
|
function findConfig(body) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blockESLintPluginIntake.js","names":["
|
|
1
|
+
{"version":3,"file":"blockESLintPluginIntake.js","names":["parseAST"],"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,wBAAwB,YAAoB;CAC3D,MAAM,MAAM,eACXA,MAAS,YAAY;EACpB,SAAS;EACT,KAAK;EACL,OAAO;EACP,CAAC,CACF;AACD,KAAI,CAAC,IACJ;CAGD,MAAM,SAAS,WAAW,IAAI,KAAK;AACnC,KAAI,CAAC,OACJ;CAGD,MAAM,cAAc,gBAAgB,OAAO,WAAW;AACtD,KAAI,CAAC,YACJ;CAGD,MAAM,EAAE,SAAS,aAAa,UAC7B,MAAM,MAAM,WAAW,MAAM,GAAG,YAAY,MAAM,CAAC,CACnD;AAED,QAAO,QAAQ,EAAE,aAAa,MAAM;CAEpC,SAAS,WAAW,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;;CAK/B,SAAS,gBAAgB,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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
//#region src/blocks/eslint/getScriptFileExtension.d.ts
|
|
2
|
+
interface ScriptFileExtensionOptions {
|
|
3
|
+
type?: "commonjs" | "module";
|
|
4
|
+
}
|
|
5
|
+
declare function getScriptFileExtension(options: ScriptFileExtensionOptions): "**/*.{js,mjs,ts}" | "**/*.{js,ts}";
|
|
6
|
+
//#endregion
|
|
7
|
+
export { ScriptFileExtensionOptions, getScriptFileExtension };
|
|
8
|
+
//# sourceMappingURL=getScriptFileExtension.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getScriptFileExtension.d.ts","names":[],"sources":["../../../src/blocks/eslint/getScriptFileExtension.ts"],"sourcesContent":[],"mappings":";UAAiB,0BAAA;EAAA,IAAA,CAAA,EAAA,UAAA,GAAA,QAAA;AAIjB;iBAAgB,sBAAA,UAAgC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
//#region src/blocks/eslint/getScriptFileExtension.ts
|
|
2
|
+
function getScriptFileExtension(options) {
|
|
3
|
+
return options.type === "commonjs" ? "**/*.{js,mjs,ts}" : "**/*.{js,ts}";
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
//#endregion
|
|
7
|
+
export { getScriptFileExtension };
|
|
8
|
+
//# sourceMappingURL=getScriptFileExtension.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getScriptFileExtension.js","names":[],"sources":["../../../src/blocks/eslint/getScriptFileExtension.ts"],"sourcesContent":["export interface ScriptFileExtensionOptions {\n\ttype?: \"commonjs\" | \"module\";\n}\n\nexport function getScriptFileExtension(options: ScriptFileExtensionOptions) {\n\treturn options.type === \"commonjs\" ? \"**/*.{js,mjs,ts}\" : \"**/*.{js,ts}\";\n}\n"],"mappings":";AAIA,SAAgB,uBAAuB,SAAqC;AAC3E,QAAO,QAAQ,SAAS,aAAa,qBAAqB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Extension } from "./schemas.js";
|
|
2
|
+
|
|
3
|
+
//#region src/blocks/eslint/mergeAllExtensions.d.ts
|
|
4
|
+
declare function mergeAllExtensions(...extensions: Extension[]): {
|
|
5
|
+
files: string[];
|
|
6
|
+
rules?: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]> | {
|
|
7
|
+
entries: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]>;
|
|
8
|
+
comment?: string | undefined;
|
|
9
|
+
}[] | undefined;
|
|
10
|
+
settings?: Record<string, unknown> | undefined;
|
|
11
|
+
extends?: string[] | undefined;
|
|
12
|
+
languageOptions?: unknown;
|
|
13
|
+
linterOptions?: unknown;
|
|
14
|
+
plugins?: Record<string, string> | undefined;
|
|
15
|
+
}[];
|
|
16
|
+
//#endregion
|
|
17
|
+
export { mergeAllExtensions };
|
|
18
|
+
//# sourceMappingURL=mergeAllExtensions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mergeAllExtensions.d.ts","names":[],"sources":["../../../src/blocks/eslint/mergeAllExtensions.ts"],"sourcesContent":[],"mappings":";;;iBAEgB,kBAAA,gBAAkC;;EAAlC,KAAA,CAAA,QAAA,CAAA,MAAkB,EAAA,KAAA,GAAA,OAAA,GAAA,MAAA,GAAA,CAAA,OAAA,GAAA,MAAA,EAAA,OAAA,CAAA,GAAA,CAAA,OAAA,GAAA,MAAA,EAAA,OAAA,EAAA,OAAA,CAAA,CAAA,GAAA;IAAgB,OAAA,QAAA,CAAA,MAAA,EAAA,KAAA,GAAA,OAAA,GAAA,MAAA,GAAA,CAAA,OAAA,GAAA,MAAA,EAAA,OAAA,CAAA,GAAA,CAAA,OAAA,GAAA,MAAA,EAAA,OAAA,EAAA,OAAA,CAAA,CAAA"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
//#region src/blocks/eslint/mergeAllExtensions.ts
|
|
2
|
+
function mergeAllExtensions(...extensions) {
|
|
3
|
+
const entries = {};
|
|
4
|
+
for (const extension of extensions) {
|
|
5
|
+
const filesKey = JSON.stringify(extension.files);
|
|
6
|
+
entries[filesKey] = filesKey in entries ? mergeExtensions(entries[filesKey], extension, extension.files) : extension;
|
|
7
|
+
}
|
|
8
|
+
return Object.values(entries);
|
|
9
|
+
}
|
|
10
|
+
function mergeExtensions(a, b, files) {
|
|
11
|
+
return {
|
|
12
|
+
extends: Array.from(new Set([...a.extends ?? [], ...b.extends ?? []])).sort(),
|
|
13
|
+
files,
|
|
14
|
+
languageOptions: (a.languageOptions ?? b.languageOptions) && {
|
|
15
|
+
...a.languageOptions ?? {},
|
|
16
|
+
...b.languageOptions ?? {}
|
|
17
|
+
},
|
|
18
|
+
linterOptions: (a.linterOptions ?? b.linterOptions) && {
|
|
19
|
+
...a.linterOptions ?? {},
|
|
20
|
+
...b.linterOptions ?? {}
|
|
21
|
+
},
|
|
22
|
+
plugins: (a.plugins ?? b.plugins) && {
|
|
23
|
+
...a.plugins,
|
|
24
|
+
...b.plugins
|
|
25
|
+
},
|
|
26
|
+
rules: mergeExtensionsRules(a.rules, b.rules),
|
|
27
|
+
settings: (a.settings ?? b.settings) && {
|
|
28
|
+
...a.settings,
|
|
29
|
+
...b.settings
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
function mergeExtensionsRules(a, b) {
|
|
34
|
+
if (!a || !b) return a ?? b;
|
|
35
|
+
if (Array.isArray(a)) {
|
|
36
|
+
if (Array.isArray(b)) return [...a, ...b];
|
|
37
|
+
return [...a, { entries: b }];
|
|
38
|
+
}
|
|
39
|
+
if (Array.isArray(b)) return [...b, { entries: a }];
|
|
40
|
+
return {
|
|
41
|
+
...a,
|
|
42
|
+
...b
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
//#endregion
|
|
47
|
+
export { mergeAllExtensions };
|
|
48
|
+
//# sourceMappingURL=mergeAllExtensions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mergeAllExtensions.js","names":["entries: Record<string, Extension>"],"sources":["../../../src/blocks/eslint/mergeAllExtensions.ts"],"sourcesContent":["import { Extension, ExtensionRules } from \"./schemas.js\";\n\nexport function mergeAllExtensions(...extensions: Extension[]) {\n\tconst entries: Record<string, Extension> = {};\n\n\tfor (const extension of extensions) {\n\t\tconst filesKey = JSON.stringify(extension.files);\n\n\t\tentries[filesKey] =\n\t\t\tfilesKey in entries\n\t\t\t\t? mergeExtensions(entries[filesKey], extension, extension.files)\n\t\t\t\t: extension;\n\t}\n\n\treturn Object.values(entries);\n}\n\nfunction mergeExtensions(\n\ta: Extension,\n\tb: Extension,\n\tfiles: string[],\n): Extension {\n\treturn {\n\t\textends: Array.from(\n\t\t\tnew Set([...(a.extends ?? []), ...(b.extends ?? [])]),\n\t\t).sort(),\n\t\tfiles,\n\t\tlanguageOptions: (a.languageOptions ?? b.languageOptions) && {\n\t\t\t...(a.languageOptions ?? {}),\n\t\t\t...(b.languageOptions ?? {}),\n\t\t},\n\t\tlinterOptions: (a.linterOptions ?? b.linterOptions) && {\n\t\t\t...(a.linterOptions ?? {}),\n\t\t\t...(b.linterOptions ?? {}),\n\t\t},\n\t\tplugins: (a.plugins ?? b.plugins) && { ...a.plugins, ...b.plugins },\n\t\trules: mergeExtensionsRules(a.rules, b.rules),\n\t\tsettings: (a.settings ?? b.settings) && { ...a.settings, ...b.settings },\n\t};\n}\n\nfunction mergeExtensionsRules(\n\ta: ExtensionRules | undefined,\n\tb: ExtensionRules | undefined,\n): ExtensionRules | undefined {\n\tif (!a || !b) {\n\t\treturn a ?? b;\n\t}\n\n\tif (Array.isArray(a)) {\n\t\tif (Array.isArray(b)) {\n\t\t\treturn [...a, ...b];\n\t\t}\n\n\t\treturn [...a, { entries: b }];\n\t}\n\n\tif (Array.isArray(b)) {\n\t\treturn [...b, { entries: a }];\n\t}\n\n\treturn { ...a, ...b };\n}\n"],"mappings":";AAEA,SAAgB,mBAAmB,GAAG,YAAyB;CAC9D,MAAMA,UAAqC,EAAE;AAE7C,MAAK,MAAM,aAAa,YAAY;EACnC,MAAM,WAAW,KAAK,UAAU,UAAU,MAAM;AAEhD,UAAQ,YACP,YAAY,UACT,gBAAgB,QAAQ,WAAW,WAAW,UAAU,MAAM,GAC9D;;AAGL,QAAO,OAAO,OAAO,QAAQ;;AAG9B,SAAS,gBACR,GACA,GACA,OACY;AACZ,QAAO;EACN,SAAS,MAAM,KACd,IAAI,IAAI,CAAC,GAAI,EAAE,WAAW,EAAE,EAAG,GAAI,EAAE,WAAW,EAAE,CAAE,CAAC,CACrD,CAAC,MAAM;EACR;EACA,kBAAkB,EAAE,mBAAmB,EAAE,oBAAoB;GAC5D,GAAI,EAAE,mBAAmB,EAAE;GAC3B,GAAI,EAAE,mBAAmB,EAAE;GAC3B;EACD,gBAAgB,EAAE,iBAAiB,EAAE,kBAAkB;GACtD,GAAI,EAAE,iBAAiB,EAAE;GACzB,GAAI,EAAE,iBAAiB,EAAE;GACzB;EACD,UAAU,EAAE,WAAW,EAAE,YAAY;GAAE,GAAG,EAAE;GAAS,GAAG,EAAE;GAAS;EACnE,OAAO,qBAAqB,EAAE,OAAO,EAAE,MAAM;EAC7C,WAAW,EAAE,YAAY,EAAE,aAAa;GAAE,GAAG,EAAE;GAAU,GAAG,EAAE;GAAU;EACxE;;AAGF,SAAS,qBACR,GACA,GAC6B;AAC7B,KAAI,CAAC,KAAK,CAAC,EACV,QAAO,KAAK;AAGb,KAAI,MAAM,QAAQ,EAAE,EAAE;AACrB,MAAI,MAAM,QAAQ,EAAE,CACnB,QAAO,CAAC,GAAG,GAAG,GAAG,EAAE;AAGpB,SAAO,CAAC,GAAG,GAAG,EAAE,SAAS,GAAG,CAAC;;AAG9B,KAAI,MAAM,QAAQ,EAAE,CACnB,QAAO,CAAC,GAAG,GAAG,EAAE,SAAS,GAAG,CAAC;AAG9B,QAAO;EAAE,GAAG;EAAG,GAAG;EAAG"}
|
|
@@ -15,7 +15,7 @@ declare const zExtensionRuleGroup: z.ZodObject<{
|
|
|
15
15
|
comment?: string | undefined;
|
|
16
16
|
}>;
|
|
17
17
|
type ExtensionRuleGroup = z.infer<typeof zExtensionRuleGroup>;
|
|
18
|
-
declare const
|
|
18
|
+
declare const zRulesArray: z.ZodArray<z.ZodObject<{
|
|
19
19
|
comment: z.ZodOptional<z.ZodString>;
|
|
20
20
|
entries: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodLiteral<"error">, z.ZodLiteral<"off">, z.ZodLiteral<"warn">, z.ZodTuple<[z.ZodUnion<[z.ZodLiteral<"error">, z.ZodLiteral<"warn">]>, z.ZodUnknown], null>, z.ZodTuple<[z.ZodUnion<[z.ZodLiteral<"error">, z.ZodLiteral<"warn">]>, z.ZodUnknown, z.ZodUnknown], null>]>>;
|
|
21
21
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -24,15 +24,28 @@ declare const zExtensionRules: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodUnion<[
|
|
|
24
24
|
}, {
|
|
25
25
|
entries: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]>;
|
|
26
26
|
comment?: string | undefined;
|
|
27
|
-
}>, "many"
|
|
27
|
+
}>, "many">;
|
|
28
|
+
type RulesArray = z.infer<typeof zRulesArray>;
|
|
29
|
+
declare const zRulesRecord: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodLiteral<"error">, z.ZodLiteral<"off">, z.ZodLiteral<"warn">, z.ZodTuple<[z.ZodUnion<[z.ZodLiteral<"error">, z.ZodLiteral<"warn">]>, z.ZodUnknown], null>, z.ZodTuple<[z.ZodUnion<[z.ZodLiteral<"error">, z.ZodLiteral<"warn">]>, z.ZodUnknown, z.ZodUnknown], null>]>>;
|
|
30
|
+
type RulesRecord = z.infer<typeof zRulesRecord>;
|
|
31
|
+
declare const zExtensionRules: z.ZodUnion<[z.ZodArray<z.ZodObject<{
|
|
32
|
+
comment: z.ZodOptional<z.ZodString>;
|
|
33
|
+
entries: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodLiteral<"error">, z.ZodLiteral<"off">, z.ZodLiteral<"warn">, z.ZodTuple<[z.ZodUnion<[z.ZodLiteral<"error">, z.ZodLiteral<"warn">]>, z.ZodUnknown], null>, z.ZodTuple<[z.ZodUnion<[z.ZodLiteral<"error">, z.ZodLiteral<"warn">]>, z.ZodUnknown, z.ZodUnknown], null>]>>;
|
|
34
|
+
}, "strip", z.ZodTypeAny, {
|
|
35
|
+
entries: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]>;
|
|
36
|
+
comment?: string | undefined;
|
|
37
|
+
}, {
|
|
38
|
+
entries: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]>;
|
|
39
|
+
comment?: string | undefined;
|
|
40
|
+
}>, "many">, z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodLiteral<"error">, z.ZodLiteral<"off">, z.ZodLiteral<"warn">, z.ZodTuple<[z.ZodUnion<[z.ZodLiteral<"error">, z.ZodLiteral<"warn">]>, z.ZodUnknown], null>, z.ZodTuple<[z.ZodUnion<[z.ZodLiteral<"error">, z.ZodLiteral<"warn">]>, z.ZodUnknown, z.ZodUnknown], null>]>>]>;
|
|
28
41
|
type ExtensionRules = z.infer<typeof zExtensionRules>;
|
|
29
42
|
declare const zExtension: z.ZodObject<{
|
|
30
43
|
extends: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
31
|
-
files: z.
|
|
44
|
+
files: z.ZodArray<z.ZodString, "many">;
|
|
32
45
|
languageOptions: z.ZodOptional<z.ZodUnknown>;
|
|
33
46
|
linterOptions: z.ZodOptional<z.ZodUnknown>;
|
|
34
47
|
plugins: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
35
|
-
rules: z.ZodOptional<z.ZodUnion<[z.
|
|
48
|
+
rules: z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodObject<{
|
|
36
49
|
comment: z.ZodOptional<z.ZodString>;
|
|
37
50
|
entries: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodLiteral<"error">, z.ZodLiteral<"off">, z.ZodLiteral<"warn">, z.ZodTuple<[z.ZodUnion<[z.ZodLiteral<"error">, z.ZodLiteral<"warn">]>, z.ZodUnknown], null>, z.ZodTuple<[z.ZodUnion<[z.ZodLiteral<"error">, z.ZodLiteral<"warn">]>, z.ZodUnknown, z.ZodUnknown], null>]>>;
|
|
38
51
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -41,30 +54,30 @@ declare const zExtension: z.ZodObject<{
|
|
|
41
54
|
}, {
|
|
42
55
|
entries: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]>;
|
|
43
56
|
comment?: string | undefined;
|
|
44
|
-
}>, "many">]>>;
|
|
57
|
+
}>, "many">, z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodLiteral<"error">, z.ZodLiteral<"off">, z.ZodLiteral<"warn">, z.ZodTuple<[z.ZodUnion<[z.ZodLiteral<"error">, z.ZodLiteral<"warn">]>, z.ZodUnknown], null>, z.ZodTuple<[z.ZodUnion<[z.ZodLiteral<"error">, z.ZodLiteral<"warn">]>, z.ZodUnknown, z.ZodUnknown], null>]>>]>>;
|
|
45
58
|
settings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
46
59
|
}, "strip", z.ZodTypeAny, {
|
|
47
|
-
files
|
|
60
|
+
files: string[];
|
|
48
61
|
rules?: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]> | {
|
|
49
62
|
entries: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]>;
|
|
50
63
|
comment?: string | undefined;
|
|
51
64
|
}[] | undefined;
|
|
52
|
-
plugins?: Record<string, string> | undefined;
|
|
53
65
|
settings?: Record<string, unknown> | undefined;
|
|
54
66
|
extends?: string[] | undefined;
|
|
55
67
|
languageOptions?: unknown;
|
|
56
68
|
linterOptions?: unknown;
|
|
69
|
+
plugins?: Record<string, string> | undefined;
|
|
57
70
|
}, {
|
|
58
|
-
files
|
|
71
|
+
files: string[];
|
|
59
72
|
rules?: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]> | {
|
|
60
73
|
entries: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]>;
|
|
61
74
|
comment?: string | undefined;
|
|
62
75
|
}[] | undefined;
|
|
63
|
-
plugins?: Record<string, string> | undefined;
|
|
64
76
|
settings?: Record<string, unknown> | undefined;
|
|
65
77
|
extends?: string[] | undefined;
|
|
66
78
|
languageOptions?: unknown;
|
|
67
79
|
linterOptions?: unknown;
|
|
80
|
+
plugins?: Record<string, string> | undefined;
|
|
68
81
|
}>;
|
|
69
82
|
type Extension = z.infer<typeof zExtension>;
|
|
70
83
|
declare const zPackageImport: z.ZodObject<{
|
|
@@ -95,8 +108,6 @@ declare const zPackageImport: z.ZodObject<{
|
|
|
95
108
|
specifier: string;
|
|
96
109
|
types?: boolean | undefined;
|
|
97
110
|
}>;
|
|
98
|
-
//# sourceMappingURL=schemas.d.ts.map
|
|
99
|
-
|
|
100
111
|
//#endregion
|
|
101
|
-
export { Extension, ExtensionRuleGroup, ExtensionRules, RuleOptions, zConfigEmoji, zExtension, zExtensionRuleGroup, zExtensionRules, zPackageImport, zRuleOptions };
|
|
112
|
+
export { Extension, ExtensionRuleGroup, ExtensionRules, RuleOptions, RulesArray, RulesRecord, zConfigEmoji, zExtension, zExtensionRuleGroup, zExtensionRules, zPackageImport, zRuleOptions, zRulesArray, zRulesRecord };
|
|
102
113
|
//# sourceMappingURL=schemas.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.d.ts","names":[],"sources":["../../../src/blocks/eslint/schemas.ts"],"sourcesContent":[],"mappings":";;;cAEa,cAAY,CAAA,CAAA,YAAA,CAAA,CAAA,SAAA,CAAA,CAAA,UAAA,CAAA,CAAA,WAAA,CAAA,CAAA;cAIZ,cAAY,CAAA,CAAA,UAAA,CAAA,CAAA,qBAAA,CAAA,CAAA,mBAAA,CAAA,CAAA,oBAAA,CAAA,CAAA,UAAA,CAAA,CAAA,UAAA,CAAA,CAAA,qBAAA,CAAA,CAAA,sBAAA,CAAA,CAAA,oBAAA,CAAA,CAAA,UAAA,CAAA,CAAA,UAAA,CAAA,CAAA,qBAAA,CAAA,CAAA,sBAAA,CAAA,CAAA,YAAA,CAAA,CAAA;AAJZ,KAgBD,WAAA,GAAc,CAAA,CAAE,KAdhB,CAAA,OAc6B,YAd7B,CAAA;
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","names":[],"sources":["../../../src/blocks/eslint/schemas.ts"],"sourcesContent":[],"mappings":"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"}
|
|
@@ -17,10 +17,12 @@ const zExtensionRuleGroup = z.object({
|
|
|
17
17
|
comment: z.string().optional(),
|
|
18
18
|
entries: z.record(z.string(), zRuleOptions)
|
|
19
19
|
});
|
|
20
|
-
const
|
|
20
|
+
const zRulesArray = z.array(zExtensionRuleGroup);
|
|
21
|
+
const zRulesRecord = z.record(z.string(), zRuleOptions);
|
|
22
|
+
const zExtensionRules = z.union([zRulesArray, zRulesRecord]);
|
|
21
23
|
const zExtension = z.object({
|
|
22
24
|
extends: z.array(z.string()).optional(),
|
|
23
|
-
files: z.array(z.string())
|
|
25
|
+
files: z.array(z.string()),
|
|
24
26
|
languageOptions: z.unknown().optional(),
|
|
25
27
|
linterOptions: z.unknown().optional(),
|
|
26
28
|
plugins: z.record(z.string(), z.string()).optional(),
|
|
@@ -37,5 +39,5 @@ const zPackageImport = z.object({
|
|
|
37
39
|
});
|
|
38
40
|
|
|
39
41
|
//#endregion
|
|
40
|
-
export { zConfigEmoji, zExtension, zExtensionRuleGroup, zExtensionRules, zPackageImport, zRuleOptions };
|
|
42
|
+
export { zConfigEmoji, zExtension, zExtensionRuleGroup, zExtensionRules, zPackageImport, zRuleOptions, zRulesArray, zRulesRecord };
|
|
41
43
|
//# sourceMappingURL=schemas.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.js","names":[],"sources":["../../../src/blocks/eslint/schemas.ts"],"sourcesContent":["import { z } from \"zod\";\n\nexport const zConfigEmoji = z\n\t.array(z.tuple([z.string(), z.string()]))\n\t.optional();\n\nexport const zRuleOptions = z.union([\n\tz.literal(\"error\"),\n\tz.literal(\"off\"),\n\tz.literal(\"warn\"),\n\tz.tuple([z.union([z.literal(\"error\"), z.literal(\"warn\")]), z.unknown()]),\n\tz.tuple([\n\t\tz.union([z.literal(\"error\"), z.literal(\"warn\")]),\n\t\tz.unknown(),\n\t\tz.unknown(),\n\t]),\n]);\n\nexport type RuleOptions = z.infer<typeof zRuleOptions>;\n\nexport const zExtensionRuleGroup = z.object({\n\tcomment: z.string().optional(),\n\tentries: z.record(z.string(), zRuleOptions),\n});\n\nexport type ExtensionRuleGroup = z.infer<typeof zExtensionRuleGroup>;\n\nexport const
|
|
1
|
+
{"version":3,"file":"schemas.js","names":[],"sources":["../../../src/blocks/eslint/schemas.ts"],"sourcesContent":["import { z } from \"zod\";\n\nexport const zConfigEmoji = z\n\t.array(z.tuple([z.string(), z.string()]))\n\t.optional();\n\nexport const zRuleOptions = z.union([\n\tz.literal(\"error\"),\n\tz.literal(\"off\"),\n\tz.literal(\"warn\"),\n\tz.tuple([z.union([z.literal(\"error\"), z.literal(\"warn\")]), z.unknown()]),\n\tz.tuple([\n\t\tz.union([z.literal(\"error\"), z.literal(\"warn\")]),\n\t\tz.unknown(),\n\t\tz.unknown(),\n\t]),\n]);\n\nexport type RuleOptions = z.infer<typeof zRuleOptions>;\n\nexport const zExtensionRuleGroup = z.object({\n\tcomment: z.string().optional(),\n\tentries: z.record(z.string(), zRuleOptions),\n});\n\nexport type ExtensionRuleGroup = z.infer<typeof zExtensionRuleGroup>;\n\nexport const zRulesArray = z.array(zExtensionRuleGroup);\n\nexport type RulesArray = z.infer<typeof zRulesArray>;\n\nexport const zRulesRecord = z.record(z.string(), zRuleOptions);\n\nexport type RulesRecord = z.infer<typeof zRulesRecord>;\n\nexport const zExtensionRules = z.union([zRulesArray, zRulesRecord]);\n\nexport type ExtensionRules = z.infer<typeof zExtensionRules>;\n\nexport const zExtension = z.object({\n\textends: z.array(z.string()).optional(),\n\tfiles: z.array(z.string()),\n\tlanguageOptions: z.unknown().optional(),\n\tlinterOptions: z.unknown().optional(),\n\tplugins: z.record(z.string(), z.string()).optional(),\n\trules: zExtensionRules.optional(),\n\tsettings: z.record(z.string(), z.unknown()).optional(),\n});\n\nexport type Extension = z.infer<typeof zExtension>;\n\nexport const zPackageImport = z.object({\n\tsource: z.union([\n\t\tz.string(),\n\t\tz.object({ packageName: z.string(), version: z.string() }),\n\t]),\n\tspecifier: z.string(),\n\ttypes: z.boolean().optional(),\n});\n"],"mappings":";;;AAEA,MAAa,eAAe,EAC1B,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,CACxC,UAAU;AAEZ,MAAa,eAAe,EAAE,MAAM;CACnC,EAAE,QAAQ,QAAQ;CAClB,EAAE,QAAQ,MAAM;CAChB,EAAE,QAAQ,OAAO;CACjB,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,QAAQ,QAAQ,EAAE,EAAE,QAAQ,OAAO,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;CACxE,EAAE,MAAM;EACP,EAAE,MAAM,CAAC,EAAE,QAAQ,QAAQ,EAAE,EAAE,QAAQ,OAAO,CAAC,CAAC;EAChD,EAAE,SAAS;EACX,EAAE,SAAS;EACX,CAAC;CACF,CAAC;AAIF,MAAa,sBAAsB,EAAE,OAAO;CAC3C,SAAS,EAAE,QAAQ,CAAC,UAAU;CAC9B,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa;CAC3C,CAAC;AAIF,MAAa,cAAc,EAAE,MAAM,oBAAoB;AAIvD,MAAa,eAAe,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa;AAI9D,MAAa,kBAAkB,EAAE,MAAM,CAAC,aAAa,aAAa,CAAC;AAInE,MAAa,aAAa,EAAE,OAAO;CAClC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,UAAU;CACvC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC;CAC1B,iBAAiB,EAAE,SAAS,CAAC,UAAU;CACvC,eAAe,EAAE,SAAS,CAAC,UAAU;CACrC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAC,UAAU;CACpD,OAAO,gBAAgB,UAAU;CACjC,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,SAAS,CAAC,CAAC,UAAU;CACtD,CAAC;AAIF,MAAa,iBAAiB,EAAE,OAAO;CACtC,QAAQ,EAAE,MAAM,CACf,EAAE,QAAQ,EACV,EAAE,OAAO;EAAE,aAAa,EAAE,QAAQ;EAAE,SAAS,EAAE,QAAQ;EAAE,CAAC,CAC1D,CAAC;CACF,WAAW,EAAE,QAAQ;CACrB,OAAO,EAAE,SAAS,CAAC,UAAU;CAC7B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createJobName.d.ts","names":[],"sources":["../../../src/blocks/files/createJobName.ts"],"sourcesContent":[],"mappings":";iBAAgB,aAAA
|
|
1
|
+
{"version":3,"file":"createJobName.d.ts","names":[],"sources":["../../../src/blocks/files/createJobName.ts"],"sourcesContent":[],"mappings":";iBAAgB,aAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createJobName.js","names":[
|
|
1
|
+
{"version":3,"file":"createJobName.js","names":[],"sources":["../../../src/blocks/files/createJobName.ts"],"sourcesContent":["export function createJobName(label: string) {\n\treturn label.replaceAll(/[?()]/g, \"\").replaceAll(\" \", \"_\").toLowerCase();\n}\n"],"mappings":";AAAA,SAAgB,cAAc,OAAe;AAC5C,QAAO,MAAM,WAAW,UAAU,GAAG,CAAC,WAAW,KAAK,IAAI,CAAC,aAAa"}
|