nhanh-pure-function 3.0.0 → 3.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -48,17 +48,25 @@ export declare class _Element_LocalDrag {
48
48
  mouseup(): void;
49
49
  }
50
50
  /** 进入全屏模式 */
51
- export declare function _Element_EnterFullscreen(content?: HTMLElement): Promise<void>;
51
+ export declare function _Element_EnterFullscreen(content?: HTMLElement | string): Promise<void>;
52
52
  /** 退出全屏模式 */
53
53
  export declare function _Element_ExitFullscreen(): Promise<void>;
54
54
  /** 判断是否处于全屏模式 */
55
- export declare function _Element_IsFullscreen(content?: HTMLElement): boolean;
55
+ export declare function _Element_IsFullscreen(content?: HTMLElement | string): boolean;
56
56
  /**
57
57
  * 返回一个用于切换全屏模式的函数
58
58
  * @param {HTMLElement} content - 需要进入全屏的元素
59
59
  * 该函数通过检查不同浏览器的特定方法来实现全屏切换
60
60
  */
61
- export declare function _Element_Fullscreen(content?: HTMLElement): () => void;
61
+ export declare function _Element_Fullscreen(content?: HTMLElement | string): () => void;
62
+ /**
63
+ * 元素全屏状态观察器
64
+ * 监听元素的全屏状态变化,并通过回调函数通知状态改变
65
+ * @param notify - 全屏状态变化回调函数,接收一个布尔值参数表示当前是否为全屏状态
66
+ * @param selectors - 要观察的元素或元素选择器,默认为document.documentElement
67
+ * @returns 返回一个清理函数,调用后可移除所有事件监听器
68
+ */
69
+ export declare function _Element_FullscreenObserver(notify: (isFull: boolean) => void, selectors?: HTMLElement | string): () => void;
62
70
  /**
63
71
  * 单位转换 12** -> **px
64
72
  * @param {string} width
@@ -27,9 +27,11 @@ export declare function _Math_PointToLineDistance(point: [number, number], lineS
27
27
  * @param radius 圆弧半径
28
28
  * @param startAngle 起始角度(弧度制,0表示X轴正方向)
29
29
  * @param endAngle 结束角度(弧度制)
30
+ * @param axisX X轴方向(1=正方向向右,-1=正方向向左)
31
+ * @param axisY Y轴方向(1=正方向向上,-1=正方向向下)
30
32
  * @returns [起点坐标[x,y], 终点坐标[x,y]]
31
33
  */
32
- export declare function _Math_GetArcPoints(x: number, y: number, radius: number, startAngle: number, endAngle: number): [[number, number], [number, number]];
34
+ export declare function _Math_GetArcPoints(x: number, y: number, radius: number, startAngle: number, endAngle: number, axisX?: number, axisY?: number): [[number, number], [number, number]];
33
35
  /** 计算平面直角坐标系中两点的距离 */
34
36
  export declare function _Math_CalculateDistance2D(x1: number, y1: number, x2: number, y2: number): number;
35
37
  /** 获取两点的中点 */
@@ -37,3 +39,12 @@ export declare function _Math_GetMidpoint(x1: number, y1: number, x2: number, y2
37
39
  x: number;
38
40
  y: number;
39
41
  };
