* WIP
* Clean up growthbook code, integrate into init and sessions
* Move everything out of React
* Add metrics client
* Move to separate file
* Shared metadata cache
* Ensure we update metadata when session ID changes
* Ensure userMetadata is cleared when logging out
* WIP revamp
* Integrate feature gates into analytics context
* Clean up old code
* Fix useMeta util
* Some comments and cleanup
* Add logger to base analytics context
* Refactor current route handling
* Rip out LogEvent from navigation
* Update tracking endpoint
* Migrate toClout
* Clear out statsig client
* Add todo, reset logger readme
* Ope fix statsig noop
* Refactor logging in feed-feedback, add debug logging to metrics client
* Remove LogEvents alias for Metrics
* Prefer root package export
* Remove Metrics alias from logger
* [APP-1782] Migrate to new analytics APIs (#9735)
* Migrate logEvent to useAnalytics
* Migrate logger.metric to useAnalytics
* Migrate tricky spot, fix types
* Migrate remaining tricky spot
* Missed one
* Remove metric() from logger
* Migrate useGate to useAnalytics
* Remove all other StatSig mentions
* Update event payload
* Update logger tests
* Mock expo method
* Fix session ID bug
* Add session ID test
* Add test for metrics client
* Clarify intent
* Clean up core analytics file
* Clean up the call once utils
* Fix TODO
* Fix TODO
* Fix TODO
* Fix TODO
* Fix TODO
* Remove debug code
* Fix navigation context
* OK nav context is not working, todo
* Checkpoint: works but feels hacky
* Fix navigation context issue
* Improve feature API
* Improve metric logging
* Update logger tests
* Age Assurance V2
* Tighten up test
* Add todos for sdk migration
* Align RQ versions
* Use useEffect for side effect
* Improve effects, memoize
* Standarize on birthdate
* Copy feedback
* Copilot
* Add support link
* Reove double ..
* Cleanup
* Remove redirect dialog
* Cleanup todos, add comments
* Update splash in main template too
* Mock some stuff
* Exhaustive checks
Co-authored-by: Samuel Newman <mozzius@protonmail.com>
* Exhaustive checks
Co-authored-by: Samuel Newman <mozzius@protonmail.com>
* Small fix to bday handling
* Add comment
* onboarding style tweak
sneaking this in sorry!
* rm unreachable breaks
* Put useIntentHandler back on web
* Remove misleading success set
* Align on birthdate
---------
Co-authored-by: Samuel Newman <mozzius@protonmail.com>
* Split utils into files
* Move reducer to another file
* Write types explicitly
* Remove unnnecessary check
* Move things around a bit
* Move more stuff into agent factories
* Move more stuff into agent
* Fix gates await
* Clarify comments
* Enforce more via types
* Nit
* initSession -> resumeSession
* Protect against races
* Make agent opaque to reducer
* Check using plain condition
* Move ThemeProvider to the top
* Move RootSiblingParent above the remounted part
* Move ToastContainer outside the remounted part
* Remove setTimeout around toasts
* Consistently handle dropped session
* Update persisted schema for new source of truth, implement in existing session
(cherry picked from commit b1e5f12bae)
* Improve toasts, log caught error, during switch account
(cherry picked from commit fe0d150706)
* Handle thrown errors from initSession during login
(cherry picked from commit 2c85c04591)
---------
Co-authored-by: Eric Bailey <git@esb.lol>
* properly close the switch account dialog
* use it for switch account as well
* ensure dialog is closed on unmount
Revert "properly check if the ref is null"
This reverts commit 8f563808a5d39389b0bc47a31e73cd147d1e7e8b.
properly check if the ref is null
ensure dialog is closed on unmount
* Revert "ensure dialog is closed on unmount"
This reverts commit a48548fd8e.
* Allow going directly to password input screen when switching accounts and password is required
* Revise state handling
* Handle logged out states, enable clearing requestedAccount
---------
Co-authored-by: Eric Bailey <git@esb.lol>
* show logged out view when adding accounts
* Handle existing signed-in account
* Show which account is currently logged in
* Fix showing toasts
---------
Co-authored-by: Eric Bailey <git@esb.lol>
* WIP
* Add shell state
* Integrate new shell state for drawer and minimal shell mode
* Replace isDrawerSwipeDisabled
* Split shell state into separate contexts to avoid needless re-renders
* Fix typo
---------
Co-authored-by: Paul Frazee <pfrazee@gmail.com>
* quick switch menu
* Some small tweaks and fixes to the account switch modal
* Factor out the account switcher logic to a hook
* Add haptic feedback on account switcher open
* Fix bad merge
---------
Co-authored-by: Samuel Newman <mozzius@protonmail.com>