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

279 lines
7.2 KiB
JavaScript

// Metro module 1098 (f1099).
import { serializeEnvelope, parseEnvelope, makeOfflineTransport } from "./Module817";
import { WINDOW } from "./ignoreNextOnError";
import { makeFetchTransport } from "./Module1032";
function $mk68062($env) {
return (a0, a1) => {
let env24191 = {
$parent: $env
};
env24191[0] = a0;
env24191[1] = a1;
const r6 = $env[0];
const onsuccess = () => (0, env24191[0])(env24191.$parent[0].result);
r6.onsuccess = onsuccess;
r6.oncomplete = onsuccess;
const onerror = () => (0, env24191[1])(env24191.$parent[0].error);
r6.onerror = onerror;
r6.onabort = onerror;
};
}
function $mk68063($env) {
return () => {
const r0 = $env;
return r0[1].result.createObjectStore(r0[0]);
};
}
function $mk68064($env) {
return (a0) => {
let env24192 = {
$parent: $env
};
env24192[0] = a0;
return $env[2].then((result) => {
const r2 = env24192[0];
const transaction = result.transaction;
const r4 = env24192.$parent[0];
return r2(transaction.call(result, r4, "readwrite").objectStore(r4));
});
};
}
let _unshift, _shift, createIndexedDbStore;
const _push = function _push(a0, c12794_0, c12794_1) {
return a0((a0) => {
let env24194;
const allKeys = a0.getAllKeys();
const r7 = env24194 = {};
env24194[0] = allKeys;
return new Promise($mk68062(r7)).then((result) => {
if (result.length >= c12794_1) {
return void 0;
}
let env28809;
const r9 = Math;
a0.put(c12794_0, r9.max.apply(r9, [...result, 0]) + 1);
const transaction = a0.transaction;
const r27 = env28809 = {};
env28809[0] = transaction;
return new Promise($mk68062(r27));
});
});
};
_unshift = function _unshift(a0, c12795_0, c12795_1) {
return a0((a0) => {
let env24196;
const allKeys = a0.getAllKeys();
const r7 = env24196 = {};
env24196[0] = allKeys;
return new Promise($mk68062(r7)).then((result) => {
if (result.length >= c12795_1) {
return void 0;
}
let env28810;
const r9 = Math;
a0.put(c12795_0, r9.min.apply(r9, [...result, 0]) - 1);
const transaction = a0.transaction;
const r27 = env28810 = {};
env28810[0] = transaction;
return new Promise($mk68062(r27));
});
});
};
_shift = function _shift(a0) {
return a0((a0) => {
let env24198;
const allKeys = a0.getAllKeys();
const r7 = env24198 = {};
env24198[0] = allKeys;
return new Promise($mk68062(r7)).then((result) => {
const r4 = result[0];
let c28811_0 = r4;
if (r4 != null) {
let env28812;
const r10 = a0.get(r4);
const r11 = env28812 = {};
env28812[0] = r10;
return new Promise($mk68062(r11)).then((c31211_0) => {
let env31212;
a0.delete(c28811_0);
const transaction = a0.transaction;
const r11 = env31212 = {};
env31212[0] = transaction;
return new Promise($mk68062(r11)).then(() => c31211_0);
});
}
});
});
};
createIndexedDbStore = function createIndexedDbStore(c12796_0) {
let c12796_1, c12796_2, c12796_3, c12796_4;
const getStore2 = function getStore() {
if (c12796_1 == null) {
const r6 = c12796_0.dbName || "sentry-offline";
const r3 = c12796_0.storeName || "queue";
let env24199;
let env24200;
const r10 = env24199 = {};
env24199[0] = r3;
const r12 = indexedDB.open(r6);
env24199[1] = r12;
r12.onupgradeneeded = $mk68063(r10);
const r14 = env24200 = {};
env24200[0] = r12;
env24199[2] = new Promise($mk68062(r14));
c12796_1 = $mk68064(r10);
}
return c12796_1;
};
c12796_4 = async (c24201_0) => {
let c24201_3 = 0;
let c28813_0;
L15: {
try {
c28813_0 = void 0;
c24201_3 = 1;
c28813_0 = await serializeEnvelope(c24201_0);
const r56 = (0, getStore2)();
const r57 = c28813_0;
const maxQueueSize = c12796_0.maxQueueSize;
await (maxQueueSize ? _push(r56, r57, maxQueueSize) : _push(r56, r57, 30));
c24201_3 = 0;
} catch ($e) {
let r27 = $e;
if (c24201_3 !== 0) {
while (true) {
try {
c24201_3 = 0;
break L15;
} catch ($e) {
r27 = $e;
if (c24201_3 === 0) {
break;
}
}
}
}
throw r27;
}
}
};
c12796_3 = async (c24202_0) => {
let c24202_3 = 0;
let c28814_0;
L15: {
try {
c28814_0 = void 0;
c24202_3 = 1;
c28814_0 = await serializeEnvelope(c24202_0);
const r56 = (0, getStore2)();
const r57 = c28814_0;
const maxQueueSize = c12796_0.maxQueueSize;
await (maxQueueSize ? _unshift(r56, r57, maxQueueSize) : _unshift(r56, r57, 30));
c24202_3 = 0;
} catch ($e) {
let r27 = $e;
if (c24202_3 !== 0) {
while (true) {
try {
c24202_3 = 0;
break L15;
} catch ($e) {
r27 = $e;
if (c24202_3 === 0) {
break;
}
}
}
}
throw r27;
}
}
};
c12796_2 = async () => {
let r52;
let c24203_2 = 0;
let c28815_0;
L13: {
L12: {
try {
c28815_0 = void 0;
c24203_2 = 1;
c28815_0 = await _shift(getStore2());
if (c28815_0) {
r52 = parseEnvelope(c28815_0);
c24203_2 = 0;
break L13;
}
c24203_2 = 0;
} catch ($e) {
let r21 = $e;
if (c24203_2 !== 0) {
while (true) {
try {
c24203_2 = 0;
break L12;
} catch ($e) {
r21 = $e;
if (c24203_2 === 0) {
break;
}
}
}
}
throw r21;
}
}
return void 0;
}
return r52;
};
return {
push: function push(a0) {
return c12796_4.apply(this, arguments);
},
unshift: function unshift(a0) {
return c12796_3.apply(this, arguments);
},
shift: function shift() {
return c12796_2.apply(this, arguments);
}
};
};
Object.defineProperty(exports, Symbol.toStringTag, {
value: "Module"
});
export function createStore(a0, a1) {
let env12792;
let env12793;
const r0 = env12792 = {};
env12792[0] = a1;
const r8 = indexedDB.open(a0);
env12792[1] = r8;
r8.onupgradeneeded = $mk68063(r0);
const r10 = env12793 = {};
env12793[0] = r8;
env12792[2] = new Promise($mk68062(r10));
return $mk68064(r0);
}
export function makeBrowserOfflineTransport(r3 = makeFetchTransport) {
let c12797_0 = makeOfflineTransport(r3);
return (a0) => {
let env28816 = {};
const r11 = c12797_0({
...a0,
createStore: createIndexedDbStore
});
env28816[0] = r11;
let c28817_0 = async (a0) => {
await env28816[0].flush();
};
WINDOW.addEventListener("online", function(a0) {
return c28817_0.apply(this, arguments);
});
return r11;
};
}
export { _push as push };
export { _shift as shift };
export { _unshift as unshift };