bingo-stratum 0.5.13 → 0.6.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.
Files changed (111) hide show
  1. package/lib/creators/assertNoDuplicateBlocks.d.ts.map +1 -1
  2. package/lib/creators/assertNoDuplicateBlocks.js +1 -3
  3. package/lib/creators/assertNoDuplicateBlocks.js.map +1 -1
  4. package/lib/creators/createBlock.d.ts.map +1 -1
  5. package/lib/creators/createBlock.js +8 -3
  6. package/lib/creators/createBlock.js.map +1 -1
  7. package/lib/creators/createBlock.test.js +86 -0
  8. package/lib/creators/createBlock.test.js.map +1 -1
  9. package/lib/creators/createStratumTemplate.d.ts.map +1 -1
  10. package/lib/creators/createStratumTemplate.js +11 -7
  11. package/lib/creators/createStratumTemplate.js.map +1 -1
  12. package/lib/creators/createStratumTemplate.test.js +52 -4
  13. package/lib/creators/createStratumTemplate.test.js.map +1 -1
  14. package/lib/mergers/mergeAddons.d.ts.map +1 -1
  15. package/lib/mergers/mergeAddons.js +2 -1
  16. package/lib/mergers/mergeAddons.js.map +1 -1
  17. package/lib/mergers/mergeAddons.test.js +15 -1
  18. package/lib/mergers/mergeAddons.test.js.map +1 -1
  19. package/lib/mergers/mergeAddonsIfUpdated.d.ts +1 -1
  20. package/lib/mergers/mergeAddonsIfUpdated.d.ts.map +1 -1
  21. package/lib/mergers/mergeAddonsIfUpdated.js +15 -7
  22. package/lib/mergers/mergeAddonsIfUpdated.js.map +1 -1
  23. package/lib/mergers/mergeAddonsIfUpdated.test.js +17 -7
  24. package/lib/mergers/mergeAddonsIfUpdated.test.js.map +1 -1
  25. package/lib/mergers/mergeBlockCreations.d.ts +1 -1
  26. package/lib/producers/applyBlockRefinements.test.js +15 -0
  27. package/lib/producers/applyBlockRefinements.test.js.map +1 -1
  28. package/lib/producers/getUpdatedBlockAddons.d.ts +1 -1
  29. package/lib/producers/getUpdatedBlockAddons.d.ts.map +1 -1
  30. package/lib/producers/getUpdatedBlockAddons.js +5 -1
  31. package/lib/producers/getUpdatedBlockAddons.js.map +1 -1
  32. package/lib/producers/produceBlock.test.js +16 -1
  33. package/lib/producers/produceBlock.test.js.map +1 -1
  34. package/lib/producers/produceBlocks.d.ts.map +1 -1
  35. package/lib/producers/produceBlocks.js +3 -2
  36. package/lib/producers/produceBlocks.js.map +1 -1
  37. package/lib/producers/produceBlocks.test.js +94 -0
  38. package/lib/producers/produceBlocks.test.js.map +1 -1
  39. package/lib/producers/producePreset.test.js +1 -0
  40. package/lib/producers/producePreset.test.js.map +1 -1
  41. package/lib/runners/runBlock.test.js +1 -0
  42. package/lib/runners/runBlock.test.js.map +1 -1
  43. package/lib/types/blocks.d.ts +5 -5
  44. package/lib/types/blocks.d.ts.map +1 -1
  45. package/lib/types/creations.d.ts +1 -1
  46. package/lib/types/creations.d.ts.map +1 -1
  47. package/lib/types/refinements.d.ts +1 -1
  48. package/lib/types/refinements.d.ts.map +1 -1
  49. package/lib/types/templates.d.ts +11 -4
  50. package/lib/types/templates.d.ts.map +1 -1
  51. package/lib/utils/createBlockAddons.d.ts +5 -0
  52. package/lib/utils/createBlockAddons.d.ts.map +1 -0
  53. package/lib/utils/createBlockAddons.js +10 -0
  54. package/lib/utils/createBlockAddons.js.map +1 -0
  55. package/lib/utils/getName.d.ts +5 -0
  56. package/lib/utils/getName.d.ts.map +1 -0
  57. package/lib/utils/getName.js +4 -0
  58. package/lib/utils/getName.js.map +1 -0
  59. package/package.json +10 -11
  60. package/lib/creators/inferPreset.d.ts +0 -4
  61. package/lib/creators/inferPreset.d.ts.map +0 -1
  62. package/lib/creators/inferPreset.js +0 -73
  63. package/lib/creators/inferPreset.js.map +0 -1
  64. package/lib/creators/inferPreset.test.d.ts +0 -2
  65. package/lib/creators/inferPreset.test.d.ts.map +0 -1
  66. package/lib/creators/inferPreset.test.js +0 -95
  67. package/lib/creators/inferPreset.test.js.map +0 -1
  68. package/lib/predicates/isBlock.d.ts +0 -3
  69. package/lib/predicates/isBlock.d.ts.map +0 -1
  70. package/lib/predicates/isBlock.js +0 -7
  71. package/lib/predicates/isBlock.js.map +0 -1
  72. package/lib/producers/applyBlockModifications.d.ts +0 -4
  73. package/lib/producers/applyBlockModifications.d.ts.map +0 -1
  74. package/lib/producers/applyBlockModifications.js +0 -14
  75. package/lib/producers/applyBlockModifications.js.map +0 -1
  76. package/lib/producers/applyBlockModifications.test.d.ts +0 -2
  77. package/lib/producers/applyBlockModifications.test.d.ts.map +0 -1
  78. package/lib/producers/applyBlockModifications.test.js +0 -42
  79. package/lib/producers/applyBlockModifications.test.js.map +0 -1
  80. package/lib/types/customizations..d.ts +0 -9
  81. package/lib/types/customizations..d.ts.map +0 -1
  82. package/lib/types/customizations..js +0 -2
  83. package/lib/types/customizations..js.map +0 -1
  84. package/lib/types/customizations.d.ts +0 -22
  85. package/lib/types/customizations.d.ts.map +0 -1
  86. package/lib/types/customizations.js +0 -2
  87. package/lib/types/customizations.js.map +0 -1
  88. package/lib/types/settings.d.ts +0 -9
  89. package/lib/types/settings.d.ts.map +0 -1
  90. package/lib/types/settings.js +0 -2
  91. package/lib/types/settings.js.map +0 -1
  92. package/lib/utils/createBlockExclusionOption.d.ts +0 -2
  93. package/lib/utils/createBlockExclusionOption.d.ts.map +0 -1
  94. package/lib/utils/createBlockExclusionOption.js +0 -5
  95. package/lib/utils/createBlockExclusionOption.js.map +0 -1
  96. package/lib/utils.ts/createBlockExclusionOption.d.ts +0 -2
  97. package/lib/utils.ts/createBlockExclusionOption.d.ts.map +0 -1
  98. package/lib/utils.ts/createBlockExclusionOption.js +0 -5
  99. package/lib/utils.ts/createBlockExclusionOption.js.map +0 -1
  100. package/lib/utils.ts/getPresetByName.d.ts +0 -4
  101. package/lib/utils.ts/getPresetByName.d.ts.map +0 -1
  102. package/lib/utils.ts/getPresetByName.js +0 -7
  103. package/lib/utils.ts/getPresetByName.js.map +0 -1
  104. package/lib/utils.ts/slugifyName.d.ts +0 -2
  105. package/lib/utils.ts/slugifyName.d.ts.map +0 -1
  106. package/lib/utils.ts/slugifyName.js +0 -6
  107. package/lib/utils.ts/slugifyName.js.map +0 -1
  108. package/lib/utils.ts/slugifyPresetName.d.ts +0 -2
  109. package/lib/utils.ts/slugifyPresetName.d.ts.map +0 -1
  110. package/lib/utils.ts/slugifyPresetName.js +0 -6
  111. package/lib/utils.ts/slugifyPresetName.js.map +0 -1
