feat(suppliers): supplier catalog interactive pricing matrix and Netto calculator (#198) #204

Merged
yuris merged 5 commits from feat/phase-4-supplier-catalog-pricing into main 2026-10-04 00:33:24 +00:00
Owner

Summary

Implements Phase 4 of Supplier Management (resolves #198):

  • Dedicated supplier catalog review matrix at /suppliers/[id]
  • Action buttons (WhatsApp and Tandai Selesai Dicek) beside supplier name on desktop
  • In-row Netto calculator attached to Modal Lalu computing Gross, Diskon %, PPN 11%
  • Strategic margin preset popover with 10% Penarik, 20% Rutin, and 35% Khusus
  • Explicit constraint satisfied: neutral styling on all presets with NO green highlight on 20%
  • Live margin computation with red warning for margins < 10%
  • Magic Sparkles AI icon button placeholder
  • 19 comprehensive tests in supplier-catalog-view.test.tsx

Verification

  • 35 test files passed (629 tests)
  • pnpm verify:management clean with 0 errors
### Summary Implements Phase 4 of Supplier Management (resolves #198): - Dedicated supplier catalog review matrix at `/suppliers/[id]` - Action buttons (`WhatsApp` and `Tandai Selesai Dicek`) beside supplier name on desktop - In-row Netto calculator attached to `Modal Lalu` computing Gross, Diskon %, PPN 11% - Strategic margin preset popover with `10% Penarik`, `20% Rutin`, and `35% Khusus` - Explicit constraint satisfied: neutral styling on all presets with NO green highlight on 20% - Live margin computation with red warning for margins < 10% - Magic Sparkles AI icon button placeholder - 19 comprehensive tests in `supplier-catalog-view.test.tsx` ### Verification - 35 test files passed (629 tests) - `pnpm verify:management` clean with 0 errors
feat(suppliers): supplier catalog interactive pricing matrix and Netto calculator (#198)
Some checks failed
Checks / test garage-store (pull_request) Has been cancelled
Checks / typecheck apps/management (pull_request) Has been cancelled
Checks / typecheck apps/store (pull_request) Has been cancelled
Checks / lint (biome) (pull_request) Has been cancelled
Checks / test @garage/catalog (pull_request) Successful in 1m12s
Checks / test garage (pull_request) Has been cancelled
f263a1dc5c
fix(suppliers): preserve edits on check refresh, render negative margins, and unclip popovers
Some checks failed
Checks / test @garage/catalog (pull_request) Successful in 1m13s
Checks / test garage (pull_request) Successful in 1m28s
Checks / typecheck apps/store (pull_request) Has been cancelled
Checks / lint (biome) (pull_request) Has been cancelled
Checks / test garage-store (pull_request) Has been cancelled
Checks / typecheck apps/management (pull_request) Has been cancelled
ea0ea506d1
fix(suppliers): handle Non-PKP PPN logic and position popovers upward on bottom rows
Some checks failed
Checks / test @garage/catalog (pull_request) Successful in 1m14s
Checks / test garage (pull_request) Successful in 1m27s
Checks / test garage-store (pull_request) Successful in 1m18s
Checks / lint (biome) (pull_request) Has been cancelled
Checks / typecheck apps/management (pull_request) Has been cancelled
Checks / typecheck apps/store (pull_request) Has been cancelled
7670347d71
fix(suppliers): remove overflow-x-auto to prevent clipping of desktop pricing popovers
Some checks failed
Checks / test @garage/catalog (pull_request) Successful in 1m15s
Checks / test garage (pull_request) Successful in 1m27s
Checks / typecheck apps/store (pull_request) Has been cancelled
Checks / lint (biome) (pull_request) Has been cancelled
Checks / test garage-store (pull_request) Has been cancelled
Checks / typecheck apps/management (pull_request) Has been cancelled
6bb9ec566e
fix(suppliers): use nullish coalescing to respect entered zero offer price
All checks were successful
Checks / test @garage/catalog (pull_request) Successful in 1m12s
Checks / test garage (pull_request) Successful in 1m30s
Checks / test garage-store (pull_request) Successful in 1m16s
Checks / typecheck apps/store (pull_request) Successful in 1m19s
Checks / typecheck apps/management (pull_request) Successful in 1m38s
Checks / lint (biome) (pull_request) Successful in 12s
fe6c511ddc
yuris merged commit 34af522d6e into main 2026-10-04 00:33:24 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
yuris/garage!204
No description provided.