128 lines
2.8 KiB
TypeScript
128 lines
2.8 KiB
TypeScript
// Metro module 675 (f676).
|
|
import { AnalyticEvents } from "../../Constants";
|
|
import { requestSafeIdleCallback } from "../../_bundle/Module696";
|
|
import AnalyticsUtils from "../../utils/AnalyticsUtils";
|
|
let _excluded, c583_6, c583_7, stopRequest;
|
|
const setRequestedBy = function setRequestedBy(a0) {
|
|
c583_7.size > 0;
|
|
c583_6 = false;
|
|
let r9 = c583_7.get(a0);
|
|
if (r9 == null) {
|
|
r9 = 0;
|
|
}
|
|
c583_7.set(a0, r9 + 1);
|
|
const r18 = `BRIDGE:${a0}`;
|
|
let r20 = c583_7.get(r18);
|
|
if (r20 == null) {
|
|
r20 = 0;
|
|
}
|
|
const r21 = r20 - 1;
|
|
if (r21 <= 0) {
|
|
c583_7.delete(r18);
|
|
} else {
|
|
c583_7.set(r18, r21);
|
|
}
|
|
c583_7.size > 0;
|
|
};
|
|
stopRequest = function stopRequest(a0) {
|
|
c583_7.size > 0;
|
|
c583_6 = false;
|
|
let r9 = c583_7.get(a0);
|
|
if (r9 == null) {
|
|
r9 = 0;
|
|
}
|
|
const r11 = r9 - 1;
|
|
if (r11 <= 0) {
|
|
c583_7.delete(a0);
|
|
} else {
|
|
c583_7.set(a0, r11);
|
|
}
|
|
c583_7.size > 0;
|
|
};
|
|
_excluded = ["COLD_START"];
|
|
c583_6 = true;
|
|
c583_7 = new Map();
|
|
export function isRequested() {
|
|
return c583_7.size > 0 || c583_6;
|
|
}
|
|
export function recordStartHeadlessTask() {
|
|
c583_6 = false;
|
|
}
|
|
export function describeConnectionReasons() {
|
|
const r6 = [...c583_6 ? _excluded : [], ...c583_7.keys()].sort();
|
|
return r6.length > 0 ? r6.join(",") : "NO_REASONS";
|
|
}
|
|
export { setRequestedBy };
|
|
export function startBridgeTo(a0) {
|
|
const bridge_token = `BRIDGE:${a0}`;
|
|
let c12442_1 = performance.now();
|
|
c583_7.size > 0;
|
|
c583_6 = false;
|
|
let r18 = c583_7.get(bridge_token);
|
|
if (r18 == null) {
|
|
r18 = 0;
|
|
}
|
|
c583_7.set(bridge_token, r18 + 1);
|
|
c583_7.size > 0;
|
|
requestSafeIdleCallback(() => {
|
|
if (c583_7.has(bridge_token)) {
|
|
AnalyticsUtils.track(AnalyticEvents.GATEWAY_BRIDGE_TIMEOUT, {
|
|
bridge_token,
|
|
cleared_after: performance.now() - c12442_1
|
|
});
|
|
}
|
|
c583_7.size > 0;
|
|
c583_6 = false;
|
|
let r28 = c583_7.get(bridge_token);
|
|
if (r28 == null) {
|
|
r28 = 0;
|
|
}
|
|
const r30 = r28 - 1;
|
|
if (r30 <= 0) {
|
|
c583_7.delete(bridge_token);
|
|
} else {
|
|
c583_7.set(bridge_token, r30);
|
|
}
|
|
c583_7.size > 0;
|
|
}, {
|
|
timeout: 5000
|
|
});
|
|
}
|
|
export { stopRequest };
|
|
export async function withRequest(c23824_0, c23824_1) {
|
|
let r18;
|
|
let c23824_4;
|
|
let c23824_5 = 0;
|
|
let c28667_0;
|
|
try {
|
|
c28667_0 = c23824_0;
|
|
c23824_5 = 1;
|
|
setRequestedBy(c23824_0);
|
|
r18 = await c23824_1();
|
|
c23824_5 = 0;
|
|
(0, stopRequest)(c28667_0);
|
|
} catch ($e) {
|
|
const r22 = $e;
|
|
let r8 = r22;
|
|
c23824_4 = r22;
|
|
if (c23824_5 !== 0) {
|
|
while (true) {
|
|
try {
|
|
const r56 = c23824_4;
|
|
c23824_5 = 0;
|
|
(0, stopRequest)(c28667_0);
|
|
throw r56;
|
|
} catch (r52) {
|
|
r8 = r52;
|
|
c23824_4 = r52;
|
|
if (c23824_5 === 0) {
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
throw r8;
|
|
}
|
|
return r18;
|
|
}
|