build(web)!: upgrade to typescript 6.0

Quentin Gliech and Claude Opus 4.6 (1M context) created

adapt tsconfig files for TS 6.0 defaults:
- remove `strict` (now default true)
- remove `module` (now default esnext)
- remove `baseUrl` (deprecated, paths work without it)
- remove `useDefineForClassFields` (default for ES2022+)
- remove `DOM.Iterable` from lib (merged into DOM)
- add explicit `types: ["node"]` to tsconfig.node (TS6 defaults to [])
- add vite-env.d.ts for vite client type declarations

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

Change summary

webui2/src/vite-env.d.ts  | 1 +
webui2/tsconfig.app.json  | 8 ++------
webui2/tsconfig.node.json | 3 +--
3 files changed, 4 insertions(+), 8 deletions(-)

Detailed changes

webui2/tsconfig.app.json 🔗

@@ -1,9 +1,7 @@
 {
   "compilerOptions": {
-    "target": "ES2020",
-    "useDefineForClassFields": true,
-    "lib": ["ES2020", "DOM", "DOM.Iterable"],
-    "module": "ESNext",
+    "target": "ES2022",
+    "lib": ["ES2022", "DOM"],
     "skipLibCheck": true,
     "moduleResolution": "bundler",
     "allowImportingTsExtensions": true,
@@ -11,11 +9,9 @@
     "moduleDetection": "force",
     "noEmit": true,
     "jsx": "react-jsx",
-    "strict": true,
     "noUnusedLocals": true,
     "noUnusedParameters": true,
     "noFallthroughCasesInSwitch": true,
-    "baseUrl": ".",
     "paths": {
       "@/*": ["./src/*"]
     }

webui2/tsconfig.node.json 🔗

@@ -2,14 +2,13 @@
   "compilerOptions": {
     "target": "ES2022",
     "lib": ["ES2023"],
-    "module": "ESNext",
+    "types": ["node"],
     "moduleResolution": "bundler",
     "allowImportingTsExtensions": true,
     "isolatedModules": true,
     "moduleDetection": "force",
     "noEmit": true,
     "skipLibCheck": true,
-    "strict": true,
     "noUnusedLocals": true,
     "noUnusedParameters": true,
     "noFallthroughCasesInSwitch": true