bingo 0.4.2 → 0.5.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 (246) hide show
  1. package/bin/index.js +2 -2
  2. package/lib/cli/display/runInsideClackDisplay.d.ts +9 -0
  3. package/lib/cli/display/runInsideClackDisplay.d.ts.map +1 -0
  4. package/lib/cli/display/runInsideClackDisplay.js +25 -0
  5. package/lib/cli/display/runInsideClackDisplay.js.map +1 -0
  6. package/lib/cli/getTemplatePackageData.d.ts +2 -0
  7. package/lib/cli/getTemplatePackageData.d.ts.map +1 -0
  8. package/lib/cli/getTemplatePackageData.js +14 -0
  9. package/lib/cli/getTemplatePackageData.js.map +1 -0
  10. package/lib/cli/getTemplatePackageData.test.d.ts +2 -0
  11. package/lib/cli/getTemplatePackageData.test.d.ts.map +1 -0
  12. package/lib/cli/getTemplatePackageData.test.js +43 -0
  13. package/lib/cli/getTemplatePackageData.test.js.map +1 -0
  14. package/lib/cli/importers/tryImport.d.ts +2 -0
  15. package/lib/cli/importers/tryImport.d.ts.map +1 -0
  16. package/lib/cli/importers/tryImport.js +17 -0
  17. package/lib/cli/importers/tryImport.js.map +1 -0
  18. package/lib/cli/importers/tryImportTemplate.d.ts +1 -1
  19. package/lib/cli/importers/tryImportTemplate.d.ts.map +1 -1
  20. package/lib/cli/importers/tryImportTemplate.js +3 -3
  21. package/lib/cli/importers/tryImportTemplate.js.map +1 -1
  22. package/lib/cli/importers/tryImportTemplate.test.js +2 -2
  23. package/lib/cli/importers/tryImportTemplate.test.js.map +1 -1
  24. package/lib/cli/loggers/formatFlag.d.ts.map +1 -1
  25. package/lib/cli/loggers/formatFlag.js +3 -2
  26. package/lib/cli/loggers/formatFlag.js.map +1 -1
  27. package/lib/cli/loggers/logHelpOptions.d.ts +1 -1
  28. package/lib/cli/loggers/logHelpOptions.d.ts.map +1 -1
  29. package/lib/cli/loggers/logHelpOptions.js +5 -4
  30. package/lib/cli/loggers/logHelpOptions.js.map +1 -1
  31. package/lib/cli/loggers/logHelpText.d.ts +4 -5
  32. package/lib/cli/loggers/logHelpText.d.ts.map +1 -1
  33. package/lib/cli/loggers/logHelpText.js +27 -35
  34. package/lib/cli/loggers/logHelpText.js.map +1 -1
  35. package/lib/cli/loggers/logSchemasHelpOptions.d.ts +2 -2
  36. package/lib/cli/loggers/logSchemasHelpOptions.d.ts.map +1 -1
  37. package/lib/cli/loggers/logSchemasHelpOptions.js +2 -2
  38. package/lib/cli/loggers/logSchemasHelpOptions.js.map +1 -1
  39. package/lib/cli/parseProcessArgv.d.ts +25 -0
  40. package/lib/cli/parseProcessArgv.d.ts.map +1 -0
  41. package/lib/cli/parseProcessArgv.js +36 -0
  42. package/lib/cli/parseProcessArgv.js.map +1 -0
  43. package/lib/cli/parsers/parseZodArgs.d.ts +1 -1
  44. package/lib/cli/parsers/parseZodArgs.d.ts.map +1 -1
  45. package/lib/cli/prompts/promptForDirectory.d.ts +4 -3
  46. package/lib/cli/prompts/promptForDirectory.d.ts.map +1 -1
  47. package/lib/cli/prompts/promptForDirectory.js +1 -1
  48. package/lib/cli/prompts/promptForDirectory.js.map +1 -1
  49. package/lib/cli/prompts/promptForDirectory.test.js +1 -1
  50. package/lib/cli/prompts/promptForDirectory.test.js.map +1 -1
  51. package/lib/cli/prompts/promptForOptionSchema.d.ts +3 -0
  52. package/lib/cli/prompts/promptForOptionSchema.d.ts.map +1 -0
  53. package/lib/cli/prompts/promptForOptionSchema.js +60 -0
  54. package/lib/cli/prompts/promptForOptionSchema.js.map +1 -0
  55. package/lib/cli/prompts/promptForOptionSchemas.d.ts +20 -0
  56. package/lib/cli/prompts/promptForOptionSchemas.d.ts.map +1 -0
  57. package/lib/cli/prompts/promptForOptionSchemas.js +38 -0
  58. package/lib/cli/prompts/promptForOptionSchemas.js.map +1 -0
  59. package/lib/cli/readProductionSettings.d.ts +2 -1
  60. package/lib/cli/readProductionSettings.d.ts.map +1 -1
  61. package/lib/cli/readProductionSettings.js +5 -2
  62. package/lib/cli/readProductionSettings.js.map +1 -1
  63. package/lib/cli/readProductionSettings.test.js +16 -4
  64. package/lib/cli/readProductionSettings.test.js.map +1 -1
  65. package/lib/cli/runBingoCLI.d.ts +7 -0
  66. package/lib/cli/runBingoCLI.d.ts.map +1 -0
  67. package/lib/cli/runBingoCLI.js +51 -0
  68. package/lib/cli/runBingoCLI.js.map +1 -0
  69. package/lib/cli/runCLI.d.ts +14 -0
  70. package/lib/cli/runCLI.d.ts.map +1 -0
  71. package/lib/cli/runCLI.js +40 -0
  72. package/lib/cli/runCLI.js.map +1 -0
  73. package/lib/cli/runCli.test.js +47 -154
  74. package/lib/cli/runCli.test.js.map +1 -1
  75. package/lib/cli/runTemplateCLI.d.ts +10 -0
  76. package/lib/cli/runTemplateCLI.d.ts.map +1 -0
  77. package/lib/cli/runTemplateCLI.js +37 -0
  78. package/lib/cli/runTemplateCLI.js.map +1 -0
  79. package/lib/cli/runTemplateCLI.test.d.ts +2 -0
  80. package/lib/cli/runTemplateCLI.test.d.ts.map +1 -0
  81. package/lib/cli/runTemplateCLI.test.js +100 -0
  82. package/lib/cli/runTemplateCLI.test.js.map +1 -0
  83. package/lib/cli/setup/runModeSetup.d.ts +6 -4
  84. package/lib/cli/setup/runModeSetup.d.ts.map +1 -1
  85. package/lib/cli/setup/runModeSetup.js +7 -20
  86. package/lib/cli/setup/runModeSetup.js.map +1 -1
  87. package/lib/cli/transition/parseTransitionSource.d.ts +1 -2
  88. package/lib/cli/transition/parseTransitionSource.d.ts.map +1 -1
  89. package/lib/cli/transition/parseTransitionSource.js +3 -3
  90. package/lib/cli/transition/parseTransitionSource.js.map +1 -1
  91. package/lib/cli/transition/parseTransitionSource.test.js +5 -5
  92. package/lib/cli/transition/parseTransitionSource.test.js.map +1 -1
  93. package/lib/cli/transition/runModeTransition.d.ts +6 -4
  94. package/lib/cli/transition/runModeTransition.d.ts.map +1 -1
  95. package/lib/cli/transition/runModeTransition.js +8 -34
  96. package/lib/cli/transition/runModeTransition.js.map +1 -1
  97. package/lib/cli/transition/runModeTransition.test.js +29 -81
  98. package/lib/cli/transition/runModeTransition.test.js.map +1 -1
  99. package/lib/cli/tryImportWithPredicate.test.js +6 -6
  100. package/lib/cli/tryImportWithPredicate.test.js.map +1 -1
  101. package/lib/cli/utils.d.ts +0 -1
  102. package/lib/cli/utils.d.ts.map +1 -1
  103. package/lib/cli/utils.js +0 -3
  104. package/lib/cli/utils.js.map +1 -1
  105. package/lib/config/createConfig.d.ts +0 -3
  106. package/lib/config/createConfig.d.ts.map +1 -1
  107. package/lib/config/createConfig.js +1 -3
  108. package/lib/config/createConfig.js.map +1 -1
  109. package/lib/config/tryImportConfig.d.ts +1 -1
  110. package/lib/config/tryImportConfig.d.ts.map +1 -1
  111. package/lib/config/types.d.ts +1 -7
  112. package/lib/config/types.d.ts.map +1 -1
  113. package/lib/contexts/createSystemContext.d.ts.map +1 -1
  114. package/lib/contexts/createSystemContext.js +1 -1
  115. package/lib/contexts/createSystemContext.js.map +1 -1
  116. package/lib/contexts/createSystemContext.test.js +18 -0
  117. package/lib/contexts/createSystemContext.test.js.map +1 -1
  118. package/lib/contexts/createTake.d.ts +3 -0
  119. package/lib/contexts/createTake.d.ts.map +1 -0
  120. package/lib/contexts/createTake.js +26 -0
  121. package/lib/contexts/createTake.js.map +1 -0
  122. package/lib/contexts/createTake.test.d.ts +2 -0
  123. package/lib/contexts/createTake.test.d.ts.map +1 -0
  124. package/lib/contexts/createTake.test.js +71 -0
  125. package/lib/contexts/createTake.test.js.map +1 -0
  126. package/lib/creators/createInput.d.ts +20 -1
  127. package/lib/creators/createInput.d.ts.map +1 -1
  128. package/lib/creators/createInput.js +4 -0
  129. package/lib/creators/createInput.js.map +1 -1
  130. package/lib/creators/createTemplate.d.ts +7 -1
  131. package/lib/creators/createTemplate.d.ts.map +1 -1
  132. package/lib/creators/createTemplate.js.map +1 -1
  133. package/lib/index.d.ts +4 -7
  134. package/lib/index.d.ts.map +1 -1
  135. package/lib/index.js +3 -6
  136. package/lib/index.js.map +1 -1
  137. package/lib/mergers/mergeCreatedDirectories.d.ts.map +1 -1
  138. package/lib/mergers/mergeCreatedDirectories.js.map +1 -1
  139. package/lib/mergers/mergeFileEntries.d.ts +1 -1
  140. package/lib/mergers/mergeFileEntries.d.ts.map +1 -1
  141. package/lib/mergers/mergeFileEntries.js.map +1 -1
  142. package/lib/options.d.ts +18 -9
  143. package/lib/options.d.ts.map +1 -1
  144. package/lib/options.js +2 -0
  145. package/lib/options.js.map +1 -1
  146. package/lib/predicates/isCreatedConfig.d.ts +7 -1
  147. package/lib/predicates/isCreatedConfig.d.ts.map +1 -1
  148. package/lib/predicates/isCreatedConfig.js.map +1 -1
  149. package/lib/predicates/isCreatedConfig.test.js +5 -6
  150. package/lib/predicates/isCreatedConfig.test.js.map +1 -1
  151. package/lib/preparation/prepareOptions.d.ts +14 -3
  152. package/lib/preparation/prepareOptions.d.ts.map +1 -1
  153. package/lib/preparation/prepareOptions.js +5 -0
  154. package/lib/preparation/prepareOptions.js.map +1 -1
  155. package/lib/preparation/prepareOptions.test.js.map +1 -1
  156. package/lib/producers/produceTemplate.d.ts +5 -1
  157. package/lib/producers/produceTemplate.d.ts.map +1 -1
  158. package/lib/producers/produceTemplate.js +9 -8
  159. package/lib/producers/produceTemplate.js.map +1 -1
  160. package/lib/producers/produceTemplate.test.js +6 -6
  161. package/lib/producers/produceTemplate.test.js.map +1 -1
  162. package/lib/runners/runInput.d.ts +1 -1
  163. package/lib/runners/runInput.d.ts.map +1 -1
  164. package/lib/runners/runTemplate.d.ts +1 -1
  165. package/lib/runners/runTemplate.d.ts.map +1 -1
  166. package/lib/runners/runTemplate.js.map +1 -1
  167. package/lib/shapes.d.ts +23 -0
  168. package/lib/shapes.d.ts.map +1 -0
  169. package/lib/shapes.js +4 -0
  170. package/lib/shapes.js.map +1 -0
  171. package/lib/types/about.d.ts +3 -0
  172. package/lib/types/about.d.ts.map +1 -1
  173. package/lib/types/creations.d.ts +29 -0
  174. package/lib/types/creations.d.ts.map +1 -1
  175. package/lib/types/inputs.d.ts +56 -7
  176. package/lib/types/inputs.d.ts.map +1 -1
  177. package/lib/types/modes.d.ts +4 -0
  178. package/lib/types/modes.d.ts.map +1 -1
  179. package/lib/types/options.d.ts +21 -0
  180. package/lib/types/options.d.ts.map +1 -1
  181. package/lib/types/shapes.d.ts +23 -0
  182. package/lib/types/shapes.d.ts.map +1 -0
  183. package/lib/types/shapes.js +4 -0
  184. package/lib/types/shapes.js.map +1 -0
  185. package/lib/types/system.d.ts +3 -2
  186. package/lib/types/system.d.ts.map +1 -1
  187. package/lib/types/templates.d.ts +84 -2
  188. package/lib/types/templates.d.ts.map +1 -1
  189. package/lib/utils/tryCatch.d.ts +1 -1
  190. package/package.json +5 -4
  191. package/lib/cli/findPositionalFrom.d.ts +0 -2
  192. package/lib/cli/findPositionalFrom.d.ts.map +0 -1
  193. package/lib/cli/findPositionalFrom.js +0 -8
  194. package/lib/cli/findPositionalFrom.js.map +0 -1
  195. package/lib/cli/findPositionalFrom.test.d.ts +0 -2
  196. package/lib/cli/findPositionalFrom.test.d.ts.map +0 -1
  197. package/lib/cli/findPositionalFrom.test.js +0 -15
  198. package/lib/cli/findPositionalFrom.test.js.map +0 -1
  199. package/lib/cli/importers/createNpxInstallationConfirm.d.ts +0 -3
  200. package/lib/cli/importers/createNpxInstallationConfirm.d.ts.map +0 -1
  201. package/lib/cli/importers/createNpxInstallationConfirm.js +0 -20
  202. package/lib/cli/importers/createNpxInstallationConfirm.js.map +0 -1
  203. package/lib/cli/importers/createNpxInstallationConfirm.test.d.ts +0 -2
  204. package/lib/cli/importers/createNpxInstallationConfirm.test.d.ts.map +0 -1
  205. package/lib/cli/importers/createNpxInstallationConfirm.test.js +0 -88
  206. package/lib/cli/importers/createNpxInstallationConfirm.test.js.map +0 -1
  207. package/lib/cli/importers/tryImportAndInstallIfNecessary.d.ts +0 -2
  208. package/lib/cli/importers/tryImportAndInstallIfNecessary.d.ts.map +0 -1
  209. package/lib/cli/importers/tryImportAndInstallIfNecessary.js +0 -23
  210. package/lib/cli/importers/tryImportAndInstallIfNecessary.js.map +0 -1
  211. package/lib/cli/importers/tryImportAndInstallIfNecessary.test.d.ts +0 -2
  212. package/lib/cli/importers/tryImportAndInstallIfNecessary.test.d.ts.map +0 -1
  213. package/lib/cli/importers/tryImportAndInstallIfNecessary.test.js +0 -66
  214. package/lib/cli/importers/tryImportAndInstallIfNecessary.test.js.map +0 -1
  215. package/lib/cli/loggers/logHelpOptions.test.d.ts +0 -2
  216. package/lib/cli/loggers/logHelpOptions.test.d.ts.map +0 -1
  217. package/lib/cli/loggers/logHelpOptions.test.js +0 -65
  218. package/lib/cli/loggers/logHelpOptions.test.js.map +0 -1
  219. package/lib/cli/loggers/logHelpText.test.d.ts +0 -2
  220. package/lib/cli/loggers/logHelpText.test.d.ts.map +0 -1
  221. package/lib/cli/loggers/logHelpText.test.js +0 -37
  222. package/lib/cli/loggers/logHelpText.test.js.map +0 -1
  223. package/lib/cli/loggers/logSchemasHelpOptions.test.d.ts +0 -2
  224. package/lib/cli/loggers/logSchemasHelpOptions.test.d.ts.map +0 -1
  225. package/lib/cli/loggers/logSchemasHelpOptions.test.js +0 -64
  226. package/lib/cli/loggers/logSchemasHelpOptions.test.js.map +0 -1
  227. package/lib/cli/loggers/logSetupHelpText.d.ts +0 -7
  228. package/lib/cli/loggers/logSetupHelpText.d.ts.map +0 -1
  229. package/lib/cli/loggers/logSetupHelpText.js +0 -43
  230. package/lib/cli/loggers/logSetupHelpText.js.map +0 -1
  231. package/lib/cli/loggers/logSetupHelpText.test.d.ts +0 -2
  232. package/lib/cli/loggers/logSetupHelpText.test.d.ts.map +0 -1
  233. package/lib/cli/loggers/logSetupHelpText.test.js +0 -92
  234. package/lib/cli/loggers/logSetupHelpText.test.js.map +0 -1
  235. package/lib/cli/loggers/logTransitionHelpText.d.ts +0 -4
  236. package/lib/cli/loggers/logTransitionHelpText.d.ts.map +0 -1
  237. package/lib/cli/loggers/logTransitionHelpText.js +0 -32
  238. package/lib/cli/loggers/logTransitionHelpText.js.map +0 -1
  239. package/lib/cli/loggers/logTransitionHelpText.test.d.ts +0 -2
  240. package/lib/cli/loggers/logTransitionHelpText.test.d.ts.map +0 -1
  241. package/lib/cli/loggers/logTransitionHelpText.test.js +0 -80
  242. package/lib/cli/loggers/logTransitionHelpText.test.js.map +0 -1
  243. package/lib/cli/runCli.d.ts +0 -3
  244. package/lib/cli/runCli.d.ts.map +0 -1
  245. package/lib/cli/runCli.js +0 -98
  246. package/lib/cli/runCli.js.map +0 -1
