60 lines
1.5 KiB
TypeScript
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;
|
|
}
|