Adjust the global section overlay transition duration and easing for a
snappier feel. Update the viewport coordinator to use a more responsive
keyboard threshold and provide a fallback default height to ensure
consistent lifting behavior when the last known height is insufficient.
Refactor the profile resolution flow to explicitly cache and redirect
to the `/intro` route when marriage profile basics are incomplete.
This ensures users are correctly routed to the onboarding sequence
via the entry route cache.
Additionally, adds optional chaining to `router.prefetch` calls to
prevent runtime errors and updates test suites to reflect the
newly cached `/intro` path behavior.
Introduces an `onComplete` callback to `SliderPage` to allow parent
components to control navigation logic after the slider process.
Additionally, implements internationalization for button labels within
the slider components to support multi-language interfaces.
Enhance the user experience by allowing the browser's back button to
close active question sheets instead of navigating away from the page.
- Update `useSheetScrollLock` to manage history state using `pushState`
- Implement `popstate` event listener to trigger `onBack` callback
- Add support for an optional `onBack` option in the scroll lock hook
- Clean up redundant CSS rules related to `question-sheet-open`
- Add integration tests to verify sheet closure on `popstate` events
Replace static advisor data with a dynamic fetch from the API using
React Query. This includes adding a new custom hook for marriage
advisors, updating query keys, and integrating with the Flutter
webview to allow opening consultant pages natively.
- Add `useMarriageAdvisorsQuery` hook
- Implement `getMarriageConsultants` API call
- Update `MarriageAdvisorsPage` to use fetched data
- Add error and empty state translations across all locales
- Integrate `postActionToFlutter` for native navigation