mirror of
https://github.com/luxfi/bridge.git
synced 2026-09-24 00:26:46 +00:00
TypeScript 7 is the native Go compiler and removes `baseUrl` and `moduleResolution: node|node10`. Both appear here, so `tsc` from TS7 refuses the config outright (TS5102 / TS5108) and cannot typecheck. `paths` targets resolve relative to `baseUrl` when it is set and relative to the tsconfig file otherwise. Every `baseUrl` folded here already pointed at the config's own directory, so dropping it moves nothing and the targets are left byte-identical. Where a baseUrl pointed elsewhere, each affected target was rewritten as join(baseUrl, target). `moduleResolution` was chosen from the declared `module`: commonjs -> node16, esnext/preserve -> bundler. Configs whose `module` is unset or exotic were left alone rather than guessed at. The result is accepted by BOTH toolchains, so nothing has to upgrade TypeScript in lockstep. Verified on hanzo/chat packages/api: tsc 5.9 779 -> 778 errors (no regression), and tsc 7.0.2 now runs the project in 2s where it previously refused the config. Co-authored-by: Hanzo Dev <[email protected]>
43 lines
2.1 KiB
JSON
43 lines
2.1 KiB
JSON
{
|
|
"compilerOptions": {
|
|
"ignoreDeprecations": "6.0", // Base directory for module resolution
|
|
"paths": {
|
|
"@/*": [
|
|
"./src/*"
|
|
] // Map "@/..." to "./src/..." for cleaner imports
|
|
},
|
|
"module": "NodeNext", // Ensures compatibility with moduleResolution: NodeNext
|
|
"moduleResolution": "NodeNext", // Required for modern Node.js ESM/CommonJS resolution
|
|
"target": "ES2022", // Use modern ECMAScript features
|
|
"lib": ["ES2022", "DOM", "DOM.Iterable"], // Include modern JavaScript and browser APIs
|
|
"allowSyntheticDefaultImports": true, // Compatibility for CommonJS/ESM interop
|
|
"esModuleInterop": true, // Allow default imports for CommonJS modules
|
|
"resolveJsonModule": true, // Enable importing JSON files
|
|
"strict": true, // Enable all strict type-checking options
|
|
"noImplicitAny": true, // Disallow variables of type `any` unless explicitly declared
|
|
"strictNullChecks": true, // Enforce strict nullability checks
|
|
"strictBindCallApply": true, // Check function bind, call, and apply methods strictly
|
|
"forceConsistentCasingInFileNames": true, // Ensure consistent file name casing
|
|
"skipLibCheck": true, // Skip type checking for type declaration files
|
|
"sourceMap": true, // Generate source maps for debugging
|
|
"outDir": "dist", // Specify output directory for compiled files
|
|
"rootDir": "./src", // Specify input directory to maintain structure in output
|
|
"noEmitOnError": true, // Prevent emitting files on compilation errors
|
|
"allowJs": true, // Allow importing JavaScript files
|
|
"checkJs": false, // Avoid type checking JavaScript files
|
|
"types": ["node"] // Include Node.js type definitions
|
|
},
|
|
"include": [
|
|
"src/**/*.ts", // Include all TypeScript files
|
|
"src/**/*.d.ts", // Include type declaration files
|
|
"src/**/*.tsx" // Include React TypeScript files if applicable
|
|
],
|
|
"exclude": [
|
|
"node_modules", // Exclude dependencies
|
|
"dist", // Exclude compiled output
|
|
"tests", // Optionally exclude test files from compilation
|
|
"**/*.test.ts", // Exclude test files matching this pattern
|
|
"**/*.spec.ts" // Exclude spec files matching this pattern
|
|
]
|
|
}
|