Repository navigation
Expand file tree
/
Copy pathtsconfig.app.json
More file actions
41 lines (38 loc) · 1.51 KB
/
Copy pathtsconfig.app.json
File metadata and controls
41 lines (38 loc) · 1.51 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
33
34
35
36
37
38
39
40
41
{
"compilerOptions": {
"tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
"target": "es2023",
"module": "esnext",
"lib": ["ES2023", "DOM"],
/* "node" is needed because $decoder-lib/ft/decoder.ts references
`process.env.NODE_ENV` (guarded by a `typeof window !== 'undefined'`
check for runtime safety, but still needs the ambient type at
compile time) — no code in this project's own src/ uses Node globals. */
"types": ["vite/client", "node"],
"allowArbitraryExtensions": true,
"skipLibCheck": true,
/* Bundler mode */
"moduleResolution": "bundler",
"allowImportingTsExtensions": true,
"moduleDetection": "force",
"noEmit": true,
"jsx": "preserve",
"jsxImportSource": "solid-js",
/* Path aliases — kept in sync with vite.config.ts's resolve.alias */
"paths": {
"@/*": ["./src/*"],
"$decoder-lib/*": ["./src/lib/*"]
},
/* Linting — noUnusedLocals/erasableSyntaxOnly/verbatimModuleSyntax
(create-vite's scaffold defaults) are dropped because $decoder-lib is
the shared framework-agnostic decoder core, written under its own
(looser) tsconfig — e.g. it uses real `enum`s, which
erasableSyntaxOnly forbids. These flags make sense for source
authored fresh in this project, not for code this project merely
consumes via a path alias. */
"noUnusedParameters": true,
"noFallthroughCasesInSwitch": true
},
"include": ["src"],
"exclude": ["src/**/__tests__/**"]
}