Search Routes + Providers
core/routing/app_router.dart · /search + /seller/:handle
Overview
Two routes: /search (CustomTransitionPage with slide-up animation) and /seller/:handle (CustomTransitionPage with slide-right). sellersProvider is a single NotifierProvider; sellerDetailProvider is a family-keyed FutureProvider.
User Flow
- Home swipe-left or search-icon tap pushes /search.
- Seller card tap pushes /seller/:handle with the handle as a path parameter.
- Both routes live in the ShellRoute, so the nav bar stays visible.
Cases & Edge Cases
- Custom transitions use 420ms forward + 300ms reverse — slightly slower forward to make the new content feel deliberate.
- GoRouter resolves /seller/:handle from external links — make sure the handle matches the URL-safe charset.
Code References
- lib/src/core/routing/app_router.dart:521 // /search CustomTransitionPage
- lib/src/core/routing/app_router.dart:556 // /seller/:handle CustomTransitionPage
- lib/src/features/shared/search/providers/sellers_provider.dart:230 // sellersProvider
API Calls
Empty — fill this in later. Open the manifest and add content here.
Notes
If the search experience grows to include products + sellers + places in one screen, split the notifier into per-source notifiers before the controller bloats further.