@qy_better_lib/core 0.2.3 → 0.2.5

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.
package/dist/core.min.js CHANGED
@@ -1 +1 @@
1
- (function(i,m){typeof exports=="object"&&typeof module<"u"?m(exports,require("dayjs")):typeof define=="function"&&define.amd?define(["exports","dayjs"],m):(i=typeof globalThis<"u"?globalThis:i||self,m(i.QyBetterLibCore={},i.dayjs))})(this,(function(i,m){"use strict";function st(){return Math.floor(Math.random()*1e4)}function at(t){return t<0?0:Math.floor(Math.random()*Math.floor(t))}function ft(t,e){return t>e&&([t,e]=[e,t]),Math.floor(Math.random()*(e-t+1))+t}function lt(t,e,n=2){t>e&&([t,e]=[e,t]);const r=Math.random()*(e-t)+t;return parseFloat(r.toFixed(n))}function _t(){const t=P;return`${t()}${t()}-${t()}-${t()}-${t()}-${t()}${t()}${t()}`}function P(){return Math.floor((1+Math.random())*65536).toString(16).substring(1)}function N(t,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"){let n="";const r=e.length;for(let o=0;o<t;o++)n+=e.charAt(Math.floor(Math.random()*r));return n}function dt(){return Math.random()>.5}function v(t){if(!(!t||t.length===0))return t[Math.floor(Math.random()*t.length)]}function ht(t,e){return!t||t.length===0||e<=0?[]:e>=t.length?[...t]:[...t].sort(()=>.5-Math.random()).slice(0,e)}function mt(){const t="0123456789ABCDEF";let e="#";for(let n=0;n<6;n++)e+=t[Math.floor(Math.random()*16)];return e}function j(t){return N(t,"0123456789")}function gt(t=8){return N(t,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()_+~`|}{[]:;?><,./-=")}function yt(){const e=v(["130","131","132","133","134","135","136","137","138","139","150","151","152","153","155","156","157","158","159","170","171","172","173","175","176","177","178","180","181","182","183","184","185","186","187","188","189"]),n=j(8);return`${e}${n}`}function bt(){const t=["gmail.com","yahoo.com","hotmail.com","outlook.com","163.com","126.com","qq.com","sina.com"],e=N(8),n=v(t);return`${e}@${n}`}function wt(){const t=["http","https"],e=["example.com","test.com","demo.com","sample.com"],n=["api","docs","about","contact","products"],r=v(t),o=v(e),c=v(n),u=N(4);return`${r}://www.${o}/${c}?id=${u}`}function pt(t){if(!t)return[];const e=[...t];for(let n=e.length-1;n>0;n--){const r=Math.floor(Math.random()*(n+1));[e[n],e[r]]=[e[r],e[n]]}return e}function vt(t){return t===void 0}function Mt(t){return t===null}function l(t){return Array.isArray(t)}function h(t){return typeof t=="object"&&t!==null&&Object.prototype.toString.call(t)==="[object Object]"}function Nt(t){if(typeof t!="object"||t===null)return!1;let e=t;for(;Object.getPrototypeOf(e)!==null;)e=Object.getPrototypeOf(e);return Object.getPrototypeOf(t)===e}function W(t){return Object.prototype.toString.call(t)==="[object Date]"}function $t(t){return W(t)&&!isNaN(t.getTime())}function Et(t){return typeof t=="boolean"}function w(t){return typeof t=="function"}function kt(t){return Object.prototype.toString.call(t)==="[object RegExp]"}function Ot(t){return typeof t=="symbol"}function St(t){return typeof t=="object"&&t!==null&&typeof t.then=="function"&&typeof t.catch=="function"}function zt(t){return!t&&t!==0||l(t)&&t.length===0||h(t)&&!Object.keys(t).length}function At(t){return!!t}function It(t){return!t}function D(t){return typeof Element>"u"?!1:t instanceof Element}function Dt(t){return typeof HTMLElement>"u"?!1:t instanceof HTMLElement}const U=typeof window<"u";function g(t){return typeof t=="number"&&!isNaN(t)}function L(t){return typeof t=="string"}function Lt(t){return L(t)?!Number.isNaN(Number(t)):!1}function Ft(t){return/^1[3-9]\d{9}$/.test(t)}function Tt(t){return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t)}function Ct(t){try{return new URL(t),!0}catch{return!1}}function Rt(t){return/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/.test(t)}function Ht(t){return/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test(t)}function Pt(t){return/^(6553[0-5]|655[0-2]\d|65[0-4]\d{2}|6[0-4]\d{3}|[1-5]\d{4}|[1-9]\d{0,3}|0)$/.test(t)}function jt(t,e="key",n="children"){const r={};if(!l(t))return r;const o=[{nodes:t}];for(;o.length>0;){const{nodes:c,parent_key:u}=o.pop();for(const s of c){const a=s[e];if(a&&!r[a]){r[a]=s,u&&r[u]&&(r[a].parent=r[u]);const f=s[n];f&&l(f)&&f.length>0&&o.push({nodes:f,parent_key:a})}}}return r}function Wt(t,e="key",n="parentId",r="children"){if(!l(t))return[];const o={},c=[];for(const u of t)o[u[e]]={...u},o[u[e]][r]||(o[u[e]][r]=[]);for(const u of t){const s=u[n];!s||!o[s]?c.push(o[u[e]]):o[s][r].push(o[u[e]])}return c}function Ut(t,e,n="children"){if(!e||!w(e))return!1;let r=!1;const o=l(t)?t:[t],c=[];for(const u of o)c.push({node:u,depth:0});for(;c.length>0;){const{node:u,depth:s}=c.pop();if(e(u,s)===!1){r=!0;break}const f=u[n];if(f&&l(f)&&f.length>0)for(let _=f.length-1;_>=0;_--)c.push({node:f[_],depth:s+1})}return r}function Bt(t,e,n="children"){if(!e||!w(e))return!1;const r=[];if(l(t))for(const o of t)r.push({node:o,depth:0});else r.push({node:t,depth:0});for(;r.length>0;){const{node:o,depth:c}=r.shift();if(e(o,c)===!1)return!0;const s=o[n];if(s&&l(s))for(const a of s)r.push({node:a,depth:c+1})}return!1}function B(t,e,n="children"){if(!e||!w(e))return null;let r=null;const o=c=>{if(e(c))return r=c,!0;const u=c[n];if(u&&l(u)){for(const s of u)if(o(s))return!0}return!1};if(l(t)){for(const c of t)if(o(c))break}else o(t);return r}function F(t,e,n="key",r="children"){return B(t,o=>o[n]===e,r)}function qt(t,e,n="children"){if(!e||!w(e))return[];const r=o=>{const c=o[n],u=[];if(c&&l(c))for(const s of c){const a=r(s);a&&u.push(a)}return e(o)||u.length>0?{...o,[n]:u}:null};if(l(t)){const o=[];for(const c of t){const u=r(c);u&&o.push(u)}return o}else{const o=r(t);return o?[o]:[]}}function Yt(t,e,n="children"){if(!e||!w(e))return[];const r=o=>{const c=e(o),u=o[n];return u&&l(u)&&(c[n]=u.map(s=>r(s))),c};return l(t)?t.map(o=>r(o)):[r(t)]}function Jt(t,e="key",n="path",r="children"){const o=(c,u="")=>{const s=c[e],a=u?`${u}.${s}`:String(s),f={...c,[n]:a},_=c[r];return _&&l(_)&&(f[r]=_.map(d=>o(d,a))),f};return l(t)?t.map(c=>o(c)):[o(t)]}function Vt(t,e="children"){const n=[],r=o=>{const c=o[e];if(c&&l(c))for(const u of c)n.push(u),r(u)};return r(t),n}function Kt(t,e="parent"){const n=[];let r=t[e];for(;r;)n.unshift(r),r=r[e];return n}function Qt(t,e="children"){const n=r=>{const o=r[e];if(!o||!l(o)||o.length===0)return 1;const c=o.map(u=>n(u));return Math.max(...c)+1};if(l(t)){if(t.length===0)return 0;const r=t.map(o=>n(o));return Math.max(...r)}else return n(t)}function Gt(t,e="children"){const n=[],r=o=>{n.push(o);const c=o[e];if(c&&l(c))for(const u of c)r(u)};if(l(t))for(const o of t)r(o);else r(t);return n}function Xt(t,e,n,r="key",o="children"){const c=l(t)?t:[t],u=F(c,e,r,o);return u?(u[o]||(u[o]=[]),u[o].push(n)):c.push(n),c}function Zt(t,e,n="key",r="children"){const o=l(t)?t:[t];let c=null,u=null;const s=(a,f=null)=>{for(let _=0;_<a.length;_++){const d=a[_];if(d[n]===e)return c=d,u=f?f[r]:a,!0;const M=d[r];if(M&&l(M)&&s(M,d))return!0}return!1};if(s(o),c&&u){const a=u.findIndex(f=>f[n]===e);a>-1&&u.splice(a,1)}return o}function xt(t,e,n,r="key",o="children"){const c=l(t)?t:[t],u=F(c,e,r,o);return u&&Object.assign(u,n),c}function te(t,e,n=!0,r="children"){const o=l(t)?t:[t],c=typeof e=="string"?(s,a)=>{const f=s[e],_=a[e];return f<_?-1:f>_?1:0}:e,u=s=>{if(s.sort(c),n)for(const a of s){const f=a[r];f&&l(f)&&f.length>0&&u(f)}};return u(o),o}function ee(t,e="children"){const n=r=>{const o={...r},c=r[e];return c&&l(c)&&(o[e]=c.map(u=>n(u))),o};return l(t)?t.map(r=>n(r)):[n(t)]}function ne(t,e="key",n="children"){const r=[],o=new Set,c=new Set,u=(s,a="")=>{if(!h(s)){r.push(`Invalid node at ${a}: node must be an object`);return}if(o.has(s)){r.push(`Circular reference detected at ${a}`);return}o.add(s),e in s&&s[e]!==void 0&&(c.has(s[e])?r.push(`Duplicate key "${s[e]}" found at ${a}`):c.add(s[e]));const f=s[n];f!==void 0&&(l(f)?f.forEach((_,d)=>{u(_,`${a}[${d}]`)}):r.push(`Invalid children at ${a}: children must be an array`)),o.delete(s)};return l(t)?t.forEach((s,a)=>{u(s,`[${a}]`)}):u(t,"root"),{valid:r.length===0,errors:r}}function re(t,e,n="children"){const r=[],o=w(e)?e:u=>{if(!e||typeof e!="object")return!1;for(const[s,a]of Object.entries(e))if(u[s]!==a)return!1;return!0},c=u=>{typeof o=="function"&&o(u)&&r.push(u);const s=u[n];if(s&&l(s))for(const a of s)c(a)};if(l(t))for(const u of t)c(u);else c(t);return r}function q(t){if(!t&&t!==0)return"0";const e=k(t);return isNaN(e)?`${t}`:`${e}`.replace(/(\d{1,3})(?=(\d{3})+(?:$|\.))/g,"$1,")}function k(t){if(g(t))return t;if(L(t)){const e=parseFloat(t);return isNaN(e)?Number.NaN:e}return Number.NaN}function Y(t,e){const n=k(t);return isNaN(n)?Number.NaN:Number(n.toFixed(e))}function oe(t,e="¥",n=2){if(!g(t))return e+"0.00";let r;n===0?r=Math.floor(t).toString():r=t.toFixed(n);const o=q(r);return e+o}function ie(t,e,n){return g(t)?Math.max(e,Math.min(n,t)):Number.NaN}function ce(t,e=2){const n=k(t);return isNaN(n)?"0%":(n*100).toFixed(e)+"%"}function ue(t){return g(t)?t%2===0:!1}function se(t){return g(t)?Math.trunc(t):Number.NaN}function ae(t){return g(t)?t-Math.trunc(t):Number.NaN}function fe(t,e=0){if(!g(t))return Number.NaN;const n=Math.pow(10,e);return Math.round(t*n)/n}function le(t,e=0){if(!g(t))return Number.NaN;const n=Math.pow(10,e);return Math.ceil(t*n)/n}function _e(t,e=0){if(!g(t))return Number.NaN;const n=Math.pow(10,e);return Math.floor(t*n)/n}function de(t,e,n=2){if(!g(t)||!g(e)||e===0)return Number.NaN;const r=t/e*100;return Y(r,n)}function y(t="local"){return t==="local"?localStorage:sessionStorage}function O(t,e=null){try{return JSON.parse(t)}catch(n){return console.error("JSON解析错误:",n),e}}function he(){const t=localStorage.getItem("token");if(!t)return null;const e=O(t);return e!==null?e.expiry!=null&&e.expiry<Date.now()?(localStorage.removeItem("token"),null):e.value:null}function me(t,e=10080*60){const n=Date.now()+e*1e3,r={value:t,expiry:n};localStorage.setItem("token",JSON.stringify(r))}function ge(){localStorage.removeItem("token")}function J(t,e,n="local"){const r=y(n);e!==void 0&&r.setItem(t,JSON.stringify(e))}function V(t,e="local"){const r=y(e).getItem(t);return r?O(r):null}function K(t,e="local"){y(e).removeItem(t)}function ye(t="local"){y(t).clear()}function be(t,e,n,r="local"){const o=y(r),c={value:e,expiry:Date.now()+n*1e3};o.setItem(t,JSON.stringify(c))}function we(t,e="local"){const n=y(e),r=n.getItem(t);if(!r)return null;const o=O(r);return o.expiry&&o.expiry<Date.now()?(n.removeItem(t),null):o.value}function pe(t,e="local"){return y(e).getItem(t)!==null}function Q(t="local"){const e=y(t),n=[];for(let r=0;r<e.length;r++){const o=e.key(r);o&&n.push(o)}return n}function ve(t="local"){const e=y(t),n=Q(t);let r=0;return n.forEach(o=>{const c=e.getItem(o);if(c){const u=O(c);u.expiry&&u.expiry<Date.now()&&(e.removeItem(o),r++)}}),r}function Me(t){try{return btoa(unescape(encodeURIComponent(t)))}catch(e){return console.error("加密错误:",e),t}}function Ne(t){try{return decodeURIComponent(escape(atob(t)))}catch(e){return console.error("解密错误:",e),t}}function $e(t,e,n="local"){const r=y(n),o=JSON.stringify(e),c=Me(o);r.setItem(t,c)}function Ee(t,e="local"){const r=y(e).getItem(t);if(!r)return null;try{const o=Ne(r);return JSON.parse(o)}catch(o){return console.error("解密解析错误:",o),null}}function ke(t,e="local"){t.forEach(n=>{J(n.key,n.value,e)})}function Oe(t,e="local"){const n={};return t.forEach(r=>{n[r]=V(r,e)}),n}function Se(t,e="local"){t.forEach(n=>{K(n,e)})}function S(t){const e=Object.prototype.toString;if(!t||typeof t!="object")return t;if(t.nodeType&&"cloneNode"in t)return t.cloneNode(!0);if(e.call(t)==="[object Date]")return new Date(t.getTime());if(e.call(t)==="[object RegExp]"){const r=[];return t.global&&r.push("g"),t.multiline&&r.push("m"),t.ignoreCase&&r.push("i"),new RegExp(t.source,r.join(""))}if(e.call(t)==="[object FormData]"){const r=new FormData;for(const[o,c]of t.entries())r.append(o,c);return r}if(e.call(t)==="[object Map]"){const r=new Map;for(const[o,c]of t.entries())r.set(o,S(c));return r}if(e.call(t)==="[object Set]"){const r=new Set;for(const o of t.values())r.add(S(o));return r}const n=Array.isArray(t)?[]:t.constructor?new t.constructor:{};for(const r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=S(t[r]));return n}function G(...t){let e=t.length,n=t[0];h(n)||(n={});for(let r=1;r<e;r++){let o=t[r];if(h(o))for(let c in o)c==="__proto__"||n===o[c]||(h(o[c])?(h(n[c])||(n[c]=Array.isArray(o[c])?[]:{}),n[c]=G(n[c],o[c])):n[c]=o[c])}return n}function z(t,e){if(t===e)return!0;if(t&&e&&typeof t=="object"&&typeof e=="object"){if(t.constructor!==e.constructor)return!1;let n,r,o;if(Array.isArray(t)){if(n=t.length,n!=e.length)return!1;for(r=n;r--!==0;)if(!z(t[r],e[r]))return!1;return!0}if(t.constructor===RegExp)return t.source===e.source&&t.flags===e.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===e.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===e.toString();if(o=Object.keys(t),n=o.length,n!==Object.keys(e).length)return!1;for(r=n;r--!==0;)if(!Object.prototype.hasOwnProperty.call(e,o[r]))return!1;for(r=n;r--!==0;){const c=o[r];if(!z(t[c],e[c]))return!1}return!0}return t!==t&&e!==e}function ze(t){return h(t)&&Object.keys(t).length===0}function Ae(t,e){if(!h(t))return{};const n={};return e.forEach(r=>{r in t&&(n[r]=t[r])}),n}function Ie(t,e){if(!h(t))return{};const n={};return Object.keys(t).forEach(r=>{e.includes(r)||(n[r]=t[r])}),n}function X(t,e=""){if(!h(t))return{};const n={};return Object.keys(t).forEach(r=>{const o=e?`${e}.${r}`:r;h(t[r])&&!Array.isArray(t[r])?Object.assign(n,X(t[r],o)):n[o]=t[r]}),n}function De(t){if(!h(t))return{};const e={};return Object.keys(t).forEach(n=>{const r=n.split(".");let o=e;r.forEach((c,u)=>{u===r.length-1?o[c]=t[n]:(o[c]||(o[c]={}),o=o[c])})}),e}function Le(t,e,n=void 0){if(!h(t))return n;const r=e.split(".");let o=t;for(const c of r){if(o==null)return n;o=o[c]}return o!==void 0?o:n}function Fe(t,e,n){h(t)||(t={});const r=e.split(".");let o=t;return r.forEach((c,u)=>{u===r.length-1?o[c]=n:(h(o[c])||(o[c]={}),o=o[c])}),t}function Te(...t){return Object.assign({},...t)}function Ce(t,e){const n={};return!h(t)&&!h(e)?n:h(t)?h(e)?(new Set([...Object.keys(t),...Object.keys(e)]).forEach(o=>{z(t[o],e[o])||(n[o]={oldValue:t[o],newValue:e[o]})}),n):t:e}function Z(t,e){return!t||t.tagName==="BODY"?null:t.classList.contains(e)?t:Z(t.parentElement,e)}function Re(t,e=!0){const n=document.getElementById(t);n&&n.scrollTo({top:n.scrollHeight,behavior:e?"smooth":void 0})}function He(t,e=document){return e.querySelector(t)}function Pe(t,e=document){return Array.from(e.querySelectorAll(t))}function je(t,e){t&&!t.classList.contains(e)&&t.classList.add(e)}function We(t,e){t&&t.classList.contains(e)&&t.classList.remove(e)}function Ue(t,e){return t?t.classList.toggle(e):!1}function Be(t,e){return t?t.classList.contains(e):!1}function qe(t,e){return t?window.getComputedStyle(t).getPropertyValue(e):""}function Ye(t,e,n){t&&"style"in t&&(t.style[e]=n)}function x(t,e){t&&"style"in t&&Object.entries(e).forEach(([n,r])=>{t.style[n]=r})}function Je(t,e){return t&&t.getAttribute(e)||""}function tt(t,e,n){t&&t.setAttribute(e,n)}function Ve(t,e){t&&t.removeAttribute(e)}function Ke(t,e,n,r){t&&t.addEventListener(e,n,r)}function Qe(t,e,n,r){t&&t.removeEventListener(e,n,r)}function Ge(t,e){const n=document.createElement(t);return e&&(e.class_name&&(n.className=e.class_name),e.style&&x(n,e.style),e.attributes&&Object.entries(e.attributes).forEach(([r,o])=>{tt(n,r,o)}),e.text&&(n.textContent=e.text)),n}function $(t){return t?t.getBoundingClientRect():null}function et(t){if(!t)return null;const e=$(t);return e?{top:e.top+window.pageYOffset,left:e.left+window.pageXOffset}:null}function Xe(t){if(!t)return null;const e=$(t);return e?{width:e.width,height:e.height}:null}function Ze(t,e){if(!t)return;const{behavior:n="smooth",offsetTop:r=0,offsetLeft:o=0}=e||{},c=et(t);c&&window.scrollTo({top:c.top-r,left:c.left-o,behavior:n})}function xe(t){if(!t)return!1;const e=$(t);return e?e.top>=0&&e.left>=0&&e.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&e.right<=(window.innerWidth||document.documentElement.clientWidth):!1}function tn(t){if(!t)return!1;const e=$(t);return e?e.top>0&&e.left>0&&e.bottom<(window.innerHeight||document.documentElement.clientHeight)&&e.right<(window.innerWidth||document.documentElement.clientWidth):!1}function en(){return{width:window.innerWidth||document.documentElement.clientWidth,height:window.innerHeight||document.documentElement.clientHeight}}function nn(){return{width:Math.max(document.body.scrollWidth,document.documentElement.scrollWidth,document.body.offsetWidth,document.documentElement.offsetWidth,document.documentElement.clientWidth),height:Math.max(document.body.scrollHeight,document.documentElement.scrollHeight,document.body.offsetHeight,document.documentElement.offsetHeight,document.documentElement.clientHeight)}}function T({path:t,name:e}){const n=document.createElement("a");n.href=t,n.target="_blank",e&&n.setAttribute("download",e),document.body.appendChild(n),n.click(),document.body.removeChild(n)}function rn(t){t.forEach(e=>{T({path:e.url,name:e.name})})}async function on(t){if(!t)return;const e=new FileReader;return e.readAsDataURL(t),new Promise((n,r)=>{e.onload=o=>n(o.target?.result),e.onerror=o=>r(void 0)})}async function cn(t,e="UTF-8"){if(!t)return;const n=new FileReader;return n.readAsText(t,e),new Promise((r,o)=>{n.onload=c=>r(c.target?.result),n.onerror=()=>o(void 0)})}function A(t){if(!t)return"";const e=t.lastIndexOf(".");return e===-1?"":t.substring(e+1).toLowerCase()}function C(t){if(!t)return"";const e=t.lastIndexOf(".");return e===-1?t:t.substring(0,e)}function un(t,e){return t.size<=e}function sn(t,e){const n=A(t.name);return e.includes(n)}function an(t,e,n){return new File([t],e,{type:n})}function fn(t,e,n="text/plain"){const r=new Blob([t],{type:n}),o=URL.createObjectURL(r);T({path:o,name:e}),URL.revokeObjectURL(o)}async function ln(t,e=800,n=800,r=.8){if(t.type.startsWith("image/"))return new Promise(o=>{const c=document.createElement("canvas"),u=c.getContext("2d"),s=new Image;s.onload=()=>{let{width:a,height:f}=s;if(a>e||f>n){const _=Math.min(e/a,n/f);a*=_,f*=_}c.width=a,c.height=f,u?.drawImage(s,0,0,a,f),c.toBlob(_=>{if(_){const d=new File([_],t.name,{type:t.type});o(d)}else o(void 0)},t.type,r)},s.src=URL.createObjectURL(t)})}function _n(t){const e=A(t.name),n=C(t.name);let r="";return t.size<1024?r=`${t.size} B`:t.size<1024*1024?r=`${(t.size/1024).toFixed(2)} KB`:t.size<1024*1024*1024?r=`${(t.size/(1024*1024)).toFixed(2)} MB`:r=`${(t.size/(1024*1024*1024)).toFixed(2)} GB`,{name:t.name,size:t.size,size_text:r,type:t.type,extension:e,name_without_extension:n}}function dn(t){const e=A(t),n=C(t),r=Date.now(),o=Math.random().toString(36).substring(2,8);return e?`${n}_${r}_${o}.${e}`:`${n}_${r}_${o}`}function nt(t){return/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.test(t)}function hn(t,e,n){if(!nt(t)||!nt(e))return t;n=Math.max(Math.min(Number(n),1),0);const r=p(t),o=p(e);if(!r||!o)return t;const c=Math.round(r.r*(1-n)+o.r*n),u=Math.round(r.g*(1-n)+o.g*n),s=Math.round(r.b*(1-n)+o.b*n);return E(c,u,s)}function mn(t){const e=p(t);return e?`${e.r},${e.g},${e.b}`:"0,0,0"}function p(t){const e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return e?{r:parseInt(e[1],16),g:parseInt(e[2],16),b:parseInt(e[3],16)}:null}function E(t,e,n){return t=Math.max(0,Math.min(255,Math.round(t))),e=Math.max(0,Math.min(255,Math.round(e))),n=Math.max(0,Math.min(255,Math.round(n))),`#${((1<<24)+(t<<16)+(e<<8)+n).toString(16).slice(1)}`}function gn(t,e,n,r){return E(t,e,n)}function yn(t,e){const n=p(t);if(!n)return t;e=Math.max(0,Math.min(1,e));const r=Math.min(255,Math.round(n.r+(255-n.r)*e)),o=Math.min(255,Math.round(n.g+(255-n.g)*e)),c=Math.min(255,Math.round(n.b+(255-n.b)*e));return E(r,o,c)}function bn(t,e){const n=p(t);if(!n)return t;e=Math.max(0,Math.min(1,e));const r=Math.max(0,Math.round(n.r*(1-e))),o=Math.max(0,Math.round(n.g*(1-e))),c=Math.max(0,Math.round(n.b*(1-e)));return E(r,o,c)}function R(t){const e=p(t);return e?(e.r*299+e.g*587+e.b*114)/1e3>128:!1}function wn(t){return!R(t)}function pn(t){return R(t)?"#000000":"#FFFFFF"}function vn(t,e="YYYY-MM-DD HH:mm:ss"){return m(t).format(e)}function Mn(t,e=-1,n="YYYY-MM-DD HH:mm:ss",r=!1){const o=m(),c=o.format(n);let u=o;switch(t){case"d":u=r?o.add(e,"day"):o.startOf("day");break;case"w":u=r?o.add(e,"week"):o.startOf("week");break;case"M":u=r?o.add(e,"month"):o.startOf("month");break;case"Q":u=r?o.add(e*3,"month"):o.startOf("month").subtract(o.month()%3,"month");break;case"y":u=r?o.add(e,"year"):o.startOf("year");break;case"h":u=o.add(e,"hour");break;case"m":u=o.add(e,"minute");break;case"s":u=o.add(e,"second");break}return[u.format(n),c]}function Nn(t,e,n="day"){return m(t).diff(m(e),n)}function $n(t,e,n,r){const o=m(t).add(e,n);return r?o.format(r):o.toDate()}function En(t,e,n,r){const o=m(t).subtract(e,n);return r?o.format(r):o.toDate()}function kn(t){const e=m(t).day();return e>0&&e<6}function On(t){const e=m(t).day();return e===0||e===6}function Sn(t){const e=m(),n=m(t),r=e.diff(n,"minute");if(r<1)return"刚刚";if(r<60)return`${r}分钟前`;const o=e.diff(n,"hour");if(o<24)return`${o}小时前`;const c=e.diff(n,"day");if(c<30)return`${c}天前`;const u=e.diff(n,"month");return u<12?`${u}个月前`:`${e.diff(n,"year")}年前`}function zn(t,e="zh"){const n=Math.floor(t/1e3),r=Math.floor(n/86400),o=Math.floor(n%86400/3600),c=Math.floor(n%3600/60),u=n%60,s=e==="zh"?{day:"天",hour:"时",minute:"分",second:"秒"}:{day:"D",hour:"H",minute:"M",second:"S"};let a="";return r>0&&(a+=`${r}${s.day}`),(o>0||r>0&&(c>0||u>0))&&(a+=`${o}${s.hour}`),(c>0||o>0&&u>0)&&(a+=`${c}${s.minute}`),(u>0||a==="")&&(a+=`${u}${s.second}`),a}function An(t,e=200,n=!1){let r;return function(...o){const c=this;if(r&&clearTimeout(r),n){const u=!r;if(r=setTimeout(()=>{r=void 0},e),u)return t.apply(c,o)}else r=setTimeout(()=>{t.apply(c,o)},e)}}function In(t,e=200,n={}){const{leading:r=!0,trailing:o=!0}=n;let c=0,u,s,a;return function(...f){const _=this,d=Date.now();if(c===0){r&&t.apply(_,f),c=d;return}s=f,a=_;const M=d-c;if(M>=e){u&&(clearTimeout(u),u=void 0),t.apply(_,f),c=d;return}!u&&o&&(u=setTimeout(()=>{s&&(t.apply(a,s),c=Date.now()),u=void 0,s=void 0,a=void 0},e-M))}}function Dn(t){const e=t.length;function n(...r){return r.length>=e?t.apply(this,r):function(...o){return n.apply(this,[...r,...o])}}return n}function Ln(...t){return function(e){return t.reduceRight((n,r)=>r(n),e)}}function Fn(...t){return function(e){return t.reduce((n,r)=>r(n),e)}}function Tn(t,e=1e3){return new Promise(n=>{setTimeout(()=>{n(t())},e)})}async function rt(t,e=3,n=1e3){try{return await t()}catch(r){if(e<=0)throw r;return await new Promise(o=>setTimeout(o,n)),rt(t,e-1,n)}}function Cn(t){let e=!1,n;return function(...r){return e||(e=!0,n=t.apply(this,r)),n}}function Rn(t){const e=new Map;return function(...n){const r=JSON.stringify(n);if(e.has(r))return e.get(r);const o=t.apply(this,n);return e.set(r,o),o}}async function Hn(t,e=!0){if(e)return Promise.all(t.map(n=>n()));{const n=[];for(const r of t)n.push(await r());return n}}function Pn(t,e=5e3,n="Operation timed out"){return Promise.race([Promise.resolve(t()),new Promise((r,o)=>{setTimeout(()=>{o(new Error(n))},e)})])}function jn(t,e=1920){let n=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth;if(!n)return t;let r=n/e;return Number((t*r).toFixed(3))}function Wn(t,e,n){return{type:"linear",x:0,y:0,x2:t==="v"?0:1,y2:t==="v"?1:0,colorStops:[{offset:0,color:e},{offset:1,color:n}]}}function Un(t,e,n="canvas",r){return(async()=>{try{let c;if(typeof window<"u"&&window.echarts)c=window.echarts;else{const a=await import("echarts");c=a.default||a}const u=typeof t=="string"?document.getElementById(t):t;if(!u)return console.error("ECharts DOM容器未找到"),null;const s=c.init(u,r,{renderer:n});return e&&s.setOption(e),s}catch(c){return console.error("加载 ECharts 失败:",c),null}})()}function ot(t){t&&typeof t.dispose=="function"&&t.dispose()}function Bn(t,e){t&&typeof t.setOption=="function"&&t.setOption(e)}function H(t){t&&typeof t.resize=="function"&&t.resize()}function qn(t,e=200){if(!t)return;let n;const r=()=>{clearTimeout(n),n=setTimeout(()=>{H(t)},e)};return window.addEventListener("resize",r),()=>{window.removeEventListener("resize",r),clearTimeout(n)}}function Yn(t,e){const r=e||["#5470c6","#91cc75","#fac858","#ee6666","#73c0de","#3ba272","#fc8452","#9a60b4","#ea7ccc","#67c23a"],o=[];for(let c=0;c<t;c++)o.push(r[c%r.length]);return o}function Jn(t,e){return typeof e=="function"?e(t):typeof e=="string"?e.replace("{value}",String(t)):String(t)}function Vn(t,e){return{...t,...e,series:e.series||t.series,xAxis:e.xAxis||t.xAxis,yAxis:e.yAxis||t.yAxis,legend:e.legend||t.legend,tooltip:e.tooltip||t.tooltip,title:e.title||t.title}}function Kn(t,e,n){t&&typeof t.on=="function"&&t.on(e,n)}function Qn(t,e,n){t&&typeof t.off=="function"&&t.off(e,n)}function Gn(t,e={}){if(!t||typeof t.getDataURL!="function")return null;const{type:n="png",pixel_ratio:r=2,background_color:o="#fff",exclude_components:c=[],file_name:u="echarts-image"}=e,s=t.getDataURL({type:n,pixelRatio:r,backgroundColor:o,excludeComponents:c}),a=document.createElement("a");return a.download=`${u}.${n}`,a.href=s,a.click(),s}function Xn(){return typeof window<"u"&&typeof window.echarts<"u"}function Zn(t){t.forEach(e=>{H(e)})}function xn(t){t.forEach(e=>{ot(e)})}function tr(t,e,n="asc"){return[...t].sort((r,o)=>{const c=r[e],u=o[e];return c<u?n==="asc"?-1:1:c>u?n==="asc"?1:-1:0})}function it(t,e){return t.reduce((n,r)=>{const o=r[e];return n[o]||(n[o]=[]),n[o].push(r),n},{})}function er(t,e,n,r=o=>o.reduce((c,u)=>c+u,0)){const o=it(t,e);return Object.entries(o).map(([c,u])=>{const s=u.map(a=>a[n]).filter(a=>typeof a=="number");return{[e]:c,[n]:r(s)}})}const b=new Map;let I=null;U&&(document.addEventListener("mousedown",t=>{I=t}),document.addEventListener("mouseup",t=>{for(const e of b.values())for(const{document_handler:n}of e)I&&n(t,I);I=null}));function ct(t,e){const n=[];return Array.isArray(e.arg)?n.push(...e.arg.filter(D)):D(e.arg)&&n.push(e.arg),function(r,o){const c=r.target,u=o.target;if(!c||!u||!e.instance)return;const s=t.contains(c)||t.contains(u),a=t===c,f=n.some(d=>d&&(d.contains(c)||d===u));let _=!1;try{const d=e.instance.popperRef;d&&(_=d.contains(c)||d.contains(u))}catch{}s||a||f||_||typeof e.value=="function"&&e.value(r,o)}}const ut={beforeMount(t,e){b.has(t)||b.set(t,[]),b.get(t)?.push({document_handler:ct(t,e),binding_fn:e.value})},updated(t,e){b.has(t)||b.set(t,[]);const n=b.get(t);if(!n)return;const r=n.findIndex(c=>c.binding_fn===e.oldValue),o={document_handler:ct(t,e),binding_fn:e.value};r>=0?n.splice(r,1,o):n.push(o)},unmounted(t){b.delete(t)}};function nr(t){t.directive("click-outside",ut)}i.ClickOutside=ut,i.add_chart_listener=Kn,i.add_class=je,i.add_date=$n,i.add_tree_node=Xt,i.add_tree_node_path=Jt,i.aggregate_chart_data=er,i.auto_size=jn,i.batch_execution=Hn,i.build_tree=Wt,i.calculate_percentage=de,i.ceil=le,i.clamp=ie,i.clear_expired_storage=ve,i.clear_storage=ye,i.clone_tree=ee,i.compose=Ln,i.compress_image=ln,i.create_element=Ge,i.create_file_from_blob=an,i.curry=Dn,i.darken=bn,i.debounce=An,i.decrypt_storage=Ee,i.deep_assign=G,i.deep_clone=S,i.deep_equal=z,i.delay_execution=Tn,i.destroy_chart=ot,i.destroy_charts=xn,i.diff_objects=Ce,i.download_file=T,i.download_files=rn,i.download_text_file=fn,i.encrypt_storage=$e,i.export_chart_image=Gn,i.filter_tree=qt,i.find_tree_node=B,i.find_tree_node_by_key=F,i.flatten_object=X,i.flatten_tree_to_array=Gt,i.floor=_e,i.format_chart_label=Jn,i.format_currency=oe,i.format_date=vn,i.format_timestamp_diff=zn,i.generate_chart_colors=Yn,i.generate_unique_file_name=dn,i.get_all_storage_keys=Q,i.get_attribute=Je,i.get_batch_storage=Oe,i.get_chart_gradient_color=Wn,i.get_contrast_color=pn,i.get_date_diff=Nn,i.get_date_time_range=Mn,i.get_decimal_part=ae,i.get_document_size=nn,i.get_element=He,i.get_element_position=et,i.get_element_rect=$,i.get_element_size=Xe,i.get_elements=Pe,i.get_file_extension=A,i.get_file_info=_n,i.get_file_name_without_extension=C,i.get_integer_part=se,i.get_object_value=Le,i.get_parent_by_class=Z,i.get_relative_time=Sn,i.get_rgb=mn,i.get_storage=V,i.get_storage_with_expiry=we,i.get_style=qe,i.get_token=he,i.get_tree_depth=Qt,i.get_tree_node_ancestors=Kt,i.get_tree_node_descendants=Vt,i.get_window_size=en,i.group_chart_data=it,i.guid=_t,i.has_class=Be,i.has_storage=pe,i.hex_to_rgb=p,i.init_chart=Un,i.is_array=l,i.is_boolean=Et,i.is_client=U,i.is_completely_in_viewport=tn,i.is_dark=wn,i.is_date=W,i.is_echarts_loaded=Xn,i.is_element=D,i.is_email=Tt,i.is_empty=zt,i.is_empty_object=ze,i.is_even=ue,i.is_falsy=It,i.is_function=w,i.is_hex_color=Rt,i.is_html_element=Dt,i.is_in_viewport=xe,i.is_ip=Ht,i.is_light=R,i.is_mobile=Ft,i.is_null=Mt,i.is_number=g,i.is_object=h,i.is_plain_object=Nt,i.is_port=Pt,i.is_promise=St,i.is_reg_exp=kt,i.is_string=L,i.is_string_number=Lt,i.is_symbol=Ot,i.is_truthy=At,i.is_undefined=vt,i.is_url=Ct,i.is_valid_date=$t,i.is_weekday=kn,i.is_weekend=On,i.lighten=yn,i.make_chart_responsive=qn,i.memoize=Rn,i.merge_chart_options=Vn,i.merge_objects=Te,i.mix=hn,i.off=Qe,i.omit=Ie,i.on=Ke,i.once=Cn,i.pick=Ae,i.pipe=Fn,i.random_boolean=dt,i.random_color=mt,i.random_element=v,i.random_elements=ht,i.random_email=bt,i.random_float=lt,i.random_id=st,i.random_int=at,i.random_int_range=ft,i.random_len_string=N,i.random_number_string=j,i.random_password=gt,i.random_phone=yt,i.random_string=P,i.random_url=wt,i.read_file=cn,i.remove_attribute=Ve,i.remove_batch_storage=Se,i.remove_chart_listener=Qn,i.remove_class=We,i.remove_storage=K,i.remove_token=ge,i.remove_tree_node=Zt,i.resize_chart=H,i.resize_charts=Zn,i.retry=rt,i.rgb_to_hex=E,i.rgba_to_hex=gn,i.round=fe,i.scroll_footer=Re,i.scroll_to_element=Ze,i.search_tree=re,i.set_attribute=tt,i.set_batch_storage=ke,i.set_object_value=Fe,i.set_storage=J,i.set_storage_with_expiry=be,i.set_style=Ye,i.set_styles=x,i.set_token=me,i.setupDirectives=nr,i.shuffle_array=pt,i.sort_chart_data=tr,i.sort_tree=te,i.subtract_date=En,i.thousand_separator=q,i.throttle=In,i.timeout=Pn,i.to_base64=on,i.to_fixed=Y,i.to_number=k,i.to_percentage=ce,i.toggle_class=Ue,i.transform_tree=Yt,i.traverse_tree_breadth_first=Bt,i.traverse_tree_depth_first=Ut,i.tree_flat=jt,i.unflatten_object=De,i.update_chart=Bn,i.update_tree_node=xt,i.validate_file_size=un,i.validate_file_type=sn,i.validate_tree=ne,Object.defineProperty(i,Symbol.toStringTag,{value:"Module"})}));
1
+ (function(i,M){typeof exports=="object"&&typeof module<"u"?M(exports):typeof define=="function"&&define.amd?define(["exports"],M):(i=typeof globalThis<"u"?globalThis:i||self,M(i.QyBetterLibCore={}))})(this,(function(i){"use strict";function M(){return Math.floor(Math.random()*1e4)}function it(t){return t<0?0:Math.floor(Math.random()*Math.floor(t))}function ct(t,e){return t>e&&([t,e]=[e,t]),Math.floor(Math.random()*(e-t+1))+t}function ut(t,e,n=2){t>e&&([t,e]=[e,t]);const r=Math.random()*(e-t)+t;return parseFloat(r.toFixed(n))}function st(){const t=R;return`${t()}${t()}-${t()}-${t()}-${t()}-${t()}${t()}${t()}`}function R(){return Math.floor((1+Math.random())*65536).toString(16).substring(1)}function N(t,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"){let n="";const r=e.length;for(let o=0;o<t;o++)n+=e.charAt(Math.floor(Math.random()*r));return n}function ft(){return Math.random()>.5}function w(t){if(!(!t||t.length===0))return t[Math.floor(Math.random()*t.length)]}function at(t,e){return!t||t.length===0||e<=0?[]:e>=t.length?[...t]:[...t].sort(()=>.5-Math.random()).slice(0,e)}function lt(){const t="0123456789ABCDEF";let e="#";for(let n=0;n<6;n++)e+=t[Math.floor(Math.random()*16)];return e}function C(t){return N(t,"0123456789")}function _t(t=8){return N(t,"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()_+~`|}{[]:;?><,./-=")}function dt(){const e=w(["130","131","132","133","134","135","136","137","138","139","150","151","152","153","155","156","157","158","159","170","171","172","173","175","176","177","178","180","181","182","183","184","185","186","187","188","189"]),n=C(8);return`${e}${n}`}function ht(){const t=["gmail.com","yahoo.com","hotmail.com","outlook.com","163.com","126.com","qq.com","sina.com"],e=N(8),n=w(t);return`${e}@${n}`}function mt(){const t=["http","https"],e=["example.com","test.com","demo.com","sample.com"],n=["api","docs","about","contact","products"],r=w(t),o=w(e),c=w(n),u=N(4);return`${r}://www.${o}/${c}?id=${u}`}function gt(t){if(!t)return[];const e=[...t];for(let n=e.length-1;n>0;n--){const r=Math.floor(Math.random()*(n+1));[e[n],e[r]]=[e[r],e[n]]}return e}function yt(t){return t===void 0}function pt(t){return t===null}function l(t){return Array.isArray(t)}function h(t){return typeof t=="object"&&t!==null&&Object.prototype.toString.call(t)==="[object Object]"}function bt(t){if(typeof t!="object"||t===null)return!1;let e=t;for(;Object.getPrototypeOf(e)!==null;)e=Object.getPrototypeOf(e);return Object.getPrototypeOf(t)===e}function H(t){return Object.prototype.toString.call(t)==="[object Date]"}function wt(t){return H(t)&&!isNaN(t.getTime())}function vt(t){return typeof t=="boolean"}function p(t){return typeof t=="function"}function Mt(t){return Object.prototype.toString.call(t)==="[object RegExp]"}function Nt(t){return typeof t=="symbol"}function Ot(t){return typeof t=="object"&&t!==null&&typeof t.then=="function"&&typeof t.catch=="function"}function $t(t){return!t&&t!==0||l(t)&&t.length===0||h(t)&&!Object.keys(t).length}function Et(t){return!!t}function St(t){return!t}function L(t){return typeof Element>"u"?!1:t instanceof Element}function kt(t){return typeof HTMLElement>"u"?!1:t instanceof HTMLElement}const W=typeof window<"u";function m(t){return typeof t=="number"&&!isNaN(t)}function z(t){return typeof t=="string"}function It(t){return z(t)?!Number.isNaN(Number(t)):!1}function At(t){return/^1[3-9]\d{9}$/.test(t)}function Ft(t){return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t)}function Lt(t){try{return new URL(t),!0}catch{return!1}}function zt(t){return/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/.test(t)}function Tt(t){return/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test(t)}function jt(t){return/^(6553[0-5]|655[0-2]\d|65[0-4]\d{2}|6[0-4]\d{3}|[1-5]\d{4}|[1-9]\d{0,3}|0)$/.test(t)}function Dt(t,e="key",n="children"){const r={};if(!l(t))return r;const o=[{nodes:t}];for(;o.length>0;){const{nodes:c,parent_key:u}=o.pop();for(const s of c){const f=s[e];if(f&&!r[f]){r[f]=s,u&&r[u]&&(r[f].parent=r[u]);const a=s[n];a&&l(a)&&a.length>0&&o.push({nodes:a,parent_key:f})}}}return r}function Pt(t,e="key",n="parentId",r="children"){if(!l(t))return[];const o={},c=[];for(const u of t)o[u[e]]={...u},o[u[e]][r]||(o[u[e]][r]=[]);for(const u of t){const s=u[n];!s||!o[s]?c.push(o[u[e]]):o[s][r].push(o[u[e]])}return c}function Rt(t,e,n="children"){if(!e||!p(e))return!1;let r=!1;const o=l(t)?t:[t],c=[];for(const u of o)c.push({node:u,depth:0});for(;c.length>0;){const{node:u,depth:s}=c.pop();if(e(u,s)===!1){r=!0;break}const a=u[n];if(a&&l(a)&&a.length>0)for(let _=a.length-1;_>=0;_--)c.push({node:a[_],depth:s+1})}return r}function Ct(t,e,n="children"){if(!e||!p(e))return!1;const r=[];if(l(t))for(const o of t)r.push({node:o,depth:0});else r.push({node:t,depth:0});for(;r.length>0;){const{node:o,depth:c}=r.shift();if(e(o,c)===!1)return!0;const s=o[n];if(s&&l(s))for(const f of s)r.push({node:f,depth:c+1})}return!1}function B(t,e,n="children"){if(!e||!p(e))return null;let r=null;const o=c=>{if(e(c))return r=c,!0;const u=c[n];if(u&&l(u)){for(const s of u)if(o(s))return!0}return!1};if(l(t)){for(const c of t)if(o(c))break}else o(t);return r}function T(t,e,n="key",r="children"){return B(t,o=>o[n]===e,r)}function Ht(t,e,n="children"){if(!e||!p(e))return[];const r=o=>{const c=o[n],u=[];if(c&&l(c))for(const s of c){const f=r(s);f&&u.push(f)}return e(o)||u.length>0?{...o,[n]:u}:null};if(l(t)){const o=[];for(const c of t){const u=r(c);u&&o.push(u)}return o}else{const o=r(t);return o?[o]:[]}}function Wt(t,e,n="children"){if(!e||!p(e))return[];const r=o=>{const c=e(o),u=o[n];return u&&l(u)&&(c[n]=u.map(s=>r(s))),c};return l(t)?t.map(o=>r(o)):[r(t)]}function Bt(t,e="key",n="path",r="children"){const o=(c,u="")=>{const s=c[e],f=u?`${u}.${s}`:String(s),a={...c,[n]:f},_=c[r];return _&&l(_)&&(a[r]=_.map(d=>o(d,f))),a};return l(t)?t.map(c=>o(c)):[o(t)]}function Ut(t,e="children"){const n=[],r=o=>{const c=o[e];if(c&&l(c))for(const u of c)n.push(u),r(u)};return r(t),n}function qt(t,e="parent"){const n=[];let r=t[e];for(;r;)n.unshift(r),r=r[e];return n}function Jt(t,e="children"){const n=r=>{const o=r[e];if(!o||!l(o)||o.length===0)return 1;const c=o.map(u=>n(u));return Math.max(...c)+1};if(l(t)){if(t.length===0)return 0;const r=t.map(o=>n(o));return Math.max(...r)}else return n(t)}function Vt(t,e="children"){const n=[],r=o=>{n.push(o);const c=o[e];if(c&&l(c))for(const u of c)r(u)};if(l(t))for(const o of t)r(o);else r(t);return n}function Kt(t,e,n,r="key",o="children"){const c=l(t)?t:[t],u=T(c,e,r,o);return u?(u[o]||(u[o]=[]),u[o].push(n)):c.push(n),c}function Yt(t,e,n="key",r="children"){const o=l(t)?t:[t];let c=null,u=null;const s=(f,a=null)=>{for(let _=0;_<f.length;_++){const d=f[_];if(d[n]===e)return c=d,u=a?a[r]:f,!0;const v=d[r];if(v&&l(v)&&s(v,d))return!0}return!1};if(s(o),c&&u){const f=u.findIndex(a=>a[n]===e);f>-1&&u.splice(f,1)}return o}function Gt(t,e,n,r="key",o="children"){const c=l(t)?t:[t],u=T(c,e,r,o);return u&&Object.assign(u,n),c}function Qt(t,e,n=!0,r="children"){const o=l(t)?t:[t],c=typeof e=="string"?(s,f)=>{const a=s[e],_=f[e];return a<_?-1:a>_?1:0}:e,u=s=>{if(s.sort(c),n)for(const f of s){const a=f[r];a&&l(a)&&a.length>0&&u(a)}};return u(o),o}function Xt(t,e="children"){const n=r=>{const o={...r},c=r[e];return c&&l(c)&&(o[e]=c.map(u=>n(u))),o};return l(t)?t.map(r=>n(r)):[n(t)]}function Zt(t,e="key",n="children"){const r=[],o=new Set,c=new Set,u=(s,f="")=>{if(!h(s)){r.push(`Invalid node at ${f}: node must be an object`);return}if(o.has(s)){r.push(`Circular reference detected at ${f}`);return}o.add(s),e in s&&s[e]!==void 0&&(c.has(s[e])?r.push(`Duplicate key "${s[e]}" found at ${f}`):c.add(s[e]));const a=s[n];a!==void 0&&(l(a)?a.forEach((_,d)=>{u(_,`${f}[${d}]`)}):r.push(`Invalid children at ${f}: children must be an array`)),o.delete(s)};return l(t)?t.forEach((s,f)=>{u(s,`[${f}]`)}):u(t,"root"),{valid:r.length===0,errors:r}}function xt(t,e,n="children"){const r=[],o=p(e)?e:u=>{if(!e||typeof e!="object")return!1;for(const[s,f]of Object.entries(e))if(u[s]!==f)return!1;return!0},c=u=>{typeof o=="function"&&o(u)&&r.push(u);const s=u[n];if(s&&l(s))for(const f of s)c(f)};if(l(t))for(const u of t)c(u);else c(t);return r}function U(t){if(!t&&t!==0)return"0";const e=E(t);return isNaN(e)?`${t}`:`${e}`.replace(/(\d{1,3})(?=(\d{3})+(?:$|\.))/g,"$1,")}function E(t){if(m(t))return t;if(z(t)){const e=parseFloat(t);return isNaN(e)?Number.NaN:e}return Number.NaN}function q(t,e){const n=E(t);return isNaN(n)?Number.NaN:Number(n.toFixed(e))}function te(t,e="¥",n=2){if(!m(t))return e+"0.00";let r;n===0?r=Math.floor(t).toString():r=t.toFixed(n);const o=U(r);return e+o}function ee(t,e,n){return m(t)?Math.max(e,Math.min(n,t)):Number.NaN}function ne(t,e=2){const n=E(t);return isNaN(n)?"0%":(n*100).toFixed(e)+"%"}function re(t){return m(t)?t%2===0:!1}function oe(t){return m(t)?Math.trunc(t):Number.NaN}function ie(t){return m(t)?t-Math.trunc(t):Number.NaN}function ce(t,e=0){if(!m(t))return Number.NaN;const n=Math.pow(10,e);return Math.round(t*n)/n}function ue(t,e=0){if(!m(t))return Number.NaN;const n=Math.pow(10,e);return Math.ceil(t*n)/n}function se(t,e=0){if(!m(t))return Number.NaN;const n=Math.pow(10,e);return Math.floor(t*n)/n}function fe(t,e,n=2){if(!m(t)||!m(e)||e===0)return Number.NaN;const r=t/e*100;return q(r,n)}function g(t="local"){return t==="local"?localStorage:sessionStorage}function S(t,e=null){try{return JSON.parse(t)}catch(n){return console.error("JSON解析错误:",n),e}}function ae(){const t=localStorage.getItem("token");if(!t)return null;const e=S(t);return e!==null?e.expiry!=null&&e.expiry<Date.now()?(localStorage.removeItem("token"),null):e.value:null}function le(t,e=10080*60){const n=Date.now()+e*1e3,r={value:t,expiry:n};localStorage.setItem("token",JSON.stringify(r))}function _e(){localStorage.removeItem("token")}function J(t,e,n="local"){const r=g(n);e!==void 0&&r.setItem(t,JSON.stringify(e))}function V(t,e="local"){const r=g(e).getItem(t);return r?S(r):null}function K(t,e="local"){g(e).removeItem(t)}function de(t="local"){g(t).clear()}function he(t,e,n,r="local"){const o=g(r),c={value:e,expiry:Date.now()+n*1e3};o.setItem(t,JSON.stringify(c))}function me(t,e="local"){const n=g(e),r=n.getItem(t);if(!r)return null;const o=S(r);return o.expiry&&o.expiry<Date.now()?(n.removeItem(t),null):o.value}function ge(t,e="local"){return g(e).getItem(t)!==null}function Y(t="local"){const e=g(t),n=[];for(let r=0;r<e.length;r++){const o=e.key(r);o&&n.push(o)}return n}function ye(t="local"){const e=g(t),n=Y(t);let r=0;return n.forEach(o=>{const c=e.getItem(o);if(c){const u=S(c);u.expiry&&u.expiry<Date.now()&&(e.removeItem(o),r++)}}),r}function pe(t){try{return btoa(unescape(encodeURIComponent(t)))}catch(e){return console.error("加密错误:",e),t}}function be(t){try{return decodeURIComponent(escape(atob(t)))}catch(e){return console.error("解密错误:",e),t}}function we(t,e,n="local"){const r=g(n),o=JSON.stringify(e),c=pe(o);r.setItem(t,c)}function ve(t,e="local"){const r=g(e).getItem(t);if(!r)return null;try{const o=be(r);return JSON.parse(o)}catch(o){return console.error("解密解析错误:",o),null}}function Me(t,e="local"){t.forEach(n=>{J(n.key,n.value,e)})}function Ne(t,e="local"){const n={};return t.forEach(r=>{n[r]=V(r,e)}),n}function Oe(t,e="local"){t.forEach(n=>{K(n,e)})}function k(t){const e=Object.prototype.toString;if(!t||typeof t!="object")return t;if(t.nodeType&&"cloneNode"in t)return t.cloneNode(!0);if(e.call(t)==="[object Date]")return new Date(t.getTime());if(e.call(t)==="[object RegExp]"){const r=[];return t.global&&r.push("g"),t.multiline&&r.push("m"),t.ignoreCase&&r.push("i"),new RegExp(t.source,r.join(""))}if(e.call(t)==="[object FormData]"){const r=new FormData;for(const[o,c]of t.entries())r.append(o,c);return r}if(e.call(t)==="[object Map]"){const r=new Map;for(const[o,c]of t.entries())r.set(o,k(c));return r}if(e.call(t)==="[object Set]"){const r=new Set;for(const o of t.values())r.add(k(o));return r}const n=Array.isArray(t)?[]:t.constructor?new t.constructor:{};for(const r in t)Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=k(t[r]));return n}function G(...t){let e=t.length,n=t[0];h(n)||(n={});for(let r=1;r<e;r++){let o=t[r];if(h(o))for(let c in o)c==="__proto__"||n===o[c]||(h(o[c])?(h(n[c])||(n[c]=Array.isArray(o[c])?[]:{}),n[c]=G(n[c],o[c])):n[c]=o[c])}return n}function I(t,e){if(t===e)return!0;if(t&&e&&typeof t=="object"&&typeof e=="object"){if(t.constructor!==e.constructor)return!1;let n,r,o;if(Array.isArray(t)){if(n=t.length,n!=e.length)return!1;for(r=n;r--!==0;)if(!I(t[r],e[r]))return!1;return!0}if(t.constructor===RegExp)return t.source===e.source&&t.flags===e.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===e.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===e.toString();if(o=Object.keys(t),n=o.length,n!==Object.keys(e).length)return!1;for(r=n;r--!==0;)if(!Object.prototype.hasOwnProperty.call(e,o[r]))return!1;for(r=n;r--!==0;){const c=o[r];if(!I(t[c],e[c]))return!1}return!0}return t!==t&&e!==e}function $e(t){return h(t)&&Object.keys(t).length===0}function Ee(t,e){if(!h(t))return{};const n={};return e.forEach(r=>{r in t&&(n[r]=t[r])}),n}function Se(t,e){if(!h(t))return{};const n={};return Object.keys(t).forEach(r=>{e.includes(r)||(n[r]=t[r])}),n}function Q(t,e=""){if(!h(t))return{};const n={};return Object.keys(t).forEach(r=>{const o=e?`${e}.${r}`:r;h(t[r])&&!Array.isArray(t[r])?Object.assign(n,Q(t[r],o)):n[o]=t[r]}),n}function ke(t){if(!h(t))return{};const e={};return Object.keys(t).forEach(n=>{const r=n.split(".");let o=e;r.forEach((c,u)=>{u===r.length-1?o[c]=t[n]:(o[c]||(o[c]={}),o=o[c])})}),e}function Ie(t,e,n=void 0){if(!h(t))return n;const r=e.split(".");let o=t;for(const c of r){if(o==null)return n;o=o[c]}return o!==void 0?o:n}function Ae(t,e,n){h(t)||(t={});const r=e.split(".");let o=t;return r.forEach((c,u)=>{u===r.length-1?o[c]=n:(h(o[c])||(o[c]={}),o=o[c])}),t}function Fe(...t){return Object.assign({},...t)}function Le(t,e){const n={};return!h(t)&&!h(e)?n:h(t)?h(e)?(new Set([...Object.keys(t),...Object.keys(e)]).forEach(o=>{I(t[o],e[o])||(n[o]={oldValue:t[o],newValue:e[o]})}),n):t:e}function X(t,e){return!t||t.tagName==="BODY"?null:t.classList.contains(e)?t:X(t.parentElement,e)}function ze(t,e=!0){const n=document.getElementById(t);n&&n.scrollTo({top:n.scrollHeight,behavior:e?"smooth":void 0})}function Te(t,e=document){return e.querySelector(t)}function je(t,e=document){return Array.from(e.querySelectorAll(t))}function De(t,e){t&&!t.classList.contains(e)&&t.classList.add(e)}function Pe(t,e){t&&t.classList.contains(e)&&t.classList.remove(e)}function Re(t,e){return t?t.classList.toggle(e):!1}function Ce(t,e){return t?t.classList.contains(e):!1}function He(t,e){return t?window.getComputedStyle(t).getPropertyValue(e):""}function We(t,e,n){t&&"style"in t&&(t.style[e]=n)}function Z(t,e){t&&"style"in t&&Object.entries(e).forEach(([n,r])=>{t.style[n]=r})}function Be(t,e){return t&&t.getAttribute(e)||""}function x(t,e,n){t&&t.setAttribute(e,n)}function Ue(t,e){t&&t.removeAttribute(e)}function qe(t,e,n,r){t&&t.addEventListener(e,n,r)}function Je(t,e,n,r){t&&t.removeEventListener(e,n,r)}function Ve(t,e){const n=document.createElement(t);return e&&(e.class_name&&(n.className=e.class_name),e.style&&Z(n,e.style),e.attributes&&Object.entries(e.attributes).forEach(([r,o])=>{x(n,r,o)}),e.text&&(n.textContent=e.text)),n}function O(t){return t?t.getBoundingClientRect():null}function tt(t){if(!t)return null;const e=O(t);return e?{top:e.top+window.pageYOffset,left:e.left+window.pageXOffset}:null}function Ke(t){if(!t)return null;const e=O(t);return e?{width:e.width,height:e.height}:null}function Ye(t,e){if(!t)return;const{behavior:n="smooth",offsetTop:r=0,offsetLeft:o=0}=e||{},c=tt(t);c&&window.scrollTo({top:c.top-r,left:c.left-o,behavior:n})}function Ge(t){if(!t)return!1;const e=O(t);return e?e.top>=0&&e.left>=0&&e.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&e.right<=(window.innerWidth||document.documentElement.clientWidth):!1}function Qe(t){if(!t)return!1;const e=O(t);return e?e.top>0&&e.left>0&&e.bottom<(window.innerHeight||document.documentElement.clientHeight)&&e.right<(window.innerWidth||document.documentElement.clientWidth):!1}function Xe(){return{width:window.innerWidth||document.documentElement.clientWidth,height:window.innerHeight||document.documentElement.clientHeight}}function Ze(){return{width:Math.max(document.body.scrollWidth,document.documentElement.scrollWidth,document.body.offsetWidth,document.documentElement.offsetWidth,document.documentElement.clientWidth),height:Math.max(document.body.scrollHeight,document.documentElement.scrollHeight,document.body.offsetHeight,document.documentElement.offsetHeight,document.documentElement.clientHeight)}}function j({path:t,name:e}){const n=document.createElement("a");n.href=t,n.target="_blank",e&&n.setAttribute("download",e),document.body.appendChild(n),n.click(),document.body.removeChild(n)}function xe(t){t.forEach(e=>{j({path:e.url,name:e.name})})}async function tn(t){if(!t)return;const e=new FileReader;return e.readAsDataURL(t),new Promise((n,r)=>{e.onload=o=>n(o.target?.result),e.onerror=o=>r(void 0)})}async function en(t,e="UTF-8"){if(!t)return;const n=new FileReader;return n.readAsText(t,e),new Promise((r,o)=>{n.onload=c=>r(c.target?.result),n.onerror=()=>o(void 0)})}function A(t){if(!t)return"";const e=t.lastIndexOf(".");return e===-1?"":t.substring(e+1).toLowerCase()}function D(t){if(!t)return"";const e=t.lastIndexOf(".");return e===-1?t:t.substring(0,e)}function nn(t,e){return t.size<=e}function rn(t,e){const n=A(t.name);return e.includes(n)}function on(t,e,n){return new File([t],e,{type:n})}function cn(t,e,n="text/plain"){const r=new Blob([t],{type:n}),o=URL.createObjectURL(r);j({path:o,name:e}),URL.revokeObjectURL(o)}async function un(t,e=800,n=800,r=.8){if(t.type.startsWith("image/"))return new Promise(o=>{const c=document.createElement("canvas"),u=c.getContext("2d"),s=new Image;s.onload=()=>{let{width:f,height:a}=s;if(f>e||a>n){const _=Math.min(e/f,n/a);f*=_,a*=_}c.width=f,c.height=a,u?.drawImage(s,0,0,f,a),c.toBlob(_=>{if(_){const d=new File([_],t.name,{type:t.type});o(d)}else o(void 0)},t.type,r)},s.src=URL.createObjectURL(t)})}function sn(t){const e=A(t.name),n=D(t.name);let r="";return t.size<1024?r=`${t.size} B`:t.size<1024*1024?r=`${(t.size/1024).toFixed(2)} KB`:t.size<1024*1024*1024?r=`${(t.size/(1024*1024)).toFixed(2)} MB`:r=`${(t.size/(1024*1024*1024)).toFixed(2)} GB`,{name:t.name,size:t.size,size_text:r,type:t.type,extension:e,name_without_extension:n}}function fn(t){const e=A(t),n=D(t),r=Date.now(),o=Math.random().toString(36).substring(2,8);return e?`${n}_${r}_${o}.${e}`:`${n}_${r}_${o}`}function et(t){return/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.test(t)}function an(t,e,n){if(!et(t)||!et(e))return t;n=Math.max(Math.min(Number(n),1),0);const r=b(t),o=b(e);if(!r||!o)return t;const c=Math.round(r.r*(1-n)+o.r*n),u=Math.round(r.g*(1-n)+o.g*n),s=Math.round(r.b*(1-n)+o.b*n);return $(c,u,s)}function ln(t){const e=b(t);return e?`${e.r},${e.g},${e.b}`:"0,0,0"}function b(t){const e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return e?{r:parseInt(e[1],16),g:parseInt(e[2],16),b:parseInt(e[3],16)}:null}function $(t,e,n){return t=Math.max(0,Math.min(255,Math.round(t))),e=Math.max(0,Math.min(255,Math.round(e))),n=Math.max(0,Math.min(255,Math.round(n))),`#${((1<<24)+(t<<16)+(e<<8)+n).toString(16).slice(1)}`}function _n(t,e,n,r){return $(t,e,n)}function dn(t,e){const n=b(t);if(!n)return t;e=Math.max(0,Math.min(1,e));const r=Math.min(255,Math.round(n.r+(255-n.r)*e)),o=Math.min(255,Math.round(n.g+(255-n.g)*e)),c=Math.min(255,Math.round(n.b+(255-n.b)*e));return $(r,o,c)}function hn(t,e){const n=b(t);if(!n)return t;e=Math.max(0,Math.min(1,e));const r=Math.max(0,Math.round(n.r*(1-e))),o=Math.max(0,Math.round(n.g*(1-e))),c=Math.max(0,Math.round(n.b*(1-e)));return $(r,o,c)}function P(t){const e=b(t);return e?(e.r*299+e.g*587+e.b*114)/1e3>128:!1}function mn(t){return!P(t)}function gn(t){return P(t)?"#000000":"#FFFFFF"}function yn(t,e=200,n=!1){let r;return function(...o){const c=this;if(r&&clearTimeout(r),n){const u=!r;if(r=setTimeout(()=>{r=void 0},e),u)return t.apply(c,o)}else r=setTimeout(()=>{t.apply(c,o)},e)}}function pn(t,e=200,n={}){const{leading:r=!0,trailing:o=!0}=n;let c=0,u,s,f;return function(...a){const _=this,d=Date.now();if(c===0){r&&t.apply(_,a),c=d;return}s=a,f=_;const v=d-c;if(v>=e){u&&(clearTimeout(u),u=void 0),t.apply(_,a),c=d;return}!u&&o&&(u=setTimeout(()=>{s&&(t.apply(f,s),c=Date.now()),u=void 0,s=void 0,f=void 0},e-v))}}function bn(t){const e=t.length;function n(...r){return r.length>=e?t.apply(this,r):function(...o){return n.apply(this,[...r,...o])}}return n}function wn(...t){return function(e){return t.reduceRight((n,r)=>r(n),e)}}function vn(...t){return function(e){return t.reduce((n,r)=>r(n),e)}}function Mn(t,e=1e3){return new Promise(n=>{setTimeout(()=>{n(t())},e)})}async function nt(t,e=3,n=1e3){try{return await t()}catch(r){if(e<=0)throw r;return await new Promise(o=>setTimeout(o,n)),nt(t,e-1,n)}}function Nn(t){let e=!1,n;return function(...r){return e||(e=!0,n=t.apply(this,r)),n}}function On(t){const e=new Map;return function(...n){const r=JSON.stringify(n);if(e.has(r))return e.get(r);const o=t.apply(this,n);return e.set(r,o),o}}async function $n(t,e=!0){if(e)return Promise.all(t.map(n=>n()));{const n=[];for(const r of t)n.push(await r());return n}}function En(t,e=5e3,n="Operation timed out"){return Promise.race([Promise.resolve(t()),new Promise((r,o)=>{setTimeout(()=>{o(new Error(n))},e)})])}const y=new Map;let F=null;W&&(document.addEventListener("mousedown",t=>{F=t}),document.addEventListener("mouseup",t=>{for(const e of y.values())for(const{document_handler:n}of e)F&&n(t,F);F=null}));function rt(t,e){const n=[];return Array.isArray(e.arg)?n.push(...e.arg.filter(L)):L(e.arg)&&n.push(e.arg),function(r,o){const c=r.target,u=o.target;if(!c||!u||!e.instance)return;const s=t.contains(c)||t.contains(u),f=t===c,a=n.some(d=>d&&(d.contains(c)||d===u));let _=!1;try{const d=e.instance.popperRef;d&&(_=d.contains(c)||d.contains(u))}catch{}s||f||a||_||typeof e.value=="function"&&e.value(r,o)}}const ot={beforeMount(t,e){y.has(t)||y.set(t,[]),y.get(t)?.push({document_handler:rt(t,e),binding_fn:e.value})},updated(t,e){y.has(t)||y.set(t,[]);const n=y.get(t);if(!n)return;const r=n.findIndex(c=>c.binding_fn===e.oldValue),o={document_handler:rt(t,e),binding_fn:e.value};r>=0?n.splice(r,1,o):n.push(o)},unmounted(t){y.delete(t)}};function Sn(t){t.directive("click-outside",ot)}i.ClickOutside=ot,i.add_class=De,i.add_tree_node=Kt,i.add_tree_node_path=Bt,i.batch_execution=$n,i.build_tree=Pt,i.calculate_percentage=fe,i.ceil=ue,i.clamp=ee,i.clear_expired_storage=ye,i.clear_storage=de,i.clone_tree=Xt,i.compose=wn,i.compress_image=un,i.create_element=Ve,i.create_file_from_blob=on,i.curry=bn,i.darken=hn,i.debounce=yn,i.decrypt_storage=ve,i.deep_assign=G,i.deep_clone=k,i.deep_equal=I,i.delay_execution=Mn,i.diff_objects=Le,i.download_file=j,i.download_files=xe,i.download_text_file=cn,i.encrypt_storage=we,i.filter_tree=Ht,i.find_tree_node=B,i.find_tree_node_by_key=T,i.flatten_object=Q,i.flatten_tree_to_array=Vt,i.floor=se,i.format_currency=te,i.generate_unique_file_name=fn,i.get_all_storage_keys=Y,i.get_attribute=Be,i.get_batch_storage=Ne,i.get_contrast_color=gn,i.get_decimal_part=ie,i.get_document_size=Ze,i.get_element=Te,i.get_element_position=tt,i.get_element_rect=O,i.get_element_size=Ke,i.get_elements=je,i.get_file_extension=A,i.get_file_info=sn,i.get_file_name_without_extension=D,i.get_integer_part=oe,i.get_object_value=Ie,i.get_parent_by_class=X,i.get_rgb=ln,i.get_storage=V,i.get_storage_with_expiry=me,i.get_style=He,i.get_token=ae,i.get_tree_depth=Jt,i.get_tree_node_ancestors=qt,i.get_tree_node_descendants=Ut,i.get_window_size=Xe,i.guid=st,i.has_class=Ce,i.has_storage=ge,i.hex_to_rgb=b,i.is_array=l,i.is_boolean=vt,i.is_client=W,i.is_completely_in_viewport=Qe,i.is_dark=mn,i.is_date=H,i.is_element=L,i.is_email=Ft,i.is_empty=$t,i.is_empty_object=$e,i.is_even=re,i.is_falsy=St,i.is_function=p,i.is_hex_color=zt,i.is_html_element=kt,i.is_in_viewport=Ge,i.is_ip=Tt,i.is_light=P,i.is_mobile=At,i.is_null=pt,i.is_number=m,i.is_object=h,i.is_plain_object=bt,i.is_port=jt,i.is_promise=Ot,i.is_reg_exp=Mt,i.is_string=z,i.is_string_number=It,i.is_symbol=Nt,i.is_truthy=Et,i.is_undefined=yt,i.is_url=Lt,i.is_valid_date=wt,i.lighten=dn,i.memoize=On,i.merge_objects=Fe,i.mix=an,i.off=Je,i.omit=Se,i.on=qe,i.once=Nn,i.pick=Ee,i.pipe=vn,i.random_boolean=ft,i.random_color=lt,i.random_element=w,i.random_elements=at,i.random_email=ht,i.random_float=ut,i.random_id=M,i.random_int=it,i.random_int_range=ct,i.random_len_string=N,i.random_number_string=C,i.random_password=_t,i.random_phone=dt,i.random_string=R,i.random_url=mt,i.read_file=en,i.remove_attribute=Ue,i.remove_batch_storage=Oe,i.remove_class=Pe,i.remove_storage=K,i.remove_token=_e,i.remove_tree_node=Yt,i.retry=nt,i.rgb_to_hex=$,i.rgba_to_hex=_n,i.round=ce,i.scroll_footer=ze,i.scroll_to_element=Ye,i.search_tree=xt,i.set_attribute=x,i.set_batch_storage=Me,i.set_object_value=Ae,i.set_storage=J,i.set_storage_with_expiry=he,i.set_style=We,i.set_styles=Z,i.set_token=le,i.setupDirectives=Sn,i.shuffle_array=gt,i.sort_tree=Qt,i.thousand_separator=U,i.throttle=pn,i.timeout=En,i.to_base64=tn,i.to_fixed=q,i.to_number=E,i.to_percentage=ne,i.toggle_class=Re,i.transform_tree=Wt,i.traverse_tree_breadth_first=Ct,i.traverse_tree_depth_first=Rt,i.tree_flat=Dt,i.unflatten_object=ke,i.update_tree_node=Gt,i.validate_file_size=nn,i.validate_file_type=rn,i.validate_tree=Zt,Object.defineProperty(i,Symbol.toStringTag,{value:"Module"})}));
@@ -1,5 +1,4 @@
1
1
  import { is_client, is_element } from "../utils/is.js";
2
- import "dayjs";
3
2
  const node_list = /* @__PURE__ */ new Map();
4
3
  let start_click = null;
5
4
  if (is_client) {
package/lib/index.js CHANGED
@@ -7,20 +7,14 @@ import { deep_assign, deep_clone, deep_equal, diff_objects, flatten_object, get_
7
7
  import { add_class, create_element, get_attribute, get_document_size, get_element, get_element_position, get_element_rect, get_element_size, get_elements, get_parent_by_class, get_style, get_window_size, has_class, is_completely_in_viewport, is_in_viewport, off, on, remove_attribute, remove_class, scroll_footer, scroll_to_element, set_attribute, set_style, set_styles, toggle_class } from "./utils/dom.js";
8
8
  import { compress_image, create_file_from_blob, download_file, download_files, download_text_file, generate_unique_file_name, get_file_extension, get_file_info, get_file_name_without_extension, read_file, to_base64, validate_file_size, validate_file_type } from "./utils/file.js";
9
9
  import { darken, get_contrast_color, get_rgb, hex_to_rgb, is_dark, is_light, lighten, mix, rgb_to_hex, rgba_to_hex } from "./utils/color.js";
10
- import { add_date, format_date, format_timestamp_diff, get_date_diff, get_date_time_range, get_relative_time, is_weekday, is_weekend, subtract_date } from "./utils/date.js";
11
10
  import { batch_execution, compose, curry, debounce, delay_execution, memoize, once, pipe, retry, throttle, timeout } from "./utils/share.js";
12
- import { add_chart_listener, aggregate_chart_data, auto_size, destroy_chart, destroy_charts, export_chart_image, format_chart_label, generate_chart_colors, get_chart_gradient_color, group_chart_data, init_chart, is_echarts_loaded, make_chart_responsive, merge_chart_options, remove_chart_listener, resize_chart, resize_charts, sort_chart_data, update_chart } from "./utils/echarts.js";
13
11
  import { setupDirectives } from "./directives/index.js";
14
12
  import { default as default2 } from "./directives/click_outside.js";
15
13
  export {
16
14
  default2 as ClickOutside,
17
- add_chart_listener,
18
15
  add_class,
19
- add_date,
20
16
  add_tree_node,
21
17
  add_tree_node_path,
22
- aggregate_chart_data,
23
- auto_size,
24
18
  batch_execution,
25
19
  build_tree,
26
20
  calculate_percentage,
@@ -41,33 +35,23 @@ export {
41
35
  deep_clone,
42
36
  deep_equal,
43
37
  delay_execution,
44
- destroy_chart,
45
- destroy_charts,
46
38
  diff_objects,
47
39
  download_file,
48
40
  download_files,
49
41
  download_text_file,
50
42
  encrypt_storage,
51
- export_chart_image,
52
43
  filter_tree,
53
44
  find_tree_node,
54
45
  find_tree_node_by_key,
55
46
  flatten_object,
56
47
  flatten_tree_to_array,
57
48
  floor,
58
- format_chart_label,
59
49
  format_currency,
60
- format_date,
61
- format_timestamp_diff,
62
- generate_chart_colors,
63
50
  generate_unique_file_name,
64
51
  get_all_storage_keys,
65
52
  get_attribute,
66
53
  get_batch_storage,
67
- get_chart_gradient_color,
68
54
  get_contrast_color,
69
- get_date_diff,
70
- get_date_time_range,
71
55
  get_decimal_part,
72
56
  get_document_size,
73
57
  get_element,
@@ -81,7 +65,6 @@ export {
81
65
  get_integer_part,
82
66
  get_object_value,
83
67
  get_parent_by_class,
84
- get_relative_time,
85
68
  get_rgb,
86
69
  get_storage,
87
70
  get_storage_with_expiry,
@@ -91,19 +74,16 @@ export {
91
74
  get_tree_node_ancestors,
92
75
  get_tree_node_descendants,
93
76
  get_window_size,
94
- group_chart_data,
95
77
  guid,
96
78
  has_class,
97
79
  has_storage,
98
80
  hex_to_rgb,
99
- init_chart,
100
81
  is_array,
101
82
  is_boolean,
102
83
  is_client,
103
84
  is_completely_in_viewport,
104
85
  is_dark,
105
86
  is_date,
106
- is_echarts_loaded,
107
87
  is_element,
108
88
  is_email,
109
89
  is_empty,
@@ -131,12 +111,8 @@ export {
131
111
  is_undefined,
132
112
  is_url,
133
113
  is_valid_date,
134
- is_weekday,
135
- is_weekend,
136
114
  lighten,
137
- make_chart_responsive,
138
115
  memoize,
139
- merge_chart_options,
140
116
  merge_objects,
141
117
  mix,
142
118
  off,
@@ -163,13 +139,10 @@ export {
163
139
  read_file,
164
140
  remove_attribute,
165
141
  remove_batch_storage,
166
- remove_chart_listener,
167
142
  remove_class,
168
143
  remove_storage,
169
144
  remove_token,
170
145
  remove_tree_node,
171
- resize_chart,
172
- resize_charts,
173
146
  retry,
174
147
  rgb_to_hex,
175
148
  rgba_to_hex,
@@ -187,9 +160,7 @@ export {
187
160
  set_token,
188
161
  setupDirectives,
189
162
  shuffle_array,
190
- sort_chart_data,
191
163
  sort_tree,
192
- subtract_date,
193
164
  thousand_separator,
194
165
  throttle,
195
166
  timeout,
@@ -203,7 +174,6 @@ export {
203
174
  traverse_tree_depth_first,
204
175
  tree_flat,
205
176
  unflatten_object,
206
- update_chart,
207
177
  update_tree_node,
208
178
  validate_file_size,
209
179
  validate_file_type,
@@ -7,6 +7,4 @@ export * from './object';
7
7
  export * from './dom';
8
8
  export * from './file';
9
9
  export * from './color';
10
- export * from './date';
11
10
  export * from './share';
12
- export * from './echarts';
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@qy_better_lib/core",
3
3
  "type": "module",
4
4
  "private": false,
5
- "version": "0.2.3",
5
+ "version": "0.2.5",
6
6
  "description": "qy better lib core",
7
7
  "author": "luhuiming",
8
8
  "license": "MIT",
@@ -42,7 +42,15 @@
42
42
  "types": "./lib/*/index.d.ts"
43
43
  },
44
44
  "./directives/*": "./lib/directives/*/*.js",
45
- "./utils/*": "./lib/utils/*.js"
45
+ "./utils/*": "./lib/utils/*.js",
46
+ "./echarts": {
47
+ "import": "./lib/utils/echarts.js",
48
+ "types": "./lib/utils/echarts.d.ts"
49
+ },
50
+ "./date": {
51
+ "import": "./lib/utils/date.js",
52
+ "types": "./lib/utils/date.d.ts"
53
+ }
46
54
  },
47
55
  "peerDependencies": {
48
56
  "dayjs": "^1.11.19"