feat(shared-ui): add unified statistics components with theme support

- Add reusable chart components in shared-ui (StatsGrid, ActivityHeatmap, TrendLineChart, DonutChart, ProgressBars, StatisticsSkeleton)
- Use CSS variables (--primary) for consistent theme-based styling
- Add statistics pages to Calendar and Contacts apps
- Add statistics stores with app-specific metrics
- Fix PriorityDonutChart layout in Todo app (vertical layout with 2x2 legend grid)
- Add date-fns dependency to shared-ui

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Till-JS 2025-12-10 14:52:29 +01:00 committed by Wuesteon
parent 330b9907b0
commit 09e44a2f2f
15 changed files with 2611 additions and 0 deletions

View file

@ -0,0 +1,20 @@
// Charts - Statistics Visualization Components
export { default as StatsGrid } from './StatsGrid.svelte';
export { default as ActivityHeatmap } from './ActivityHeatmap.svelte';
export { default as TrendLineChart } from './TrendLineChart.svelte';
export { default as DonutChart } from './DonutChart.svelte';
export { default as ProgressBars } from './ProgressBars.svelte';
export { default as StatisticsSkeleton } from './StatisticsSkeleton.svelte';
// Types
export type {
StatVariant,
StatItem,
HeatmapDataPoint,
TrendDataPoint,
DonutSegment,
ProgressItem,
} from './types';
// Constants
export { STAT_VARIANT_COLORS } from './types';