decord/stable/source/lib/uploader/heicConversion.tsx
github-actions 528a3dd5ba chore: update source for stable 345.9
Skipped 1 file(s) >100MB (GitHub limit): source/__polyfill/04xxx/module_4745.js (118.4 MB)
2026-09-18 20:18:48 +00:00

290 lines
9.5 KiB
TypeScript

// Module ID: 5266
// Function ID: 5267
// Name: heicConversion
// Dependencies: [5, 3, 5171, 4182, 2]
// Exports: preConvertHeicForUpload
// Module 5266 (heicConversion)
import LoggerDefault from "Logger" /* 3 */;
import heicFilename from "heicFilename" /* 5171 */;
import asyncGeneratorStep from "asyncGeneratorStep" /* 5 */;
require = fn;
let closure_6 = async function _preConvertHeicForUpload(arg0, value) {
if (c6 === 2) {
c6 = 3;
throw new TypeError("Generator functions may not be called on executing generators");
} else if (tmp4 === 3) {
if (arg0 === 1) {
throw value;
} else if (arg0 === 2) {
const obj2 = { value, done: true };
return obj2;
} else {
return { value: "HermesInternal", done: null };
}
} else {
try {
c6 = 2;
if (0 === c5) {
if (arg0 === 1) {
c6 = 3;
throw value;
} else if (arg0 === 2) {
c6 = 3;
const obj3 = { value, done: true };
return obj3;
} else {
closure_4 = tmp5;
closure_3 = tmp2;
closure_131_0 = closure_0;
closure_131_1 = undefined;
if (obj8.isHeicFile(closure_0)) {
c5 = 1;
c6 = 1;
const obj4 = { value: maybeConvertHeicToJpeg(tmp34, tmp35, tmp36), done: false };
return obj4;
} else {
c6 = 3;
const obj5 = { value: tmp34, done: true };
return obj5;
}
obj8 = heicFilename;
tmp35 = closure_1;
tmp36 = closure_2;
}
} else if (arg0 === 1) {
c6 = 3;
throw value;
} else if (arg0 === 2) {
c6 = 3;
const obj6 = { value, done: true };
return obj6;
} else {
closure_131_1 = value;
if (null != closure_131_1) {
if (closure_131_1.success) {
c6 = 3;
}
const _File = File;
const items = [closure_131_1.convertedBlob];
const obj7 = { type: "image/jpeg", lastModified: closure_131_0.lastModified };
const file = new File(items, closure_132_0(closure_132_2[2]).renameToJpegExtension(closure_131_0.name), obj7);
const obj = closure_132_0(closure_132_2[2]);
}
}
} catch (tmp26) {
c6 = tmp;
throw tmp26;
}
}
};
function maybeConvertHeicToJpeg() {
const self = this;
const apply = closure_8.apply;
if (typeof apply === "unknown") {
let applyArgumentsResult = HermesBuiltin.applyArguments(self);
} else {
applyArgumentsResult = apply(self, arguments);
}
return applyArgumentsResult;
}
let closure_8 = async function _maybeConvertHeicToJpeg(arg0, value) {
if (c8 === 2) {
c8 = 3;
throw new TypeError("Generator functions may not be called on executing generators");
} else if (tmp6 === 3) {
if (arg0 === 1) {
throw value;
} else if (arg0 === 2) {
const obj2 = { value, done: true };
return obj2;
} else {
return { value: "HermesInternal", done: null };
}
} else {
try {
c8 = 2;
if (0 === c7) {
if (arg0 === 1) {
c8 = 3;
throw value;
} else if (arg0 === 2) {
c8 = 3;
const obj3 = { value, done: true };
return obj3;
} else {
closure_4 = tmp2;
closure_3 = tmp4;
closure_131_1 = undefined;
closure_131_2 = undefined;
closure_131_0 = originalFile;
let num17 = closure_1;
if (closure_1 === undefined) {
num17 = 85;
}
closure_131_1 = num17;
closure_131_2 = closure_2;
closure_131_3 = undefined;
closure_131_6 = undefined;
closure_131_7 = undefined;
closure_131_8 = undefined;
closure_131_9 = undefined;
closure_131_10 = undefined;
closure_131_4 = function elapsed() {
return Math.round(performance.now() - closure_1_3);
};
closure_131_5 = function fail(reason) {
return { success: false, originalFile, sizeBefore: originalFile.size, sizeAfter: originalFile.size, reason, compressTimeMs: Math.round(performance.now() - closure_1_3) };
};
c7 = 1;
c8 = 1;
return { value: "PX_16", done: true };
}
} else if (1 === tmp7) {
if (arg0 === 1) {
c8 = 3;
throw value;
} else if (arg0 === 2) {
c8 = 3;
const obj4 = { value, done: true };
return obj4;
} else {
if (obj17.isHeicFile(closure_131_0)) {
const _performance = performance;
closure_131_3 = performance.now();
const tmp41 = closure_132_1(closure_132_2[3]);
let sysimg;
if (tmp41 != null) {
sysimg = tmp41.sysimg;
}
closure_131_6 = sysimg;
if (null == closure_131_6) {
closure_132_4.verbose("sysimg not available (not Electron)");
c8 = 3;
const obj5 = { value: closure_131_5(closure_132_5.NATIVE_MODULE_UNAVAILABLE), done: true };
return obj5;
} else {
c7 = 2;
c8 = 1;
const obj6 = { value: closure_131_6.canConvertHeic(), done: false };
return obj6;
}
} else {
c8 = 3;
return { value: null, done: true };
}
obj17 = closure_132_0(closure_132_2[2]);
}
} else if (2 === tmp7) {
if (arg0 === 1) {
c8 = 3;
throw value;
} else if (arg0 === 2) {
c8 = 3;
const obj7 = { value, done: true };
return obj7;
} else if (value) {
if (null != closure_131_2) {
if (closure_131_0.size > closure_131_2) {
const _HermesInternal2 = HermesInternal;
closure_132_4.verbose("file too large: " + closure_131_0.size + " > " + closure_131_2);
c8 = 3;
const obj8 = { value: closure_131_5(closure_132_5.SIZE_LIMIT_EXCEEDED), done: true };
return obj8;
}
}
c6 = 1;
c7 = 4;
c8 = 1;
const obj9 = { value: closure_131_0.arrayBuffer(), done: false };
return obj9;
} else {
closure_132_4.verbose("platform does not support HEIC conversion");
c8 = 3;
const obj10 = { value: closure_131_5(closure_132_5.PLATFORM_UNSUPPORTED), done: true };
return obj10;
}
} else if (3 === tmp7) {
c6 = 0;
closure_131_11 = closure_5;
const _HermesInternal = HermesInternal;
closure_132_4.warn("conversion failed for " + closure_131_0.name + ":", closure_131_11);
c8 = 3;
const obj11 = { value: closure_131_5(closure_132_5.CONVERSION_FAILED), done: true };
return obj11;
} else if (4 === tmp7) {
if (arg0 === 1) {
c8 = 3;
throw value;
} else if (arg0 === 2) {
c6 = 0;
c8 = 3;
const obj12 = { value, done: true };
return obj12;
} else {
closure_131_7 = value;
const _JSON = JSON;
const obj13 = { format: "jpeg", quality: null };
const _Math = Math;
const _Math2 = Math;
obj13.quality = Math.min(100, Math.max(1, closure_131_1));
closure_131_8 = JSON.stringify(obj13);
c7 = 5;
c8 = 1;
const obj14 = { value: closure_131_6.convertBytes(closure_131_7, closure_131_8), done: false };
return obj14;
}
} else if (arg0 === 1) {
c8 = 3;
throw value;
} else if (arg0 === 2) {
c6 = 0;
c8 = 3;
const obj15 = { value, done: true };
return obj15;
} else {
closure_131_9 = value;
const _Blob = Blob;
const items = [closure_131_9];
const blob = new Blob(items, { type: "image/jpeg" });
closure_131_10 = blob;
({ name, size } = closure_131_0);
const _HermesInternal3 = HermesInternal;
closure_132_4.log("converted " + name + ": " + size + " -> " + closure_131_10.size + " bytes in " + closure_131_4() + "ms");
const obj16 = { success: true, originalFile: closure_131_0, convertedBlob: closure_131_10, sizeBefore: closure_131_0.size, sizeAfter: closure_131_10.size, compressTimeMs: closure_131_4() };
c6 = 0;
c8 = 3;
const obj = { value: obj16, done: true };
return obj;
}
} catch (tmp54) {
closure_5 = tmp54;
if (tmp3 === c6) {
c8 = tmp;
throw tmp54;
} else {
c7 = tmp;
}
}
}
};
let closure_4 = new LoggerDefault("HEIC");
const HeicConversionFailureReason = { NATIVE_MODULE_UNAVAILABLE: "native_module_unavailable", PLATFORM_UNSUPPORTED: "platform_unsupported", SIZE_LIMIT_EXCEEDED: "size_limit_exceeded", CONVERSION_FAILED: "conversion_failed", UNKNOWN_ERROR: "unknown_error" };
const size = fn(2);
const result = size.fileFinishedImporting("lib/uploader/heicConversion.tsx");
export { HeicConversionFailureReason };
export const isHeicFile = fn(5171).isHeicFile;
export const renameToJpegExtension = fn(5171).renameToJpegExtension;
export const preConvertHeicForUpload = function preConvertHeicForUpload() {
const self = this;
const apply = closure_6.apply;
if (typeof apply === "unknown") {
let applyArgumentsResult = HermesBuiltin.applyArguments(self);
} else {
applyArgumentsResult = apply(self, arguments);
}
return applyArgumentsResult;
};
export { maybeConvertHeicToJpeg };