refactor: Replace any types in analytics page with proper interfaces #30

Closed
opened 2026-04-14 12:35:31 +00:00 by KnallerKalle · 1 comment
KnallerKalle commented 2026-04-14 12:35:31 +00:00 (Migrated from github.com)

Problem

The analytics page (src/app/[locale]/analytics/page.tsx) uses any type for the summary state:

const [summary, setSummary] = useState<any>(null)

And potentially other any types in analytics-related components.

Solution

  • Define proper TypeScript interfaces for analytics data
  • Replace all any types
  • Ensure strict TypeScript compliance

Acceptance Criteria

  • Zero any types in analytics page and components
  • npx tsc --noEmit passes
  • CI green
## Problem The analytics page (`src/app/[locale]/analytics/page.tsx`) uses `any` type for the summary state: ```typescript const [summary, setSummary] = useState<any>(null) ``` And potentially other `any` types in analytics-related components. ## Solution - Define proper TypeScript interfaces for analytics data - Replace all `any` types - Ensure strict TypeScript compliance ## Acceptance Criteria - [ ] Zero `any` types in analytics page and components - [ ] `npx tsc --noEmit` passes - [ ] CI green
KnallerKalle commented 2026-04-14 13:39:52 +00:00 (Migrated from github.com)

Fixed in commit 71119d5. Replaced all any types in analytics page and AnalyticsCharts component with proper TypeScript interfaces (AnalyticsSummary, LessonStats, typed tooltip/label props). npx tsc --noEmit passes. CI green.

Fixed in commit 71119d5. Replaced all `any` types in analytics page and AnalyticsCharts component with proper TypeScript interfaces (`AnalyticsSummary`, `LessonStats`, typed tooltip/label props). `npx tsc --noEmit` passes. CI green.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Kalle/ATM#30
No description provided.