fix: comprehensive TypeScript/build fixes and modernization

- Update tsconfig to ES2024 target and bundler moduleResolution
- Add dynamic imports for chart.js and recharts (bundle optimization)
- Consolidate 17 useState into useReducer in sessions page
- Fix 18 .js extension imports across lib files
- Add type declarations for @rapideditor/country-coder
- Fix platform user types (PlatformUserRole enum)
- Fix Calendar component prop types
- Centralize next-auth type augmentation
- Add force-dynamic to all API routes (prevent build-time prerender)
- Fix Prisma JSON null handling with Prisma.DbNull
- Fix various type mismatches (SessionMessage, ImportRecord, etc.)
- Export ButtonProps from button component
- Update next-themes import path
- Replace JSX.Element with React.ReactElement
- Remove obsolete debug scripts and pnpm lockfile
- Downgrade eslint to v8 for next compatibility
This commit is contained in:
2026-01-20 07:28:10 +01:00
parent 8b3846539f
commit 5bfd762e55
161 changed files with 14655 additions and 11682 deletions

View File

@@ -6,11 +6,11 @@
"incremental": true,
"isolatedModules": true,
"jsx": "preserve",
"lib": ["dom", "dom.iterable", "esnext"],
"module": "esnext",
"moduleResolution": "node",
"lib": ["dom", "dom.iterable", "ES2024"],
"module": "ESNext",
"moduleResolution": "bundler",
"noEmit": true,
"noImplicitAny": false, // Allow implicit any types
"noImplicitAny": false,
"paths": {
"@/*": ["./*"]
},
@@ -23,14 +23,14 @@
"skipLibCheck": true,
"strict": true,
"strictNullChecks": true,
"target": "es5"
"target": "ES2024"
},
"exclude": ["node_modules"],
"exclude": ["node_modules", "tests"],
"include": [
"next-env.d.ts",
"types/**/*.d.ts",
"**/*.ts",
"**/*.tsx",
".next/types/**/*.ts",
"components/SessionDetails.tsx.bak"
".next/types/**/*.ts"
]
}