-
Notifications
You must be signed in to change notification settings - Fork 453
Expand file tree
/
Copy pathindex.ts
More file actions
32 lines (29 loc) · 1.64 KB
/
index.ts
File metadata and controls
32 lines (29 loc) · 1.64 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import { resolve } from 'node:path';
export const templates = {
// __dirname and __filename are defined only in CJS files
// If /integration becomes a module in the future, use these helpers:
// 'next-app-router': fileURLToPath(new URL('./next-app-router', import.meta.url)),
'next-app-router': resolve(__dirname, './next-app-router'),
'next-cache-components': resolve(__dirname, './next-cache-components'),
'next-app-router-quickstart': resolve(__dirname, './next-app-router-quickstart'),
'next-app-router-bundled-ui': resolve(__dirname, './next-app-router-bundled-ui'),
'next-app-router-quickstart-v6': resolve(__dirname, './next-app-router-quickstart-v6'),
'react-cra': resolve(__dirname, './react-cra'),
'react-vite': resolve(__dirname, './react-vite'),
'express-vite': resolve(__dirname, './express-vite'),
'elements-next': resolve(__dirname, './elements-next'),
'astro-node': resolve(__dirname, './astro-node'),
'astro-hybrid': resolve(__dirname, './astro-hybrid'),
'expo-web': resolve(__dirname, './expo-web'),
'tanstack-react-start': resolve(__dirname, './tanstack-react-start'),
'vue-vite': resolve(__dirname, './vue-vite'),
'nuxt-node': resolve(__dirname, './nuxt-node'),
'react-router-node': resolve(__dirname, './react-router-node'),
'react-router-library': resolve(__dirname, './react-router-library'),
'custom-flows-react-vite': resolve(__dirname, './custom-flows-react-vite'),
'vinext-app': resolve(__dirname, './vinext-app'),
} as const;
if (new Set([...Object.values(templates)]).size !== Object.values(templates).length) {
throw new Error('Duplicate template paths');
}
export type Template = keyof typeof templates;