Skip to content

Commit 2a358ad

Browse files
committed
feat: wire parseFlags into main() for non-interactive mode
1 parent 35fbf83 commit 2a358ad

1 file changed

Lines changed: 12 additions & 3 deletions

File tree

src/cli.ts

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -116,9 +116,18 @@ export async function dispatchSubcommand(argv: string[]): Promise<boolean> {
116116
async function main(): Promise<void> {
117117
clack.intro('create-pipedrive-app');
118118

119-
const nameOrPath = await promptProjectName(process.argv[2]);
120-
const database = await promptDatabase();
121-
const appExtensions = await promptAppExtensions();
119+
let flags: ReturnType<typeof parseFlags>;
120+
try {
121+
flags = parseFlags(process.argv);
122+
} catch (error) {
123+
clack.log.error(error instanceof Error ? error.message : String(error));
124+
process.exit(1);
125+
}
126+
127+
const positional = process.argv[2]?.startsWith('--') ? undefined : process.argv[2];
128+
const nameOrPath = flags.nameOrPath ?? (await promptProjectName(positional));
129+
const database = flags.database ?? (await promptDatabase());
130+
const appExtensions = flags.appExtensions ?? (await promptAppExtensions());
122131

123132
const outputDir = resolve(process.cwd(), nameOrPath);
124133
const projectName = basename(outputDir);

0 commit comments

Comments
 (0)