MCPcopy Create free account
hub / github.com/TanStack/cli / selectFramework

Function selectFramework

packages/cli/src/ui-prompts.ts:26–53  ·  view source on GitHub ↗
(
  frameworks: Array<Framework>,
  defaultFrameworkId?: string,
)

Source from the content-addressed store, hash-verified

24import type { Framework } from '@tanstack/create/dist/types/types.js'
25
26export async function selectFramework(
27 frameworks: Array<Framework>,
28 defaultFrameworkId?: string,
29): Promise<Framework> {
30 const initialValue =
31 (defaultFrameworkId &&
32 frameworks.find(
33 (f) => f.id.toLowerCase() === defaultFrameworkId.toLowerCase(),
34 )?.id) ||
35 frameworks[0].id
36
37 const selected = await select({
38 message: 'Select framework:',
39 options: frameworks.map((f) => ({ value: f.id, label: f.name })),
40 initialValue,
41 })
42
43 if (isCancel(selected)) {
44 cancel('Operation cancelled.')
45 process.exit(0)
46 }
47
48 const framework = frameworks.find((f) => f.id === selected)
49 if (!framework) {
50 throw new Error(`Unknown framework: ${selected}`)
51 }
52 return framework
53}
54
55export async function selectInstall(): Promise<boolean> {
56 const install = await confirm({

Callers 1

promptForCreateOptionsFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected