32 lines
1.7 KiB
Markdown
32 lines
1.7 KiB
Markdown
# designer — Excel export design pass
|
|
|
|
**Date:** 2026-08-27 · Task: review the ticket Excel export (column sizes, colours, styling).
|
|
|
|
## Before
|
|
`utils/excel.utils.ts` had a bare schema — no widths, no header styling, no alignment,
|
|
raw SNOW timestamps, no number formatting. Functional but ugly.
|
|
|
|
## After (FORGE-branded, token-derived colours)
|
|
- **Header row**: indigo `#6366F1` (`--primary`) background, white **bold** centred text,
|
|
row height 22, **frozen** (`stickyRowsCount: 1`) so it stays visible when scrolling.
|
|
- **Column widths** tuned per field: Number 15, State 20, Assignee/Requester 22,
|
|
Short description **46 + wrap**, Group 30, Brand/Market 14, Lifetime/In-state 12,
|
|
Last activity 14, Jira 14, Jira key 12, Cost 11, Ccy 7, PO 15, Link 34.
|
|
- **Alignment**: numeric columns (Lifetime, In state, Cost) right-aligned; dates + Ccy
|
|
centred; text left. All vertically centred.
|
|
- **Number format**: Cost `#,##0` (thousands separators).
|
|
- **Dates**: `Last activity` rendered as a short local date (`25 Aug 26`) instead of the raw
|
|
`2026-08-25 12:00:00` SNOW timestamp.
|
|
- **Grid**: thin light-grey borders `#E2E8F0` (`--border`) on every cell.
|
|
- **Font**: Calibri 11 (header) / 10 (body).
|
|
- Columns reordered so the human-readable ones (desc, brand, market, requester) sit before
|
|
the group/analytics fields.
|
|
|
|
## Evidence
|
|
- client `tsc --noEmit` → clean; `vite build` → OK.
|
|
- Node render (`write-excel-file/node`, all style options): produced a valid **"Microsoft
|
|
Excel 2007+"** file (PK/zip header, 4 KB) — every styling option accepted, no throw.
|
|
|
|
## Next: done — export honours the FORGE palette + is readable. (Excel colour-coding by
|
|
state/size intentionally skipped to keep it clean; can add if wanted.)
|