From f72562804d7a52a37392d510013f4db5f796d1e2 Mon Sep 17 00:00:00 2001 From: Matthew Raymer Date: Sun, 6 Apr 2025 06:58:14 +0000 Subject: [PATCH] feat: update TypeScript config for platform services - Add useDefineForClassFields for class field initialization - Remove test-playwright from includes - Add tsconfig.node.json reference - Remove redundant node_modules exclude --- tsconfig.json | 40 ++++++++++++++++++---------------------- 1 file changed, 18 insertions(+), 22 deletions(-) diff --git a/tsconfig.json b/tsconfig.json index b973a9d6..1eeeed49 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,35 +1,31 @@ { "compilerOptions": { "target": "ES2020", // Latest ECMAScript features that are widely supported by modern browsers + "useDefineForClassFields": true, "module": "ESNext", // Use ES modules - "strict": true, // Enable all strict type checking options + "lib": ["ES2020", "DOM", "DOM.Iterable"], + "skipLibCheck": true, + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "resolveJsonModule": true, + "isolatedModules": true, + "noEmit": true, "jsx": "preserve", // Preserves JSX to be transformed by Babel or another transpiler - "moduleResolution": "node", // Use Node.js style module resolution + "strict": true, // Enable all strict type checking options + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true, + "baseUrl": ".", "experimentalDecorators": true, - "esModuleInterop": true, // Enables compatibility with CommonJS modules for default imports - "allowSyntheticDefaultImports": true, // Allow default imports from modules with no default export - "forceConsistentCasingInFileNames": true, // Disallow inconsistently-cased references to the same file - "useDefineForClassFields": true, - "sourceMap": true, - "baseUrl": "./src", // Base directory to resolve non-relative module names "paths": { - "@/components/*": ["components/*"], - "@/views/*": ["views/*"], - "@/db/*": ["db/*"], - "@/libs/*": ["libs/*"], - "@/constants/*": ["constants/*"], - "@/store/*": ["store/*"] - }, - "lib": ["ES2020", "dom", "dom.iterable"], // Include typings for ES2020 and DOM APIs + "@/*": ["src/*"] + } }, "include": [ "src/**/*.ts", + "src/**/*.d.ts", "src/**/*.tsx", - "src/**/*.vue", - "test-playwright/**/*.ts", - "test-playwright/**/*.tsx" + "src/**/*.vue" ], - "exclude": [ - "node_modules" - ] + "references": [{ "path": "./tsconfig.node.json" }] }