// Metro module 696 (f697). import { getGlobalObject } from "./Module697"; let globalObject = getGlobalObject(); export function setOriginWindow(a0) { globalObject = a0; } export function requestSafeIdleCallback(a0, a1) { let c12460_2, c12460_3, runOnce2, c12460_5, c12460_6; const globalObject2 = globalObject; if (globalObject2 !== void 0 && globalObject2.requestIdleCallback != null && globalObject2.cancelIdleCallback != null) { c12460_2 = false; c12460_3 = null; runOnce2 = () => { if (!c12460_2) { c12460_2 = true; if (c12460_3 != null) { globalObject2.clearTimeout(c12460_3); c12460_3 = null; } a0(); } }; c12460_5 = globalObject2.requestIdleCallback(runOnce2, a1); const setTimeout2 = globalObject2.setTimeout; let r19 = a1?.timeout; if (r19 == null) { r19 = 1000; } c12460_3 = setTimeout2.call(globalObject2, () => { if (!c12460_2) { globalObject2.cancelIdleCallback(c12460_5); } if (!c12460_2) { c12460_2 = true; if (c12460_3 != null) { globalObject2.clearTimeout(c12460_3); c12460_3 = null; } a0(); } }, r19); return () => { globalObject2.cancelIdleCallback(c12460_5); if (c12460_3 != null) { globalObject2.clearTimeout(c12460_3); c12460_3 = null; } }; } c12460_6 = globalObject2.setTimeout(a0, 0); return () => { globalObject2.clearTimeout(c12460_6); }; }