1/** 2 * Assumes true for a non-browser env, otherwise makes a best effort 3 * @link https://developer.mozilla.org/en-US/docs/Web/API/Document/visibilityState 4 */ 5export function isDocumentVisible(): boolean { 6 // `document` may not exist in non-browser envs (like RN) 7 if (typeof document === 'undefined') { 8 return true 9 } 10 // Match true for visible, prerender, undefined 11 return document.visibilityState !== 'hidden' 12} 13