Files
discord-decomp/modules/media_uploads/DetectedFileSize.tsx
T
2026-11-01 12:12:55 +02:00

60 lines
1.5 KiB
TypeScript

// Metro module 4767 (f4768).
export async function getDetectedFileSize(c25293_0) {
let promise, size;
let c25293_3;
let c25293_4 = 0;
L12: {
try {
let c29437_0 = c25293_0;
if (c25293_0.size > 0) {
size = c25293_0.size;
break L12;
}
c25293_4 = 1;
promise = await new Promise((c31357_0, c31357_1) => {
const fileReader = new FileReader();
let c31357_2 = setTimeout(() => {
c31357_1(new Error("File read timeout"));
}, 10000);
fileReader.onload = (a0) => {
clearTimeout(c31357_2);
const result = a0.target?.result;
if (result instanceof ArrayBuffer) {
c31357_0(result.byteLength);
} else {
c31357_1(new Error("Unexpected FileReader result type"));
}
};
fileReader.onerror = () => {
clearTimeout(c31357_2);
c31357_1(new Error("Could not read file"));
};
fileReader.readAsArrayBuffer(c29437_0);
});
c25293_4 = 0;
} catch ($e) {
const r23 = $e;
let r8 = r23;
c25293_3 = r23;
if (c25293_4 !== 0) {
while (true) {
try {
c25293_4 = 0;
} catch (r49) {
r8 = r49;
c25293_3 = r49;
if (c25293_4 === 0) {
break;
}
continue;
}
return 0;
}
}
throw r8;
}
return promise;
}
return size;
}