fix(push): mark visibility hidden on pagehide (#1189)

Co-authored-by: Isaac Sanchez <isanchez-hawkins@arize.com>
This commit is contained in:
Isaac Sanchez-Hawkins
2026-05-12 11:06:51 +03:00
committed by GitHub
co-authored by Isaac Sanchez
parent f2ce138e86
commit 7e1801e97a
@@ -40,13 +40,17 @@ export const usePushVisibilityBeacon = (options?: { enabled?: boolean }) => {
}
};
const reportPageHidden = () => {
sendVisibility(false);
};
report();
// Heartbeat while visible so server TTL (30s) never expires.
const interval = window.setInterval(reportVisibleOnly, HEARTBEAT_MS);
document.addEventListener('visibilitychange', report);
window.addEventListener('pagehide', report);
window.addEventListener('pagehide', reportPageHidden);
window.addEventListener('pageshow', report);
window.addEventListener('focus', report);
window.addEventListener('blur', report);
@@ -54,7 +58,7 @@ export const usePushVisibilityBeacon = (options?: { enabled?: boolean }) => {
return () => {
window.clearInterval(interval);
document.removeEventListener('visibilitychange', report);
window.removeEventListener('pagehide', report);
window.removeEventListener('pagehide', reportPageHidden);
window.removeEventListener('pageshow', report);
window.removeEventListener('focus', report);
window.removeEventListener('blur', report);