@@ -0,0 +1,3 @@
1
+ import { InputSystem, TakeInput } from "../types/inputs.js";
2
+ export declare function createTake(system: InputSystem): TakeInput;
3
+ //# sourceMappingURL=createTake.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTake.d.ts","sourceRoot":"","sources":["../../src/contexts/createTake.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAiB,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE3E,wBAAgB,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAkCzD"}
@@ -0,0 +1,26 @@
1
+ import hashObject from "hash-object";
2
+ export function createTake(system) {
3
+ const cache = new Map();
4
+ const take = ((input, args) => {
5
+ const hash = hashObject({ args, input });
6
+ if (cache.has(hash)) {
7
+ return cache.get(hash);
8
+ }
9
+ let result;
10
+ function getter() {
11
+ result ??= [
12
+ input({
13
+ ...system,
14
+ args,
15
+ take,
16
+ }),
17
+ ];
18
+ return result[0];
19
+ }
20
+ getter.then = async () => await getter();
21
+ cache.set(hash, getter);
22
+ return getter;
23
+ });
24
+ return take;
25
+ }
26
+ //# sourceMappingURL=createTake.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTake.js","sourceRoot":"","sources":["../../src/contexts/createTake.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,aAAa,CAAC;AAKrC,MAAM,UAAU,UAAU,CAAC,MAAmB;IAC7C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAyB,CAAC;IAE/C,MAAM,IAAI,GAAG,CAAC,CACb,KAAuC,EACvC,IAA+B,EAC9B,EAAE;QACH,MAAM,IAAI,GAAG,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAEzC,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACrB,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;QAED,IAAI,MAA4B,CAAC;QAEjC,SAAS,MAAM;YACd,MAAM,KAAK;gBACV,KAAK,CAAC;oBACL,GAAG,MAAM;oBACT,IAAI;oBACJ,IAAI;iBACJ,CAAC;aACF,CAAC;YACF,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,CAAC,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC,MAAM,MAAM,EAAE,CAAC;QAEzC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAExB,OAAO,MAAM,CAAC;IACf,CAAC,CAAc,CAAC;IAEhB,OAAO,IAAI,CAAC;AACb,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=createTake.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTake.test.d.ts","sourceRoot":"","sources":["../../src/contexts/createTake.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,71 @@
1
+ import { createSystemFetchers } from "bingo-systems";
2
+ import { describe, expect, it, vi } from "vitest";
3
+ import { z } from "zod";
4
+ import { createInput } from "../creators/createInput.js";
5
+ import { createTake } from "./createTake.js";
6
+ const createMockSystem = () => ({
7
+ fetchers: createSystemFetchers({
8
+ fetch: vi.fn(),
9
+ }),
10
+ fs: {
11
+ readDirectory: vi.fn(),
12
+ readFile: vi.fn(),
13
+ },
14
+ runner: vi.fn(),
15
+ });
16
+ describe("createTake", () => {
17
+ describe("without args", () => {
18
+ it("produces a getter when called the first time", () => {
19
+ const value = { inner: 123 };
20
+ const take = createTake(createMockSystem());
21
+ const produce = vi.fn().mockReturnValueOnce(value);
22
+ const input = createInput({ produce });
23
+ const getter = take(input);
24
+ expect(getter()).toBe(value);
25
+ expect(produce).toHaveBeenCalledOnce();
26
+ });
27
+ it("returns the same value from the getter when the getter is called multiple times", () => {
28
+ const value = { inner: 123 };
29
+ const take = createTake(createMockSystem());
30
+ const produce = vi.fn().mockReturnValueOnce(value);
31
+ const input = createInput({ produce });
32
+ const getter = take(input);
33
+ getter();
34
+ expect(getter()).toBe(value);
35
+ expect(produce).toHaveBeenCalledOnce();
36
+ });
37
+ it("produces the same cached getter when called the second time", () => {
38
+ const value = { inner: 123 };
39
+ const take = createTake(createMockSystem());
40
+ const produce = vi.fn().mockReturnValueOnce(value);
41
+ const input = createInput({ produce });
42
+ take(input);
43
+ const getter = take(input);
44
+ expect(getter()).toBe(value);
45
+ expect(produce).toHaveBeenCalledOnce();
46
+ });
47
+ it("produces the same result when two getters are created and called once", () => {
48
+ const value = { inner: 123 };
49
+ const take = createTake(createMockSystem());
50
+ const produce = vi.fn().mockReturnValueOnce(value);
51
+ const input = createInput({ produce });
52
+ const getterFirst = take(input);
53
+ const actualFirst = getterFirst();
54
+ const getterSecond = take(input);
55
+ expect(getterSecond()).toBe(actualFirst);
56
+ expect(produce).toHaveBeenCalledOnce();
57
+ });
58
+ it("passes args when provided and in the schema", () => {
59
+ const take = createTake(createMockSystem());
60
+ const input = createInput({
61
+ args: {
62
+ value: z.number(),
63
+ },
64
+ produce: ({ args }) => args.value * 2,
65
+ });
66
+ const getter = take(input, { value: 123 });
67
+ expect(getter()).toBe(246);
68
+ });
69
+ });
70
+ });
71
+ //# sourceMappingURL=createTake.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTake.test.js","sourceRoot":"","sources":["../../src/contexts/createTake.test.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,31 @@
1
- import { AnyShape } from "../options.js";
2
1
  import { Input, InputProducerWithArgs, InputProducerWithoutArgs } from "../types/inputs.js";
