BillTracker/client/components/data
null 88874f3f3d feat(tracker): export/print the month + calendar link (plan C1/C2)
- Header "Export" menu: Export CSV (via the existing /api/export?from&to date
  range for the viewed month) and Print (window.print()). Extract the shared
  downloadFile blob helper to lib/download.ts (reused by DownloadMyDataSection).
- Add api.exportRangeUrl(from, to, fmt).
- Tracker-scoped @media print CSS: hide interactive chrome (.tracker-print-hide),
  keep the month title + summary + buckets, avoid splitting a row across pages.
- Header "Calendar" button deep-links to /calendar?year&month; CalendarPage now
  reads those params as its initial month (falls back to today).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-05 14:49:09 -05:00
..
AutoMatchReview.tsx refactor(ts): convert data/ shared + small sections to TypeScript 2026-07-04 21:33:25 -05:00
BankSyncSection.tsx refactor(client): de-duplicate parseUtc + settingEnabled to lib/utils (plan A2/A3) 2026-07-05 14:38:12 -05:00
ConnectionHero.tsx refactor(ts): convert data/ shared + small sections to TypeScript 2026-07-04 21:33:25 -05:00
DataNav.tsx refactor(ts): convert data/ shared + small sections to TypeScript 2026-07-04 21:33:25 -05:00
DownloadMyDataSection.tsx feat(tracker): export/print the month + calendar link (plan C1/C2) 2026-07-05 14:49:09 -05:00
EraseDataSection.tsx refactor(ts): convert data/ shared + small sections to TypeScript 2026-07-04 21:33:25 -05:00
ImportHistorySection.tsx refactor(ts): convert data/ shared + small sections to TypeScript 2026-07-04 21:33:25 -05:00
ImportMyDataSection.tsx refactor(ts): convert data/ import + matching sections to TypeScript 2026-07-04 21:42:18 -05:00
ImportOfxSection.tsx refactor(ts): convert data/ shared + small sections to TypeScript 2026-07-04 21:33:25 -05:00
ImportSpreadsheetSection.tsx refactor(ts): convert ImportSpreadsheetSection to TypeScript — data/ dir complete 2026-07-04 21:56:04 -05:00
ImportTransactionCsvSection.tsx refactor(ts): convert data/ import + matching sections to TypeScript 2026-07-04 21:42:18 -05:00
SeedDemoDataSection.tsx refactor(ts): convert data/ shared + small sections to TypeScript 2026-07-04 21:33:25 -05:00
TransactionMatchingSection.tsx refactor(client): de-duplicate parseUtc + settingEnabled to lib/utils (plan A2/A3) 2026-07-05 14:38:12 -05:00
dataShared.tsx refactor(ts): convert data/ shared + small sections to TypeScript 2026-07-04 21:33:25 -05:00