@@ -1,11 +1,11 @@
1
1
  import { describe, expect, it } from "vitest";
2
2
  import { mergeAddonsIfUpdated } from "./mergeAddonsIfUpdated.js";
3
- describe("mergeArgsIfUpdated", () => {
3
+ describe("mergeAddonsIfUpdated", () => {
4
4
  it.each([
5
5
  [{}, {}, undefined],
6
6
  [[], [], undefined],
7
- [[], {}, new Error("Mismatched merging addons (Array.isArray).")],
8
- [{}, [], new Error("Mismatched merging addons (Array.isArray).")],
7
+ [[], {}, new Error("Mismatched addons: existing [] vs. new {}.")],
8
+ [{}, [], new Error("Mismatched addons: existing {} vs. new [].")],
9
9
  [["a"], ["a"], undefined],
10
10
  [["a"], ["b"], ["a", "b"]],
11
11
  [{ a: true }, {}, { a: true }],
@@ -14,17 +14,22 @@ describe("mergeArgsIfUpdated", () => {
14
14
  [
15
15
  { a: true },
16
16
  { a: false },
17
- new Error("Mismatched merging addons (true vs. false)."),
17
+ new Error("Mismatched addons at 'a': existing true vs. new false."),
18
18
  ],
19
19
  [
20
20
  { a: [] },
21
21
  { a: false },
22
- new Error("Mismatched merging addons (Array.isArray)."),
22
+ new Error("Mismatched addons at 'a': existing [] vs. new false."),
23
23
  ],
24
24
  [
25
25
  { a: {} },
26
26
  { a: false },
27
- new Error("Mismatched merging addons (typeof object)."),
27
+ new Error("Mismatched addons at 'a': existing {} vs. new false."),
28
+ ],
29
+ [
30
+ { a: {} },
31
+ { a: [] },
32
+ new Error("Mismatched addons at 'a': existing {} vs. new []."),
28
33
  ],
29
34
  [{ a: true }, { b: true }, { a: true, b: true }],
30
35
  [{}, { b: true }, { b: true }],
@@ -38,7 +43,12 @@ describe("mergeArgsIfUpdated", () => {
38
43
  [
39
44
  { a: { a1: true } },
40
45
  { a: { a1: false } },
41
- new Error("Mismatched merging addons (true vs. false)."),
46
+ new Error("Mismatched addons at 'a.a1': existing true vs. new false."),
47
+ ],
48
+ [
49
+ { a: { a1: "b" } },
50
+ { a: { a1: "c" } },
51
+ new Error("Mismatched addons at 'a.a1': existing 'b' vs. new 'c'."),
42
52
  ],
43
53
  [{ a: { a1: ["a2"] } }, { a: { a1: ["a2"] } }, undefined],
44
54
  [{ a: { a1: ["a2"] } }, { a: { a1: ["a3"] } }, { a: { a1: ["a2", "a3"] } }],
@@ -1 +1 @@
1
- {"version":3,"file":"mergeAddonsIfUpdated.test.js","sourceRoot":"","sources":["../../src/mergers/mergeAddonsIfUpdated.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,IAAI,CAAC;QACP,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC;QACnB,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC;QACnB,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QACjE,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QACjE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC;QACzB,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC1B,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;QAC9B,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC;QACrC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC;QACrC;YACC,EAAE,CAAC,EAAE,IAAI,EAAE;YACX,EAAE,CAAC,EAAE,KAAK,EAAE;YACZ,IAAI,KAAK,CAAC,6CAA6C,CAAC;SACxD;QACD;YACC,EAAE,CAAC,EAAE,EAAE,EAAE;YACT,EAAE,CAAC,EAAE,KAAK,EAAE;YACZ,IAAI,KAAK,CAAC,4CAA4C,CAAC;SACvD;QACD;YACC,EAAE,CAAC,EAAE,EAAE,EAAE;YACT,EAAE,CAAC,EAAE,KAAK,EAAE;YACZ,IAAI,KAAK,CAAC,4CAA4C,CAAC;SACvD;QACD,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;QAChD,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;QAC9B,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QAC1B,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QACxC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QAC1B,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;QACpD,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;QACnD,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC;QACzC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,CAAC;QACrD;YACC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE;YACnB,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE;YACpB,IAAI,KAAK,CAAC,6CAA6C,CAAC;SACxD;QACD,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC;QACzD,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;QAC3E,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC;QAC7D;YACC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE;YACzC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE;YACzC,SAAS;SACT;KACD,CAAC,CAAC,mCAAmC,EAAE,CAAC,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE;QAC3E,MAAM,MAAM,GAAG,oBAAoB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAE3D,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"mergeAddonsIfUpdated.test.js","sourceRoot":"","sources":["../../src/mergers/mergeAddonsIfUpdated.test.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { BlockCreation } from "../types/creations.js";
2
2
  export declare function mergeBlockCreations<Options extends object>(first: Partial<BlockCreation<Options>>, second: Partial<BlockCreation<Options>>): {
3
- addons: import("../types/creations.js").CreatedBlockAddons<any, Options>[];
3
+ addons: import("../types/creations.js").CreatedBlockAddons<object, Options>[];
4
4
  files?: import("bingo-fs").CreatedDirectory | undefined;
5
5
  requests?: import("bingo-requests").CreatedRequest[] | undefined;
6
6
  scripts?: import("bingo").CreatedScript[] | undefined;
@@ -19,6 +19,13 @@ const blockC = base.createBlock({
19
19
  about: { name: "C" },
20
20
  produce: vi.fn(),
21
21
  });
22
+ const blockWithAddons = base.createBlock({
23
+ about: { name: "With Addons" },
24
+ addons: {
25
+ names: z.array(z.string()).default([]),
26
+ },
27
+ produce: vi.fn(),
28
+ });
22
29
  const blocksAvailable = [blockA, blockB, blockC];
23
30
  describe("applyBlockRefinements", () => {
24
31
  it("returns the initial blocks when no exclusion options or refinements are provided", () => {
@@ -89,6 +96,14 @@ describe("applyBlockRefinements", () => {
89
96
  });
90
97
  expect(actual).toEqual([blockA, blockC]);
91
98
  });
99
+ it("returns added blocks when an added Block has Addons", () => {
100
+ const initial = [blockA];
101
+ const actual = applyBlockRefinements(blocksAvailable, initial, { value: "" }, {
102
+ add: [blockWithAddons],
103
+ exclude: [],
104
+ });
105
+ expect(actual).toEqual([blockA, blockWithAddons]);
106
+ });
92
107
  it("returns modified blocks when both exclusion options and refinements are provided", () => {
93
108
  const blocksInitial = [blockA, blockB, blockC];
94
109
  const actual = applyBlockRefinements(blocksAvailable, blocksInitial, { "exclude-a": true, value: "" }, {
@@ -1 +1 @@
1
- {"version":3,"file":"applyBlockRefinements.test.js","sourceRoot":"","sources":["../../src/producers/applyBlockRefinements.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"applyBlockRefinements.test.js","sourceRoot":"","sources":["../../src/producers/applyBlockRefinements.test.ts"],"names":[],"mappings":"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"}
@@ -5,5 +5,5 @@ export interface BlockProduction<Addons extends object | undefined> {
5
5
  addons: Addons;
6
6
  creation?: Partial<Creation>;
7
7
  }
8
- export declare function getUpdatedBlockAddons<Options extends object>(allowedBlocks: Set<Block<object | undefined, Options>>, blockProductions: Map<Block<object | undefined, Options>, BlockProduction<object>>, newBlockAddons?: CreatedBlockAddons<object, Options>[]): [BlockWithAddons<object, Options>, object][];
8
+ export declare function getUpdatedBlockAddons<Options extends object>(allowedBlocks: Set<Block<object | undefined, Options>>, blockProductions: Map<Block<object | undefined, Options>, BlockProduction<object>>, producingBlock: Block<object | undefined, Options>, newBlockAddons?: CreatedBlockAddons<object, Options>[]): [BlockWithAddons<object, Options>, object][];
9
9
  //# sourceMappingURL=getUpdatedBlockAddons.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getUpdatedBlockAddons.d.ts","sourceRoot":"","sources":["../../src/producers/getUpdatedBlockAddons.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGjC,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D,MAAM,WAAW,eAAe,CAAC,MAAM,SAAS,MAAM,GAAG,SAAS;IACjE,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC7B;AAED,wBAAgB,qBAAqB,CAAC,OAAO,SAAS,MAAM,EAC3D,aAAa,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC,CAAC,EACtD,gBAAgB,EAAE,GAAG,CACpB,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC,EAClC,eAAe,CAAC,MAAM,CAAC,CACvB,EACD,cAAc,GAAE,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAO,gDAyB1D"}
1
+ {"version":3,"file":"getUpdatedBlockAddons.d.ts","sourceRoot":"","sources":["../../src/producers/getUpdatedBlockAddons.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGjC,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAG3D,MAAM,WAAW,eAAe,CAAC,MAAM,SAAS,MAAM,GAAG,SAAS;IACjE,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC7B;AAED,wBAAgB,qBAAqB,CAAC,OAAO,SAAS,MAAM,EAC3D,aAAa,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC,CAAC,EACtD,gBAAgB,EAAE,GAAG,CACpB,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC,EAClC,eAAe,CAAC,MAAM,CAAC,CACvB,EACD,cAAc,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC,EAClD,cAAc,GAAE,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAO,gDA+B1D"}
@@ -1,5 +1,6 @@
1
1
  import { mergeAddonsIfUpdated } from "../mergers/mergeAddonsIfUpdated.js";
2
- export function getUpdatedBlockAddons(allowedBlocks, blockProductions, newBlockAddons = []) {
2
+ import { getName } from "../utils/getName.js";
3
+ export function getUpdatedBlockAddons(allowedBlocks, blockProductions, producingBlock, newBlockAddons = []) {
3
4
  const updated = [];
4
5
  for (const newAddons of newBlockAddons) {
5
6
  if (!allowedBlocks.has(newAddons.block)) {
@@ -11,6 +12,9 @@ export function getUpdatedBlockAddons(allowedBlocks, blockProductions, newBlockA
11
12
  continue;
12
13
  }
13
14
  const updatedAddons = mergeAddonsIfUpdated(existingProduction.addons, newAddons.addons);
15
+ if (updatedAddons instanceof Error) {
16
+ throw new Error(`Could not merge addons from Block ${getName(producingBlock)} into Block ${getName(newAddons.block)}. ${updatedAddons.message}`);
17
+ }
14
18
  if (updatedAddons) {
15
19
  updated.push([newAddons.block, updatedAddons]);
16
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getUpdatedBlockAddons.js","sourceRoot":"","sources":["../../src/producers/getUpdatedBlockAddons.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAS1E,MAAM,UAAU,qBAAqB,CACpC,aAAsD,EACtD,gBAGC,EACD,iBAAwD,EAAE;IAE1D,MAAM,OAAO,GAAiD,EAAE,CAAC;IAEjE,KAAK,MAAM,SAAS,IAAI,cAAc,EAAE,CAAC;QACxC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACzC,SAAS;QACV,CAAC;QAED,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACjE,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YAClD,SAAS;QACV,CAAC;QAED,MAAM,aAAa,GAAG,oBAAoB,CACzC,kBAAkB,CAAC,MAAM,EACzB,SAAS,CAAC,MAAM,CAChB,CAAC;QACF,IAAI,aAAa,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC;QAChD,CAAC;IACF,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"getUpdatedBlockAddons.js","sourceRoot":"","sources":["../../src/producers/getUpdatedBlockAddons.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAG1E,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAO9C,MAAM,UAAU,qBAAqB,CACpC,aAAsD,EACtD,gBAGC,EACD,cAAkD,EAClD,iBAAwD,EAAE;IAE1D,MAAM,OAAO,GAAiD,EAAE,CAAC;IAEjE,KAAK,MAAM,SAAS,IAAI,cAAc,EAAE,CAAC;QACxC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACzC,SAAS;QACV,CAAC;QAED,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACjE,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YAClD,SAAS;QACV,CAAC;QAED,MAAM,aAAa,GAAG,oBAAoB,CACzC,kBAAkB,CAAC,MAAM,EACzB,SAAS,CAAC,MAAM,CAChB,CAAC;QACF,IAAI,aAAa,YAAY,KAAK,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CACd,qCAAqC,OAAO,CAAC,cAAc,CAAC,eAAe,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,aAAa,CAAC,OAAO,EAAE,CAC/H,CAAC;QACH,CAAC;QAED,IAAI,aAAa,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC;QAChD,CAAC;IACF,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC"}
@@ -29,7 +29,7 @@ describe("produceBlock", () => {
29
29
  it("passes Addons to the Block when addons is defined", () => {
30
30
  const block = base.createBlock({
31
31
  addons: {
32
- extra: z.record(z.string()).optional(),
32
+ extra: z.record(z.string(), z.string()).optional(),
33
33
  },
34
34
  produce({ addons, options }) {
35
35
  return {
@@ -55,6 +55,21 @@ describe("produceBlock", () => {
55
55
  },
56
56
  });
57
57
  });
58
+ it("returns only the mode-specific creation when the Block has no produce", () => {
59
+ const block = base.createBlock({
60
+ setup() {
61
+ return {
62
+ files: { "extra.txt": "setup" },
63
+ };
64
+ },
65
+ });
66
+ const actual = produceBlock(block, { mode: "setup", options });
67
+ expect(actual).toEqual({
68
+ files: {
69
+ "extra.txt": "setup",
70
+ },
71
+ });
72
+ });
58
73
  it("augments the creation when mode is provided and the Block has that mode-specific producer", () => {
59
74
  const block = base.createBlock({
60
75
  produce({ options }) {
@@ -1 +1 @@
1
- {"version":3,"file":"produceBlock.test.js","sourceRoot":"","sources":["../../src/producers/produceBlock.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,IAAI,GAAG,UAAU,CAAC;IACvB,OAAO,EAAE;QACR,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;KACjB;CACD,CAAC,CAAC;AAEH,MAAM,OAAO,GAAG;IACf,KAAK,EAAE,eAAe;CACtB,CAAC;AAEF,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QAClE,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC;YAC9B,OAAO,CAAC,EAAE,OAAO,EAAE;gBAClB,OAAO;oBACN,KAAK,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,KAAK,EAAE;iBACrC,CAAC;YACH,CAAC;SACD,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAEhD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACtB,KAAK,EAAE;gBACN,WAAW,EAAE,eAAe;aAC5B;SACD,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC5D,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC;YAC9B,MAAM,EAAE;gBACP,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;aACtC;YACD,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE;gBAC1B,OAAO;oBACN,KAAK,EAAE;wBACN,WAAW,EAAE,OAAO,CAAC,KAAK;wBAC1B,GAAG,MAAM,CAAC,KAAK;qBACf;iBACD,CAAC;YACH,CAAC;SACD,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE;YAClC,MAAM,EAAE;gBACP,KAAK,EAAE;oBACN,OAAO,EAAE,GAAG;iBACZ;aACD;YACD,OAAO;SACP,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACtB,KAAK,EAAE;gBACN,OAAO,EAAE,GAAG;gBACZ,WAAW,EAAE,eAAe;aAC5B;SACD,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2FAA2F,EAAE,GAAG,EAAE;QACpG,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC;YAC9B,OAAO,CAAC,EAAE,OAAO,EAAE;gBAClB,OAAO;oBACN,KAAK,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,KAAK,EAAE;iBACrC,CAAC;YACH,CAAC;YACD,KAAK;gBACJ,OAAO;oBACN,KAAK,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE;iBAC/B,CAAC;YACH,CAAC;SACD,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE;YAClC,IAAI,EAAE,OAAO;YACb,OAAO;SACP,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACtB,KAAK,EAAE;gBACN,WAAW,EAAE,OAAO;gBACpB,WAAW,EAAE,eAAe;aAC5B;SACD,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"produceBlock.test.js","sourceRoot":"","sources":["../../src/producers/produceBlock.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"produceBlocks.d.ts","sourceRoot":"","sources":["../../src/producers/produceBlocks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAG3C,OAAO,EAAE,KAAK,EAAmB,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAO3D,MAAM,WAAW,qBAAqB,CAAC,OAAO,SAAS,MAAM;IAC5D,WAAW,CAAC,EAAE,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACpD,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;CACjB;AAED,wBAAgB,aAAa,CAAC,OAAO,SAAS,MAAM,EACnD,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,EAC5C,EACC,WAAW,EACX,KAAU,EACV,IAAI,EACJ,OAAO,EACP,OAAO,GACP,EAAE,qBAAqB,CAAC,OAAO,CAAC,MAqFjC"}
1
+ {"version":3,"file":"produceBlocks.d.ts","sourceRoot":"","sources":["../../src/producers/produceBlocks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAG3C,OAAO,EAAE,KAAK,EAAmB,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAO3D,MAAM,WAAW,qBAAqB,CAAC,OAAO,SAAS,MAAM;IAC5D,WAAW,CAAC,EAAE,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACpD,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;CACjB;AAED,wBAAgB,aAAa,CAAC,OAAO,SAAS,MAAM,EACnD,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,EAC5C,EACC,WAAW,EACX,KAAU,EACV,IAAI,EACJ,OAAO,EACP,OAAO,GACP,EAAE,qBAAqB,CAAC,OAAO,CAAC,MAuFjC"}
@@ -47,8 +47,9 @@ export function produceBlocks(blocks, { blockAddons, files = {}, mode, offline,
47
47
  creation: blockCreation,
48
48
  });
49
49
  // 3.4. If the Block specified new addons for any defined Blocks:
50
- const updatedBlockAddons = getUpdatedBlockAddons(allowedBlocks, blockProductions, blockCreation.addons);
51
- // 3.4.1: Add those Blocks to the queue to re-run
50
+ // 3.4.1: Merge those Addons into the Blocks' existing Addons, throwing an error if any values conflict
51
+ const updatedBlockAddons = getUpdatedBlockAddons(allowedBlocks, blockProductions, currentBlock, blockCreation.addons);
52
+ // 3.4.2: Add those Blocks to the queue to re-run
52
53
  for (const [updatedBlock, updatedAddons] of updatedBlockAddons) {
53
54
  const addedBlockPreviousProduction = blockProductions.get(updatedBlock);
54
55
  blockProductions.set(updatedBlock, {
@@ -1 +1 @@
1
- {"version":3,"file":"produceBlocks.js","sourceRoot":"","sources":["../../src/producers/produceBlocks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"produceBlocks.js","sourceRoot":"","sources":["../../src/producers/produceBlocks.ts"],"names":[],"mappings":"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"}
@@ -153,6 +153,100 @@ describe("produceBlocks", () => {
153
153
  },
154
154
  });
155
155
  });
156
+ it("merges addons produced by a Block into another Block's existing addons", () => {
157
+ const blockReceiving = base.createBlock({
158
+ about: {
159
+ name: "Receiving Block",
160
+ },
161
+ addons: {
162
+ lines: z.array(z.string()).default([]),
163
+ },
164
+ produce({ addons }) {
165
+ return {
166
+ files: { "README.md": addons.lines.join("\n") },
167
+ };
168
+ },
169
+ });
170
+ const blockProducing = base.createBlock({
171
+ about: {
172
+ name: "Producing Block",
173
+ },
174
+ produce() {
175
+ return {
176
+ addons: [blockReceiving({ lines: ["b", "c"] })],
177
+ };
178
+ },
179
+ });
180
+ const result = produceBlocks([blockReceiving, blockProducing], {
181
+ blockAddons: [blockReceiving({ lines: ["a", "b"] })],
182
+ options: { value: "Hello, world!" },
183
+ });
184
+ expect(result).toEqual({
185
+ addons: [blockReceiving({ lines: ["b", "c"] })],
186
+ files: {
187
+ "README.md": "a\nb\nc",
188
+ },
189
+ });
190
+ });
191
+ it("throws an error when a Block produces addons that conflict with another Block's existing addons", () => {
192
+ const blockReceiving = base.createBlock({
193
+ about: {
194
+ name: "Receiving Block",
195
+ },
196
+ addons: {
197
+ nested: z.object({ value: z.string() }).optional(),
198
+ },
199
+ produce({ addons }) {
200
+ return {
201
+ files: { "README.md": addons.nested?.value },
202
+ };
203
+ },
204
+ });
205
+ const blockProducingFirst = base.createBlock({
206
+ about: {
207
+ name: "First Producing Block",
208
+ },
209
+ produce() {
210
+ return {
211
+ addons: [blockReceiving({ nested: { value: "a" } })],
212
+ };
213
+ },
214
+ });
215
+ const blockProducingSecond = base.createBlock({
216
+ about: {
217
+ name: "Second Producing Block",
218
+ },
219
+ produce() {
220
+ return {
221
+ addons: [blockReceiving({ nested: { value: "b" } })],
222
+ };
223
+ },
224
+ });
225
+ expect(() => produceBlocks([blockReceiving, blockProducingFirst, blockProducingSecond], { options: { value: "Hello, world!" } })).toThrowError(`Could not merge addons from Block Second Producing Block into Block Receiving Block. Mismatched addons at 'nested.value': existing 'a' vs. new 'b'.`);
226
+ });
227
+ it("describes Blocks as anonymous in merge errors when they don't have names", () => {
228
+ const blockReceiving = base.createBlock({
229
+ addons: {
230
+ value: z.string().optional(),
231
+ },
232
+ produce({ addons }) {
233
+ return {
234
+ files: { "README.md": addons.value },
235
+ };
236
+ },
237
+ });
238
+ const blockProducing = base.createBlock({
239
+ produce() {
240
+ return {
241
+ addons: [blockReceiving({ value: "b" })],
242
+ };
243
+ },
244
+ });
245
+ expect(() => produceBlocks([blockReceiving, blockProducing], {
246
+ blockAddons: [blockReceiving({ value: "a" })],
247
+ options: { value: "Hello, world!" },
248
+ })).toThrowError(`Could not merge addons from Block (anonymous) into Block (anonymous). Mismatched addons at 'value': existing 'a' vs. new 'b'.`);
249
+ });
156
250
  describe("modes", () => {
157
251
  const block = base.createBlock({
158
252
  about: {
@@ -1 +1 @@
1
- {"version":3,"file":"produceBlocks.test.js","sourceRoot":"","sources":["../../src/producers/produceBlocks.test.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,MAAM,IAAI,GAAG,UAAU,CAAC;IACvB,OAAO,EAAE;QACR,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;KACjB;CACD,CAAC,CAAC;AAEH,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC9B,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC;YAC9B,KAAK,EAAE;gBACN,IAAI,EAAE,eAAe;aACrB;YACD,OAAO,CAAC,EAAE,OAAO,EAAE;gBAClB,OAAO;oBACN,KAAK,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,KAAK,EAAE;iBACrC,CAAC;YACH,CAAC;SACD,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,KAAK,CAAC,EAAE;YACrC,OAAO,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE;SACnC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACtB,KAAK,EAAE;gBACN,WAAW,EAAE,eAAe;aAC5B;SACD,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC3D,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC;YAC9B,KAAK,EAAE;gBACN,IAAI,EAAE,eAAe;aACrB;YACD,MAAM,EAAE;gBACP,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;aAC5B;YACD,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE;gBAC1B,OAAO;oBACN,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;iBAChE,CAAC;YACH,CAAC;SACD,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,KAAK,CAAC,EAAE;YACrC,WAAW,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YACvC,OAAO,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE;SACnC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACtB,KAAK,EAAE;gBACN,WAAW,EAAE,qBAAqB;aAClC;SACD,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC;YAC9B,KAAK,EAAE;gBACN,IAAI,EAAE,eAAe;aACrB;YACD,MAAM,EAAE;gBACP,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;aAC5B;YACD,MAAM,CAAC,EAAE,KAAK,EAAE;gBACf,OAAO;oBACN,KAAK,EAAG,KAAK,CAAC,WAAW,CAAqB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;iBACpE,CAAC;YACH,CAAC;YACD,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE;gBAC1B,OAAO;oBACN,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;iBAChE,CAAC;YACH,CAAC;SACD,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,KAAK,CAAC,EAAE;YACrC,KAAK,EAAE;gBACN,WAAW,EAAE,CAAC,cAAc,CAAC;aAC7B;YACD,OAAO,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE;SACnC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACtB,KAAK,EAAE;gBACN,WAAW,EAAE,qBAAqB;aAClC;SACD,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC3E,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC;YAC9B,KAAK,EAAE;gBACN,IAAI,EAAE,eAAe;aACrB;YACD,MAAM,EAAE;gBACP,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBACxB,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBACxB,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;aACxB;YACD,MAAM;gBACL,OAAO;oBACN,CAAC,EAAE,QAAQ;oBACX,CAAC,EAAE,QAAQ;iBACX,CAAC;YACH,CAAC;YACD,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE;gBAC1B,OAAO;oBACN,KAAK,EAAE;wBACN,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAC9D,IAAI,CACJ;qBACD;iBACD,CAAC;YACH,CAAC;SACD,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,KAAK,CAAC,EAAE;YACrC,WAAW,EAAE;gBACZ,KAAK,CAAC;oBACL,CAAC,EAAE,UAAU;oBACb,CAAC,EAAE,UAAU;iBACb,CAAC;aACF;YACD,OAAO,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE;SACnC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACtB,KAAK,EAAE;gBACN,WAAW,EAAE,2CAA2C;aACxD;SACD,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAC/D,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;YACnC,KAAK,EAAE;gBACN,IAAI,EAAE,aAAa;aACnB;YACD,OAAO,CAAC,EAAE,OAAO,EAAE;gBAClB,OAAO;oBACN,MAAM,EAAE,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;oBACzC,KAAK,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,KAAK,EAAE;iBACrC,CAAC;YACH,CAAC;SACD,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC;YACrC,KAAK,EAAE;gBACN,IAAI,EAAE,eAAe;aACrB;YACD,MAAM,EAAE;gBACP,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;aAC5B;YACD,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;SAChB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,UAAU,CAAC,EAAE;YAC1C,OAAO,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE;SACnC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACtB,MAAM,EAAE,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YACzC,KAAK,EAAE;gBACN,WAAW,EAAE,eAAe;aAC5B;SACD,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;QACtB,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC;YAC9B,KAAK,EAAE;gBACN,IAAI,EAAE,eAAe;aACrB;YACD,OAAO,CAAC,EAAE,OAAO,EAAE;gBAClB,OAAO;oBACN,KAAK,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,KAAK,EAAE;iBACrC,CAAC;YACH,CAAC;YACD,KAAK,CAAC,EAAE,OAAO,EAAE;gBAChB,OAAO;oBACN,KAAK,EAAE;wBACN,UAAU,EAAE,OAAO,CAAC,KAAK;qBACzB;iBACD,CAAC;YACH,CAAC;YACD,UAAU;gBACT,OAAO;oBACN,OAAO,EAAE,CAAC,YAAY,CAAC;iBACvB,CAAC;YACH,CAAC;SACD,CAAC,CAAC;QAEH,EAAE,CAAC,0FAA0F,EAAE,GAAG,EAAE;YACnG,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,KAAK,CAAC,EAAE;gBACrC,OAAO,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE;aACnC,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE;oBACN,WAAW,EAAE,eAAe;iBAC5B;aACD,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;YACzE,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,KAAK,CAAC,EAAE;gBACrC,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE;aACnC,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE;oBACN,UAAU,EAAE,eAAe;oBAC3B,WAAW,EAAE,eAAe;iBAC5B;aACD,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0EAA0E,EAAE,GAAG,EAAE;YACnF,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,KAAK,CAAC,EAAE;gBACrC,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE;aACnC,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE;oBACN,WAAW,EAAE,eAAe;iBAC5B;gBACD,OAAO,EAAE,CAAC,YAAY,CAAC;aACvB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"produceBlocks.test.js","sourceRoot":"","sources":["../../src/producers/produceBlocks.test.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ const system = {
15
15
  octokit: {},
16
16
  },
17
17
  fs: {
18
+ glob: vi.fn(),
18
19
  readDirectory: vi.fn(),
19
20
  readFile: vi.fn(),
20
21
  writeDirectory: vi.fn(),
@@ -1 +1 @@
1
- {"version":3,"file":"producePreset.test.js","sourceRoot":"","sources":["../../src/producers/producePreset.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"producePreset.test.js","sourceRoot":"","sources":["../../src/producers/producePreset.test.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ function createSystem() {
14
14
  octokit: {},
15
15
  },
16
16
  fs: {
17
+ glob: noop("glob"),
17
18
  readDirectory: noop("readDirectory"),
18
19
  readFile: noop("readFile"),
19
20
  writeDirectory: vi.fn(),
@@ -1 +1 @@
1
- {"version":3,"file":"runBlock.test.js","sourceRoot":"","sources":["../../src/runners/runBlock.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runBlock.test.js","sourceRoot":"","sources":["../../src/runners/runBlock.test.ts"],"names":[],"mappings":"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"}
@@ -101,7 +101,7 @@ export interface BlockDefinitionWithAddons<AddonsShape extends AnyOptionalShape,
101
101
  * Generates the creations describing a portion of a repository.
102
102
  * @see {@link https://www.create.bingo/engines/stratum/apis/create-base#createblock-produce}
103
103
  */
104
- produce: BlockDefinitionProducerWithAddons<InferredObject<AddonsShape>, Options>;
104
+ produce?: BlockDefinitionProducerWithAddons<InferredObject<AddonsShape>, Options>;
105
105
  /**
106
106
  * Augments a Block creation with additional creations for setup mode.
107
107
  * @template Options Options values as described by the Base's options schema.
@@ -124,7 +124,7 @@ export interface BlockDefinitionWithoutAddons<Options extends object> extends Bl
124
124
  * Generates the creations describing a portion of a repository.
125
125
  * @see {@link https://www.create.bingo/engines/stratum/apis/create-base#createblock-produce}
126
126
  */
127
- produce: BlockDefinitionProducerWithoutAddons<Options>;
127
+ produce?: BlockDefinitionProducerWithoutAddons<Options>;
128
128
  /**
129
129
  * Augments a Block creation with additional creations for setup mode.
130
130
  * @template Options Options values as described by the Base's options schema.
@@ -175,19 +175,19 @@ export interface BlockWithAddons<Addons extends object, Options extends object>
175
175
  * Generates the creations describing a portion of a repository.
176
176
  * @see {@link https://www.create.bingo/engines/stratum/apis/create-base#createblock-produce}
177
177
  */
178
- produce: BlockProducerWithAddons<Addons, Options>;
178
+ produce(context: BlockContextWithOptionalAddons<Addons, Options>): Partial<BlockCreation<Options>>;
179
179
  /**
180
180
  * Augments a Block creation with additional creations for setup mode.
181
181
  * @template Options Options values as described by the Base's options schema.
182
182
  * @see {@link https://www.create.bingo/engines/stratum/apis/create-base#createblock-setup}
183
183
  */
184
- setup?: BlockAugmentWithAddons<Addons, Options>;
184
+ setup?(context: BlockContextWithAddons<Addons, Options>): Partial<BlockCreation<Options>>;
185
185
  /**
186
186
  * Augments a Block creation with additional creations for transition mode.
187
187
  * @template Options Options values as described by the Base's options schema.
188
188
  * @see {@link https://www.create.bingo/engines/stratum/apis/create-base#createblock-transition}
189
189
  */
190
- transition?: BlockAugmentWithAddons<Addons, Options>;
190
+ transition?(context: BlockContextWithAddons<Addons, Options>): Partial<BlockCreation<Options>>;
191
191
  /**
192
192
  * Creates a description of Addons to provide for the Block.
193
193
  */
@@ -1 +1 @@
1
- {"version":3,"file":"blocks.d.ts","sourceRoot":"","sources":["../../src/types/blocks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"blocks.d.ts","sourceRoot":"","sources":["../../src/types/blocks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD;;;;GAIG;AACH,MAAM,MAAM,KAAK,CAChB,MAAM,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,EACtD,OAAO,SAAS,MAAM,GAAG,MAAM,IAC5B,MAAM,SAAS,MAAM,GACtB,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,kBAAkB,CAAC,OAAO,CAAC,CAAC;AAE/B;;;;;GAKG;AACH,MAAM,MAAM,sBAAsB,CACjC,MAAM,SAAS,MAAM,EACrB,OAAO,SAAS,MAAM,IACnB,CACH,OAAO,EAAE,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,KAC5C,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;AAErC;;;;GAIG;AACH,MAAM,MAAM,yBAAyB,CAAC,OAAO,SAAS,MAAM,IAAI,CAC/D,OAAO,EAAE,yBAAyB,CAAC,OAAO,CAAC,KACvC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;AAErC,MAAM,WAAW,SAAS;IACzB;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB,CACtC,MAAM,SAAS,MAAM,EACrB,OAAO,SAAS,MAAM,CACrB,SAAQ,yBAAyB,CAAC,OAAO,CAAC;IAC3C,MAAM,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB,CAAC,OAAO,SAAS,MAAM;IACzD;;OAEG;IACH,KAAK,EAAE,eAAe,CAAC;IAEvB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,8BAA8B,CAC9C,MAAM,SAAS,MAAM,EACrB,OAAO,SAAS,MAAM,CACrB,SAAQ,yBAAyB,CAAC,OAAO,CAAC;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,yBAAyB,CAAC,OAAO,SAAS,MAAM;IAChE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,GAAG,sBAAsB,CAAC;CAC1C;AAED;;;;GAIG;AACH,MAAM,MAAM,eAAe,CAC1B,WAAW,SAAS,gBAAgB,GAAG,SAAS,EAChD,OAAO,SAAS,MAAM,IACnB,WAAW,SAAS,MAAM,GAC3B,yBAAyB,CAAC,WAAW,EAAE,OAAO,CAAC,GAC/C,4BAA4B,CAAC,OAAO,CAAC,CAAC;AAEzC;;;;GAIG;AACH,MAAM,MAAM,iCAAiC,CAC5C,MAAM,SAAS,MAAM,EACrB,OAAO,SAAS,MAAM,IACnB,CACH,OAAO,EAAE,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,KAC5C,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;AAErC;;;GAGG;AACH,MAAM,MAAM,oCAAoC,CAAC,OAAO,SAAS,MAAM,IAAI,CAC1E,OAAO,EAAE,yBAAyB,CAAC,OAAO,CAAC,KACvC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;AAErC;;;;GAIG;AACH,MAAM,WAAW,yBAAyB,CACzC,WAAW,SAAS,gBAAgB,EACpC,OAAO,SAAS,MAAM,CACrB,SAAQ,SAAS;IAClB;;OAEG;IACH,MAAM,EAAE,WAAW,CAAC;IAEpB;;;OAGG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,CAAC;IAE3D;;;OAGG;IACH,OAAO,CAAC,EAAE,iCAAiC,CAC1C,cAAc,CAAC,WAAW,CAAC,EAC3B,OAAO,CACP,CAAC;IAEF;;;;OAIG;IACH,KAAK,CAAC,EAAE,sBAAsB,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,CAAC;IAErE;;;;OAIG;IACH,UAAU,CAAC,EAAE,sBAAsB,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,CAAC;CAC1E;AAED;;;GAGG;AACH,MAAM,WAAW,4BAA4B,CAC5C,OAAO,SAAS,MAAM,CACrB,SAAQ,SAAS;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,oCAAoC,CAAC,OAAO,CAAC,CAAC;IAExD;;;;OAIG;IACH,KAAK,CAAC,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAE3C;;;;OAIG;IACH,UAAU,CAAC,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC;CAChD;AAED;;;;;GAKG;AACH,MAAM,MAAM,WAAW,CAAC,MAAM,SAAS,MAAM,EAAE,OAAO,SAAS,MAAM,IAAI,CACxE,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,KAChC,OAAO,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;AAEjC;;;;;;GAMG;AACH,MAAM,MAAM,uBAAuB,CAClC,MAAM,SAAS,MAAM,EACrB,OAAO,SAAS,MAAM,IACnB,CACH,OAAO,EAAE,8BAA8B,CAAC,MAAM,EAAE,OAAO,CAAC,KACpD,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;AAErC;;;;;GAKG;AACH,MAAM,MAAM,0BAA0B,CAAC,OAAO,SAAS,MAAM,IAAI,CAChE,OAAO,EAAE,yBAAyB,CAAC,OAAO,CAAC,KACvC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;AAErC;;;;GAIG;AACH,MAAM,WAAW,eAAe,CAC/B,MAAM,SAAS,MAAM,EACrB,OAAO,SAAS,MAAM,CACrB,SAAQ,SAAS;IAClB;;;OAGG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEtC;;;OAGG;IACH,OAAO,CACN,OAAO,EAAE,8BAA8B,CAAC,MAAM,EAAE,OAAO,CAAC,GACtD,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IAEnC;;;;OAIG;IACH,KAAK,CAAC,CACL,OAAO,EAAE,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9C,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IAEnC;;;;OAIG;IACH,UAAU,CAAC,CACV,OAAO,EAAE,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9C,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IAEnC;;OAEG;IACH,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/D;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB,CAAC,OAAO,SAAS,MAAM,CAAE,SAAQ,SAAS;IAC5E;;;OAGG;IACH,OAAO,EAAE,0BAA0B,CAAC,OAAO,CAAC,CAAC;IAE7C;;;;OAIG;IACH,KAAK,CAAC,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAE3C;;;;OAIG;IACH,UAAU,CAAC,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC;CAChD"}
@@ -1,7 +1,7 @@
1
1
  import { Creation } from "bingo";
2
2
  import { BlockWithAddons } from "./blocks.js";
3
3
  export interface BlockCreation<Options extends object> extends Creation {
4
- addons: CreatedBlockAddons<any, Options>[];
4
+ addons: CreatedBlockAddons<object, Options>[];
5
5
  }
6
6
  /**
7
7
  * Describes Addons to provide to a Block before production.
@@ -1 +1 @@
1
- {"version":3,"file":"creations.d.ts","sourceRoot":"","sources":["../../src/types/creations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,WAAW,aAAa,CAAC,OAAO,SAAS,MAAM,CAAE,SAAQ,QAAQ;IAKtE,MAAM,EAAE,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC;CAC3C;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB,CAClC,MAAM,SAAS,MAAM,GAAG,MAAM,EAC9B,OAAO,SAAS,MAAM,GAAG,MAAM;IAE/B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxC"}
1
+ {"version":3,"file":"creations.d.ts","sourceRoot":"","sources":["../../src/types/creations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,WAAW,aAAa,CAAC,OAAO,SAAS,MAAM,CAAE,SAAQ,QAAQ;IACtE,MAAM,EAAE,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;CAC9C;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB,CAClC,MAAM,SAAS,MAAM,GAAG,MAAM,EAC9B,OAAO,SAAS,MAAM,GAAG,MAAM;IAE/B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxC"}
@@ -18,7 +18,7 @@ export interface StratumRefinements<Options extends object = object> {
18
18
  /**
19
19
  * Any extra addon values to merge in and pass to blocks.
20
20
  */
21
- addons?: CreatedBlockAddons<any, Options>[];
21
+ addons?: CreatedBlockAddons<object, Options>[];
22
22
  /**
23
23
  * Blocks to add and/or exclude from production.
24
24
  */
@@ -1 +1 @@
1
- {"version":3,"file":"refinements.d.ts","sourceRoot":"","sources":["../../src/types/refinements.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD;;;;GAIG;AACH,MAAM,WAAW,gBAAgB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM;IAChE,GAAG,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;IAC3C,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;CAC/C;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM;IAClE;;OAEG;IAIH,MAAM,CAAC,EAAE,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC;IAE5C;;OAEG;IACH,MAAM,CAAC,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;CACnC"}
1
+ {"version":3,"file":"refinements.d.ts","sourceRoot":"","sources":["../../src/types/refinements.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD;;;;GAIG;AACH,MAAM,WAAW,gBAAgB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM;IAChE,GAAG,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;IAC3C,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;CAC/C;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM;IAClE;;OAEG;IACH,MAAM,CAAC,EAAE,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAE/C;;OAEG;IACH,MAAM,CAAC,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC;CACnC"}
@@ -9,7 +9,7 @@ import { StratumRefinements } from "./refinements.js";
9
9
  * @template OptionsShape Schemas of options the Base's Blocks takes in.
10
10
  * @see {@link https://www.create.bingo/engines/stratum/concepts/templates}
11
11
  */
12
- export interface StratumTemplate<OptionsShape extends AnyShape> extends Template<OptionsShape & StratumTemplateOptionsShape, StratumRefinements<InferredObject<OptionsShape>>> {
12
+ export interface StratumTemplate<OptionsShape extends AnyShape> extends Template<StratumTemplateOptionsShapeFor<OptionsShape>, StratumRefinements<InferredObject<OptionsShape>>> {
13
13
  /**
14
14
  * Base creating this Template, as well as its Blocks and Presets.
15
15
  * @see {@link https://www.create.bingo/engines/stratum/concepts/bases}
@@ -25,7 +25,7 @@ export interface StratumTemplate<OptionsShape extends AnyShape> extends Template
25
25
  * at least their --preset during transition mode.
26
26
  * @see {@link https://www.create.bingo/build/apis/create-template#prepare}
27
27
  */
28
- prepare: TemplatePrepare<InferredObject<OptionsShape>, StratumRefinements<InferredObject<OptionsShape>>>;
28
+ prepare: TemplatePrepare<InferredObject<StratumTemplateOptionsShapeFor<OptionsShape>>, StratumRefinements<InferredObject<OptionsShape>>>;
29
29
  /**
30
30
  * The Presets users can choose from with the Template, in order of how they should be listed.
31
31
  * @see {@link https://www.create.bingo/engines/stratum/apis/create-base#createtemplate-presets}
@@ -74,12 +74,19 @@ export interface StratumTemplateOptions {
74
74
  /**
75
75
  * The minimum options schemas all Stratum Templates share.
76
76
  */
77
- export interface StratumTemplateOptionsShape {
77
+ export type StratumTemplateOptionsShape = {
78
78
  /**
79
79
  * Union of Preset names available to choose from.
80
80
  */
81
81
  preset: z.ZodDefault<z.ZodUnion<ZodPresetNameLiterals>>;
82
- }
82
+ };
83
+ /**
84
+ * Schemas of all options a Stratum Template takes in: its Base's, plus Stratum's own.
85
+ * @template OptionsShape Schemas of options the Base's Blocks take in.
86
+ */
87
+ export type StratumTemplateOptionsShapeFor<OptionsShape extends AnyShape> = OptionsShape & {
88
+ [Key in keyof StratumTemplateOptionsShape]: StratumTemplateOptionsShape[Key];
89
+ };
83
90
  /**
84
91
  * Union of at least two literal Preset names available to choose from.
85
92
  */
@@ -1 +1 @@
1
- {"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/types/templates.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,QAAQ,EACR,cAAc,EACd,QAAQ,EACR,aAAa,EACb,eAAe,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD;;;;GAIG;AACH,MAAM,WAAW,eAAe,CAC/B,YAAY,SAAS,QAAQ,CAC5B,SAAQ,QAAQ,CACjB,YAAY,GAAG,2BAA2B,EAC1C,kBAAkB,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAChD;IACA;;;OAGG;IACH,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IAEzB;;OAEG;IACH,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;IAElE;;;;;OAKG;IACH,OAAO,EAAE,eAAe,CACvB,cAAc,CAAC,YAAY,CAAC,EAC5B,kBAAkB,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAChD,CAAC;IAEF;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;CAChC;AAED;;;GAGG;AACH,MAAM,WAAW,yBAAyB,CAAC,YAAY,SAAS,QAAQ;IACvE;;;OAGG;IACH,KAAK,CAAC,EAAE,aAAa,CAAC;IAEtB;;OAEG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;IAEnE;;;OAGG;IACH,OAAO,CAAC,EAAE,eAAe,CACxB,cAAc,CAAC,YAAY,CAAC,EAC5B,kBAAkB,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAChD,CAAC;IAEF;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;IAEhC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACtC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC3C;;OAEG;IACH,MAAM,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC,CAAC;CACxD;AAED;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IACnC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC;IACpB,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC;IACpB,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;CACzB,CAAC"}
1
+ {"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/types/templates.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,QAAQ,EACR,cAAc,EACd,QAAQ,EACR,aAAa,EACb,eAAe,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD;;;;GAIG;AACH,MAAM,WAAW,eAAe,CAC/B,YAAY,SAAS,QAAQ,CAC5B,SAAQ,QAAQ,CACjB,8BAA8B,CAAC,YAAY,CAAC,EAC5C,kBAAkB,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAChD;IACA;;;OAGG;IACH,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IAEzB;;OAEG;IACH,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;IAElE;;;;;OAKG;IACH,OAAO,EAAE,eAAe,CACvB,cAAc,CAAC,8BAA8B,CAAC,YAAY,CAAC,CAAC,EAC5D,kBAAkB,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAChD,CAAC;IAEF;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;CAChC;AAED;;;GAGG;AACH,MAAM,WAAW,yBAAyB,CAAC,YAAY,SAAS,QAAQ;IACvE;;;OAGG;IACH,KAAK,CAAC,EAAE,aAAa,CAAC;IAEtB;;OAEG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;IAEnE;;;OAGG;IACH,OAAO,CAAC,EAAE,eAAe,CACxB,cAAc,CAAC,YAAY,CAAC,EAC5B,kBAAkB,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAChD,CAAC;IAEF;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;IAEhC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACtC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AAIH,MAAM,MAAM,2BAA2B,GAAG;IACzC;;OAEG;IACH,MAAM,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC,CAAC;CACxD,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,8BAA8B,CAAC,YAAY,SAAS,QAAQ,IACvE,YAAY,GAAG;KACb,GAAG,IAAI,MAAM,2BAA2B,GAAG,2BAA2B,CAAC,GAAG,CAAC;CAC5E,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG;IACnC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC;IACpB,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC;IACpB,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;CACzB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare function createBlockAddons<Addons extends object, Block>(addons: Addons, block: Block, name: string | undefined): {
2
+ addons: Addons;
3
+ block: Block;
4
+ };
5
+ //# sourceMappingURL=createBlockAddons.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createBlockAddons.d.ts","sourceRoot":"","sources":["../../src/utils/createBlockAddons.ts"],"names":[],"mappings":"AAAA,wBAAgB,iBAAiB,CAAC,MAAM,SAAS,MAAM,EAAE,KAAK,EAC7D,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,MAAM,GAAG,SAAS;;;EAWxB"}