BillTracker/client/components
null 1c04dfdf8c feat(brand): BrandMark/Wordmark/Lockup consume the new SVGs
Brand.tsx (101 line churn) and brand.ts (47 line churn) now expose
the new SVG-first primitives:

- BrandMark: <img> with BRAND.assets.mark (vector, scales to any size).
- BrandWordmark: text fallback if the mark is unavailable.
- BrandLockup: the combined mark + wordmark for the layout chrome,
  honours the light/dark variant via CSS variables.
- BrandGlyph: unchanged but re-uses the new accent tokens.

brand.ts adds the new asset-path constants (mark, markMono, lockup,
lockupLight, socialPreview) and a tokens helper so the lockup can
switch variants without prop drilling.

This is commit 2 of the v0.42.0 follow-up batch. Depends on
720d31b (SVG assets).
2026-07-05 17:50:04 -05:00
..
admin refactor(brand): adopt new primitives in admin + data + dialogs 2026-07-05 17:19:03 -05:00
bill-modal refactor(ts): BillMerchantRules → TypeScript 2026-07-04 22:08:05 -05:00
brand feat(brand): BrandMark/Wordmark/Lockup consume the new SVGs 2026-07-05 17:50:04 -05:00
data refactor(brand): adopt new primitives in admin + data + dialogs 2026-07-05 17:19:03 -05:00
layout refactor(brand): wire brand + new primitives through layout chrome 2026-07-05 17:18:31 -05:00
snowball refactor(ts): SnowballPage → TypeScript (debt attack order + projections + plans) 2026-07-04 23:12:57 -05:00
tracker refactor(brand): adopt new primitives in tracker cards 2026-07-05 17:18:49 -05:00
transactions refactor(ts): convert transactions/ + snowball/ dirs to TSX (B14) 2026-07-04 20:39:30 -05:00
ui refactor(brand): adopt new primitives in ui/{button,card,badge} 2026-07-05 17:18:38 -05:00
BillHistoricalImportDialog.tsx refactor(ts): BillMerchantRules → TypeScript 2026-07-04 22:08:05 -05:00
BillMerchantRules.tsx refactor(ts): BillMerchantRules → TypeScript 2026-07-04 22:08:05 -05:00
BillModal.tsx fix(money): manual payment path flags suspected dupes (409) w/o losing legit ones (Track A) 2026-07-05 11:51:06 -05:00
BillRulesManager.tsx refactor(ts): convert SearchFilterPanel, RecentlyDeletedBillsDialog, BillRulesManager to TSX (B15) 2026-07-04 20:42:24 -05:00
BillsTableInner.tsx refactor(ts): BillHistoricalImportDialog + BillsTableInner → TypeScript 2026-07-04 22:04:55 -05:00
CalendarFeedManager.tsx refactor(ts): MobileBillRow, IncomeBreakdownModal, CalendarFeedManager → TS 2026-07-04 22:01:49 -05:00
CommandPalette.tsx refactor(ts): CommandPalette → TypeScript (typed Command + Bill results) 2026-07-04 22:09:36 -05:00
ErrorBoundary.tsx refactor: remove verified dead code — orphan file, dead HOC, unused api wrappers 2026-07-05 17:21:31 -05:00
FormatSync.tsx feat(settings): make Currency + Date-format real (plan Tier 2) 2026-07-05 15:54:19 -05:00
IncomeBreakdownModal.tsx refactor(ts): MobileBillRow, IncomeBreakdownModal, CalendarFeedManager → TS 2026-07-04 22:01:49 -05:00
MarkdownText.tsx refactor(ts): convert app-wide common components to TSX (B8) 2026-07-04 19:52:47 -05:00
MobileBillRow.tsx refactor(ts): MobileBillRow, IncomeBreakdownModal, CalendarFeedManager → TS 2026-07-04 22:01:49 -05:00
PageLoader.tsx refactor(ts): convert app-wide common components to TSX (B8) 2026-07-04 19:52:47 -05:00
PageTransition.tsx refactor(ts): convert app-wide common components to TSX (B8) 2026-07-04 19:52:47 -05:00
RecentlyDeletedBillsDialog.tsx refactor(ts): convert SearchFilterPanel, RecentlyDeletedBillsDialog, BillRulesManager to TSX (B15) 2026-07-04 20:42:24 -05:00
ReleaseNotesDialog.tsx refactor(brand): adopt new primitives in admin + data + dialogs 2026-07-05 17:19:03 -05:00
SearchFilterPanel.tsx refactor(brand): adopt new primitives in admin + data + dialogs 2026-07-05 17:19:03 -05:00
SubscriptionCatalogSection.tsx refactor(ts): SubscriptionCatalogSection → TypeScript 2026-07-04 22:12:49 -05:00