172 lines
4.9 KiB
JavaScript
172 lines
4.9 KiB
JavaScript
var __create = Object.create;
|
|
var __defProp = Object.defineProperty;
|
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
var __getProtoOf = Object.getPrototypeOf;
|
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
var __export = (target, all) => {
|
|
for (var name in all)
|
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
};
|
|
var __copyProps = (to, from, except, desc) => {
|
|
if (from && typeof from === "object" || typeof from === "function") {
|
|
for (let key of __getOwnPropNames(from))
|
|
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
}
|
|
return to;
|
|
};
|
|
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
// If the importer is in node compatibility mode or this is not an ESM
|
|
// file that has been converted to a CommonJS file using a Babel-
|
|
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
mod
|
|
));
|
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
|
|
// src/utils/index.ts
|
|
var utils_exports = {};
|
|
__export(utils_exports, {
|
|
addEventListenerWrapper: () => addEventListenerWrapper,
|
|
getChromeVersion: () => getChromeVersion,
|
|
getFileSuffix: () => getFileSuffix,
|
|
getImageSuffixByFileType: () => getImageSuffixByFileType,
|
|
getTransforms: () => getTransforms,
|
|
isChrome: () => import_isChrome.default,
|
|
loop: () => loop,
|
|
matchS3Prefix: () => matchS3Prefix,
|
|
nextTick: () => nextTick
|
|
});
|
|
module.exports = __toCommonJS(utils_exports);
|
|
var import_lodash_es = require("lodash-es");
|
|
var import_react_dom = __toESM(require("react-dom"));
|
|
var import_isChrome = __toESM(require("./isChrome"));
|
|
var matchS3Prefix = (str) => {
|
|
return /^v[0-9]_/.test(str);
|
|
};
|
|
var getFileSuffix = (fileName) => {
|
|
const splitArr = fileName.split(".");
|
|
return splitArr.length < 2 ? "" : splitArr[splitArr.length - 1];
|
|
};
|
|
var getImageSuffixByFileType = (type) => {
|
|
let imageSuffix = "";
|
|
switch (type) {
|
|
case "jpeg": {
|
|
imageSuffix = ".jpg";
|
|
break;
|
|
}
|
|
case "gif": {
|
|
imageSuffix = ".gif";
|
|
break;
|
|
}
|
|
case "png": {
|
|
imageSuffix = ".png";
|
|
break;
|
|
}
|
|
case "vnd.wap.wbmp": {
|
|
imageSuffix = ".wbmp";
|
|
break;
|
|
}
|
|
case "x-up-wpng": {
|
|
imageSuffix = ".wpng";
|
|
break;
|
|
}
|
|
case "nbmp": {
|
|
imageSuffix = ".nbmp";
|
|
break;
|
|
}
|
|
}
|
|
return imageSuffix;
|
|
};
|
|
function getChromeVersion() {
|
|
const arr = navigator.userAgent.split(" ");
|
|
let chromeVersion = "";
|
|
for (let i = 0; i < arr.length; i++) {
|
|
if (/chrome/i.test(arr[i]))
|
|
chromeVersion = arr[i];
|
|
}
|
|
if (chromeVersion) {
|
|
return Number(chromeVersion.split("/")[1].split(".")[0]);
|
|
} else {
|
|
return false;
|
|
}
|
|
}
|
|
var nextTick = (func) => {
|
|
if (queueMicrotask) {
|
|
queueMicrotask(func);
|
|
return;
|
|
}
|
|
Promise.resolve().then(func);
|
|
};
|
|
var loop = (items, callback) => {
|
|
for (let i = 0; i < items.length; i++) {
|
|
const element = items[i];
|
|
let isBreak = callback(element);
|
|
if (isBreak) {
|
|
return;
|
|
}
|
|
if (element["children"]) {
|
|
loop(element["children"], callback);
|
|
}
|
|
}
|
|
};
|
|
var addEventListenerWrapper = (target, eventType, cb, option) => {
|
|
const callback = import_react_dom.default.unstable_batchedUpdates ? function run(e) {
|
|
import_react_dom.default.unstable_batchedUpdates(cb, e);
|
|
} : cb;
|
|
if (target.addEventListener) {
|
|
target.addEventListener(eventType, callback, option);
|
|
}
|
|
return {
|
|
remove: () => {
|
|
if (target.removeEventListener) {
|
|
target.removeEventListener(eventType, callback);
|
|
}
|
|
}
|
|
};
|
|
};
|
|
function getTransforms({
|
|
rotate,
|
|
scaleX,
|
|
scaleY,
|
|
translateX,
|
|
translateY
|
|
}) {
|
|
const values = [];
|
|
if ((0, import_lodash_es.isNumber)(translateX) && translateX !== 0) {
|
|
values.push(`translateX(${translateX}px)`);
|
|
}
|
|
if ((0, import_lodash_es.isNumber)(translateY) && translateY !== 0) {
|
|
values.push(`translateY(${translateY}px)`);
|
|
}
|
|
if ((0, import_lodash_es.isNumber)(rotate) && rotate !== 0) {
|
|
values.push(`rotate(${rotate}deg)`);
|
|
}
|
|
if ((0, import_lodash_es.isNumber)(scaleX) && scaleX !== 1) {
|
|
values.push(`scaleX(${scaleX})`);
|
|
}
|
|
if ((0, import_lodash_es.isNumber)(scaleY) && scaleY !== 1) {
|
|
values.push(`scaleY(${scaleY})`);
|
|
}
|
|
const transform = values.length ? values.join(" ") : "none";
|
|
return {
|
|
WebkitTransform: transform,
|
|
msTransform: transform,
|
|
transform
|
|
};
|
|
}
|
|
// Annotate the CommonJS export names for ESM import in node:
|
|
0 && (module.exports = {
|
|
addEventListenerWrapper,
|
|
getChromeVersion,
|
|
getFileSuffix,
|
|
getImageSuffixByFileType,
|
|
getTransforms,
|
|
isChrome,
|
|
loop,
|
|
matchS3Prefix,
|
|
nextTick
|
|
});
|