Files
multica/apps/web/app
2213734215 MUL-8253 feat(web): opt-in Google Analytics via GOOGLE_ANALYTICS_ID (#9544)
* feat(web): opt-in Google Analytics via GOOGLE_ANALYTICS_ID (MUL-8253)

Co-authored-by: multica-agent <[email protected]>

* fix(i18n): add missing zh-Hant keys for model override and scheduled wakeup

Co-authored-by: multica-agent <[email protected]>

* fix(web): keep credential-bearing URLs out of Google Analytics

Co-authored-by: multica-agent <[email protected]>

* feat(selfhost): pass GOOGLE_ANALYTICS_ID through compose and helm

Co-authored-by: multica-agent <[email protected]>

* fix(web): stop GA for the document after sensitive navigation

Co-authored-by: multica-agent <[email protected]>

* test(views): await subscription cleanup and dialog focus

Co-authored-by: multica-agent <[email protected]>

* fix(web): stop GA before credential-bearing link clicks and form submits

GA4 enhanced measurement reports outbound/download link_url and
form_destination without a URL change, so signed attachment downloads
leaked their signature. Stop the tag for the document in a window
capture listener before gtag's own listeners observe the interaction.
Object URLs are exempt. Adds jsdom tests and a live gtag.js regression
covering the ~5s batch delay.

Co-authored-by: multica-agent <[email protected]>

* test(web): slim GA tests; move views test fixes to #9555

Drop the opt-in live-tag e2e spec (never runs in CI) and condense the GA
unit tests to the cases that guard against credential leaks. The two
unrelated views test-timing fixes now live in #9555.

Co-authored-by: multica-agent <[email protected]>

---------

Co-authored-by: multica-agent <[email protected]>
Co-authored-by: Bohan-J <[email protected]>
2026-10-26 18:04:40 +08:00
..