bingo 0.5.1 → 0.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cli/display/createClackDisplay.d.ts.map +1 -1
- package/lib/cli/display/createClackDisplay.js +3 -1
- package/lib/cli/display/createClackDisplay.js.map +1 -1
- package/lib/cli/importers/tryImportTemplate.d.ts +1 -1
- package/lib/cli/importers/tryImportTemplate.d.ts.map +1 -1
- package/lib/cli/loggers/logHelpText.d.ts +1 -1
- package/lib/cli/loggers/logHelpText.d.ts.map +1 -1
- package/lib/cli/loggers/logHelpText.js.map +1 -1
- package/lib/cli/loggers/logOutro.d.ts.map +1 -1
- package/lib/cli/loggers/logOutro.js +5 -1
- package/lib/cli/loggers/logOutro.js.map +1 -1
- package/lib/cli/loggers/logOutro.test.js +24 -8
- package/lib/cli/loggers/logOutro.test.js.map +1 -1
- package/lib/cli/loggers/logSchemasHelpOptions.js +1 -1
- package/lib/cli/loggers/logSchemasHelpOptions.js.map +1 -1
- package/lib/cli/loggers/logStartText.js +1 -1
- package/lib/cli/loggers/logStartText.js.map +1 -1
- package/lib/cli/loggers/logStartText.test.js +17 -11
- package/lib/cli/loggers/logStartText.test.js.map +1 -1
- package/lib/cli/prompts/promptForDirectory.d.ts +3 -3
- package/lib/cli/prompts/promptForDirectory.d.ts.map +1 -1
- package/lib/cli/prompts/promptForDirectory.js.map +1 -1
- package/lib/cli/prompts/promptForOptionSchemas.d.ts +1 -2
- package/lib/cli/prompts/promptForOptionSchemas.d.ts.map +1 -1
- package/lib/cli/prompts/promptForOptionSchemas.js +1 -7
- package/lib/cli/prompts/promptForOptionSchemas.js.map +1 -1
- package/lib/cli/runCLI.d.ts +3 -3
- package/lib/cli/runCLI.d.ts.map +1 -1
- package/lib/cli/runCLI.js.map +1 -1
- package/lib/cli/runTemplateCLI.d.ts +3 -1
- package/lib/cli/runTemplateCLI.d.ts.map +1 -1
- package/lib/cli/runTemplateCLI.js +2 -0
- package/lib/cli/runTemplateCLI.js.map +1 -1
- package/lib/cli/runTemplateCLI.test.js +1 -0
- package/lib/cli/runTemplateCLI.test.js.map +1 -1
- package/lib/cli/setup/createRepositoryOnGitHub.d.ts.map +1 -1
- package/lib/cli/setup/createRepositoryOnGitHub.js +15 -0
- package/lib/cli/setup/createRepositoryOnGitHub.js.map +1 -1
- package/lib/cli/setup/createRepositoryOnGitHub.test.js +20 -0
- package/lib/cli/setup/createRepositoryOnGitHub.test.js.map +1 -1
- package/lib/cli/setup/runModeSetup.d.ts +3 -3
- package/lib/cli/setup/runModeSetup.d.ts.map +1 -1
- package/lib/cli/setup/runModeSetup.js +16 -2
- package/lib/cli/setup/runModeSetup.js.map +1 -1
- package/lib/cli/transition/readConfigSettings.d.ts +5 -0
- package/lib/cli/transition/readConfigSettings.d.ts.map +1 -0
- package/lib/cli/transition/readConfigSettings.js +18 -0
- package/lib/cli/transition/readConfigSettings.js.map +1 -0
- package/lib/cli/transition/readConfigSettings.test.d.ts +2 -0
- package/lib/cli/transition/readConfigSettings.test.d.ts.map +1 -0
- package/lib/cli/transition/readConfigSettings.test.js +40 -0
- package/lib/cli/transition/readConfigSettings.test.js.map +1 -0
- package/lib/cli/transition/runModeTransition.d.ts +3 -3
- package/lib/cli/transition/runModeTransition.d.ts.map +1 -1
- package/lib/cli/transition/runModeTransition.js +26 -4
- package/lib/cli/transition/runModeTransition.js.map +1 -1
- package/lib/cli/transition/runModeTransition.test.js +42 -4
- package/lib/cli/transition/runModeTransition.test.js.map +1 -1
- package/lib/cli/transition/templateMismatchError.d.ts +4 -0
- package/lib/cli/transition/templateMismatchError.d.ts.map +1 -0
- package/lib/cli/transition/templateMismatchError.js +16 -0
- package/lib/cli/transition/templateMismatchError.js.map +1 -0
- package/lib/cli/transition/templateMismatchError.test.d.ts +2 -0
- package/lib/cli/transition/templateMismatchError.test.d.ts.map +1 -0
- package/lib/cli/transition/templateMismatchError.test.js +36 -0
- package/lib/cli/transition/templateMismatchError.test.js.map +1 -0
- package/lib/config/tryImportConfig.d.ts +1 -1
- package/lib/config/tryImportConfig.d.ts.map +1 -1
- package/lib/config/tryImportConfig.js +2 -2
- package/lib/config/tryImportConfig.js.map +1 -1
- package/lib/contexts/createDisplay.d.ts +2 -2
- package/lib/contexts/createDisplay.d.ts.map +1 -1
- package/lib/contexts/createSystemContextWithAuth.d.ts +1 -1
- package/lib/contexts/createSystemContextWithAuth.d.ts.map +1 -1
- package/lib/creators/createTemplate.d.ts +2 -2
- package/lib/creators/createTemplate.d.ts.map +1 -1
- package/lib/creators/createTemplate.js +3 -1
- package/lib/creators/createTemplate.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/mergers/mergeScripts.d.ts.map +1 -1
- package/lib/mergers/mergeScripts.js +8 -3
- package/lib/mergers/mergeScripts.js.map +1 -1
- package/lib/mergers/mergeScripts.test.js +66 -13
- package/lib/mergers/mergeScripts.test.js.map +1 -1
- package/lib/predicates/isCreatedConfig.d.ts +3 -8
- package/lib/predicates/isCreatedConfig.d.ts.map +1 -1
- package/lib/predicates/isCreatedConfig.js.map +1 -1
- package/lib/predicates/isCreatedConfig.test.js +1 -1
- package/lib/predicates/isCreatedConfig.test.js.map +1 -1
- package/lib/predicates/isTemplate.d.ts +2 -1
- package/lib/predicates/isTemplate.d.ts.map +1 -1
- package/lib/predicates/isTemplate.js.map +1 -1
- package/lib/predicates/isTemplateConfig.d.ts +4 -0
- package/lib/predicates/isTemplateConfig.d.ts.map +1 -0
- package/lib/predicates/isTemplateConfig.js +8 -0
- package/lib/predicates/isTemplateConfig.js.map +1 -0
- package/lib/predicates/isTemplateConfig.test.d.ts +2 -0
- package/lib/predicates/isTemplateConfig.test.d.ts.map +1 -0
- package/lib/predicates/isTemplateConfig.test.js +32 -0
- package/lib/predicates/isTemplateConfig.test.js.map +1 -0
- package/lib/preparation/prepareOptions.d.ts +4 -0
- package/lib/preparation/prepareOptions.d.ts.map +1 -1
- package/lib/preparation/prepareOptions.js +9 -1
- package/lib/preparation/prepareOptions.js.map +1 -1
- package/lib/producers/produceTemplate.d.ts +24 -2
- package/lib/producers/produceTemplate.d.ts.map +1 -1
- package/lib/producers/produceTemplate.js +2 -0
- package/lib/producers/produceTemplate.js.map +1 -1
- package/lib/runners/runTemplate.d.ts +31 -6
- package/lib/runners/runTemplate.d.ts.map +1 -1
- package/lib/runners/runTemplate.js +6 -0
- package/lib/runners/runTemplate.js.map +1 -1
- package/lib/types/configs.d.ts +40 -0
- package/lib/types/configs.d.ts.map +1 -0
- package/lib/types/configs.js +2 -0
- package/lib/types/configs.js.map +1 -0
- package/lib/types/options.d.ts +10 -0
- package/lib/types/options.d.ts.map +1 -1
- package/lib/types/templates.d.ts +42 -10
- package/lib/types/templates.d.ts.map +1 -1
- package/package.json +3 -3
- package/lib/cli/prompts/promptForOptions.d.ts +0 -20
- package/lib/cli/prompts/promptForOptions.d.ts.map +0 -1
- package/lib/cli/prompts/promptForOptions.js +0 -38
- package/lib/cli/prompts/promptForOptions.js.map +0 -1
- package/lib/cli/prompts/promptForSchema.d.ts +0 -3
- package/lib/cli/prompts/promptForSchema.d.ts.map +0 -1
- package/lib/cli/prompts/promptForSchema.js +0 -42
- package/lib/cli/prompts/promptForSchema.js.map +0 -1
- package/lib/config/createConfig.d.ts +0 -6
- package/lib/config/createConfig.d.ts.map +0 -1
- package/lib/config/createConfig.js +0 -2
- package/lib/config/createConfig.js.map +0 -1
- package/lib/config/types.d.ts +0 -2
- package/lib/config/types.d.ts.map +0 -1
- package/lib/config/types.js +0 -2
- package/lib/config/types.js.map +0 -1
- package/lib/contexts/createTake.d.ts +0 -3
- package/lib/contexts/createTake.d.ts.map +0 -1
- package/lib/contexts/createTake.js +0 -26
- package/lib/contexts/createTake.js.map +0 -1
- package/lib/contexts/createTake.test.d.ts +0 -2
- package/lib/contexts/createTake.test.d.ts.map +0 -1
- package/lib/contexts/createTake.test.js +0 -71
- package/lib/contexts/createTake.test.js.map +0 -1
- package/lib/options.d.ts +0 -23
- package/lib/options.d.ts.map +0 -1
- package/lib/options.js +0 -4
- package/lib/options.js.map +0 -1
- package/lib/shapes.d.ts +0 -23
- package/lib/shapes.d.ts.map +0 -1
- package/lib/shapes.js +0 -4
- package/lib/shapes.js.map +0 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as prompts from "@clack/prompts";
|
|
2
2
|
import chalk from "chalk";
|
|
3
3
|
import { createSystemContextWithAuth } from "../../contexts/createSystemContextWithAuth.js";
|
|
4
|
+
import { prepareOptions } from "../../preparation/prepareOptions.js";
|
|
4
5
|
import { runTemplate } from "../../runners/runTemplate.js";
|
|
5
6
|
import { clearLocalGitTags } from "../clearLocalGitTags.js";
|
|
6
7
|
import { createInitialCommit } from "../createInitialCommit.js";
|
|
@@ -31,15 +32,28 @@ export async function runModeSetup({ args, repository, directory: requestedDirec
|
|
|
31
32
|
}
|
|
32
33
|
const system = await createSystemContextWithAuth({
|
|
33
34
|
directory,
|
|
35
|
+
display,
|
|
34
36
|
offline,
|
|
35
37
|
});
|
|
38
|
+
const providedOptions = parseZodArgs(args, template.options);
|
|
39
|
+
const preparedOptions = await runSpinnerTask(display, "Inferring default options from system", "Inferred default options from system", async () => {
|
|
40
|
+
return await prepareOptions(template, {
|
|
41
|
+
...system,
|
|
42
|
+
existing: { ...providedOptions, directory },
|
|
43
|
+
offline,
|
|
44
|
+
});
|
|
45
|
+
});
|
|
46
|
+
if (preparedOptions instanceof Error) {
|
|
47
|
+
logRerunSuggestion(args, providedOptions);
|
|
48
|
+
return { error: preparedOptions, status: CLIStatus.Error };
|
|
49
|
+
}
|
|
36
50
|
const baseOptions = await promptForOptionSchemas(template, {
|
|
37
51
|
existing: {
|
|
38
52
|
directory,
|
|
39
53
|
repository: repository ?? directory,
|
|
40
|
-
...
|
|
54
|
+
...providedOptions,
|
|
55
|
+
...preparedOptions,
|
|
41
56
|
},
|
|
42
|
-
offline,
|
|
43
57
|
system,
|
|
44
58
|
});
|
|
45
59
|
if (baseOptions.cancelled) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runModeSetup.js","sourceRoot":"","sources":["../../../src/cli/setup/runModeSetup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,2BAA2B,EAAE,MAAM,+CAA+C,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAG3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"runModeSetup.js","sourceRoot":"","sources":["../../../src/cli/setup/runModeSetup.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { TemplateConfig } from "../../types/configs.js";
|
|
2
|
+
import { AnyShape } from "../../types/shapes.js";
|
|
3
|
+
import { Template } from "../../types/templates.js";
|
|
4
|
+
export declare function readConfigSettings<OptionsShape extends AnyShape, Refinements>(configFile: string | undefined, directory: string, template: Template<OptionsShape, Refinements>): Promise<Error | TemplateConfig<OptionsShape, Refinements> | undefined>;
|
|
5
|
+
//# sourceMappingURL=readConfigSettings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"readConfigSettings.d.ts","sourceRoot":"","sources":["../../../src/cli/transition/readConfigSettings.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGpD,wBAAsB,kBAAkB,CACvC,YAAY,SAAS,QAAQ,EAC7B,WAAW,EAEX,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC,0EAoB7C"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
import { tryImportConfig } from "../../config/tryImportConfig.js";
|
|
3
|
+
import { templateMismatchError } from "./templateMismatchError.js";
|
|
4
|
+
export async function readConfigSettings(configFile, directory, template) {
|
|
5
|
+
if (!configFile) {
|
|
6
|
+
return undefined;
|
|
7
|
+
}
|
|
8
|
+
const relativeConfigFile = path.join(process.cwd(), directory, configFile);
|
|
9
|
+
const contents = (await tryImportConfig(relativeConfigFile));
|
|
10
|
+
if (contents instanceof Error) {
|
|
11
|
+
return contents;
|
|
12
|
+
}
|
|
13
|
+
if (contents.template !== template) {
|
|
14
|
+
return templateMismatchError(contents.template, template);
|
|
15
|
+
}
|
|
16
|
+
return contents;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=readConfigSettings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"readConfigSettings.js","sourceRoot":"","sources":["../../../src/cli/transition/readConfigSettings.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAIlE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAIvC,UAA8B,EAC9B,SAAiB,EACjB,QAA6C;IAE7C,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAC3E,MAAM,QAAQ,GAAG,CAAC,MAAM,eAAe,CAAC,kBAAkB,CAAC,CAEf,CAAC;IAE7C,IAAI,QAAQ,YAAY,KAAK,EAAE,CAAC;QAC/B,OAAO,QAAQ,CAAC;IACjB,CAAC;IAED,IAAI,QAAQ,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACpC,OAAO,qBAAqB,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"readConfigSettings.test.d.ts","sourceRoot":"","sources":["../../../src/cli/transition/readConfigSettings.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { describe, expect, it, vi } from "vitest";
|
|
2
|
+
import { createTemplate } from "../../creators/createTemplate.js";
|
|
3
|
+
import { readConfigSettings } from "./readConfigSettings.js";
|
|
4
|
+
const mockTryImportConfig = vi.fn();
|
|
5
|
+
vi.mock("../../config/tryImportConfig.js", () => ({
|
|
6
|
+
get tryImportConfig() {
|
|
7
|
+
return mockTryImportConfig;
|
|
8
|
+
},
|
|
9
|
+
}));
|
|
10
|
+
const template = createTemplate({
|
|
11
|
+
produce: vi.fn(),
|
|
12
|
+
});
|
|
13
|
+
const templateOther = createTemplate({
|
|
14
|
+
produce: vi.fn(),
|
|
15
|
+
});
|
|
16
|
+
describe("readConfigSettings", () => {
|
|
17
|
+
it("returns undefined when configFile is undefined", async () => {
|
|
18
|
+
const actual = await readConfigSettings(undefined, ".", template);
|
|
19
|
+
expect(actual).toBeUndefined();
|
|
20
|
+
expect(mockTryImportConfig).not.toHaveBeenCalled();
|
|
21
|
+
});
|
|
22
|
+
it("returns the error when tryImportConfig resolves an error", async () => {
|
|
23
|
+
const error = new Error("Oh no!");
|
|
24
|
+
mockTryImportConfig.mockResolvedValueOnce(error);
|
|
25
|
+
const actual = await readConfigSettings("example.config.ts", ".", template);
|
|
26
|
+
expect(actual).toBe(error);
|
|
27
|
+
});
|
|
28
|
+
it("returns a mismatch error when the imported config has a different template than the provided one", async () => {
|
|
29
|
+
mockTryImportConfig.mockResolvedValueOnce(templateOther.createConfig());
|
|
30
|
+
const actual = await readConfigSettings("example.config.ts", ".", template);
|
|
31
|
+
expect(actual).toEqual(expect.any(Error));
|
|
32
|
+
});
|
|
33
|
+
it("returns a mismatch error when the imported config matches the provided template", async () => {
|
|
34
|
+
const config = template.createConfig();
|
|
35
|
+
mockTryImportConfig.mockResolvedValueOnce(config);
|
|
36
|
+
const actual = await readConfigSettings("example.config.ts", ".", template);
|
|
37
|
+
expect(actual).toBe(config);
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
//# sourceMappingURL=readConfigSettings.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"readConfigSettings.test.js","sourceRoot":"","sources":["../../../src/cli/transition/readConfigSettings.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,MAAM,mBAAmB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;AAEpC,EAAE,CAAC,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE,CAAC,CAAC;IACjD,IAAI,eAAe;QAClB,OAAO,mBAAmB,CAAC;IAC5B,CAAC;CACD,CAAC,CAAC,CAAC;AAEJ,MAAM,QAAQ,GAAG,cAAc,CAAC;IAC/B,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;CAChB,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,cAAc,CAAC;IACpC,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;CAChB,CAAC,CAAC;AAEH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,SAAS,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;QAElE,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QAC/B,MAAM,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;QACzE,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC;QAClC,mBAAmB,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAEjD,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,mBAAmB,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;QAE5E,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kGAAkG,EAAE,KAAK,IAAI,EAAE;QACjH,mBAAmB,CAAC,qBAAqB,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,CAAC;QAExE,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,mBAAmB,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;QAE5E,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;QAChG,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;QACvC,mBAAmB,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAElD,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,mBAAmB,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;QAE5E,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -2,7 +2,7 @@ import { AnyShape } from "../../types/shapes.js";
|
|
|
2
2
|
import { Template } from "../../types/templates.js";
|
|
3
3
|
import { ClackDisplay } from "../display/createClackDisplay.js";
|
|
4
4
|
import { ModeResults } from "../types.js";
|
|
5
|
-
export interface RunModeTransitionSettings<OptionsShape extends AnyShape> {
|
|
5
|
+
export interface RunModeTransitionSettings<OptionsShape extends AnyShape, Refinements> {
|
|
6
6
|
args: string[];
|
|
7
7
|
configFile: string | undefined;
|
|
8
8
|
directory?: string;
|
|
@@ -10,7 +10,7 @@ export interface RunModeTransitionSettings<OptionsShape extends AnyShape> {
|
|
|
10
10
|
from: string;
|
|
11
11
|
help?: boolean;
|
|
12
12
|
offline?: boolean;
|
|
13
|
-
template: Template<OptionsShape>;
|
|
13
|
+
template: Template<OptionsShape, Refinements>;
|
|
14
14
|
}
|
|
15
|
-
export declare function runModeTransition<OptionsShape extends AnyShape>({ args, configFile, directory, display, from, help, offline, template, }: RunModeTransitionSettings<OptionsShape>): Promise<ModeResults>;
|
|
15
|
+
export declare function runModeTransition<OptionsShape extends AnyShape, Refinements>({ args, configFile, directory, display, from, help, offline, template, }: RunModeTransitionSettings<OptionsShape, Refinements>): Promise<ModeResults>;
|
|
16
16
|
//# sourceMappingURL=runModeTransition.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runModeTransition.d.ts","sourceRoot":"","sources":["../../../src/cli/transition/runModeTransition.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runModeTransition.d.ts","sourceRoot":"","sources":["../../../src/cli/transition/runModeTransition.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGpD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAQhE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAK1C,MAAM,WAAW,yBAAyB,CACzC,YAAY,SAAS,QAAQ,EAC7B,WAAW;IAEX,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,YAAY,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;CAC9C;AAED,wBAAsB,iBAAiB,CACtC,YAAY,SAAS,QAAQ,EAC7B,WAAW,EACV,EACD,IAAI,EACJ,UAAU,EACV,SAAe,EACf,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,QAAQ,GACR,EAAE,yBAAyB,CAAC,YAAY,EAAE,WAAW,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAsH7E"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { createSystemContextWithAuth } from "../../contexts/createSystemContextWithAuth.js";
|
|
2
|
+
import { prepareOptions } from "../../preparation/prepareOptions.js";
|
|
2
3
|
import { runTemplate } from "../../runners/runTemplate.js";
|
|
3
4
|
import { clearLocalGitTags } from "../clearLocalGitTags.js";
|
|
4
5
|
import { createInitialCommit } from "../createInitialCommit.js";
|
|
@@ -11,6 +12,7 @@ import { promptForOptionSchemas } from "../prompts/promptForOptionSchemas.js";
|
|
|
11
12
|
import { CLIStatus } from "../status.js";
|
|
12
13
|
import { clearTemplateFiles } from "./clearTemplateFiles.js";
|
|
13
14
|
import { getForkedRepositoryLocator } from "./getForkedRepositoryLocator.js";
|
|
15
|
+
import { readConfigSettings } from "./readConfigSettings.js";
|
|
14
16
|
export async function runModeTransition({ args, configFile, directory = ".", display, from, help, offline, template, }) {
|
|
15
17
|
if (help) {
|
|
16
18
|
return logHelpText("transition", from, template);
|
|
@@ -19,6 +21,7 @@ export async function runModeTransition({ args, configFile, directory = ".", dis
|
|
|
19
21
|
logStartText("transition", from, transitionType, offline);
|
|
20
22
|
const system = await createSystemContextWithAuth({
|
|
21
23
|
directory,
|
|
24
|
+
display,
|
|
22
25
|
offline,
|
|
23
26
|
});
|
|
24
27
|
const repositoryLocator = template.about?.repository &&
|
|
@@ -29,11 +32,29 @@ export async function runModeTransition({ args, configFile, directory = ".", dis
|
|
|
29
32
|
await clearLocalGitTags(system.runner);
|
|
30
33
|
});
|
|
31
34
|
}
|
|
35
|
+
const providedOptions = parseZodArgs(args, template.options);
|
|
36
|
+
const loadedConfig = await readConfigSettings(configFile, directory, template);
|
|
37
|
+
if (loadedConfig instanceof Error) {
|
|
38
|
+
logRerunSuggestion(args, providedOptions);
|
|
39
|
+
return { error: loadedConfig, status: CLIStatus.Error };
|
|
40
|
+
}
|
|
41
|
+
const preparedOptions = await runSpinnerTask(display, "Inferring options from existing repository", "Inferred options from existing repository", async () => {
|
|
42
|
+
return await prepareOptions(template, {
|
|
43
|
+
...system,
|
|
44
|
+
existing: {
|
|
45
|
+
...loadedConfig?.options,
|
|
46
|
+
...providedOptions,
|
|
47
|
+
directory,
|
|
48
|
+
},
|
|
49
|
+
offline,
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
if (preparedOptions instanceof Error) {
|
|
53
|
+
logRerunSuggestion(args, providedOptions);
|
|
54
|
+
return { error: preparedOptions, status: CLIStatus.Error };
|
|
55
|
+
}
|
|
32
56
|
const baseOptions = await promptForOptionSchemas(template, {
|
|
33
|
-
existing: {
|
|
34
|
-
...parseZodArgs(args, template.options),
|
|
35
|
-
},
|
|
36
|
-
offline,
|
|
57
|
+
existing: { ...providedOptions, ...preparedOptions },
|
|
37
58
|
system,
|
|
38
59
|
});
|
|
39
60
|
if (baseOptions.cancelled) {
|
|
@@ -46,6 +67,7 @@ export async function runModeTransition({ args, configFile, directory = ".", dis
|
|
|
46
67
|
mode: "transition",
|
|
47
68
|
offline,
|
|
48
69
|
options: baseOptions.completed,
|
|
70
|
+
refinements: loadedConfig?.refinements,
|
|
49
71
|
}));
|
|
50
72
|
if (creation instanceof Error) {
|
|
51
73
|
logRerunSuggestion(args, baseOptions.prompted);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runModeTransition.js","sourceRoot":"","sources":["../../../src/cli/transition/runModeTransition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,+CAA+C,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAG3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"runModeTransition.js","sourceRoot":"","sources":["../../../src/cli/transition/runModeTransition.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,12 @@ vi.mock("@clack/prompts", () => ({
|
|
|
14
14
|
},
|
|
15
15
|
spinner: vi.fn(),
|
|
16
16
|
}));
|
|
17
|
+
const mockPrepareOptions = vi.fn();
|
|
18
|
+
vi.mock("../../preparation/prepareOptions.js", () => ({
|
|
19
|
+
get prepareOptions() {
|
|
20
|
+
return mockPrepareOptions;
|
|
21
|
+
},
|
|
22
|
+
}));
|
|
17
23
|
const mockRunTemplate = vi.fn();
|
|
18
24
|
vi.mock("../../runners/runTemplate.js", () => ({
|
|
19
25
|
get runTemplate() {
|
|
@@ -76,10 +82,10 @@ vi.mock("./getForkedRepositoryLocator.js", () => ({
|
|
|
76
82
|
return mockGetForkedRepositoryLocator;
|
|
77
83
|
},
|
|
78
84
|
}));
|
|
79
|
-
const
|
|
80
|
-
vi.mock("./
|
|
81
|
-
get
|
|
82
|
-
return
|
|
85
|
+
const mockReadConfigSettings = vi.fn();
|
|
86
|
+
vi.mock("./readConfigSettings.js", () => ({
|
|
87
|
+
get readConfigSettings() {
|
|
88
|
+
return mockReadConfigSettings;
|
|
83
89
|
},
|
|
84
90
|
}));
|
|
85
91
|
const display = {
|
|
@@ -120,6 +126,38 @@ describe("runModeTransition", () => {
|
|
|
120
126
|
expect(mockLogHelpText).toHaveBeenCalledWith("transition", from, template);
|
|
121
127
|
expect(mockLogStartText).not.toHaveBeenCalled();
|
|
122
128
|
});
|
|
129
|
+
it("returns the error when readConfigSettings resolves an error", async () => {
|
|
130
|
+
const error = new Error("Oh no!");
|
|
131
|
+
mockReadConfigSettings.mockResolvedValueOnce(error);
|
|
132
|
+
const actual = await runModeTransition({
|
|
133
|
+
args,
|
|
134
|
+
configFile: "example.config.ts",
|
|
135
|
+
display,
|
|
136
|
+
from,
|
|
137
|
+
template,
|
|
138
|
+
});
|
|
139
|
+
expect(actual).toEqual({
|
|
140
|
+
error,
|
|
141
|
+
status: CLIStatus.Error,
|
|
142
|
+
});
|
|
143
|
+
expect(mockLogRerunSuggestion).toHaveBeenCalledWith(args, {});
|
|
144
|
+
});
|
|
145
|
+
it("returns the error when prepareOptions throws an error", async () => {
|
|
146
|
+
const error = new Error("Oh no!");
|
|
147
|
+
mockPrepareOptions.mockRejectedValueOnce(error);
|
|
148
|
+
const actual = await runModeTransition({
|
|
149
|
+
args,
|
|
150
|
+
configFile: undefined,
|
|
151
|
+
display,
|
|
152
|
+
from,
|
|
153
|
+
template,
|
|
154
|
+
});
|
|
155
|
+
expect(actual).toEqual({
|
|
156
|
+
error,
|
|
157
|
+
status: CLIStatus.Error,
|
|
158
|
+
});
|
|
159
|
+
expect(mockLogRerunSuggestion).toHaveBeenCalledWith(args, {});
|
|
160
|
+
});
|
|
123
161
|
it("returns the cancellation when promptForOptions is cancelled", async () => {
|
|
124
162
|
mockPromptForOptionSchemas.mockResolvedValueOnce({
|
|
125
163
|
cancelled: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runModeTransition.test.js","sourceRoot":"","sources":["../../../src/cli/transition/runModeTransition.test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"runModeTransition.test.js","sourceRoot":"","sources":["../../../src/cli/transition/runModeTransition.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { AnyShape } from "../../types/shapes.js";
|
|
2
|
+
import { Template } from "../../types/templates.js";
|
|
3
|
+
export declare function templateMismatchError<OptionsShape extends AnyShape, Refinements>(fromConfig: Template<OptionsShape, Refinements>, running: Template<OptionsShape, Refinements>): Error;
|
|
4
|
+
//# sourceMappingURL=templateMismatchError.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"templateMismatchError.d.ts","sourceRoot":"","sources":["../../../src/cli/transition/templateMismatchError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAIpD,wBAAgB,qBAAqB,CACpC,YAAY,SAAS,QAAQ,EAC7B,WAAW,EAEX,UAAU,EAAE,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC,EAC/C,OAAO,EAAE,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC,SAoB5C"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
const anonymousName = "(anonymous)";
|
|
2
|
+
export function templateMismatchError(fromConfig, running) {
|
|
3
|
+
const fromConfigName = getTemplateName(fromConfig);
|
|
4
|
+
const runningName = getTemplateName(running);
|
|
5
|
+
if (fromConfigName !== runningName) {
|
|
6
|
+
return new Error(`Config file template ${fromConfigName} is not the same as running template ${runningName}.`);
|
|
7
|
+
}
|
|
8
|
+
if (fromConfigName === anonymousName) {
|
|
9
|
+
return new Error(`Config file and running template are mismatched and do not have identifying names.`);
|
|
10
|
+
}
|
|
11
|
+
return new Error(`Config file and running template have the same name, ${runningName}, but are not the same object. Are there multiple template versions?`);
|
|
12
|
+
}
|
|
13
|
+
function getTemplateName(template) {
|
|
14
|
+
return template.about?.name ?? anonymousName;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=templateMismatchError.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"templateMismatchError.js","sourceRoot":"","sources":["../../../src/cli/transition/templateMismatchError.ts"],"names":[],"mappings":"AAGA,MAAM,aAAa,GAAG,aAAa,CAAC;AAEpC,MAAM,UAAU,qBAAqB,CAIpC,UAA+C,EAC/C,OAA4C;IAE5C,MAAM,cAAc,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAE7C,IAAI,cAAc,KAAK,WAAW,EAAE,CAAC;QACpC,OAAO,IAAI,KAAK,CACf,wBAAwB,cAAc,wCAAwC,WAAW,GAAG,CAC5F,CAAC;IACH,CAAC;IAED,IAAI,cAAc,KAAK,aAAa,EAAE,CAAC;QACtC,OAAO,IAAI,KAAK,CACf,oFAAoF,CACpF,CAAC;IACH,CAAC;IAED,OAAO,IAAI,KAAK,CACf,wDAAwD,WAAW,sEAAsE,CACzI,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CACvB,QAA6C;IAE7C,OAAO,QAAQ,CAAC,KAAK,EAAE,IAAI,IAAI,aAAa,CAAC;AAC9C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"templateMismatchError.test.d.ts","sourceRoot":"","sources":["../../../src/cli/transition/templateMismatchError.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { describe, expect, it, vi } from "vitest";
|
|
2
|
+
import { createTemplate } from "../../creators/createTemplate.js";
|
|
3
|
+
import { templateMismatchError } from "./templateMismatchError.js";
|
|
4
|
+
const templateAnonymousA = createTemplate({
|
|
5
|
+
produce: vi.fn(),
|
|
6
|
+
});
|
|
7
|
+
const templateAnonymousB = createTemplate({
|
|
8
|
+
produce: vi.fn(),
|
|
9
|
+
});
|
|
10
|
+
const templateNamedA = createTemplate({
|
|
11
|
+
about: { name: "A" },
|
|
12
|
+
produce: vi.fn(),
|
|
13
|
+
});
|
|
14
|
+
const templateNamedB = createTemplate({
|
|
15
|
+
about: { name: "B" },
|
|
16
|
+
produce: vi.fn(),
|
|
17
|
+
});
|
|
18
|
+
describe("templateMismatchError", () => {
|
|
19
|
+
it("returns a fully named error when both templates have names", () => {
|
|
20
|
+
const actual = templateMismatchError(templateNamedA, templateNamedB);
|
|
21
|
+
expect(actual).toEqual(new Error(`Config file template A is not the same as running template B.`));
|
|
22
|
+
});
|
|
23
|
+
it("returns a fully anonymous error when both templates are anonymous", () => {
|
|
24
|
+
const actual = templateMismatchError(templateAnonymousA, templateAnonymousB);
|
|
25
|
+
expect(actual).toEqual(new Error(`Config file and running template are mismatched and do not have identifying names.`));
|
|
26
|
+
});
|
|
27
|
+
it("returns a mixed error when the config template is anonymous and the running template is named", () => {
|
|
28
|
+
const actual = templateMismatchError(templateAnonymousA, templateNamedB);
|
|
29
|
+
expect(actual).toEqual(new Error(`Config file template (anonymous) is not the same as running template B.`));
|
|
30
|
+
});
|
|
31
|
+
it("returns a mixed error when the config template is named and the running template is anonymous", () => {
|
|
32
|
+
const actual = templateMismatchError(templateNamedA, templateAnonymousB);
|
|
33
|
+
expect(actual).toEqual(new Error(`Config file template A is not the same as running template (anonymous).`));
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
//# sourceMappingURL=templateMismatchError.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"templateMismatchError.test.js","sourceRoot":"","sources":["../../../src/cli/transition/templateMismatchError.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,MAAM,kBAAkB,GAAG,cAAc,CAAC;IACzC,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;CAChB,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,cAAc,CAAC;IACzC,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;CAChB,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,cAAc,CAAC;IACrC,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE;IACpB,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;CAChB,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,cAAc,CAAC;IACrC,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE;IACpB,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;CAChB,CAAC,CAAC;AAEH,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACtC,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACrE,MAAM,MAAM,GAAG,qBAAqB,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;QAErE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CACrB,IAAI,KAAK,CACR,+DAA+D,CAC/D,CACD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC5E,MAAM,MAAM,GAAG,qBAAqB,CACnC,kBAAkB,EAClB,kBAAkB,CAClB,CAAC;QAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CACrB,IAAI,KAAK,CACR,oFAAoF,CACpF,CACD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+FAA+F,EAAE,GAAG,EAAE;QACxG,MAAM,MAAM,GAAG,qBAAqB,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;QAEzE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CACrB,IAAI,KAAK,CACR,yEAAyE,CACzE,CACD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+FAA+F,EAAE,GAAG,EAAE;QACxG,MAAM,MAAM,GAAG,qBAAqB,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;QAEzE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CACrB,IAAI,KAAK,CACR,yEAAyE,CACzE,CACD,CAAC;IACH,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare function tryImportConfig(configFile: string): Promise<Error | import("../
|
|
1
|
+
export declare function tryImportConfig(configFile: string): Promise<Error | import("../index.js").TemplateConfig<import("zod").ZodRawShape, unknown>>;
|
|
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,
|
|
1
|
+
{"version":3,"file":"tryImportConfig.d.ts","sourceRoot":"","sources":["../../src/config/tryImportConfig.ts"],"names":[],"mappings":"AAGA,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,6FAOvD"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { tryImportWithPredicate } from "../cli/tryImportWithPredicate.js";
|
|
2
|
-
import {
|
|
2
|
+
import { isTemplateConfig } from "../predicates/isTemplateConfig.js";
|
|
3
3
|
export async function tryImportConfig(configFile) {
|
|
4
|
-
return await tryImportWithPredicate(async (moduleName) => (await import(moduleName)), configFile,
|
|
4
|
+
return await tryImportWithPredicate(async (moduleName) => (await import(moduleName)), configFile, isTemplateConfig, "config from createConfig()");
|
|
5
5
|
}
|
|
6
6
|
//# sourceMappingURL=tryImportConfig.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tryImportConfig.js","sourceRoot":"","sources":["../../src/config/tryImportConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"tryImportConfig.js","sourceRoot":"","sources":["../../src/config/tryImportConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAErE,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,UAAkB;IACvD,OAAO,MAAM,sBAAsB,CAClC,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,UAAU,CAAC,CAAW,EAC1D,UAAU,EACV,gBAAgB,EAChB,4BAA4B,CAC5B,CAAC;AACH,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export interface Display {
|
|
2
|
-
item(group: string, id: string, item: Partial<DisplayItem>)
|
|
3
|
-
log(message: string)
|
|
2
|
+
item: (group: string, id: string, item: Partial<DisplayItem>) => void;
|
|
3
|
+
log: (message: string) => void;
|
|
4
4
|
}
|
|
5
5
|
export interface DisplayItem {
|
|
6
6
|
end?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createDisplay.d.ts","sourceRoot":"","sources":["../../src/contexts/createDisplay.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,OAAO;IACvB,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"createDisplay.d.ts","sourceRoot":"","sources":["../../src/contexts/createDisplay.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,OAAO;IACvB,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IACtE,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,WAAW;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,aAAa,IAAI,OAAO,CAWvC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SystemContextSettings } from "./createSystemContext.js";
|
|
2
|
-
export declare function createSystemContextWithAuth(settings: Pick<SystemContextSettings, "auth" | "directory" | "fetchers" | "offline">): Promise<{
|
|
2
|
+
export declare function createSystemContextWithAuth(settings: Pick<SystemContextSettings, "auth" | "directory" | "display" | "fetchers" | "offline">): Promise<{
|
|
3
3
|
directory: string;
|
|
4
4
|
display: import("./createDisplay.js").Display;
|
|
5
5
|
take: import("../index.js").TakeInput;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createSystemContextWithAuth.d.ts","sourceRoot":"","sources":["../../src/contexts/createSystemContextWithAuth.ts"],"names":[],"mappings":"AAEA,OAAO,EAEN,qBAAqB,EACrB,MAAM,0BAA0B,CAAC;AAElC,wBAAsB,2BAA2B,CAChD,QAAQ,EAAE,IAAI,CACb,qBAAqB,EACrB,MAAM,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"createSystemContextWithAuth.d.ts","sourceRoot":"","sources":["../../src/contexts/createSystemContextWithAuth.ts"],"names":[],"mappings":"AAEA,OAAO,EAEN,qBAAqB,EACrB,MAAM,0BAA0B,CAAC;AAElC,wBAAsB,2BAA2B,CAChD,QAAQ,EAAE,IAAI,CACb,qBAAqB,EACrB,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CACzD;;;;;;;GASD"}
|
|
@@ -6,6 +6,6 @@ import { Template, TemplateDefinition } from "../types/templates.js";
|
|
|
6
6
|
* @see {@link TemplateDefinition}
|
|
7
7
|
* @see {@link https://create.bingo/build/apis/create-template}
|
|
8
8
|
*/
|
|
9
|
-
export declare function createTemplate<OptionsShape extends AnyShape>(definition: TemplateDefinition<OptionsShape>): Template<OptionsShape>;
|
|
10
|
-
export declare function createTemplate(definition: TemplateDefinition<{}>): Template<{}>;
|
|
9
|
+
export declare function createTemplate<OptionsShape extends AnyShape, Refinements>(definition: TemplateDefinition<OptionsShape, Refinements>): Template<OptionsShape, Refinements>;
|
|
10
|
+
export declare function createTemplate<Customizations>(definition: TemplateDefinition<{}, Customizations>): Template<{}, Customizations>;
|
|
11
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,oBAAoB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAErE;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,YAAY,SAAS,QAAQ,
|
|
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,EAAE,WAAW,EACxE,UAAU,EAAE,kBAAkB,CAAC,YAAY,EAAE,WAAW,CAAC,GACvD,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;AACvC,wBAAgB,cAAc,CAAC,cAAc,EAC5C,UAAU,EAAE,kBAAkB,CAAC,EAAE,EAAE,cAAc,CAAC,GAChD,QAAQ,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createTemplate.js","sourceRoot":"","sources":["../../src/creators/createTemplate.ts"],"names":[],"mappings":"AAiBA,MAAM,UAAU,cAAc,CAC7B,
|
|
1
|
+
{"version":3,"file":"createTemplate.js","sourceRoot":"","sources":["../../src/creators/createTemplate.ts"],"names":[],"mappings":"AAiBA,MAAM,UAAU,cAAc,CAC7B,UAAyD;IAEzD,MAAM,QAAQ,GAAwC;QACrD,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,CAAC;QACnD,OAAO,EAAE,EAAkB;QAC3B,GAAG,UAAU;KACb,CAAC;IAEF,OAAO,QAAQ,CAAC;AACjB,CAAC"}
|
package/lib/index.d.ts
CHANGED
|
@@ -13,6 +13,7 @@ export * from "./mergers/mergeCreations.js";
|
|
|
13
13
|
export * from "./runners/applyFilesToSystem.js";
|
|
14
14
|
export * from "./utils/awaitLazyProperties.js";
|
|
15
15
|
export type * from "./types/about.js";
|
|
16
|
+
export type * from "./types/configs.js";
|
|
16
17
|
export type * from "./types/creations.js";
|
|
17
18
|
export type * from "./types/inputs.js";
|
|
18
19
|
export type * from "./types/modes.js";
|
package/lib/index.d.ts.map
CHANGED
|
@@ -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,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"}
|
|
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,oBAAoB,CAAC;AACxC,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,sBAAsB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mergeScripts.d.ts","sourceRoot":"","sources":["../../src/mergers/mergeScripts.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"mergeScripts.d.ts","sourceRoot":"","sources":["../../src/mergers/mergeScripts.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAA4B,MAAM,uBAAuB,CAAC;AAEhF,wBAAgB,YAAY,CAC3B,KAAK,EAAE,aAAa,EAAE,EACtB,MAAM,EAAE,aAAa,EAAE,GACrB,aAAa,EAAE,CA4DjB"}
|
|
@@ -2,14 +2,14 @@ import hashObject from "hash-object";
|
|
|
2
2
|
export function mergeScripts(first, second) {
|
|
3
3
|
const commandsByPhase = new Map();
|
|
4
4
|
const commandsWithoutPhase = [];
|
|
5
|
-
const
|
|
5
|
+
const nonSilentPhaseScripts = new Set();
|
|
6
6
|
for (const command of [...first, ...second]) {
|
|
7
7
|
if (typeof command === "string") {
|
|
8
8
|
commandsWithoutPhase.push(command);
|
|
9
9
|
continue;
|
|
10
10
|
}
|
|
11
11
|
if (!command.silent) {
|
|
12
|
-
|
|
12
|
+
nonSilentPhaseScripts.add(makeSilenceHash(command));
|
|
13
13
|
}
|
|
14
14
|
const byPhase = commandsByPhase.get(command.phase);
|
|
15
15
|
if (!byPhase) {
|
|
@@ -36,7 +36,9 @@ export function mergeScripts(first, second) {
|
|
|
36
36
|
.map((commands) => ({
|
|
37
37
|
commands,
|
|
38
38
|
phase,
|
|
39
|
-
...(!
|
|
39
|
+
...(!nonSilentPhaseScripts.has(makeSilenceHash({ commands, phase })) && {
|
|
40
|
+
silent: true,
|
|
41
|
+
}),
|
|
40
42
|
}))
|
|
41
43
|
.filter((phaseCommand) => {
|
|
42
44
|
const hash = hashObject(phaseCommand);
|
|
@@ -52,4 +54,7 @@ export function mergeScripts(first, second) {
|
|
|
52
54
|
function firstHasSameStart(first, second) {
|
|
53
55
|
return first.every((entry, i) => entry === second[i]);
|
|
54
56
|
}
|
|
57
|
+
function makeSilenceHash(command) {
|
|
58
|
+
return hashObject([command.phase, command.commands]);
|
|
59
|
+
}
|
|
55
60
|
//# sourceMappingURL=mergeScripts.js.map
|