@zigrivers/scaffold 3.12.0 → 3.14.0
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/README.md +3 -3
- package/dist/cli/commands/adopt.d.ts.map +1 -1
- package/dist/cli/commands/adopt.js +8 -7
- package/dist/cli/commands/adopt.js.map +1 -1
- package/dist/cli/commands/adopt.serialization.test.js +8 -0
- package/dist/cli/commands/adopt.serialization.test.js.map +1 -1
- package/dist/cli/commands/adopt.test.js +8 -0
- package/dist/cli/commands/adopt.test.js.map +1 -1
- package/dist/cli/commands/build.d.ts.map +1 -1
- package/dist/cli/commands/build.js +191 -180
- package/dist/cli/commands/build.js.map +1 -1
- package/dist/cli/commands/build.test.js +1 -0
- package/dist/cli/commands/build.test.js.map +1 -1
- package/dist/cli/commands/complete.d.ts.map +1 -1
- package/dist/cli/commands/complete.js +16 -12
- package/dist/cli/commands/complete.js.map +1 -1
- package/dist/cli/commands/complete.test.js +14 -5
- package/dist/cli/commands/complete.test.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +120 -115
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/init.test.js +40 -4
- package/dist/cli/commands/init.test.js.map +1 -1
- package/dist/cli/commands/knowledge.test.js +1 -0
- package/dist/cli/commands/knowledge.test.js.map +1 -1
- package/dist/cli/commands/reset.d.ts.map +1 -1
- package/dist/cli/commands/reset.js +44 -40
- package/dist/cli/commands/reset.js.map +1 -1
- package/dist/cli/commands/reset.test.js +42 -20
- package/dist/cli/commands/reset.test.js.map +1 -1
- package/dist/cli/commands/rework.d.ts.map +1 -1
- package/dist/cli/commands/rework.js +16 -12
- package/dist/cli/commands/rework.js.map +1 -1
- package/dist/cli/commands/rework.test.js +12 -3
- package/dist/cli/commands/rework.test.js.map +1 -1
- package/dist/cli/commands/run.d.ts.map +1 -1
- package/dist/cli/commands/run.js +318 -298
- package/dist/cli/commands/run.js.map +1 -1
- package/dist/cli/commands/run.test.js +93 -120
- package/dist/cli/commands/run.test.js.map +1 -1
- package/dist/cli/commands/skip.d.ts.map +1 -1
- package/dist/cli/commands/skip.js +19 -15
- package/dist/cli/commands/skip.js.map +1 -1
- package/dist/cli/commands/skip.test.js +23 -11
- package/dist/cli/commands/skip.test.js.map +1 -1
- package/dist/cli/commands/update.d.ts.map +1 -1
- package/dist/cli/commands/update.js +3 -1
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/commands/update.test.js +8 -4
- package/dist/cli/commands/update.test.js.map +1 -1
- package/dist/cli/commands/version.d.ts.map +1 -1
- package/dist/cli/commands/version.js +3 -1
- package/dist/cli/commands/version.js.map +1 -1
- package/dist/cli/commands/version.test.js +9 -5
- package/dist/cli/commands/version.test.js.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +2 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/output/auto.d.ts +19 -6
- package/dist/cli/output/auto.d.ts.map +1 -1
- package/dist/cli/output/auto.js +10 -6
- package/dist/cli/output/auto.js.map +1 -1
- package/dist/cli/output/context.d.ts +23 -5
- package/dist/cli/output/context.d.ts.map +1 -1
- package/dist/cli/output/context.js.map +1 -1
- package/dist/cli/output/context.test.js +585 -0
- package/dist/cli/output/context.test.js.map +1 -1
- package/dist/cli/output/error-display.test.js +1 -0
- package/dist/cli/output/error-display.test.js.map +1 -1
- package/dist/cli/output/interactive.d.ts +20 -6
- package/dist/cli/output/interactive.d.ts.map +1 -1
- package/dist/cli/output/interactive.js +170 -59
- package/dist/cli/output/interactive.js.map +1 -1
- package/dist/cli/output/json.d.ts +19 -6
- package/dist/cli/output/json.d.ts.map +1 -1
- package/dist/cli/output/json.js +10 -6
- package/dist/cli/output/json.js.map +1 -1
- package/dist/cli/shutdown.d.ts +51 -0
- package/dist/cli/shutdown.d.ts.map +1 -0
- package/dist/cli/shutdown.js +199 -0
- package/dist/cli/shutdown.js.map +1 -0
- package/dist/cli/shutdown.test.d.ts +2 -0
- package/dist/cli/shutdown.test.d.ts.map +1 -0
- package/dist/cli/shutdown.test.js +316 -0
- package/dist/cli/shutdown.test.js.map +1 -0
- package/dist/core/assembly/overlay-state-resolver.test.js +1 -0
- package/dist/core/assembly/overlay-state-resolver.test.js.map +1 -1
- package/dist/e2e/game-pipeline.test.js +1 -0
- package/dist/e2e/game-pipeline.test.js.map +1 -1
- package/dist/e2e/init.test.js +6 -4
- package/dist/e2e/init.test.js.map +1 -1
- package/dist/e2e/project-type-overlays.test.js +1 -0
- package/dist/e2e/project-type-overlays.test.js.map +1 -1
- package/dist/state/lock-manager.d.ts +1 -0
- package/dist/state/lock-manager.d.ts.map +1 -1
- package/dist/state/lock-manager.js +1 -1
- package/dist/state/lock-manager.js.map +1 -1
- package/dist/wizard/copy/backend.d.ts +3 -0
- package/dist/wizard/copy/backend.d.ts.map +1 -0
- package/dist/wizard/copy/backend.js +49 -0
- package/dist/wizard/copy/backend.js.map +1 -0
- package/dist/wizard/copy/browser-extension.d.ts +3 -0
- package/dist/wizard/copy/browser-extension.d.ts.map +1 -0
- package/dist/wizard/copy/browser-extension.js +35 -0
- package/dist/wizard/copy/browser-extension.js.map +1 -0
- package/dist/wizard/copy/cli.d.ts +3 -0
- package/dist/wizard/copy/cli.d.ts.map +1 -0
- package/dist/wizard/copy/cli.js +40 -0
- package/dist/wizard/copy/cli.js.map +1 -0
- package/dist/wizard/copy/core.d.ts +3 -0
- package/dist/wizard/copy/core.d.ts.map +1 -0
- package/dist/wizard/copy/core.js +52 -0
- package/dist/wizard/copy/core.js.map +1 -0
- package/dist/wizard/copy/data-pipeline.d.ts +3 -0
- package/dist/wizard/copy/data-pipeline.d.ts.map +1 -0
- package/dist/wizard/copy/data-pipeline.js +66 -0
- package/dist/wizard/copy/data-pipeline.js.map +1 -0
- package/dist/wizard/copy/game.d.ts +3 -0
- package/dist/wizard/copy/game.d.ts.map +1 -0
- package/dist/wizard/copy/game.js +115 -0
- package/dist/wizard/copy/game.js.map +1 -0
- package/dist/wizard/copy/index.d.ts +8 -0
- package/dist/wizard/copy/index.d.ts.map +1 -0
- package/dist/wizard/copy/index.js +32 -0
- package/dist/wizard/copy/index.js.map +1 -0
- package/dist/wizard/copy/library.d.ts +3 -0
- package/dist/wizard/copy/library.d.ts.map +1 -0
- package/dist/wizard/copy/library.js +44 -0
- package/dist/wizard/copy/library.js.map +1 -0
- package/dist/wizard/copy/ml.d.ts +3 -0
- package/dist/wizard/copy/ml.d.ts.map +1 -0
- package/dist/wizard/copy/ml.js +45 -0
- package/dist/wizard/copy/ml.js.map +1 -0
- package/dist/wizard/copy/mobile-app.d.ts +3 -0
- package/dist/wizard/copy/mobile-app.d.ts.map +1 -0
- package/dist/wizard/copy/mobile-app.js +45 -0
- package/dist/wizard/copy/mobile-app.js.map +1 -0
- package/dist/wizard/copy/types.d.ts +60 -0
- package/dist/wizard/copy/types.d.ts.map +1 -0
- package/dist/wizard/copy/types.js +2 -0
- package/dist/wizard/copy/types.js.map +1 -0
- package/dist/wizard/copy/types.test-d.d.ts +2 -0
- package/dist/wizard/copy/types.test-d.d.ts.map +1 -0
- package/dist/wizard/copy/types.test-d.js +36 -0
- package/dist/wizard/copy/types.test-d.js.map +1 -0
- package/dist/wizard/copy/web-app.d.ts +3 -0
- package/dist/wizard/copy/web-app.d.ts.map +1 -0
- package/dist/wizard/copy/web-app.js +46 -0
- package/dist/wizard/copy/web-app.js.map +1 -0
- package/dist/wizard/questions.d.ts.map +1 -1
- package/dist/wizard/questions.js +87 -53
- package/dist/wizard/questions.js.map +1 -1
- package/dist/wizard/questions.test.js +3 -2
- package/dist/wizard/questions.test.js.map +1 -1
- package/dist/wizard/wizard.test.js +70 -0
- package/dist/wizard/wizard.test.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"questions.d.ts","sourceRoot":"","sources":["../../src/wizard/questions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAC7D,OAAO,KAAK,EACV,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EACpD,SAAS,EAAE,aAAa,EAAE,eAAe,EACzC,kBAAkB,EAAE,QAAQ,EAAE,sBAAsB,EACrD,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EACV,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAC5D,cAAc,EAAE,iBAAiB,EAAE,OAAO,EAAE,qBAAqB,EAClE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"questions.d.ts","sourceRoot":"","sources":["../../src/wizard/questions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAC7D,OAAO,KAAK,EACV,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EACpD,SAAS,EAAE,aAAa,EAAE,eAAe,EACzC,kBAAkB,EAAE,QAAQ,EAAE,sBAAsB,EACrD,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EACV,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAC5D,cAAc,EAAE,iBAAiB,EAAE,OAAO,EAAE,qBAAqB,EAClE,MAAM,YAAY,CAAA;AAInB,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAA;IACtC,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACxB,SAAS,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,GAAG,QAAQ,CAAC,CAAA;IACpD,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,kBAAkB,CAAC,EAAE,kBAAkB,CAAA;IACvC,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,sBAAsB,CAAC,EAAE,sBAAsB,CAAA;CAChD;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE;IAChD,MAAM,EAAE,aAAa,CAAA;IACrB,UAAU,EAAE,MAAM,GAAG,KAAK,CAAA;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,OAAO,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IAEjB,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,qBAAqB,CAAC,EAAE,qBAAqB,CAAA;CAC9C,GAAG,OAAO,CAAC,aAAa,CAAC,CA2lBzB"}
|
package/dist/wizard/questions.js
CHANGED
|
@@ -1,10 +1,18 @@
|
|
|
1
1
|
import { GameConfigSchema, ProjectTypeSchema } from '../config/schema.js';
|
|
2
|
+
import { coreCopy, getCopyForType, optionsFromCopy } from './copy/index.js';
|
|
2
3
|
/**
|
|
3
4
|
* Ask user the wizard questions interactively.
|
|
4
5
|
* In auto mode, use defaults immediately.
|
|
5
6
|
*/
|
|
6
7
|
export async function askWizardQuestions(options) {
|
|
7
8
|
const { output, suggestion, auto } = options;
|
|
9
|
+
let bannerShown = false;
|
|
10
|
+
function showBannerOnce() {
|
|
11
|
+
if (!bannerShown && !auto && output.supportsInteractivePrompts()) {
|
|
12
|
+
output.info('Tip: Type ? at any choice prompt to see help.');
|
|
13
|
+
bannerShown = true;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
8
16
|
// Methodology question (skip if --methodology was provided)
|
|
9
17
|
let methodology = suggestion;
|
|
10
18
|
if (options.methodology) {
|
|
@@ -12,7 +20,7 @@ export async function askWizardQuestions(options) {
|
|
|
12
20
|
}
|
|
13
21
|
else if (!auto) {
|
|
14
22
|
// In interactive mode, ask via OutputContext.prompt
|
|
15
|
-
const answer = await output.prompt(`Select methodology (deep/mvp/custom) [${suggestion}]:`, suggestion);
|
|
23
|
+
const answer = await output.prompt(`Select methodology (deep/mvp/custom) [${suggestion}]:`, suggestion, coreCopy.methodology);
|
|
16
24
|
if (['deep', 'mvp', 'custom'].includes(answer)) {
|
|
17
25
|
methodology = answer;
|
|
18
26
|
}
|
|
@@ -24,7 +32,7 @@ export async function askWizardQuestions(options) {
|
|
|
24
32
|
depth = options.depth;
|
|
25
33
|
}
|
|
26
34
|
else if (methodology === 'custom' && !auto) {
|
|
27
|
-
const depthStr = await output.prompt('Depth (1-5) [3]:', '3');
|
|
35
|
+
const depthStr = await output.prompt('Depth (1-5) [3]:', '3', coreCopy.depth);
|
|
28
36
|
const parsed = parseInt(depthStr);
|
|
29
37
|
if (parsed >= 1 && parsed <= 5)
|
|
30
38
|
depth = parsed;
|
|
@@ -36,10 +44,10 @@ export async function askWizardQuestions(options) {
|
|
|
36
44
|
}
|
|
37
45
|
else if (!auto) {
|
|
38
46
|
platforms = ['claude-code'];
|
|
39
|
-
const addCodex = await output.confirm('Include Codex adapter?', false);
|
|
47
|
+
const addCodex = await output.confirm('Include Codex adapter?', false, coreCopy.codexAdapter);
|
|
40
48
|
if (addCodex)
|
|
41
49
|
platforms.push('codex');
|
|
42
|
-
const addGemini = await output.confirm('Include Gemini adapter?', false);
|
|
50
|
+
const addGemini = await output.confirm('Include Gemini adapter?', false, coreCopy.geminiAdapter);
|
|
43
51
|
if (addGemini)
|
|
44
52
|
platforms.push('gemini');
|
|
45
53
|
}
|
|
@@ -53,10 +61,10 @@ export async function askWizardQuestions(options) {
|
|
|
53
61
|
}
|
|
54
62
|
else if (!auto) {
|
|
55
63
|
traits = [];
|
|
56
|
-
const isWeb = await output.confirm('Is this a web application?', false);
|
|
64
|
+
const isWeb = await output.confirm('Is this a web application?', false, coreCopy.webTrait);
|
|
57
65
|
if (isWeb)
|
|
58
66
|
traits.push('web');
|
|
59
|
-
const isMobile = await output.confirm('Is this a mobile application?', false);
|
|
67
|
+
const isMobile = await output.confirm('Is this a mobile application?', false, coreCopy.mobileTrait);
|
|
60
68
|
if (isMobile)
|
|
61
69
|
traits.push('mobile');
|
|
62
70
|
}
|
|
@@ -69,42 +77,48 @@ export async function askWizardQuestions(options) {
|
|
|
69
77
|
projectType = options.projectType;
|
|
70
78
|
}
|
|
71
79
|
else if (!auto) {
|
|
72
|
-
|
|
80
|
+
showBannerOnce();
|
|
81
|
+
const ptCopy = coreCopy.projectType;
|
|
82
|
+
const selected = await output.select('What type of project is this?', optionsFromCopy(ptCopy.options, [...ProjectTypeSchema.options]), 'web-app', ptCopy);
|
|
73
83
|
projectType = selected;
|
|
74
84
|
}
|
|
75
85
|
// Web-App configuration
|
|
76
86
|
let webAppConfig;
|
|
77
87
|
if (projectType === 'web-app') {
|
|
88
|
+
const copy = getCopyForType('web-app');
|
|
89
|
+
showBannerOnce();
|
|
78
90
|
if (auto && !options.webAppFlags?.webRendering) {
|
|
79
91
|
throw new Error('--web-rendering is required in auto mode for web-app projects');
|
|
80
92
|
}
|
|
81
93
|
const renderingStrategy = options.webAppFlags?.webRendering
|
|
82
|
-
?? await output.select('Rendering strategy?', ['spa', 'ssr', 'ssg', 'hybrid']);
|
|
94
|
+
?? await output.select('Rendering strategy?', optionsFromCopy(copy.renderingStrategy.options, ['spa', 'ssr', 'ssg', 'hybrid']), undefined, copy.renderingStrategy);
|
|
83
95
|
const deployTarget = options.webAppFlags?.webDeployTarget
|
|
84
96
|
?? (!auto
|
|
85
|
-
? await output.select('Deploy target?', ['static', 'serverless', 'container', 'edge', 'long-running'], 'serverless')
|
|
97
|
+
? await output.select('Deploy target?', optionsFromCopy(copy.deployTarget.options, ['static', 'serverless', 'container', 'edge', 'long-running']), 'serverless', copy.deployTarget)
|
|
86
98
|
: 'serverless');
|
|
87
99
|
const realtime = options.webAppFlags?.webRealtime
|
|
88
100
|
?? (!auto
|
|
89
|
-
? await output.select('Real-time needs?', ['none', 'websocket', 'sse'], 'none')
|
|
101
|
+
? await output.select('Real-time needs?', optionsFromCopy(copy.realtime.options, ['none', 'websocket', 'sse']), 'none', copy.realtime)
|
|
90
102
|
: 'none');
|
|
91
103
|
const authFlow = options.webAppFlags?.webAuthFlow
|
|
92
104
|
?? (!auto
|
|
93
|
-
? await output.select('How do users authenticate?', ['none', 'session', 'oauth', 'passkey'], 'none')
|
|
105
|
+
? await output.select('How do users authenticate?', optionsFromCopy(copy.authFlow.options, ['none', 'session', 'oauth', 'passkey']), 'none', copy.authFlow)
|
|
94
106
|
: 'none');
|
|
95
107
|
webAppConfig = { renderingStrategy, deployTarget, realtime, authFlow };
|
|
96
108
|
}
|
|
97
109
|
// Backend configuration
|
|
98
110
|
let backendConfig;
|
|
99
111
|
if (projectType === 'backend') {
|
|
112
|
+
const copy = getCopyForType('backend');
|
|
113
|
+
showBannerOnce();
|
|
100
114
|
if (auto && !options.backendFlags?.backendApiStyle) {
|
|
101
115
|
throw new Error('--backend-api-style is required in auto mode for backend projects');
|
|
102
116
|
}
|
|
103
117
|
const apiStyle = options.backendFlags?.backendApiStyle
|
|
104
|
-
?? await output.select('API style?', ['rest', 'graphql', 'grpc', 'trpc', 'none']);
|
|
118
|
+
?? await output.select('API style?', optionsFromCopy(copy.apiStyle.options, ['rest', 'graphql', 'grpc', 'trpc', 'none']), undefined, copy.apiStyle);
|
|
105
119
|
const dataStore = options.backendFlags?.backendDataStore
|
|
106
120
|
?? (!auto
|
|
107
|
-
? await output.multiSelect('Data store(s)?', ['relational', 'document', 'key-value'], ['relational'])
|
|
121
|
+
? await output.multiSelect('Data store(s)?', optionsFromCopy(copy.dataStore.options, ['relational', 'document', 'key-value']), ['relational'], copy.dataStore)
|
|
108
122
|
: ['relational']);
|
|
109
123
|
let authMechanism;
|
|
110
124
|
if (apiStyle === 'none') {
|
|
@@ -116,161 +130,179 @@ export async function askWizardQuestions(options) {
|
|
|
116
130
|
else {
|
|
117
131
|
authMechanism = options.backendFlags?.backendAuth
|
|
118
132
|
?? (!auto
|
|
119
|
-
? await output.select('How does the API verify requests?', ['none', 'jwt', 'session', 'oauth', 'apikey'], 'none')
|
|
133
|
+
? await output.select('How does the API verify requests?', optionsFromCopy(copy.authMechanism.options, ['none', 'jwt', 'session', 'oauth', 'apikey']), 'none', copy.authMechanism)
|
|
120
134
|
: 'none');
|
|
121
135
|
}
|
|
122
136
|
const asyncMessaging = options.backendFlags?.backendMessaging
|
|
123
137
|
?? (!auto
|
|
124
|
-
? await output.select('Async messaging?', ['none', 'queue', 'event-driven'], 'none')
|
|
138
|
+
? await output.select('Async messaging?', optionsFromCopy(copy.asyncMessaging.options, ['none', 'queue', 'event-driven']), 'none', copy.asyncMessaging)
|
|
125
139
|
: 'none');
|
|
126
140
|
const deployTarget = options.backendFlags?.backendDeployTarget
|
|
127
141
|
?? (!auto
|
|
128
|
-
? await output.select('Deploy target?', ['serverless', 'container', 'long-running'], 'container')
|
|
142
|
+
? await output.select('Deploy target?', optionsFromCopy(copy.deployTarget.options, ['serverless', 'container', 'long-running']), 'container', copy.deployTarget)
|
|
129
143
|
: 'container');
|
|
130
144
|
backendConfig = { apiStyle, dataStore, authMechanism, asyncMessaging, deployTarget };
|
|
131
145
|
}
|
|
132
146
|
// CLI configuration
|
|
133
147
|
let cliConfig;
|
|
134
148
|
if (projectType === 'cli') {
|
|
149
|
+
const copy = getCopyForType('cli');
|
|
150
|
+
showBannerOnce();
|
|
135
151
|
if (auto && !options.cliFlags?.cliInteractivity) {
|
|
136
152
|
throw new Error('--cli-interactivity is required in auto mode for cli projects');
|
|
137
153
|
}
|
|
138
154
|
const interactivity = options.cliFlags?.cliInteractivity
|
|
139
|
-
?? await output.select('Interactivity model?', ['args-only', 'interactive', 'hybrid']);
|
|
155
|
+
?? await output.select('Interactivity model?', optionsFromCopy(copy.interactivity.options, ['args-only', 'interactive', 'hybrid']), undefined, copy.interactivity);
|
|
140
156
|
const distributionChannels = options.cliFlags?.cliDistribution
|
|
141
157
|
?? (!auto
|
|
142
|
-
? await output.multiSelect('Distribution channels?',
|
|
158
|
+
? await output.multiSelect('Distribution channels?', optionsFromCopy(copy.distributionChannels.options, [
|
|
159
|
+
'package-manager', 'system-package-manager', 'standalone-binary', 'container',
|
|
160
|
+
]), ['package-manager'], copy.distributionChannels)
|
|
143
161
|
: ['package-manager']);
|
|
144
162
|
const hasStructuredOutput = options.cliFlags?.cliStructuredOutput
|
|
145
|
-
?? (!auto ? await output.confirm('Support structured output (--json)?', false) : false);
|
|
163
|
+
?? (!auto ? await output.confirm('Support structured output (--json)?', false, copy.hasStructuredOutput) : false);
|
|
146
164
|
cliConfig = { interactivity, distributionChannels, hasStructuredOutput };
|
|
147
165
|
}
|
|
148
166
|
// Library configuration
|
|
149
167
|
let libraryConfig;
|
|
150
168
|
if (projectType === 'library') {
|
|
169
|
+
const copy = getCopyForType('library');
|
|
170
|
+
showBannerOnce();
|
|
151
171
|
if (auto && !options.libraryFlags?.libVisibility) {
|
|
152
172
|
throw new Error('--lib-visibility is required in auto mode for library projects');
|
|
153
173
|
}
|
|
154
174
|
const visibility = options.libraryFlags?.libVisibility
|
|
155
|
-
?? await output.select('Library visibility?', ['public', 'internal']);
|
|
175
|
+
?? await output.select('Library visibility?', optionsFromCopy(copy.visibility.options, ['public', 'internal']), undefined, copy.visibility);
|
|
156
176
|
const runtimeTarget = options.libraryFlags?.libRuntimeTarget
|
|
157
177
|
?? (!auto
|
|
158
|
-
? await output.select('Runtime target?', ['node', 'browser', 'isomorphic', 'edge'], 'isomorphic')
|
|
178
|
+
? await output.select('Runtime target?', optionsFromCopy(copy.runtimeTarget.options, ['node', 'browser', 'isomorphic', 'edge']), 'isomorphic', copy.runtimeTarget)
|
|
159
179
|
: 'isomorphic');
|
|
160
180
|
const bundleFormat = options.libraryFlags?.libBundleFormat
|
|
161
181
|
?? (!auto
|
|
162
|
-
? await output.select('Bundle format?', ['esm', 'cjs', 'dual', 'unbundled'], 'dual')
|
|
182
|
+
? await output.select('Bundle format?', optionsFromCopy(copy.bundleFormat.options, ['esm', 'cjs', 'dual', 'unbundled']), 'dual', copy.bundleFormat)
|
|
163
183
|
: 'dual');
|
|
164
184
|
const hasTypeDefinitions = options.libraryFlags?.libTypeDefinitions
|
|
165
|
-
?? (!auto ? await output.confirm('Ship type definitions?', true) : true);
|
|
185
|
+
?? (!auto ? await output.confirm('Ship type definitions?', true, copy.hasTypeDefinitions) : true);
|
|
166
186
|
const documentationLevel = options.libraryFlags?.libDocLevel
|
|
167
187
|
?? (!auto
|
|
168
|
-
? await output.select('Documentation level?', ['none', 'readme', 'api-docs', 'full-site'], 'readme')
|
|
188
|
+
? await output.select('Documentation level?', optionsFromCopy(copy.documentationLevel.options, ['none', 'readme', 'api-docs', 'full-site']), 'readme', copy.documentationLevel)
|
|
169
189
|
: 'readme');
|
|
170
190
|
libraryConfig = { visibility, runtimeTarget, bundleFormat, hasTypeDefinitions, documentationLevel };
|
|
171
191
|
}
|
|
172
192
|
// Mobile-app configuration
|
|
173
193
|
let mobileAppConfig;
|
|
174
194
|
if (projectType === 'mobile-app') {
|
|
195
|
+
const copy = getCopyForType('mobile-app');
|
|
196
|
+
showBannerOnce();
|
|
175
197
|
if (auto && !options.mobileAppFlags?.mobilePlatform) {
|
|
176
198
|
throw new Error('--mobile-platform is required in auto mode for mobile-app projects');
|
|
177
199
|
}
|
|
178
200
|
const platform = options.mobileAppFlags?.mobilePlatform
|
|
179
|
-
?? await output.select('Target platform?', ['ios', 'android', 'cross-platform']);
|
|
201
|
+
?? await output.select('Target platform?', optionsFromCopy(copy.platform.options, ['ios', 'android', 'cross-platform']), undefined, copy.platform);
|
|
180
202
|
const distributionModel = options.mobileAppFlags?.mobileDistribution
|
|
181
203
|
?? (!auto
|
|
182
|
-
? await output.select('Distribution model?', ['public', 'private', 'mixed'], 'public')
|
|
204
|
+
? await output.select('Distribution model?', optionsFromCopy(copy.distributionModel.options, ['public', 'private', 'mixed']), 'public', copy.distributionModel)
|
|
183
205
|
: 'public');
|
|
184
206
|
const offlineSupport = options.mobileAppFlags?.mobileOffline
|
|
185
207
|
?? (!auto
|
|
186
|
-
? await output.select('Offline support?', ['none', 'cache', 'offline-first'], 'none')
|
|
208
|
+
? await output.select('Offline support?', optionsFromCopy(copy.offlineSupport.options, ['none', 'cache', 'offline-first']), 'none', copy.offlineSupport)
|
|
187
209
|
: 'none');
|
|
188
210
|
const hasPushNotifications = options.mobileAppFlags?.mobilePushNotifications
|
|
189
|
-
?? (!auto ? await output.confirm('Push notification support?', false) : false);
|
|
211
|
+
?? (!auto ? await output.confirm('Push notification support?', false, copy.hasPushNotifications) : false);
|
|
190
212
|
mobileAppConfig = { platform, distributionModel, offlineSupport, hasPushNotifications };
|
|
191
213
|
}
|
|
192
214
|
// Data pipeline configuration
|
|
193
215
|
let dataPipelineConfig;
|
|
194
216
|
if (projectType === 'data-pipeline') {
|
|
217
|
+
const copy = getCopyForType('data-pipeline');
|
|
218
|
+
showBannerOnce();
|
|
195
219
|
if (auto && !options.dataPipelineFlags?.pipelineProcessing) {
|
|
196
220
|
throw new Error('--pipeline-processing is required in auto mode for data-pipeline projects');
|
|
197
221
|
}
|
|
198
222
|
const processingModel = options.dataPipelineFlags?.pipelineProcessing
|
|
199
|
-
?? await output.select('Processing model?', ['batch', 'streaming', 'hybrid']);
|
|
223
|
+
?? await output.select('Processing model?', optionsFromCopy(copy.processingModel.options, ['batch', 'streaming', 'hybrid']), undefined, copy.processingModel);
|
|
200
224
|
const orchestration = options.dataPipelineFlags?.pipelineOrchestration
|
|
201
225
|
?? (!auto
|
|
202
|
-
? await output.select('Orchestration pattern?', ['none', 'dag-based', 'event-driven', 'scheduled'], 'none')
|
|
226
|
+
? await output.select('Orchestration pattern?', optionsFromCopy(copy.orchestration.options, ['none', 'dag-based', 'event-driven', 'scheduled']), 'none', copy.orchestration)
|
|
203
227
|
: 'none');
|
|
204
228
|
const dataQualityStrategy = options.dataPipelineFlags?.pipelineQuality
|
|
205
229
|
?? (!auto
|
|
206
|
-
? await output.select('Data quality strategy?', ['none', 'validation', 'testing', 'observability'], 'validation')
|
|
230
|
+
? await output.select('Data quality strategy?', optionsFromCopy(copy.dataQualityStrategy.options, ['none', 'validation', 'testing', 'observability']), 'validation', copy.dataQualityStrategy)
|
|
207
231
|
: 'validation');
|
|
208
232
|
const schemaManagement = options.dataPipelineFlags?.pipelineSchema
|
|
209
233
|
?? (!auto
|
|
210
|
-
? await output.select('Schema management?', ['none', 'schema-registry', 'contracts'], 'none')
|
|
234
|
+
? await output.select('Schema management?', optionsFromCopy(copy.schemaManagement.options, ['none', 'schema-registry', 'contracts']), 'none', copy.schemaManagement)
|
|
211
235
|
: 'none');
|
|
212
236
|
const hasDataCatalog = options.dataPipelineFlags?.pipelineCatalog
|
|
213
|
-
?? (!auto ? await output.confirm('Data catalog support?', false) : false);
|
|
237
|
+
?? (!auto ? await output.confirm('Data catalog support?', false, copy.hasDataCatalog) : false);
|
|
214
238
|
dataPipelineConfig = { processingModel, orchestration, dataQualityStrategy, schemaManagement, hasDataCatalog };
|
|
215
239
|
}
|
|
216
240
|
// ML configuration
|
|
217
241
|
let mlConfig;
|
|
218
242
|
if (projectType === 'ml') {
|
|
243
|
+
const copy = getCopyForType('ml');
|
|
244
|
+
showBannerOnce();
|
|
219
245
|
if (auto && !options.mlFlags?.mlPhase) {
|
|
220
246
|
throw new Error('--ml-phase is required in auto mode for ml projects');
|
|
221
247
|
}
|
|
222
248
|
const projectPhase = options.mlFlags?.mlPhase
|
|
223
|
-
?? await output.select('Project phase?', ['training', 'inference', 'both']);
|
|
249
|
+
?? await output.select('Project phase?', optionsFromCopy(copy.projectPhase.options, ['training', 'inference', 'both']), undefined, copy.projectPhase);
|
|
224
250
|
const modelType = options.mlFlags?.mlModelType
|
|
225
251
|
?? (!auto
|
|
226
|
-
? await output.select('Model type?', ['classical', 'deep-learning', 'llm'], 'deep-learning')
|
|
252
|
+
? await output.select('Model type?', optionsFromCopy(copy.modelType.options, ['classical', 'deep-learning', 'llm']), 'deep-learning', copy.modelType)
|
|
227
253
|
: 'deep-learning');
|
|
228
254
|
// Default serving pattern depends on project phase to satisfy schema constraints:
|
|
229
255
|
// training-only requires 'none', inference/both require non-'none'
|
|
230
256
|
const autoServingDefault = projectPhase === 'training' ? 'none' : 'realtime';
|
|
231
257
|
const servingPattern = options.mlFlags?.mlServing
|
|
232
258
|
?? (!auto
|
|
233
|
-
? await output.select('Serving pattern?', ['none', 'batch', 'realtime', 'edge'], autoServingDefault)
|
|
259
|
+
? await output.select('Serving pattern?', optionsFromCopy(copy.servingPattern.options, ['none', 'batch', 'realtime', 'edge']), autoServingDefault, copy.servingPattern)
|
|
234
260
|
: autoServingDefault);
|
|
235
261
|
const hasExperimentTracking = options.mlFlags?.mlExperimentTracking
|
|
236
|
-
?? (!auto ? await output.confirm('Experiment tracking?', true) : true);
|
|
262
|
+
?? (!auto ? await output.confirm('Experiment tracking?', true, copy.hasExperimentTracking) : true);
|
|
237
263
|
mlConfig = { projectPhase, modelType, servingPattern, hasExperimentTracking };
|
|
238
264
|
}
|
|
239
265
|
// Browser extension configuration
|
|
240
266
|
let browserExtensionConfig;
|
|
241
267
|
if (projectType === 'browser-extension') {
|
|
268
|
+
const copy = getCopyForType('browser-extension');
|
|
269
|
+
showBannerOnce();
|
|
242
270
|
const manifestVersion = options.browserExtensionFlags?.extManifest
|
|
243
271
|
?? (!auto
|
|
244
|
-
? await output.select('Manifest version?', ['2', '3'], '3')
|
|
272
|
+
? await output.select('Manifest version?', optionsFromCopy(copy.manifestVersion.options, ['2', '3']), '3', copy.manifestVersion)
|
|
245
273
|
: '3');
|
|
246
274
|
const uiSurfaces = options.browserExtensionFlags?.extUiSurfaces
|
|
247
275
|
?? (!auto
|
|
248
|
-
? await output.multiSelect('UI surfaces?', ['popup', 'options', 'newtab', 'devtools', 'sidepanel'], ['popup'])
|
|
276
|
+
? await output.multiSelect('UI surfaces?', optionsFromCopy(copy.uiSurfaces.options, ['popup', 'options', 'newtab', 'devtools', 'sidepanel']), ['popup'], copy.uiSurfaces)
|
|
249
277
|
: ['popup']);
|
|
250
278
|
const hasContentScript = options.browserExtensionFlags?.extContentScript
|
|
251
|
-
?? (!auto ? await output.confirm('Content script support?', false) : false);
|
|
279
|
+
?? (!auto ? await output.confirm('Content script support?', false, copy.hasContentScript) : false);
|
|
252
280
|
const hasBackgroundWorker = options.browserExtensionFlags?.extBackgroundWorker
|
|
253
|
-
?? (!auto ? await output.confirm('Background worker support?', true) : true);
|
|
281
|
+
?? (!auto ? await output.confirm('Background worker support?', true, copy.hasBackgroundWorker) : true);
|
|
254
282
|
browserExtensionConfig = { manifestVersion, uiSurfaces, hasContentScript, hasBackgroundWorker };
|
|
255
283
|
}
|
|
256
284
|
// Game config questions (only when projectType === 'game')
|
|
257
285
|
let gameConfig;
|
|
258
286
|
if (projectType === 'game') {
|
|
287
|
+
const copy = getCopyForType('game');
|
|
288
|
+
showBannerOnce();
|
|
259
289
|
const gf = options.gameFlags;
|
|
260
290
|
// Core questions — use flag if provided, else ask (or default in auto mode)
|
|
261
291
|
const engine = gf?.engine
|
|
262
292
|
?? (!auto
|
|
263
|
-
? await output.select('Game engine:', ['unity', 'unreal', 'godot', 'custom'])
|
|
293
|
+
? await output.select('Game engine:', optionsFromCopy(copy.engine.options, ['unity', 'unreal', 'godot', 'custom']), undefined, copy.engine)
|
|
264
294
|
: 'custom');
|
|
265
295
|
// Derive Zod defaults from engine (used for auto mode and advanced defaults)
|
|
266
296
|
const schemaDefaults = GameConfigSchema.parse({ engine });
|
|
267
297
|
const multiplayerMode = gf?.multiplayer
|
|
268
298
|
?? (!auto
|
|
269
|
-
? await output.select('Multiplayer mode:', ['none', 'local', 'online', 'hybrid'], 'none')
|
|
299
|
+
? await output.select('Multiplayer mode:', optionsFromCopy(copy.multiplayerMode.options, ['none', 'local', 'online', 'hybrid']), 'none', copy.multiplayerMode)
|
|
270
300
|
: schemaDefaults.multiplayerMode);
|
|
271
301
|
const targetPlatforms = gf?.targetPlatforms
|
|
272
302
|
?? (!auto
|
|
273
|
-
? await output.multiSelect('Target platforms:',
|
|
303
|
+
? await output.multiSelect('Target platforms:', optionsFromCopy(copy.targetPlatforms.options, [
|
|
304
|
+
'pc', 'web', 'ios', 'android', 'ps5', 'xbox', 'switch', 'vr', 'ar',
|
|
305
|
+
]), ['pc'], copy.targetPlatforms)
|
|
274
306
|
: schemaDefaults.targetPlatforms);
|
|
275
307
|
// Conditional follow-ups
|
|
276
308
|
let onlineServices;
|
|
@@ -278,18 +310,20 @@ export async function askWizardQuestions(options) {
|
|
|
278
310
|
onlineServices = gf.onlineServices;
|
|
279
311
|
}
|
|
280
312
|
else if ((multiplayerMode === 'online' || multiplayerMode === 'hybrid') && !auto) {
|
|
281
|
-
onlineServices = await output.multiSelect('Online services:', ['leaderboards', 'accounts', 'matchmaking', 'live-ops'], []);
|
|
313
|
+
onlineServices = await output.multiSelect('Online services:', optionsFromCopy(copy.onlineServices.options, ['leaderboards', 'accounts', 'matchmaking', 'live-ops']), [], copy.onlineServices);
|
|
282
314
|
}
|
|
283
315
|
else {
|
|
284
316
|
onlineServices = schemaDefaults.onlineServices;
|
|
285
317
|
}
|
|
286
318
|
const contentStructure = gf?.contentStructure
|
|
287
319
|
?? (!auto
|
|
288
|
-
? await output.select('Content structure:',
|
|
320
|
+
? await output.select('Content structure:', optionsFromCopy(copy.contentStructure.options, [
|
|
321
|
+
'discrete', 'open-world', 'procedural', 'endless', 'mission-based',
|
|
322
|
+
]), 'discrete', copy.contentStructure)
|
|
289
323
|
: schemaDefaults.contentStructure);
|
|
290
324
|
const economy = gf?.economy
|
|
291
325
|
?? (!auto
|
|
292
|
-
? await output.select('Economy model:', ['none', 'progression', 'monetized', 'both'], 'none')
|
|
326
|
+
? await output.select('Economy model:', optionsFromCopy(copy.economy.options, ['none', 'progression', 'monetized', 'both']), 'none', copy.economy)
|
|
293
327
|
: schemaDefaults.economy);
|
|
294
328
|
// Advanced options — defaults derived from Zod schema to prevent drift
|
|
295
329
|
let narrative = gf?.narrative ?? schemaDefaults.narrative;
|
|
@@ -301,23 +335,23 @@ export async function askWizardQuestions(options) {
|
|
|
301
335
|
const hasAdvancedFlag = gf?.narrative !== undefined || gf?.locales !== undefined ||
|
|
302
336
|
gf?.npcAi !== undefined || gf?.modding !== undefined || gf?.persistence !== undefined;
|
|
303
337
|
// Show advanced questions if: any advanced flag is set (force open), or user confirms
|
|
304
|
-
const showAdvanced = hasAdvancedFlag || (!auto && await output.confirm('Configure advanced game options?', false));
|
|
338
|
+
const showAdvanced = hasAdvancedFlag || (!auto && await output.confirm('Configure advanced game options?', false, coreCopy.advancedGameGate));
|
|
305
339
|
if (showAdvanced && !auto) {
|
|
306
340
|
// Ask each unflagged advanced question interactively
|
|
307
341
|
if (gf?.narrative === undefined) {
|
|
308
|
-
narrative = await output.select('Narrative depth:', ['none', 'light', 'heavy'], 'none');
|
|
342
|
+
narrative = await output.select('Narrative depth:', optionsFromCopy(copy.narrative.options, ['none', 'light', 'heavy']), 'none', copy.narrative);
|
|
309
343
|
}
|
|
310
344
|
if (gf?.locales === undefined) {
|
|
311
|
-
supportedLocales = await output.multiInput('Supported locales (comma-separated):', ['en']);
|
|
345
|
+
supportedLocales = await output.multiInput('Supported locales (comma-separated):', ['en'], copy.supportedLocales);
|
|
312
346
|
}
|
|
313
347
|
if (gf?.npcAi === undefined) {
|
|
314
|
-
npcAiComplexity = await output.select('NPC AI complexity:', ['none', 'simple', 'complex'], 'none');
|
|
348
|
+
npcAiComplexity = await output.select('NPC AI complexity:', optionsFromCopy(copy.npcAiComplexity.options, ['none', 'simple', 'complex']), 'none', copy.npcAiComplexity);
|
|
315
349
|
}
|
|
316
350
|
if (gf?.modding === undefined) {
|
|
317
|
-
hasModding = await output.confirm('Mod support?', false);
|
|
351
|
+
hasModding = await output.confirm('Mod support?', false, copy.hasModding);
|
|
318
352
|
}
|
|
319
353
|
if (gf?.persistence === undefined) {
|
|
320
|
-
persistence = await output.select('Persistence level:', ['none', 'settings-only', 'profile', 'progression', 'cloud'], 'progression');
|
|
354
|
+
persistence = await output.select('Persistence level:', optionsFromCopy(copy.persistence.options, ['none', 'settings-only', 'profile', 'progression', 'cloud']), 'progression', copy.persistence);
|
|
321
355
|
}
|
|
322
356
|
}
|
|
323
357
|
gameConfig = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"questions.js","sourceRoot":"","sources":["../../src/wizard/questions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"questions.js","sourceRoot":"","sources":["../../src/wizard/questions.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ function makeOutputContext() {
|
|
|
7
7
|
warn: vi.fn(),
|
|
8
8
|
error: vi.fn(),
|
|
9
9
|
result: vi.fn(),
|
|
10
|
+
supportsInteractivePrompts: vi.fn().mockReturnValue(false),
|
|
10
11
|
prompt: vi.fn().mockResolvedValue(''),
|
|
11
12
|
confirm: vi.fn(),
|
|
12
13
|
select: vi.fn().mockResolvedValue(''),
|
|
@@ -211,7 +212,7 @@ describe('askWizardQuestions', () => {
|
|
|
211
212
|
// engine, multiplayer, contentStructure, economy = 4 calls
|
|
212
213
|
expect(output.select).toHaveBeenCalledTimes(4);
|
|
213
214
|
// First select call should be engine, not projectType
|
|
214
|
-
expect(output.select).toHaveBeenNthCalledWith(1, 'Game engine:', ['unity'
|
|
215
|
+
expect(output.select).toHaveBeenNthCalledWith(1, 'Game engine:', expect.arrayContaining([expect.objectContaining({ value: 'unity' })]), undefined, expect.any(Object));
|
|
215
216
|
});
|
|
216
217
|
// --- Task 5: General flag-skip tests ---
|
|
217
218
|
it('--depth flag overrides depth for custom methodology', async () => {
|
|
@@ -323,7 +324,7 @@ describe('askWizardQuestions', () => {
|
|
|
323
324
|
// select called 3 times (multiplayer, contentStructure, economy) — engine was skipped
|
|
324
325
|
expect(output.select).toHaveBeenCalledTimes(3);
|
|
325
326
|
// First select call should be multiplayer, NOT engine
|
|
326
|
-
expect(output.select).toHaveBeenNthCalledWith(1, 'Multiplayer mode:', [
|
|
327
|
+
expect(output.select).toHaveBeenNthCalledWith(1, 'Multiplayer mode:', expect.arrayContaining([expect.objectContaining({ value: 'none' })]), 'none', expect.any(Object));
|
|
327
328
|
});
|
|
328
329
|
it('--multiplayer flag is used', async () => {
|
|
329
330
|
const output = makeOutputContext();
|