-
Notifications
You must be signed in to change notification settings - Fork 2
/
tsconfig.json
48 lines (48 loc) · 1.42 KB
/
tsconfig.json
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "ts-node/node16/tsconfig.json",
"compilerOptions": {
// Import aliases
"baseUrl": ".",
"paths": {
"~/features/*": ["src/features/*"],
"~/svg/*": ["src/svg/*"],
"react": ["./node_modules/preact/compat/"],
"react-dom": ["./node_modules/preact/compat/"]
},
// Enable top-level await, and other modern ESM features
"target": "ESNext",
"module": "ESNext",
// Enable node-style module resolution, for things like npm package imports
"moduleResolution": "node",
// Enable JSON imports
"resolveJsonModule": true,
// Enable stricter transpilation for better output
"isolatedModules": true,
// Astro will directly run your TypeScript code, no transpilation needed
"noEmit": true,
// Enable strict type checking
"strict": true,
// Error when a value import is only used as a type
"importsNotUsedAsValues": "error",
// Preact integration
"lib": ["es2021", "dom"],
"esModuleInterop": true,
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true,
"jsx": "react-jsx",
"jsxImportSource": "preact",
"types": ["preact"]
},
"ts-node": {
// It is faster to skip typechecking
"transpileOnly": true,
"files": true,
"esm": true,
"compilerOptions": {
"target": "ESNext",
"module": "ESNext",
"esModuleInterop": true
}
}
}