Skip to content

Cart badge (live) + header cleanup and dropdown fix#195

Open
maxwellc21 wants to merge 2 commits intoDataBytes-Organisation:mainfrom
maxwellc21:feat/cart-badge-live-header-cleanup
Open

Cart badge (live) + header cleanup and dropdown fix#195
maxwellc21 wants to merge 2 commits intoDataBytes-Organisation:mainfrom
maxwellc21:feat/cart-badge-live-header-cleanup

Conversation

@maxwellc21
Copy link
Contributor

Changes

  • Live cart badge in header & sidebar
  • Basket auto-refresh on add/remove/qty
  • Single 'DiscountMate' wordmark; removed tiny duplicate
  • Dropdown overlays correctly (z-index wrapper)
  • Stable id/product_code when adding from products/detail

Test

  • Add/remove/qty: badge updates immediately across pages
  • Header shows one brand; dropdown opens above content

…ng across DBs

Frontend:
- New components/CartBadge.tsx; shows basket qty badge in headers (Home/Products/Category/Product) and navigates to basket.
- BasketContext: expose basketData consistently for badge; stabilize id/product_code handling.
- Product and Category pages: stable id mapping across CleanedData.Coles + DiscountMate.product; in-basket state respected; add-to-basket payload sends product_code when not ObjectId.
- ProductCard: props support (inBasket/adding) without API changes.
- UI: category label mapping; responsive grids; badge in Stack header.

Backend:
- basket.controller: accept product_id OR product_code; de-dupe in basket; normalize getbasket response (productId/productCode/quantity/price/image/name).
- product.controller: combined source query (DiscountMate.product + CleanedData.Coles), optional category filter & limit; stable product fields in response.
- basket.router: tightened routes.

Chore:
- lockfiles updated.
…dd/remove

- Cart badge: show item count consistently (header + sidebar), updates live on add/remove.
- BasketContext: unify ID handling (productId/productCode), call getBasket after mutations.
- BasketSummary(+Item): reflect quantity/delete instantly, no manual refresh needed.
- Header: remove duplicate wordmark (image), keep single larger 'DiscountMate'; ensure dropdown overlays.
- Product pages: use stable product ids when adding to basket; pass cart badge count to header.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

Comments