Use CSS-based %c styling for browser consoles instead of ANSI escape codes, which don't render properly in Firefox. Keep ANSI codes for native/terminal environments.
Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
* 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
* Adjust datalake abstraction
(cherry picked from commit 8ba6a8d45b1bd5698afbd06d9e858a91789f0ea6)
* Just be really really specific
(cherry picked from commit 920198959659329a7f7f7282a1293aaad198d8e3)
* Add metric method to logger, replace datalake calls with new method
(cherry picked from commit 7a026bbeae75514b64f928d7ff59707c518fd5e5)
* Clarify types
(cherry picked from commit 422b150deb158a70ef37e8a456d91bf26cd0b1bc)
* Colocate bitdrift in logger, use logger for transport
(cherry picked from commit cdd6941fd7)
* Fix mocks, format
(cherry picked from commit 9de88660c6)
* Ok I guess mocks dir doesn't work
(cherry picked from commit 9f37e52011)
* Remove enablement
* Refactor context and filtering
* Fix imports, simplify transports config
* Migrate usages of debug context
* Re-org, add colors and grouping to console logging
* Remove temp default context
* Remove manual prefix
* Move colorizing out of console transport body
* Reduce reuse
* Pass through context
* Ensure bitdrift is enabled in dev
* Enable Sentry on web only
* Clean up types
* Docs
* Format
* Update tests
* Clean up tests
* No positional args
* Revert Sentry changes
* Clean up context, use it, pass metadata through to Bitdrift
* Fix up debugging
* Clean up metadata before passing to Bitdrift
* Correct transports
* Reserve context prop on metadata and include in transports
* Update tests