
Jakob WennbergandClaude Opus 4.8
b800dcd403
style(ui): system-wide UX/UI polish pass — design-system conformance + copy cleanup (#835)
* style(ui): system-wide UX/UI polish pass — design-system conformance + copy cleanup
Multi-agent scan of all 404 UI files against the locked design system, then
141 verified surgical fixes across 109 files (net -32 lines):
- Remove forbidden elevation/motion: shadow-* and rounded-xl on cards, active:scale
bounce, hover:shadow on list items, transition-all -> transition-colors.
- Drop font-medium from single-weight Hedvig display headings/numerals.
- Replace raw rainbow Tailwind status colors with Badge variants / brand tokens /
neutral surfaces (achromatic chrome, semantic colors stay data-only).
- Route raw dates through formatDate(), hand-rolled currency through formatCurrency(),
add tabular-nums to financial figures; text-gray-* -> text-foreground tokens.
- Swap hand-rolled skeletons for the Skeleton primitive; off-scale spacing -> token scale.
- Fix copy: mislabeled "Leverantörsfakturor" -> "Utgifter" on bank-import outflow total,
collapse no-op identical-branch ternaries, broken Swedish diacritics (mojibake),
correct mismatch-password toast, correct supplier currency-field label.
- Remove PII-leaking debug console.log on register, stray console.logs.
Verified: tsc clean on all changed files, eslint clean, production build passes.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* fix(auth): sanitize residual error logs in register flow
Follow-up to PR review (compliance swarm V16 / GDPR Art.5(1)(f)): the
remaining console.error calls in the register flow passed raw error
objects, which Supabase may populate with PII (email) in nested fields.
Log only sanitized message strings instead.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-30 13:14:13 +02:00
..
2026-06-29 16:34:51 +02:00
2026-06-16 10:42:37 +02:00
2026-06-30 13:14:13 +02:00
2026-06-05 17:26:40 +02:00
2026-06-12 16:35:30 +02:00
2026-06-10 13:52:24 +02:00
2026-05-28 21:09:43 +02:00
2026-05-21 12:10:12 +02:00
2026-05-30 01:28:41 +02:00
2026-05-28 11:27:01 +02:00
2026-05-11 16:34:07 +02:00
2026-05-28 21:09:43 +02:00
2026-06-29 16:34:51 +02:00
2026-05-18 13:17:15 +02:00
2026-06-30 13:14:13 +02:00
2026-06-29 16:34:51 +02:00
2026-06-29 16:34:51 +02:00
2026-06-16 18:22:09 +02:00
2026-06-30 13:14:13 +02:00
2026-05-21 12:10:12 +02:00
2026-03-11 15:36:52 +01:00
2026-06-18 11:49:33 +02:00
2026-04-21 17:08:38 +02:00
2026-06-05 09:37:26 +02:00
2026-06-04 13:14:57 +02:00
2026-06-25 15:54:35 +02:00
2026-06-29 16:34:51 +02:00
2026-06-30 13:14:13 +02:00
2026-05-26 22:29:41 +02:00
2026-05-21 12:10:12 +02:00
2026-06-18 11:49:33 +02:00
2026-05-28 01:56:09 +02:00
2026-06-01 14:45:49 +02:00