2
+ import { AnyShape } from "../types/shapes.js";
3
+ /**
4
+ * Definition for creating a new Input that might have args defined.
5
+ * @see {@link createInput}
6
+ * @see {@link https://create.bingo/build/apis/create-input}
7
+ */
3
8
  export type InputDefinition<Result, ArgsShape extends AnyShape | undefined = undefined> = ArgsShape extends object ? InputDefinitionWithArgs<Result, ArgsShape> : InputDefinitionWithoutArgs<Result>;
9
+ /**
10
+ * Definition for creating a new Input that has args defined.
11
+ * @see {@link createInput}
12
+ * @see {@link https://create.bingo/build/apis/create-input}
13
+ */
4
14
  export interface InputDefinitionWithArgs<Result, ArgsShape extends AnyShape> {
5
15
  args: ArgsShape;
6
16
  produce: InputProducerWithArgs<Result, ArgsShape>;
7
17
  }
18
+ /**
19
+ * Definition for creating a new Input that does not have args defined.
20
+ * @see {@link createInput}
21
+ * @see {@link https://create.bingo/build/apis/create-input}
22
+ */
8
23
  export interface InputDefinitionWithoutArgs<Result> {
9
24
  produce: InputProducerWithoutArgs<Result>;
10
25
  }
26
+ /**
27
+ * Creates a new Input.
28
+ * @see {@link https://create.bingo/build/apis/create-input}
29
+ */
11
30
  export declare function createInput<Result, ArgsShape extends AnyShape | undefined = undefined>(inputDefinition: InputDefinition<Result, ArgsShape>): Input<Result, ArgsShape>;
