2.7 KiB
id, title, status, assignee, created_date, updated_date, labels, dependencies, priority, ordinal
| id | title | status | assignee | created_date | updated_date | labels | dependencies | priority | ordinal |
|---|---|---|---|---|---|---|---|---|---|
| TASK-20 | Convert campaigns and leads to compact cards | Done | 2026-06-04 15:01 | 2026-06-04 15:10 | high | 22000 |
Description
Update the dashboard campaign and lead review UI so campaigns render as individual cards and leads render as compact expandable cards while preserving existing Convex behavior.
Acceptance Criteria
- #1 Campaigns page renders each campaign as its own responsive card instead of a desktop table.
- #2 Leads page renders compact cards showing company/name, contact data, and priority while hiding review fields behind Mehr anzeigen.
- #3 Expanded lead cards preserve all existing review fields and save/block actions.
- #4 UI remains responsive without horizontal table overflow on desktop and mobile.
- #5 Lint and test verification are run and results are documented.
Implementation Plan
- Add/adjust tests or static checks that fail for table-based Campaigns/Leads layouts before production edits.
- Convert CampaignsBoard from desktop table plus mobile cards to one responsive card list.
- Convert LeadsReviewTable from table rows to compact expandable cards.
- Run lint, tests, and browser/responsive verification.
- Record verification notes in Backlog; wait for user confirmation before Done.
Implementation Notes
Implemented via subagent-driven TDD. Campaigns and Leads converted from table layouts to compact cards. Added static layout regression tests for campaign cards and lead expandable cards. Verification: pnpm lint exits 0 with 2 pre-existing generated Better Auth warnings; pnpm test passes 107/107; pnpm build passes after rerun with network access for Google Fonts. Browser automation could launch only outside sandbox, but authenticated dashboard routes redirected to /login in the fresh Playwright context, so final visual validation should be done in the existing logged-in browser session.
Final Summary
Campaigns now render as responsive cards on all breakpoints. Leads now render as compact expandable cards showing company/contact/priority by default and revealing review fields/actions through Mehr anzeigen. Added regression tests for both card layouts. Verified with pnpm lint, pnpm test, and pnpm build; browser automation reached login due fresh unauthenticated context, while user confirmed the authenticated UI manually.