42
+ /**
43
+ * 计算从起点沿方向向量延伸后与画布边界的交点
44
+ * @param startPoint 线段起点坐标 [x, y]
45
+ * @param direction 方向向量 [dx, dy]
46
+ * @param canvasWidth 画布宽度
47
+ * @param canvasHeight 画布高度
48
+ * @returns 与边界的交点坐标
49
+ */
50
+ export declare function _Math_GetBoundaryIntersection(startPoint: [number, number], direction: [number, number], canvasWidth: number, canvasHeight: number): [number, number];
@@ -46,9 +46,10 @@ export declare function _Utility_Throttle<T extends (...args: any[]) => void>(fn
46
46
  *
47
47
  * @param {Object} model - 要初始化的模型对象
48
48
  * @param {string} path - 属性路径,使用英文句点分隔
49
- * @returns {any} 路径的最后一个属性对应的值或undefined
49
+ * @param {any} initValue - 初始值
50
+ * @returns {any} 路径的最后一个属性对应的值或 initValue
50
51
  */
51
- export declare function _Utility_InitTargetByPath(model: any, path: string): any;
52
+ export declare function _Utility_InitTargetByPath(model: any, path: string, initValue?: any): any;
52
53
  /**
53
54
  * 根据路径获取目标对象
54
55
  * 该函数用于在给定的模型中,通过路径字符串来获取深层嵌套的目标对象如果路径中的某一部分不存在,则会创建一个新的对象(除非已经是路径的最后一部分)
@@ -69,7 +70,7 @@ export declare function _Utility_GetTargetByPath(model: any, path: string): any;
69
70
  * @param {*} value - 要设置的新值
70
71
  * @returns {*} - 返回更新后的模型对象中的值
71
72
  */
72
- export declare function _Utility_UpdateTargetByPath(model: any, path: string, value: any): any;
73
+ export declare function _Utility_SetTargetByPath(model: any, path: string, value: any): any;
73
74
  /**
74
75
  * 旋转列表函数
75
76
  *
@@ -36,6 +36,15 @@ export declare function _Valid_IsInMargin(value: number, target: number, errorMa
36
36
  * @returns boolean - 点是否在多边形内
37
37
  */
38
38
  export declare function _Valid_IsPointInPolygon(point: Point, polygon: Point[]): boolean;
39
+ /**
40
+ * 判断无限延伸的直线是否与矩形区域相交
41
+ * @param rectCorner1 矩形对角顶点1 [x, y]
42
+ * @param rectCorner2 矩形对角顶点2 [x, y]
43
+ * @param linePointA 直线上一点A [x, y]
44
+ * @param linePointB 直线上一点B [x, y]
45
+ * @returns 直线是否与矩形相交
46
+ */
47
+ export declare function _Valid_DoesInfiniteLineIntersectRectangle(rectCorner1: [number, number], rectCorner2: [number, number], linePointA: [number, number], linePointB: [number, number]): boolean;
39
48
  /**
40
49
  * 数据类型
41
50
  * @param {any} value
package/dist/index.cjs.js CHANGED
@@ -1,3 +1,3 @@
1
- (function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode(".nhanh-pure-function{--nhanh: 2233}.no-select{-webkit-user-select:none;-ms-user-select:none;user-select:none}")),document.head.appendChild(e)}}catch(n){console.error("vite-plugin-css-injected-by-js",n)}})();
2
- "use strict";var dt=Object.defineProperty;var et=n=>{throw TypeError(n)};var ht=(n,e,t)=>e in n?dt(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var E=(n,e,t)=>ht(n,typeof e!="symbol"?e+"":e,t),nt=(n,e,t)=>e.has(n)||et("Cannot "+t);var c=(n,e,t)=>(nt(n,e,"read from private field"),t?t.call(n):e.get(n)),f=(n,e,t)=>e.has(n)?et("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(n):e.set(n,t),m=(n,e,t,i)=>(nt(n,e,"write to private field"),i?i.call(n,t):e.set(n,t),t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function ft(n,e=500){let t,i=!0;function o(r){if(!i)return;t||(t=r);let s=Math.min((r-t)/e,1);n(s),r-t<e&&requestAnimationFrame(o)}return requestAnimationFrame(o),()=>i=!1}function pt(n,e,t,i,o=2){let r=n,s=!1,a=1,u=n,l=e,d=t;const h=()=>{const g=(l-u)/d;return Number(g.toFixed(o))};let y=h();const P=g=>Math.min(Math.max(g,u),l),j=g=>Number(g.toFixed(o)),Y=(g,W,H)=>{const D=[];return g>=W&&D.push("最小值必须小于最大值"),H<=0&&D.push("分段数必须为正数"),D},mt=(g,W,H)=>{const D=Y(g,W,H);return D.length>0?(console.error(`参数更新失败: ${D.join("; ")}`),!1):(u=g,l=W,d=H,y=h(),r=P(r),!0)},tt=()=>{s&&(a=r>=l?-1:r<=u?1:a,r=P(r+y*a),i(j(r)),requestAnimationFrame(tt))};return{play(g=r){if(r=P(g),Y(u,l,d).length)return console.warn("配置参数错误",this.getParams());s||(s=!0,tt())},pause(){s=!1},getCurrent:()=>j(r),isPlaying:()=>s,updateParams:mt,getParams:()=>({min:u,max:l,steps:d,precision:o,stepSize:y})}}function _t(n,e,t,i,o=2){if(t<=0)return;const r=h=>Number(h.toFixed(o)),s=e-n,a=r(Math.abs(s)/t);if(a===0)return;const u=Math.sign(s);let l=n;const d=()=>{l=r(l+a*u),(u>0?l<e:l>e)?(i(l),requestAnimationFrame(d)):i(e)};d()}function gt(n,e="image/png"){try{let t,i=e;if(n instanceof File)return URL.createObjectURL(n);if(typeof n=="string"){let r=n;const s=r.match(/^data:([^;]*)(;base64)?,(.*)$/i);if(s){if(!s[2])return console.error("无效的数据 URL:缺少 base64 编码声明");if(i=s[1]||i,r=s[3],!r)return console.error("数据 URL 包含空有效负载")}r=r.replace(/[^A-Za-z0-9+/=]/g,"");const a=atob(r);t=new Uint8Array(a.length);for(let u=0;u<a.length;u++)t[u]=a.charCodeAt(u)}else if(n instanceof ArrayBuffer)t=new Uint8Array(n);else if(n instanceof Uint8Array)t=n;else return console.error("不支持的数据类型。应为 Base64 字符串、ArrayBuffer 或 Uint8Array");const o=new Blob([t],{type:i});return URL.createObjectURL(o)}catch(t){return console.error("数据到 ImageURL 的转换失败:",t.message,t.stack||"没有可用的堆栈跟踪"),null}}function yt(n,e=10){let t=0,i=e;function o(){if(i>0)i--,requestAnimationFrame(o);else{const s=(+new Date-t)/e,a=1e3/s;n(Number(a.toFixed(2)),Number(s.toFixed(2)))}}requestAnimationFrame(()=>{t=+new Date,o()})}function xt(n){const e=()=>Promise.resolve(),t=a=>(console.error(a),Promise.reject(a));function i(){return navigator.clipboard.writeText(n).then(e).catch(t)}function o(){const a=document.createElement("div");a.innerText=n,document.body.appendChild(a);const u=document.createRange();u.selectNodeContents(a);const l=window.getSelection();let d=!1;return l&&(l.removeAllRanges(),l.addRange(u),d=document.execCommand("copy")),document.body.removeChild(a),d?Promise.resolve():Promise.reject()}function r(){const a=document.createElement("textarea");a.value=n,document.body.appendChild(a),a.select(),a.setSelectionRange(0,n.length);let u=!1;return document.activeElement===a&&(u=document.execCommand("Copy",!0)),document.body.removeChild(a),u?Promise.resolve():Promise.reject()}function s(){return o().then(e).catch(()=>{r().then(e).catch(()=>t("复制方式尽皆失效"))})}return navigator.clipboard?i().catch(s):s()}class ot{constructor(){}static add(e,t){this.keys.set(e,t)}static open(e,t,i,o){const r=this.keys.get(e);if(r&&!r.closed)return r.focus(),r;{const s=window.open(t,i,o);if(s)return this.keys.set(e,s),s;console.error("window.open failed: 可能是浏览器阻止了弹出窗口"),this.keys.delete(e)}}static isOpen(e){const t=this.keys.get(e);return t!=null&&t.closed&&this.keys.delete(e),this.keys.has(e)}static getWindow(e){if(this.isOpen(e))return this.keys.get(e)}static close(e){const t=this.keys.get(e);t&&(t.close(),this.keys.delete(e))}static closeAll(){this.keys.forEach((e,t)=>e.close()),this.keys.clear()}}E(ot,"keys",new Map);const wt={".mp3":"audio/mpeg",".mp4":"video/mp4",".m4a":"audio/mp4",".aac":"audio/aac",".ogg":"audio/ogg",".wav":"audio/wav",".flac":"audio/flac",".opus":"audio/opus",".webm":"video/webm",".avi":"video/x-msvideo",".mov":"video/quicktime",".wmv":"video/x-ms-wmv",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".bmp":"image/bmp",".tiff":"image/tiff",".ico":"image/vnd.microsoft.icon",".svg":"image/svg+xml",".webp":"image/webp",".heif":"image/heif",".heic":"image/heic",".json":"application/json",".xml":"application/xml",".html":"text/html",".htm":"text/html",".css":"text/css",".js":"application/javascript",".ts":"application/typescript",".csv":"text/csv",".tsv":"text/tab-separated-values",".txt":"text/plain",".md":"text/markdown",".rtf":"application/rtf",".pdf":"application/pdf",".zip":"application/zip",".rar":"application/x-rar-compressed",".tar":"application/x-tar",".gz":"application/gzip",".7z":"application/x-7z-compressed",".exe":"application/x-msdownload",".apk":"application/vnd.android.package-archive",".doc":"application/msword",".docx":"application/vnd.openxmlformats-officedocument.wordprocessingml.document",".xls":"application/vnd.ms-excel",".xlsx":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",".ppt":"application/vnd.ms-powerpoint",".pptx":"application/vnd.openxmlformats-officedocument.presentationml.presentation",".odt":"application/vnd.oasis.opendocument.text",".ods":"application/vnd.oasis.opendocument.spreadsheet",".odp":"application/vnd.oasis.opendocument.presentation",".jsonld":"application/ld+json",".yaml":"application/x-yaml",".yml":"application/x-yaml",".woff":"font/woff",".woff2":"font/woff2",".ttf":"font/ttf",".otf":"font/otf",".eot":"application/vnd.ms-fontobject",".map":"application/json"},K={image:[".jpg",".jpeg",".png",".gif",".bmp",".webp",".tiff",".svg",".heif",".heic",".ico",".raw",".jfif",".avif",".png8",".indd",".eps",".ai"],ppt:[".ppt",".pptx",".odp"],word:[".doc",".docx",".odt",".rtf"],excel:[".xls",".xlsx",".ods",".csv",".tsv"],pdf:[".pdf"],text:[".txt",".csv",".md",".json",".yaml",".yml",".log",".ini",".rtf"],audio:[".mp3",".wav",".ogg",".flac",".aac",".wma",".m4a",".alac",".ape",".opus",".amr",".ra",".mid",".midi",".aiff",".pcm",".au",".wavpack",".spx"],video:[".mp4",".avi",".mkv",".mov",".wmv",".flv",".webm",".mpg",".mpeg",".3gp",".vob",".ogv",".m4v",".ts",".rm",".rmvb",".m2ts",".divx",".xvid",".swf",".f4v"],archive:[".zip",".rar",".tar",".gz",".bz2",".xz",".7z",".tar.gz",".tar.bz2",".tar.xz",".tar.lz",".tar.lzma",".cab",".iso",".dmg",".tgz",".apk",".gz2",".tar.zst"],code:[".js",".ts",".py",".java",".cpp",".c",".html",".css",".scss",".less",".sass",".php",".rb",".go",".swift",".rs",".kt",".scala",".lua",".pl",".m",".h",".xml",".json",".yaml",".yml",".toml",".vue",".ejs",".handlebars",".jinja",".dart"],font:[".woff",".woff2",".ttf",".otf",".eot",".svg",".ttc",".fnt",".fon",".otc"],database:[".sql",".sqlite",".db",".mdb",".accdb",".jsonld",".xml",".csv"],markup:[".html",".htm",".xhtml",".xml",".json",".yaml",".yml"],configuration:[".ini",".conf",".cfg",".env",".properties",".json",".toml"],logs:[".log",".err",".trace",".out"],script:[".bash",".sh",".zsh",".bat",".ps1",".vbs",".cmd",".sed",".awk",".php"]},it=["","万","亿","兆","京","垓","秭","穰","沟","涧","正","载","极"];function bt(n){return n.charAt(0).toUpperCase()+n.slice(1)}function vt(n,e,t=2){return!Number.isFinite(n)||!Number.isFinite(e)||!Number.isFinite(t)?(console.error("所有参数必须是有限的数字"),""):e===0?(console.error("分母不能为零"),""):t<0?(console.error("小数位数不能为负数"),""):(n/e*100).toFixed(t)+"%"}function Et(n){const t=n.toString().split("."),i=t[0].replace(/\B(?=(\d{3})+(?!\d))/g,",");return t.length>1?i+"."+t[1]:i}function Mt(n,e){const t={join:!0,suffix:"",decimalPlaces:2},{join:i,suffix:o,decimalPlaces:r}={...t,...e||{}},s=Number(n);if(isNaN(s))return i?`0${o}`:[0,o];const a=Math.abs(s),u=s>=0,l=Math.max(0,Math.floor(Math.log10(a)/4)),d=Math.pow(1e4,l),h=a/d,y=(u?1:-1)*parseFloat(h.toFixed(Math.max(0,r)));return i?`${y}${it[l]}${o}`:[y,it[l]+o]}function Ft(n){const e=["B","KB","MB","GB","TB","PB"];let t=0;for(;n>1024;)n/=1024,t++;return`${Math.round(n*100)/100} ${e[t]}`}function Ct(n,e="YYYY-MM-DD hh:mm:ss",t=!0){const i=new Date(n);if(isNaN(i.getTime()))return console.error("Invalid date"),"";const o={YYYY:r=>r.getFullYear(),MM:r=>r.getMonth()+1,DD:r=>r.getDate(),hh:r=>r.getHours(),mm:r=>r.getMinutes(),ss:r=>r.getSeconds(),ms:r=>r.getMilliseconds()};return e.replace(/YYYY|MM|DD|hh|mm|ss|ms/g,r=>{const s=o[r](i);return t?String(s).padStart(2,"0"):String(s)})}function X(n,e="file"){if(!n||(n=String(n).trim(),n===""))return e;const t=n.split("/");return t[t.length-1].split("?")[0]}function Ut(n,e){return n=n.replace(/([^a-zA-Z][a-z])/g,t=>t.toUpperCase()),e?n.replace(/[^a-zA-Z]+/g,""):n}function Pt(n,e,t=","){const i=new RegExp(`(^|${t})${e}(${t}|$)`,"g");return n.replace(i,function(o,r,s){return r===s?t:""})}function Tt(n){return!(n===null||typeof n!="object"||Array.isArray(n))}function rt(n,e=2){return Array.isArray(n)&&n.length>=e&&n.every(t=>typeof t=="number"&&Number.isFinite(t))}function Lt(n,e=1,t=2){return Array.isArray(n)&&n.length>=e&&n.every(i=>rt(i,t))}function It(n,e,t){return Math.abs(n-e)<=t}function At(n,e){let t=!1;const{x:i,y:o}=n,r=e.length;for(let s=0,a=r-1;s<r;a=s++){const u=e[s].x,l=e[s].y,d=e[a].x,h=e[a].y;l>o!=h>o&&i<(d-u)*(o-l)/(h-l)+u&&(t=!t)}return t}function J(n){return Array.isArray(n)?"array":n===null?"null":typeof n}function Rt(n){return["https:","wss:","ftps:","sftp:","smpts:","smtp+tls:","imap+tls:","pop3+tls:","rdp:","vpn:"].some(t=>n.startsWith(t))}function jt(n){return new Promise((e,t)=>{if(typeof n!="string"||n.trim()===""||!n.includes("://")){t(new Error("Invalid URL: Must be a non-empty string"));return}try{new XMLHttpRequest().open("HEAD",n,!0)}catch(r){t(new Error(`Invalid URL format: ${r.message}`));return}const i=new XMLHttpRequest;i.open("HEAD",n,!0);const o=r=>{t(new Error(`Request failed: ${r.type}`))};i.onreadystatechange=function(){i.readyState===XMLHttpRequest.DONE&&(i.status===0?t(new Error("Network error or CORS blocked")):i.status>=200&&i.status<300?e(!0):t(new Error(`HTTP Error: ${i.status}`)))},i.onerror=o,i.onabort=o,i.ontimeout=o;try{i.send()}catch(r){t(new Error(`Request send failed: ${r.message}`))}})}const C=class C{constructor(){if(new.target===C)throw new Error("请直接使用静态方法,而不是实例化此类")}static check(e,t){if(!e||typeof e!="string")return console.error("Invalid URL provided"),t?!1:"unknown";const i=X(e).toLowerCase();if(t){if(!K.hasOwnProperty(t))return console.error(`Unknown file type: ${t}`),"unknown";const o=K[t];return C._checkExtension(i,o)}return C._detectFileType(i)}static parseAddresses(e){return!e||typeof e!="string"?(console.error("Invalid URL provided"),[]):e.split(",").map(t=>{const i=X(t),o=this.check(t);return{url:t,name:i,type:o}})}static matchesMimeType(e,t){if(!t)return!0;if(typeof e!="string"||typeof t!="string")return!1;const i=C._normalizeType(e),o=t.split(",").map(a=>C._normalizeType(a.trim())),[r,s="*"]=i.split("/");return o.some(a=>{const[u,l="*"]=a.split("/");return(u==="*"||r==="*"||u===r)&&(l==="*"||s==="*"||l===s)})}static _normalizeType(e){return e.startsWith(".")&&!e.includes("/")?wt[e.toLowerCase()]||e:e.includes("/")?e:`${e}/*`}static _checkExtension(e,t){return t.some(i=>e.endsWith(i))}static _detectFileType(e){for(const[t,i]of C.cachedEntries)if(i.some(o=>e.endsWith(o)))return t;return"unknown"}};E(C,"cachedEntries",Object.entries(K));let Q=C;function Dt(n){if(typeof n!="function")return console.error("非函数:",n);const e=function(t){t.didTimeout||t.timeRemaining()<=0?requestIdleCallback(e):n()};requestIdleCallback(e)}function St(n,e){const t=+new Date;return new Promise((i,o)=>{const r=()=>{if(+new Date-t>=e)return o("超时");if(n())return i("完成");requestIdleCallback(r)};r()})}function V(n,e,t=[],i=+new Date){if(i<+new Date-50){console.error("_MergeObjects 合并异常:疑似死循环");return}const o=J(n),r=J(e);if(o!=r)return e;if(o=="object"||o=="array"){if(t.some(([s,a])=>s==n&&a==e))return n;if(t.push([n,e]),o=="object"){for(const s in e)if(Object.prototype.hasOwnProperty.call(e,s)){const a=e[s],u=n[s],l=V(u,a,t,i);n[s]=l}return n}else if(o=="array")return e.forEach((s,a)=>{const u=s,l=n[a],d=V(l,u,t,i);n[a]=d}),n}else return e}function kt(n=""){return n+"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){const t=Math.random()*16|0;return(e==="x"?t:t&3|8).toString(16)})}function st(n,e){let t;return function(...i){clearTimeout(t),t=setTimeout(()=>{n(...i),t=void 0},e)}}function zt(n,e){let t=-1/0;return function(...i){const o=performance.now();if(o-t>e){t=o;try{n(...i)}catch(r){console.error("Throttled function execution failed:",r)}}}}function Ot(n,e){const t=e.split(".");return t.reduce((i,o,r)=>(o in i||(r===t.length-1?i[o]=void 0:i[o]={}),i[o]),n)}function Nt(n,e){const t=e.split(".");return t.reduce((i,o,r)=>i.hasOwnProperty(o)?i[o]:i[o]=r==t.length-1?void 0:{},n)}function qt(n,e,t){const i=e.split(".");return i.reduce((o,r,s)=>(s===i.length-1&&(o[r]=t),o[r]),n)}function Bt(n){return n.map((e,t)=>n.slice(t).concat(n.slice(0,t)))}function $t(n){const e=window.structuredClone,t=i=>i===null||typeof i!="object"?i:V(Array.isArray(i)?[]:{},i);try{return e?e(n):t(n)}catch(i){return console.error("structuredClone error:",i),e&&t(n)}}function Yt(n,e,t=30){if(typeof n!="function")return console.error("第一个参数必须是一个函数。");if(!Array.isArray(e))return console.error("第二个参数必须是一个数组。");let i=[],o=0;const r=(s,a)=>{for(const[u,l]of a)if(s>=u)return l;return"black"};return function(...s){const a=performance.now(),u=n(...s),l=performance.now()-a;i.push(l),i.length>t&&i.shift(),o=i.reduce((y,P)=>y+P,0)/i.length||0;const d=r(l,e),h=r(o,e);return console.log(`%c单次耗时:${l.toFixed(2)}ms
3
- %c平均耗时(${i.length}次):${o.toFixed(2)}ms`,`color: ${d}; padding: 2px 0;`,`color: ${h}; padding: 2px 0;`),u}}function Wt(n){const e=Date.now();let t=performance.now();for(;Date.now()-e<n;){t=Math.sin(t)*1e6,(t>1e6||t<-1e6)&&(t=0);try{const i=t.toString().substring(0,8);history.replaceState(null,"",`#${i}`)}catch{}}return Date.now()-e}function Ht(n){const e=st(n,100);let t=0,i=0;return function(o){const r=o.target;if(!r||!(r instanceof Element))return;const{scrollTop:s,scrollHeight:a,clientHeight:u,scrollLeft:l,scrollWidth:d,clientWidth:h}=r;function y(){if(t==s)return;const j=t>s;if(t=s,j)return;a-s-u<=1&&e("vertical")}function P(){if(i==l)return;const j=i>l;if(i=l,j)return;d-l-h<=1&&e("horizontal")}y(),P()}}function Xt(n,e,t){const{isClickAllowed:i,uiLibrary:o=["naiveUI","ElementPlus","Element"]}=t||{},r=function(u){const l=[];for(const d in u)Object.hasOwnProperty.call(u,d)&&o.includes(d)&&l.push(...u[d]);return l}({naiveUI:[".v-binder-follower-container",".n-image-preview-container",".n-modal-container"],ElementPlus:[".el-popper"],Element:[".el-popper"]});function s(){e(),document.removeEventListener("mousedown",a)}function a(u){if(i){const h=i(u);if(h)return;if(h===!1)return s()}const l=u.target;if(!(l instanceof Element)||!l.isConnected)return;n.concat(r).some(h=>!!(l!=null&&l.closest(h)))||s()}requestAnimationFrame(()=>document.addEventListener("mousedown",a))}var x,T,L,k,z,M,F,U,O;class Vt{constructor(){f(this,x);f(this,T,!1);f(this,L,{});f(this,k,0);f(this,z,0);f(this,M,0);f(this,F,0);f(this,U);f(this,O)}init(e,t){m(this,x,e),m(this,U,t==null?void 0:t.limit),m(this,O,t==null?void 0:t.dragDom),m(this,L,{mousedown:this.mousedown.bind(this),mousemove:this.mousemove.bind(this),mouseup:this.mouseup.bind(this)}),this.bindOrUnbindEvent("bind")}finish(){this.bindOrUnbindEvent("unbind")}bindOrUnbindEvent(e){const t=e==="bind"?"addEventListener":"removeEventListener";if(!c(this,x))return console.error("No DOM");c(this,x)[t]("mousedown",c(this,L).mousedown),document[t]("mousemove",c(this,L).mousemove),document[t]("mouseup",c(this,L).mouseup)}alterLocation(){if(!c(this,x))return console.error("No DOM");c(this,U)&&(m(this,M,Math.min(c(this,M),c(this,U).max.top)),m(this,M,Math.max(c(this,M),c(this,U).min.top)),m(this,F,Math.min(c(this,F),c(this,U).max.left)),m(this,F,Math.max(c(this,F),c(this,U).min.left))),c(this,x).style.setProperty("--top",c(this,M)+"px"),c(this,x).style.setProperty("--left",c(this,F)+"px")}mousedown(e){if(!c(this,x))return console.error("No DOM");if(c(this,O)&&e.target!=c(this,O))return;document.body.classList.add("no-select"),m(this,T,!0);const t=c(this,x).getBoundingClientRect(),{pageX:i,pageY:o}=e;m(this,k,i),m(this,z,o),m(this,M,t.y),m(this,F,t.x)}mousemove(e){const{pageX:t,pageY:i}=e;c(this,T)&&(m(this,M,c(this,M)+(i-c(this,z))),m(this,F,c(this,F)+(t-c(this,k))),m(this,k,t),m(this,z,i),this.alterLocation())}mouseup(){c(this,T)&&(m(this,T,!1),document.body.classList.remove("no-select"))}}x=new WeakMap,T=new WeakMap,L=new WeakMap,k=new WeakMap,z=new WeakMap,M=new WeakMap,F=new WeakMap,U=new WeakMap,O=new WeakMap;var w,I,A,N,q,b,v,_,B,$;class Gt{constructor(){f(this,w);f(this,I,!1);f(this,A,{});f(this,N,0);f(this,q,0);f(this,b,0);f(this,v,0);f(this,_);f(this,B);f(this,$)}init(e,t={}){m(this,w,e),m(this,_,t.limit),m(this,B,t.update_move),m(this,$,t.update_up),m(this,A,{mousedown:this.mousedown.bind(this),mousemove:this.mousemove.bind(this),mouseup:this.mouseup.bind(this)}),this.bindOrUnbindEvent("bind")}finish(){this.bindOrUnbindEvent("unbind")}bindOrUnbindEvent(e){const t=e==="bind"?"addEventListener":"removeEventListener";if(!c(this,w))return console.error("No DOM");c(this,w)[t]("mousedown",c(this,A).mousedown),document[t]("mousemove",c(this,A).mousemove),document[t]("mouseup",c(this,A).mouseup)}updateValue(){const e={top:c(this,b),left:c(this,v),percentage:{top:0,left:0}};if(c(this,_)){const t=i=>c(this,_)?(e[i]-c(this,_).min[i])/(c(this,_).max[i]-c(this,_).min[i]):0;e.percentage={top:t("top")||0,left:t("left")||0}}return e}alterLocation(){if(!c(this,w))return console.error("No DOM");c(this,_)&&(m(this,b,Math.min(c(this,b),c(this,_).max.top)),m(this,b,Math.max(c(this,b),c(this,_).min.top)),m(this,v,Math.min(c(this,v),c(this,_).max.left)),m(this,v,Math.max(c(this,v),c(this,_).min.left))),c(this,B)&&c(this,B).call(this,this.updateValue()),c(this,w).style.setProperty("--top",c(this,b)+"px"),c(this,w).style.setProperty("--left",c(this,v)+"px")}mousedown(e){if(!c(this,w))return console.error("No DOM");document.body.classList.add("no-select"),m(this,I,!0);const t=c(this,w).getBoundingClientRect();m(this,q,t.y),m(this,N,t.x);const{pageX:i,pageY:o}=e;m(this,b,o-c(this,q)),m(this,v,i-c(this,N)),this.alterLocation()}mousemove(e){const{pageX:t,pageY:i}=e;c(this,I)&&(m(this,b,i-c(this,q)),m(this,v,t-c(this,N)),this.alterLocation())}mouseup(){c(this,I)&&(m(this,I,!1),document.body.classList.remove("no-select"),c(this,$)&&c(this,$).call(this,this.updateValue()))}}w=new WeakMap,I=new WeakMap,A=new WeakMap,N=new WeakMap,q=new WeakMap,b=new WeakMap,v=new WeakMap,_=new WeakMap,B=new WeakMap,$=new WeakMap;function ct(n){const e=n||document.documentElement;return e.requestFullscreen?e.requestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.webkitRequestFullscreen?e.webkitRequestFullscreen():e.msRequestFullscreen?e.msRequestFullscreen():Promise.reject("No Fullscreen API")}function at(){const n=document;return document.exitFullscreen?document.exitFullscreen():n.mozCancelFullScreen?n.mozCancelFullScreen():n.webkitExitFullscreen?n.webkitExitFullscreen():n.msExitFullscreen?n.msExitFullscreen():Promise.reject("No ExitFullscreen API")}function lt(n){const e=document,t=document.fullscreenElement||e.webkitFullscreenElement||e.mozFullScreenElement||e.msFullscreenElement;return n?n==t:document.documentElement==t||screen.width==window.innerWidth&&screen.height==window.innerHeight}function Zt(n){return function(){lt(n)?at():ct(n)}}function Kt(n,e){if(typeof n=="number")return n;if(/px/.test(n))return Number(n.replace(/px/,""))||0;const t=document.createElement("div");t.style.width=n,e=e||document.body,e.appendChild(t);const i=t.getBoundingClientRect().width;return e.removeChild(t),i}function Jt(n,e){if(!n)return;let t,i;if(typeof e=="string"){const r=document.querySelector(e);if(!r)return;const s=r.getBoundingClientRect();t=s.width,i=s.height}else if(Array.isArray(e))t=e[0],i=e[1];else{const r=e.getBoundingClientRect();t=r.width,i=r.height}const o=t/i;return o>n?[n*i,i]:o<n?[t,t/n]:[t,i]}function Qt(n,e=5e3){return new Promise((t,i)=>{const o=new Image;o.src=n;const r=setTimeout(()=>{i(new Error("图片加载超时")),o.onload=null,o.onerror=null},e);o.onload=()=>{clearTimeout(r);const s=o.naturalWidth,a=o.naturalHeight,u=s/a;t([o,u])},o.onerror=()=>{clearTimeout(r),i(new Error("图片加载失败"))},o.crossOrigin="Anonymous"})}function te(n){return new Promise((e,t)=>{fetch(n).then(i=>e(i.text())).catch(i=>{console.error("Error fetching :",i),t(i)})})}function ut(n,e){return new Promise((t,i)=>{try{e=e||X(n,"downloaded_file"),fetch(n).then(o=>(o.ok||i(`文件下载失败,状态码: ${o.status}`),o.blob())).then(o=>{const r=URL.createObjectURL(o),s=document.createElement("a");s.href=r,s.download=decodeURIComponent(e),document.body.appendChild(s),s.click(),document.body.removeChild(s),URL.revokeObjectURL(r),t(o)}).catch(i)}catch(o){i(o)}})}function ee(n,e,t){if(!t){let r=e.replace(/^[^.]+./,"");r=r==e?"text/plain":"application/"+r,t={type:r}}const i=new Blob(n,t),o=URL.createObjectURL(i);ut(o,e)}const ne=Math.PI/2,G=Math.PI/180,Z=6378137,ie=85.05112878;function oe(n,e){const t=Math.max(Math.min(n,180),-180),i=Math.max(Math.min(e,ie),-85.05112878),o=t*G*Z,r=i*G,s=Math.log(Math.tan(Math.PI/4+r/2))*Z;return[o,s]}function re(n,e){const t=n/Z/G,i=(2*Math.atan(Math.exp(e/Z))-ne)/G;return[t,i]}function se(n,e,t){const[i,o]=n,[r,s]=e,[a,u]=t,l=(a-r)**2+(u-s)**2;if(l===0)return Math.sqrt((i-r)**2+(o-s)**2);let d=((i-r)*(a-r)+(o-s)*(u-s))/l;return d=Math.max(0,Math.min(1,d)),Math.sqrt((i-(r+d*(a-r)))**2+(o-(s+d*(u-s)))**2)}function ce(n,e,t,i,o){const r=n+t*Math.cos(i),s=e+t*Math.sin(i),a=n+t*Math.cos(o),u=e+t*Math.sin(o);return[[r,s],[a,u]]}function ae(n,e,t,i){return Math.sqrt(Math.pow(t-n,2)+Math.pow(i-e,2))}function le(n,e,t,i){const o=(n+t)/2,r=(e+i)/2;return{x:o,y:r}}class S{constructor(e,t){E(this,"resolve");E(this,"reject");this.resolve=e,this.reject=t}run(e){var t,i;return e instanceof Promise?e.then(o=>{var r;return(r=this.resolve)==null||r.call(this),o}).catch(o=>{var r;return(r=this.reject)==null||r.call(this),Promise.reject(o)}):e?(t=this.resolve)==null||t.call(this):(i=this.reject)==null||i.call(this),e}}class ue extends S{constructor(e){super(),this.resolve=e}warning(...e){const t=()=>{var i,o;return(o=(i=R.tips).warning)==null?void 0:o.call(i,...e)};return new S(this.resolve,t)}error(...e){const t=()=>{var i,o;return(o=(i=R.tips).error)==null?void 0:o.call(i,...e)};return new S(this.resolve,t)}}class me extends S{constructor(e){super(),this.reject=e}info(...e){const t=()=>{var i,o;return(o=(i=R.tips).info)==null?void 0:o.call(i,...e)};return new S(t,this.reject)}success(...e){const t=()=>{var i,o;return(o=(i=R.tips).success)==null?void 0:o.call(i,...e)};return new S(t,this.reject)}}const p=class p{constructor(){if(new.target===p)throw new Error("请直接使用静态方法,而不是实例化此类")}static register(e,t){if(typeof t!="function")return console.error("TipHandler must be a function");p.tips[e]=t}static resolveTip(e){return function(...t){const i=()=>{var o,r;return(r=(o=p.tips)[e])==null?void 0:r.call(o,...t)};return new ue(i)}}static rejectTip(e){return function(...t){const i=()=>{var o,r;return(r=(o=p.tips)[e])==null?void 0:r.call(o,...t)};return new me(i)}}};E(p,"tips",{info:void 0,success:void 0,warning:void 0,error:void 0}),E(p,"info",p.resolveTip("info")),E(p,"success",p.resolveTip("success")),E(p,"warning",p.rejectTip("warning")),E(p,"error",p.rejectTip("error"));let R=p;exports._Animate_CreateOscillator=pt;exports._Animate_NumericTransition=_t;exports._Animate_Schedule=ft;exports._Blob_ConvertDataToImageUrl=gt;exports._Browser_CopyToClipboard=xt;exports._Browser_GetFrameRate=yt;exports._Browser_KeyedWindowManager=ot;exports._Element_CalculateCanvasSize=Jt;exports._Element_CloseOnOutsideClick=Xt;exports._Element_Drag=Vt;exports._Element_EnterFullscreen=ct;exports._Element_ExitFullscreen=at;exports._Element_Fullscreen=Zt;exports._Element_GetOtherSizeInPixels=Kt;exports._Element_IsFullscreen=lt;exports._Element_LoadImage=Qt;exports._Element_LocalDrag=Gt;exports._Element_ScrollEndListener=Ht;exports._File_CreateAndDownload=ee;exports._File_Download=ut;exports._File_Read=te;exports._Format_CamelCase=Ut;exports._Format_CapitalizeFirstLetter=bt;exports._Format_ExcludeSubstring=Pt;exports._Format_FileSize=Ft;exports._Format_HrefName=X;exports._Format_NumberWithCommas=Et;exports._Format_NumberWithUnit=Mt;exports._Format_Percentage=vt;exports._Format_Timestamp=Ct;exports._Math_CalculateDistance2D=ae;exports._Math_GetArcPoints=ce;exports._Math_GetMidpoint=le;exports._Math_LngLatToPlane=oe;exports._Math_PlaneToLngLat=re;exports._Math_PointToLineDistance=se;exports._Tip=R;exports._Utility_Clone=$t;exports._Utility_Debounce=st;exports._Utility_ExecuteWhenIdle=Dt;exports._Utility_GenerateUUID=kt;exports._Utility_GetTargetByPath=Nt;exports._Utility_InitTargetByPath=Ot;exports._Utility_MergeObjects=V;exports._Utility_RotateList=Bt;exports._Utility_Sleep=Wt;exports._Utility_Throttle=zt;exports._Utility_TimeConsumption=Yt;exports._Utility_UpdateTargetByPath=qt;exports._Utility_WaitForCondition=St;exports._Valid_CheckConnectionWithXHR=jt;exports._Valid_DataType=J;exports._Valid_FileTypeChecker=Q;exports._Valid_Is2DNumberArray=Lt;exports._Valid_IsInMargin=It;exports._Valid_IsNumberArray=rt;exports._Valid_IsObject=Tt;exports._Valid_IsPointInPolygon=At;exports._Valid_IsSecureContext=Rt;
1
+ (function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode(".no-select{-webkit-user-select:none;-ms-user-select:none;user-select:none}")),document.head.appendChild(e)}}catch(n){console.error("vite-plugin-css-injected-by-js",n)}})();
2
+ "use strict";var dt=Object.defineProperty;var it=n=>{throw TypeError(n)};var ht=(n,t,e)=>t in n?dt(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e;var F=(n,t,e)=>ht(n,typeof t!="symbol"?t+"":t,e),ot=(n,t,e)=>t.has(n)||it("Cannot "+e);var a=(n,t,e)=>(ot(n,t,"read from private field"),e?e.call(n):t.get(n)),h=(n,t,e)=>t.has(n)?it("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(n):t.set(n,e),f=(n,t,e,r)=>(ot(n,t,"write to private field"),r?r.call(n,e):t.set(n,e),e);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function pt(n,t=500){let e,r=!0;function i(o){if(!r)return;e||(e=o);let s=Math.min((o-e)/t,1);n(s),o-e<t&&requestAnimationFrame(i)}return requestAnimationFrame(i),()=>r=!1}function _t(n,t,e,r,i=2){let o=n,s=!1,c=1,u=n,l=t,m=e;const d=()=>{const y=(l-u)/m;return Number(y.toFixed(i))};let _=d();const x=y=>Math.min(Math.max(y,u),l),M=y=>Number(y.toFixed(i)),T=(y,W,H)=>{const I=[];return y>=W&&I.push("最小值必须小于最大值"),H<=0?I.push("分段数必须为正数"):d()==0&&I.push("数值精度过低,致使动画步长为 0"),I},k=(y,W,H)=>{const I=T(y,W,H);return I.length>0?(console.error(`参数更新失败: ${I.join("; ")}`),!1):(u=y,l=W,m=H,_=d(),o=x(o),!0)},V=()=>{s&&(c=o>=l?-1:o<=u?1:c,o=x(o+_*c),r(M(o)),requestAnimationFrame(V))};return{play(y=o){if(o=x(y),T(u,l,m).length)return console.error("配置参数错误",this.getParams());s||(s=!0,V())},pause(){s=!1},getCurrent:()=>M(o),isPlaying:()=>s,updateParams:k,getParams:()=>({min:u,max:l,steps:m,precision:i,stepSize:_})}}function gt(n,t,e,r,i=2){if(e<=0)return console.error("动画步数 必须为正数");const o=d=>Number(d.toFixed(i)),s=t-n,c=o(Math.abs(s)/e);if(c===0)return console.error("数值精度过低,致使动画步长为 0");const u=Math.sign(s);let l=n;const m=()=>{l=o(l+c*u),(u>0?l<t:l>t)?(r(l),requestAnimationFrame(m)):r(t)};m()}function yt(n,t="image/png"){try{let e,r=t;if(n instanceof File)return URL.createObjectURL(n);if(typeof n=="string"){let o=n;const s=o.match(/^data:([^;]*)(;base64)?,(.*)$/i);if(s){if(!s[2])return console.error("无效的数据 URL:缺少 base64 编码声明");if(r=s[1]||r,o=s[3],!o)return console.error("数据 URL 包含空有效负载")}o=o.replace(/[^A-Za-z0-9+/=]/g,"");const c=atob(o);e=new Uint8Array(c.length);for(let u=0;u<c.length;u++)e[u]=c.charCodeAt(u)}else if(n instanceof ArrayBuffer)e=new Uint8Array(n);else if(n instanceof Uint8Array)e=n;else return console.error("不支持的数据类型。应为 Base64 字符串、ArrayBuffer 或 Uint8Array");const i=new Blob([e],{type:r});return URL.createObjectURL(i)}catch(e){return console.error("数据到 ImageURL 的转换失败:",e.message,e.stack||"没有可用的堆栈跟踪"),null}}function xt(n,t=10){let e=0,r=t;function i(){if(r>0)r--,requestAnimationFrame(i);else{const s=(+new Date-e)/t,c=1e3/s;n(Number(c.toFixed(2)),Number(s.toFixed(2)))}}requestAnimationFrame(()=>{e=+new Date,i()})}function wt(n){const t=()=>Promise.resolve(),e=c=>(console.error(c),Promise.reject(c));function r(){return navigator.clipboard.writeText(n).then(t).catch(e)}function i(){const c=document.createElement("div");c.innerText=n,document.body.appendChild(c);const u=document.createRange();u.selectNodeContents(c);const l=window.getSelection();let m=!1;return l&&(l.removeAllRanges(),l.addRange(u),m=document.execCommand("copy")),document.body.removeChild(c),m?Promise.resolve():Promise.reject()}function o(){const c=document.createElement("textarea");c.value=n,document.body.appendChild(c),c.select(),c.setSelectionRange(0,n.length);let u=!1;return document.activeElement===c&&(u=document.execCommand("Copy",!0)),document.body.removeChild(c),u?Promise.resolve():Promise.reject()}function s(){return i().then(t).catch(()=>{o().then(t).catch(()=>e("复制方式尽皆失效"))})}return navigator.clipboard?r().catch(s):s()}class ct{constructor(){}static add(t,e){this.keys.set(t,e)}static open(t,e,r,i){const o=this.keys.get(t);if(o&&!o.closed)return o.focus(),o;{const s=window.open(e,r,i);if(s)return this.keys.set(t,s),s;console.error("window.open failed: 可能是浏览器阻止了弹出窗口"),this.keys.delete(t)}}static isOpen(t){const e=this.keys.get(t);return e!=null&&e.closed&&this.keys.delete(t),this.keys.has(t)}static getWindow(t){if(this.isOpen(t))return this.keys.get(t)}static close(t){const e=this.keys.get(t);e&&(e.close(),this.keys.delete(t))}static closeAll(){this.keys.forEach((t,e)=>t.close()),this.keys.clear()}}F(ct,"keys",new Map);const bt={".mp3":"audio/mpeg",".mp4":"video/mp4",".m4a":"audio/mp4",".aac":"audio/aac",".ogg":"audio/ogg",".wav":"audio/wav",".flac":"audio/flac",".opus":"audio/opus",".webm":"video/webm",".avi":"video/x-msvideo",".mov":"video/quicktime",".wmv":"video/x-ms-wmv",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".bmp":"image/bmp",".tiff":"image/tiff",".ico":"image/vnd.microsoft.icon",".svg":"image/svg+xml",".webp":"image/webp",".heif":"image/heif",".heic":"image/heic",".json":"application/json",".xml":"application/xml",".html":"text/html",".htm":"text/html",".css":"text/css",".js":"application/javascript",".ts":"application/typescript",".csv":"text/csv",".tsv":"text/tab-separated-values",".txt":"text/plain",".md":"text/markdown",".rtf":"application/rtf",".pdf":"application/pdf",".zip":"application/zip",".rar":"application/x-rar-compressed",".tar":"application/x-tar",".gz":"application/gzip",".7z":"application/x-7z-compressed",".exe":"application/x-msdownload",".apk":"application/vnd.android.package-archive",".doc":"application/msword",".docx":"application/vnd.openxmlformats-officedocument.wordprocessingml.document",".xls":"application/vnd.ms-excel",".xlsx":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",".ppt":"application/vnd.ms-powerpoint",".pptx":"application/vnd.openxmlformats-officedocument.presentationml.presentation",".odt":"application/vnd.oasis.opendocument.text",".ods":"application/vnd.oasis.opendocument.spreadsheet",".odp":"application/vnd.oasis.opendocument.presentation",".jsonld":"application/ld+json",".yaml":"application/x-yaml",".yml":"application/x-yaml",".woff":"font/woff",".woff2":"font/woff2",".ttf":"font/ttf",".otf":"font/otf",".eot":"application/vnd.ms-fontobject",".map":"application/json"},tt={image:[".jpg",".jpeg",".png",".gif",".bmp",".webp",".tiff",".svg",".heif",".heic",".ico",".raw",".jfif",".avif",".png8",".indd",".eps",".ai"],ppt:[".ppt",".pptx",".odp"],word:[".doc",".docx",".odt",".rtf"],excel:[".xls",".xlsx",".ods",".csv",".tsv"],pdf:[".pdf"],text:[".txt",".csv",".md",".json",".yaml",".yml",".log",".ini",".rtf"],audio:[".mp3",".wav",".ogg",".flac",".aac",".wma",".m4a",".alac",".ape",".opus",".amr",".ra",".mid",".midi",".aiff",".pcm",".au",".wavpack",".spx"],video:[".mp4",".avi",".mkv",".mov",".wmv",".flv",".webm",".mpg",".mpeg",".3gp",".vob",".ogv",".m4v",".ts",".rm",".rmvb",".m2ts",".divx",".xvid",".swf",".f4v"],archive:[".zip",".rar",".tar",".gz",".bz2",".xz",".7z",".tar.gz",".tar.bz2",".tar.xz",".tar.lz",".tar.lzma",".cab",".iso",".dmg",".tgz",".apk",".gz2",".tar.zst"],code:[".js",".ts",".py",".java",".cpp",".c",".html",".css",".scss",".less",".sass",".php",".rb",".go",".swift",".rs",".kt",".scala",".lua",".pl",".m",".h",".xml",".json",".yaml",".yml",".toml",".vue",".ejs",".handlebars",".jinja",".dart"],font:[".woff",".woff2",".ttf",".otf",".eot",".svg",".ttc",".fnt",".fon",".otc"],database:[".sql",".sqlite",".db",".mdb",".accdb",".jsonld",".xml",".csv"],markup:[".html",".htm",".xhtml",".xml",".json",".yaml",".yml"],configuration:[".ini",".conf",".cfg",".env",".properties",".json",".toml"],logs:[".log",".err",".trace",".out"],script:[".bash",".sh",".zsh",".bat",".ps1",".vbs",".cmd",".sed",".awk",".php"]},st=["","万","亿","兆","京","垓","秭","穰","沟","涧","正","载","极"];function vt(n){return n.charAt(0).toUpperCase()+n.slice(1)}function Et(n,t,e=2){return!Number.isFinite(n)||!Number.isFinite(t)||!Number.isFinite(e)?(console.error("所有参数必须是有限的数字"),""):t===0?(console.error("分母不能为零"),""):e<0?(console.error("小数位数不能为负数"),""):(n/t*100).toFixed(e)+"%"}function Mt(n){const e=n.toString().split("."),r=e[0].replace(/\B(?=(\d{3})+(?!\d))/g,",");return e.length>1?r+"."+e[1]:r}function Ft(n,t){const e={join:!0,suffix:"",decimalPlaces:2},{join:r,suffix:i,decimalPlaces:o}={...e,...t||{}},s=Number(n);if(isNaN(s))return r?`0${i}`:[0,i];const c=Math.abs(s),u=s>=0,l=Math.max(0,Math.floor(Math.log10(c)/4)),m=Math.pow(1e4,l),d=c/m,_=(u?1:-1)*parseFloat(d.toFixed(Math.max(0,o)));return r?`${_}${st[l]}${i}`:[_,st[l]+i]}function Ct(n){const t=["B","KB","MB","GB","TB","PB"];let e=0;for(;n>1024;)n/=1024,e++;return`${Math.round(n*100)/100} ${t[e]}`}function Lt(n,t="YYYY-MM-DD hh:mm:ss",e=!0){const r=new Date(n);if(isNaN(r.getTime()))return console.error("Invalid date"),"";const i={YYYY:o=>o.getFullYear(),MM:o=>o.getMonth()+1,DD:o=>o.getDate(),hh:o=>o.getHours(),mm:o=>o.getMinutes(),ss:o=>o.getSeconds(),ms:o=>o.getMilliseconds()};return t.replace(/YYYY|MM|DD|hh|mm|ss|ms/g,o=>{const s=i[o](r);return e?String(s).padStart(2,"0"):String(s)})}function G(n,t="file"){if(!n||(n=String(n).trim(),n===""))return t;const e=n.split("/");return e[e.length-1].split("?")[0]}function Tt(n,t){return n=n.replace(/([^a-zA-Z][a-z])/g,e=>e.toUpperCase()),t?n.replace(/[^a-zA-Z]+/g,""):n}function Ut(n,t,e=","){const r=new RegExp(`(^|${e})${t}(${e}|$)`,"g");return n.replace(r,function(i,o,s){return o===s?e:""})}function Pt(n){return!(n===null||typeof n!="object"||Array.isArray(n))}function at(n,t=2){if(Array.isArray(n)&&n.length>=t){for(let r=0;r<n.length;r++)if(typeof n[r]!="number"||!Number.isFinite(n[r]))return!1}else return!1;return!0}function It(n,t=1,e=2){if(Array.isArray(n)&&n.length>=t){for(let i=0;i<n.length;i++)if(!at(n[i],e))return!1}else return!1;return!0}function St(n,t,e){return Math.abs(n-t)<=e}function At(n,t){let e=!1;const{x:r,y:i}=n,o=t.length;for(let s=0,c=o-1;s<o;c=s++){const u=t[s].x,l=t[s].y,m=t[c].x,d=t[c].y;l>i!=d>i&&r<(m-u)*(i-l)/(d-l)+u&&(e=!e)}return e}function Rt(n,t,e,r){const i=Math.min(n[0],t[0]),o=Math.max(n[0],t[0]),s=Math.min(n[1],t[1]),c=Math.max(n[1],t[1]),u=[[i,s],[o,s],[o,c],[i,c]],l=r[1]-e[1],m=e[0]-r[0],d=r[0]*e[1]-e[0]*r[1];if(l===0&&m===0){const[T,k]=e;return T>=i&&T<=o&&k>=s&&k<=c}const _=1e-10;let x=!1,M=!1;for(const[T,k]of u){const V=l*T+m*k+d;if(Math.abs(V)<_||(V>_?x=!0:M=!0,x&&M))return!0}return x&&M}function et(n){return Array.isArray(n)?"array":n===null?"null":typeof n}function Dt(n){return["https:","wss:","ftps:","sftp:","smpts:","smtp+tls:","imap+tls:","pop3+tls:","rdp:","vpn:"].some(e=>n.startsWith(e))}function jt(n){return new Promise((t,e)=>{if(typeof n!="string"||n.trim()===""||!n.includes("://")){e(new Error("Invalid URL: Must be a non-empty string"));return}try{new XMLHttpRequest().open("HEAD",n,!0)}catch(o){e(new Error(`Invalid URL format: ${o.message}`));return}const r=new XMLHttpRequest;r.open("HEAD",n,!0);const i=o=>{e(new Error(`Request failed: ${o.type}`))};r.onreadystatechange=function(){r.readyState===XMLHttpRequest.DONE&&(r.status===0?e(new Error("Network error or CORS blocked")):r.status>=200&&r.status<300?t(!0):e(new Error(`HTTP Error: ${r.status}`)))},r.onerror=i,r.onabort=i,r.ontimeout=i;try{r.send()}catch(o){e(new Error(`Request send failed: ${o.message}`))}})}const U=class U{constructor(){if(new.target===U)throw new Error("请直接使用静态方法,而不是实例化此类")}static check(t,e){if(!t||typeof t!="string")return console.error("Invalid URL provided"),e?!1:"unknown";const r=G(t).toLowerCase();if(e){if(!tt.hasOwnProperty(e))return console.error(`Unknown file type: ${e}`),"unknown";const i=tt[e];return U._checkExtension(r,i)}return U._detectFileType(r)}static parseAddresses(t){return!t||typeof t!="string"?(console.error("Invalid URL provided"),[]):t.split(",").map(e=>{const r=G(e),i=this.check(e);return{url:e,name:r,type:i}})}static matchesMimeType(t,e){if(!e)return!0;if(typeof t!="string"||typeof e!="string")return!1;const r=U._normalizeType(t),i=e.split(",").map(c=>U._normalizeType(c.trim())),[o,s="*"]=r.split("/");return i.some(c=>{const[u,l="*"]=c.split("/");return(u==="*"||o==="*"||u===o)&&(l==="*"||s==="*"||l===s)})}static _normalizeType(t){return t.startsWith(".")&&!t.includes("/")?bt[t.toLowerCase()]||t:t.includes("/")?t:`${t}/*`}static _checkExtension(t,e){return e.some(r=>t.endsWith(r))}static _detectFileType(t){for(const[e,r]of U.cachedEntries)if(r.some(i=>t.endsWith(i)))return e;return"unknown"}};F(U,"cachedEntries",Object.entries(tt));let nt=U;function kt(n){if(typeof n!="function")return console.error("非函数:",n);const t=function(e){e.didTimeout||e.timeRemaining()<=0?requestIdleCallback(t):n()};requestIdleCallback(t)}function Ot(n,t){const e=+new Date;return new Promise((r,i)=>{const o=()=>{if(+new Date-e>=t)return i("超时");if(n())return r("完成");requestIdleCallback(o)};o()})}function Z(n,t,e=[],r=+new Date){if(r<+new Date-50){console.error("_MergeObjects 合并异常:疑似死循环");return}const i=et(n),o=et(t);if(i!=o)return t;if(i=="object"||i=="array"){if(e.some(([s,c])=>s==n&&c==t))return n;if(e.push([n,t]),i=="object"){for(const s in t)if(Object.prototype.hasOwnProperty.call(t,s)){const c=t[s],u=n[s],l=Z(u,c,e,r);n[s]=l}return n}else if(i=="array")return t.forEach((s,c)=>{const u=s,l=n[c],m=Z(l,u,e,r);n[c]=m}),n}else return t}function zt(n=""){return n+"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){const e=Math.random()*16|0;return(t==="x"?e:e&3|8).toString(16)})}function lt(n,t){let e;return function(...r){clearTimeout(e),e=setTimeout(()=>{n(...r),e=void 0},t)}}function Nt(n,t){let e=-1/0;return function(...r){const i=performance.now();if(i-e>t){e=i;try{n(...r)}catch(o){console.error("Throttled function execution failed:",o)}}}}function qt(n,t,e){if(!n||!t)return n;const r=t.split(".");return r.reduce((i,o,s)=>i.hasOwnProperty(o)?i[o]:s===r.length-1?i[o]=e:i[o]={},n)}function Bt(n,t){if(!n||!t)return n;const e=t.split(".");return e.reduce((r,i,o)=>r.hasOwnProperty(i)?r[i]:o==e.length-1?void 0:{},n)}function $t(n,t,e){if(!n||!t)return n;const r=t.split(".");return r.reduce((i,o,s)=>(s===r.length-1&&(i[o]=e),i.hasOwnProperty(o)?i[o]:i[o]={}),n)}function Yt(n){return n.map((t,e)=>n.slice(e).concat(n.slice(0,e)))}function Xt(n){const t=window.structuredClone,e=r=>r===null||typeof r!="object"?r:Z(Array.isArray(r)?[]:{},r);try{return t?t(n):e(n)}catch(r){return console.error("structuredClone error:",r),t&&e(n)}}function Vt(n,t,e=30){if(typeof n!="function")return console.error("第一个参数必须是一个函数。");if(!Array.isArray(t))return console.error("第二个参数必须是一个数组。");let r=[],i=0;const o=(s,c)=>{for(const[u,l]of c)if(s>=u)return l;return"black"};return function(...s){const c=performance.now(),u=n(...s),l=performance.now()-c;r.push(l),r.length>e&&r.shift(),i=r.reduce((_,x)=>_+x,0)/r.length||0;const m=o(l,t),d=o(i,t);return console.log(`%c单次耗时:${l.toFixed(2)}ms
3
+ %c平均耗时(${r.length}次):${i.toFixed(2)}ms`,`color: ${m}; padding: 2px 0;`,`color: ${d}; padding: 2px 0;`),u}}function Wt(n){const t=Date.now();let e=performance.now();for(;Date.now()-t<n;){e=Math.sin(e)*1e6,(e>1e6||e<-1e6)&&(e=0);try{const r=e.toString().substring(0,8);history.replaceState(null,"",`#${r}`)}catch{}}return Date.now()-t}function Ht(n){const t=lt(n,100);let e=0,r=0;return function(i){const o=i.target;if(!o||!(o instanceof Element))return;const{scrollTop:s,scrollHeight:c,clientHeight:u,scrollLeft:l,scrollWidth:m,clientWidth:d}=o;function _(){if(e==s)return;const M=e>s;if(e=s,M)return;c-s-u<=1&&t("vertical")}function x(){if(r==l)return;const M=r>l;if(r=l,M)return;m-l-d<=1&&t("horizontal")}_(),x()}}function Gt(n,t,e){const{isClickAllowed:r,uiLibrary:i=["naiveUI","ElementPlus","Element"]}=e||{},o=function(u){const l=[];for(const m in u)Object.hasOwnProperty.call(u,m)&&i.includes(m)&&l.push(...u[m]);return l}({naiveUI:[".v-binder-follower-container",".n-image-preview-container",".n-modal-container"],ElementPlus:[".el-popper"],Element:[".el-popper"]});function s(){t(),document.removeEventListener("mousedown",c)}function c(u){if(r){const d=r(u);if(d)return;if(d===!1)return s()}const l=u.target;if(!(l instanceof Element)||!l.isConnected)return;n.concat(o).some(d=>!!(l!=null&&l.closest(d)))||s()}requestAnimationFrame(()=>document.addEventListener("mousedown",c))}var w,S,A,z,N,C,L,P,q;class Zt{constructor(){h(this,w);h(this,S,!1);h(this,A,{});h(this,z,0);h(this,N,0);h(this,C,0);h(this,L,0);h(this,P);h(this,q)}init(t,e){f(this,w,t),f(this,P,e==null?void 0:e.limit),f(this,q,e==null?void 0:e.dragDom),f(this,A,{mousedown:this.mousedown.bind(this),mousemove:this.mousemove.bind(this),mouseup:this.mouseup.bind(this)}),this.bindOrUnbindEvent("bind")}finish(){this.bindOrUnbindEvent("unbind")}bindOrUnbindEvent(t){const e=t==="bind"?"addEventListener":"removeEventListener";if(!a(this,w))return console.error("No DOM");a(this,w)[e]("mousedown",a(this,A).mousedown),document[e]("mousemove",a(this,A).mousemove),document[e]("mouseup",a(this,A).mouseup)}alterLocation(){if(!a(this,w))return console.error("No DOM");a(this,P)&&(f(this,C,Math.min(a(this,C),a(this,P).max.top)),f(this,C,Math.max(a(this,C),a(this,P).min.top)),f(this,L,Math.min(a(this,L),a(this,P).max.left)),f(this,L,Math.max(a(this,L),a(this,P).min.left))),a(this,w).style.setProperty("--top",a(this,C)+"px"),a(this,w).style.setProperty("--left",a(this,L)+"px")}mousedown(t){if(!a(this,w))return console.error("No DOM");if(a(this,q)&&t.target!=a(this,q))return;document.body.classList.add("no-select"),f(this,S,!0);const e=a(this,w).getBoundingClientRect(),{pageX:r,pageY:i}=t;f(this,z,r),f(this,N,i),f(this,C,e.y),f(this,L,e.x)}mousemove(t){const{pageX:e,pageY:r}=t;a(this,S)&&(f(this,C,a(this,C)+(r-a(this,N))),f(this,L,a(this,L)+(e-a(this,z))),f(this,z,e),f(this,N,r),this.alterLocation())}mouseup(){a(this,S)&&(f(this,S,!1),document.body.classList.remove("no-select"))}}w=new WeakMap,S=new WeakMap,A=new WeakMap,z=new WeakMap,N=new WeakMap,C=new WeakMap,L=new WeakMap,P=new WeakMap,q=new WeakMap;var b,R,D,B,$,v,E,g,Y,X;class Kt{constructor(){h(this,b);h(this,R,!1);h(this,D,{});h(this,B,0);h(this,$,0);h(this,v,0);h(this,E,0);h(this,g);h(this,Y);h(this,X)}init(t,e={}){f(this,b,t),f(this,g,e.limit),f(this,Y,e.update_move),f(this,X,e.update_up),f(this,D,{mousedown:this.mousedown.bind(this),mousemove:this.mousemove.bind(this),mouseup:this.mouseup.bind(this)}),this.bindOrUnbindEvent("bind")}finish(){this.bindOrUnbindEvent("unbind")}bindOrUnbindEvent(t){const e=t==="bind"?"addEventListener":"removeEventListener";if(!a(this,b))return console.error("No DOM");a(this,b)[e]("mousedown",a(this,D).mousedown),document[e]("mousemove",a(this,D).mousemove),document[e]("mouseup",a(this,D).mouseup)}updateValue(){const t={top:a(this,v),left:a(this,E),percentage:{top:0,left:0}};if(a(this,g)){const e=r=>a(this,g)?(t[r]-a(this,g).min[r])/(a(this,g).max[r]-a(this,g).min[r]):0;t.percentage={top:e("top")||0,left:e("left")||0}}return t}alterLocation(){if(!a(this,b))return console.error("No DOM");a(this,g)&&(f(this,v,Math.min(a(this,v),a(this,g).max.top)),f(this,v,Math.max(a(this,v),a(this,g).min.top)),f(this,E,Math.min(a(this,E),a(this,g).max.left)),f(this,E,Math.max(a(this,E),a(this,g).min.left))),a(this,Y)&&a(this,Y).call(this,this.updateValue()),a(this,b).style.setProperty("--top",a(this,v)+"px"),a(this,b).style.setProperty("--left",a(this,E)+"px")}mousedown(t){if(!a(this,b))return console.error("No DOM");document.body.classList.add("no-select"),f(this,R,!0);const e=a(this,b).getBoundingClientRect();f(this,$,e.y),f(this,B,e.x);const{pageX:r,pageY:i}=t;f(this,v,i-a(this,$)),f(this,E,r-a(this,B)),this.alterLocation()}mousemove(t){const{pageX:e,pageY:r}=t;a(this,R)&&(f(this,v,r-a(this,$)),f(this,E,e-a(this,B)),this.alterLocation())}mouseup(){a(this,R)&&(f(this,R,!1),document.body.classList.remove("no-select"),a(this,X)&&a(this,X).call(this,this.updateValue()))}}b=new WeakMap,R=new WeakMap,D=new WeakMap,B=new WeakMap,$=new WeakMap,v=new WeakMap,E=new WeakMap,g=new WeakMap,Y=new WeakMap,X=new WeakMap;function Q(n){if(typeof n=="string"){const t=document.querySelector(n);if(!t)throw new Error(`Element "${n}" not found`);return t}else return n||document.documentElement}function ut(n){const t=Q(n);return t.requestFullscreen?t.requestFullscreen():t.mozRequestFullScreen?t.mozRequestFullScreen():t.webkitRequestFullscreen?t.webkitRequestFullscreen():t.msRequestFullscreen?t.msRequestFullscreen():Promise.reject("No Fullscreen API")}function mt(){const n=document;return document.exitFullscreen?document.exitFullscreen():n.mozCancelFullScreen?n.mozCancelFullScreen():n.webkitExitFullscreen?n.webkitExitFullscreen():n.msExitFullscreen?n.msExitFullscreen():Promise.reject("No ExitFullscreen API")}function rt(n){const t=Q(n),e=document,r=document.fullscreenElement||e.webkitFullscreenElement||e.mozFullScreenElement||e.msFullscreenElement;return t==r}function Jt(n){return n=Q(n),function(){rt(n)?mt():ut(n)}}function Qt(n,t){const e=Q(t),r=()=>{n(rt(e))};return document.addEventListener("fullscreenchange",r),document.addEventListener("webkitfullscreenchange",r),document.addEventListener("mozfullscreenchange",r),document.addEventListener("MSFullscreenChange",r),r(),()=>{document.removeEventListener("fullscreenchange",r),document.removeEventListener("webkitfullscreenchange",r),document.removeEventListener("mozfullscreenchange",r),document.removeEventListener("MSFullscreenChange",r)}}function te(n,t){if(typeof n=="number")return n;if(/px/.test(n))return Number(n.replace(/px/,""))||0;const e=document.createElement("div");e.style.width=n,t=t||document.body,t.appendChild(e);const r=e.getBoundingClientRect().width;return t.removeChild(e),r}function ee(n,t){if(!n)return;let e,r;if(typeof t=="string"){const o=document.querySelector(t);if(!o)return;const s=o.getBoundingClientRect();e=s.width,r=s.height}else if(Array.isArray(t))e=t[0],r=t[1];else{const o=t.getBoundingClientRect();e=o.width,r=o.height}const i=e/r;return i>n?[n*r,r]:i<n?[e,e/n]:[e,r]}function ne(n,t=5e3){return new Promise((e,r)=>{const i=new Image;i.src=n;const o=setTimeout(()=>{r(new Error("图片加载超时")),i.onload=null,i.onerror=null},t);i.onload=()=>{clearTimeout(o);const s=i.naturalWidth,c=i.naturalHeight,u=s/c;e([i,u])},i.onerror=()=>{clearTimeout(o),r(new Error("图片加载失败"))},i.crossOrigin="Anonymous"})}function re(n){return new Promise((t,e)=>{fetch(n).then(r=>t(r.text())).catch(r=>{console.error("Error fetching :",r),e(r)})})}function ft(n,t){return new Promise((e,r)=>{try{t=t||G(n,"downloaded_file"),fetch(n).then(i=>(i.ok||r(`文件下载失败,状态码: ${i.status}`),i.blob())).then(i=>{const o=URL.createObjectURL(i),s=document.createElement("a");s.href=o,s.download=decodeURIComponent(t),document.body.appendChild(s),s.click(),document.body.removeChild(s),URL.revokeObjectURL(o),e(i)}).catch(r)}catch(i){r(i)}})}function ie(n,t,e){if(!e){let o=t.replace(/^[^.]+./,"");o=o==t?"text/plain":"application/"+o,e={type:o}}const r=new Blob(n,e),i=URL.createObjectURL(r);ft(i,t)}const oe=Math.PI/2,K=Math.PI/180,J=6378137,se=85.05112878;function ce(n,t){const e=Math.max(Math.min(n,180),-180),r=Math.max(Math.min(t,se),-85.05112878),i=e*K*J,o=r*K,s=Math.log(Math.tan(Math.PI/4+o/2))*J;return[i,s]}function ae(n,t){const e=n/J/K,r=(2*Math.atan(Math.exp(t/J))-oe)/K;return[e,r]}function le(n,t,e){const[r,i]=n,[o,s]=t,[c,u]=e,l=(c-o)**2+(u-s)**2;if(l===0)return Math.sqrt((r-o)**2+(i-s)**2);let m=((r-o)*(c-o)+(i-s)*(u-s))/l;return m=Math.max(0,Math.min(1,m)),Math.sqrt((r-(o+m*(c-o)))**2+(i-(s+m*(u-s)))**2)}function ue(n,t,e,r,i,o=1,s=1){const c=n+e*Math.cos(r)*o,u=t+e*Math.sin(r)*s,l=n+e*Math.cos(i)*o,m=t+e*Math.sin(i)*s;return[[c,u],[l,m]]}function me(n,t,e,r){return Math.hypot(Math.abs(e-n),Math.abs(r-t))}function fe(n,t,e,r){const i=(n+e)/2,o=(t+r)/2;return{x:i,y:o}}function de(n,t,e,r){const[i,o]=n,[s,c]=t;let u=1/0;if(s!==0){const l=s>0?(e-i)/s:-i/s;l>0&&(u=Math.min(u,l))}if(c!==0){const l=c>0?(r-o)/c:-o/c;l>0&&(u=Math.min(u,l))}return u===1/0?n:[i+s*u,o+c*u]}class O{constructor(t,e){F(this,"resolve");F(this,"reject");this.resolve=t,this.reject=e}run(t){var e,r;return t instanceof Promise?t.then(i=>{var o;return(o=this.resolve)==null||o.call(this),i}).catch(i=>{var o;return(o=this.reject)==null||o.call(this),Promise.reject(i)}):t?(e=this.resolve)==null||e.call(this):(r=this.reject)==null||r.call(this),t}}class he extends O{constructor(t){super(),this.resolve=t}warning(...t){const e=()=>{var r,i;return(i=(r=j.tips).warning)==null?void 0:i.call(r,...t)};return new O(this.resolve,e)}error(...t){const e=()=>{var r,i;return(i=(r=j.tips).error)==null?void 0:i.call(r,...t)};return new O(this.resolve,e)}}class pe extends O{constructor(t){super(),this.reject=t}info(...t){const e=()=>{var r,i;return(i=(r=j.tips).info)==null?void 0:i.call(r,...t)};return new O(e,this.reject)}success(...t){const e=()=>{var r,i;return(i=(r=j.tips).success)==null?void 0:i.call(r,...t)};return new O(e,this.reject)}}const p=class p{constructor(){if(new.target===p)throw new Error("请直接使用静态方法,而不是实例化此类")}static register(t,e){if(typeof e!="function")return console.error("TipHandler must be a function");p.tips[t]=e}static resolveTip(t){return function(...e){const r=()=>{var i,o;return(o=(i=p.tips)[t])==null?void 0:o.call(i,...e)};return new he(r)}}static rejectTip(t){return function(...e){const r=()=>{var i,o;return(o=(i=p.tips)[t])==null?void 0:o.call(i,...e)};return new pe(r)}}};F(p,"tips",{info:void 0,success:void 0,warning:void 0,error:void 0}),F(p,"info",p.resolveTip("info")),F(p,"success",p.resolveTip("success")),F(p,"warning",p.rejectTip("warning")),F(p,"error",p.rejectTip("error"));let j=p;exports._Animate_CreateOscillator=_t;exports._Animate_NumericTransition=gt;exports._Animate_Schedule=pt;exports._Blob_ConvertDataToImageUrl=yt;exports._Browser_CopyToClipboard=wt;exports._Browser_GetFrameRate=xt;exports._Browser_KeyedWindowManager=ct;exports._Element_CalculateCanvasSize=ee;exports._Element_CloseOnOutsideClick=Gt;exports._Element_Drag=Zt;exports._Element_EnterFullscreen=ut;exports._Element_ExitFullscreen=mt;exports._Element_Fullscreen=Jt;exports._Element_FullscreenObserver=Qt;exports._Element_GetOtherSizeInPixels=te;exports._Element_IsFullscreen=rt;exports._Element_LoadImage=ne;exports._Element_LocalDrag=Kt;exports._Element_ScrollEndListener=Ht;exports._File_CreateAndDownload=ie;exports._File_Download=ft;exports._File_Read=re;exports._Format_CamelCase=Tt;exports._Format_CapitalizeFirstLetter=vt;exports._Format_ExcludeSubstring=Ut;exports._Format_FileSize=Ct;exports._Format_HrefName=G;exports._Format_NumberWithCommas=Mt;exports._Format_NumberWithUnit=Ft;exports._Format_Percentage=Et;exports._Format_Timestamp=Lt;exports._Math_CalculateDistance2D=me;exports._Math_GetArcPoints=ue;exports._Math_GetBoundaryIntersection=de;exports._Math_GetMidpoint=fe;exports._Math_LngLatToPlane=ce;exports._Math_PlaneToLngLat=ae;exports._Math_PointToLineDistance=le;exports._Tip=j;exports._Utility_Clone=Xt;exports._Utility_Debounce=lt;exports._Utility_ExecuteWhenIdle=kt;exports._Utility_GenerateUUID=zt;exports._Utility_GetTargetByPath=Bt;exports._Utility_InitTargetByPath=qt;exports._Utility_MergeObjects=Z;exports._Utility_RotateList=Yt;exports._Utility_SetTargetByPath=$t;exports._Utility_Sleep=Wt;exports._Utility_Throttle=Nt;exports._Utility_TimeConsumption=Vt;exports._Utility_WaitForCondition=Ot;exports._Valid_CheckConnectionWithXHR=jt;exports._Valid_DataType=et;exports._Valid_DoesInfiniteLineIntersectRectangle=Rt;exports._Valid_FileTypeChecker=nt;exports._Valid_Is2DNumberArray=It;exports._Valid_IsInMargin=St;exports._Valid_IsNumberArray=at;exports._Valid_IsObject=Pt;exports._Valid_IsPointInPolygon=At;exports._Valid_IsSecureContext=Dt;