@@ -16,7 +16,7 @@ import { createDefaultEnvironment } from './environment.js'
16
16
17
17
import type { PackageManager } from './package-manager.js'
18
18
import type { ToolChain } from './toolchain.js'
19
- import type { CliOptions , Framework } from './types.js'
19
+ import type { CliOptions , Framework , Mode , TemplateOptions } from './types.js'
20
20
21
21
export function cli ( {
22
22
name,
@@ -26,7 +26,7 @@ export function cli({
26
26
} : {
27
27
name : string
28
28
appName : string
29
- forcedMode ?: 'typescript' | 'javascript' | 'file-router'
29
+ forcedMode ?: Mode
30
30
forcedAddOns ?: Array < string >
31
31
} ) {
32
32
const program = new Command ( )
@@ -143,12 +143,12 @@ export function cli({
143
143
program . action ( async ( projectName : string , options : CliOptions ) => {
144
144
if ( options . listAddOns ) {
145
145
await listAddOns ( options , {
146
- forcedMode,
146
+ forcedMode : forcedMode as TemplateOptions ,
147
147
forcedAddOns,
148
148
} )
149
149
} else if ( options . mcp || options . mcpSse ) {
150
150
await runServer ( ! ! options . mcpSse , {
151
- forcedMode,
151
+ forcedMode : forcedMode as TemplateOptions ,
152
152
forcedAddOns,
153
153
appName,
154
154
} )
@@ -160,16 +160,20 @@ export function cli({
160
160
} as CliOptions
161
161
162
162
if ( forcedMode ) {
163
- cliOptions . template = forcedMode
163
+ cliOptions . template = forcedMode as TemplateOptions
164
164
}
165
165
166
- let finalOptions = await normalizeOptions ( cliOptions , forcedAddOns )
166
+ let finalOptions = await normalizeOptions (
167
+ cliOptions ,
168
+ forcedMode ,
169
+ forcedAddOns ,
170
+ )
167
171
if ( finalOptions ) {
168
172
intro ( `Creating a new ${ appName } app in ${ projectName } ...` )
169
173
} else {
170
174
intro ( `Let's configure your ${ appName } application` )
171
175
finalOptions = await promptForOptions ( cliOptions , {
172
- forcedMode,
176
+ forcedMode : forcedMode as TemplateOptions ,
173
177
forcedAddOns,
174
178
} )
175
179
}
0 commit comments