12
31
  //# sourceMappingURL=createInput.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createInput.d.ts","sourceRoot":"","sources":["../../src/creators/createInput.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAkB,MAAM,eAAe,CAAC;AACzD,OAAO,EACN,KAAK,EAGL,qBAAqB,EACrB,wBAAwB,EACxB,MAAM,oBAAoB,CAAC;AAG5B,MAAM,MAAM,eAAe,CAC1B,MAAM,EACN,SAAS,SAAS,QAAQ,GAAG,SAAS,GAAG,SAAS,IAC/C,SAAS,SAAS,MAAM,GACzB,uBAAuB,CAAC,MAAM,EAAE,SAAS,CAAC,GAC1C,0BAA0B,CAAC,MAAM,CAAC,CAAC;AAEtC,MAAM,WAAW,uBAAuB,CAAC,MAAM,EAAE,SAAS,SAAS,QAAQ;IAC1E,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,qBAAqB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;CAClD;AAED,MAAM,WAAW,0BAA0B,CAAC,MAAM;IACjD,OAAO,EAAE,wBAAwB,CAAC,MAAM,CAAC,CAAC;CAC1C;AAED,wBAAgB,WAAW,CAC1B,MAAM,EACN,SAAS,SAAS,QAAQ,GAAG,SAAS,GAAG,SAAS,EAElD,eAAe,EAAE,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,GACjD,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAqB1B"}
1
+ {"version":3,"file":"createInput.d.ts","sourceRoot":"","sources":["../../src/creators/createInput.ts"],"names":[],"mappings":"AAEA,OAAO,EACN,KAAK,EAGL,qBAAqB,EACrB,wBAAwB,EACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAkB,MAAM,oBAAoB,CAAC;AAG9D;;;;GAIG;AACH,MAAM,MAAM,eAAe,CAC1B,MAAM,EACN,SAAS,SAAS,QAAQ,GAAG,SAAS,GAAG,SAAS,IAC/C,SAAS,SAAS,MAAM,GACzB,uBAAuB,CAAC,MAAM,EAAE,SAAS,CAAC,GAC1C,0BAA0B,CAAC,MAAM,CAAC,CAAC;AAEtC;;;;GAIG;AACH,MAAM,WAAW,uBAAuB,CAAC,MAAM,EAAE,SAAS,SAAS,QAAQ;IAC1E,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,qBAAqB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;CAClD;AAED;;;;GAIG;AACH,MAAM,WAAW,0BAA0B,CAAC,MAAM;IACjD,OAAO,EAAE,wBAAwB,CAAC,MAAM,CAAC,CAAC;CAC1C;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAC1B,MAAM,EACN,SAAS,SAAS,QAAQ,GAAG,SAAS,GAAG,SAAS,EAElD,eAAe,EAAE,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,GACjD,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAqB1B"}
@@ -1,5 +1,9 @@
1
1
  import { z } from "zod";
2
2
  import { isDefinitionWithArgs } from "./utils.js";
