Backend:
- ReportingService with aggregation queries (CTEs, FILTER clauses)
- 4 API endpoints: /api/reports/{cases,deadlines,workload,billing}
- Date range filtering via ?from=&to= query params
Frontend:
- /berichte page with 4 tabs: Akten, Fristen, Auslastung, Abrechnung
- recharts: bar/pie/line charts for all report types
- Date range picker, CSV export, print-friendly view
- Sidebar nav entry with BarChart3 icon
Also resolves merge conflicts between role-based, notification, and
audit trail branches, and adds missing TS types (AuditLogResponse,
Notification, NotificationPreferences).
44 lines
1.1 KiB
JSON
44 lines
1.1 KiB
JSON
{
|
|
"name": "kanzlai-mgmt",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"scripts": {
|
|
"dev": "next dev --turbopack",
|
|
"build": "next build --turbopack",
|
|
"start": "next start",
|
|
"lint": "eslint",
|
|
"test": "vitest run",
|
|
"test:watch": "vitest"
|
|
},
|
|
"dependencies": {
|
|
"@supabase/ssr": "^0.9.0",
|
|
"@supabase/supabase-js": "^2.100.0",
|
|
"@tanstack/react-query": "^5.95.2",
|
|
"date-fns": "^4.1.0",
|
|
"lucide-react": "^1.6.0",
|
|
"next": "15.5.14",
|
|
"react": "19.1.0",
|
|
"react-dom": "19.1.0",
|
|
"react-dropzone": "^15.0.0",
|
|
"recharts": "^3.8.1",
|
|
"sonner": "^2.0.7"
|
|
},
|
|
"devDependencies": {
|
|
"@eslint/eslintrc": "^3",
|
|
"@tailwindcss/postcss": "^4",
|
|
"@testing-library/jest-dom": "^6.9.1",
|
|
"@testing-library/react": "^16.3.2",
|
|
"@testing-library/user-event": "^14.6.1",
|
|
"@types/node": "^20",
|
|
"@types/react": "^19",
|
|
"@types/react-dom": "^19",
|
|
"eslint": "^9",
|
|
"eslint-config-next": "15.5.14",
|
|
"jsdom": "24.1.3",
|
|
"msw": "^2.12.14",
|
|
"tailwindcss": "^4",
|
|
"typescript": "^5",
|
|
"vitest": "2.1.8"
|
|
}
|
|
}
|