create-typescript-app 2.9.0 → 2.9.2

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.
Files changed (83) hide show
  1. package/lib/base.d.ts +15 -25
  2. package/lib/base.js +9 -9
  3. package/lib/blocks/actions/resolveUses.d.ts +6 -0
  4. package/lib/blocks/actions/resolveUses.js +26 -0
  5. package/lib/blocks/blockAllContributors.d.ts +4 -0
  6. package/lib/blocks/blockAllContributors.js +14 -2
  7. package/lib/blocks/blockAreTheTypesWrong.d.ts +4 -0
  8. package/lib/blocks/blockCSpell.d.ts +4 -0
  9. package/lib/blocks/blockCTATransitions.d.ts +4 -0
  10. package/lib/blocks/blockCTATransitions.js +12 -3
  11. package/lib/blocks/blockCodecov.d.ts +4 -0
  12. package/lib/blocks/blockCodecov.js +7 -2
  13. package/lib/blocks/blockContributingDocs.d.ts +4 -0
  14. package/lib/blocks/blockContributorCovenant.d.ts +4 -0
  15. package/lib/blocks/blockDevelopmentDocs.d.ts +4 -0
  16. package/lib/blocks/blockESLint.d.ts +4 -0
  17. package/lib/blocks/blockESLintComments.d.ts +4 -0
  18. package/lib/blocks/blockESLintJSDoc.d.ts +4 -0
  19. package/lib/blocks/blockESLintJSONC.d.ts +4 -0
  20. package/lib/blocks/blockESLintMarkdown.d.ts +4 -0
  21. package/lib/blocks/blockESLintMoreStyling.d.ts +4 -0
  22. package/lib/blocks/blockESLintNode.d.ts +4 -0
  23. package/lib/blocks/blockESLintPackageJson.d.ts +4 -0
  24. package/lib/blocks/blockESLintPerfectionist.d.ts +4 -0
  25. package/lib/blocks/blockESLintRegexp.d.ts +4 -0
  26. package/lib/blocks/blockESLintYML.d.ts +4 -0
  27. package/lib/blocks/blockExampleFiles.d.ts +4 -0
  28. package/lib/blocks/blockFunding.d.ts +4 -0
  29. package/lib/blocks/blockGitHubActionsCI.d.ts +4 -0
  30. package/lib/blocks/blockGitHubActionsCI.js +45 -24
  31. package/lib/blocks/blockGitHubApps.d.ts +4 -0
  32. package/lib/blocks/blockGitHubIssueTemplates.d.ts +4 -0
  33. package/lib/blocks/blockGitHubPRTemplate.d.ts +4 -0
  34. package/lib/blocks/blockGitignore.d.ts +4 -0
  35. package/lib/blocks/blockKnip.d.ts +4 -0
  36. package/lib/blocks/blockMITLicense.d.ts +4 -0
  37. package/lib/blocks/blockMarkdownlint.d.ts +4 -0
  38. package/lib/blocks/blockNvmrc.d.ts +4 -0
  39. package/lib/blocks/blockPRCompliance.d.ts +4 -0
  40. package/lib/blocks/blockPRCompliance.js +7 -2
  41. package/lib/blocks/blockPackageJson.d.ts +4 -0
  42. package/lib/blocks/blockPnpmDedupe.d.ts +4 -0
  43. package/lib/blocks/blockPnpmDedupe.js +1 -1
  44. package/lib/blocks/blockPrettier.d.ts +4 -0
  45. package/lib/blocks/blockPrettierPluginCurly.d.ts +4 -0
  46. package/lib/blocks/blockPrettierPluginPackageJson.d.ts +4 -0
  47. package/lib/blocks/blockPrettierPluginSh.d.ts +4 -0
  48. package/lib/blocks/blockREADME.d.ts +4 -0
  49. package/lib/blocks/blockReleaseIt.d.ts +4 -0
  50. package/lib/blocks/blockReleaseIt.js +24 -4
  51. package/lib/blocks/blockRemoveDependencies.d.ts +4 -0
  52. package/lib/blocks/blockRemoveFiles.d.ts +4 -0
  53. package/lib/blocks/blockRenovate.d.ts +4 -0
  54. package/lib/blocks/blockRepositoryBranchRuleset.d.ts +4 -0
  55. package/lib/blocks/blockRepositoryLabels.d.ts +4 -0
  56. package/lib/blocks/blockRepositorySecrets.d.ts +4 -0
  57. package/lib/blocks/blockRepositorySettings.d.ts +4 -0
  58. package/lib/blocks/blockSecurityDocs.d.ts +4 -0
  59. package/lib/blocks/blockTSup.d.ts +4 -0
  60. package/lib/blocks/blockTemplatedWith.d.ts +4 -0
  61. package/lib/blocks/blockTypeScript.d.ts +4 -0
  62. package/lib/blocks/blockVSCode.d.ts +4 -0
  63. package/lib/blocks/blockVitest.d.ts +4 -0
  64. package/lib/blocks/files/createMultiWorkflowFile.d.ts +5 -1
  65. package/lib/blocks/files/createMultiWorkflowFile.js +7 -2
  66. package/lib/blocks/files/formatYaml.js +2 -1
  67. package/lib/blocks/files/removeUsesQuotes.d.ts +3 -0
  68. package/lib/blocks/files/removeUsesQuotes.js +9 -0
  69. package/lib/blocks/index.d.ts +172 -0
  70. package/lib/data/packageData.d.ts +2 -1
  71. package/lib/index.d.ts +15 -1
  72. package/lib/inputs/inputFromDirectory.d.ts +8 -0
  73. package/lib/inputs/inputFromDirectory.js +13 -0
  74. package/lib/options/readWorkflowsVersions.d.ts +7 -0
  75. package/lib/options/readWorkflowsVersions.js +62 -0
  76. package/lib/presets/common.d.ts +10 -0
  77. package/lib/presets/everything.d.ts +10 -0
  78. package/lib/presets/index.d.ts +30 -0
  79. package/lib/presets/minimal.d.ts +10 -0
  80. package/lib/schemas.d.ts +57 -0
  81. package/lib/schemas.js +20 -0
  82. package/lib/template.d.ts +10 -0
  83. package/package.json +2 -1