3
+ /**
4
+ * Creates a new Input.
5
+ * @see {@link https://create.bingo/build/apis/create-input}
6
+ */
3
7
  export function createInput(inputDefinition) {
4
8
  if (!isDefinitionWithArgs(inputDefinition)) {
5
9
  return ((context) => {
@@ -1 +1 @@
1
- {"version":3,"file":"createInput.js","sourceRoot":"","sources":["../../src/creators/createInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAUxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAkBlD,MAAM,UAAU,WAAW,CAI1B,eAAmD;IAEnD,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,EAAE,CAAC;QAC5C,OAAO,CAAC,CAAC,OAAqB,EAAE,EAAE;YACjC,OAAO,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC,CAA6B,CAAC;IAChC,CAAC;IAED,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAEjD,SAAS,KAAK,CACb,OAAqE;QAErE,OAAO,eAAe,CAAC,OAAO,CAAC;YAC9B,GAAG,OAAO;YACV,IAAI,EAAE,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;SACnC,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC;IAElC,OAAO,KAAiC,CAAC;AAC1C,CAAC"}
1
+ {"version":3,"file":"createInput.js","sourceRoot":"","sources":["../../src/creators/createInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAUxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAiClD;;;GAGG;AACH,MAAM,UAAU,WAAW,CAI1B,eAAmD;IAEnD,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,EAAE,CAAC;QAC5C,OAAO,CAAC,CAAC,OAAgC,EAAE,EAAE;YAC5C,OAAO,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC,CAA6B,CAAC;IAChC,CAAC;IAED,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAEjD,SAAS,KAAK,CACb,OAAqE;QAErE,OAAO,eAAe,CAAC,OAAO,CAAC;YAC9B,GAAG,OAAO;YACV,IAAI,EAAE,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;SACnC,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC;IAElC,OAAO,KAAiC,CAAC;AAC1C,CAAC"}
@@ -1,5 +1,11 @@
1
- import { AnyShape } from "../options.js";
1
+ import { AnyShape } from "../types/shapes.js";
2
2
  import { Template, TemplateDefinition } from "../types/templates.js";
3
+ /**
4
+ * Definition for creating a new Template.
5
+ * @see {@link Template}
6
+ * @see {@link TemplateDefinition}
7
+ * @see {@link https://create.bingo/build/apis/create-template}
8
+ */
3
9
  export declare function createTemplate<OptionsShape extends AnyShape>(definition: TemplateDefinition<OptionsShape>): Template<OptionsShape>;
4
10
  export declare function createTemplate(definition: TemplateDefinition<{}>): Template<{}>;
5
11
  //# sourceMappingURL=createTemplate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createTemplate.d.ts","sourceRoot":"","sources":["../../src/creators/createTemplate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAErE,wBAAgB,cAAc,CAAC,YAAY,SAAS,QAAQ,EAC3D,UAAU,EAAE,kBAAkB,CAAC,YAAY,CAAC,GAC1C,QAAQ,CAAC,YAAY,CAAC,CAAC;AAC1B,wBAAgB,cAAc,CAC7B,UAAU,EAAE,kBAAkB,CAAC,EAAE,CAAC,GAChC,QAAQ,CAAC,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"createTemplate.d.ts","sourceRoot":"","sources":["../../src/creators/createTemplate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAErE;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,YAAY,SAAS,QAAQ,EAC3D,UAAU,EAAE,kBAAkB,CAAC,YAAY,CAAC,GAC1C,QAAQ,CAAC,YAAY,CAAC,CAAC;AAC1B,wBAAgB,cAAc,CAC7B,UAAU,EAAE,kBAAkB,CAAC,EAAE,CAAC,GAChC,QAAQ,CAAC,EAAE,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"createTemplate.js","sourceRoot":"","sources":["../../src/creators/createTemplate.ts"],"names":[],"mappings":"AAWA,MAAM,UAAU,cAAc,CAC7B,UAA4C;IAE5C,OAAO;QACN,OAAO,EAAE,EAAkB;QAC3B,GAAG,UAAU;KACb,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"createTemplate.js","sourceRoot":"","sources":["../../src/creators/createTemplate.ts"],"names":[],"mappings":"AAiBA,MAAM,UAAU,cAAc,CAC7B,UAA4C;IAE5C,OAAO;QACN,OAAO,EAAE,EAAkB;QAC3B,GAAG,UAAU;KACb,CAAC;AACH,CAAC"}
package/lib/index.d.ts CHANGED
@@ -1,10 +1,7 @@
1
- export * from "./cli/runCli.js";
2
- export * from "./config/createConfig.js";
3
- export type * from "./config/types.js";
1
+ export * from "./cli/runBingoCLI.js";
2
+ export * from "./cli/runTemplateCLI.js";
4
3
  export * from "./creators/createInput.js";
5
4
  export * from "./creators/createTemplate.js";
6
- export * from "./mergers/applyMerger.js";
7
- export * from "./mergers/mergeCreations.js";
8
5
  export * from "./preparation/prepareOptions.js";
9
6
  export * from "./producers/produceTemplate.js";
10
7
  export * from "./runners/runCreation.js";
@@ -12,14 +9,14 @@ export * from "./runners/runInput.js";
12
9
  export * from "./runners/runTemplate.js";
13
10
  export * from "./contexts/createSystemContext.js";
14
11
  export * from "./contexts/createSystemContextWithAuth.js";
12
+ export * from "./mergers/mergeCreations.js";
15
13
  export * from "./runners/applyFilesToSystem.js";
16
14
  export * from "./utils/awaitLazyProperties.js";
17
- export type * from "./options.js";
18
15
  export type * from "./types/about.js";
19
16
  export type * from "./types/creations.js";
20
17
  export type * from "./types/inputs.js";
21
18
  export type * from "./types/modes.js";
22
19
  export type * from "./types/options.js";
23
- export type * from "./types/system.js";
20
+ export type * from "./types/shapes.js";
24
21
  export type * from "./types/templates.js";
25
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;AAGhC,cAAc,0BAA0B,CAAC;AACzC,mBAAmB,mBAAmB,CAAC;AAGvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAG7C,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAG5C,cAAc,iCAAiC,CAAC;AAGhD,cAAc,gCAAgC,CAAC;AAG/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,mCAAmC,CAAC;AAClD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,iCAAiC,CAAC;AAChD,cAAc,gCAAgC,CAAC;AAG/C,mBAAmB,cAAc,CAAC;AAClC,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAG7C,cAAc,iCAAiC,CAAC;AAGhD,cAAc,gCAAgC,CAAC;AAG/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,mCAAmC,CAAC;AAClD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,gCAAgC,CAAC;AAG/C,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,sBAAsB,CAAC"}
package/lib/index.js CHANGED
@@ -1,13 +1,9 @@
1
1
  // CLI
2
- export * from "./cli/runCli.js";
3
- // Config
4
- export * from "./config/createConfig.js";
2
+ export * from "./cli/runBingoCLI.js";
3
+ export * from "./cli/runTemplateCLI.js";
5
4
  // Creators
6
5
  export * from "./creators/createInput.js";
7
6
  export * from "./creators/createTemplate.js";
8
- // Mergers
9
- export * from "./mergers/applyMerger.js";
10
- export * from "./mergers/mergeCreations.js";
11
7
  // Preparation
12
8
  export * from "./preparation/prepareOptions.js";
13
9
  // Producers
@@ -19,6 +15,7 @@ export * from "./runners/runTemplate.js";
19
15
  // Runtime (Miscellaneous)
20
16
  export * from "./contexts/createSystemContext.js";
21
17
  export * from "./contexts/createSystemContextWithAuth.js";
18
+ export * from "./mergers/mergeCreations.js";
22
19
  export * from "./runners/applyFilesToSystem.js";
23
20
  export * from "./utils/awaitLazyProperties.js";
24
21
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,MAAM;AACN,cAAc,iBAAiB,CAAC;AAEhC,SAAS;AACT,cAAc,0BAA0B,CAAC;AAGzC,WAAW;AACX,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAE7C,UAAU;AACV,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAE5C,cAAc;AACd,cAAc,iCAAiC,CAAC;AAEhD,YAAY;AACZ,cAAc,gCAAgC,CAAC;AAE/C,UAAU;AACV,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AAEzC,0BAA0B;AAC1B,cAAc,mCAAmC,CAAC;AAClD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,iCAAiC,CAAC;AAChD,cAAc,gCAAgC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,MAAM;AACN,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AAExC,WAAW;AACX,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAE7C,cAAc;AACd,cAAc,iCAAiC,CAAC;AAEhD,YAAY;AACZ,cAAc,gCAAgC,CAAC;AAE/C,UAAU;AACV,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AAEzC,0BAA0B;AAC1B,cAAc,mCAAmC,CAAC;AAClD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,gCAAgC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"mergeCreatedDirectories.d.ts","sourceRoot":"","sources":["../../src/mergers/mergeCreatedDirectories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAI5C,wBAAgB,uBAAuB,CACtC,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,gBAAgB,oBAGzB"}
1
+ {"version":3,"file":"mergeCreatedDirectories.d.ts","sourceRoot":"","sources":["../../src/mergers/mergeCreatedDirectories.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAoB,MAAM,UAAU,CAAC;AAI9D,wBAAgB,uBAAuB,CACtC,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,gBAAgB,oBAGzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"mergeCreatedDirectories.js","sourceRoot":"","sources":["../../src/mergers/mergeCreatedDirectories.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,UAAU,uBAAuB,CACtC,MAAwB,EACxB,OAAyB;IAEzB,OAAO,6BAA6B,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,6BAA6B,CACrC,MAAwB,EACxB,OAAyB,EACzB,IAAc;IAEd,MAAM,MAAM,GAAqB,EAAE,GAAG,MAAM,EAAE,CAAC;IAE/C,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,EAAE,CAAC;YACpB,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;YACnB,SAAS;QACV,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;QAE9B,MAAM,gBAAgB,GAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC5E,MAAM,iBAAiB,GACtB,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAEtD,IAAI,gBAAgB,KAAK,iBAAiB,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CACd,oDAAoD,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAC1E,CAAC;QACH,CAAC;QAED,MAAM,CAAC,CAAC,CAAC,GAAG,gBAAgB;YAC3B,CAAC,CAAC,6BAA6B,CAC7B,KAAK,EACL,MAA0B,EAC1B,QAAQ,CACR;YACF,CAAC,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"mergeCreatedDirectories.js","sourceRoot":"","sources":["../../src/mergers/mergeCreatedDirectories.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,MAAM,UAAU,uBAAuB,CACtC,MAAwB,EACxB,OAAyB;IAEzB,OAAO,6BAA6B,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,6BAA6B,CACrC,MAAwB,EACxB,OAAyB,EACzB,IAAc;IAEd,MAAM,MAAM,GAAqB,EAAE,GAAG,MAAM,EAAE,CAAC;IAE/C,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,EAAE,CAAC;YACpB,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;YACnB,SAAS;QACV,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;QAE9B,MAAM,gBAAgB,GAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC5E,MAAM,iBAAiB,GACtB,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAEtD,IAAI,gBAAgB,KAAK,iBAAiB,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CACd,oDAAoD,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAC1E,CAAC;QACH,CAAC;QAED,MAAM,CAAC,CAAC,CAAC,GAAG,gBAAgB;YAC3B,CAAC,CAAC,6BAA6B,CAC7B,KAAK,EACL,MAA0B,EAC1B,QAAQ,CACR;YACF,CAAC,CAAC,gBAAgB,CAChB,KAAyB,EACzB,MAA0B,EAC1B,QAAQ,CACR,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC"}
@@ -1,3 +1,3 @@
1
1
  import { CreatedFileEntry } from "bingo-fs";
2
- export declare function mergeFileEntries(first: CreatedFileEntry | undefined, second: CreatedFileEntry | undefined, path: string[]): CreatedFileEntry | undefined;
2
+ export declare function mergeFileEntries(first: CreatedFileEntry | false | undefined, second: CreatedFileEntry | false | undefined, path: string[]): CreatedFileEntry | undefined;
3
3
  //# sourceMappingURL=mergeFileEntries.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mergeFileEntries.d.ts","sourceRoot":"","sources":["../../src/mergers/mergeFileEntries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE5C,wBAAgB,gBAAgB,CAC/B,KAAK,EAAE,gBAAgB,GAAG,SAAS,EACnC,MAAM,EAAE,gBAAgB,GAAG,SAAS,EACpC,IAAI,EAAE,MAAM,EAAE,GACZ,gBAAgB,GAAG,SAAS,CA2B9B"}
1
+ {"version":3,"file":"mergeFileEntries.d.ts","sourceRoot":"","sources":["../../src/mergers/mergeFileEntries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAE1D,wBAAgB,gBAAgB,CAC/B,KAAK,EAAE,gBAAgB,GAAG,KAAK,GAAG,SAAS,EAC3C,MAAM,EAAE,gBAAgB,GAAG,KAAK,GAAG,SAAS,EAC5C,IAAI,EAAE,MAAM,EAAE,GACZ,gBAAgB,GAAG,SAAS,CA2B9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"mergeFileEntries.js","sourceRoot":"","sources":["../../src/mergers/mergeFileEntries.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB,CAC/B,KAAmC,EACnC,MAAoC,EACpC,IAAc;IAEd,IAAI,KAAK,KAAK,MAAM,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9C,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IACtD,CAAC;IAED,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,MAAM,CAAC;IACf,CAAC;IAED,MAAM,CAAC,SAAS,EAAE,aAAa,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC9E,MAAM,CAAC,UAAU,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QACzD,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAEhB,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,uCAAuC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC5E,CAAC;IAED,IAAI,aAAa,EAAE,UAAU,KAAK,cAAc,EAAE,UAAU,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CACd,iDAAiD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CACnE,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,aAAa,EAAE,UAAU,IAAI,cAAc,EAAE,UAAU,CAAC;IAE3E,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,SAAmB,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACvE,CAAC;AAED,SAAS,YAAY,CAAC,KAAmC;IACxD,OAAO,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,SAAS,CAAC;AAC/C,CAAC"}
1
+ {"version":3,"file":"mergeFileEntries.js","sourceRoot":"","sources":["../../src/mergers/mergeFileEntries.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB,CAC/B,KAA2C,EAC3C,MAA4C,EAC5C,IAAc;IAEd,IAAI,KAAK,KAAK,MAAM,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9C,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IACtD,CAAC;IAED,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,MAAM,CAAC;IACf,CAAC;IAED,MAAM,CAAC,SAAS,EAAE,aAAa,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC9E,MAAM,CAAC,UAAU,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QACzD,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAEhB,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,uCAAuC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC5E,CAAC;IAED,IAAI,aAAa,EAAE,UAAU,KAAK,cAAc,EAAE,UAAU,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CACd,iDAAiD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CACnE,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,aAAa,EAAE,UAAU,IAAI,cAAc,EAAE,UAAU,CAAC;IAE3E,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7D,CAAC;AAED,SAAS,YAAY,CAAC,KAA+B;IACpD,OAAO,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,SAAS,CAAC;AAC/C,CAAC"}
package/lib/options.d.ts CHANGED
@@ -1,14 +1,23 @@
1
1
  import { z } from "zod";
2
+ /**
3
+ * Any object containing Zod schemas that are optional.
4
+ * In other words, allows providing an empty object {} value.
5
+ */
2
6
  export type AnyOptionalShape = Record<string, z.ZodDefault<z.ZodType> | z.ZodOptional<z.ZodType>>;
7
+ /**
8
+ * Any object containing Zod schemas as values.
9
+ */
3
10
  export type AnyShape = z.ZodRawShape;
11
+ /**
12
+ * Given an object containing Zod schemas, produces the equivalent runtime type.
13
+ * @example
14
+ * ```ts
15
+ * InferredObject<{ value: z.ZodNumber }>
16
+ * ```
17
+ * is the same as:
18
+ * ```ts
19
+ * { value: number }
20
+ * ```
21
+ */
4
22
  export type InferredObject<OptionsShape extends AnyShape | undefined> = OptionsShape extends AnyShape ? z.infer<z.ZodObject<OptionsShape>> : undefined;
5
- export type MinimumOptionsShape = AnyOptionalShape & RequiredOptionsShape;
6
- export interface RequiredOptions {
7
- owner: string;
8
- repository: string;
9
- }
10
- export interface RequiredOptionsShape {
11
- owner: z.ZodOptional<z.ZodString>;
12
- repository: z.ZodOptional<z.ZodString>;
13
- }
14
23
  //# sourceMappingURL=options.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,MAAM,gBAAgB,GAAG,MAAM,CACpC,MAAM,EACN,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAClD,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,WAAW,CAAC;AAErC,MAAM,MAAM,cAAc,CAAC,YAAY,SAAS,QAAQ,GAAG,SAAS,IACnE,YAAY,SAAS,QAAQ,GAC1B,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,GAClC,SAAS,CAAC;AAEd,MAAM,MAAM,mBAAmB,GAAG,gBAAgB,GAAG,oBAAoB,CAAC;AAE1E,MAAM,WAAW,eAAe;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACpC,KAAK,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAClC,UAAU,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;CACvC"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CACpC,MAAM,EACN,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAClD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,WAAW,CAAC;AAErC;;;;;;;;;;GAUG;AACH,MAAM,MAAM,cAAc,CAAC,YAAY,SAAS,QAAQ,GAAG,SAAS,IACnE,YAAY,SAAS,QAAQ,GAC1B,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,GAClC,SAAS,CAAC"}
package/lib/options.js CHANGED
@@ -1,2 +1,4 @@
1
+ // eslint-disable-next-line @eslint-community/eslint-comments/disable-enable-pair
2
+ /* eslint-disable jsdoc/text-escaping -- https://github.com/gajus/eslint-plugin-jsdoc/issues/1360 */
1
3
  export {};
2
4
  //# sourceMappingURL=options.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../src/options.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,oGAAoG"}
@@ -1,3 +1,9 @@
1
- import { CreatedConfig } from "../config/types.js";
1
+ import { AnyShape, InferredObject } from "../types/shapes.js";
2
+ import { Template } from "../types/templates.js";
3
+ export interface CreatedConfig<OptionsShape extends AnyShape = AnyShape, Settings extends object = object> {
4
+ options?: InferredObject<OptionsShape>;
5
+ settings?: Settings;
6
+ template: Template<OptionsShape>;
7
+ }
2
8
  export declare function isCreatedConfig(value: unknown): value is CreatedConfig;
3
9
  //# sourceMappingURL=isCreatedConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"isCreatedConfig.d.ts","sourceRoot":"","sources":["../../src/predicates/isCreatedConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAOtE"}
1
+ {"version":3,"file":"isCreatedConfig.d.ts","sourceRoot":"","sources":["../../src/predicates/isCreatedConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGjD,MAAM,WAAW,aAAa,CAC7B,YAAY,SAAS,QAAQ,GAAG,QAAQ,EACxC,QAAQ,SAAS,MAAM,GAAG,MAAM;IAEhC,OAAO,CAAC,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;IACvC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;CACjC;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAOtE"}
@@ -1 +1 @@
1
- {"version":3,"file":"isCreatedConfig.js","sourceRoot":"","sources":["../../src/predicates/isCreatedConfig.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,UAAU,eAAe,CAAC,KAAc;IAC7C,OAAO,CACN,CAAC,CAAC,KAAK;QACP,OAAO,KAAK,KAAK,QAAQ;QACzB,UAAU,IAAI,KAAK;QACnB,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAC1B,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"isCreatedConfig.js","sourceRoot":"","sources":["../../src/predicates/isCreatedConfig.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAW7C,MAAM,UAAU,eAAe,CAAC,KAAc;IAC7C,OAAO,CACN,CAAC,CAAC,KAAK;QACP,OAAO,KAAK,KAAK,QAAQ;QACzB,UAAU,IAAI,KAAK;QACnB,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAC1B,CAAC;AACH,CAAC"}
@@ -1,5 +1,4 @@
1
1
  import { describe, expect, test, vi } from "vitest";
2
- import { createConfig } from "../config/createConfig.js";
3
2
  import { createTemplate } from "../creators/createTemplate.js";
4
3
  import { isCreatedConfig } from "./isCreatedConfig.js";
5
4
  const template = createTemplate({
@@ -20,11 +19,11 @@ describe("isCreatedConfig", () => {
20
19
  [{ settings: null }, false],
21
20
  [{ settings: {} }, false],
22
21
  [{ settings: {}, template: {} }, false],
23
- [createConfig(template), true],
24
- [createConfig(template, {}), true],
25
- [createConfig(template, { options: {} }), true],
26
- [createConfig(template, { settings: {} }), true],
27
- [createConfig(template, { options: {}, settings: {} }), true],
22
+ [{ template }, true],
23
+ [{ template }, true],
24
+ [{ options: {}, template }, true],
25
+ [{ settings: {}, template }, true],
26
+ [{ options: {}, settings: {}, template }, true],
28
27
  ])("%j", (input, expected) => {
29
28
  const actual = isCreatedConfig(input);
30
29
  expect(actual).toBe(expected);
@@ -1 +1 @@
1
- {"version":3,"file":"isCreatedConfig.test.js","sourceRoot":"","sources":["../../src/predicates/isCreatedConfig.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,MAAM,QAAQ,GAAG,cAAc,CAAC;IAC/B,KAAK,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE;IAChC,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;CAChB,CAAC,CAAC;AAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAChC,IAAI,CAAC,IAAI,CAAC;QACT,CAAC,IAAI,EAAE,KAAK,CAAC;QACb,CAAC,SAAS,EAAE,KAAK,CAAC;QAClB,CAAC,GAAG,EAAE,KAAK,CAAC;QACZ,CAAC,KAAK,EAAE,KAAK,CAAC;QACd,CAAC,EAAE,EAAE,KAAK,CAAC;QACX,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,KAAK,CAAC;QAC3B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC;QACzB,CAAC,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC;QACpD,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,KAAK,CAAC;QAC3B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC;QACzB,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC;QACvC,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;QAC9B,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC;QAClC,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC;QAC/C,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC;QAChD,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC;KAC7D,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;QAC5B,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QAEtC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"isCreatedConfig.test.js","sourceRoot":"","sources":["../../src/predicates/isCreatedConfig.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAEpD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,MAAM,QAAQ,GAAG,cAAc,CAAC;IAC/B,KAAK,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE;IAChC,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;CAChB,CAAC,CAAC;AAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAChC,IAAI,CAAC,IAAI,CAAC;QACT,CAAC,IAAI,EAAE,KAAK,CAAC;QACb,CAAC,SAAS,EAAE,KAAK,CAAC;QAClB,CAAC,GAAG,EAAE,KAAK,CAAC;QACZ,CAAC,KAAK,EAAE,KAAK,CAAC;QACd,CAAC,EAAE,EAAE,KAAK,CAAC;QACX,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,KAAK,CAAC;QAC3B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC;QACzB,CAAC,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC;QACpD,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,KAAK,CAAC;QAC3B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC;QACzB,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC;QACvC,CAAC,EAAE,QAAQ,EAAE,EAAE,IAAI,CAAC;QACpB,CAAC,EAAE,QAAQ,EAAE,EAAE,IAAI,CAAC;QACpB,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,CAAC;QACjC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,CAAC;QAClC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,CAAC;KAC/C,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;QAC5B,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QAEtC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -1,7 +1,13 @@
1
1
  import { BingoSystem } from "bingo-systems";
2
- import { AnyShape, InferredObject } from "../options.js";
3
2
  import { LazyOptionalOptions, OptionsContext } from "../types/options.js";
4
- export interface HasOptionsAndPrepare<OptionsShape extends AnyShape> {
3
+ import { AnyShape, InferredObject } from "../types/shapes.js";
4
+ /**
5
+ * Any object that has options, and optionally a prepare function.
6
+ * This is commonly a Template, but can also be objects from custom engines.
7
+ * @see {@link prepareOptions}
8
+ * @see {@link http://create.bingo/build/apis/prepare-options}
9
+ */
10
+ export interface HasOptionsAndMaybePrepare<OptionsShape extends AnyShape> {
5
11
  options: OptionsShape;
6
12
  prepare?: (context: OptionsContext<InferredObject<OptionsShape>>) => LazyOptionalOptions<Partial<InferredObject<OptionsShape>>>;
7
13
  }
@@ -10,5 +16,10 @@ export interface PrepareOptionsSettings<OptionsShape extends AnyShape> extends P
10
16
  existing?: Partial<InferredObject<OptionsShape>>;
11
17
  offline?: boolean;
12
18
  }
13
- export declare function prepareOptions<OptionsShape extends AnyShape>(base: HasOptionsAndPrepare<OptionsShape>, settings?: PrepareOptionsSettings<OptionsShape>): Promise<Partial<InferredObject<OptionsShape>>>;
19
+ /**
20
+ * Loads inferred values for any options not explicitly provided in settings,
21
+ * if the base's prepare exists. Returns the existing settings otherwise.
22
+ * @see {@link http://create.bingo/build/apis/prepare-options}
23
+ */
24
+ export declare function prepareOptions<OptionsShape extends AnyShape>(base: HasOptionsAndMaybePrepare<OptionsShape>, settings?: PrepareOptionsSettings<OptionsShape>): Promise<Partial<InferredObject<OptionsShape>>>;
14
25
  //# sourceMappingURL=prepareOptions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prepareOptions.d.ts","sourceRoot":"","sources":["../../src/preparation/prepareOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAG1E,MAAM,WAAW,oBAAoB,CAAC,YAAY,SAAS,QAAQ;IAClE,OAAO,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,EAAE,CACT,OAAO,EAAE,cAAc,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,KACjD,mBAAmB,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;CAChE;AAED,MAAM,WAAW,sBAAsB,CAAC,YAAY,SAAS,QAAQ,CACpE,SAAQ,OAAO,CAAC,WAAW,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC;IACjD,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAsB,cAAc,CAAC,YAAY,SAAS,QAAQ,EACjE,IAAI,EAAE,oBAAoB,CAAC,YAAY,CAAC,EACxC,QAAQ,GAAE,sBAAsB,CAAC,YAAY,CAAM,GACjD,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAiBhD"}
1
+ {"version":3,"file":"prepareOptions.d.ts","sourceRoot":"","sources":["../../src/preparation/prepareOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAG9D;;;;;GAKG;AACH,MAAM,WAAW,yBAAyB,CAAC,YAAY,SAAS,QAAQ;IACvE,OAAO,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,EAAE,CACT,OAAO,EAAE,cAAc,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,KACjD,mBAAmB,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;CAChE;AAED,MAAM,WAAW,sBAAsB,CAAC,YAAY,SAAS,QAAQ,CACpE,SAAQ,OAAO,CAAC,WAAW,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC;IACjD,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,YAAY,SAAS,QAAQ,EACjE,IAAI,EAAE,yBAAyB,CAAC,YAAY,CAAC,EAC7C,QAAQ,GAAE,sBAAsB,CAAC,YAAY,CAAM,GACjD,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAiBhD"}
@@ -1,5 +1,10 @@
1
1
  import { createSystemContextWithAuth } from "../contexts/createSystemContextWithAuth.js";
2
2
  import { awaitLazyProperties } from "../utils/awaitLazyProperties.js";
3
+ /**
4
+ * Loads inferred values for any options not explicitly provided in settings,
5
+ * if the base's prepare exists. Returns the existing settings otherwise.
6
+ * @see {@link http://create.bingo/build/apis/prepare-options}
7
+ */
3
8
  export async function prepareOptions(base, settings = {}) {
4
9
  const { existing = {} } = settings;
5
10
  if (!base.prepare) {
@@ -1 +1 @@
1
- {"version":3,"file":"prepareOptions.js","sourceRoot":"","sources":["../../src/preparation/prepareOptions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,2BAA2B,EAAE,MAAM,4CAA4C,CAAC;AAGzF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAgBtE,MAAM,CAAC,KAAK,UAAU,cAAc,CACnC,IAAwC,EACxC,WAAiD,EAAE;IAEnD,MAAM,EAAE,QAAQ,GAAG,EAAE,EAAE,GAAG,QAAQ,CAAC;IACnC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAC;IACjB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC;QAChD,SAAS,EAAE,QAAQ,CAAC,SAAS,IAAI,GAAG;QACpC,GAAG,QAAQ;KACX,CAAC,CAAC;IAEH,OAAO,MAAM,mBAAmB,CAC/B,IAAI,CAAC,OAAO,CAAC;QACZ,OAAO,EAAE,QAAQ;QACjB,GAAG,MAAM;KACT,CAAC,CACF,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"prepareOptions.js","sourceRoot":"","sources":["../../src/preparation/prepareOptions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,2BAA2B,EAAE,MAAM,4CAA4C,CAAC;AAGzF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAsBtE;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CACnC,IAA6C,EAC7C,WAAiD,EAAE;IAEnD,MAAM,EAAE,QAAQ,GAAG,EAAE,EAAE,GAAG,QAAQ,CAAC;IACnC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAC;IACjB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC;QAChD,SAAS,EAAE,QAAQ,CAAC,SAAS,IAAI,GAAG;QACpC,GAAG,QAAQ;KACX,CAAC,CAAC;IAEH,OAAO,MAAM,mBAAmB,CAC/B,IAAI,CAAC,OAAO,CAAC;QACZ,OAAO,EAAE,QAAQ;QACjB,GAAG,MAAM;KACT,CAAC,CACF,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"prepareOptions.test.js","sourceRoot":"","sources":["../../src/preparation/prepareOptions.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prepareOptions.test.js","sourceRoot":"","sources":["../../src/preparation/prepareOptions.test.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,16 @@
1
1
  import { BingoSystem } from "bingo-systems";
2
- import { AnyShape, InferredObject } from "../options.js";
3
2
  import { Creation } from "../types/creations.js";
4
3
  import { ProductionMode } from "../types/modes.js";
4
+ import { AnyShape, InferredObject } from "../types/shapes.js";
5
5
  import { Template } from "../types/templates.js";
6
6
  export interface ProduceTemplateSettings<OptionsShape extends AnyShape> extends Partial<BingoSystem> {
7
7
  mode?: ProductionMode;
8
8
  offline?: boolean;
9
9
  options: InferredObject<OptionsShape>;
10
10
  }
11
+ /**
12
+ * Runs a Template's produce(), along with a mode-specific producer if specified.
13
+ * @see {@link http://create.bingo/build/apis/produce-template}
14
+ */
11
15
  export declare function produceTemplate<OptionsShape extends AnyShape>(template: Template<OptionsShape>, settings: ProduceTemplateSettings<OptionsShape>): Promise<Partial<Creation>>;
12
16
  //# sourceMappingURL=produceTemplate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"produceTemplate.d.ts","sourceRoot":"","sources":["../../src/producers/produceTemplate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,MAAM,WAAW,uBAAuB,CAAC,YAAY,SAAS,QAAQ,CACrE,SAAQ,OAAO,CAAC,WAAW,CAAC;IAC5B,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;CACtC;AAED,wBAAsB,eAAe,CAAC,YAAY,SAAS,QAAQ,EAClE,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,EAChC,QAAQ,EAAE,uBAAuB,CAAC,YAAY,CAAC,GAC7C,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAmB5B"}
1
+ {"version":3,"file":"produceTemplate.d.ts","sourceRoot":"","sources":["../../src/producers/produceTemplate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,MAAM,WAAW,uBAAuB,CAAC,YAAY,SAAS,QAAQ,CACrE,SAAQ,OAAO,CAAC,WAAW,CAAC;IAC5B,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;CACtC;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,YAAY,SAAS,QAAQ,EAClE,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,EAChC,QAAQ,EAAE,uBAAuB,CAAC,YAAY,CAAC,GAC7C,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAe5B"}
@@ -1,18 +1,19 @@
1
- import { createSystemContextWithAuth } from "../contexts/createSystemContextWithAuth.js";
1
+ import { createSystemContext } from "../contexts/createSystemContext.js";
2
2
  import { mergeCreations } from "../mergers/mergeCreations.js";
3
+ /**
4
+ * Runs a Template's produce(), along with a mode-specific producer if specified.
5
+ * @see {@link http://create.bingo/build/apis/produce-template}
6
+ */
3
7
  export async function produceTemplate(template, settings) {
4
- const system = await createSystemContextWithAuth({
8
+ const system = createSystemContext({
5
9
  directory: ".",
6
10
  ...settings,
7
11
  });
8
- const context = {
9
- ...system,
10
- options: settings.options,
11
- };
12
- let creation = template.produce(context);
12
+ const context = { ...settings, ...system };
13
+ let creation = await template.produce(context);
13
14
  const augmenter = settings.mode && template[settings.mode];
14
15
  if (augmenter) {
15
- creation = mergeCreations(creation, augmenter(context));
16
+ creation = mergeCreations(creation, await augmenter(context));
16
17
  }
17
18
  return creation;
18
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"produceTemplate.js","sourceRoot":"","sources":["../../src/producers/produceTemplate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,2BAA2B,EAAE,MAAM,4CAA4C,CAAC;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAa9D,MAAM,CAAC,KAAK,UAAU,eAAe,CACpC,QAAgC,EAChC,QAA+C;IAE/C,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC;QAChD,SAAS,EAAE,GAAG;QACd,GAAG,QAAQ;KACX,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG;QACf,GAAG,MAAM;QACT,OAAO,EAAE,QAAQ,CAAC,OAAO;KACzB,CAAC;IAEF,IAAI,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAEzC,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC3D,IAAI,SAAS,EAAE,CAAC;QACf,QAAQ,GAAG,cAAc,CAAC,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"produceTemplate.js","sourceRoot":"","sources":["../../src/producers/produceTemplate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAa9D;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACpC,QAAgC,EAChC,QAA+C;IAE/C,MAAM,MAAM,GAAG,mBAAmB,CAAC;QAClC,SAAS,EAAE,GAAG;QACd,GAAG,QAAQ;KACX,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,MAAM,EAAE,CAAC;IAC3C,IAAI,QAAQ,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAE/C,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC3D,IAAI,SAAS,EAAE,CAAC;QACf,QAAQ,GAAG,cAAc,CAAC,QAAQ,EAAE,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC"}
@@ -30,8 +30,8 @@ const template = createTemplate({
30
30
  },
31
31
  });
32
32
  describe("produceTemplate", () => {
33
- it("runs the template's produce without augmentations when mode is undefined", () => {
34
- const creation = produceTemplate(template, {
33
+ it("runs the template's produce without augmentations when mode is undefined", async () => {
34
+ const creation = await produceTemplate(template, {
35
35
  options: { title: "Test Title" },
36
36
  });
37
37
  expect(creation).toEqual({
@@ -40,8 +40,8 @@ describe("produceTemplate", () => {
40
40
  },
41
41
  });
42
42
  });
43
- it("runs the template's produce and setup when mode is setup", () => {
44
- const creation = produceTemplate(template, {
43
+ it("runs the template's produce and setup when mode is setup", async () => {
44
+ const creation = await produceTemplate(template, {
45
45
  mode: "setup",
46
46
  options: { title: "Test Title" },
47
47
  });
@@ -52,8 +52,8 @@ describe("produceTemplate", () => {
52
52
  },
53
53
  });
54
54
  });
55
- it("runs the template's produce and transition when mode is transition", () => {
56
- const creation = produceTemplate(template, {
55
+ it("runs the template's produce and transition when mode is transition", async () => {
56
+ const creation = await produceTemplate(template, {
57
57
  mode: "transition",
58
58
  options: { title: "Test Title" },
59
59
  });