* feat: add dropdown submenu for Insights navigation
- Add dropdown functionality for desktop Insights menu to show submenu instead of immediate navigation
- Add expandable submenu for mobile Insights in More navigation
- Users can now select specific insights destination (Bookings, Routing, Router Position)
- Maintains existing navigation patterns and accessibility
Co-Authored-By: eunjae@cal.com <hey@eunjae.dev>
* fix: use expansion state instead of dropdown for insights navigation
- Remove dropdown components and use existing child rendering pattern
- Add state management for expansion tracking
- Change items with children to render as buttons instead of links
- Preserve existing behavior when currently on page
Co-Authored-By: eunjae@cal.com <hey@eunjae.dev>
* feat: keep parent expanded and hide chevron when sub-item is active
- Add hasActiveChild logic to detect when any child item is currently active
- Keep parent menu expanded when any sub-item is selected
- Hide chevron icon when any sub-item is active
- Maintain existing expansion behavior when no sub-item is active
Co-Authored-By: eunjae@cal.com <hey@eunjae.dev>
* feat: add localStorage persistence for navigation expansion state
- Replace useState with usePersistedExpansionState hook in both NavigationItem and MobileNavigationMoreItem
- Expansion state now persists across page navigations using localStorage
- Uses nav-expansion-{itemName} keys following existing localStorage patterns
Co-Authored-By: eunjae@cal.com <hey@eunjae.dev>
* chore: update yarn.lock from dev server startup
Co-Authored-By: eunjae@cal.com <hey@eunjae.dev>
* feat: change navigation expansion persistence from localStorage to sessionStorage
- Expansion state now persists within browser session but resets when tab closes
- Maintains same error handling and key naming patterns
Co-Authored-By: eunjae@cal.com <hey@eunjae.dev>
* Revert "chore: update yarn.lock from dev server startup"
This reverts commit 832f417da96f79979942c99400d2a7b26f889616.
* clean up
* add aria attributes
---------
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>