• Joined on 2026-07-16
David pushed to main at David/WFDASH-WEBAPP 2026-08-03 17:35:00 +00:00
76947a9711 chore(stock): remove Location from PDF and UI
David pushed to main at David/WFDASH-WEBAPP 2026-08-03 17:21:53 +00:00
532f1986e4 feat(stocktake-pdf): add Location column, sort by supplier name
David pushed to main at David/WFDASH-WEBAPP 2026-08-03 17:06:41 +00:00
0cecc7208f polish(stocktake-pdf): widen SKU→Name gap so the separation is visible
David pushed to main at David/WFDASH-WEBAPP 2026-08-03 17:00:40 +00:00
b506670dde polish(stocktake-pdf): status anchors right edge, gaps between columns
David pushed to main at David/WFDASH-WEBAPP 2026-08-03 16:52:43 +00:00
b84aefc2e2 feat: unify buyer task flows by supporting both customer orders and stock purchases in mark-ready API and UI, and fix PDF table layout responsiveness.
David pushed to main at David/WFDASH-WEBAPP 2026-08-03 16:29:29 +00:00
21c54ad24e fix(stocktake-pdf): add cell padding so columns have visible gaps
David pushed to main at David/WFDASH-WEBAPP 2026-08-03 16:23:14 +00:00
a35e715b21 polish(stocktake-pdf): zebra rows, drop Location, Target→Max, prominent Status, wider Name
David pushed to main at David/WFDASH-WEBAPP 2026-08-03 16:19:05 +00:00
6033aba18d fix(stocktake-pdf): match /stock columns + add button on /stock page
David pushed to main at David/WFDASH-WEBAPP 2026-08-03 16:12:41 +00:00
b1c0c6030f fix(api): make list-pdf routes browser-accessible
David pushed to main at David/WFDASH-WEBAPP 2026-08-03 15:44:43 +00:00
6bf8310ef6 fix(stock-purchase-send): use DASHBOARD_URL for outcomeUrl (was req.nextUrl.origin)
David pushed to main at David/WFDASH-WEBAPP 2026-08-03 15:33:36 +00:00
e795e8584d chore(scripts): one-time stock-order loaders + source screenshots
David pushed to main at David/WFDASH-WEBAPP 2026-08-03 14:51:14 +00:00
91d8363380 fix(stock-purchase-send): render auto-PDF in-process instead of HTTP self-call
86534f738a test(stock-orders): tighten download-button assertions + mark icons decorative
1b2f4a4f52 feat(stock-orders): wrap cells + add download PDF buttons
e025b340b8 fix(api): use SAST date for PDF filenames + tighten list-pdf tests
bbe3e1bd1f feat(api): GET /api/v1/stock-purchases/list-pdf + stocktake-pdf
Compare 9 commits »
David pushed to main at David/WFDASH-WEBAPP 2026-08-03 14:04:24 +00:00
e75f0d6157 fix(stock-purchase-send): stop auto-flipping stock_purchase_items on success
a8231fec07 docs(stock-orders): wrap + PDF implementation plan
286043cace docs(stock-orders): design spec for cell wrap + PDF downloads
Compare 3 commits »
David pushed to main at David/WFDASH-WEBAPP 2026-08-03 13:47:04 +00:00
690b8a2c26 fix(po-send): reject sends for POs without a generated PDF
18e1d97b6c test(stock-orders): tighten total-value + edit-reset assertions
760f088ec9 test(stock-orders): move page tests to StockOrdersTable + add total-value case
b89a4a7fa3 fix(stock-orders): preserve header nav + sanitize error message
Compare 4 commits »
David pushed to main at David/WFDASH-WEBAPP 2026-08-03 13:05:44 +00:00
dedd5013b9 refactor(stock-orders): migrate list page to Server Component
fcb15a20e2 fix(stock-orders): keyboard a11y on pagination + soft row nav
0c556a0513 feat(stock-orders): extract StockOrdersTable client component
469b2c0460 fix(api): preserve auth status + guard pagination against NaN
8cb4e9a60c feat(api): GET /api/v1/stock-purchases/list with value aggregation
Compare 9 commits »
David pushed to main at David/WFDASH-WEBAPP 2026-08-03 09:23:45 +00:00
aea1ab67f3 fix(po-send): push dashboardBaseUrl + outcomeUrl on n8n webhook body
David pushed to main at David/WFDASH-WEBAPP 2026-08-03 09:07:04 +00:00
faaa47a4fe test(buyer-tasks): lock wire shape of mail_failed group in po_draft
010bba475c fix(buyer-tasks): pass status + email_error into SendPoModal stub
8616d5dbef fix(buyer-tasks): add emailError to route test fixture
c481cbeb1c feat(buyer-tasks): render mail-failed banner + Resend button
5959d2a1aa fix(buyer-tasks): keep mail_failed POs visible in the PO Draft tab
Compare 8 commits »
David pushed to main at David/WFDASH-WEBAPP 2026-08-03 07:33:55 +00:00
4444842ef5 feat: collection-map updates, todays-stops, quote/approval rework, buyer-tasks, e2e
0064555f22 chore(collection-confirm): cleanup nice-to-haves from final review
d6af21193c fix(collection-confirm): scope costOverrides to current PO in dialog
fea67b15ba fix(collection-confirm): hoist onCostChange out of setEdit updater + preserve null rollback
e2896264f4 fix(collection-confirm): add route validation + server-side actor derivation
Compare 135 commits »
David pushed to main at David/RJBULK-APP 2026-08-03 00:12:49 +00:00
135a6e9fe6 docs: document Gmail SMTP configuration
c94c3d36ad ui: simplify Gmail delivery settings
b92a5b2817 feat: send statements through Gmail SMTP
312f061ad7 feat: add Gmail SMTP mailer
e964993619 test: define Gmail mailer behavior
Compare 8 commits »
David pushed to main at David/WFDASHDRIVER-APP 2026-08-02 20:58:14 +00:00
105f169e45 feat: popover stays above footer, partial collections must be justified