Files
timetracker/frontend
Simon Franken 7101f38bc8 feat: implement client targets v2 (weekly/monthly periods, working days, pro-ration)
- Add PeriodType enum and working_days column to ClientTarget schema
- Rename weekly_hours -> target_hours; remove Monday-only constraint
- Add migration 20260224000000_client_targets_v2
- Rewrite computeBalance() to support weekly/monthly periods, per-spec
  pro-ration for first period, ongoing vs completed period logic, and
  elapsed working-day counting (§4–§6 of requirements doc)
- Update Zod schemas and TypeScript input types for new fields
- Frontend: replace WeekBalance with PeriodBalance; update
  ClientTargetWithBalance to currentPeriod* fields
- ClientTargetPanel: period type radio, working-day toggles, free date
  picker, dynamic hours label
- DashboardPage: rename widget to Targets, dynamic This week/This month
  label
2026-02-24 19:02:32 +01:00
..
2026-02-23 17:57:25 +01:00
fix
2026-02-18 19:31:47 +01:00
2026-02-23 10:53:39 +01:00
fix
2026-02-18 19:31:47 +01:00
2026-02-16 10:15:27 +01:00
2026-02-16 10:15:27 +01:00
2026-02-16 10:15:27 +01:00
2026-02-16 10:15:27 +01:00
2026-02-16 10:15:27 +01:00
2026-02-16 10:15:27 +01:00
2026-02-16 17:12:47 +01:00