Files
discord-decomp/_bundle/Module6434.js
T
2026-11-01 12:12:55 +02:00

259 lines
8.0 KiB
JavaScript

// Metro module 6434 (f6435).
import { DEBUG_BUILD } from "./Module6396";
import { logger } from "./consoleSandbox_6368";
import { envelopeContainsItemType } from "./forEachEnvelopeItem_6412";
import { parseRetryAfterHeader } from "./parseRetryAfterHeader_6433";
function $mk114978($env) {
return async () => {
let env31422 = {
$parent: $env
};
env31422[2] = 0;
env31422[3] = 0;
let env31961;
const r24 = env31422.$parent;
env31422[1] = r24;
const r10 = env31961 = {
$parent: r24.$parent
};
env31422[0] = r10;
env31961[0] = void 0;
r24[2] = void 0;
const r34 = await r24[3].shift();
const r42 = env31422[0];
r42[0] = r34;
if (r42[0]) {
const r45 = env31422[1];
(0, r45.$parent[1])("Attempting to send previously queued event");
r42[0][0].sent_at = new Date().toISOString();
(0, r45[7])(r42[0], true).catch($mk118770(r42.$parent));
}
};
}
function $mk118770($env) {
return (a0) => {
(0, $env[1])("Failed to retry sending", a0);
};
}
function $mk118771($env) {
return function shouldQueue(a0, a1, a2) {
const r12 = envelopeContainsItemType(a0, ["client_report"]);
let r13 = !r12;
if (!r12) {
const r6 = $env[0];
const shouldStore = r6.shouldStore;
r13 = shouldStore ? r6.shouldStore(a0, a1, a2) : !shouldStore;
}
return r13;
};
}
let env4135 = {};
const c4135_3 = 100;
const c4135_4 = 5000;
export const MIN_DELAY = 100;
export const START_DELAY = 5000;
export function makeOfflineTransport(a0) {
let env15731 = {
$parent: env4135
};
env15731[0] = a0;
env15731[1] = function log(...args) {
if (DEBUG_BUILD) {
logger.info.apply(logger, ["[Offline]:", ...args]);
}
};
return (a0) => {
let env25880;
const r5 = env25880 = {
$parent: env15731
};
env25880[0] = a0;
env25880[5] = function flushIn(a0) {
const r1 = env25880;
if (env25880[2]) {
clearTimeout(env25880[2]);
}
const r15 = setTimeout($mk114978(r1), a0);
env25880[2] = r15;
if (typeof r15 !== "number" ? r15.unref : typeof r15 !== "number") {
env25880[2].unref();
}
};
env25880[6] = function flushWithBackOff() {
const r4 = env25880;
const r3 = env25880[2];
if (!r3) {
const r7 = env25880[4];
if (r3) {
clearTimeout(env25880[2]);
}
const r17 = setTimeout($mk114978(r4), r7);
env25880[2] = r17;
if (typeof r17 !== "number" ? r17.unref : typeof r17 !== "number") {
env25880[2].unref();
}
env25880[4] = Math.min(2 * env25880[4], 3600000);
}
};
const send = function send(a0) {
return env25880[8].apply(this, arguments);
};
env25880[7] = send;
env25880[8] = function _send() {
const r9 = async function(c31423_0, c31423_1) {
let r155, r188;
let c31423_2, c31423_3, c31423_4;
let c31423_5 = 0;
const r16 = env25880;
L33: {
L32: {
L17: {
try {
let env31962;
c31423_3 = r16;
const r44 = env31962 = {
$parent: r16
};
c31423_2 = r44;
env31962[1] = void 0;
env31962[0] = c31423_0;
if (c31423_1 !== void 0) {
env31962[1] = c31423_1;
env31962[2] = void 0;
env31962[3] = void 0;
} else {
env31962[1] = false;
env31962[2] = void 0;
env31962[3] = void 0;
}
await void 0;
if (!env31962[1]) {
if (envelopeContainsItemType(env31962[0], ["replay_event", "replay_recording"])) {
await env25880[3].push(env31962[0]);
(0, env25880[5])(c4135_3);
break L17;
}
}
c31423_5 = 1;
const r126 = await env25880[1].send(env31962[0]);
L20: {
env31962[2] = r126;
env31962[3] = c4135_3;
if (env31962[2]) {
if (env31962[2].headers && env31962[2].headers["retry-after"]) {
env31962[3] = parseRetryAfterHeader(env31962[2].headers["retry-after"]);
break L20;
}
if (env31962[2].headers && env31962[2].headers["x-sentry-rate-limits"]) {
env31962[3] = 60000;
break L20;
}
const statusCode = env31962[2].statusCode;
if (statusCode) {
if (!(statusCode >= 400)) {
break L20;
}
} else if (!(0 >= 400)) {
break L20;
}
r188 = env31962[2];
c31423_5 = 0;
break L32;
}
}
(0, env25880[5])(env31962[3]);
env25880[4] = c4135_4;
r155 = env31962[2];
c31423_5 = 0;
break L33;
} catch ($e) {
const r42 = $e;
let r7 = r42;
c31423_4 = r42;
if (c31423_5 !== 0) {
while (true) {
try {
const r197 = c31423_4;
c31423_5 = 0;
env31962[4] = r197;
const r199 = env31962[0];
const r200 = env31962[4];
const r201 = env25880[4];
if (!await $mk118771(env25880)(r199, r200, r201)) {
throw env31962[4];
}
const r228 = env31962[1];
const r230 = env25880[3];
if (r228) {
await r230.unshift(env31962[0]);
} else {
await r230.push(env31962[0]);
}
const r262 = c31423_3;
(0, env25880[6])();
(0, r262.$parent[1])("Error sending. Event queued.", env31962[4]);
} catch (r193) {
r7 = r193;
c31423_4 = r193;
if (c31423_5 === 0) {
break;
}
continue;
}
return {};
}
}
throw r7;
}
}
return {};
}
return r188;
}
return r155;
};
env25880[8] = r9;
return r9.apply(this, arguments);
};
env25880[1] = (0, env15731[0])(a0);
if (a0.createStore) {
env25880[3] = a0.createStore(a0);
env25880[4] = c4135_4;
if (a0.flushAtStartup) {
const r27 = env25880[2];
if (!r27) {
const r28 = env25880[4];
if (r27) {
clearTimeout(env25880[2]);
}
const r37 = setTimeout($mk114978(r5), r28);
env25880[2] = r37;
if (typeof r37 !== "number" ? r37.unref : typeof r37 !== "number") {
env25880[2].unref();
}
env25880[4] = Math.min(2 * env25880[4], 3600000);
}
}
return {
send,
flush: (a0) => {
const r2 = env25880;
if (a0 === void 0) {
env25880[4] = c4135_4;
if (env25880[2]) {
clearTimeout(env25880[2]);
}
const r16 = setTimeout($mk114978(r2), c4135_3);
env25880[2] = r16;
if (typeof r16 !== "number" ? r16.unref : typeof r16 !== "number") {
env25880[2].unref();
}
}
return env25880[1].flush(a0);
}
};
}
throw new Error("No `createStore` function was provided");
};
}