diff --git a/apps/web/package.json b/apps/web/package.json index fd9d0825..eb37dffe 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -26,7 +26,7 @@ "dev": "vite", "dev:https": "USE_HTTPS=true vite", "test": "vitest", - "typecheck": "pnpm run tsc --noEmit", + "typecheck": "tsc -p tsconfig.json --noEmit", "preview": "vite preview", "docker:build": "docker build -t meshtastic-web:latest -f ./infra/Containerfile .", "package": "gzipper c -i html,js,css,png,ico,svg,json,webmanifest,txt dist dist/output && tar -cvf dist/build.tar -C ./dist/output/ ." @@ -119,7 +119,7 @@ "tailwindcss-animate": "^1.0.7", "tar": "^7.5.16", "testing-library": "^0.0.2", - "typescript": "^5.9.3", + "typescript": "^6.0.3", "vitest": "^4.1.8" } } diff --git a/apps/web/tsconfig.json b/apps/web/tsconfig.json index 24c8a33f..ec721f88 100644 --- a/apps/web/tsconfig.json +++ b/apps/web/tsconfig.json @@ -3,16 +3,13 @@ "compilerOptions": { "noUnusedLocals": true, "noUnusedParameters": true, - "strictNullChecks": true, "strictPropertyInitialization": false, - "allowImportingTsExtensions": true, "types": [ "vite/client", "node", "@types/w3c-web-serial", "@types/web-bluetooth" ], - "baseUrl": ".", "paths": { "@app/*": ["./src/*"], "@public/*": ["./public/*"], diff --git a/package.json b/package.json index 0e837538..1a964d58 100644 --- a/package.json +++ b/package.json @@ -47,7 +47,7 @@ "oxfmt": "^0.16.0", "oxlint": "^1.69.0", "tsdown": "^0.15.0", - "typescript": "^5.9.2", + "typescript": "^6.0.3", "vitest": "^4.1.8" }, "packageManager": "pnpm@11.5.2" diff --git a/packages/sdk-react/tsconfig.json b/packages/sdk-react/tsconfig.json index f178894f..b0191793 100644 --- a/packages/sdk-react/tsconfig.json +++ b/packages/sdk-react/tsconfig.json @@ -1,14 +1,4 @@ { "extends": "../../tsconfig.base.json", - "compilerOptions": { - "module": "ESNext", - "target": "ES2020", - "declaration": true, - "outDir": "./dist", - "moduleResolution": "bundler", - "emitDeclarationOnly": false, - "esModuleInterop": true, - "jsx": "react-jsx" - }, "include": ["mod.ts", "src"] } diff --git a/packages/sdk-storage-sqlocal/tsconfig.json b/packages/sdk-storage-sqlocal/tsconfig.json index e9510d0d..b0191793 100644 --- a/packages/sdk-storage-sqlocal/tsconfig.json +++ b/packages/sdk-storage-sqlocal/tsconfig.json @@ -1,13 +1,4 @@ { "extends": "../../tsconfig.base.json", - "compilerOptions": { - "module": "ESNext", - "target": "ES2020", - "declaration": true, - "outDir": "./dist", - "moduleResolution": "bundler", - "emitDeclarationOnly": false, - "esModuleInterop": true - }, "include": ["mod.ts", "src"] } diff --git a/packages/sdk/tsconfig.json b/packages/sdk/tsconfig.json index e9510d0d..b0191793 100644 --- a/packages/sdk/tsconfig.json +++ b/packages/sdk/tsconfig.json @@ -1,13 +1,4 @@ { "extends": "../../tsconfig.base.json", - "compilerOptions": { - "module": "ESNext", - "target": "ES2020", - "declaration": true, - "outDir": "./dist", - "moduleResolution": "bundler", - "emitDeclarationOnly": false, - "esModuleInterop": true - }, "include": ["mod.ts", "src"] } diff --git a/packages/transport-http/tsconfig.json b/packages/transport-http/tsconfig.json index cdfcb37f..564a5990 100644 --- a/packages/transport-http/tsconfig.json +++ b/packages/transport-http/tsconfig.json @@ -1,13 +1,4 @@ { - "extends": "../../tsconfig.json", - "compilerOptions": { - "module": "ESNext", - "target": "ES2020", - "declaration": true, - "outDir": "./dist", - "moduleResolution": "bundler", - "emitDeclarationOnly": false, - "esModuleInterop": true - }, + "extends": "../../tsconfig.base.json", "include": ["src"] } diff --git a/packages/transport-node-serial/tsconfig.json b/packages/transport-node-serial/tsconfig.json index cdfcb37f..374bac55 100644 --- a/packages/transport-node-serial/tsconfig.json +++ b/packages/transport-node-serial/tsconfig.json @@ -1,13 +1,7 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { - "module": "ESNext", - "target": "ES2020", - "declaration": true, - "outDir": "./dist", - "moduleResolution": "bundler", - "emitDeclarationOnly": false, - "esModuleInterop": true + "types": ["node"] }, "include": ["src"] } diff --git a/packages/transport-node/tsconfig.json b/packages/transport-node/tsconfig.json index cdfcb37f..374bac55 100644 --- a/packages/transport-node/tsconfig.json +++ b/packages/transport-node/tsconfig.json @@ -1,13 +1,7 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { - "module": "ESNext", - "target": "ES2020", - "declaration": true, - "outDir": "./dist", - "moduleResolution": "bundler", - "emitDeclarationOnly": false, - "esModuleInterop": true + "types": ["node"] }, "include": ["src"] } diff --git a/packages/transport-web-bluetooth/tsconfig.json b/packages/transport-web-bluetooth/tsconfig.json index d810b128..47154800 100644 --- a/packages/transport-web-bluetooth/tsconfig.json +++ b/packages/transport-web-bluetooth/tsconfig.json @@ -1,13 +1,6 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { - "module": "ESNext", - "target": "ES2020", - "declaration": true, - "outDir": "./dist", - "moduleResolution": "bundler", - "emitDeclarationOnly": false, - "esModuleInterop": true, "types": ["@types/web-bluetooth"] }, "include": ["src"] diff --git a/packages/transport-web-serial/tsconfig.json b/packages/transport-web-serial/tsconfig.json index b57f5fb4..891eec5d 100644 --- a/packages/transport-web-serial/tsconfig.json +++ b/packages/transport-web-serial/tsconfig.json @@ -1,13 +1,6 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { - "module": "ESNext", - "target": "ES2020", - "declaration": true, - "outDir": "./dist", - "moduleResolution": "bundler", - "emitDeclarationOnly": false, - "esModuleInterop": true, "types": ["@types/w3c-web-serial"] }, "include": ["src"] diff --git a/packages/ui/package.json b/packages/ui/package.json index b8877945..4f4e051b 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -67,7 +67,7 @@ "publint": "^0.3.21", "tailwindcss": "^4.1.14", "tw-animate-css": "^1.4.0", - "typescript": "^5.6.3", + "typescript": "^6.0.3", "vite": "^8.0.16", "vite-plugin-dts": "^4.5.4", "vite-plugin-static-copy": "^4.1.1", diff --git a/packages/ui/tsconfig.json b/packages/ui/tsconfig.json index 1ab3219a..6e4b0111 100644 --- a/packages/ui/tsconfig.json +++ b/packages/ui/tsconfig.json @@ -1,22 +1,8 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { - "target": "ES2021", - "lib": ["ES2021", "DOM"], - "jsx": "react-jsx", - "module": "ESNext", - "moduleResolution": "Bundler", - "skipLibCheck": true, - "declaration": true, - "declarationMap": true, - "emitDeclarationOnly": false, - "noUncheckedIndexedAccess": true, "erasableSyntaxOnly": true, - "outDir": "dist", - "rootDir": "src", - "strict": true, "types": ["react", "react-dom"], - "baseUrl": ".", "paths": { "@/*": ["./src/*"] } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 94067f7f..79e5c43a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -44,10 +44,10 @@ importers: version: 1.69.0 tsdown: specifier: ^0.15.0 - version: 0.15.12(publint@0.3.21)(typescript@5.9.3) + version: 0.15.12(publint@0.3.21)(typescript@6.0.3) typescript: - specifier: ^5.9.2 - version: 5.9.3 + specifier: ^6.0.3 + version: 6.0.3 vitest: specifier: ^4.1.8 version: 4.1.8(@types/node@24.12.0)(happy-dom@20.8.9)(jsdom@25.0.1)(vite@8.0.16(@types/node@24.12.0)(esbuild@0.27.7)(jiti@2.7.0)(terser@5.48.0)(tsx@4.21.0)(yaml@2.8.2)) @@ -179,7 +179,7 @@ importers: version: 5.0.0 i18next: specifier: ^26.3.1 - version: 26.3.1(typescript@5.9.3) + version: 26.3.1(typescript@6.0.3) i18next-browser-languagedetector: specifier: ^8.2.0 version: 8.2.1 @@ -215,7 +215,7 @@ importers: version: 7.78.0(react@19.2.7) react-i18next: specifier: ^17.0.8 - version: 17.0.8(i18next@26.3.1(typescript@5.9.3))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(typescript@5.9.3) + version: 17.0.8(i18next@26.3.1(typescript@6.0.3))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(typescript@6.0.3) react-map-gl: specifier: 8.1.0 version: 8.1.0(maplibre-gl@5.8.0)(react-dom@19.2.7(react@19.2.7))(react@19.2.7) @@ -311,8 +311,8 @@ importers: specifier: ^0.0.2 version: 0.0.2(@angular/common@6.1.10(@angular/core@6.1.10(rxjs@6.6.7)(zone.js@0.8.29))(rxjs@6.6.7))(@angular/core@6.1.10(rxjs@6.6.7)(zone.js@0.8.29)) typescript: - specifier: ^5.9.3 - version: 5.9.3 + specifier: ^6.0.3 + version: 6.0.3 vitest: specifier: ^4.1.8 version: 4.1.8(@types/node@24.12.0)(happy-dom@20.8.9)(jsdom@25.0.1)(vite@8.0.16(@types/node@24.12.0)(esbuild@0.27.7)(jiti@2.7.0)(terser@5.48.0)(tsx@4.21.0)(yaml@2.8.2)) @@ -513,14 +513,14 @@ importers: specifier: ^1.4.0 version: 1.4.0 typescript: - specifier: ^5.6.3 - version: 5.9.3 + specifier: ^6.0.3 + version: 6.0.3 vite: specifier: ^8.0.16 version: 8.0.16(@types/node@24.12.0)(esbuild@0.27.7)(jiti@2.7.0)(terser@5.48.0)(tsx@4.21.0)(yaml@2.8.2) vite-plugin-dts: specifier: ^4.5.4 - version: 4.5.4(@types/node@24.12.0)(rollup@4.62.0)(typescript@5.9.3)(vite@8.0.16(@types/node@24.12.0)(esbuild@0.27.7)(jiti@2.7.0)(terser@5.48.0)(tsx@4.21.0)(yaml@2.8.2)) + version: 4.5.4(@types/node@24.12.0)(rollup@4.62.0)(typescript@6.0.3)(vite@8.0.16(@types/node@24.12.0)(esbuild@0.27.7)(jiti@2.7.0)(terser@5.48.0)(tsx@4.21.0)(yaml@2.8.2)) vite-plugin-static-copy: specifier: ^4.1.1 version: 4.1.1(vite@8.0.16(@types/node@24.12.0)(esbuild@0.27.7)(jiti@2.7.0)(terser@5.48.0)(tsx@4.21.0)(yaml@2.8.2)) @@ -6178,8 +6178,8 @@ packages: engines: {node: '>=14.17'} hasBin: true - typescript@5.9.3: - resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} + typescript@6.0.3: + resolution: {integrity: sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==} engines: {node: '>=14.17'} hasBin: true @@ -10531,7 +10531,7 @@ snapshots: de-indent: 1.0.2 he: 1.2.0 - '@vue/language-core@2.2.0(typescript@5.9.3)': + '@vue/language-core@2.2.0(typescript@6.0.3)': dependencies: '@volar/language-core': 2.4.28 '@vue/compiler-dom': 3.5.30 @@ -10542,7 +10542,7 @@ snapshots: muggle-string: 0.4.1 path-browserify: 1.0.1 optionalDependencies: - typescript: 5.9.3 + typescript: 6.0.3 '@vue/shared@3.5.30': {} @@ -11497,9 +11497,9 @@ snapshots: i18next-http-backend@4.0.0: {} - i18next@26.3.1(typescript@5.9.3): + i18next@26.3.1(typescript@6.0.3): optionalDependencies: - typescript: 5.9.3 + typescript: 6.0.3 iconv-lite@0.6.3: dependencies: @@ -12205,16 +12205,16 @@ snapshots: dependencies: react: 19.2.7 - react-i18next@17.0.8(i18next@26.3.1(typescript@5.9.3))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(typescript@5.9.3): + react-i18next@17.0.8(i18next@26.3.1(typescript@6.0.3))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(typescript@6.0.3): dependencies: '@babel/runtime': 7.29.7 html-parse-stringify: 3.0.1 - i18next: 26.3.1(typescript@5.9.3) + i18next: 26.3.1(typescript@6.0.3) react: 19.2.7 use-sync-external-store: 1.6.0(react@19.2.7) optionalDependencies: react-dom: 19.2.7(react@19.2.7) - typescript: 5.9.3 + typescript: 6.0.3 react-is@17.0.2: {} @@ -12381,7 +12381,7 @@ snapshots: robust-predicates@3.0.2: {} - rolldown-plugin-dts@0.17.8(rolldown@1.0.0-beta.45)(typescript@5.9.3): + rolldown-plugin-dts@0.17.8(rolldown@1.0.0-beta.45)(typescript@6.0.3): dependencies: '@babel/generator': 7.29.1 '@babel/parser': 7.29.0 @@ -12394,7 +12394,7 @@ snapshots: obug: 2.1.2 rolldown: 1.0.0-beta.45 optionalDependencies: - typescript: 5.9.3 + typescript: 6.0.3 transitivePeerDependencies: - oxc-resolver @@ -12924,7 +12924,7 @@ snapshots: tree-kill@1.2.2: {} - tsdown@0.15.12(publint@0.3.21)(typescript@5.9.3): + tsdown@0.15.12(publint@0.3.21)(typescript@6.0.3): dependencies: ansis: 4.2.0 cac: 6.7.14 @@ -12934,7 +12934,7 @@ snapshots: empathic: 2.0.0 hookable: 5.5.3 rolldown: 1.0.0-beta.45 - rolldown-plugin-dts: 0.17.8(rolldown@1.0.0-beta.45)(typescript@5.9.3) + rolldown-plugin-dts: 0.17.8(rolldown@1.0.0-beta.45)(typescript@6.0.3) semver: 7.7.4 tinyexec: 1.0.2 tinyglobby: 0.2.15 @@ -12942,7 +12942,7 @@ snapshots: unconfig: 7.5.0 optionalDependencies: publint: 0.3.21 - typescript: 5.9.3 + typescript: 6.0.3 transitivePeerDependencies: - '@ts-macro/tsc' - '@typescript/native-preview' @@ -13007,7 +13007,7 @@ snapshots: typescript@5.8.2: {} - typescript@5.9.3: {} + typescript@6.0.3: {} typewise-core@1.2.0: {} @@ -13098,18 +13098,18 @@ snapshots: util-deprecate@1.0.2: {} - vite-plugin-dts@4.5.4(@types/node@24.12.0)(rollup@4.62.0)(typescript@5.9.3)(vite@8.0.16(@types/node@24.12.0)(esbuild@0.27.7)(jiti@2.7.0)(terser@5.48.0)(tsx@4.21.0)(yaml@2.8.2)): + vite-plugin-dts@4.5.4(@types/node@24.12.0)(rollup@4.62.0)(typescript@6.0.3)(vite@8.0.16(@types/node@24.12.0)(esbuild@0.27.7)(jiti@2.7.0)(terser@5.48.0)(tsx@4.21.0)(yaml@2.8.2)): dependencies: '@microsoft/api-extractor': 7.57.7(@types/node@24.12.0) '@rollup/pluginutils': 5.3.0(rollup@4.62.0) '@volar/typescript': 2.4.28 - '@vue/language-core': 2.2.0(typescript@5.9.3) + '@vue/language-core': 2.2.0(typescript@6.0.3) compare-versions: 6.1.1 debug: 4.4.3 kolorist: 1.8.0 local-pkg: 1.1.2 magic-string: 0.30.21 - typescript: 5.9.3 + typescript: 6.0.3 optionalDependencies: vite: 8.0.16(@types/node@24.12.0)(esbuild@0.27.7)(jiti@2.7.0)(terser@5.48.0)(tsx@4.21.0)(yaml@2.8.2) transitivePeerDependencies: diff --git a/tsconfig.base.json b/tsconfig.base.json index d783ccba..069ffd58 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -1,20 +1,16 @@ { "compilerOptions": { - "target": "ES2023", - "lib": ["DOM", "DOM.Iterable", "ES2023"], - "module": "ESNext", + "lib": ["DOM", "DOM.Iterable", "ESNext"], + "module": "preserve", "moduleResolution": "bundler", - "strict": true, "esModuleInterop": true, "resolveJsonModule": true, "isolatedModules": true, "skipLibCheck": true, "noUncheckedIndexedAccess": true, "noFallthroughCasesInSwitch": true, - "forceConsistentCasingInFileNames": true, "allowImportingTsExtensions": true, "noEmit": true, - "jsx": "react-jsx", - "baseUrl": "." + "jsx": "react-jsx" } }