-
Notifications
You must be signed in to change notification settings - Fork 0
/
tsconfig.web.json
35 lines (35 loc) · 1.05 KB
/
tsconfig.web.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
{
// ? Shared tsconfig for frontend (app and package)
"$schema": "https://json.schemastore.org/tsconfig",
"compilerOptions": {
/* Emit */
"target": "ES2020",
"module": "ESNext",
"declaration": true,
// Ensure use `lf` like EOL on builded files
"newLine": "lf",
/* Module */
"moduleResolution": "Node",
"resolveJsonModule": true,
/* Interop */
"esModuleInterop": true,
"isolatedModules": true,
// TODO Enable when `moduleResolution` = `Bundler` instead `isolatedModules`
// "verbatimModuleSyntax": true,
"forceConsistentCasingInFileNames": true,
/* Linting */
"strict": true,
"skipLibCheck": true,
"noUnusedParameters": true,
"noFallthroughCasesInSwitch": true,
"allowJs": true,
/* Lib */
"lib": ["ES2020", "DOM", "DOM.Iterable"],
/* Required in Vue projects */
"jsx": "preserve",
"jsxImportSource": "vue",
// Default true when target are higher than `ES2022` (include ESnext)
"useDefineForClassFields": true,
"allowSyntheticDefaultImports": true
}
}