create-typescript-app 1.75.1 → 1.77.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/README.md +1 -1
- package/lib/bin/help.js +35 -35
- package/lib/bin/help.js.map +1 -1
- package/lib/bin/promptForMode.js +6 -6
- package/lib/bin/promptForMode.js.map +1 -1
- package/lib/create/createWithOptions.js +12 -13
- package/lib/create/createWithOptions.js.map +1 -1
- package/lib/index.d.ts +45 -0
- package/lib/index.js +5 -0
- package/lib/index.js.map +1 -1
- package/lib/next/base.d.ts +101 -0
- package/lib/next/base.js +140 -0
- package/lib/next/base.js.map +1 -0
- package/lib/next/blocks/blockAllContributors.d.ts +48 -0
- package/lib/next/blocks/blockAllContributors.js +59 -0
- package/lib/next/blocks/blockAllContributors.js.map +1 -0
- package/lib/next/blocks/blockAreTheTypesWrong.d.ts +48 -0
- package/lib/next/blocks/blockAreTheTypesWrong.js +29 -0
- package/lib/next/blocks/blockAreTheTypesWrong.js.map +1 -0
- package/lib/next/blocks/blockCSpell.d.ts +51 -0
- package/lib/next/blocks/blockCSpell.js +77 -0
- package/lib/next/blocks/blockCSpell.js.map +1 -0
- package/lib/next/blocks/blockContributingDocs.d.ts +48 -0
- package/lib/next/blocks/blockContributingDocs.js +116 -0
- package/lib/next/blocks/blockContributingDocs.js.map +1 -0
- package/lib/next/blocks/blockContributorCovenant.d.ts +48 -0
- package/lib/next/blocks/blockContributorCovenant.js +151 -0
- package/lib/next/blocks/blockContributorCovenant.js.map +1 -0
- package/lib/next/blocks/blockDevelopmentDocs.d.ts +62 -0
- package/lib/next/blocks/blockDevelopmentDocs.js +86 -0
- package/lib/next/blocks/blockDevelopmentDocs.js.map +1 -0
- package/lib/next/blocks/blockESLint.d.ts +73 -0
- package/lib/next/blocks/blockESLint.js +225 -0
- package/lib/next/blocks/blockESLint.js.map +1 -0
- package/lib/next/blocks/blockESLintComments.d.ts +48 -0
- package/lib/next/blocks/blockESLintComments.js +26 -0
- package/lib/next/blocks/blockESLintComments.js.map +1 -0
- package/lib/next/blocks/blockESLintJSDoc.d.ts +48 -0
- package/lib/next/blocks/blockESLintJSDoc.js +25 -0
- package/lib/next/blocks/blockESLintJSDoc.js.map +1 -0
- package/lib/next/blocks/blockESLintJSONC.d.ts +48 -0
- package/lib/next/blocks/blockESLintJSONC.js +21 -0
- package/lib/next/blocks/blockESLintJSONC.js.map +1 -0
- package/lib/next/blocks/blockESLintMarkdown.d.ts +48 -0
- package/lib/next/blocks/blockESLintMarkdown.js +27 -0
- package/lib/next/blocks/blockESLintMarkdown.js.map +1 -0
- package/lib/next/blocks/blockESLintMoreStyling.d.ts +48 -0
- package/lib/next/blocks/blockESLintMoreStyling.js +34 -0
- package/lib/next/blocks/blockESLintMoreStyling.js.map +1 -0
- package/lib/next/blocks/blockESLintNode.d.ts +48 -0
- package/lib/next/blocks/blockESLintNode.js +33 -0
- package/lib/next/blocks/blockESLintNode.js.map +1 -0
- package/lib/next/blocks/blockESLintPackageJson.d.ts +48 -0
- package/lib/next/blocks/blockESLintPackageJson.js +26 -0
- package/lib/next/blocks/blockESLintPackageJson.js.map +1 -0
- package/lib/next/blocks/blockESLintPerfectionist.d.ts +48 -0
- package/lib/next/blocks/blockESLintPerfectionist.js +32 -0
- package/lib/next/blocks/blockESLintPerfectionist.js.map +1 -0
- package/lib/next/blocks/blockESLintRegexp.d.ts +48 -0
- package/lib/next/blocks/blockESLintRegexp.js +23 -0
- package/lib/next/blocks/blockESLintRegexp.js.map +1 -0
- package/lib/next/blocks/blockESLintYML.d.ts +48 -0
- package/lib/next/blocks/blockESLintYML.js +46 -0
- package/lib/next/blocks/blockESLintYML.js.map +1 -0
- package/lib/next/blocks/blockFunding.d.ts +48 -0
- package/lib/next/blocks/blockFunding.js +20 -0
- package/lib/next/blocks/blockFunding.js.map +1 -0
- package/lib/next/blocks/blockGitHubActionsCI.d.ts +60 -0
- package/lib/next/blocks/blockGitHubActionsCI.js +122 -0
- package/lib/next/blocks/blockGitHubActionsCI.js.map +1 -0
- package/lib/next/blocks/blockGitHubIssueTemplates.d.ts +48 -0
- package/lib/next/blocks/blockGitHubIssueTemplates.js +217 -0
- package/lib/next/blocks/blockGitHubIssueTemplates.js.map +1 -0
- package/lib/next/blocks/blockGitHubPRTemplate.d.ts +48 -0
- package/lib/next/blocks/blockGitHubPRTemplate.js +32 -0
- package/lib/next/blocks/blockGitHubPRTemplate.js.map +1 -0
- package/lib/next/blocks/blockGitignore.d.ts +50 -0
- package/lib/next/blocks/blockGitignore.js +23 -0
- package/lib/next/blocks/blockGitignore.js.map +1 -0
- package/lib/next/blocks/blockKnip.d.ts +48 -0
- package/lib/next/blocks/blockKnip.js +58 -0
- package/lib/next/blocks/blockKnip.js.map +1 -0
- package/lib/next/blocks/blockMITLicense.d.ts +48 -0
- package/lib/next/blocks/blockMITLicense.js +46 -0
- package/lib/next/blocks/blockMITLicense.js.map +1 -0
- package/lib/next/blocks/blockMarkdownlint.d.ts +50 -0
- package/lib/next/blocks/blockMarkdownlint.js +77 -0
- package/lib/next/blocks/blockMarkdownlint.js.map +1 -0
- package/lib/next/blocks/blockNvmrc.d.ts +48 -0
- package/lib/next/blocks/blockNvmrc.js +26 -0
- package/lib/next/blocks/blockNvmrc.js.map +1 -0
- package/lib/next/blocks/blockPRCompliance.d.ts +48 -0
- package/lib/next/blocks/blockPRCompliance.js +48 -0
- package/lib/next/blocks/blockPRCompliance.js.map +1 -0
- package/lib/next/blocks/blockPackageJson.d.ts +56 -0
- package/lib/next/blocks/blockPackageJson.js +81 -0
- package/lib/next/blocks/blockPackageJson.js.map +1 -0
- package/lib/next/blocks/blockPnpmDedupe.d.ts +48 -0
- package/lib/next/blocks/blockPnpmDedupe.js +51 -0
- package/lib/next/blocks/blockPnpmDedupe.js.map +1 -0
- package/lib/next/blocks/blockPrettier.d.ts +57 -0
- package/lib/next/blocks/blockPrettier.js +104 -0
- package/lib/next/blocks/blockPrettier.js.map +1 -0
- package/lib/next/blocks/blockPrettierPluginCurly.d.ts +48 -0
- package/lib/next/blocks/blockPrettierPluginCurly.js +20 -0
- package/lib/next/blocks/blockPrettierPluginCurly.js.map +1 -0
- package/lib/next/blocks/blockPrettierPluginPackageJson.d.ts +48 -0
- package/lib/next/blocks/blockPrettierPluginPackageJson.js +20 -0
- package/lib/next/blocks/blockPrettierPluginPackageJson.js.map +1 -0
- package/lib/next/blocks/blockPrettierPluginSh.d.ts +48 -0
- package/lib/next/blocks/blockPrettierPluginSh.js +20 -0
- package/lib/next/blocks/blockPrettierPluginSh.js.map +1 -0
- package/lib/next/blocks/blockREADME.d.ts +50 -0
- package/lib/next/blocks/blockREADME.js +63 -0
- package/lib/next/blocks/blockREADME.js.map +1 -0
- package/lib/next/blocks/blockReleaseIt.d.ts +48 -0
- package/lib/next/blocks/blockReleaseIt.js +126 -0
- package/lib/next/blocks/blockReleaseIt.js.map +1 -0
- package/lib/next/blocks/blockRenovate.d.ts +48 -0
- package/lib/next/blocks/blockRenovate.js +34 -0
- package/lib/next/blocks/blockRenovate.js.map +1 -0
- package/lib/next/blocks/blockSecurityDocs.d.ts +48 -0
- package/lib/next/blocks/blockSecurityDocs.js +28 -0
- package/lib/next/blocks/blockSecurityDocs.js.map +1 -0
- package/lib/next/blocks/blockTSup.d.ts +50 -0
- package/lib/next/blocks/blockTSup.js +78 -0
- package/lib/next/blocks/blockTSup.js.map +1 -0
- package/lib/next/blocks/blockTemplatedBy.d.ts +50 -0
- package/lib/next/blocks/blockTemplatedBy.js +34 -0
- package/lib/next/blocks/blockTemplatedBy.js.map +1 -0
- package/lib/next/blocks/blockTypeScript.d.ts +48 -0
- package/lib/next/blocks/blockTypeScript.js +109 -0
- package/lib/next/blocks/blockTypeScript.js.map +1 -0
- package/lib/next/blocks/blockVSCode.d.ts +57 -0
- package/lib/next/blocks/blockVSCode.js +87 -0
- package/lib/next/blocks/blockVSCode.js.map +1 -0
- package/lib/next/blocks/blockVitest.d.ts +55 -0
- package/lib/next/blocks/blockVitest.js +154 -0
- package/lib/next/blocks/blockVitest.js.map +1 -0
- package/lib/next/blocks/index.d.ts +43 -0
- package/lib/next/blocks/index.js +43 -0
- package/lib/next/blocks/index.js.map +1 -0
- package/lib/next/blocks/options.fakes.d.ts +13 -0
- package/lib/next/blocks/options.fakes.js +15 -0
- package/lib/next/blocks/options.fakes.js.map +1 -0
- package/lib/next/blocks/packageData.d.ts +5 -0
- package/lib/next/blocks/packageData.js +25 -0
- package/lib/next/blocks/packageData.js.map +1 -0
- package/lib/next/presetCommon.d.ts +99 -0
- package/lib/next/presetCommon.js +21 -0
- package/lib/next/presetCommon.js.map +1 -0
- package/lib/next/presetEverything.d.ts +99 -0
- package/lib/next/presetEverything.js +59 -0
- package/lib/next/presetEverything.js.map +1 -0
- package/lib/next/presetMinimal.d.ts +99 -0
- package/lib/next/presetMinimal.js +45 -0
- package/lib/next/presetMinimal.js.map +1 -0
- package/lib/next/template.d.ts +99 -0
- package/lib/next/template.js +21 -0
- package/lib/next/template.js.map +1 -0
- package/lib/next/utils/removeTrailingSlash.d.ts +3 -0
- package/lib/next/utils/removeTrailingSlash.js +7 -0
- package/lib/next/utils/removeTrailingSlash.js.map +1 -0
- package/lib/next/utils/sortObject.d.ts +5 -0
- package/lib/next/utils/sortObject.js +9 -0
- package/lib/next/utils/sortObject.js.map +1 -0
- package/lib/next/utils/swallowError.d.ts +3 -0
- package/lib/next/utils/swallowError.js +7 -0
- package/lib/next/utils/swallowError.js.map +1 -0
- package/lib/shared/cli/spinners.d.ts +1 -1
- package/lib/shared/cli/spinners.js.map +1 -1
- package/lib/shared/isUsingCreateEngine.d.ts +3 -0
- package/lib/shared/isUsingCreateEngine.js +7 -0
- package/lib/shared/isUsingCreateEngine.js.map +1 -0
- package/lib/shared/options/args.d.ts +39 -13
- package/lib/shared/options/args.js +5 -0
- package/lib/shared/options/args.js.map +1 -1
- package/lib/shared/options/augmentOptionsWithExcludes.js +2 -2
- package/lib/shared/options/augmentOptionsWithExcludes.js.map +1 -1
- package/lib/shared/options/createOptionDefaults/index.d.ts +2 -4
- package/lib/shared/options/createOptionDefaults/index.js +4 -13
- package/lib/shared/options/createOptionDefaults/index.js.map +1 -1
- package/lib/shared/options/createOptionDefaults/readDefaultsFromReadme.js +4 -1
- package/lib/shared/options/createOptionDefaults/readDefaultsFromReadme.js.map +1 -1
- package/lib/shared/options/createOptionDefaults/readEmails.d.ts +11 -0
- package/lib/shared/options/createOptionDefaults/readEmails.js +14 -0
- package/lib/shared/options/createOptionDefaults/readEmails.js.map +1 -0
- package/lib/shared/options/createOptionDefaults/readFunding.d.ts +3 -0
- package/lib/shared/options/createOptionDefaults/readFunding.js +11 -0
- package/lib/shared/options/createOptionDefaults/readFunding.js.map +1 -0
- package/lib/shared/options/createOptionDefaults/readGuide.d.ts +6 -0
- package/lib/shared/options/createOptionDefaults/readGuide.js +18 -0
- package/lib/shared/options/createOptionDefaults/readGuide.js.map +1 -0
- package/lib/shared/options/ensureRepositoryExists.js +1 -1
- package/lib/shared/options/ensureRepositoryExists.js.map +1 -1
- package/lib/shared/options/exclusionKeys.d.ts +1 -1
- package/lib/shared/options/exclusionKeys.js +6 -0
- package/lib/shared/options/exclusionKeys.js.map +1 -1
- package/lib/shared/options/optionsSchema.d.ts +6 -2
- package/lib/shared/options/optionsSchema.js +1 -0
- package/lib/shared/options/optionsSchema.js.map +1 -1
- package/lib/shared/options/readOptions.d.ts +1 -1
- package/lib/shared/options/readOptions.js +1 -0
- package/lib/shared/options/readOptions.js.map +1 -1
- package/lib/shared/types.d.ts +32 -24
- package/lib/steps/addOwnerAsAllContributor.js +2 -2
- package/lib/steps/addOwnerAsAllContributor.js.map +1 -1
- package/lib/steps/clearUnnecessaryFiles.js +3 -4
- package/lib/steps/clearUnnecessaryFiles.js.map +1 -1
- package/lib/steps/finalizeDependencies.js +47 -44
- package/lib/steps/finalizeDependencies.js.map +1 -1
- package/lib/steps/populateCSpellDictionary.js +7 -7
- package/lib/steps/populateCSpellDictionary.js.map +1 -1
- package/lib/steps/removeSetupScripts.js +9 -3
- package/lib/steps/removeSetupScripts.js.map +1 -1
- package/lib/steps/uninstallPackages.js +10 -3
- package/lib/steps/uninstallPackages.js.map +1 -1
- package/lib/steps/updateReadme.d.ts +1 -1
- package/lib/steps/updateReadme.js +1 -1
- package/lib/steps/updateReadme.js.map +1 -1
- package/lib/steps/writeReadme/index.js +19 -19
- package/lib/steps/writeReadme/index.js.map +1 -1
- package/lib/steps/writing/creation/createCSpellConfig.d.ts +7 -0
- package/lib/steps/writing/creation/createCSpellConfig.js +27 -0
- package/lib/steps/writing/creation/createCSpellConfig.js.map +1 -0
- package/lib/steps/writing/creation/createDotGitignore.js +7 -5
- package/lib/steps/writing/creation/createDotGitignore.js.map +1 -1
- package/lib/steps/writing/creation/createESLintConfig.js +22 -46
- package/lib/steps/writing/creation/createESLintConfig.js.map +1 -1
- package/lib/steps/writing/creation/createTsupConfig.js +10 -10
- package/lib/steps/writing/creation/createTsupConfig.js.map +1 -1
- package/lib/steps/writing/creation/dotGitHub/createDevelopment/index.js +57 -41
- package/lib/steps/writing/creation/dotGitHub/createDevelopment/index.js.map +1 -1
- package/lib/steps/writing/creation/dotGitHub/createDevelopment/splitIntoSections.js +1 -1
- package/lib/steps/writing/creation/dotGitHub/createDevelopment/splitIntoSections.js.map +1 -1
- package/lib/steps/writing/creation/dotGitHub/createDotGitHubFiles.js +5 -5
- package/lib/steps/writing/creation/dotGitHub/createDotGitHubFiles.js.map +1 -1
- package/lib/steps/writing/creation/dotGitHub/createMultiWorkflowFile.d.ts +11 -9
- package/lib/steps/writing/creation/dotGitHub/createMultiWorkflowFile.js.map +1 -1
- package/lib/steps/writing/creation/dotGitHub/createSoloWorkflowFile.d.ts +16 -16
- package/lib/steps/writing/creation/dotGitHub/createSoloWorkflowFile.js.map +1 -1
- package/lib/steps/writing/creation/dotGitHub/createWorkflows.js +5 -1
- package/lib/steps/writing/creation/dotGitHub/createWorkflows.js.map +1 -1
- package/lib/steps/writing/creation/formatters/formatIgnoreFile.d.ts +1 -1
- package/lib/steps/writing/creation/formatters/formatIgnoreFile.js +1 -1
- package/lib/steps/writing/creation/formatters/formatIgnoreFile.js.map +1 -1
- package/lib/steps/writing/creation/formatters/formatTypeScript.js +1 -1
- package/lib/steps/writing/creation/formatters/formatTypeScript.js.map +1 -1
- package/lib/steps/writing/creation/formatters/formatYaml.js +3 -1
- package/lib/steps/writing/creation/formatters/formatYaml.js.map +1 -1
- package/lib/steps/writing/creation/index.d.ts +1 -1
- package/lib/steps/writing/creation/index.js +49 -1
- package/lib/steps/writing/creation/index.js.map +1 -1
- package/lib/steps/writing/creation/rootFiles.js +5 -15
- package/lib/steps/writing/creation/rootFiles.js.map +1 -1
- package/lib/steps/writing/creation/writePackageJson.js +69 -62
- package/lib/steps/writing/creation/writePackageJson.js.map +1 -1
- package/lib/steps/writing/types.d.ts +1 -1
- package/lib/steps/writing/writeStructure.js +9 -1
- package/lib/steps/writing/writeStructure.js.map +1 -1
- package/lib/steps/writing/writeStructureWorker.js +1 -1
- package/lib/steps/writing/writeStructureWorker.js.map +1 -1
- package/package.json +57 -52
- package/lib/shared/options/createOptionDefaults/readDefaultsFromDevelopment.d.ts +0 -8
- package/lib/shared/options/createOptionDefaults/readDefaultsFromDevelopment.js +0 -22
- package/lib/shared/options/createOptionDefaults/readDefaultsFromDevelopment.js.map +0 -1
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import * as create from 'create';
|
|
2
|
+
|
|
3
|
+
declare const blockMarkdownlint: create.BlockWithAddons<{
|
|
4
|
+
ignores: string[];
|
|
5
|
+
}, {
|
|
6
|
+
description: string;
|
|
7
|
+
email: {
|
|
8
|
+
github: string;
|
|
9
|
+
npm: string;
|
|
10
|
+
};
|
|
11
|
+
title: string;
|
|
12
|
+
owner: string;
|
|
13
|
+
repository: string;
|
|
14
|
+
access?: "public" | "restricted" | undefined;
|
|
15
|
+
author?: string | undefined;
|
|
16
|
+
bin?: string | undefined;
|
|
17
|
+
login?: string | undefined;
|
|
18
|
+
contributors?: {
|
|
19
|
+
name: string;
|
|
20
|
+
avatar_url: string;
|
|
21
|
+
contributions: string[];
|
|
22
|
+
login: string;
|
|
23
|
+
profile: string;
|
|
24
|
+
}[] | undefined;
|
|
25
|
+
documentation?: string | undefined;
|
|
26
|
+
funding?: string | undefined;
|
|
27
|
+
guide?: {
|
|
28
|
+
href: string;
|
|
29
|
+
title: string;
|
|
30
|
+
} | undefined;
|
|
31
|
+
hideTemplatedBy?: boolean | undefined;
|
|
32
|
+
keywords?: string[] | undefined;
|
|
33
|
+
logo?: {
|
|
34
|
+
alt: string;
|
|
35
|
+
src: string;
|
|
36
|
+
} | undefined;
|
|
37
|
+
node?: {
|
|
38
|
+
minimum: string;
|
|
39
|
+
pinned?: string | undefined;
|
|
40
|
+
} | undefined;
|
|
41
|
+
packageData?: {
|
|
42
|
+
dependencies?: Record<string, string> | undefined;
|
|
43
|
+
devDependencies?: Record<string, string> | undefined;
|
|
44
|
+
scripts?: Record<string, string> | undefined;
|
|
45
|
+
} | undefined;
|
|
46
|
+
preserveGeneratedFrom?: boolean | undefined;
|
|
47
|
+
version?: string | undefined;
|
|
48
|
+
}>;
|
|
49
|
+
|
|
50
|
+
export { blockMarkdownlint };
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { base } from "../base.js";
|
|
3
|
+
import { blockCSpell } from "./blockCSpell.js";
|
|
4
|
+
import { blockDevelopmentDocs } from "./blockDevelopmentDocs.js";
|
|
5
|
+
import { blockGitHubActionsCI } from "./blockGitHubActionsCI.js";
|
|
6
|
+
import { blockPackageJson } from "./blockPackageJson.js";
|
|
7
|
+
import { blockVSCode } from "./blockVSCode.js";
|
|
8
|
+
import { getPackageDependencies } from "./packageData.js";
|
|
9
|
+
const blockMarkdownlint = base.createBlock({
|
|
10
|
+
about: {
|
|
11
|
+
name: "Markdownlint"
|
|
12
|
+
},
|
|
13
|
+
addons: {
|
|
14
|
+
ignores: z.array(z.string()).default([])
|
|
15
|
+
},
|
|
16
|
+
produce({ addons }) {
|
|
17
|
+
const { ignores } = addons;
|
|
18
|
+
return {
|
|
19
|
+
addons: [
|
|
20
|
+
blockCSpell({
|
|
21
|
+
words: ["markdownlintignore"]
|
|
22
|
+
}),
|
|
23
|
+
blockDevelopmentDocs({
|
|
24
|
+
sections: {
|
|
25
|
+
Linting: {
|
|
26
|
+
contents: {
|
|
27
|
+
items: [
|
|
28
|
+
`- \`pnpm lint:md\` ([Markdownlint](https://github.com/DavidAnson/markdownlint)): Checks Markdown source files`
|
|
29
|
+
]
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}),
|
|
34
|
+
blockGitHubActionsCI({
|
|
35
|
+
jobs: [
|
|
36
|
+
{
|
|
37
|
+
name: "Lint Markdown",
|
|
38
|
+
steps: [{ run: "pnpm lint:md" }]
|
|
39
|
+
}
|
|
40
|
+
]
|
|
41
|
+
}),
|
|
42
|
+
blockPackageJson({
|
|
43
|
+
properties: {
|
|
44
|
+
devDependencies: getPackageDependencies(
|
|
45
|
+
"markdownlint",
|
|
46
|
+
"markdownlint-cli",
|
|
47
|
+
"sentences-per-line"
|
|
48
|
+
),
|
|
49
|
+
scripts: {
|
|
50
|
+
"lint:md": 'markdownlint "**/*.md" ".github/**/*.md" --rules sentences-per-line'
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}),
|
|
54
|
+
blockVSCode({
|
|
55
|
+
extensions: ["DavidAnson.vscode-markdownlint"]
|
|
56
|
+
})
|
|
57
|
+
],
|
|
58
|
+
files: {
|
|
59
|
+
".markdownlint.json": JSON.stringify({
|
|
60
|
+
extends: "markdownlint/style/prettier",
|
|
61
|
+
"first-line-h1": false,
|
|
62
|
+
"no-inline-html": false
|
|
63
|
+
}),
|
|
64
|
+
".markdownlintignore": [
|
|
65
|
+
".github/CODE_OF_CONDUCT.md",
|
|
66
|
+
"CHANGELOG.md",
|
|
67
|
+
"node_modules/",
|
|
68
|
+
...ignores
|
|
69
|
+
].sort().join("\n")
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
export {
|
|
75
|
+
blockMarkdownlint
|
|
76
|
+
};
|
|
77
|
+
//# sourceMappingURL=blockMarkdownlint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/next/blocks/blockMarkdownlint.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { base } from \"../base.js\";\nimport { blockCSpell } from \"./blockCSpell.js\";\nimport { blockDevelopmentDocs } from \"./blockDevelopmentDocs.js\";\nimport { blockGitHubActionsCI } from \"./blockGitHubActionsCI.js\";\nimport { blockPackageJson } from \"./blockPackageJson.js\";\nimport { blockVSCode } from \"./blockVSCode.js\";\nimport { getPackageDependencies } from \"./packageData.js\";\n\nexport const blockMarkdownlint = base.createBlock({\n\tabout: {\n\t\tname: \"Markdownlint\",\n\t},\n\taddons: {\n\t\tignores: z.array(z.string()).default([]),\n\t},\n\tproduce({ addons }) {\n\t\tconst { ignores } = addons;\n\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockCSpell({\n\t\t\t\t\twords: [\"markdownlintignore\"],\n\t\t\t\t}),\n\t\t\t\tblockDevelopmentDocs({\n\t\t\t\t\tsections: {\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:md\\` ([Markdownlint](https://github.com/DavidAnson/markdownlint)): Checks Markdown source 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: \"Lint Markdown\",\n\t\t\t\t\t\t\tsteps: [{ run: \"pnpm lint:md\" }],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t\tblockPackageJson({\n\t\t\t\t\tproperties: {\n\t\t\t\t\t\tdevDependencies: getPackageDependencies(\n\t\t\t\t\t\t\t\"markdownlint\",\n\t\t\t\t\t\t\t\"markdownlint-cli\",\n\t\t\t\t\t\t\t\"sentences-per-line\",\n\t\t\t\t\t\t),\n\t\t\t\t\t\tscripts: {\n\t\t\t\t\t\t\t\"lint:md\":\n\t\t\t\t\t\t\t\t'markdownlint \"**/*.md\" \".github/**/*.md\" --rules sentences-per-line',\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t\tblockVSCode({\n\t\t\t\t\textensions: [\"DavidAnson.vscode-markdownlint\"],\n\t\t\t\t}),\n\t\t\t],\n\t\t\tfiles: {\n\t\t\t\t\".markdownlint.json\": JSON.stringify({\n\t\t\t\t\textends: \"markdownlint/style/prettier\",\n\t\t\t\t\t\"first-line-h1\": false,\n\t\t\t\t\t\"no-inline-html\": false,\n\t\t\t\t}),\n\t\t\t\t\".markdownlintignore\": [\n\t\t\t\t\t\".github/CODE_OF_CONDUCT.md\",\n\t\t\t\t\t\"CHANGELOG.md\",\n\t\t\t\t\t\"node_modules/\",\n\t\t\t\t\t...ignores,\n\t\t\t\t]\n\t\t\t\t\t.sort()\n\t\t\t\t\t.join(\"\\n\"),\n\t\t\t},\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,SAAS;AAElB,SAAS,YAAY;AACrB,SAAS,mBAAmB;AAC5B,SAAS,4BAA4B;AACrC,SAAS,4BAA4B;AACrC,SAAS,wBAAwB;AACjC,SAAS,mBAAmB;AAC5B,SAAS,8BAA8B;AAEhC,MAAM,oBAAoB,KAAK,YAAY;AAAA,EACjD,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,QAAQ;AAAA,IACP,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;AAAA,EACxC;AAAA,EACA,QAAQ,EAAE,OAAO,GAAG;AACnB,UAAM,EAAE,QAAQ,IAAI;AAEpB,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,YAAY;AAAA,UACX,OAAO,CAAC,oBAAoB;AAAA,QAC7B,CAAC;AAAA,QACD,qBAAqB;AAAA,UACpB,UAAU;AAAA,YACT,SAAS;AAAA,cACR,UAAU;AAAA,gBACT,OAAO;AAAA,kBACN;AAAA,gBACD;AAAA,cACD;AAAA,YACD;AAAA,UACD;AAAA,QACD,CAAC;AAAA,QACD,qBAAqB;AAAA,UACpB,MAAM;AAAA,YACL;AAAA,cACC,MAAM;AAAA,cACN,OAAO,CAAC,EAAE,KAAK,eAAe,CAAC;AAAA,YAChC;AAAA,UACD;AAAA,QACD,CAAC;AAAA,QACD,iBAAiB;AAAA,UAChB,YAAY;AAAA,YACX,iBAAiB;AAAA,cAChB;AAAA,cACA;AAAA,cACA;AAAA,YACD;AAAA,YACA,SAAS;AAAA,cACR,WACC;AAAA,YACF;AAAA,UACD;AAAA,QACD,CAAC;AAAA,QACD,YAAY;AAAA,UACX,YAAY,CAAC,gCAAgC;AAAA,QAC9C,CAAC;AAAA,MACF;AAAA,MACA,OAAO;AAAA,QACN,sBAAsB,KAAK,UAAU;AAAA,UACpC,SAAS;AAAA,UACT,iBAAiB;AAAA,UACjB,kBAAkB;AAAA,QACnB,CAAC;AAAA,QACD,uBAAuB;AAAA,UACtB;AAAA,UACA;AAAA,UACA;AAAA,UACA,GAAG;AAAA,QACJ,EACE,KAAK,EACL,KAAK,IAAI;AAAA,MACZ;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import * as create from 'create';
|
|
2
|
+
|
|
3
|
+
declare const blockNvmrc: create.BlockWithoutAddons<{
|
|
4
|
+
description: string;
|
|
5
|
+
email: {
|
|
6
|
+
github: string;
|
|
7
|
+
npm: string;
|
|
8
|
+
};
|
|
9
|
+
title: string;
|
|
10
|
+
owner: string;
|
|
11
|
+
repository: string;
|
|
12
|
+
access?: "public" | "restricted" | undefined;
|
|
13
|
+
author?: string | undefined;
|
|
14
|
+
bin?: string | undefined;
|
|
15
|
+
login?: string | undefined;
|
|
16
|
+
contributors?: {
|
|
17
|
+
name: string;
|
|
18
|
+
avatar_url: string;
|
|
19
|
+
contributions: string[];
|
|
20
|
+
login: string;
|
|
21
|
+
profile: string;
|
|
22
|
+
}[] | undefined;
|
|
23
|
+
documentation?: string | undefined;
|
|
24
|
+
funding?: string | undefined;
|
|
25
|
+
guide?: {
|
|
26
|
+
href: string;
|
|
27
|
+
title: string;
|
|
28
|
+
} | undefined;
|
|
29
|
+
hideTemplatedBy?: boolean | undefined;
|
|
30
|
+
keywords?: string[] | undefined;
|
|
31
|
+
logo?: {
|
|
32
|
+
alt: string;
|
|
33
|
+
src: string;
|
|
34
|
+
} | undefined;
|
|
35
|
+
node?: {
|
|
36
|
+
minimum: string;
|
|
37
|
+
pinned?: string | undefined;
|
|
38
|
+
} | undefined;
|
|
39
|
+
packageData?: {
|
|
40
|
+
dependencies?: Record<string, string> | undefined;
|
|
41
|
+
devDependencies?: Record<string, string> | undefined;
|
|
42
|
+
scripts?: Record<string, string> | undefined;
|
|
43
|
+
} | undefined;
|
|
44
|
+
preserveGeneratedFrom?: boolean | undefined;
|
|
45
|
+
version?: string | undefined;
|
|
46
|
+
}>;
|
|
47
|
+
|
|
48
|
+
export { blockNvmrc };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { base } from "../base.js";
|
|
2
|
+
import { blockPrettier } from "./blockPrettier.js";
|
|
3
|
+
const blockNvmrc = base.createBlock({
|
|
4
|
+
about: {
|
|
5
|
+
name: "Nvmrc"
|
|
6
|
+
},
|
|
7
|
+
produce({ options }) {
|
|
8
|
+
return {
|
|
9
|
+
addons: [
|
|
10
|
+
blockPrettier({
|
|
11
|
+
overrides: [{ files: ".nvmrc", options: { parser: "yaml" } }]
|
|
12
|
+
})
|
|
13
|
+
],
|
|
14
|
+
...options.node?.pinned && {
|
|
15
|
+
files: {
|
|
16
|
+
".nvmrc": `${options.node.pinned}
|
|
17
|
+
`
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
export {
|
|
24
|
+
blockNvmrc
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=blockNvmrc.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/next/blocks/blockNvmrc.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { blockPrettier } from \"./blockPrettier.js\";\n\nexport const blockNvmrc = base.createBlock({\n\tabout: {\n\t\tname: \"Nvmrc\",\n\t},\n\tproduce({ options }) {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockPrettier({\n\t\t\t\t\toverrides: [{ files: \".nvmrc\", options: { parser: \"yaml\" } }],\n\t\t\t\t}),\n\t\t\t],\n\t\t\t...(options.node?.pinned && {\n\t\t\t\tfiles: {\n\t\t\t\t\t\".nvmrc\": `${options.node.pinned}\\n`,\n\t\t\t\t},\n\t\t\t}),\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,YAAY;AACrB,SAAS,qBAAqB;AAEvB,MAAM,aAAa,KAAK,YAAY;AAAA,EAC1C,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,QAAQ,EAAE,QAAQ,GAAG;AACpB,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,cAAc;AAAA,UACb,WAAW,CAAC,EAAE,OAAO,UAAU,SAAS,EAAE,QAAQ,OAAO,EAAE,CAAC;AAAA,QAC7D,CAAC;AAAA,MACF;AAAA,MACA,GAAI,QAAQ,MAAM,UAAU;AAAA,QAC3B,OAAO;AAAA,UACN,UAAU,GAAG,QAAQ,KAAK,MAAM;AAAA;AAAA,QACjC;AAAA,MACD;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import * as create from 'create';
|
|
2
|
+
|
|
3
|
+
declare const blockPRCompliance: create.BlockWithoutAddons<{
|
|
4
|
+
description: string;
|
|
5
|
+
email: {
|
|
6
|
+
github: string;
|
|
7
|
+
npm: string;
|
|
8
|
+
};
|
|
9
|
+
title: string;
|
|
10
|
+
owner: string;
|
|
11
|
+
repository: string;
|
|
12
|
+
access?: "public" | "restricted" | undefined;
|
|
13
|
+
author?: string | undefined;
|
|
14
|
+
bin?: string | undefined;
|
|
15
|
+
login?: string | undefined;
|
|
16
|
+
contributors?: {
|
|
17
|
+
name: string;
|
|
18
|
+
avatar_url: string;
|
|
19
|
+
contributions: string[];
|
|
20
|
+
login: string;
|
|
21
|
+
profile: string;
|
|
22
|
+
}[] | undefined;
|
|
23
|
+
documentation?: string | undefined;
|
|
24
|
+
funding?: string | undefined;
|
|
25
|
+
guide?: {
|
|
26
|
+
href: string;
|
|
27
|
+
title: string;
|
|
28
|
+
} | undefined;
|
|
29
|
+
hideTemplatedBy?: boolean | undefined;
|
|
30
|
+
keywords?: string[] | undefined;
|
|
31
|
+
logo?: {
|
|
32
|
+
alt: string;
|
|
33
|
+
src: string;
|
|
34
|
+
} | undefined;
|
|
35
|
+
node?: {
|
|
36
|
+
minimum: string;
|
|
37
|
+
pinned?: string | undefined;
|
|
38
|
+
} | undefined;
|
|
39
|
+
packageData?: {
|
|
40
|
+
dependencies?: Record<string, string> | undefined;
|
|
41
|
+
devDependencies?: Record<string, string> | undefined;
|
|
42
|
+
scripts?: Record<string, string> | undefined;
|
|
43
|
+
} | undefined;
|
|
44
|
+
preserveGeneratedFrom?: boolean | undefined;
|
|
45
|
+
version?: string | undefined;
|
|
46
|
+
}>;
|
|
47
|
+
|
|
48
|
+
export { blockPRCompliance };
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { createSoloWorkflowFile } from "../../steps/writing/creation/dotGitHub/createSoloWorkflowFile.js";
|
|
2
|
+
import { base } from "../base.js";
|
|
3
|
+
const blockPRCompliance = base.createBlock({
|
|
4
|
+
about: {
|
|
5
|
+
name: "PR Compliance"
|
|
6
|
+
},
|
|
7
|
+
produce() {
|
|
8
|
+
return {
|
|
9
|
+
files: {
|
|
10
|
+
".github": {
|
|
11
|
+
workflows: {
|
|
12
|
+
"compliance.yml": createSoloWorkflowFile({
|
|
13
|
+
name: "Compliance",
|
|
14
|
+
on: {
|
|
15
|
+
pull_request: {
|
|
16
|
+
branches: ["main"],
|
|
17
|
+
types: ["edited", "opened", "reopened", "synchronize"]
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
permissions: {
|
|
21
|
+
"pull-requests": "write"
|
|
22
|
+
},
|
|
23
|
+
steps: [
|
|
24
|
+
{
|
|
25
|
+
uses: "mtfoley/pr-compliance-action@main",
|
|
26
|
+
with: {
|
|
27
|
+
"body-auto-close": false,
|
|
28
|
+
"ignore-authors": [
|
|
29
|
+
"allcontributors",
|
|
30
|
+
"allcontributors[bot]",
|
|
31
|
+
"renovate",
|
|
32
|
+
"renovate[bot]"
|
|
33
|
+
].join("\n"),
|
|
34
|
+
"ignore-team-members": false
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
]
|
|
38
|
+
})
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
export {
|
|
46
|
+
blockPRCompliance
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=blockPRCompliance.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/next/blocks/blockPRCompliance.ts"],"sourcesContent":["import { createSoloWorkflowFile } from \"../../steps/writing/creation/dotGitHub/createSoloWorkflowFile.js\";\nimport { base } from \"../base.js\";\n\nexport const blockPRCompliance = base.createBlock({\n\tabout: {\n\t\tname: \"PR Compliance\",\n\t},\n\tproduce() {\n\t\treturn {\n\t\t\tfiles: {\n\t\t\t\t\".github\": {\n\t\t\t\t\tworkflows: {\n\t\t\t\t\t\t\"compliance.yml\": createSoloWorkflowFile({\n\t\t\t\t\t\t\tname: \"Compliance\",\n\t\t\t\t\t\t\ton: {\n\t\t\t\t\t\t\t\tpull_request: {\n\t\t\t\t\t\t\t\t\tbranches: [\"main\"],\n\t\t\t\t\t\t\t\t\ttypes: [\"edited\", \"opened\", \"reopened\", \"synchronize\"],\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tpermissions: {\n\t\t\t\t\t\t\t\t\"pull-requests\": \"write\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tsteps: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tuses: \"mtfoley/pr-compliance-action@main\",\n\t\t\t\t\t\t\t\t\twith: {\n\t\t\t\t\t\t\t\t\t\t\"body-auto-close\": false,\n\t\t\t\t\t\t\t\t\t\t\"ignore-authors\": [\n\t\t\t\t\t\t\t\t\t\t\t\"allcontributors\",\n\t\t\t\t\t\t\t\t\t\t\t\"allcontributors[bot]\",\n\t\t\t\t\t\t\t\t\t\t\t\"renovate\",\n\t\t\t\t\t\t\t\t\t\t\t\"renovate[bot]\",\n\t\t\t\t\t\t\t\t\t\t].join(\"\\n\"),\n\t\t\t\t\t\t\t\t\t\t\"ignore-team-members\": false,\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},\n\t\t\t},\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,8BAA8B;AACvC,SAAS,YAAY;AAEd,MAAM,oBAAoB,KAAK,YAAY;AAAA,EACjD,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,UAAU;AACT,WAAO;AAAA,MACN,OAAO;AAAA,QACN,WAAW;AAAA,UACV,WAAW;AAAA,YACV,kBAAkB,uBAAuB;AAAA,cACxC,MAAM;AAAA,cACN,IAAI;AAAA,gBACH,cAAc;AAAA,kBACb,UAAU,CAAC,MAAM;AAAA,kBACjB,OAAO,CAAC,UAAU,UAAU,YAAY,aAAa;AAAA,gBACtD;AAAA,cACD;AAAA,cACA,aAAa;AAAA,gBACZ,iBAAiB;AAAA,cAClB;AAAA,cACA,OAAO;AAAA,gBACN;AAAA,kBACC,MAAM;AAAA,kBACN,MAAM;AAAA,oBACL,mBAAmB;AAAA,oBACnB,kBAAkB;AAAA,sBACjB;AAAA,sBACA;AAAA,sBACA;AAAA,sBACA;AAAA,oBACD,EAAE,KAAK,IAAI;AAAA,oBACX,uBAAuB;AAAA,kBACxB;AAAA,gBACD;AAAA,cACD;AAAA,YACD,CAAC;AAAA,UACF;AAAA,QACD;AAAA,MACD;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import * as create from 'create';
|
|
2
|
+
|
|
3
|
+
declare const blockPackageJson: create.BlockWithAddons<{
|
|
4
|
+
properties: {
|
|
5
|
+
dependencies?: Record<string, string> | undefined;
|
|
6
|
+
devDependencies?: Record<string, string> | undefined;
|
|
7
|
+
scripts?: Record<string, string> | undefined;
|
|
8
|
+
files?: string[] | undefined;
|
|
9
|
+
peerDependencies?: Record<string, string> | undefined;
|
|
10
|
+
} & Record<string, unknown>;
|
|
11
|
+
}, {
|
|
12
|
+
description: string;
|
|
13
|
+
email: {
|
|
14
|
+
github: string;
|
|
15
|
+
npm: string;
|
|
16
|
+
};
|
|
17
|
+
title: string;
|
|
18
|
+
owner: string;
|
|
19
|
+
repository: string;
|
|
20
|
+
access?: "public" | "restricted" | undefined;
|
|
21
|
+
author?: string | undefined;
|
|
22
|
+
bin?: string | undefined;
|
|
23
|
+
login?: string | undefined;
|
|
24
|
+
contributors?: {
|
|
25
|
+
name: string;
|
|
26
|
+
avatar_url: string;
|
|
27
|
+
contributions: string[];
|
|
28
|
+
login: string;
|
|
29
|
+
profile: string;
|
|
30
|
+
}[] | undefined;
|
|
31
|
+
documentation?: string | undefined;
|
|
32
|
+
funding?: string | undefined;
|
|
33
|
+
guide?: {
|
|
34
|
+
href: string;
|
|
35
|
+
title: string;
|
|
36
|
+
} | undefined;
|
|
37
|
+
hideTemplatedBy?: boolean | undefined;
|
|
38
|
+
keywords?: string[] | undefined;
|
|
39
|
+
logo?: {
|
|
40
|
+
alt: string;
|
|
41
|
+
src: string;
|
|
42
|
+
} | undefined;
|
|
43
|
+
node?: {
|
|
44
|
+
minimum: string;
|
|
45
|
+
pinned?: string | undefined;
|
|
46
|
+
} | undefined;
|
|
47
|
+
packageData?: {
|
|
48
|
+
dependencies?: Record<string, string> | undefined;
|
|
49
|
+
devDependencies?: Record<string, string> | undefined;
|
|
50
|
+
scripts?: Record<string, string> | undefined;
|
|
51
|
+
} | undefined;
|
|
52
|
+
preserveGeneratedFrom?: boolean | undefined;
|
|
53
|
+
version?: string | undefined;
|
|
54
|
+
}>;
|
|
55
|
+
|
|
56
|
+
export { blockPackageJson };
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import sortPackageJson from "sort-package-json";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
import { base } from "../base.js";
|
|
4
|
+
const blockPackageJson = base.createBlock({
|
|
5
|
+
about: {
|
|
6
|
+
name: "Package JSON"
|
|
7
|
+
},
|
|
8
|
+
addons: {
|
|
9
|
+
// TODO: Find a zod package for this?
|
|
10
|
+
properties: z.intersection(
|
|
11
|
+
z.object({
|
|
12
|
+
dependencies: z.record(z.string(), z.string()).optional(),
|
|
13
|
+
devDependencies: z.record(z.string(), z.string()).optional(),
|
|
14
|
+
files: z.array(z.string()).optional(),
|
|
15
|
+
peerDependencies: z.record(z.string(), z.string()).optional(),
|
|
16
|
+
scripts: z.record(z.string(), z.string()).optional()
|
|
17
|
+
}),
|
|
18
|
+
z.record(z.string(), z.unknown())
|
|
19
|
+
).default({})
|
|
20
|
+
},
|
|
21
|
+
produce({ addons, options }) {
|
|
22
|
+
return {
|
|
23
|
+
commands: [
|
|
24
|
+
{
|
|
25
|
+
phase: 0,
|
|
26
|
+
// TODO: ???
|
|
27
|
+
script: "pnpm i"
|
|
28
|
+
}
|
|
29
|
+
],
|
|
30
|
+
files: {
|
|
31
|
+
"package.json": sortPackageJson(
|
|
32
|
+
JSON.stringify({
|
|
33
|
+
...addons.properties,
|
|
34
|
+
author: { email: options.email.npm, name: options.author },
|
|
35
|
+
bin: options.bin,
|
|
36
|
+
dependencies: {
|
|
37
|
+
...options.packageData?.dependencies,
|
|
38
|
+
...addons.properties.dependencies
|
|
39
|
+
},
|
|
40
|
+
description: options.description,
|
|
41
|
+
devDependencies: {
|
|
42
|
+
...options.packageData?.devDependencies,
|
|
43
|
+
...addons.properties.devDependencies
|
|
44
|
+
},
|
|
45
|
+
...options.node && {
|
|
46
|
+
engines: {
|
|
47
|
+
node: `>=${options.node.minimum}`
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
files: [
|
|
51
|
+
options.bin?.replace(/^\.\//, ""),
|
|
52
|
+
...addons.properties.files ?? [],
|
|
53
|
+
"package.json",
|
|
54
|
+
"README.md"
|
|
55
|
+
].filter(Boolean).sort(),
|
|
56
|
+
keywords: options.keywords?.flatMap(
|
|
57
|
+
(keyword) => keyword.split(/ /)
|
|
58
|
+
),
|
|
59
|
+
license: "MIT",
|
|
60
|
+
main: "./lib/index.js",
|
|
61
|
+
name: options.repository,
|
|
62
|
+
repository: {
|
|
63
|
+
type: "git",
|
|
64
|
+
url: `https://github.com/${options.owner}/${options.repository}`
|
|
65
|
+
},
|
|
66
|
+
scripts: {
|
|
67
|
+
...options.packageData?.scripts,
|
|
68
|
+
...addons.properties.scripts
|
|
69
|
+
},
|
|
70
|
+
type: "module",
|
|
71
|
+
version: options.version ?? "0.0.0"
|
|
72
|
+
})
|
|
73
|
+
)
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
export {
|
|
79
|
+
blockPackageJson
|
|
80
|
+
};
|
|
81
|
+
//# sourceMappingURL=blockPackageJson.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/next/blocks/blockPackageJson.ts"],"sourcesContent":["import sortPackageJson from \"sort-package-json\";\nimport { z } from \"zod\";\n\nimport { base } from \"../base.js\";\n\nexport const blockPackageJson = base.createBlock({\n\tabout: {\n\t\tname: \"Package JSON\",\n\t},\n\taddons: {\n\t\t// TODO: Find a zod package for this?\n\t\tproperties: z\n\t\t\t.intersection(\n\t\t\t\tz.object({\n\t\t\t\t\tdependencies: z.record(z.string(), z.string()).optional(),\n\t\t\t\t\tdevDependencies: z.record(z.string(), z.string()).optional(),\n\t\t\t\t\tfiles: z.array(z.string()).optional(),\n\t\t\t\t\tpeerDependencies: z.record(z.string(), z.string()).optional(),\n\t\t\t\t\tscripts: z.record(z.string(), z.string()).optional(),\n\t\t\t\t}),\n\t\t\t\tz.record(z.string(), z.unknown()),\n\t\t\t)\n\t\t\t.default({}),\n\t},\n\tproduce({ addons, options }) {\n\t\treturn {\n\t\t\tcommands: [\n\t\t\t\t{\n\t\t\t\t\tphase: 0, // TODO: ???\n\t\t\t\t\tscript: \"pnpm i\",\n\t\t\t\t},\n\t\t\t],\n\t\t\tfiles: {\n\t\t\t\t\"package.json\": sortPackageJson(\n\t\t\t\t\tJSON.stringify({\n\t\t\t\t\t\t...addons.properties,\n\t\t\t\t\t\tauthor: { email: options.email.npm, name: options.author },\n\t\t\t\t\t\tbin: options.bin,\n\t\t\t\t\t\tdependencies: {\n\t\t\t\t\t\t\t...options.packageData?.dependencies,\n\t\t\t\t\t\t\t...addons.properties.dependencies,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tdescription: options.description,\n\t\t\t\t\t\tdevDependencies: {\n\t\t\t\t\t\t\t...options.packageData?.devDependencies,\n\t\t\t\t\t\t\t...addons.properties.devDependencies,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t...(options.node && {\n\t\t\t\t\t\t\tengines: {\n\t\t\t\t\t\t\t\tnode: `>=${options.node.minimum}`,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tfiles: [\n\t\t\t\t\t\t\toptions.bin?.replace(/^\\.\\//, \"\"),\n\t\t\t\t\t\t\t...(addons.properties.files ?? []),\n\t\t\t\t\t\t\t\"package.json\",\n\t\t\t\t\t\t\t\"README.md\",\n\t\t\t\t\t\t]\n\t\t\t\t\t\t\t.filter(Boolean)\n\t\t\t\t\t\t\t.sort(),\n\t\t\t\t\t\tkeywords: options.keywords?.flatMap((keyword) =>\n\t\t\t\t\t\t\tkeyword.split(/ /),\n\t\t\t\t\t\t),\n\t\t\t\t\t\tlicense: \"MIT\",\n\t\t\t\t\t\tmain: \"./lib/index.js\",\n\t\t\t\t\t\tname: options.repository,\n\t\t\t\t\t\trepository: {\n\t\t\t\t\t\t\ttype: \"git\",\n\t\t\t\t\t\t\turl: `https://github.com/${options.owner}/${options.repository}`,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tscripts: {\n\t\t\t\t\t\t\t...options.packageData?.scripts,\n\t\t\t\t\t\t\t...addons.properties.scripts,\n\t\t\t\t\t\t},\n\t\t\t\t\t\ttype: \"module\",\n\t\t\t\t\t\tversion: options.version ?? \"0.0.0\",\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t\t},\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,OAAO,qBAAqB;AAC5B,SAAS,SAAS;AAElB,SAAS,YAAY;AAEd,MAAM,mBAAmB,KAAK,YAAY;AAAA,EAChD,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,QAAQ;AAAA;AAAA,IAEP,YAAY,EACV;AAAA,MACA,EAAE,OAAO;AAAA,QACR,cAAc,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,OAAO,CAAC,EAAE,SAAS;AAAA,QACxD,iBAAiB,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,OAAO,CAAC,EAAE,SAAS;AAAA,QAC3D,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS;AAAA,QACpC,kBAAkB,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,OAAO,CAAC,EAAE,SAAS;AAAA,QAC5D,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,OAAO,CAAC,EAAE,SAAS;AAAA,MACpD,CAAC;AAAA,MACD,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC;AAAA,IACjC,EACC,QAAQ,CAAC,CAAC;AAAA,EACb;AAAA,EACA,QAAQ,EAAE,QAAQ,QAAQ,GAAG;AAC5B,WAAO;AAAA,MACN,UAAU;AAAA,QACT;AAAA,UACC,OAAO;AAAA;AAAA,UACP,QAAQ;AAAA,QACT;AAAA,MACD;AAAA,MACA,OAAO;AAAA,QACN,gBAAgB;AAAA,UACf,KAAK,UAAU;AAAA,YACd,GAAG,OAAO;AAAA,YACV,QAAQ,EAAE,OAAO,QAAQ,MAAM,KAAK,MAAM,QAAQ,OAAO;AAAA,YACzD,KAAK,QAAQ;AAAA,YACb,cAAc;AAAA,cACb,GAAG,QAAQ,aAAa;AAAA,cACxB,GAAG,OAAO,WAAW;AAAA,YACtB;AAAA,YACA,aAAa,QAAQ;AAAA,YACrB,iBAAiB;AAAA,cAChB,GAAG,QAAQ,aAAa;AAAA,cACxB,GAAG,OAAO,WAAW;AAAA,YACtB;AAAA,YACA,GAAI,QAAQ,QAAQ;AAAA,cACnB,SAAS;AAAA,gBACR,MAAM,KAAK,QAAQ,KAAK,OAAO;AAAA,cAChC;AAAA,YACD;AAAA,YACA,OAAO;AAAA,cACN,QAAQ,KAAK,QAAQ,SAAS,EAAE;AAAA,cAChC,GAAI,OAAO,WAAW,SAAS,CAAC;AAAA,cAChC;AAAA,cACA;AAAA,YACD,EACE,OAAO,OAAO,EACd,KAAK;AAAA,YACP,UAAU,QAAQ,UAAU;AAAA,cAAQ,CAAC,YACpC,QAAQ,MAAM,GAAG;AAAA,YAClB;AAAA,YACA,SAAS;AAAA,YACT,MAAM;AAAA,YACN,MAAM,QAAQ;AAAA,YACd,YAAY;AAAA,cACX,MAAM;AAAA,cACN,KAAK,sBAAsB,QAAQ,KAAK,IAAI,QAAQ,UAAU;AAAA,YAC/D;AAAA,YACA,SAAS;AAAA,cACR,GAAG,QAAQ,aAAa;AAAA,cACxB,GAAG,OAAO,WAAW;AAAA,YACtB;AAAA,YACA,MAAM;AAAA,YACN,SAAS,QAAQ,WAAW;AAAA,UAC7B,CAAC;AAAA,QACF;AAAA,MACD;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import * as create from 'create';
|
|
2
|
+
|
|
3
|
+
declare const blockPnpmDedupe: create.BlockWithoutAddons<{
|
|
4
|
+
description: string;
|
|
5
|
+
email: {
|
|
6
|
+
github: string;
|
|
7
|
+
npm: string;
|
|
8
|
+
};
|
|
9
|
+
title: string;
|
|
10
|
+
owner: string;
|
|
11
|
+
repository: string;
|
|
12
|
+
access?: "public" | "restricted" | undefined;
|
|
13
|
+
author?: string | undefined;
|
|
14
|
+
bin?: string | undefined;
|
|
15
|
+
login?: string | undefined;
|
|
16
|
+
contributors?: {
|
|
17
|
+
name: string;
|
|
18
|
+
avatar_url: string;
|
|
19
|
+
contributions: string[];
|
|
20
|
+
login: string;
|
|
21
|
+
profile: string;
|
|
22
|
+
}[] | undefined;
|
|
23
|
+
documentation?: string | undefined;
|
|
24
|
+
funding?: string | undefined;
|
|
25
|
+
guide?: {
|
|
26
|
+
href: string;
|
|
27
|
+
title: string;
|
|
28
|
+
} | undefined;
|
|
29
|
+
hideTemplatedBy?: boolean | undefined;
|
|
30
|
+
keywords?: string[] | undefined;
|
|
31
|
+
logo?: {
|
|
32
|
+
alt: string;
|
|
33
|
+
src: string;
|
|
34
|
+
} | undefined;
|
|
35
|
+
node?: {
|
|
36
|
+
minimum: string;
|
|
37
|
+
pinned?: string | undefined;
|
|
38
|
+
} | undefined;
|
|
39
|
+
packageData?: {
|
|
40
|
+
dependencies?: Record<string, string> | undefined;
|
|
41
|
+
devDependencies?: Record<string, string> | undefined;
|
|
42
|
+
scripts?: Record<string, string> | undefined;
|
|
43
|
+
} | undefined;
|
|
44
|
+
preserveGeneratedFrom?: boolean | undefined;
|
|
45
|
+
version?: string | undefined;
|
|
46
|
+
}>;
|
|
47
|
+
|
|
48
|
+
export { blockPnpmDedupe };
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { base } from "../base.js";
|
|
2
|
+
import { blockDevelopmentDocs } from "./blockDevelopmentDocs.js";
|
|
3
|
+
import { blockGitHubActionsCI } from "./blockGitHubActionsCI.js";
|
|
4
|
+
import { blockPackageJson } from "./blockPackageJson.js";
|
|
5
|
+
const blockPnpmDedupe = base.createBlock({
|
|
6
|
+
about: {
|
|
7
|
+
name: "pnpm Dedupe"
|
|
8
|
+
},
|
|
9
|
+
produce() {
|
|
10
|
+
return {
|
|
11
|
+
addons: [
|
|
12
|
+
blockDevelopmentDocs({
|
|
13
|
+
sections: {
|
|
14
|
+
Linting: {
|
|
15
|
+
contents: {
|
|
16
|
+
items: [
|
|
17
|
+
`- \`pnpm lint:packages\` ([pnpm dedupe --check](https://pnpm.io/cli/dedupe)): Checks for unnecessarily duplicated packages in the \`pnpm-lock.yml\` file`
|
|
18
|
+
]
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}),
|
|
23
|
+
blockGitHubActionsCI({
|
|
24
|
+
jobs: [
|
|
25
|
+
{
|
|
26
|
+
name: "Lint Packages",
|
|
27
|
+
steps: [{ run: "pnpm lint:packages" }]
|
|
28
|
+
}
|
|
29
|
+
]
|
|
30
|
+
}),
|
|
31
|
+
blockPackageJson({
|
|
32
|
+
properties: {
|
|
33
|
+
scripts: {
|
|
34
|
+
"lint:packages": "pnpm dedupe --check"
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
})
|
|
38
|
+
],
|
|
39
|
+
commands: [
|
|
40
|
+
{
|
|
41
|
+
phase: 1,
|
|
42
|
+
script: "pnpm dedupe"
|
|
43
|
+
}
|
|
44
|
+
]
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
export {
|
|
49
|
+
blockPnpmDedupe
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=blockPnpmDedupe.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/next/blocks/blockPnpmDedupe.ts"],"sourcesContent":["import { base } from \"../base.js\";\nimport { blockDevelopmentDocs } from \"./blockDevelopmentDocs.js\";\nimport { blockGitHubActionsCI } from \"./blockGitHubActionsCI.js\";\nimport { blockPackageJson } from \"./blockPackageJson.js\";\n\nexport const blockPnpmDedupe = base.createBlock({\n\tabout: {\n\t\tname: \"pnpm Dedupe\",\n\t},\n\tproduce() {\n\t\treturn {\n\t\t\taddons: [\n\t\t\t\tblockDevelopmentDocs({\n\t\t\t\t\tsections: {\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:packages\\` ([pnpm dedupe --check](https://pnpm.io/cli/dedupe)): Checks for unnecessarily duplicated packages in the \\`pnpm-lock.yml\\` file`,\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: \"Lint Packages\",\n\t\t\t\t\t\t\tsteps: [{ run: \"pnpm lint:packages\" }],\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t}),\n\t\t\t\tblockPackageJson({\n\t\t\t\t\tproperties: {\n\t\t\t\t\t\tscripts: {\n\t\t\t\t\t\t\t\"lint:packages\": \"pnpm dedupe --check\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t],\n\t\t\tcommands: [\n\t\t\t\t{\n\t\t\t\t\tphase: 1,\n\t\t\t\t\tscript: \"pnpm dedupe\",\n\t\t\t\t},\n\t\t\t],\n\t\t};\n\t},\n});\n"],"mappings":"AAAA,SAAS,YAAY;AACrB,SAAS,4BAA4B;AACrC,SAAS,4BAA4B;AACrC,SAAS,wBAAwB;AAE1B,MAAM,kBAAkB,KAAK,YAAY;AAAA,EAC/C,OAAO;AAAA,IACN,MAAM;AAAA,EACP;AAAA,EACA,UAAU;AACT,WAAO;AAAA,MACN,QAAQ;AAAA,QACP,qBAAqB;AAAA,UACpB,UAAU;AAAA,YACT,SAAS;AAAA,cACR,UAAU;AAAA,gBACT,OAAO;AAAA,kBACN;AAAA,gBACD;AAAA,cACD;AAAA,YACD;AAAA,UACD;AAAA,QACD,CAAC;AAAA,QACD,qBAAqB;AAAA,UACpB,MAAM;AAAA,YACL;AAAA,cACC,MAAM;AAAA,cACN,OAAO,CAAC,EAAE,KAAK,qBAAqB,CAAC;AAAA,YACtC;AAAA,UACD;AAAA,QACD,CAAC;AAAA,QACD,iBAAiB;AAAA,UAChB,YAAY;AAAA,YACX,SAAS;AAAA,cACR,iBAAiB;AAAA,YAClB;AAAA,UACD;AAAA,QACD,CAAC;AAAA,MACF;AAAA,MACA,UAAU;AAAA,QACT;AAAA,UACC,OAAO;AAAA,UACP,QAAQ;AAAA,QACT;AAAA,MACD;AAAA,IACD;AAAA,EACD;AACD,CAAC;","names":[]}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import * as create from 'create';
|
|
2
|
+
|
|
3
|
+
declare const blockPrettier: create.BlockWithAddons<{
|
|
4
|
+
plugins: string[];
|
|
5
|
+
ignores: string[];
|
|
6
|
+
overrides: {
|
|
7
|
+
options: {
|
|
8
|
+
parser: string;
|
|
9
|
+
};
|
|
10
|
+
files: string;
|
|
11
|
+
}[];
|
|
12
|
+
}, {
|
|
13
|
+
description: string;
|
|
14
|
+
email: {
|
|
15
|
+
github: string;
|
|
16
|
+
npm: string;
|
|
17
|
+
};
|
|
18
|
+
title: string;
|
|
19
|
+
owner: string;
|
|
20
|
+
repository: string;
|
|
21
|
+
access?: "public" | "restricted" | undefined;
|
|
22
|
+
author?: string | undefined;
|
|
23
|
+
bin?: string | undefined;
|
|
24
|
+
login?: string | undefined;
|
|
25
|
+
contributors?: {
|
|
26
|
+
name: string;
|
|
27
|
+
avatar_url: string;
|
|
28
|
+
contributions: string[];
|
|
29
|
+
login: string;
|
|
30
|
+
profile: string;
|
|
31
|
+
}[] | undefined;
|
|
32
|
+
documentation?: string | undefined;
|
|
33
|
+
funding?: string | undefined;
|
|
34
|
+
guide?: {
|
|
35
|
+
href: string;
|
|
36
|
+
title: string;
|
|
37
|
+
} | undefined;
|
|
38
|
+
hideTemplatedBy?: boolean | undefined;
|
|
39
|
+
keywords?: string[] | undefined;
|
|
40
|
+
logo?: {
|
|
41
|
+
alt: string;
|
|
42
|
+
src: string;
|
|
43
|
+
} | undefined;
|
|
44
|
+
node?: {
|
|
45
|
+
minimum: string;
|
|
46
|
+
pinned?: string | undefined;
|
|
47
|
+
} | undefined;
|
|
48
|
+
packageData?: {
|
|
49
|
+
dependencies?: Record<string, string> | undefined;
|
|
50
|
+
devDependencies?: Record<string, string> | undefined;
|
|
51
|
+
scripts?: Record<string, string> | undefined;
|
|
52
|
+
} | undefined;
|
|
53
|
+
preserveGeneratedFrom?: boolean | undefined;
|
|
54
|
+
version?: string | undefined;
|
|
55
|
+
}>;
|
|
56
|
+
|
|
57
|
+
export { blockPrettier };
|