| 04-marketplace-portal-navigation |
03 |
ui |
| react |
| next-link |
| usePathname |
| zustand |
| sidebar |
| search |
|
| phase |
provides |
| 04-marketplace-portal-navigation/01 |
marketplace-store with sidebarRefreshKey, sidebar i18n keys |
|
|
| All sidebar links migrated from raw <a> to Next.js Link (client-side nav) |
| usePathname-based active highlighting for all sidebar links |
| SidebarSearch component filtering modules and categories |
| sidebarRefreshKey subscription for live sidebar updates after activation |
| Per-module links under category groups |
|
|
| added |
patterns |
|
|
| usePathname active highlighting |
| Zustand cross-component refresh signal |
|
|
| created |
modified |
| apps/web/src/components/layout/sidebar-search.tsx |
| apps/web/src/components/layout/sidebar.test.tsx |
|
| apps/web/src/components/layout/sidebar.tsx |
|
|
| All <a href> replaced with <Link> to prevent full page reloads |
| sidebarRefreshKey in useEffect deps — sidebar re-fetches only on explicit signal, not on navigation |
| Search hidden in collapsed mode per UI-SPEC |
|
| isActive(href) helper: exact match for /, startsWith for all others |
| useMemo category filtering with search query |
|
| MRKT-03 |
| PRTAL-02 |
| PRTAL-03 |
| PRTAL-05 |
|
8min |
2026-06-23 |