@@ -99,6 +99,10 @@ declare const blocks: {
99
99
  rulesetId?: string | undefined;
100
100
  usage?: string | undefined;
101
101
  version?: string | undefined;
102
+ workflowsVersions?: Record<string, Record<string, {
103
+ pinned?: boolean | undefined;
104
+ hash?: string | undefined;
105
+ }>> | undefined;
102
106
  }>;
103
107
  blockAreTheTypesWrong: bingo_stratum.BlockWithoutAddons<{
104
108
  access: "public" | "restricted";
@@ -153,6 +157,10 @@ declare const blocks: {
153
157
  rulesetId?: string | undefined;
154
158
  usage?: string | undefined;
155
159
  version?: string | undefined;
160
+ workflowsVersions?: Record<string, Record<string, {
161
+ pinned?: boolean | undefined;
162
+ hash?: string | undefined;
163
+ }>> | undefined;
156
164
  }>;
157
165
  blockCodecov: bingo_stratum.BlockWithAddons<{
158
166
  env?: Record<string, string> | undefined;
@@ -209,6 +217,10 @@ declare const blocks: {
209
217
  rulesetId?: string | undefined;
210
218
  usage?: string | undefined;
211
219
  version?: string | undefined;
220
+ workflowsVersions?: Record<string, Record<string, {
221
+ pinned?: boolean | undefined;
222
+ hash?: string | undefined;
223
+ }>> | undefined;
212
224
  }>;
213
225
  blockContributingDocs: bingo_stratum.BlockWithoutAddons<{
214
226
  access: "public" | "restricted";
@@ -263,6 +275,10 @@ declare const blocks: {
263
275
  rulesetId?: string | undefined;
264
276
  usage?: string | undefined;
265
277
  version?: string | undefined;
278
+ workflowsVersions?: Record<string, Record<string, {
279
+ pinned?: boolean | undefined;
280
+ hash?: string | undefined;
281
+ }>> | undefined;
266
282
  }>;
267
283
  blockContributorCovenant: bingo_stratum.BlockWithoutAddons<{
268
284
  access: "public" | "restricted";
@@ -317,6 +333,10 @@ declare const blocks: {
317
333
  rulesetId?: string | undefined;
318
334
  usage?: string | undefined;
319
335
  version?: string | undefined;
336
+ workflowsVersions?: Record<string, Record<string, {
337
+ pinned?: boolean | undefined;
338
+ hash?: string | undefined;
339
+ }>> | undefined;
320
340
  }>;
321
341
  blockCSpell: bingo_stratum.BlockWithAddons<{
322
342
  ignores: string[];
@@ -374,6 +394,10 @@ declare const blocks: {
374
394
  rulesetId?: string | undefined;
375
395
  usage?: string | undefined;
376
396
  version?: string | undefined;
397
+ workflowsVersions?: Record<string, Record<string, {
398
+ pinned?: boolean | undefined;
399
+ hash?: string | undefined;
400
+ }>> | undefined;
377
401
  }>;
378
402
  blockDevelopmentDocs: bingo_stratum.BlockWithAddons<{
379
403
  hints: string[];
@@ -442,6 +466,10 @@ declare const blocks: {
442
466
  rulesetId?: string | undefined;
443
467
  usage?: string | undefined;
444
468
  version?: string | undefined;
469
+ workflowsVersions?: Record<string, Record<string, {
470
+ pinned?: boolean | undefined;
471
+ hash?: string | undefined;
472
+ }>> | undefined;
445
473
  }>;
446
474
  blockESLint: bingo_stratum.BlockWithAddons<{
447
475
  imports: {
@@ -522,6 +550,10 @@ declare const blocks: {
522
550
  rulesetId?: string | undefined;
523
551
  usage?: string | undefined;
524
552
  version?: string | undefined;
553
+ workflowsVersions?: Record<string, Record<string, {
554
+ pinned?: boolean | undefined;
555
+ hash?: string | undefined;
556
+ }>> | undefined;
525
557
  }>;
526
558
  blockESLintComments: bingo_stratum.BlockWithoutAddons<{
527
559
  access: "public" | "restricted";
@@ -576,6 +608,10 @@ declare const blocks: {
576
608
  rulesetId?: string | undefined;
577
609
  usage?: string | undefined;
578
610
  version?: string | undefined;
611
+ workflowsVersions?: Record<string, Record<string, {
612
+ pinned?: boolean | undefined;
613
+ hash?: string | undefined;
614
+ }>> | undefined;
579
615
  }>;
580
616
  blockESLintJSDoc: bingo_stratum.BlockWithoutAddons<{
581
617
  access: "public" | "restricted";
@@ -630,6 +666,10 @@ declare const blocks: {
630
666
  rulesetId?: string | undefined;
631
667
  usage?: string | undefined;
632
668
  version?: string | undefined;
669
+ workflowsVersions?: Record<string, Record<string, {
670
+ pinned?: boolean | undefined;
671
+ hash?: string | undefined;
672
+ }>> | undefined;
633
673
  }>;
634
674
  blockESLintJSONC: bingo_stratum.BlockWithoutAddons<{
635
675
  access: "public" | "restricted";
@@ -684,6 +724,10 @@ declare const blocks: {
684
724
  rulesetId?: string | undefined;
685
725
  usage?: string | undefined;
686
726
  version?: string | undefined;
727
+ workflowsVersions?: Record<string, Record<string, {
728
+ pinned?: boolean | undefined;
729
+ hash?: string | undefined;
730
+ }>> | undefined;
687
731
  }>;
688
732
  blockESLintMarkdown: bingo_stratum.BlockWithoutAddons<{
689
733
  access: "public" | "restricted";
@@ -738,6 +782,10 @@ declare const blocks: {
738
782
  rulesetId?: string | undefined;
739
783
  usage?: string | undefined;
740
784
  version?: string | undefined;
785
+ workflowsVersions?: Record<string, Record<string, {
786
+ pinned?: boolean | undefined;
787
+ hash?: string | undefined;
788
+ }>> | undefined;
741
789
  }>;
742
790
  blockESLintMoreStyling: bingo_stratum.BlockWithoutAddons<{
743
791
  access: "public" | "restricted";
@@ -792,6 +840,10 @@ declare const blocks: {
792
840
  rulesetId?: string | undefined;
793
841
  usage?: string | undefined;
794
842
  version?: string | undefined;
843
+ workflowsVersions?: Record<string, Record<string, {
844
+ pinned?: boolean | undefined;
845
+ hash?: string | undefined;
846
+ }>> | undefined;
795
847
  }>;
796
848
  blockESLintNode: bingo_stratum.BlockWithoutAddons<{
797
849
  access: "public" | "restricted";
@@ -846,6 +898,10 @@ declare const blocks: {
846
898
  rulesetId?: string | undefined;
847
899
  usage?: string | undefined;
848
900
  version?: string | undefined;
901
+ workflowsVersions?: Record<string, Record<string, {
902
+ pinned?: boolean | undefined;
903
+ hash?: string | undefined;
904
+ }>> | undefined;
849
905
  }>;
850
906
  blockESLintPackageJson: bingo_stratum.BlockWithoutAddons<{
851
907
  access: "public" | "restricted";
@@ -900,6 +956,10 @@ declare const blocks: {
900
956
  rulesetId?: string | undefined;
901
957
  usage?: string | undefined;
902
958
  version?: string | undefined;
959
+ workflowsVersions?: Record<string, Record<string, {
960
+ pinned?: boolean | undefined;
961
+ hash?: string | undefined;
962
+ }>> | undefined;
903
963
  }>;
904
964
  blockESLintPerfectionist: bingo_stratum.BlockWithoutAddons<{
905
965
  access: "public" | "restricted";
@@ -954,6 +1014,10 @@ declare const blocks: {
954
1014
  rulesetId?: string | undefined;
955
1015
  usage?: string | undefined;
956
1016
  version?: string | undefined;
1017
+ workflowsVersions?: Record<string, Record<string, {
1018
+ pinned?: boolean | undefined;
1019
+ hash?: string | undefined;
1020
+ }>> | undefined;
957
1021
  }>;
958
1022
  blockESLintRegexp: bingo_stratum.BlockWithoutAddons<{
959
1023
  access: "public" | "restricted";
@@ -1008,6 +1072,10 @@ declare const blocks: {
1008
1072
  rulesetId?: string | undefined;
1009
1073
  usage?: string | undefined;
1010
1074
  version?: string | undefined;
1075
+ workflowsVersions?: Record<string, Record<string, {
1076
+ pinned?: boolean | undefined;
1077
+ hash?: string | undefined;
1078
+ }>> | undefined;
1011
1079
  }>;
1012
1080
  blockESLintYML: bingo_stratum.BlockWithoutAddons<{
1013
1081
  access: "public" | "restricted";
@@ -1062,6 +1130,10 @@ declare const blocks: {
1062
1130
  rulesetId?: string | undefined;
1063
1131
  usage?: string | undefined;
1064
1132
  version?: string | undefined;
1133
+ workflowsVersions?: Record<string, Record<string, {
1134
+ pinned?: boolean | undefined;
1135
+ hash?: string | undefined;
1136
+ }>> | undefined;
1065
1137
  }>;
1066
1138
  blockFunding: bingo_stratum.BlockWithoutAddons<{
1067
1139
  access: "public" | "restricted";
@@ -1116,6 +1188,10 @@ declare const blocks: {
1116
1188
  rulesetId?: string | undefined;
1117
1189
  usage?: string | undefined;
1118
1190
  version?: string | undefined;
1191
+ workflowsVersions?: Record<string, Record<string, {
1192
+ pinned?: boolean | undefined;
1193
+ hash?: string | undefined;
1194
+ }>> | undefined;
1119
1195
  }>;
1120
1196
  blockGitHubActionsCI: bingo_stratum.BlockWithAddons<{
1121
1197
  jobs?: {
@@ -1186,6 +1262,10 @@ declare const blocks: {
1186
1262
  rulesetId?: string | undefined;
1187
1263
  usage?: string | undefined;
1188
1264
  version?: string | undefined;
1265
+ workflowsVersions?: Record<string, Record<string, {
1266
+ pinned?: boolean | undefined;
1267
+ hash?: string | undefined;
1268
+ }>> | undefined;
1189
1269
  }>;
1190
1270
  blockGitHubIssueTemplates: bingo_stratum.BlockWithoutAddons<{
1191
1271
  access: "public" | "restricted";
@@ -1240,6 +1320,10 @@ declare const blocks: {
1240
1320
  rulesetId?: string | undefined;
1241
1321
  usage?: string | undefined;
1242
1322
  version?: string | undefined;
1323
+ workflowsVersions?: Record<string, Record<string, {
1324
+ pinned?: boolean | undefined;
1325
+ hash?: string | undefined;
1326
+ }>> | undefined;
1243
1327
  }>;
1244
1328
  blockGitHubPRTemplate: bingo_stratum.BlockWithoutAddons<{
1245
1329
  access: "public" | "restricted";
@@ -1294,6 +1378,10 @@ declare const blocks: {
1294
1378
  rulesetId?: string | undefined;
1295
1379
  usage?: string | undefined;
1296
1380
  version?: string | undefined;
1381
+ workflowsVersions?: Record<string, Record<string, {
1382
+ pinned?: boolean | undefined;
1383
+ hash?: string | undefined;
1384
+ }>> | undefined;
1297
1385
  }>;
1298
1386
  blockGitignore: bingo_stratum.BlockWithAddons<{
1299
1387
  ignores: string[];
@@ -1350,6 +1438,10 @@ declare const blocks: {
1350
1438
  rulesetId?: string | undefined;
1351
1439
  usage?: string | undefined;
1352
1440
  version?: string | undefined;
1441
+ workflowsVersions?: Record<string, Record<string, {
1442
+ pinned?: boolean | undefined;
1443
+ hash?: string | undefined;
1444
+ }>> | undefined;
1353
1445
  }>;
1354
1446
  blockKnip: bingo_stratum.BlockWithAddons<{
1355
1447
  ignoreDependencies?: string[] | undefined;
@@ -1406,6 +1498,10 @@ declare const blocks: {
1406
1498
  rulesetId?: string | undefined;
1407
1499
  usage?: string | undefined;
1408
1500
  version?: string | undefined;
1501
+ workflowsVersions?: Record<string, Record<string, {
1502
+ pinned?: boolean | undefined;
1503
+ hash?: string | undefined;
1504
+ }>> | undefined;
1409
1505
  }>;
1410
1506
  blockMarkdownlint: bingo_stratum.BlockWithAddons<{
1411
1507
  ignores: string[];
@@ -1462,6 +1558,10 @@ declare const blocks: {
1462
1558
  rulesetId?: string | undefined;
1463
1559
  usage?: string | undefined;
1464
1560
  version?: string | undefined;
1561
+ workflowsVersions?: Record<string, Record<string, {
1562
+ pinned?: boolean | undefined;
1563
+ hash?: string | undefined;
1564
+ }>> | undefined;
1465
1565
  }>;
1466
1566
  blockMITLicense: bingo_stratum.BlockWithoutAddons<{
1467
1567
  access: "public" | "restricted";
@@ -1516,6 +1616,10 @@ declare const blocks: {
1516
1616
  rulesetId?: string | undefined;
1517
1617
  usage?: string | undefined;
1518
1618
  version?: string | undefined;
1619
+ workflowsVersions?: Record<string, Record<string, {
1620
+ pinned?: boolean | undefined;
1621
+ hash?: string | undefined;
1622
+ }>> | undefined;
1519
1623
  }>;
1520
1624
  blockNvmrc: bingo_stratum.BlockWithoutAddons<{
1521
1625
  access: "public" | "restricted";
@@ -1570,6 +1674,10 @@ declare const blocks: {
1570
1674
  rulesetId?: string | undefined;
1571
1675
  usage?: string | undefined;
1572
1676
  version?: string | undefined;
1677
+ workflowsVersions?: Record<string, Record<string, {
1678
+ pinned?: boolean | undefined;
1679
+ hash?: string | undefined;
1680
+ }>> | undefined;
1573
1681
  }>;
1574
1682
  blockPackageJson: bingo_stratum.BlockWithAddons<{
1575
1683
  properties: {
@@ -1701,6 +1809,10 @@ declare const blocks: {
1701
1809
  rulesetId?: string | undefined;
1702
1810
  usage?: string | undefined;
1703
1811
  version?: string | undefined;
1812
+ workflowsVersions?: Record<string, Record<string, {
1813
+ pinned?: boolean | undefined;
1814
+ hash?: string | undefined;
1815
+ }>> | undefined;
1704
1816
  }>;
1705
1817
  blockPnpmDedupe: bingo_stratum.BlockWithoutAddons<{
1706
1818
  access: "public" | "restricted";
@@ -1755,6 +1867,10 @@ declare const blocks: {
1755
1867
  rulesetId?: string | undefined;
1756
1868
  usage?: string | undefined;
1757
1869
  version?: string | undefined;
1870
+ workflowsVersions?: Record<string, Record<string, {
1871
+ pinned?: boolean | undefined;
1872
+ hash?: string | undefined;
1873
+ }>> | undefined;
1758
1874
  }>;
1759
1875
  blockPRCompliance: bingo_stratum.BlockWithoutAddons<{
1760
1876
  access: "public" | "restricted";
@@ -1809,6 +1925,10 @@ declare const blocks: {
1809
1925
  rulesetId?: string | undefined;
1810
1926
  usage?: string | undefined;
1811
1927
  version?: string | undefined;
1928
+ workflowsVersions?: Record<string, Record<string, {
1929
+ pinned?: boolean | undefined;
1930
+ hash?: string | undefined;
1931
+ }>> | undefined;
1812
1932
  }>;
1813
1933
  blockPrettier: bingo_stratum.BlockWithAddons<{
1814
1934
  overrides: {
@@ -1872,6 +1992,10 @@ declare const blocks: {
1872
1992
  rulesetId?: string | undefined;
1873
1993
  usage?: string | undefined;
1874
1994
  version?: string | undefined;
1995
+ workflowsVersions?: Record<string, Record<string, {
1996
+ pinned?: boolean | undefined;
1997
+ hash?: string | undefined;
1998
+ }>> | undefined;
1875
1999
  }>;
1876
2000
  blockPrettierPluginCurly: bingo_stratum.BlockWithoutAddons<{
1877
2001
  access: "public" | "restricted";
@@ -1926,6 +2050,10 @@ declare const blocks: {
1926
2050
  rulesetId?: string | undefined;
1927
2051
  usage?: string | undefined;
1928
2052
  version?: string | undefined;
2053
+ workflowsVersions?: Record<string, Record<string, {
2054
+ pinned?: boolean | undefined;
2055
+ hash?: string | undefined;
2056
+ }>> | undefined;
1929
2057
  }>;
1930
2058
  blockPrettierPluginPackageJson: bingo_stratum.BlockWithoutAddons<{
1931
2059
  access: "public" | "restricted";
@@ -1980,6 +2108,10 @@ declare const blocks: {
1980
2108
  rulesetId?: string | undefined;
1981
2109
  usage?: string | undefined;
1982
2110
  version?: string | undefined;
2111
+ workflowsVersions?: Record<string, Record<string, {
2112
+ pinned?: boolean | undefined;
2113
+ hash?: string | undefined;
2114
+ }>> | undefined;
1983
2115
  }>;
1984
2116
  blockPrettierPluginSh: bingo_stratum.BlockWithoutAddons<{
1985
2117
  access: "public" | "restricted";
@@ -2034,6 +2166,10 @@ declare const blocks: {
2034
2166
  rulesetId?: string | undefined;
2035
2167
  usage?: string | undefined;
2036
2168
  version?: string | undefined;
2169
+ workflowsVersions?: Record<string, Record<string, {
2170
+ pinned?: boolean | undefined;
2171
+ hash?: string | undefined;
2172
+ }>> | undefined;
2037
2173
  }>;
2038
2174
  blockREADME: bingo_stratum.BlockWithAddons<{
2039
2175
  sections: string[];
@@ -2092,6 +2228,10 @@ declare const blocks: {
2092
2228
  rulesetId?: string | undefined;
2093
2229
  usage?: string | undefined;
2094
2230
  version?: string | undefined;
2231
+ workflowsVersions?: Record<string, Record<string, {
2232
+ pinned?: boolean | undefined;
2233
+ hash?: string | undefined;
2234
+ }>> | undefined;
2095
2235
  }>;
2096
2236
  blockReleaseIt: bingo_stratum.BlockWithoutAddons<{
2097
2237
  access: "public" | "restricted";
@@ -2146,6 +2286,10 @@ declare const blocks: {
2146
2286
  rulesetId?: string | undefined;
2147
2287
  usage?: string | undefined;
2148
2288
  version?: string | undefined;
2289
+ workflowsVersions?: Record<string, Record<string, {
2290
+ pinned?: boolean | undefined;
2291
+ hash?: string | undefined;
2292
+ }>> | undefined;
2149
2293
  }>;
2150
2294
  blockRenovate: bingo_stratum.BlockWithoutAddons<{
2151
2295
  access: "public" | "restricted";
@@ -2200,6 +2344,10 @@ declare const blocks: {
2200
2344
  rulesetId?: string | undefined;
2201
2345
  usage?: string | undefined;
2202
2346
  version?: string | undefined;
2347
+ workflowsVersions?: Record<string, Record<string, {
2348
+ pinned?: boolean | undefined;
2349
+ hash?: string | undefined;
2350
+ }>> | undefined;
2203
2351
  }>;
2204
2352
  blockSecurityDocs: bingo_stratum.BlockWithoutAddons<{
2205
2353
  access: "public" | "restricted";
@@ -2254,6 +2402,10 @@ declare const blocks: {
2254
2402
  rulesetId?: string | undefined;
2255
2403
  usage?: string | undefined;
2256
2404
  version?: string | undefined;
2405
+ workflowsVersions?: Record<string, Record<string, {
2406
+ pinned?: boolean | undefined;
2407
+ hash?: string | undefined;
2408
+ }>> | undefined;
2257
2409
  }>;
2258
2410
  blockTemplatedWith: bingo_stratum.BlockWithoutAddons<{
2259
2411
  access: "public" | "restricted";
@@ -2308,6 +2460,10 @@ declare const blocks: {
2308
2460
  rulesetId?: string | undefined;
2309
2461
  usage?: string | undefined;
2310
2462
  version?: string | undefined;
2463
+ workflowsVersions?: Record<string, Record<string, {
2464
+ pinned?: boolean | undefined;
2465
+ hash?: string | undefined;
2466
+ }>> | undefined;
2311
2467
  }>;
2312
2468
  blockTSup: bingo_stratum.BlockWithAddons<{
2313
2469
  entry: string[];
@@ -2365,6 +2521,10 @@ declare const blocks: {
2365
2521
  rulesetId?: string | undefined;
2366
2522
  usage?: string | undefined;
2367
2523
  version?: string | undefined;
2524
+ workflowsVersions?: Record<string, Record<string, {
2525
+ pinned?: boolean | undefined;
2526
+ hash?: string | undefined;
2527
+ }>> | undefined;
2368
2528
  }>;
2369
2529
  blockTypeScript: bingo_stratum.BlockWithoutAddons<{
2370
2530
  access: "public" | "restricted";
@@ -2419,6 +2579,10 @@ declare const blocks: {
2419
2579
  rulesetId?: string | undefined;
2420
2580
  usage?: string | undefined;
2421
2581
  version?: string | undefined;
2582
+ workflowsVersions?: Record<string, Record<string, {
2583
+ pinned?: boolean | undefined;
2584
+ hash?: string | undefined;
2585
+ }>> | undefined;
2422
2586
  }>;
2423
2587
  blockVitest: bingo_stratum.BlockWithAddons<{
2424
2588
  exclude: string[];
@@ -2488,6 +2652,10 @@ declare const blocks: {
2488
2652
  rulesetId?: string | undefined;
2489
2653
  usage?: string | undefined;
2490
2654
  version?: string | undefined;
2655
+ workflowsVersions?: Record<string, Record<string, {
2656
+ pinned?: boolean | undefined;
2657
+ hash?: string | undefined;
2658
+ }>> | undefined;
2491
2659
  }>;
2492
2660
  blockVSCode: bingo_stratum.BlockWithAddons<{
2493
2661
  settings: Record<string, unknown>;
@@ -2551,6 +2719,10 @@ declare const blocks: {
2551
2719
  rulesetId?: string | undefined;
2552
2720
  usage?: string | undefined;
2553
2721
  version?: string | undefined;
2722
+ workflowsVersions?: Record<string, Record<string, {
2723
+ pinned?: boolean | undefined;
2724
+ hash?: string | undefined;
2725
+ }>> | undefined;
2554
2726
  }>;
2555
2727
  };
2556
2728
 
@@ -1,5 +1,5 @@
1
1
  var name = "create-typescript-app";
2
- var version = "2.8.1";
2
+ var version = "2.9.1";
3
3
  var description = "Quickstart-friendly TypeScript template with comprehensive, configurable, opinionated tooling. 🎁";
4
4
  var repository = {
5
5
  type: "git",
@@ -36,6 +36,7 @@ var dependencies = {
36
36
  bingo: "^0.5.8",
37
37
  "bingo-fs": "^0.5.4",
38
38
  "bingo-stratum": "^0.5.7",
39
+ "cached-factory": "^0.1.0",
39
40
  "cspell-populate-words": "^0.3.0",
40
41
  execa: "^9.5.2",
41
42
  "git-url-parse": "^16.0.1",
package/lib/index.d.ts CHANGED
@@ -3,7 +3,7 @@ import * as bingo_stratum from 'bingo-stratum';
3
3
  import * as bingo_stratum_lib_types_templates_js from 'bingo-stratum/lib/types/templates.js';
4
4
  import * as zod from 'zod';
5
5
  export { template } from './template.js';
6
- export { BaseOptions, Contributor, base } from './base.js';
6
+ export { BaseOptions, base } from './base.js';
7
7
  export { blocks } from './blocks/index.js';
8
8
  export { presets } from './presets/index.js';
9
9
  export { blockAllContributors } from './blocks/blockAllContributors.js';
@@ -169,6 +169,16 @@ declare const createConfig: bingo.CreateTemplateConfig<{
169
169
  title: zod.ZodString;
170
170
  usage: zod.ZodOptional<zod.ZodString>;
171
171
  version: zod.ZodOptional<zod.ZodString>;
172
+ workflowsVersions: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodObject<{
173
+ hash: zod.ZodOptional<zod.ZodString>;
174
+ pinned: zod.ZodOptional<zod.ZodBoolean>;
175
+ }, "strip", zod.ZodTypeAny, {
176
+ pinned?: boolean | undefined;
177
+ hash?: string | undefined;
178
+ }, {
179
+ pinned?: boolean | undefined;
180
+ hash?: string | undefined;
181
+ }>>>>;
172
182
  } & bingo_stratum_lib_types_templates_js.StratumTemplateOptionsShape, bingo_stratum.StratumRefinements<{
173
183
  access: "public" | "restricted";
174
184
  description: string;
@@ -222,6 +232,10 @@ declare const createConfig: bingo.CreateTemplateConfig<{
222
232
  rulesetId?: string | undefined;
223
233
  usage?: string | undefined;
224
234
  version?: string | undefined;
235
+ workflowsVersions?: Record<string, Record<string, {
236
+ pinned?: boolean | undefined;
237
+ hash?: string | undefined;
238
+ }>> | undefined;
225
239
  }>>;
226
240
 
227
241
  export { createConfig };
@@ -0,0 +1,8 @@
1
+ import * as bingo from 'bingo';
2
+ import { z } from 'zod';
3
+
4
+ declare const inputFromDirectory: bingo.InputWithArgs<Promise<string[]>, {
5
+ directoryPath: z.ZodString;
6
+ }>;
7
+
8
+ export { inputFromDirectory };
@@ -0,0 +1,13 @@
1
+ import { createInput } from "bingo";
2
+ import { z } from "zod";
3
+ const inputFromDirectory = createInput({
4
+ args: {
5
+ directoryPath: z.string()
6
+ },
7
+ async produce({ args, fs }) {
8
+ return await fs.readDirectory(args.directoryPath);
9
+ }
10
+ });
11
+ export {
12
+ inputFromDirectory
13
+ };
@@ -0,0 +1,7 @@
1
+ import { TakeInput } from 'bingo';
2
+ import { WorkflowsVersions } from '../schemas.js';
3
+ import 'zod';
4
+
5
+ declare function readWorkflowsVersions(take: TakeInput): Promise<WorkflowsVersions>;
6
+
7
+ export { readWorkflowsVersions };
@@ -0,0 +1,62 @@
1
+ import { inputFromFile } from "input-from-file";
2
+ import { inputFromDirectory } from "../inputs/inputFromDirectory.js";
3
+ async function readWorkflowsVersions(take) {
4
+ const workflowsVersions = {};
5
+ async function collectCompositeUses() {
6
+ const compositeNames = await take(inputFromDirectory, {
7
+ directoryPath: ".github/actions"
8
+ });
9
+ await Promise.all(
10
+ compositeNames.map(async (compositeName) => {
11
+ const compositeFileNames = await take(inputFromDirectory, {
12
+ directoryPath: `.github/actions/${compositeName}`
13
+ });
14
+ for (const compositeFileName of compositeFileNames) {
15
+ await collectFile(
16
+ `.github/actions/${compositeName}/${compositeFileName}`
17
+ );
18
+ }
19
+ })
20
+ );
21
+ }
22
+ async function collectWorkflowUses() {
23
+ const workflowFileNames = await take(inputFromDirectory, {
24
+ directoryPath: ".github/workflows"
25
+ });
26
+ await Promise.all(
27
+ workflowFileNames.map(async (workflowFileName) => {
28
+ await collectFile(`.github/workflows/${workflowFileName}`);
29
+ })
30
+ );
31
+ }
32
+ async function collectFile(filePath) {
33
+ const raw = await take(inputFromFile, { filePath });
34
+ if (raw instanceof Error) {
35
+ return;
36
+ }
37
+ for (const match of raw.matchAll(/uses:\s*(\w.+)/g)) {
38
+ const [, uses] = match;
39
+ collectUses(uses);
40
+ }
41
+ }
42
+ function collectUses(uses) {
43
+ const matched = /([^#@]+)@([^ #]+)(?: # ([a-z\d.]+))?/.exec(uses);
44
+ if (!matched) {
45
+ return;
46
+ }
47
+ const [, action, actual, commented] = matched;
48
+ workflowsVersions[action] ??= {};
49
+ if (commented) {
50
+ workflowsVersions[action][commented] ??= {};
51
+ workflowsVersions[action][commented].hash = actual;
52
+ } else {
53
+ workflowsVersions[action][actual] ??= {};
54
+ workflowsVersions[action][actual].pinned = true;
55
+ }
56
+ }
57
+ await Promise.all([collectCompositeUses(), collectWorkflowUses()]);
58
+ return workflowsVersions;
59
+ }
60
+ export {
61
+ readWorkflowsVersions
62
+ };
@@ -116,6 +116,16 @@ declare const presetCommon: bingo_stratum.Preset<{
116
116
  title: zod.ZodString;
117
117
  usage: zod.ZodOptional<zod.ZodString>;
118
118
  version: zod.ZodOptional<zod.ZodString>;
119
+ workflowsVersions: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodObject<{
120
+ hash: zod.ZodOptional<zod.ZodString>;
121
+ pinned: zod.ZodOptional<zod.ZodBoolean>;
122
+ }, "strip", zod.ZodTypeAny, {
123
+ pinned?: boolean | undefined;
124
+ hash?: string | undefined;
125
+ }, {
126
+ pinned?: boolean | undefined;
127
+ hash?: string | undefined;
128
+ }>>>>;
119
129
  }>;
120
130
 
121
131
  export { presetCommon };
@@ -116,6 +116,16 @@ declare const presetEverything: bingo_stratum.Preset<{
116
116
  title: zod.ZodString;
117
117
  usage: zod.ZodOptional<zod.ZodString>;
118
118
  version: zod.ZodOptional<zod.ZodString>;
119
+ workflowsVersions: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodObject<{
120
+ hash: zod.ZodOptional<zod.ZodString>;
121
+ pinned: zod.ZodOptional<zod.ZodBoolean>;
122
+ }, "strip", zod.ZodTypeAny, {
123
+ pinned?: boolean | undefined;
124
+ hash?: string | undefined;
125
+ }, {
126
+ pinned?: boolean | undefined;
127
+ hash?: string | undefined;
128
+ }>>>>;
119
129
  }>;
120
130
 
121
131
  export { presetEverything };
@@ -120,6 +120,16 @@ declare const presets: {
120
120
  title: zod.ZodString;
121
121
  usage: zod.ZodOptional<zod.ZodString>;
122
122
  version: zod.ZodOptional<zod.ZodString>;
123
+ workflowsVersions: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodObject<{
124
+ hash: zod.ZodOptional<zod.ZodString>;
125
+ pinned: zod.ZodOptional<zod.ZodBoolean>;
126
+ }, "strip", zod.ZodTypeAny, {
127
+ pinned?: boolean | undefined;
128
+ hash?: string | undefined;
129
+ }, {
130
+ pinned?: boolean | undefined;
131
+ hash?: string | undefined;
132
+ }>>>>;
123
133
  }>;
124
134
  everything: bingo_stratum.Preset<{
125
135
  access: zod.ZodUnion<[zod.ZodLiteral<"public">, zod.ZodLiteral<"restricted">]>;
@@ -236,6 +246,16 @@ declare const presets: {
236
246
  title: zod.ZodString;
237
247
  usage: zod.ZodOptional<zod.ZodString>;
238
248
  version: zod.ZodOptional<zod.ZodString>;
249
+ workflowsVersions: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodObject<{
250
+ hash: zod.ZodOptional<zod.ZodString>;
251
+ pinned: zod.ZodOptional<zod.ZodBoolean>;
252
+ }, "strip", zod.ZodTypeAny, {
253
+ pinned?: boolean | undefined;
254
+ hash?: string | undefined;
255
+ }, {
256
+ pinned?: boolean | undefined;
257
+ hash?: string | undefined;
258
+ }>>>>;
239
259
  }>;
240
260
  minimal: bingo_stratum.Preset<{
241
261
  access: zod.ZodUnion<[zod.ZodLiteral<"public">, zod.ZodLiteral<"restricted">]>;
@@ -352,6 +372,16 @@ declare const presets: {
352
372
  title: zod.ZodString;
353
373
  usage: zod.ZodOptional<zod.ZodString>;
354
374
  version: zod.ZodOptional<zod.ZodString>;
375
+ workflowsVersions: zod.ZodOptional<zod.ZodRecord<zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodObject<{
376
+ hash: zod.ZodOptional<zod.ZodString>;
377
+ pinned: zod.ZodOptional<zod.ZodBoolean>;
378
+ }, "strip", zod.ZodTypeAny, {
379
+ pinned?: boolean | undefined;
380
+ hash?: string | undefined;
381
+ }, {
382
+ pinned?: boolean | undefined;
383
+ hash?: string | undefined;
384
+ }>>>>;
355
385
  }>;
356
386
  };
357
387