create-typescript-app 2.6.1 → 2.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/base.js +6 -2
- package/lib/blocks/blockESLint.d.ts +5 -5
- package/lib/blocks/blockESLint.js +2 -2
- package/lib/blocks/blockExampleFiles.js +2 -2
- package/lib/blocks/blockPackageJson.d.ts +69 -1
- package/lib/blocks/blockPackageJson.js +2 -11
- package/lib/blocks/blockPrettier.d.ts +2 -2
- package/lib/blocks/blockRepositoryBranchRuleset.js +2 -2
- package/lib/blocks/blockVSCode.js +2 -2
- package/lib/blocks/index.d.ts +76 -8
- package/lib/data/packageData.d.ts +5 -4
- package/lib/inputs/inputFromOctokit.js +1 -2
- package/lib/options/readAccess.d.ts +5 -0
- package/lib/options/readAccess.js +6 -0
- package/lib/options/readGitDefaults.d.ts +2 -1
- package/lib/options/readGitDefaults.js +6 -7
- package/lib/types.d.ts +4 -0
- package/package.json +5 -4
- package/lib/utils/sortObject.d.ts +0 -5
- package/lib/utils/sortObject.js +0 -8
package/lib/base.js
CHANGED
|
@@ -3,6 +3,7 @@ import { inputFromFile } from "input-from-file";
|
|
|
3
3
|
import { inputFromScript } from "input-from-script";
|
|
4
4
|
import lazyValue from "lazy-value";
|
|
5
5
|
import { z } from "zod";
|
|
6
|
+
import { readAccess } from "./options/readAccess.js";
|
|
6
7
|
import { readAllContributors } from "./options/readAllContributors.js";
|
|
7
8
|
import { readAuthor } from "./options/readAuthor.js";
|
|
8
9
|
import { readDescription } from "./options/readDescription.js";
|
|
@@ -100,6 +101,9 @@ const base = createBase({
|
|
|
100
101
|
version: z.string().optional().describe("package version to publish as and store in `package.json`")
|
|
101
102
|
},
|
|
102
103
|
prepare({ options, take }) {
|
|
104
|
+
const getAccess = lazyValue(
|
|
105
|
+
async () => await readAccess(getPackageDataFull)
|
|
106
|
+
);
|
|
103
107
|
const getAllContributors = lazyValue(
|
|
104
108
|
async () => await readAllContributors(take)
|
|
105
109
|
);
|
|
@@ -133,7 +137,7 @@ const base = createBase({
|
|
|
133
137
|
);
|
|
134
138
|
const getExplainer = lazyValue(async () => await readExplainer(getReadme));
|
|
135
139
|
const getFunding = lazyValue(async () => await readFunding(take));
|
|
136
|
-
const getGitDefaults = lazyValue(async () => await readGitDefaults());
|
|
140
|
+
const getGitDefaults = lazyValue(async () => await readGitDefaults(take));
|
|
137
141
|
const getGuide = lazyValue(async () => await readGuide(take));
|
|
138
142
|
const getLogo = lazyValue(async () => await readLogo(getReadme));
|
|
139
143
|
const getPackageData = lazyValue(
|
|
@@ -182,7 +186,7 @@ const base = createBase({
|
|
|
182
186
|
async () => (await getPackageDataFull()).version
|
|
183
187
|
);
|
|
184
188
|
return {
|
|
185
|
-
access:
|
|
189
|
+
access: getAccess,
|
|
186
190
|
author: getAuthor,
|
|
187
191
|
bin: getBin,
|
|
188
192
|
contributors: getAllContributors,
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import * as bingo_stratum from 'bingo-stratum';
|
|
2
2
|
|
|
3
3
|
declare const blockESLint: bingo_stratum.BlockWithAddons<{
|
|
4
|
+
imports: {
|
|
5
|
+
source: string;
|
|
6
|
+
specifier: string;
|
|
7
|
+
types?: boolean | undefined;
|
|
8
|
+
}[];
|
|
4
9
|
extensions: (string | {
|
|
5
10
|
files?: string[] | undefined;
|
|
6
11
|
rules?: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]> | {
|
|
@@ -15,11 +20,6 @@ declare const blockESLint: bingo_stratum.BlockWithAddons<{
|
|
|
15
20
|
})[];
|
|
16
21
|
ignores: string[];
|
|
17
22
|
explanations: string[];
|
|
18
|
-
imports: {
|
|
19
|
-
source: string;
|
|
20
|
-
specifier: string;
|
|
21
|
-
types?: boolean | undefined;
|
|
22
|
-
}[];
|
|
23
23
|
rules?: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]> | {
|
|
24
24
|
entries: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]>;
|
|
25
25
|
comment?: string | undefined;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { parse as parsePackageName } from "parse-package-name";
|
|
2
|
+
import sortKeys from "sort-keys";
|
|
2
3
|
import { z } from "zod";
|
|
3
4
|
import { base } from "../base.js";
|
|
4
5
|
import { getPackageDependencies } from "../data/packageData.js";
|
|
5
|
-
import { sortObject } from "../utils/sortObject.js";
|
|
6
6
|
import { blockCSpell } from "./blockCSpell.js";
|
|
7
7
|
import { blockDevelopmentDocs } from "./blockDevelopmentDocs.js";
|
|
8
8
|
import { blockGitHubActionsCI } from "./blockGitHubActionsCI.js";
|
|
@@ -218,7 +218,7 @@ function printExtension(extension) {
|
|
|
218
218
|
extension.languageOptions && `languageOptions: ${JSON.stringify(extension.languageOptions).replace('"import.meta.dirname"', "import.meta.dirname")},`,
|
|
219
219
|
extension.linterOptions && `linterOptions: ${JSON.stringify(extension.linterOptions)}`,
|
|
220
220
|
extension.rules && `rules: ${printExtensionRules(extension.rules)},`,
|
|
221
|
-
extension.settings && `settings: ${JSON.stringify(
|
|
221
|
+
extension.settings && `settings: ${JSON.stringify(sortKeys(extension.settings))},`,
|
|
222
222
|
"}"
|
|
223
223
|
].filter(Boolean).join(" ");
|
|
224
224
|
}
|
|
@@ -14,8 +14,8 @@ const blockExampleFiles = base.createBlock({
|
|
|
14
14
|
}
|
|
15
15
|
};
|
|
16
16
|
},
|
|
17
|
-
// TODO: Make produce() optional
|
|
18
|
-
//
|
|
17
|
+
// TODO: Make produce() optional, so this empty-ish produce() can be removed
|
|
18
|
+
// https://github.com/JoshuaKGoldberg/bingo/issues/295
|
|
19
19
|
produce() {
|
|
20
20
|
return {};
|
|
21
21
|
}
|
|
@@ -2,12 +2,80 @@ import * as bingo_stratum from 'bingo-stratum';
|
|
|
2
2
|
|
|
3
3
|
declare const blockPackageJson: bingo_stratum.BlockWithAddons<{
|
|
4
4
|
properties: {
|
|
5
|
+
type?: "module" | "commonjs" | undefined;
|
|
6
|
+
author?: string | {
|
|
7
|
+
name: string;
|
|
8
|
+
url?: string | undefined;
|
|
9
|
+
email?: string | undefined;
|
|
10
|
+
} | undefined;
|
|
11
|
+
bin?: string | Record<string, string> | undefined;
|
|
12
|
+
name?: string | undefined;
|
|
13
|
+
contributors?: (string | {
|
|
14
|
+
name: string;
|
|
15
|
+
url?: string | undefined;
|
|
16
|
+
email?: string | undefined;
|
|
17
|
+
})[] | undefined;
|
|
18
|
+
description?: string | undefined;
|
|
19
|
+
funding?: string | {
|
|
20
|
+
url: string;
|
|
21
|
+
type?: string | undefined;
|
|
22
|
+
} | (string | {
|
|
23
|
+
url: string;
|
|
24
|
+
type?: string | undefined;
|
|
25
|
+
})[] | undefined;
|
|
26
|
+
keywords?: string[] | undefined;
|
|
5
27
|
dependencies?: Record<string, string> | undefined;
|
|
6
28
|
devDependencies?: Record<string, string> | undefined;
|
|
7
29
|
scripts?: Record<string, string> | undefined;
|
|
30
|
+
repository?: string | {
|
|
31
|
+
type: string;
|
|
32
|
+
url: string;
|
|
33
|
+
directory?: string | undefined;
|
|
34
|
+
} | undefined;
|
|
35
|
+
version?: string | undefined;
|
|
36
|
+
module?: string | undefined;
|
|
37
|
+
engines?: Record<string, string> | undefined;
|
|
38
|
+
packageManager?: string | undefined;
|
|
8
39
|
files?: string[] | undefined;
|
|
40
|
+
license?: string | undefined;
|
|
41
|
+
config?: Record<string, unknown> | undefined;
|
|
42
|
+
private?: boolean | undefined;
|
|
43
|
+
homepage?: string | undefined;
|
|
44
|
+
maintainers?: (string | {
|
|
45
|
+
name: string;
|
|
46
|
+
url?: string | undefined;
|
|
47
|
+
email?: string | undefined;
|
|
48
|
+
})[] | undefined;
|
|
49
|
+
publishConfig?: Record<string, unknown> | undefined;
|
|
50
|
+
main?: string | undefined;
|
|
51
|
+
types?: string | undefined;
|
|
52
|
+
bugs?: string | {
|
|
53
|
+
url?: string | undefined;
|
|
54
|
+
email?: string | undefined;
|
|
55
|
+
} | undefined;
|
|
56
|
+
browser?: string | Record<string, string | boolean> | undefined;
|
|
57
|
+
man?: string | string[] | undefined;
|
|
58
|
+
directories?: Record<string, string> | undefined;
|
|
9
59
|
peerDependencies?: Record<string, string> | undefined;
|
|
10
|
-
|
|
60
|
+
peerDependenciesMeta?: Record<string, {
|
|
61
|
+
optional: boolean;
|
|
62
|
+
}> | undefined;
|
|
63
|
+
bundleDependencies?: boolean | string[] | undefined;
|
|
64
|
+
bundledDependencies?: boolean | string[] | undefined;
|
|
65
|
+
optionalDependencies?: Record<string, string> | undefined;
|
|
66
|
+
overrides?: Record<string, unknown> | undefined;
|
|
67
|
+
os?: string[] | undefined;
|
|
68
|
+
cpu?: string[] | undefined;
|
|
69
|
+
workspaces?: string[] | undefined;
|
|
70
|
+
deprecated?: string | undefined;
|
|
71
|
+
typings?: string | undefined;
|
|
72
|
+
typesVersions?: Record<string, Record<string, string[]>> | undefined;
|
|
73
|
+
sideEffects?: boolean | string[] | undefined;
|
|
74
|
+
imports?: Record<string, unknown> | undefined;
|
|
75
|
+
exports?: string | string[] | Record<string, unknown> | null | undefined;
|
|
76
|
+
} & {
|
|
77
|
+
[k: string]: unknown;
|
|
78
|
+
};
|
|
11
79
|
cleanupCommands: string[];
|
|
12
80
|
}, {
|
|
13
81
|
access: "public" | "restricted";
|
|
@@ -2,6 +2,7 @@ import * as htmlToText from "html-to-text";
|
|
|
2
2
|
import removeUndefinedObjects from "remove-undefined-objects";
|
|
3
3
|
import sortPackageJson from "sort-package-json";
|
|
4
4
|
import { z } from "zod";
|
|
5
|
+
import { PackageJson } from "zod-package-json";
|
|
5
6
|
import { base } from "../base.js";
|
|
6
7
|
import { CommandPhase } from "./phases.js";
|
|
7
8
|
const blockPackageJson = base.createBlock({
|
|
@@ -10,17 +11,7 @@ const blockPackageJson = base.createBlock({
|
|
|
10
11
|
},
|
|
11
12
|
addons: {
|
|
12
13
|
cleanupCommands: z.array(z.string()).default([]),
|
|
13
|
-
|
|
14
|
-
properties: z.intersection(
|
|
15
|
-
z.object({
|
|
16
|
-
dependencies: z.record(z.string(), z.string()).optional(),
|
|
17
|
-
devDependencies: z.record(z.string(), z.string()).optional(),
|
|
18
|
-
files: z.array(z.string()).optional(),
|
|
19
|
-
peerDependencies: z.record(z.string(), z.string()).optional(),
|
|
20
|
-
scripts: z.record(z.string(), z.string()).optional()
|
|
21
|
-
}),
|
|
22
|
-
z.record(z.string(), z.unknown())
|
|
23
|
-
).default({})
|
|
14
|
+
properties: PackageJson.partial().default({})
|
|
24
15
|
},
|
|
25
16
|
produce({ addons, offline, options }) {
|
|
26
17
|
const dependencies = {
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import * as bingo_stratum from 'bingo-stratum';
|
|
2
2
|
|
|
3
3
|
declare const blockPrettier: bingo_stratum.BlockWithAddons<{
|
|
4
|
-
ignores: string[];
|
|
5
|
-
plugins: string[];
|
|
6
4
|
overrides: {
|
|
7
5
|
options: {
|
|
8
6
|
parser: string;
|
|
9
7
|
};
|
|
10
8
|
files: string;
|
|
11
9
|
}[];
|
|
10
|
+
ignores: string[];
|
|
11
|
+
plugins: string[];
|
|
12
12
|
}, {
|
|
13
13
|
access: "public" | "restricted";
|
|
14
14
|
description: string;
|
|
@@ -43,8 +43,8 @@ const blockRepositoryBranchRuleset = base.createBlock({
|
|
|
43
43
|
]
|
|
44
44
|
};
|
|
45
45
|
},
|
|
46
|
-
// TODO: Make produce() optional
|
|
47
|
-
//
|
|
46
|
+
// TODO: Make produce() optional, so this empty-ish produce() can be removed
|
|
47
|
+
// https://github.com/JoshuaKGoldberg/bingo/issues/295
|
|
48
48
|
produce() {
|
|
49
49
|
return {};
|
|
50
50
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import sortKeys from "sort-keys";
|
|
1
2
|
import { z } from "zod";
|
|
2
3
|
import { base } from "../base.js";
|
|
3
|
-
import { sortObject } from "../utils/sortObject.js";
|
|
4
4
|
import { blockDevelopmentDocs } from "./blockDevelopmentDocs.js";
|
|
5
5
|
const blockVSCode = base.createBlock({
|
|
6
6
|
about: {
|
|
@@ -70,7 +70,7 @@ To launch it, open a test file, then run _Debug Current Test File_ from the VS C
|
|
|
70
70
|
version: "0.2.0"
|
|
71
71
|
}),
|
|
72
72
|
"settings.json": JSON.stringify(
|
|
73
|
-
|
|
73
|
+
sortKeys({
|
|
74
74
|
"editor.formatOnSave": true,
|
|
75
75
|
"editor.rulers": [80],
|
|
76
76
|
...settings
|
package/lib/blocks/index.d.ts
CHANGED
|
@@ -443,6 +443,11 @@ declare const blocks: {
|
|
|
443
443
|
version?: string | undefined;
|
|
444
444
|
}>;
|
|
445
445
|
blockESLint: bingo_stratum.BlockWithAddons<{
|
|
446
|
+
imports: {
|
|
447
|
+
source: string;
|
|
448
|
+
specifier: string;
|
|
449
|
+
types?: boolean | undefined;
|
|
450
|
+
}[];
|
|
446
451
|
extensions: (string | {
|
|
447
452
|
files?: string[] | undefined;
|
|
448
453
|
rules?: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]> | {
|
|
@@ -457,11 +462,6 @@ declare const blocks: {
|
|
|
457
462
|
})[];
|
|
458
463
|
ignores: string[];
|
|
459
464
|
explanations: string[];
|
|
460
|
-
imports: {
|
|
461
|
-
source: string;
|
|
462
|
-
specifier: string;
|
|
463
|
-
types?: boolean | undefined;
|
|
464
|
-
}[];
|
|
465
465
|
rules?: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]> | {
|
|
466
466
|
entries: Record<string, "off" | "error" | "warn" | ["error" | "warn", unknown] | ["error" | "warn", unknown, unknown]>;
|
|
467
467
|
comment?: string | undefined;
|
|
@@ -1569,12 +1569,80 @@ declare const blocks: {
|
|
|
1569
1569
|
}>;
|
|
1570
1570
|
blockPackageJson: bingo_stratum.BlockWithAddons<{
|
|
1571
1571
|
properties: {
|
|
1572
|
+
type?: "module" | "commonjs" | undefined;
|
|
1573
|
+
author?: string | {
|
|
1574
|
+
name: string;
|
|
1575
|
+
url?: string | undefined;
|
|
1576
|
+
email?: string | undefined;
|
|
1577
|
+
} | undefined;
|
|
1578
|
+
bin?: string | Record<string, string> | undefined;
|
|
1579
|
+
name?: string | undefined;
|
|
1580
|
+
contributors?: (string | {
|
|
1581
|
+
name: string;
|
|
1582
|
+
url?: string | undefined;
|
|
1583
|
+
email?: string | undefined;
|
|
1584
|
+
})[] | undefined;
|
|
1585
|
+
description?: string | undefined;
|
|
1586
|
+
funding?: string | {
|
|
1587
|
+
url: string;
|
|
1588
|
+
type?: string | undefined;
|
|
1589
|
+
} | (string | {
|
|
1590
|
+
url: string;
|
|
1591
|
+
type?: string | undefined;
|
|
1592
|
+
})[] | undefined;
|
|
1593
|
+
keywords?: string[] | undefined;
|
|
1572
1594
|
dependencies?: Record<string, string> | undefined;
|
|
1573
1595
|
devDependencies?: Record<string, string> | undefined;
|
|
1574
1596
|
scripts?: Record<string, string> | undefined;
|
|
1597
|
+
repository?: string | {
|
|
1598
|
+
type: string;
|
|
1599
|
+
url: string;
|
|
1600
|
+
directory?: string | undefined;
|
|
1601
|
+
} | undefined;
|
|
1602
|
+
version?: string | undefined;
|
|
1603
|
+
module?: string | undefined;
|
|
1604
|
+
engines?: Record<string, string> | undefined;
|
|
1605
|
+
packageManager?: string | undefined;
|
|
1575
1606
|
files?: string[] | undefined;
|
|
1607
|
+
license?: string | undefined;
|
|
1608
|
+
config?: Record<string, unknown> | undefined;
|
|
1609
|
+
private?: boolean | undefined;
|
|
1610
|
+
homepage?: string | undefined;
|
|
1611
|
+
maintainers?: (string | {
|
|
1612
|
+
name: string;
|
|
1613
|
+
url?: string | undefined;
|
|
1614
|
+
email?: string | undefined;
|
|
1615
|
+
})[] | undefined;
|
|
1616
|
+
publishConfig?: Record<string, unknown> | undefined;
|
|
1617
|
+
main?: string | undefined;
|
|
1618
|
+
types?: string | undefined;
|
|
1619
|
+
bugs?: string | {
|
|
1620
|
+
url?: string | undefined;
|
|
1621
|
+
email?: string | undefined;
|
|
1622
|
+
} | undefined;
|
|
1623
|
+
browser?: string | Record<string, string | boolean> | undefined;
|
|
1624
|
+
man?: string | string[] | undefined;
|
|
1625
|
+
directories?: Record<string, string> | undefined;
|
|
1576
1626
|
peerDependencies?: Record<string, string> | undefined;
|
|
1577
|
-
|
|
1627
|
+
peerDependenciesMeta?: Record<string, {
|
|
1628
|
+
optional: boolean;
|
|
1629
|
+
}> | undefined;
|
|
1630
|
+
bundleDependencies?: boolean | string[] | undefined;
|
|
1631
|
+
bundledDependencies?: boolean | string[] | undefined;
|
|
1632
|
+
optionalDependencies?: Record<string, string> | undefined;
|
|
1633
|
+
overrides?: Record<string, unknown> | undefined;
|
|
1634
|
+
os?: string[] | undefined;
|
|
1635
|
+
cpu?: string[] | undefined;
|
|
1636
|
+
workspaces?: string[] | undefined;
|
|
1637
|
+
deprecated?: string | undefined;
|
|
1638
|
+
typings?: string | undefined;
|
|
1639
|
+
typesVersions?: Record<string, Record<string, string[]>> | undefined;
|
|
1640
|
+
sideEffects?: boolean | string[] | undefined;
|
|
1641
|
+
imports?: Record<string, unknown> | undefined;
|
|
1642
|
+
exports?: string | string[] | Record<string, unknown> | null | undefined;
|
|
1643
|
+
} & {
|
|
1644
|
+
[k: string]: unknown;
|
|
1645
|
+
};
|
|
1578
1646
|
cleanupCommands: string[];
|
|
1579
1647
|
}, {
|
|
1580
1648
|
access: "public" | "restricted";
|
|
@@ -1739,14 +1807,14 @@ declare const blocks: {
|
|
|
1739
1807
|
version?: string | undefined;
|
|
1740
1808
|
}>;
|
|
1741
1809
|
blockPrettier: bingo_stratum.BlockWithAddons<{
|
|
1742
|
-
ignores: string[];
|
|
1743
|
-
plugins: string[];
|
|
1744
1810
|
overrides: {
|
|
1745
1811
|
options: {
|
|
1746
1812
|
parser: string;
|
|
1747
1813
|
};
|
|
1748
1814
|
files: string;
|
|
1749
1815
|
}[];
|
|
1816
|
+
ignores: string[];
|
|
1817
|
+
plugins: string[];
|
|
1750
1818
|
}, {
|
|
1751
1819
|
access: "public" | "restricted";
|
|
1752
1820
|
description: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
var name = "create-typescript-app";
|
|
2
|
-
var version = "2.
|
|
2
|
+
var version = "2.7.0";
|
|
3
3
|
var description = "Quickstart-friendly TypeScript template with comprehensive, configurable, opinionated tooling. 🎁";
|
|
4
4
|
var repository = {
|
|
5
5
|
type: "git",
|
|
@@ -38,7 +38,6 @@ var dependencies = {
|
|
|
38
38
|
"bingo-stratum": "^0.5.5",
|
|
39
39
|
"cspell-populate-words": "^0.3.0",
|
|
40
40
|
execa: "^9.5.2",
|
|
41
|
-
"git-remote-origin-url": "^4.0.0",
|
|
42
41
|
"git-url-parse": "^16.0.1",
|
|
43
42
|
"github-default-labels": "^0.1.0",
|
|
44
43
|
"html-to-text": "^9.0.5",
|
|
@@ -56,9 +55,11 @@ var dependencies = {
|
|
|
56
55
|
"remove-dependencies": "^0.1.0",
|
|
57
56
|
"remove-undefined-objects": "^6.0.0",
|
|
58
57
|
"set-github-repository-labels": "^0.2.0",
|
|
58
|
+
"sort-keys": "^5.1.0",
|
|
59
59
|
"sort-package-json": "^3.0.0",
|
|
60
60
|
"title-case": "^4.3.2",
|
|
61
|
-
zod: "^3.24.2"
|
|
61
|
+
zod: "^3.24.2",
|
|
62
|
+
"zod-package-json": "^1.1.0"
|
|
62
63
|
};
|
|
63
64
|
var devDependencies = {
|
|
64
65
|
"@eslint-community/eslint-plugin-eslint-comments": "4.4.1",
|
|
@@ -73,7 +74,7 @@ var devDependencies = {
|
|
|
73
74
|
"@types/node": "22.13.9",
|
|
74
75
|
"@types/parse-author": "2.0.3",
|
|
75
76
|
"@vitest/coverage-v8": "3.0.7",
|
|
76
|
-
"@vitest/eslint-plugin": "1.1.
|
|
77
|
+
"@vitest/eslint-plugin": "1.1.38",
|
|
77
78
|
"all-contributors-cli": "6.26.1",
|
|
78
79
|
"bingo-requests": "^0.5.4",
|
|
79
80
|
"bingo-stratum-testers": "0.5.6",
|
|
@@ -6,8 +6,7 @@ const inputFromOctokit = createInput({
|
|
|
6
6
|
options: z.record(z.string(), z.unknown()).optional()
|
|
7
7
|
},
|
|
8
8
|
// TODO: Strongly type this, then push it upstream to Bingo
|
|
9
|
-
//
|
|
10
|
-
// https://github.com/JoshuaKGoldberg/bingo/issues/65
|
|
9
|
+
// https://github.com/JoshuaKGoldberg/bingo/issues/296
|
|
11
10
|
async produce({ args, fetchers }) {
|
|
12
11
|
try {
|
|
13
12
|
const response = await fetchers.octokit.request(args.endpoint, {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { TakeInput } from 'bingo';
|
|
1
2
|
import gitUrlParse from 'git-url-parse';
|
|
2
3
|
|
|
3
|
-
declare function readGitDefaults(): Promise<gitUrlParse.GitUrl | undefined>;
|
|
4
|
+
declare function readGitDefaults(take: TakeInput): Promise<gitUrlParse.GitUrl | undefined>;
|
|
4
5
|
|
|
5
6
|
export { readGitDefaults };
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import gitRemoteOriginUrl from "git-remote-origin-url";
|
|
2
1
|
import gitUrlParse from "git-url-parse";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
import { inputFromScript } from "input-from-script";
|
|
3
|
+
async function readGitDefaults(take) {
|
|
4
|
+
const url = await take(inputFromScript, {
|
|
5
|
+
command: "git remote get-url origin"
|
|
6
|
+
});
|
|
7
|
+
return url.stdout ? gitUrlParse(url.stdout.toString()) : void 0;
|
|
9
8
|
}
|
|
10
9
|
export {
|
|
11
10
|
readGitDefaults
|
package/lib/types.d.ts
CHANGED
|
@@ -23,6 +23,7 @@ interface PartialPackageData {
|
|
|
23
23
|
};
|
|
24
24
|
name?: string;
|
|
25
25
|
packageManager?: string;
|
|
26
|
+
publishConfig?: PartialPublishConfig;
|
|
26
27
|
repository?: string | {
|
|
27
28
|
type: string;
|
|
28
29
|
url: string;
|
|
@@ -30,5 +31,8 @@ interface PartialPackageData {
|
|
|
30
31
|
scripts?: Record<string, string>;
|
|
31
32
|
version?: string;
|
|
32
33
|
}
|
|
34
|
+
interface PartialPublishConfig {
|
|
35
|
+
access?: "public" | "restricted";
|
|
36
|
+
}
|
|
33
37
|
|
|
34
38
|
export type { AllContributorContributor, AllContributorsData, PartialPackageData };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-typescript-app",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.7.1",
|
|
4
4
|
"description": "Quickstart-friendly TypeScript template with comprehensive, configurable, opinionated tooling. 🎁",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -42,7 +42,6 @@
|
|
|
42
42
|
"bingo-stratum": "^0.5.5",
|
|
43
43
|
"cspell-populate-words": "^0.3.0",
|
|
44
44
|
"execa": "^9.5.2",
|
|
45
|
-
"git-remote-origin-url": "^4.0.0",
|
|
46
45
|
"git-url-parse": "^16.0.1",
|
|
47
46
|
"github-default-labels": "^0.1.0",
|
|
48
47
|
"html-to-text": "^9.0.5",
|
|
@@ -60,9 +59,11 @@
|
|
|
60
59
|
"remove-dependencies": "^0.1.0",
|
|
61
60
|
"remove-undefined-objects": "^6.0.0",
|
|
62
61
|
"set-github-repository-labels": "^0.2.0",
|
|
62
|
+
"sort-keys": "^5.1.0",
|
|
63
63
|
"sort-package-json": "^3.0.0",
|
|
64
64
|
"title-case": "^4.3.2",
|
|
65
|
-
"zod": "^3.24.2"
|
|
65
|
+
"zod": "^3.24.2",
|
|
66
|
+
"zod-package-json": "^1.1.0"
|
|
66
67
|
},
|
|
67
68
|
"devDependencies": {
|
|
68
69
|
"@eslint-community/eslint-plugin-eslint-comments": "4.4.1",
|
|
@@ -77,7 +78,7 @@
|
|
|
77
78
|
"@types/node": "22.13.9",
|
|
78
79
|
"@types/parse-author": "2.0.3",
|
|
79
80
|
"@vitest/coverage-v8": "3.0.7",
|
|
80
|
-
"@vitest/eslint-plugin": "1.1.
|
|
81
|
+
"@vitest/eslint-plugin": "1.1.38",
|
|
81
82
|
"all-contributors-cli": "6.26.1",
|
|
82
83
|
"bingo-requests": "^0.5.4",
|
|
83
84
|
"bingo-stratum-testers": "0.5.6",
|