bingo 0.5.0 → 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 (130) hide show
  1. package/lib/cli/loggers/logHelpText.d.ts +1 -1
  2. package/lib/cli/loggers/logHelpText.d.ts.map +1 -1
  3. package/lib/cli/loggers/logSchemasHelpOptions.d.ts +1 -1
  4. package/lib/cli/loggers/logSchemasHelpOptions.d.ts.map +1 -1
  5. package/lib/cli/parseProcessArgv.d.ts +0 -23
  6. package/lib/cli/parseProcessArgv.d.ts.map +1 -1
  7. package/lib/cli/parseProcessArgv.js +1 -1
  8. package/lib/cli/parseProcessArgv.js.map +1 -1
  9. package/lib/cli/parsers/parseZodArgs.d.ts +1 -1
  10. package/lib/cli/parsers/parseZodArgs.d.ts.map +1 -1
  11. package/lib/cli/prompts/promptForDirectory.d.ts +1 -1
  12. package/lib/cli/prompts/promptForDirectory.d.ts.map +1 -1
  13. package/lib/cli/prompts/promptForDirectory.js +1 -1
  14. package/lib/cli/prompts/promptForDirectory.js.map +1 -1
  15. package/lib/cli/prompts/promptForDirectory.test.js +1 -1
  16. package/lib/cli/prompts/promptForDirectory.test.js.map +1 -1
  17. package/lib/cli/prompts/promptForOptionSchema.d.ts +3 -0
  18. package/lib/cli/prompts/promptForOptionSchema.d.ts.map +1 -0
  19. package/lib/cli/prompts/promptForOptionSchema.js +60 -0
  20. package/lib/cli/prompts/promptForOptionSchema.js.map +1 -0
  21. package/lib/cli/prompts/promptForOptionSchemas.d.ts +20 -0
  22. package/lib/cli/prompts/promptForOptionSchemas.d.ts.map +1 -0
  23. package/lib/cli/prompts/promptForOptionSchemas.js +38 -0
  24. package/lib/cli/prompts/promptForOptionSchemas.js.map +1 -0
  25. package/lib/cli/runBingoCLI.d.ts +4 -0
  26. package/lib/cli/runBingoCLI.d.ts.map +1 -1
  27. package/lib/cli/runBingoCLI.js +4 -0
  28. package/lib/cli/runBingoCLI.js.map +1 -1
  29. package/lib/cli/runCLI.d.ts +1 -1
  30. package/lib/cli/runCLI.d.ts.map +1 -1
  31. package/lib/cli/runTemplateCLI.d.ts +5 -1
  32. package/lib/cli/runTemplateCLI.d.ts.map +1 -1
  33. package/lib/cli/runTemplateCLI.js +4 -0
  34. package/lib/cli/runTemplateCLI.js.map +1 -1
  35. package/lib/cli/setup/runModeSetup.d.ts +1 -1
  36. package/lib/cli/setup/runModeSetup.d.ts.map +1 -1
  37. package/lib/cli/setup/runModeSetup.js +2 -2
  38. package/lib/cli/setup/runModeSetup.js.map +1 -1
  39. package/lib/cli/transition/runModeTransition.d.ts +1 -1
  40. package/lib/cli/transition/runModeTransition.d.ts.map +1 -1
  41. package/lib/cli/transition/runModeTransition.js +2 -2
  42. package/lib/cli/transition/runModeTransition.js.map +1 -1
  43. package/lib/cli/transition/runModeTransition.test.js +9 -9
  44. package/lib/cli/transition/runModeTransition.test.js.map +1 -1
  45. package/lib/config/createConfig.d.ts +0 -3
  46. package/lib/config/createConfig.d.ts.map +1 -1
  47. package/lib/config/createConfig.js +1 -3
  48. package/lib/config/createConfig.js.map +1 -1
  49. package/lib/config/tryImportConfig.d.ts +1 -1
  50. package/lib/config/tryImportConfig.d.ts.map +1 -1
  51. package/lib/config/types.d.ts +1 -7
  52. package/lib/config/types.d.ts.map +1 -1
  53. package/lib/contexts/createSystemContext.d.ts.map +1 -1
  54. package/lib/contexts/createSystemContext.js +1 -1
  55. package/lib/contexts/createSystemContext.js.map +1 -1
  56. package/lib/contexts/createSystemContext.test.js +18 -0
  57. package/lib/contexts/createSystemContext.test.js.map +1 -1
  58. package/lib/contexts/createTake.d.ts +3 -0
  59. package/lib/contexts/createTake.d.ts.map +1 -0
  60. package/lib/contexts/createTake.js +26 -0
  61. package/lib/contexts/createTake.js.map +1 -0
  62. package/lib/contexts/createTake.test.d.ts +2 -0
  63. package/lib/contexts/createTake.test.d.ts.map +1 -0
  64. package/lib/contexts/createTake.test.js +71 -0
  65. package/lib/contexts/createTake.test.js.map +1 -0
  66. package/lib/creators/createInput.d.ts +20 -1
  67. package/lib/creators/createInput.d.ts.map +1 -1
  68. package/lib/creators/createInput.js +4 -0
  69. package/lib/creators/createInput.js.map +1 -1
  70. package/lib/creators/createTemplate.d.ts +7 -1
  71. package/lib/creators/createTemplate.d.ts.map +1 -1
  72. package/lib/creators/createTemplate.js.map +1 -1
  73. package/lib/index.d.ts +2 -6
  74. package/lib/index.d.ts.map +1 -1
  75. package/lib/index.js +1 -5
  76. package/lib/index.js.map +1 -1
  77. package/lib/mergers/mergeCreatedDirectories.d.ts.map +1 -1
  78. package/lib/mergers/mergeCreatedDirectories.js.map +1 -1
  79. package/lib/mergers/mergeFileEntries.d.ts +1 -1
  80. package/lib/mergers/mergeFileEntries.d.ts.map +1 -1
  81. package/lib/mergers/mergeFileEntries.js.map +1 -1
  82. package/lib/options.d.ts +18 -9
  83. package/lib/options.d.ts.map +1 -1
  84. package/lib/options.js +2 -0
  85. package/lib/options.js.map +1 -1
  86. package/lib/predicates/isCreatedConfig.d.ts +7 -1
  87. package/lib/predicates/isCreatedConfig.d.ts.map +1 -1
  88. package/lib/predicates/isCreatedConfig.js.map +1 -1
  89. package/lib/predicates/isCreatedConfig.test.js +5 -6
  90. package/lib/predicates/isCreatedConfig.test.js.map +1 -1
  91. package/lib/preparation/prepareOptions.d.ts +14 -3
  92. package/lib/preparation/prepareOptions.d.ts.map +1 -1
  93. package/lib/preparation/prepareOptions.js +5 -0
  94. package/lib/preparation/prepareOptions.js.map +1 -1
  95. package/lib/preparation/prepareOptions.test.js.map +1 -1
  96. package/lib/producers/produceTemplate.d.ts +6 -2
  97. package/lib/producers/produceTemplate.d.ts.map +1 -1
  98. package/lib/producers/produceTemplate.js +7 -3
  99. package/lib/producers/produceTemplate.js.map +1 -1
  100. package/lib/producers/produceTemplate.test.js +6 -6
  101. package/lib/producers/produceTemplate.test.js.map +1 -1
  102. package/lib/runners/runInput.d.ts +1 -1
  103. package/lib/runners/runInput.d.ts.map +1 -1
  104. package/lib/runners/runTemplate.d.ts +1 -1
  105. package/lib/runners/runTemplate.d.ts.map +1 -1
  106. package/lib/runners/runTemplate.js +1 -1
  107. package/lib/runners/runTemplate.js.map +1 -1
  108. package/lib/shapes.d.ts +23 -0
  109. package/lib/shapes.d.ts.map +1 -0
  110. package/lib/shapes.js +4 -0
  111. package/lib/shapes.js.map +1 -0
  112. package/lib/types/about.d.ts +3 -0
  113. package/lib/types/about.d.ts.map +1 -1
  114. package/lib/types/creations.d.ts +29 -0
  115. package/lib/types/creations.d.ts.map +1 -1
  116. package/lib/types/inputs.d.ts +56 -7
  117. package/lib/types/inputs.d.ts.map +1 -1
  118. package/lib/types/modes.d.ts +4 -0
  119. package/lib/types/modes.d.ts.map +1 -1
  120. package/lib/types/options.d.ts +21 -0
  121. package/lib/types/options.d.ts.map +1 -1
  122. package/lib/types/shapes.d.ts +23 -0
  123. package/lib/types/shapes.d.ts.map +1 -0
  124. package/lib/types/shapes.js +4 -0
  125. package/lib/types/shapes.js.map +1 -0
  126. package/lib/types/system.d.ts +3 -2
  127. package/lib/types/system.d.ts.map +1 -1
  128. package/lib/types/templates.d.ts +84 -2
  129. package/lib/types/templates.d.ts.map +1 -1
  130. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"createConfig.d.ts","sourceRoot":"","sources":["../../src/config/createConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,WAAW,gBAAgB,CAChC,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;CACpB;AAED,wBAAgB,YAAY,CAC3B,YAAY,SAAS,QAAQ,GAAG,QAAQ,EACxC,QAAQ,SAAS,MAAM,GAAG,MAAM,EAEhC,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,EAChC,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAE,gBAAgB,CAAC,YAAY,EAAE,QAAQ,CAAM,GAClE,aAAa,CAAC,YAAY,CAAC,CAE7B"}
