feat: add filter-based ranking and date navigation to analytics heatmap
Description:
Summary
This MR enhances the analytics heatmap so teams can be ranked directly inside the existing heatmap view without introducing a separate leaderboard page.
What Changed
- Added inline analytics filters:
All,Good,Delayed, andMissing - Reordered heatmap team rows based on the selected filter
- Added analytics range navigation:
Previous RangeNext Range- custom date selection
- Kept the analytics dashboard layout aligned with the existing heatmap design
- Added and updated i18n strings for the new analytics controls
- Added analytics tests covering ranking and filter behavior
Behavior
-
Allranks teams by overall score across the visible analytics range -
Goodranks teams by highest count of good standup slots -
Delayedranks teams by highest count of delayed standup slots -
Missingranks teams by highest count of missing standup slots - Range controls shift the visible analytics window backward or forward
- Custom date selection lets users jump directly to a specific anchor date
Validation
-
npm test✅ -
npm run typecheck✅ -
npm run validate:i18n✅
Notes
-
npm run validate:stagedis not currently usable in this repository becausevite.config.tsdoes not define astagedconfig. -
npm run validatewas previously blocked by formatting before fixes; current targeted checks are passing. -
package-lock.jsonis modified in the worktree and should be reviewed separately if it is unrelated to this feature.