Marketplace Home Screen
views/marketplace_home_screen.dart
Overview
Composite scrollable screen made of a banner carousel, category strip, trending deals, summer-sale tile, special offers, and the main product grid/list. Watches marketplaceControllerProvider for the list state.
User Flow
- Top bar with search + cart + notification triggers.
- MarketplaceCategoryList chips toggle category filters.
- MarketplaceFilterBar exposes Filter / Sort / Grid toggles via bottom sheets.
- MarketplaceProductList renders the result and triggers loadMore on near-bottom scroll.
- warningMessage banner shows after auto-recovery and is dismissible via clearWarning.
Cases & Edge Cases
- Pagination trigger fires when scroll position passes ~80% — tweak in the list widget, not the controller.
- Hero widgets (banners, summer sale) read from local sample data; they are not yet backed by a CMS service.
- Grid vs list toggle persists for the controller lifetime (not across kills).
Code References
- lib/src/features/shared/marketplace/views/marketplace_home_screen.dart
- lib/src/features/shared/marketplace/views/widgets/marketplace_banner_carousel.dart
- lib/src/features/shared/marketplace/views/widgets/marketplace_special_offers.dart
API Calls
Empty — fill this in later. Open the manifest and add content here.
Notes
Long screen (~540 lines) — keep new sections as standalone widgets in widgets/ to avoid the file ballooning further.