1
+ {"version":3,"file":"createConfig.d.ts","sourceRoot":"","sources":["../../src/config/createConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAIzD,MAAM,WAAW,gBAAgB,CAChC,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;CACpB"}
@@ -1,4 +1,2 @@
1
- export function createConfig(template, { options, settings } = {}) {
2
- return { options, settings, template };
3
- }
1
+ export {};
4
2
  //# sourceMappingURL=createConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createConfig.js","sourceRoot":"","sources":["../../src/config/createConfig.ts"],"names":[],"mappings":"AAYA,MAAM,UAAU,YAAY,CAI3B,QAAgC,EAChC,EAAE,OAAO,EAAE,QAAQ,KAA+C,EAAE;IAEpE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;AACxC,CAAC"}
1
+ {"version":3,"file":"createConfig.js","sourceRoot":"","sources":["../../src/config/createConfig.ts"],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- export declare function tryImportConfig(configFile: string): Promise<Error | import("./types.js").CreatedConfig<import("zod").ZodRawShape, object>>;
1
+ export declare function tryImportConfig(configFile: string): Promise<Error | import("../predicates/isCreatedConfig.js").CreatedConfig<import("zod").ZodRawShape, object>>;
2
2
  //# sourceMappingURL=tryImportConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tryImportConfig.d.ts","sourceRoot":"","sources":["../../src/config/tryImportConfig.ts"],"names":[],"mappings":"AAGA,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,0FAOvD"}
1
+ {"version":3,"file":"tryImportConfig.d.ts","sourceRoot":"","sources":["../../src/config/tryImportConfig.ts"],"names":[],"mappings":"AAGA,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,gHAOvD"}
@@ -1,8 +1,2 @@
1
- import { AnyShape, InferredObject } from "../options.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
- }
1
+ export {};
8
2
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"createSystemContext.d.ts","sourceRoot":"","sources":["../../src/contexts/createSystemContext.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,WAAW,EAKX,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAiB,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE5D,MAAM,WAAW,qBAAsB,SAAQ,OAAO,CAAC,WAAW,CAAC;IAClE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,qBAAqB;;;;;;;EAmBlE"}
1
+ {"version":3,"file":"createSystemContext.d.ts","sourceRoot":"","sources":["../../src/contexts/createSystemContext.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,WAAW,EAKX,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAiB,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE5D,MAAM,WAAW,qBAAsB,SAAQ,OAAO,CAAC,WAAW,CAAC;IAClE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,qBAAqB;;;;;;;EAoBlE"}
@@ -9,7 +9,7 @@ export function createSystemContext(settings) {
9
9
  fs: settings.fs ?? createWritingFileSystem(),
10
10
  runner: settings.runner ?? createSystemRunner(settings.directory),
11
11
  };
12
- const take = ((input, args) => input({ args, take, ...system }));
12
+ const take = ((input, args) => input({ args, offline: settings.offline, take, ...system }));
13
13
  return {
14
14
  ...system,
15
15
  directory: settings.directory,
@@ -1 +1 @@
1
- {"version":3,"file":"createSystemContext.js","sourceRoot":"","sources":["../../src/contexts/createSystemContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,oBAAoB,EACpB,2BAA2B,EAC3B,kBAAkB,EAClB,uBAAuB,GACvB,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,aAAa,EAAW,MAAM,oBAAoB,CAAC;AAS5D,MAAM,UAAU,mBAAmB,CAAC,QAA+B;IAClE,MAAM,MAAM,GAAgB;QAC3B,QAAQ,EACP,QAAQ,CAAC,QAAQ;YACjB,CAAC,QAAQ,CAAC,OAAO;gBAChB,CAAC,CAAC,2BAA2B,EAAE;gBAC/B,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QACnC,EAAE,EAAE,QAAQ,CAAC,EAAE,IAAI,uBAAuB,EAAE;QAC5C,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,kBAAkB,CAAC,QAAQ,CAAC,SAAS,CAAC;KACjE,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC,CAAc,CAAC;IAE9E,OAAO;QACN,GAAG,MAAM;QACT,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,aAAa,EAAE;QAC5C,IAAI;KACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"createSystemContext.js","sourceRoot":"","sources":["../../src/contexts/createSystemContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,oBAAoB,EACpB,2BAA2B,EAC3B,kBAAkB,EAClB,uBAAuB,GACvB,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,aAAa,EAAW,MAAM,oBAAoB,CAAC;AAS5D,MAAM,UAAU,mBAAmB,CAAC,QAA+B;IAClE,MAAM,MAAM,GAAgB;QAC3B,QAAQ,EACP,QAAQ,CAAC,QAAQ;YACjB,CAAC,QAAQ,CAAC,OAAO;gBAChB,CAAC,CAAC,2BAA2B,EAAE;gBAC/B,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QACnC,EAAE,EAAE,QAAQ,CAAC,EAAE,IAAI,uBAAuB,EAAE;QAC5C,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,kBAAkB,CAAC,QAAQ,CAAC,SAAS,CAAC;KACjE,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAC7B,KAAK,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC,CAAc,CAAC;IAE3E,OAAO;QACN,GAAG,MAAM;QACT,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,aAAa,EAAE;QAC5C,IAAI;KACJ,CAAC;AACH,CAAC"}
@@ -101,5 +101,23 @@ describe("createSystemContext", () => {
101
101
  expect(runner).toBe(mockSystemRunner);
102
102
  });
103
103
  });
104
+ describe("take", () => {
105
+ it("does not enable offline when settings.offline is not enabled", () => {
106
+ const input = vi.fn();
107
+ const { take } = createSystemContext({ directory: "." });
108
+ take(input);
109
+ expect(input).toHaveBeenCalledWith(expect.objectContaining({
110
+ offline: undefined,
111
+ }));
112
+ });
113
+ it("enables offline when settings.offline is true", () => {
114
+ const input = vi.fn();
115
+ const { take } = createSystemContext({ directory: ".", offline: true });
116
+ take(input);
117
+ expect(input).toHaveBeenCalledWith(expect.objectContaining({
118
+ offline: true,
119
+ }));
120
+ });
121
+ });
104
122
  });
105
123
  //# sourceMappingURL=createSystemContext.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createSystemContext.test.js","sourceRoot":"","sources":["../../src/contexts/createSystemContext.test.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,MAAM,mBAAmB,GAAG;IAC3B,OAAO,EAAE,SAAS;CAClB,CAAC;AAEF,MAAM,kBAAkB,GAAG;IAC1B,OAAO,EAAE,QAAQ;CACjB,CAAC;AAEF,MAAM,gBAAgB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;AAEjC,MAAM,qBAAqB,GAAG;IAC7B,aAAa,EAAE,EAAE,CAAC,EAAE,EAAE;IACtB,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE;IACjB,cAAc,EAAE,EAAE,CAAC,EAAE,EAAE;IACvB,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;CAClB,CAAC;AAEF,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE,CAAC,CAAC;IAC/B,oBAAoB,EAAE,GAAG,EAAE,CAAC,kBAAkB;IAC9C,2BAA2B,EAAE,GAAG,EAAE,CAAC,mBAAmB;IACtD,kBAAkB,EAAE,GAAG,EAAE,CAAC,gBAAgB;IAC1C,uBAAuB,EAAE,GAAG,EAAE,CAAC,qBAAqB;CACpD,CAAC,CAAC,CAAC;AAEJ,MAAM,WAAW,GAAG;IACnB,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;IACb,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;CACZ,CAAC;AAEF,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,GAAG,EAAE,CAAC,CAAC;IACpC,aAAa,EAAE,GAAG,EAAE,CAAC,WAAW;CAChC,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACpC,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;QACxB,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;YACnD,MAAM,QAAQ,GAAG;gBAChB,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;gBACb,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;aACZ,CAAC;YAEF,MAAM,EAAE,OAAO,EAAE,GAAG,mBAAmB,CAAC;gBACvC,SAAS,EAAE,GAAG;gBACd,OAAO,EAAE,QAAQ;aACjB,CAAC,CAAC;YAEH,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;YAChE,MAAM,EAAE,OAAO,EAAE,GAAG,mBAAmB,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;YAE5D,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;QACzB,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;YACpD,MAAM,QAAQ,GAAG;gBAChB,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;gBACd,OAAO,EAAE,EAAa;aACtB,CAAC;YAEF,MAAM,EAAE,QAAQ,EAAE,GAAG,mBAAmB,CAAC;gBACxC,SAAS,EAAE,GAAG;gBACd,QAAQ,EAAE,QAAQ;aAClB,CAAC,CAAC;YAEH,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;YAC/E,MAAM,EAAE,QAAQ,EAAE,GAAG,mBAAmB,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;YAE7D,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4EAA4E,EAAE,GAAG,EAAE;YACrF,MAAM,EAAE,QAAQ,EAAE,GAAG,mBAAmB,CAAC;gBACxC,SAAS,EAAE,GAAG;gBACd,OAAO,EAAE,IAAI;aACb,CAAC,CAAC;YAEH,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE;QACnB,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAC9C,MAAM,QAAQ,GAAG;gBAChB,aAAa,EAAE,EAAE,CAAC,EAAE,EAAE;gBACtB,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE;gBACjB,cAAc,EAAE,EAAE,CAAC,EAAE,EAAE;gBACvB,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;aAClB,CAAC;YAEF,MAAM,EAAE,EAAE,EAAE,GAAG,mBAAmB,CAAC;gBAClC,SAAS,EAAE,GAAG;gBACd,EAAE,EAAE,QAAQ;aACZ,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;YAChE,MAAM,EAAE,EAAE,EAAE,GAAG,mBAAmB,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;YAEvD,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;QACvB,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;YAClD,MAAM,QAAQ,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAEzB,MAAM,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAAC;gBACtC,SAAS,EAAE,GAAG;gBACd,MAAM,EAAE,QAAQ;aAChB,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;YACpE,MAAM,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;YAE3D,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"createSystemContext.test.js","sourceRoot":"","sources":["../../src/contexts/createSystemContext.test.ts"],"names":[],"mappings":"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"}
@@ -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,11 +1,7 @@
1
1
  export * from "./cli/runBingoCLI.js";
2
2
  export * from "./cli/runTemplateCLI.js";
3
- export * from "./config/createConfig.js";
4
- export type * from "./config/types.js";
5
3
  export * from "./creators/createInput.js";
6
4
  export * from "./creators/createTemplate.js";
7
- export * from "./mergers/applyMerger.js";
8
- export * from "./mergers/mergeCreations.js";
9
5
  export * from "./preparation/prepareOptions.js";
10
6
  export * from "./producers/produceTemplate.js";
11
7
  export * from "./runners/runCreation.js";
@@ -13,14 +9,14 @@ export * from "./runners/runInput.js";
13
9
  export * from "./runners/runTemplate.js";
14
10
  export * from "./contexts/createSystemContext.js";
15
11
  export * from "./contexts/createSystemContextWithAuth.js";
12
+ export * from "./mergers/mergeCreations.js";
16
13
  export * from "./runners/applyFilesToSystem.js";
17
14
  export * from "./utils/awaitLazyProperties.js";
18
- export type * from "./options.js";
19
15
  export type * from "./types/about.js";
20
16
  export type * from "./types/creations.js";
21
17
  export type * from "./types/inputs.js";
22
18
  export type * from "./types/modes.js";
23
19
  export type * from "./types/options.js";
24
- export type * from "./types/system.js";
20
+ export type * from "./types/shapes.js";
25
21
  export type * from "./types/templates.js";
26
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AAGxC,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,14 +1,9 @@
1
1
  // CLI
2
2
  export * from "./cli/runBingoCLI.js";
3
3
  export * from "./cli/runTemplateCLI.js";
4
- // Config
5
- export * from "./config/createConfig.js";
6
4
  // Creators
7
5
  export * from "./creators/createInput.js";
8
6
  export * from "./creators/createTemplate.js";
9
- // Mergers
10
- export * from "./mergers/applyMerger.js";
11
- export * from "./mergers/mergeCreations.js";
12
7
  // Preparation
13
8
  export * from "./preparation/prepareOptions.js";
14
9
  // Producers
@@ -20,6 +15,7 @@ export * from "./runners/runTemplate.js";
20
15
  // Runtime (Miscellaneous)
21
16
  export * from "./contexts/createSystemContext.js";
22
17
  export * from "./contexts/createSystemContextWithAuth.js";
18
+ export * from "./mergers/mergeCreations.js";
23
19
  export * from "./runners/applyFilesToSystem.js";
24
20
  export * from "./utils/awaitLazyProperties.js";
25
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,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AAExC,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"}