720 lines
25 KiB
TypeScript
720 lines
25 KiB
TypeScript
// Module ID: 4883
|
|
// Function ID: 4884
|
|
// Name: _shouldConvertToWebP
|
|
// Dependencies: [5, 3, 4884, 1217, 2]
|
|
// Exports: maybeConvertToWebP
|
|
|
|
// Module 4883 (_shouldConvertToWebP)
|
|
import timestampDefault from "timestamp" /* 3 */;
|
|
import MurmurHashV3Default from "MurmurHashV3" /* 1217 */;
|
|
import closure_3 from "asyncGeneratorStep" /* 5 */;
|
|
|
|
const require = arg1;
|
|
function _shouldConvertToWebP() {
|
|
const self = this;
|
|
const apply = _shouldConvertToWebP2.apply;
|
|
if (typeof apply === "unknown") {
|
|
let applyArgumentsResult = HermesBuiltin.applyArguments(self);
|
|
} else {
|
|
applyArgumentsResult = apply(self, arguments);
|
|
}
|
|
return applyArgumentsResult;
|
|
}
|
|
function _shouldConvertToWebP2() {
|
|
const self = this;
|
|
const tmp = callback((arg0) => {
|
|
closure_0 = arg0;
|
|
c5 = 0;
|
|
c6 = 0;
|
|
c4 = 0;
|
|
return (function*(arg0) {
|
|
if (c6 === 2) {
|
|
c6 = 3;
|
|
HermesBuiltin.throwTypeError();
|
|
} else if (tmp8 === 3) {
|
|
if (arg0 === 1) {
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
obj = { value: null, done: true };
|
|
obj[0] = arg1;
|
|
return obj;
|
|
} else {
|
|
return { value: "HermesInternal", done: null };
|
|
}
|
|
} else {
|
|
try {
|
|
c6 = 2;
|
|
if (0 === c5) {
|
|
if (arg0 === 1) {
|
|
c6 = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
c6 = 3;
|
|
obj = { value: null, done: true };
|
|
obj[0] = arg1;
|
|
return obj;
|
|
} else {
|
|
let obj11 = tmp4;
|
|
closure_1 = tmp9;
|
|
closure_1 = undefined;
|
|
obj11 = undefined;
|
|
if ("image/webp" === lib.type) {
|
|
c4.verbose("[WebP] File already WebP format");
|
|
c6 = 3;
|
|
obj1 = { value: null, done: true };
|
|
obj1[0] = c5.ALREADY_WEBP;
|
|
return obj1;
|
|
} else {
|
|
const items = ["image/png"];
|
|
if (items.includes(obj18.type)) {
|
|
c4 = 1;
|
|
if (typeof obj18.arrayBuffer === "function") {
|
|
c5 = 4;
|
|
c6 = 1;
|
|
const obj2 = { value: null, done: false };
|
|
obj2[0] = obj18.arrayBuffer();
|
|
return obj2;
|
|
} else {
|
|
const promise = new Promise((closure_0) => {
|
|
closure_1 = arg1;
|
|
const fileReader = new FileReader();
|
|
fileReader.onload = () => callback(fileReader.result);
|
|
fileReader.onerror = () => {
|
|
error = new Error("Failed to read file as ArrayBuffer");
|
|
return callback2(error);
|
|
};
|
|
const asArrayBuffer = fileReader.readAsArrayBuffer(closure_0);
|
|
});
|
|
c5 = 3;
|
|
c6 = 1;
|
|
const obj3 = { value: null, done: false };
|
|
obj3[0] = promise;
|
|
return obj3;
|
|
}
|
|
} else {
|
|
const _HermesInternal = HermesInternal;
|
|
c4.verbose("[WebP] Unsupported format: " + obj18.type);
|
|
c6 = 3;
|
|
const obj4 = { value: null, done: true };
|
|
obj4[0] = c5.UNSUPPORTED_FORMAT;
|
|
return obj4;
|
|
}
|
|
}
|
|
}
|
|
} else if (1 === tmp9) {
|
|
c4 = 0;
|
|
c4.warn("[WebP] Failed to read file data:", closure_3);
|
|
c6 = 3;
|
|
const obj5 = { value: null, done: true };
|
|
obj5[0] = c5.CONVERSION_FAILED;
|
|
return obj5;
|
|
} else if (2 === tmp9) {
|
|
c4 = 0;
|
|
c4 = closure_3;
|
|
c4.warn("[WebP] PNG analysis failed:", c4);
|
|
c6 = 3;
|
|
const obj6 = { value: null, done: true };
|
|
obj6[0] = c5.CORRUPTED_FILE;
|
|
return obj6;
|
|
} else {
|
|
if (3 === tmp9) {
|
|
if (arg0 === 1) {
|
|
c6 = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
c4 = 0;
|
|
c6 = 3;
|
|
const obj7 = { value: null, done: true };
|
|
obj7[0] = arg1;
|
|
return obj7;
|
|
}
|
|
} else if (4 === tmp9) {
|
|
if (arg0 === 1) {
|
|
c6 = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
c4 = 0;
|
|
c6 = 3;
|
|
const obj8 = { value: null, done: true };
|
|
obj8[0] = arg1;
|
|
return obj8;
|
|
}
|
|
} else if (5 === tmp9) {
|
|
c4 = 0;
|
|
c5 = closure_3;
|
|
c4.warn("[WebP] ICC profile detection failed:", c5);
|
|
c6 = 3;
|
|
const obj9 = { value: null, done: true };
|
|
obj9[0] = c5.ICC_DETECTION_FAILED;
|
|
return obj9;
|
|
} else if (arg0 === 1) {
|
|
c6 = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
c4 = 0;
|
|
c6 = 3;
|
|
const obj10 = { value: null, done: true };
|
|
obj10[0] = arg1;
|
|
return obj10;
|
|
} else if (arg1) {
|
|
c4 = 0;
|
|
c6 = 3;
|
|
return { value: null, done: true };
|
|
} else {
|
|
c4 = 0;
|
|
c6 = 3;
|
|
obj = { value: null, done: true };
|
|
obj[0] = c5.ICC_NON_SRGB_PROFILE;
|
|
return obj;
|
|
}
|
|
closure_1 = arg1;
|
|
c4 = 2;
|
|
const DiscordImageFactory = lib(obj11[2]).DiscordImageFactory;
|
|
obj11 = DiscordImageFactory.create(closure_1);
|
|
if (null == obj11) {
|
|
const _Error = Error;
|
|
error = new Error("DiscordImage.create returned null");
|
|
throw error;
|
|
} else if (obj11.hasTransparency()) {
|
|
c4.verbose("[webp] png uses actual transparency - skipping conversion");
|
|
c4 = 0;
|
|
c6 = 3;
|
|
const obj12 = { value: null, done: true };
|
|
obj12[0] = c5.HAS_TRANSPARENCY;
|
|
return obj12;
|
|
} else if (obj11.isAnimated()) {
|
|
c4.verbose("[webp] png is animated (apng) - skipping conversion");
|
|
c4 = 0;
|
|
c6 = 3;
|
|
const obj13 = { value: null, done: true };
|
|
obj13[0] = c5.ANIMATED_IMAGE;
|
|
return obj13;
|
|
} else if (obj11.isPng8()) {
|
|
c4.verbose("[webp] png is PNG8 format (indexed color) - skipping conversion");
|
|
c4 = 0;
|
|
c6 = 3;
|
|
const obj14 = { value: null, done: true };
|
|
obj14[0] = c5.PNG8_FORMAT;
|
|
return obj14;
|
|
} else {
|
|
c4 = 3;
|
|
c5 = 6;
|
|
c6 = 1;
|
|
const obj15 = { value: null, done: false };
|
|
obj15[0] = obj11.hasSrgbIccProfile();
|
|
return obj15;
|
|
}
|
|
}
|
|
} catch (tmp71) {
|
|
closure_3 = tmp71;
|
|
if (tmp5 === c4) {
|
|
c6 = tmp3;
|
|
throw tmp71;
|
|
} else if (tmp2 === tmp73) {
|
|
c5 = tmp2;
|
|
} else if (tmp === tmp73) {
|
|
c5 = tmp;
|
|
} else {
|
|
c5 = tmp6;
|
|
}
|
|
}
|
|
}
|
|
})();
|
|
});
|
|
closure_7 = tmp;
|
|
const apply = tmp.apply;
|
|
if (typeof apply === "unknown") {
|
|
let applyArgumentsResult = HermesBuiltin.applyArguments(self);
|
|
} else {
|
|
applyArgumentsResult = apply(self, arguments);
|
|
}
|
|
return applyArgumentsResult;
|
|
}
|
|
function hashImageData(data) {
|
|
const uint8Array = new Uint8Array(data.data.buffer);
|
|
return MurmurHashV3Default(uint8Array).toString(16);
|
|
}
|
|
function _performWebPConversion() {
|
|
const self = this;
|
|
const tmp = callback((arg0) => {
|
|
closure_0 = arg0;
|
|
c5 = 0;
|
|
c6 = 0;
|
|
c4 = 0;
|
|
return (function*(arg0) {
|
|
if (c6 === 2) {
|
|
c6 = 3;
|
|
HermesBuiltin.throwTypeError();
|
|
} else if (tmp7 === 3) {
|
|
if (arg0 === 1) {
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
obj = { value: null, done: true };
|
|
obj[0] = arg1;
|
|
return obj;
|
|
} else {
|
|
return { value: "HermesInternal", done: null };
|
|
}
|
|
} else {
|
|
try {
|
|
c6 = 2;
|
|
if (0 === context) {
|
|
if (arg0 === 1) {
|
|
c6 = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
c6 = 3;
|
|
obj = { value: null, done: true };
|
|
obj[0] = arg1;
|
|
return obj;
|
|
} else {
|
|
context = tmp3;
|
|
let element = tmp8;
|
|
element = undefined;
|
|
context = undefined;
|
|
let image;
|
|
c4 = undefined;
|
|
context = undefined;
|
|
c6 = undefined;
|
|
closure_7 = undefined;
|
|
context = undefined;
|
|
closure_9 = undefined;
|
|
closure_10 = undefined;
|
|
closure_11 = undefined;
|
|
closure_12 = undefined;
|
|
closure_13 = undefined;
|
|
closure_14 = undefined;
|
|
const _document = document;
|
|
context = closure_0;
|
|
element = <canvas />;
|
|
context = element.getContext("2d");
|
|
if (null == context) {
|
|
const _Error2 = Error;
|
|
error = new Error("could not get canvas context");
|
|
throw error;
|
|
} else {
|
|
image = new globalThis.Image();
|
|
const _URL5 = URL;
|
|
c4 = URL.createObjectURL(context);
|
|
c4 = 1;
|
|
const promise = new Promise((arg0, arg1) => {
|
|
closure_0 = arg0;
|
|
closure_1 = arg1;
|
|
image.onload = () => callback();
|
|
image.onerror = () => {
|
|
error = new Error("failed to load image");
|
|
return callback2(error);
|
|
};
|
|
image.src = c4;
|
|
});
|
|
context = 3;
|
|
c6 = 1;
|
|
obj1 = { value: null, done: false };
|
|
obj1[0] = promise;
|
|
return obj1;
|
|
}
|
|
}
|
|
} else if (1 === tmp8) {
|
|
c4 = 0;
|
|
const _URL4 = URL;
|
|
URL.revokeObjectURL(c4);
|
|
throw image;
|
|
} else if (2 === tmp8) {
|
|
if (arg0 === 1) {
|
|
c6 = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
c6 = 3;
|
|
const obj2 = { value: null, done: true };
|
|
obj2[0] = arg1;
|
|
return obj2;
|
|
} else {
|
|
context = element;
|
|
context = arg1;
|
|
if (null == context) {
|
|
const _Error = Error;
|
|
const error1 = new Error("failed to convert to webp");
|
|
throw error1;
|
|
} else {
|
|
const _performance = performance;
|
|
c6 = performance.now();
|
|
context = 4;
|
|
c6 = 1;
|
|
const obj3 = { value: null, done: false };
|
|
obj3[0] = context.getImageData(0, 0, element.width, element.height);
|
|
return obj3;
|
|
}
|
|
}
|
|
} else if (3 === tmp8) {
|
|
if (arg0 === 1) {
|
|
c6 = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
c4 = 0;
|
|
const _URL3 = URL;
|
|
URL.revokeObjectURL(c4);
|
|
c6 = 3;
|
|
const obj4 = { value: null, done: true };
|
|
obj4[0] = arg1;
|
|
return obj4;
|
|
} else {
|
|
context = element;
|
|
context = element;
|
|
context = image;
|
|
element.width = image.width;
|
|
context = element;
|
|
context = image;
|
|
element.height = image.height;
|
|
context = image;
|
|
context = context.drawImage(image, 0, 0);
|
|
c4 = 0;
|
|
context = element;
|
|
const _URL8 = URL;
|
|
context = c4;
|
|
context = URL.revokeObjectURL(c4);
|
|
context = element;
|
|
context = new.target;
|
|
context = new.target;
|
|
context = new Promise((arg0) => {
|
|
element.toBlob(arg0, "image/webp", 1);
|
|
});
|
|
context = 2;
|
|
c6 = 1;
|
|
const obj5 = { value: null, done: false };
|
|
obj5[0] = context;
|
|
return obj5;
|
|
}
|
|
} else if (4 === tmp8) {
|
|
if (arg0 === 1) {
|
|
c6 = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
c6 = 3;
|
|
const obj6 = { value: null, done: true };
|
|
obj6[0] = arg1;
|
|
return obj6;
|
|
} else {
|
|
closure_7 = arg1;
|
|
context = element;
|
|
context = element;
|
|
context = context.clearRect(0, 0, element.width, element.height);
|
|
context = new.target;
|
|
context = new.target;
|
|
context = new globalThis.Image();
|
|
const _URL7 = URL;
|
|
closure_9 = URL.createObjectURL(context);
|
|
context = element;
|
|
c4 = 2;
|
|
context = new.target;
|
|
context = new.target;
|
|
context = new Promise((arg0, arg1) => {
|
|
closure_0 = arg0;
|
|
closure_1 = arg1;
|
|
context.onload = () => callback();
|
|
context.onerror = () => {
|
|
error = new Error("failed to load image");
|
|
return callback2(error);
|
|
};
|
|
context.src = closure_9;
|
|
});
|
|
context = 7;
|
|
c6 = 1;
|
|
const obj7 = { value: null, done: false };
|
|
obj7[0] = context;
|
|
return obj7;
|
|
}
|
|
} else if (5 === tmp8) {
|
|
c4 = 0;
|
|
const _URL2 = URL;
|
|
URL.revokeObjectURL(closure_9);
|
|
throw image;
|
|
} else if (6 === tmp8) {
|
|
if (arg0 === 1) {
|
|
c6 = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
c6 = 3;
|
|
const obj8 = { value: null, done: true };
|
|
obj8[0] = arg1;
|
|
return obj8;
|
|
} else {
|
|
closure_10 = arg1;
|
|
closure_11 = context(closure_7);
|
|
closure_12 = context(closure_10);
|
|
closure_13 = closure_11 === closure_12;
|
|
const _performance2 = performance;
|
|
closure_14 = performance.now() - c6;
|
|
const name = closure_0.name;
|
|
const _Math = Math;
|
|
({ width, height } = context);
|
|
const _HermesInternal = HermesInternal;
|
|
c4.verbose("[WebP] Pixel hash results: fileName=" + name + " fileLength={" + closure_0.size + "} width=" + width + " height=" + height + " pixelHash=" + closure_11 + " mezzanineFileLength={" + context.size + "} mezzaninePixelHash=" + closure_12 + " match=" + closure_13 + " elapsed_ms=" + Math.round(closure_14));
|
|
if (closure_13) {
|
|
const obj9 = { success: true, webpBlob: null, pixelHashTimeMs: null };
|
|
obj9[1] = context;
|
|
obj9[2] = closure_14;
|
|
} else {
|
|
const obj10 = { success: false, reason: null, pixelHashTimeMs: null };
|
|
obj10[1] = context.PIXEL_HASH_MISMATCH;
|
|
obj10[2] = closure_14;
|
|
}
|
|
c6 = 3;
|
|
}
|
|
} else if (arg0 === 1) {
|
|
c6 = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
c4 = 0;
|
|
const _URL = URL;
|
|
URL.revokeObjectURL(closure_9);
|
|
c6 = 3;
|
|
const obj11 = { value: null, done: true };
|
|
obj11[0] = arg1;
|
|
return obj11;
|
|
} else {
|
|
context.drawImage(context, 0, 0);
|
|
c4 = 0;
|
|
const _URL6 = URL;
|
|
URL.revokeObjectURL(closure_9);
|
|
context = 6;
|
|
c6 = 1;
|
|
obj = { value: null, done: false };
|
|
obj[0] = context.getImageData(0, 0, element.width, element.height);
|
|
return obj;
|
|
}
|
|
} catch (tmp54) {
|
|
image = tmp54;
|
|
if (tmp4 === c4) {
|
|
c6 = tmp2;
|
|
throw tmp54;
|
|
} else if (context !== tmp56) {
|
|
context = tmp5;
|
|
}
|
|
}
|
|
}
|
|
})();
|
|
});
|
|
closure_9 = tmp;
|
|
const apply = tmp.apply;
|
|
if (typeof apply === "unknown") {
|
|
let applyArgumentsResult = HermesBuiltin.applyArguments(self);
|
|
} else {
|
|
applyArgumentsResult = apply(self, arguments);
|
|
}
|
|
return applyArgumentsResult;
|
|
}
|
|
function _maybeConvertToWebP() {
|
|
let self = this;
|
|
const tmp = callback((arg0) => {
|
|
closure_0 = arg0;
|
|
c6 = 0;
|
|
c7 = 0;
|
|
c5 = 0;
|
|
return (function*(arg0) {
|
|
if (c7 === 2) {
|
|
c7 = 3;
|
|
HermesBuiltin.throwTypeError();
|
|
} else if (tmp7 === 3) {
|
|
if (arg0 === 1) {
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
obj = { value: null, done: true };
|
|
obj[0] = arg1;
|
|
return obj;
|
|
} else {
|
|
return { value: "HermesInternal", done: null };
|
|
}
|
|
} else {
|
|
try {
|
|
c7 = 2;
|
|
if (0 === webpBlob) {
|
|
if (arg0 === 1) {
|
|
c7 = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
c7 = 3;
|
|
obj = { value: null, done: true };
|
|
obj[0] = arg1;
|
|
return obj;
|
|
} else {
|
|
let createFailedResult = tmp3;
|
|
closure_2 = tmp5;
|
|
let UNKNOWN_ERROR;
|
|
closure_2 = undefined;
|
|
closure_4 = undefined;
|
|
c5 = undefined;
|
|
webpBlob = undefined;
|
|
c7 = undefined;
|
|
closure_8 = undefined;
|
|
createFailedResult = function createFailedResult(CONVERSION_FAILED, size) {
|
|
if (size === undefined) {
|
|
size = closure_0.size;
|
|
}
|
|
obj = { success: false, originalFile: closure_0, sizeBefore: closure_0.size, sizeAfter: size, compressionRatio: null, reason: null, compressTimeMs: null };
|
|
let num = 1;
|
|
if (closure_0.size > 0) {
|
|
num = size / closure_0.size;
|
|
}
|
|
obj[4] = num;
|
|
obj[5] = CONVERSION_FAILED;
|
|
obj[6] = Math.round(performance.now() - closure_2);
|
|
return obj;
|
|
};
|
|
if (null == user) {
|
|
const _Error = Error;
|
|
error = new Error("file is null or undefined");
|
|
throw error;
|
|
} else {
|
|
const _HermesInternal4 = HermesInternal;
|
|
closure_1_4.verbose("[WebP] Starting conversion for: " + tmp90.name);
|
|
const _performance = performance;
|
|
closure_2 = performance.now();
|
|
c5 = 1;
|
|
webpBlob = 2;
|
|
c7 = 1;
|
|
obj1 = { value: null, done: false };
|
|
obj1[0] = v0(tmp90);
|
|
return obj1;
|
|
}
|
|
}
|
|
} else if (1 === tmp8) {
|
|
c5 = 0;
|
|
closure_9 = closure_4;
|
|
const _HermesInternal3 = HermesInternal;
|
|
closure_1_4.error("[WebP] Conversion failed for " + user.name + ":", closure_9);
|
|
c7 = 3;
|
|
const obj2 = { value: null, done: true };
|
|
obj2[0] = createFailedResult(c5.CONVERSION_FAILED);
|
|
return obj2;
|
|
} else if (2 === tmp8) {
|
|
if (arg0 === 1) {
|
|
c7 = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
c5 = 0;
|
|
c7 = 3;
|
|
const obj3 = { value: null, done: true };
|
|
obj3[0] = arg1;
|
|
return obj3;
|
|
} else {
|
|
closure_4 = arg1;
|
|
if (null != closure_4) {
|
|
const _HermesInternal2 = HermesInternal;
|
|
closure_4.verbose("[WebP] Conversion rejected: " + closure_1_4);
|
|
c5 = 0;
|
|
c7 = 3;
|
|
const obj4 = { value: null, done: true };
|
|
obj4[0] = closure_1_3(closure_1_4);
|
|
return obj4;
|
|
} else {
|
|
webpBlob = 3;
|
|
c7 = 1;
|
|
const obj5 = { value: null, done: false };
|
|
obj5[0] = (function performWebPConversion(closure_0) {
|
|
const self = this;
|
|
const apply = closure_9.apply;
|
|
if (typeof apply === "unknown") {
|
|
let applyArgumentsResult = HermesBuiltin.applyArguments(self);
|
|
} else {
|
|
applyArgumentsResult = apply(self, arguments);
|
|
}
|
|
return applyArgumentsResult;
|
|
})(user);
|
|
return obj5;
|
|
}
|
|
}
|
|
} else if (arg0 === 1) {
|
|
c7 = 3;
|
|
throw arg1;
|
|
} else if (arg0 === 2) {
|
|
c5 = 0;
|
|
c7 = 3;
|
|
const obj6 = { value: null, done: true };
|
|
obj6[0] = arg1;
|
|
return obj6;
|
|
} else {
|
|
c5 = arg1;
|
|
if (c5.success) {
|
|
if (null != c5.webpBlob) {
|
|
webpBlob = c5.webpBlob;
|
|
let num2 = 1;
|
|
if (user.size > 0) {
|
|
num2 = webpBlob.size / user.size;
|
|
}
|
|
c7 = num2;
|
|
closure_8 = 1 - c7;
|
|
if (closure_8 < 0) {
|
|
const _Math = Math;
|
|
const _HermesInternal = HermesInternal;
|
|
closure_4.verbose("[WebP] Insufficient savings: " + Math.round(100 * closure_8) + "% < 0% (" + user.size + " -> " + webpBlob.size + " bytes)");
|
|
createFailedResult(c5.INSUFFICIENT_SAVINGS, webpBlob.size);
|
|
} else {
|
|
const _performance2 = performance;
|
|
UNKNOWN_ERROR = performance.now() - closure_2;
|
|
const name = user.name;
|
|
const _Math2 = Math;
|
|
const _HermesInternal5 = HermesInternal;
|
|
closure_4.verbose("[WebP] Conversion successful: " + name + " to WebP in " + Math.round(UNKNOWN_ERROR) + "ms");
|
|
const obj7 = { success: true, originalFile: null, convertedBlob: null, sizeBefore: null, sizeAfter: null, compressionRatio: null, hashTimeMs: null, compressTimeMs: null };
|
|
obj7[1] = user;
|
|
obj7[2] = webpBlob;
|
|
obj7[3] = user.size;
|
|
obj7[4] = webpBlob.size;
|
|
obj7[5] = c7;
|
|
obj7[6] = c5.pixelHashTimeMs;
|
|
const _Math3 = Math;
|
|
obj7[7] = Math.round(UNKNOWN_ERROR);
|
|
}
|
|
c5 = 0;
|
|
c7 = 3;
|
|
}
|
|
}
|
|
const reason = c5.reason;
|
|
UNKNOWN_ERROR = reason;
|
|
if (reason == null) {
|
|
UNKNOWN_ERROR = c5.UNKNOWN_ERROR;
|
|
}
|
|
c5 = 0;
|
|
c7 = 3;
|
|
obj = { value: null, done: true };
|
|
obj[0] = createFailedResult(UNKNOWN_ERROR);
|
|
return obj;
|
|
}
|
|
} catch (tmp59) {
|
|
closure_4 = tmp59;
|
|
if (tmp4 === c5) {
|
|
c7 = tmp2;
|
|
throw tmp59;
|
|
} else {
|
|
webpBlob = tmp;
|
|
}
|
|
}
|
|
}
|
|
})();
|
|
});
|
|
closure_10 = tmp;
|
|
let apply = tmp.apply;
|
|
if (typeof apply === "unknown") {
|
|
let applyArgumentsResult = HermesBuiltin.applyArguments(self);
|
|
} else {
|
|
applyArgumentsResult = apply(self, arguments);
|
|
}
|
|
return applyArgumentsResult;
|
|
}
|
|
let closure_4 = new timestampDefault("WebP");
|
|
let obj = { ALREADY_WEBP: "already_webp", UNSUPPORTED_FORMAT: "unsupported_format", ANIMATED_IMAGE: "animated_image", HAS_TRANSPARENCY: "has_transparency", PNG8_FORMAT: "png8_format", INSUFFICIENT_SAVINGS: "insufficient_savings", CONVERSION_FAILED: "conversion_failed", CORRUPTED_FILE: "corrupted_file", PIXEL_HASH_MISMATCH: "pixel_hash_mismatch", ICC_NON_SRGB_PROFILE: "icc_non_srgb_profile", ICC_DETECTION_FAILED: "icc_detection_failed", UNKNOWN_ERROR: "unknown_error" };
|
|
const tmp2 = new timestampDefault("WebP");
|
|
const result = require("set").fileFinishedImporting("lib/uploader/webpConversion.tsx");
|
|
|
|
export const ConversionFailureReason = obj;
|
|
export { _shouldConvertToWebP };
|
|
export const maybeConvertToWebP = function maybeConvertToWebP(closure_0) {
|
|
const self = this;
|
|
const apply = _maybeConvertToWebP.apply;
|
|
if (typeof apply === "unknown") {
|
|
let applyArgumentsResult = HermesBuiltin.applyArguments(self);
|
|
} else {
|
|
applyArgumentsResult = apply(self, arguments);
|
|
}
|
|
return applyArgumentsResult;
|
|
};
|