mazey 5.7.4 → 5.9.0

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/README.md CHANGED
@@ -304,7 +304,8 @@ Load Success: load
304
304
 
305
305
  #### isNumber
306
306
 
307
- Check whether it is a right number.
307
+ Check whether a value is an allowed numeric primitive. Optional constraints can
308
+ require an integer or an inclusive minimum and maximum.
308
309
 
309
310
  Usage:
310
311
 
@@ -316,15 +317,21 @@ const ret3 = isNumber(Infinity);
316
317
  const ret4 = isNumber(Infinity, { isInfinityAsNumber: true });
317
318
  const ret5 = isNumber(NaN);
318
319
  const ret6 = isNumber(NaN, { isNaNAsNumber: true, isInfinityAsNumber: true });
319
- console.log(ret1, ret2, ret3, ret4, ret5, ret6);
320
+ const ret7 = isNumber(12, { integer: true, min: 1, max: 31 });
321
+ const ret8 = isNumber(12.5, { integer: true, min: 1, max: 31 });
322
+ console.log(ret1, ret2, ret3, ret4, ret5, ret6, ret7, ret8);
320
323
  ```
321
324
 
322
325
  Output:
323
326
 
324
327
  ```text
325
- true false false true false true
328
+ true false false true false true true false
326
329
  ```
327
330
 
331
+ `min` and `max` are inclusive and may be used independently. Invalid or
332
+ reversed bounds return `false`. Existing non-finite-number behavior is unchanged
333
+ when `integer`, `min`, and `max` are omitted.
334
+
328
335
  #### isJSONString
329
336
 
330
337
  Check whether it is a valid JSON string.
@@ -1896,7 +1903,10 @@ for PWA functionality that synchronous JavaScript can identify: a secure
1896
1903
  context, Service Worker API support, and, by default, a web app manifest link
1897
1904
  with a non-empty `href`. Pass `{ requireManifest: false }` when only secure
1898
1905
  Service Worker eligibility is needed, or `{ scope: "/app/" }` to require the
1899
- current page to be inside a same-origin path scope.
1906
+ current page to be inside a same-origin path scope. Callers that already own
1907
+ browser references can pass
1908
+ `{ environment: { window, navigator, document } }`; injected objects are used
1909
+ exclusively and are never combined with globals.
1900
1910
 
1901
1911
  This check does not validate or request the manifest, verify service worker
1902
1912
  registration, determine whether the app is installed, or guarantee that an
@@ -1910,6 +1920,15 @@ const ret = isSafePWAEnv();
1910
1920
  console.log(ret);
1911
1921
  ```
1912
1922
 
1923
+ Site initialization and deterministic tests can use explicit browser objects:
1924
+
1925
+ ```javascript
1926
+ const ret = isSafePWAEnv({
1927
+ scope: "/app/",
1928
+ environment: { window, navigator, document },
1929
+ });
1930
+ ```
1931
+
1913
1932
  Output:
1914
1933
 
1915
1934
  ```text
@@ -1920,7 +1939,9 @@ true
1920
1939
 
1921
1940
  Detect standard standalone display mode with the iOS Safari
1922
1941
  `navigator.standalone` fallback. This is a presentation hint, not proof that
1923
- the app is installed or controlled by a service worker.
1942
+ the app is installed or controlled by a service worker. Pass
1943
+ `{ environment: { window, navigator } }` to inspect caller-owned browser
1944
+ objects without reading globals.
1924
1945
 
1925
1946
  ```javascript
1926
1947
  if (isStandalonePWA()) {
@@ -1928,6 +1949,12 @@ if (isStandalonePWA()) {
1928
1949
  }
1929
1950
  ```
1930
1951
 
1952
+ ```javascript
1953
+ const standalone = isStandalonePWA({
1954
+ environment: { window, navigator },
1955
+ });
1956
+ ```
1957
+
1931
1958
  ### Web Performance
1932
1959
 
1933
1960
  #### getPerformance
package/lib/index.cjs.js CHANGED
@@ -1,6 +1,6 @@
1
1
  /*!
2
- * Mazey v5.7.4 https://github.com/chengchuu/mazey
2
+ * Mazey v5.9.0 https://github.com/chengchuu/mazey
3
3
  * (c) 2018-2026 Cheng
4
4
  * Released under the MIT License.
5
5
  */
6
- "use strict";function e(e){try{return Date.prototype.getTime.call(e)}catch(e){return null}}const t=/^(\d{4})-(\d{2})-(\d{2})(?:[ T](\d{2}):(\d{2})(?::(\d{2}))?)?$/,n=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2})(?::(\d{2})(?:\.(\d{1,3}))?)?(Z|[+-]\d{2}:\d{2})$/;function r(e,t,n,r,o,i,s=0,a=!1){const c=new Date(0);return a?(c.setUTCFullYear(e,t-1,n),c.setUTCHours(r,o,i,s),Number.isFinite(c.getTime())&&c.getUTCFullYear()===e&&c.getUTCMonth()===t-1&&c.getUTCDate()===n&&c.getUTCHours()===r&&c.getUTCMinutes()===o&&c.getUTCSeconds()===i&&c.getUTCMilliseconds()===s):(c.setFullYear(e,t-1,n),c.setHours(r,o,i,s),Number.isFinite(c.getTime())&&c.getFullYear()===e&&c.getMonth()===t-1&&c.getDate()===n&&c.getHours()===r&&c.getMinutes()===o&&c.getSeconds()===i&&c.getMilliseconds()===s)}function o(e,t,n,r,o,i,s=0){const a=new Date(0);return a.setFullYear(e,t-1,n),a.setHours(r,o,i,s),a}function i(i){if("number"==typeof i){const e=new Date(i);return Number.isFinite(i)&&Number.isFinite(e.getTime())?e:null}if("object"==typeof i&&null!==i){const t=e(i);return null!==t&&Number.isFinite(t)?new Date(t):null}if("string"!=typeof i)return null;const s=i.trim();if(!s)return null;const a=t.exec(s);if(a){const[e,t,n,i="0",s="0",c="0"]=a.slice(1),[u,l,f,p,d,g]=[e,t,n,i,s,c].map(Number);return r(u,l,f,p,d,g)?o(u,l,f,p,d,g):null}const c=n.exec(s);if(!c)return null;const[u,l,f,p,d,g="0",m="",h]=c.slice(1),y=Number(`${m}00`.slice(0,3));if(!r(Number(u),Number(l),Number(f),Number(p),Number(d),Number(g),y,!0))return null;if("Z"!==h){const e=Number(h.slice(1,3)),t=Number(h.slice(4,6));if(e>23||t>59)return null}return function(e,t,n,r,o,i,s,a){const c=new Date(0);if(c.setUTCFullYear(e,t-1,n),c.setUTCHours(r,o,i,s),"Z"===a)return c;const u="+"===a[0]?1:-1,l=60*Number(a.slice(1,3))+Number(a.slice(4,6));return new Date(c.getTime()-u*l*60*1e3)}(Number(u),Number(l),Number(f),Number(p),Number(d),Number(g),y,h)}const s=/^(\d{4,})-(\d{2})-(\d{2})T(\d{2}):(\d{2})(?::(\d{2})(?:\.(\d{1,3}))?)?$/;function a(e,t){const n=String(e);return n.length>=t?n:`${"0".repeat(t-n.length)}${n}`}function c(){return Date.now()}const u={type:"d"};function l(e){return"string"==typeof e&&/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/.test(e)?e.replace(" ","T"):e}function f(e=0,t=0,n=u){n=Object.assign({},u,n);const{type:r}=n;"number"==typeof e&&Number.isFinite(e)||(e=new Date(l(e)).getTime()),"number"==typeof t&&Number.isFinite(t)||(t=new Date(l(t)).getTime());const o=Number(t)-Number(e);let i="",[s,a,c,f]=new Array(4).fill(0);if(o>=0)switch(s=Math.floor(o/1e3/60/60/24),a=Math.floor(o/1e3/60/60),c=Math.floor(o/1e3/60),f=Math.floor(o/1e3),r){case"d":i=s;break;case"text":s=Math.floor(o/1e3/60/60/24),a=Math.floor(o/1e3/60/60%24),c=Math.floor(o/1e3/60%60),f=Math.floor(o/1e3%60),i=[{value:s,unit:"day"},{value:a,unit:"hour"},{value:c,unit:"minute"},{value:f,unit:"second"}].filter(({value:e})=>e>0).map(({value:e,unit:t})=>p(e,t)).join(" ")||p(0,"second");break;default:i=f}return i}function p(e,t){const n=Math.round(10*e)/10;return`${n} ${1===n?t:`${t}s`}`}function d(e,t){const n=Math.max(1,Math.round(e));return`about ${n} ${t}${1===n?"":"s"}`}function g(e,t="yyyy-MM-dd"){void 0===e&&(e=new Date);const n=new Date(e);if(!Number.isFinite(n.getTime()))throw new RangeError("Invalid date");const r=n.getHours(),o={yyyy:n.getFullYear(),MM:n.getMonth()+1,dd:n.getDate()<10?"0"+n.getDate():n.getDate(),HH:r<10?"0"+r:r,hh:(r%12||12)<10?"0"+(r%12||12):r%12||12,mm:n.getMinutes()<10?"0"+n.getMinutes():n.getMinutes(),ss:n.getSeconds()<10?"0"+n.getSeconds():n.getSeconds(),a:r<12?"AM":"PM"};let i=t||"yyyy-MM-dd";return Object.keys(o).forEach(e=>{let t=o[e];"MM"===e&&Number(t)<=9&&(t=`0${t}`),i=i.split(e).join(String(t))}),i}function m(e,t){const n=e.length,r=t.length;if(0===n||0===r)return 0;const o=Array.from({length:n},()=>new Array(r).fill(0));let i=0;for(let s=0;s<n;++s)for(let n=0;n<r;++n)if(e[s]===t[n]){let e=0;s>0&&n>0&&(e=o[s-1][n-1]),o[s][n]=e+1,i=Math.max(i,o[s][n])}return i}function h(e,t){const n=e.length,r=t.length;if(0===n||0===r)return 0;const o=Array.from({length:n},()=>new Array(r).fill(0));for(let i=0;i<n;++i)for(let n=0;n<r;++n)if(e[i]===t[n]){let e=0;i>0&&n>0&&(e=o[i-1][n-1]),o[i][n]=e+1}else{let[e,t]=[0,0];n>0&&(e=o[i][n-1]),i>0&&(t=o[i-1][n]),o[i][n]=Math.max(e,t)}return o[n-1][r-1]}function y(e){return Math.random()<e}const w=Function.prototype.toString.call(Object);function b(e,t,n){const r=Object.getOwnPropertyDescriptor(t,n)?.get;if(!r)return!1;try{return r.call(e),!0}catch(e){return!1}}function x(e){return null===e||"object"!=typeof e?e:v(e,new WeakMap)}function v(t,n){if(null===t||"object"!=typeof t)return t;const r=t,o=n.get(r);if(void 0!==o)return o;const i=e(r);if(null!==i){const e=new Date(i);return n.set(r,e),e}const s=function(e){const t=Object.getOwnPropertyDescriptor(RegExp.prototype,"source")?.get;if(!t)return null;try{return t.call(e)}catch(e){return null}}(r);if(null!==s){const e=t,o=new RegExp(s,function(e){return e.flags}(e));return o.lastIndex=e.lastIndex,n.set(r,o),o}if("undefined"!=typeof ArrayBuffer&&b(r,ArrayBuffer.prototype,"byteLength")){const e=ArrayBuffer.prototype.slice.call(t,0);return n.set(r,e),e}if("undefined"!=typeof SharedArrayBuffer&&b(r,SharedArrayBuffer.prototype,"byteLength")){const e=SharedArrayBuffer.prototype.slice.call(t,0);return n.set(r,e),e}if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&ArrayBuffer.isView(t)){const e=v(t.buffer,n),o="undefined"!=typeof DataView&&b(r,DataView.prototype,"byteLength")?new DataView(e,t.byteOffset,t.byteLength):new t.constructor(e,t.byteOffset,t.length);return n.set(r,o),o}if("undefined"!=typeof Map&&b(r,Map.prototype,"size")){const e=new Map;return n.set(r,e),Map.prototype.forEach.call(t,(t,r)=>{e.set(v(r,n),v(t,n))}),e}if("undefined"!=typeof Set&&b(r,Set.prototype,"size")){const e=new Set;return n.set(r,e),Set.prototype.forEach.call(t,t=>{e.add(v(t,n))}),e}const a=Array.isArray(t),c=Object.getPrototypeOf(t),u=function(e){const t=Object.getPrototypeOf(e);if(null===t)return!0;const n=Object.hasOwn(t,"constructor")?t.constructor:null;return"function"==typeof n&&Function.prototype.toString.call(n)===w}(r),l=!a&&!u&&function(e){const t=Object.getPrototypeOf(e),n=t?.constructor;return"function"==typeof n&&-1===Function.prototype.toString.call(n).indexOf("[native code]")}(r);if(!a&&!u&&!l)return n.set(r,t),t;const f=a?new Array(t.length):Object.create(l?Object.prototype:c);return n.set(r,f),function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}(r).forEach(e=>{if(a&&"length"===e)return;const t=Object.getOwnPropertyDescriptor(r,e);t&&("value"in t&&(t.value=v(t.value,n)),Object.defineProperty(f,e,t))}),f}function E(e){const t=e.replace(/([A-Z])/g,"-$1").toLowerCase();return"-"===t[0]?t.substring(1):t}function T(e){const t=e.replace(/([A-Z])/g,"_$1").toLowerCase();return"_"===t[0]?t.substring(1):t}function S(e){return T(e)}function A(e){if("string"!=typeof e)throw new TypeError("value must be a string");const t=e.replace(/[^A-Za-z0-9_$]/g,"_").toUpperCase();return/^[A-Za-z_$]/.test(t)?t:`_${t}`}function C(e){if("string"!=typeof e)return!1;try{return JSON.parse(e),!0}catch(e){}return!1}function N(e=5){if(!Number.isFinite(e)||e<=0)return"";e=Math.floor(e);let t="";for(;e--;)t+=Math.floor(10*Math.random());return t}function $(e=5){return N(e)}function O(e=3){const[t,n]=[c(),$(e||3)];return t+n}function _(e,t={}){const{isNaNAsNumber:n=!1,isInfinityAsNumber:r=!1,isUnFiniteAsNumber:o=!1}=t;return"number"==typeof e&&(!(!0!==r&&!0!==o&&!isFinite(e))&&!(!n&&isNaN(e)))}function M(e,...t){let n=null;return e&&"function"==typeof e&&(n=e(...t)),n}function j(e,...t){return M(e,...t)}function D(e){let t=!1;return Array.isArray(e)&&e.length&&(t=!0),t}function L(e){const t=Boolean(e),n="object"==typeof e,r="[object Object]"===Object.prototype.toString.call(e);return t&&n&&r}function k(e){return"boolean"==typeof e}function P(e){if(!e)return"";const t=new RegExp("\\n","g");return e.replace(t,"<br />")}function F(e,t={}){const{removeNewLine:n=!1}=t;let r="";return e&&(r=e.replace(/<\/?.+?>/g,""),n&&(r=r.replace(/[\r\n]/g,""))),r}function R(e){const t={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#x27;":"'","&#x2F;":"/"};if("string"!=typeof e)throw new Error("Input must be a string");return e.replace(/(&amp;|&lt;|&gt;|&quot;|&#x27;|&#x2F;)/g,e=>t[e])}function U(e,t,n={hasDot:!1,dotText:"..."}){if(n=Object.assign({hasDot:!1,dotText:"..."},n),""!=e&&e){let r=0,o="";const i=/[^\x00-\xff]/g;let s="";const a=e.replace(i,"**").length;for(let n=0;n<a&&(s=e.charAt(n).toString(),null!=s.match(i)?r+=2:r++,!(r>t));n++)o+=s;return n.hasDot&&a>t&&(o+=n.dotText),o}return""}function z(e,t,n=!1){return U(e,t,{hasDot:n})}const I=["B","KB","MB","GB","TB"];function B(e,t={}){const{base:n=1024,fractionDigits:r=1,invalidValue:o=""}=t;if(!Number.isFinite(e)||e<0||1e3!==n&&1024!==n||!Number.isInteger(r)||r<0||r>20)return o;let i=e,s=0;for(;i>=n&&s<I.length-1;)i/=n,s+=1;return 0===s?`${Number(i.toFixed(r))} ${I[s]}`:`${i.toFixed(r)} ${I[s]}`}function H(e){return/^1\d{10}$/.test(e)}const q=H;async function W(e){return new Promise(t=>{setTimeout(()=>{t(e)},e)})}let V="";function Y(e,t){const n=e[t];if(void 0!==n&&"string"!=typeof n)throw new TypeError(`manifest.${t} must be a string when provided`);return n}function Z(e){if(void 0===e)return{name:""};if("string"==typeof e)return{name:e.trim()};if(null===e||"object"!=typeof e||Array.isArray(e))throw new TypeError("manifest.author must be a string or object");const t=e,n={name:""};for(const e of["name","email","url"]){const r=t[e];if(void 0!==r&&"string"!=typeof r)throw new TypeError(`manifest.author.${e} must be a string when provided`);if("string"==typeof r){const t=r.trim();("name"===e||t)&&(n[e]=t)}}return n}function J(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch(t){return e}}function Q(e){const t=e.indexOf("#"),n=-1===t?e:e.slice(0,t),r=n.indexOf("?"),o=/^(?:[a-z][a-z\d+.-]*:)?\/\//i.test(n)||"/"===n.charAt(0),i=-1===r?o?"":n:n.slice(r+1);return i?i.split("&").reduce((e,t)=>{if(!t||-1===t.indexOf("="))return e;const n=t.indexOf("=");return e.push([J(t.slice(0,n)),J(t.slice(n+1))]),e},[]):[]}function G(e,t){return Q(e).filter(([e])=>e===t).map(([,e])=>e)}const K=/^(?=.{1,39}$)(?!.*--)[A-Za-z0-9](?:[A-Za-z0-9-]*[A-Za-z0-9])?$/,X=/^(?=.{1,100}$)(?!\.{1,2}$)[A-Za-z0-9_.-]+$/;function ee(){return new Error("The value does not identify one supported GitHub repository")}function te(e,t){const n=t.replace(/\.git$/i,"");if(!K.test(e)||!X.test(n))throw ee();const r=`${e}/${n}`;return{owner:e,name:n,slug:r,url:`https://github.com/${r}`}}function ne(e){return void 0===e||Number(e)<=65535}function re(e){const t=e.split(".");return 4===t.length&&t.every(e=>/^\d{1,3}$/.test(e)&&(1===e.length||"0"!==e.charAt(0))&&Number(e)<=255)}function oe(e){const t=e.split("::");if(t.length>2)return!1;const n=2===t.length;let r=[];t.forEach(e=>{e&&(r=r.concat(e.split(":")))});let o=0;for(let e=0;e<r.length;e++){const t=r[e];if(-1!==t.indexOf(".")){if(e!==r.length-1||!re(t))return!1;o+=2}else{if(!/^[0-9a-f]{1,4}$/i.test(t))return!1;o+=1}}return n?o<8:8===o}function ie(e){const t=e.match(/^\[([0-9a-f:.]+)\]$/i);if(t)return oe(t[1]);if("."===e.charAt(e.length-1)&&(e=e.slice(0,-1)),re(e))return!0;const n=e.split(".");return!(n.length<2||n.some(e=>!e||!/^[a-z\d-]+$/i.test(e)||"-"===e.charAt(0)||"-"===e.charAt(e.length-1)))&&!/^\d+$/.test(n[n.length-1])}function se(e,t={strict:!0}){if("string"!=typeof e||!e||e.trim()!==e)return!1;const n=/^https?:\/\/[^/\\]/i.test(e),r=/^\/\/[^/\\]/.test(e);if(!n&&(t.strict||!r))return!1;const o=r?`http:${e}`:e;if(!function(e){const t=e.match(/^https?:\/\/([^/?#]+)(?:[/?#][^\s<>"`]*)?$/i);if(!t||-1!==t[1].indexOf("@"))return!1;const n=t[1],r=n.match(/^\[([0-9a-f:.]+)\](?::(\d*))?$/i);if(r)return oe(r[1])&&ne(r[2]);const o=n.match(/^([^:]+)(?::(\d*))?$/);return!(!o||!ne(o[2]))&&ie(o[1])}(o))return!1;try{const e=new URL(o);return("http:"===e.protocol||"https:"===e.protocol)&&ie(e.hostname)&&!e.username&&!e.password}catch(e){return!1}}function ae(e){return e.replace(/^http:/,"https:")}const ce={enabled:!0,isClosed:!1,showWrap:!1,showDate:!1,locales:"en-US",isStringifyObject:!1,logFn:()=>{},errorFn:()=>{}};function ue(e="",t={...ce}){const{enabled:n,isClosed:r,showWrap:o,showDate:i,locales:s,isStringifyObject:a,logFn:c,errorFn:u}=Object.assign({...ce},t);let l=n;!0===r&&(le.warn("The options.isClosed is deprecated. Please use options.enabled instead."),l=!1);const f=Object.create(null),p=()=>(new Date).toLocaleDateString(s,{weekday:"short",year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"});return["log","info","warn","error"].forEach(t=>{f[t]=function(...n){if(!l)return;let r=e,s=e;if("string"==typeof e&&e.length>=2){const t=e.length;r=":"===e[t-1]?e.substring(0,t-1):e}o&&console.log(`--- ${r} - begin ---`),i&&(s=e?`${p()} ${e}`:`${p()}`),a&&(n=n.map(e=>L(e)?JSON.stringify(e):e)),e||i?console[t](s,...n):console[t](...n),"log"===t&&c(),"error"===t&&u(),o&&console.log(`--- ${r} - end ---`)}}),f}const le=ue("[Mazey]"),fe=ue("",{showDate:!0,locales:"zh-CN",isStringifyObject:!0});function pe(e,t){if(!e)return void le.error("The element is not exist.");if(Array.isArray(t))return void t.forEach(t=>{t&&e.classList.add(t)});if(!t)return;const n=e.className,r=n.split(/\s+/);for(let e=0;e<r.length;e++)if(r[e]===t)return;let o="",i="";""!==n&&(o=" "),i=n+o+t,e.className=i}function de(){const e=window.jQuery||window.$;if(e){const t=e("img");return!(!t||!t.length)&&(t.each(function(){const t=e(this);if(!t)return;const n=t.attr("src");if(!(n&&"string"==typeof n&&n.length))return;const r=n.match(/[?&]width=([0-9]+[a-z%]*)/),o=n.match(/[?&]height=([0-9]+[a-z%]*)/);r&&D(r)&&r[1]&&t.width(r[1]),o&&D(o)&&o[1]&&t.height(o[1])}),!0)}{const e=document.getElementsByTagName("img");if(e.length>0)return Array.from(e).forEach(function(e){const t=e;if(!t)return;const n=t.getAttribute("src");if(!(n&&"string"==typeof n&&n.length))return;const r=n.match(/[?&]width=([0-9]+[a-z%]*)/),o=n.match(/[?&]height=([0-9]+[a-z%]*)/);r&&D(r)&&r[1]&&(t.style.width=r[1]),o&&D(o)&&o[1]&&(t.style.height=o[1])}),!0}return!1}function ge(e,t={}){if("string"!=typeof e)return!1;const n=e.trim();if(!n)return!0===t.allowEmpty;const r=t.root||("undefined"==typeof document?null:document);if(!r)return!1;try{return r.querySelector(n),!0}catch(e){return!1}}function me(e){return Boolean(e&&"object"==typeof e&&1===e.nodeType&&"string"==typeof e.nodeName&&"function"==typeof e.getAttribute)}const he=new WeakMap,ye=new WeakMap,we={button:"inline-block",input:"inline-block",select:"inline-block",textarea:"inline-block",table:"table",caption:"table-caption",colgroup:"table-column-group",col:"table-column",thead:"table-header-group",tbody:"table-row-group",tfoot:"table-footer-group",tr:"table-row",td:"table-cell",th:"table-cell",li:"list-item",summary:"list-item"},be=new Set(["address","article","aside","blockquote","body","dd","details","dialog","div","dl","dt","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","hr","html","main","nav","ol","p","pre","section","ul"]);function xe(e){if(!me(e))return null;const t=e.style;return t&&"string"==typeof t.display?e:null}function ve(e){const t=new Set,n=e=>{const n=xe(e);n&&t.add(n)};if("string"==typeof e){if("undefined"==typeof document)return[];try{document.querySelectorAll(e).forEach(n)}catch(e){return[]}return Array.from(t)}const r=xe(e);if(r)return[r];if(!e||"object"!=typeof e)return[];if("function"==typeof e[Symbol.iterator]){for(const t of e)n(t);return Array.from(t)}const o=e.length;if(!Number.isSafeInteger(o)||o<0)return[];for(let t=0;t<o;t+=1)n(e[t]);return Array.from(t)}function Ee(e){const t=e.ownerDocument.defaultView;return t?t.getComputedStyle(e).display:null}function Te(e){const t=e.ownerDocument,n=e.localName.toLowerCase();let r=ye.get(t);r||(r=new Map,ye.set(t,r));const o=e.namespaceURI||"",i=`${o}:${n}`,s=r.get(i);if(s)return s;let a="";const c="http://www.w3.org/1999/xhtml"===o&&n.includes("-"),u=t.body||t.documentElement;if(u&&!c){const e=o&&"http://www.w3.org/1999/xhtml"!==o?t.createElementNS(o,n):t.createElement(n);u.appendChild(e);try{a=Ee(e)||""}finally{u.removeChild(e)}}return a&&"none"!==a||(a=function(e){return we[e]?we[e]:be.has(e)?"block":"inline"}(n)),r.set(i,a),a}function Se(){const e=window.MAZEY_DEFINE_LISTENERS;if(e&&"object"==typeof e)return e;const t=Object.create(null);return window.MAZEY_DEFINE_LISTENERS=t,t}function Ae(e,t){const n=Se()[e];if(Array.isArray(n)){const e=n.slice();for(let n=0,r=e.length;n<r;n++)"function"==typeof e[n]&&(void 0===t?e[n]():e[n](t))}}function Ce(e,t=null){if(e){const n=JSON.stringify(t);sessionStorage.setItem(e,void 0===n?"null":n)}}function Ne(e){let t=null;if(e){const n=sessionStorage.getItem(e);if(n)try{t=JSON.parse(n)}catch(e){t=n}}return t}function $e(e,t=null){if(e){const n=JSON.stringify(t);localStorage.setItem(e,void 0===n?"null":n)}}function Oe(e){let t=null;if(e){const n=localStorage.getItem(e);if(n)try{t=JSON.parse(n)}catch(e){t=n}}return t}const _e=Ce,Me=Ne,je=$e,De=Oe,Le="__mazey_cookie_name_encoded__-",ke="__mazey_cookie_value_encoded__-";function Pe(e){return`${ke}${encodeURIComponent(e)}`}function Fe(e){const t=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/.test(e),n=0===e.indexOf(Le)||0===e.indexOf(ke);return t&&!n?e:function(e){return`${Le}${encodeURIComponent(e)}`}(e)}function Re(e){const t=Fe(e);return t!==e?[t,e]:[e]}function Ue(e){const t=e+"=",n=document.cookie.split(";");for(let e=0;e<n.length;e++){const r=n[e].trim();if(0===r.indexOf(t))return r.substring(t.length)}}function ze(e){const t=Re(e),n="1"===Ue(Pe(e));for(let e=0;e<t.length;e++){const r=Ue(t[e]);if(void 0!==r){if(n)try{return decodeURIComponent(r)}catch(e){return r}return r}}return""}function Ie(e){const t=Re(e),n=t.concat(Pe(e)),r=new Date;r.setTime(r.getTime()-1);const o=t.some(e=>void 0!==Ue(e));return n.forEach((e,t)=>{if(n.indexOf(e)===t&&void 0!==Ue(e)){[`${e}=; expires=${r.toUTCString()}`,`${e}=; expires=${r.toUTCString()}; path=/`].forEach(e=>{document.cookie=e;const t=location.hostname;if(-1!==t.indexOf(".")){const n=t.split(".");for(let t=0;t<n.length;t++)document.cookie=`${e}; domain=.${n.slice(t).join(".")}`}})}}),o&&n.every(e=>void 0===Ue(e))}function Be(e,t={id:""}){const{id:n}=t;return new Promise((t,r)=>{const o=document.createElement("link");let i=!1;const s=()=>{o.onload=null,o.onerror=null};o.rel="stylesheet",o.type="text/css",o.href=e,void 0!==n&&(o.id=n),o.onload=()=>{i||(i=!0,s(),t("loaded"))},o.onerror=()=>{i||(i=!0,s(),r(new Error(`Failed to load CSS: ${e}`)))},document.head.appendChild(o)})}const He={id:"",callback:function(){},timeout:5e3,isDefer:!1,isAsync:!1,isCrossOrigin:!1,attributes:null,cssUrl:""};function qe(e,t={...He}){const{id:n,callback:r,timeout:o,isDefer:i,isAsync:s,isCrossOrigin:a,attributes:c,cssUrl:u}=Object.assign({...He},t);if(u){const t=function(e,t){if(!t)return"";if(se(t))return t;try{const n=new URL(e,location.href);return new URL(t,n).href}catch(n){const r=e.split("/");return r.pop(),`${r.join("/")}/${t}`}}(e,u);t&&Be(t).catch(e=>{console.error(`Failed to load CSS from ${t}: ${e?.message}`)})}return new Promise((t,u)=>{const l=document.createElement("script");let f=!1,p=null;const d=()=>{l.onload=null,l.onerror=null,null!==p&&(clearTimeout(p),p=null)},g=e=>{f||(f=!0,d(),u(e))};l.type="text/javascript",l.defer=Boolean(i),l.async=Boolean(s),a&&(l.crossOrigin="anonymous"),n&&(l.id=n),c&&Object.keys(c).forEach(e=>{l.setAttribute(e,c[e])}),l.onload=()=>{if(!f){f=!0,d();try{j(r),t("loaded")}catch(e){u(e)}}},l.onerror=()=>g(new Error(`Failed to load script: ${e}`)),l.src=e,o&&(p=setTimeout(()=>g(new Error("timeout")),o));const m=document.getElementsByTagName("script")[0];if(m?.parentNode)m.parentNode.insertBefore(l,m);else{(document.head||document.body||document.documentElement).appendChild(l)}})}const We=new Map;function Ve(e){if("undefined"==typeof window)return!1;let t=[];const n=window.PerformanceObserver;return!!n&&(D(n.supportedEntryTypes)&&(t=n.supportedEntryTypes),t.includes(e))}async function Ye(){return Ve("paint")?new Promise(e=>{const t=new window.PerformanceObserver(n=>{const r=n.getEntries().find(e=>"first-contentful-paint"===e.name);r&&(t.disconnect(),e(Math.round(r.startTime)))});t.observe({type:"paint",buffered:!0})}):0}async function Ze(){return Ve("paint")?new Promise(e=>{const t=new window.PerformanceObserver(n=>{const r=n.getEntries().find(e=>"first-paint"===e.name);r&&(t.disconnect(),e(Math.round(r.startTime)))});t.observe({type:"paint",buffered:!0})}):0}function Je(e,t=e.userAgent.trim().toLowerCase()){return/\bmacintosh\b/.test(t)&&"macintel"===e.platform.toLowerCase()&&e.maxTouchPoints>1}const Qe=Object.freeze(["adsbot-google","ahrefsbot","amazonbot","applebot","baiduspider","bingbot","bingpreview","bytespider","ccbot","chatgpt-user","claudebot","discordbot","dotbot","duckduckbot","facebookexternalhit","facebot","google-inspectiontool","googlebot","googleother","gptbot","linkedinbot","mediapartners-google","mj12bot","perplexitybot","petalbot","semrushbot","slackbot","slurp","storebot-google","telegrambot","twitterbot","whatsapp","yandexbot"]),Ge=Object.freeze(["headlesschrome","phantomjs","slimerjs","selenium","puppeteer","playwright"]);function Ke(){try{return"undefined"==typeof navigator?null:navigator}catch(e){return null}}function Xe(){const e=Ke();if(!e)return{userAgent:"",platform:"",maxTouchPoints:0};let t="",n="",r=0;try{const n=e.userAgent;t="string"==typeof n?n:""}catch(e){return{userAgent:"",platform:"",maxTouchPoints:0}}try{const t=e.platform;n="string"==typeof t?t:""}catch(e){n=""}try{const t=e.maxTouchPoints;r=Number.isFinite(t)?t:0}catch(e){r=0}return{userAgent:t,platform:n,maxTouchPoints:r}}function et(e){const t=e.userAgent.trim().toLowerCase();return t?/\bandroid\b|\badr\b/.test(t)?"android":/\bios\b|\biphone\b|\bipad\b|\bipod\b|\biwatch\b/.test(t)||Je(e,t)?"ios":/\bwindows\b|\bwin32\b|\bwin64\b|\bwow32\b|\bwow64\b/.test(t)?"windows":/\bmacintosh\b|\bmacintel\b|\bmac os x\b/.test(t)?"macos":/\blinux\b/.test(t)?"linux":"":""}function tt(e){const t=e.userAgent.trim().toLowerCase();if(!t)return"";if(/\biwatch\b|\bapple watch\b/.test(t))return"";if(/\bipad\b|\btablet\b/.test(t)||Je(e,t))return"tablet";const n=et(e);return"android"===n?/\bmobile\b/.test(t)?"mobile":"tablet":"ios"===n&&/\biphone\b|\bipod\b/.test(t)?"mobile":"windows"===n||"macos"===n||"linux"===n||/\bcros\b/.test(t)?"desktop":/\bmobile\b/.test(t)?"mobile":""}function nt(e){if(void 0!==e&&"string"!=typeof e)throw new TypeError("userAgent must be a string when provided.");return tt(void 0!==e?{userAgent:e,platform:"",maxTouchPoints:0}:Xe())}function rt(e){if(void 0!==e&&"string"!=typeof e)throw new TypeError("userAgent must be a string when provided.");return et(void 0!==e?{userAgent:e,platform:"",maxTouchPoints:0}:Xe())}function ot(e,t){const n=e.trim().toLowerCase();return t.some(e=>n.includes(e))}function it(){if(window.MAZEY_BROWSER_INFO&&"object"==typeof window.MAZEY_BROWSER_INFO)return window.MAZEY_BROWSER_INFO;let e={engine:"",engineVs:"",platform:"",supporter:"",supporterVs:"",system:"",systemVs:"",shell:"",shellVs:"",appleType:"",colorScheme:""};try{const t=Xe(),n=t.userAgent.toLowerCase();if(!n)return e;const r=e=>e.test(n),o=e=>{let t="";const r=n.match(e);return r&&D(r)&&(t=r.toString(),t=t.replace(/[^0-9|_.]/g,""),t=t.replace(/_/g,".")),t},i=et(t);let s="";"ios"===i&&(r(/ipad/g)?s="ipad":r(/iphone/g)?s="iphone":r(/iwatch/g)?s="iwatch":r(/ipod/g)?s="ipod":"macintel"===t.platform.toLowerCase()&&t.maxTouchPoints>1&&(s="ipad")),e={...e,system:i,appleType:s};let a="";"windows"===i?r(/windows nt 5.0|windows 2000/g)?a="2000":r(/windows nt 5.1|windows xp/g)?a="xp":r(/windows nt 5.2|windows 2003/g)?a="2003":r(/windows nt 6.0|windows vista/g)?a="vista":r(/windows nt 6.1|windows 7/g)?a="7":r(/windows nt 6.2|windows 8/g)?a="8":r(/windows nt 6.3|windows 8.1/g)?a="8.1":r(/windows nt 10.0|windows 10/g)&&(a="10"):"macos"===i?a=o(/os x [\d._]+/g):"android"===i?a=o(/android [\d._]+/g):"ios"===i&&(a=o(/os [\d._]+/g)),e={...e,systemVs:a};let c="";"windows"===i||"macos"===i||"linux"===i?c="desktop":("android"===i||"ios"===i||r(/mobile/g))&&(c="mobile"),e={...e,platform:c};let u="",l="";r(/applewebkit/g)?(u="webkit",r(/edg(?:a|ios)?\//g)||r(/edge\//g)?l="edge":r(/opr/g)?l="opera":r(/chrome/g)?l="chrome":r(/safari/g)&&(l="safari")):r(/gecko/g)&&r(/firefox/g)?(u="gecko",l="firefox"):r(/presto/g)?(u="presto",l="opera"):r(/trident|compatible|msie/g)&&(u="trident",l="iexplore"),e={...e,engine:u,supporter:l};let f="";"webkit"===u?f=o(/applewebkit\/[\d._]+/g):"gecko"===u?f=o(/gecko\/[\d._]+/g):"presto"===u?f=o(/presto\/[\d._]+/g):"trident"===u&&(f=o(/trident\/[\d._]+/g)),e={...e,engineVs:f};let p="";"chrome"===l?p=o(/chrome\/[\d._]+/g):"safari"===l?p=o(/version\/[\d._]+/g):"firefox"===l?p=o(/firefox\/[\d._]+/g):"opera"===l?p=o(/opr\/[\d._]+/g):"iexplore"===l?p=o(/(msie [\d._]+)|(rv:[\d._]+)/g):"edge"===l&&(p=o(/(?:edge|edg|edga|edgios)\/[\d._]+/g)),e={...e,supporterVs:p};let d="",g="";r(/micromessenger/g)?(d="wechat",g=o(/micromessenger\/[\d._]+/g)):r(/qqbrowser/g)?(d="qq_browser",g=o(/qqbrowser\/[\d._]+/g)):r(/\sqq/g)?d="qq_app":r(/ucbrowser/g)?(d="uc",g=o(/ucbrowser\/[\d._]+/g)):r(/qihu 360se/g)?d="360":r(/2345explorer/g)?(d="2345",g=o(/2345explorer\/[\d._]+/g)):r(/metasr/g)?d="sougou":r(/lbbrowser/g)?d="liebao":r(/maxthon/g)?(d="maxthon",g=o(/maxthon\/[\d._]+/g)):r(/biliapp/g)&&(d="bilibili"),e={...e,shell:d,shellVs:g};let m="";if(window.matchMedia){const e=window.matchMedia("(prefers-color-scheme: dark)"),t=window.matchMedia("(prefers-color-scheme: light)");e.matches?m="dark":t.matches&&(m="light")}return e={...e,colorScheme:m},window.MAZEY_BROWSER_INFO=e,e}catch(t){return le.warn(t),e}}let st="";function at(e){if("string"!=typeof e||""===e.trim())throw new TypeError("storageKey must be a non-empty string.")}function ct(e){if("undefined"==typeof window)return null;try{return new URL(window.location.href).searchParams.get(e)}catch(e){return null}}function ut(e){if("undefined"==typeof window)return null;try{const t=window.localStorage;return t&&"function"==typeof t.getItem?t.getItem(e):null}catch(e){return null}}function lt(e,t){if("undefined"==typeof window)return!1;try{const n=window.localStorage;return!(!n||"function"!=typeof n.setItem)&&(n.setItem(e,t),!0)}catch(e){return!1}}const ft=Object.freeze({system:"System",light:"Light",dark:"Dark"});function pt(e){return"light"===e||"dark"===e}function dt(){if("undefined"==typeof window)return null;try{const e=window.matchMedia;return"function"!=typeof e?null:e.call(window,"(prefers-color-scheme: dark)").matches?"dark":"light"}catch(e){return null}}function gt(e,t){return{value:e,label:ft[t]}}function mt(e){const t=e.split("-");if(!/^[a-z]{2,8}$/i.test(t[0]))return null;const n=[t[0].toLowerCase()];let r=1;if(r<t.length&&/^[a-z]{4}$/i.test(t[r])){const e=t[r].toLowerCase();n.push(`${e[0].toUpperCase()}${e.slice(1)}`),r++}for(r<t.length&&(/^[a-z]{2}$/i.test(t[r])||/^\d{3}$/.test(t[r]))&&(n.push(/^[a-z]{2}$/i.test(t[r])?t[r].toUpperCase():t[r]),r++);r<t.length;r++){const e=t[r];if(!/^(?:[a-z0-9]{5,8}|\d[a-z0-9]{3})$/i.test(e))return null;n.push(e.toLowerCase())}return n.join("-")}function ht(e){if("string"!=typeof e)return null;const t=e.trim().replace(/_/g,"-");if(!t)return null;if("undefined"!=typeof Intl)try{const e=Intl,n=e.getCanonicalLocales;if("function"==typeof n){const r=n.call(e,t)[0];return"string"==typeof r&&r?r:null}}catch(e){return e instanceof RangeError||"object"==typeof e&&null!==e&&"name"in e&&"RangeError"===e.name?null:mt(t)}return mt(t)}function yt(e){if("undefined"==typeof Intl)return e;try{const t=Intl.DisplayNames;if("function"!=typeof t)return e;const n=new t([e],{type:"language"}).of(e);return"string"==typeof n&&n.trim()?n:e}catch(t){return e}}function wt(e){return{value:e,label:yt(e)}}exports.addClass=pe,exports.addEvent=function(e,t){const n=Se();Array.isArray(n[e])||Object.defineProperty(n,e,{configurable:!0,enumerable:!0,value:[],writable:!0}),"function"==typeof t&&n[e].push(t)},exports.addStyle=function(e,t={id:""}){if(!e)return!1;const n=document.createDocumentFragment();let r=null,o="";const i=document.createElement("style");return t.id?(o=`${t.id}`,r=document.getElementById(o),r?r.innerHTML=e:(i.setAttribute("id",t.id),i.innerHTML=e,n.appendChild(i),document.head.appendChild(n))):(i.innerHTML=e,n.appendChild(i),document.head.appendChild(n)),!0},exports.assignDefined=function(e,...t){return t.forEach(t=>{void 0!==t&&Object.keys(t).forEach(n=>{const r=t[n];if(void 0!==r){const t=e;"__proto__"!==n||Object.hasOwn(e,n)?t[n]=r:Object.defineProperty(e,n,{configurable:!0,enumerable:!0,value:r,writable:!0})}})}),e},exports.calLongestCommonSubsequence=function(e,t){return h(e,t)},exports.calLongestCommonSubstring=function(e,t){return m(e,t)},exports.calculateAspectRatio=function(e,t){if(!Number.isSafeInteger(e))throw new TypeError("width must be a safe integer.");if(!Number.isSafeInteger(t))throw new TypeError("height must be a safe integer.");if(e<=0||t<=0)throw new RangeError("width and height must be greater than zero.");const n=function(e,t){for(;0!==t;){const n=e%t;e=t,t=n}return e}(e,t);return`${e/n}x${t/n}`},exports.calculateCAGR=function(e,t,n){const r=i(e);if(!r)throw new TypeError("startDate must be a valid date.");const o=i(t);if(!o)throw new TypeError("endDate must be a valid date.");const s=o.getTime()-r.getTime();if(s<=0)throw new RangeError("endDate must be later than startDate.");const a=function(e){if("number"==typeof e){if(!Number.isFinite(e))throw new TypeError("totalReturnRate must be a finite number or percentage string.");return e}if("string"!=typeof e)throw new TypeError("totalReturnRate must be a finite number or percentage string.");const t=e.trim();if(!t)throw new TypeError("totalReturnRate must not be empty.");const n=t.endsWith("%")?t.slice(0,-1).trim():t;if(!n)throw new TypeError("totalReturnRate must be a valid percentage string.");const r=Number(n);if(!Number.isFinite(r))throw new TypeError("totalReturnRate must be a valid percentage string.");return r/100}(n);if(a<=-1)throw new RangeError("totalReturnRate must be greater than -1.");const c=s/864e5,u=Math.pow(1+a,365/c)-1;if(!Number.isFinite(u))throw new RangeError("calculated CAGR must be finite.");return u},exports.camelCase2Underscore=S,exports.camelCaseToKebabCase=function(e){return E(e)},exports.cancelBubble=function(e){e.stopPropagation()},exports.clearHTML=function(e,t={}){return F(e,t)},exports.clearHtml=function(e,t={}){return F(e,t)},exports.convert10To26=function(e){if(!Number.isFinite(e)||e<=0)return"";e=Math.floor(e);let t="";for(;e>0;){let n=e%26;0===n&&(n=26),t=String.fromCharCode(n+96)+t,e=(e-n)/26}return t},exports.convertCamelToKebab=E,exports.convertCamelToUnder=T,exports.convertHttpToHttps=ae,exports.convertKebabToCamel=function(e){const t=e.replace(/-([a-z])/g,(e,t)=>t.toUpperCase());return t.endsWith("-")?t.slice(0,-1):t},exports.convertObjectToQuery=function(e){return e&&0===Object.keys(e).length?"":`?${Object.keys(e).map(t=>`${encodeURIComponent(t)}=${encodeURIComponent(e[t])}`).join("&")}`},exports.convertToHtmlBreaks=P,exports.convertUnderToCamel=function(e){return e.replace(/_([a-z])/g,(e,t)=>t.toUpperCase())},exports.cutCHSString=function(e,t,n=!1){return z(e,t,n)},exports.cutZHString=U,exports.debounce=function(e,t,n){let r=null,o=null,i=null,s=null,a=null;const u=function(){const l=c()-i;l<t&&l>=0?o=setTimeout(u,t-l):(o=null,n||(a=e.apply(r,s),o||(r=s=null)))};return function(...l){r=this,s=l,i=c();const f=n&&!o;return o||(o=setTimeout(u,t)),f&&(a=e.apply(r,s),r=s=null),a}},exports.deepCopy=x,exports.deepCopyObject=function(e){return x(e)},exports.deepFreeze=function e(t){return!t||"object"!=typeof t||Object.isFrozen(t)||(Object.freeze(t),Object.values(t).forEach(e)),t},exports.delCookie=function(e){Ie(e)},exports.derivePackageMetadata=function(e,t={}){if(null===e||"object"!=typeof e||Array.isArray(e))throw new TypeError("manifest must be an object");if(null===t||"object"!=typeof t||Array.isArray(t))throw new TypeError("options must be an object when provided");const n=e;if("string"!=typeof n.name||!n.name.trim())throw new TypeError("manifest.name must be a non-empty string");const r=n.name.trim(),o=function(e){if(/\s/.test(e))throw new TypeError("manifest.name must not contain whitespace");if(e.startsWith("@")){const t=e.split("/");if(2!==t.length||t[0].length<2||!t[1])throw new TypeError("manifest.name must be a valid scoped package name");return t[1]}if(e.includes("/"))throw new TypeError("manifest.name must be an unscoped or scoped package name");return e}(r),i=t.packageManager??"npm";if("npm"!==i&&"pnpm"!==i&&"yarn"!==i)throw new TypeError('packageManager must be "npm", "pnpm", or "yarn"');const s="npm"===i?"npm install":`${i} add`;return{name:r,version:Y(n,"version"),description:Y(n,"description"),license:Y(n,"license"),author:Z(n.author),unscopedName:o,iifeGlobal:A(o),installCommand:`${s} ${r}`}},exports.detectVisitorType=function(e){if(void 0!==e&&"string"!=typeof e)throw new TypeError("userAgent must be a string when provided.");const t=void 0===e?function(){const e=Ke();if(!e)return"";try{const t=e.userAgent;return"string"==typeof t?t:""}catch(e){return""}}():e;return ot(t,Qe)?"crawler":ot(t,Ge)||function(){const e=Ke();if(!e)return!1;try{return!0===e.webdriver}catch(e){return!1}}()?"automation":"unknown"},exports.doFn=j,exports.escapeHtmlAttribute=function(e,t={}){if("string"!=typeof e)throw new TypeError("value must be a string.");const n=t.preserveEntities?/&(?!(?:#[0-9]+|#x[0-9a-f]+|[a-z][a-z0-9]+);)/gi:/&/g,r={"<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};return e.replace(n,"&amp;").replace(/[<>"']/g,e=>r[e])},exports.extractElementText=function(e,t={}){const{excludeSelector:n="",replaceImagesWithAlt:r=!0,normalizeWhitespace:o=!0}=t,i=e.cloneNode(!0);r&&Array.from(i.querySelectorAll("img[alt]")).forEach(e=>{const t=e.getAttribute("alt")||"";e.parentNode?.replaceChild(i.ownerDocument.createTextNode(t),e)});const s=n.trim();s&&ge(s,{root:i})&&Array.from(i.querySelectorAll(s)).forEach(e=>e.parentNode?.removeChild(e));const a=i.innerText||i.textContent||"";return o?a.replace(/\u00a0/g," ").replace(/\s+/g," ").trim():a},exports.fireEvent=Ae,exports.floatFixed=function(e,t=0){return parseFloat(String(e)).toFixed(t)},exports.floatToPercent=function(e,t=0){let n="";return n=t?(100*e).toFixed(t):String(Math.floor(100*e)),`${n}%`},exports.formatByteSize=B,exports.formatDate=g,exports.formatDistanceToNow=function(e){const t=i(e);if(!t)return"";const n=6e4,r=36e5,o=864e5,s=Math.abs(t.getTime()-Date.now());return s<3e4?"less than a minute":s<9e4?"about 1 minute":s<27e5?d(s/n,"minute"):s<54e5?"about 1 hour":s<864e5?d(s/r,"hour"):s<1512e5?"about 1 day":s<30*o?d(s/o,"day"):s<45*o?"about 1 month":s<365*o?d(s/(30*o),"month"):s<545*o?"about 1 year":d(s/(365*o),"year")},exports.formatDurationFromMs=function(e){const t=(Number.isFinite(e)?Math.max(e,0):0)/1e3;return t>=86400?p(t/24/60/60,"day"):t>=3600?p(t/60/60,"hour"):t>=60?p(t/60,"minute"):p(t,"second")},exports.formatLocalDateTime=function(t,n={}){const r="object"==typeof t&&null!==t?e(t):null;if(null===r)throw new TypeError("date must be a Date");if(!Number.isFinite(r))throw new RangeError("Invalid date");const o=n.precision??"minute";if("minute"!==o&&"second"!==o&&"millisecond"!==o)throw new TypeError("precision must be minute, second, or millisecond");const i=new Date(r),s=i.getFullYear();if(s<1)throw new RangeError("Date year must be greater than zero");const c=[a(s,4),a(i.getMonth()+1,2),a(i.getDate(),2)].join("-"),u=[a(i.getHours(),2),a(i.getMinutes(),2)];"minute"!==o&&u.push(a(i.getSeconds(),2));let l=`${c}T${u.join(":")}`;return"millisecond"===o&&(l+=`.${a(i.getMilliseconds(),3)}`),l},exports.genBrowserAttrs=function(e="",t="-"){const n=it(),r=[];return["system","platform","engine","supporter","shell","appleType"].forEach(o=>{const i=n[o];if(i){let n="";e&&e.length>0&&(n=`${e}${t}`),r.push(`${n}${i}`)}}),r},exports.genCustomConsole=ue,exports.genHashCode=function(e){let t,n,r=0;for(t=0;t<e.length;t++)n=e.charCodeAt(t),r=(r<<5)-r+n,r|=0;return r},exports.genRndNumString=N,exports.genStyleString=function(e,t){let n="";return t&&t.length>0&&(n=t.join(";")+";"),`${e}{${n}}`},exports.genUniqueNumString=O,exports.generateCalendarVersion=function(e){return g(void 0===e?new Date:new Date(e instanceof Date?e.getTime():e),"yyyy.MMdd.HHmmss").split(".").map(e=>String(Number(e))).join(".")},exports.generateRndNum=$,exports.generateUniqueNum=function(e=3){return O(e)},exports.getAllQueryParams=function(e=""){""===e&&(e=location.search);const t={};return Q(e).forEach(([e,n])=>{Object.hasOwn(t,e)||Object.defineProperty(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0})}),t},exports.getBrowserInfo=it,exports.getCLS=async function(){return Ve("layout-shift")?new Promise(e=>{const t=new window.PerformanceObserver(n=>{const r=n.getEntries().reduce((e,t)=>{let n=0;return _(t.value)&&(n=t.value),e+n},0);t.disconnect(),e(r)});t.observe({type:"layout-shift",buffered:!0})}):0},exports.getCookie=ze,exports.getCurrentVersion=function(){return"v4"},exports.getDateDifference=f,exports.getDefineListeners=Se,exports.getDomain=function(e,t=["hostname"]){try{const n=new URL(e,document.baseURI);return t.reduce((e,t)=>e+=n[t],"")}catch(n){const r=document.createElement("a");return r.href=e,t.reduce((e,t)=>e+=r[t],"")}},exports.getFCP=Ye,exports.getFID=async function(){return Ve("first-input")?new Promise(e=>{const t=new window.PerformanceObserver(n=>{const r=n.getEntries().find(e=>"first-input"===e.entryType);if(r){t.disconnect();const n=r.processingStart;e(n?Math.round(r.processingStart-r.startTime):0)}});t.observe({type:"first-input",buffered:!0})}):0},exports.getFP=Ze,exports.getFileSize=function(e,t={}){return B(e,t)},exports.getFriendlyInterval=function(e=0,t=0,n=u){return f(e,t,n)},exports.getHashQueryParam=function(e){const t=location.hash.split("?");return 1===t.length?"":G(`?${t.slice(1).join("?")}`,e)[0]||""},exports.getLCP=async function(){return Ve("largest-contentful-paint")?new Promise(e=>{const t=new window.PerformanceObserver(n=>{const r=n.getEntries().find(e=>"largest-contentful-paint"===e.entryType);r&&(t.disconnect(),e(Math.round(r.startTime)))});t.observe({type:"largest-contentful-paint",buffered:!0})}):0},exports.getLocalJSON=Oe,exports.getLocalStorage=De,exports.getPageMeta=function(e){const t=document.getElementsByTagName("meta");for(let n=0;n<t.length;n++)if(t[n].getAttribute("name")===e)return t[n].getAttribute("content")||"";return""},exports.getPerformance=async function(e=!1){if(!Ve("navigation"))return Promise.reject(new Error("navigation is not supported"));const t=window.performance;if(!t||"function"!=typeof t.getEntriesByType)return Promise.reject(new Error("performance is not supported"));let n;const r=new Promise(e=>{[n]=[e]}),o=t.getEntriesByType("navigation");if(!D(o))return Promise.reject(new Error("NavigationTiming is not supported"));const i=o[0];let[s,a,c,u,l,f,p,d,g,m,h,y,w,b,x,v,E,T,A]=new Array(19).fill(0);({decodedBodySize:T,encodedBodySize:A}=i),({unloadEventEnd:s,unloadEventStart:a,redirectEnd:c,redirectStart:u,domainLookupEnd:l,domainLookupStart:f,connectEnd:p,connectStart:d,secureConnectionStart:g,responseStart:m,requestStart:h,responseEnd:y,domContentLoadedEventStart:w,loadEventStart:b,loadEventEnd:x,startTime:v,fetchStart:E}=i);let C=0;if(_(v))C=v;else{if(!_(E))return Promise.reject(new Error("startTime, navigationStart or fetchStart are required"));C=E}const[N,$]=await Promise.all([Ze(),Ye()]);function O(){({decodedBodySize:T,encodedBodySize:A}=i),({unloadEventEnd:s,unloadEventStart:a,redirectEnd:c,redirectStart:u,domainLookupEnd:l,domainLookupStart:f,connectEnd:p,connectStart:d,secureConnectionStart:g,responseStart:m,requestStart:h,responseEnd:y,domContentLoadedEventStart:w,loadEventStart:b,loadEventEnd:x,startTime:v,fetchStart:E}=i),_(v)?C=v:_(E)&&(C=E);const t={source:"PerformanceNavigationTiming",os:M(),osVersion:j(),deviceType:L(),network:k(),screenDirection:P(),unloadTime:s-a,redirectTime:c-u,dnsTime:l-f,tcpTime:p-d,sslTime:F(p,g),responseTime:m-h,downloadTime:y-m,firstPaintTime:N,firstContentfulPaintTime:$,domReadyTime:w-C,onloadTime:b-C,whiteTime:m-C,renderTime:x-C,decodedBodySize:T,encodedBodySize:A};Object.keys(t).forEach(e=>{_(t[e])&&(t[e]<0?t[e]=0:t[e]=Math.round(t[e]))}),_(t.whiteTime)&&t.whiteTime>t.onloadTime&&(t.whiteTime=0);const r={};e||Object.keys(t).forEach(e=>{r[S(e)]=t[e]}),Object.keys(r).length?n(r):n(t)}function M(){let e;return e=navigator.userAgent.indexOf("Android")>-1?"android":navigator.userAgent.indexOf("iPhone")>-1?"ios":navigator.userAgent.indexOf("Windows Phone")>-1?"wp":"others",e}function j(){let e="";const t=navigator.userAgent,n=t.indexOf("Android")>-1,r=!!t.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),o=navigator.userAgent.split(";");if(o.length<2)return e;const i=o[1];return i?(n&&(e=(i.match(/\d+\.\d+/g)||[])[0]),r&&(e=(i.match(/(\d+)_(\d+)_?(\d+)?/)||[])[0]),e||(e=""),e):e}function L(){let e;const t=navigator.userAgent.toLowerCase(),n=t.match(/(ipad)/i)&&"ipad",r=t.match(/iphone os/i)&&"iphone os",o=t.match(/midp/i)&&"midp",i=t.match(/rv:1.2.3.4/i)&&"rv:1.2.3.4",s=t.match(/ucweb/i)&&"ucweb",a=t.match(/android/i)&&"android",c=t.match(/windows ce/i)&&"windows ce",u=t.match(/windows mobile/i)&&"windows mobile";return e=n||r||o||i||s||a||c||u?r||o||i||s||a||c||u?"phone":n?"ipad":void 0:"pc",e||(e=""),e}function k(){let e="";const t=window.navigator;if(t.connection&&t.connection.effectiveType)switch(t.connection.effectiveType){case"wifi":e="wifi";break;case"4g":e="4g";break;case"2g":e="2g";break;case"3g":e="3g";break;case"ethernet":e="ethernet";break;case"default":e=void 0}return e||(e=""),e}function P(){let e="";return window.screen&&window.screen.orientation&&"number"==typeof window.screen.orientation.angle&&(180!==window.screen.orientation.angle&&0!==window.screen.orientation.angle||(e="|"),90!==window.screen.orientation.angle&&-90!==window.screen.orientation.angle||(e="-")),e}function F(e,t){let n=0;return t&&(n=e-t),n}return _(x)&&x>0?O():"complete"===document.readyState?window.setTimeout(O,0):window.addEventListener("load",function e(){window.removeEventListener("load",e),window.setTimeout(function(){O()},0)}),r},exports.getQueryParam=function(e){return G(location.search,e)[0]||""},exports.getScriptQueryParam=function(e,t=""){t||(t=".js");const n=document.querySelectorAll("script[src]");for(let r=0;r<n.length;r++){const o=n[r].getAttribute("src");if(o&&-1!==o.indexOf(t)){const t=G(o,e)[0];if(void 0!==t)return t}}return""},exports.getSessionJSON=Ne,exports.getSessionStorage=Me,exports.getSystemTheme=dt,exports.getTTFB=async function(){if(!Ve("navigation"))return 0;if(!window.performance||!window.performance.getEntriesByType)return 0;const e=window.performance.getEntriesByType("navigation")[0];let t=0;return e?(t=e.responseStart-e.requestStart,Math.round(t)):0},exports.getUrlFileType=function(e){let t="";if("string"!=typeof e||""==e)return t;const n=e.split(/[?#]/,1)[0],r=/\.[^/]+$/.exec(n);return r?(r[0].length>1&&(t=r[0].substring(1)),t):t},exports.getUrlHost=function(e){!se(e)&&se(e,{strict:!1})&&e.startsWith("//")&&(e="https:"+e);try{return new URL(e).host}catch(e){return""}},exports.getUrlParam=function(e,t,n={}){const r=G(e,t);return n.returnArray?r:r.length?r[0]:null},exports.getUrlPath=function(e){!se(e)&&se(e,{strict:!1})&&e.startsWith("//")&&(e="https:"+e);try{return new URL(e).pathname}catch(e){return""}},exports.hasClass=function(e,t){if(!e)return le.error("The element is not exist."),!1;const n=e.className.split(/\s+/);for(let e=0;e<n.length;e++)if(n[e]===t)return!0;return!1},exports.hide=function(e){return ve(e).forEach(e=>{"none"!==Ee(e)&&"none"!==e.style.display&&he.set(e,e.style.display),e.style.display="none"}),e},exports.inRate=function(e){return y(e)},exports.invokeEvent=function(e,t){Ae(e,t)},exports.invokeFn=M,exports.isAndroid=function(e){return"android"===rt(e)},exports.isArray=function(e){return"[object Array]"===Object.prototype.toString.call(e)},exports.isBool=k,exports.isBoolean=function(e){return k(e)},exports.isBrowser=function(){if(V)return"browser"===V;const e="undefined"!=typeof window;return e&&(V="browser"),e},exports.isDesktop=function(e){return"desktop"===nt(e)},exports.isFunction=function(e){return"function"==typeof e},exports.isHit=y,exports.isIOS=function(e){return"ios"===rt(e)},exports.isJSONString=C,exports.isJsonString=function(e){return C(e)},exports.isLinux=function(e){return"linux"===rt(e)},exports.isMacOS=function(e){return"macos"===rt(e)},exports.isMobile=q,exports.isNonEmptyArray=D,exports.isNonEmptyObject=function(e){return!!L(e)&&0!==Object.keys(e).length},exports.isNumber=_,exports.isPhone=function(e){return"mobile"===nt(e)},exports.isPureObject=L,exports.isSafePWAEnv=function(e={}){if("undefined"==typeof window||"undefined"==typeof navigator)return!1;try{if(null===e||"object"!=typeof e||Array.isArray(e))return!1;const t=e.requireManifest,n=e.scope;if(void 0!==t&&"boolean"!=typeof t||void 0!==n&&"string"!=typeof n)return!1;if(!0!==window.isSecureContext||!("serviceWorker"in navigator))return!1;if(void 0!==n&&!function(e){const t=e.trim();if(!t||/[?#]/.test(t))return!1;try{const e=new URL(window.location.href),n=new URL(t,e);if(n.origin!==e.origin||""!==n.search||""!==n.hash)return!1;if(e.pathname===n.pathname)return!0;const r=n.pathname.endsWith("/")?n.pathname:`${n.pathname}/`;return e.pathname.startsWith(r)}catch(e){return!1}}(n))return!1;if(!1===t)return!0;if("undefined"==typeof document)return!1;const r=document.querySelector('link[rel~="manifest"][href]');return Boolean(r?.getAttribute("href")?.trim())}catch(e){return!1}},exports.isStandalonePWA=function(){if("undefined"==typeof window||"undefined"==typeof navigator)return!1;const e=navigator;try{const e=window.matchMedia;if("function"==typeof e&&e.call(window,"(display-mode: standalone)").matches)return!0}catch(e){}try{return!0===e.standalone}catch(e){return!1}},exports.isString=function(e){return"string"==typeof e},exports.isSupportWebp=function(){return st?Promise.resolve("webp"===st):new Promise(e=>{const t=new Image;t.onload=()=>{const n=t.width>0&&t.height>0;st=n?"webp":"no-webp",e(n)},t.onerror=()=>{st="no-webp",e(!1)},t.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAAAAAAfQ//73v/+BiOh/AAA="})},exports.isSupportedEntryType=Ve,exports.isTablet=function(e){return"tablet"===nt(e)},exports.isThisHour=function(e){const t=i(e);if(!t)return!1;const n=new Date;return t.getFullYear()===n.getFullYear()&&t.getMonth()===n.getMonth()&&t.getDate()===n.getDate()&&t.getHours()===n.getHours()},exports.isThisMonth=function(e){const t=i(e);if(!t)return!1;const n=new Date;return t.getFullYear()===n.getFullYear()&&t.getMonth()===n.getMonth()},exports.isThisWeek=function(e){const t=i(e);if(!t)return!1;const n=new Date,r=(n.getDay()+6)%7;n.setHours(0,0,0,0),n.setDate(n.getDate()-r);const o=new Date(n.getTime());o.setDate(o.getDate()+7);const s=t.getTime();return s>=n.getTime()&&s<o.getTime()},exports.isThisYear=function(e){const t=i(e);return null!==t&&t.getFullYear()===(new Date).getFullYear()},exports.isToday=function(e){const t=i(e);if(!t)return!1;const n=new Date;return t.getFullYear()===n.getFullYear()&&t.getMonth()===n.getMonth()&&t.getDate()===n.getDate()},exports.isUdfOrNul=function(e){return null==e},exports.isValidCssSelector=ge,exports.isValidData=function(e,t,n){if(null===e||"object"!=typeof e)return!1;let r=e;for(const e of t){if(null===r||"object"!=typeof r&&"function"!=typeof r||!Object.hasOwn(r,e))return!1;r=r[e]}return r===n},exports.isValidDate=function(e){return null!==i(e)},exports.isValidEmail=function(e){return/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e)},exports.isValidHttpUrl=se,exports.isValidPhoneNumber=H,exports.isValidUrl=function(e){return/^[a-zA-Z0-9]+:\/\/[-a-zA-Z0-9@:%._+~#=]{1,256}\b([-a-zA-Z0-9\u4E00-\u9FA5\u3002\uff1b\uff0c\uff1a\u201c\u201d\uff08\uff09\u3001\uff1f\u300a\u300b()!@:%_+.~#?&//=]*)$/.test(e)},exports.isWindows=function(e){return"windows"===rt(e)},exports.listenMediaQueryChanges=function(e,t){if("function"!=typeof t)throw new TypeError("listener must be a function");if(null===e)return()=>{};if("object"!=typeof e)throw new TypeError("media must be a MediaQueryList or null");const n=e.addEventListener,r=e.removeEventListener;let o=null;if("function"==typeof n&&"function"==typeof r){const i=t;n.call(e,"change",i),o=()=>r.call(e,"change",i)}let i=!1;return()=>{i||(i=!0,o?.())}},exports.loadCSS=Be,exports.loadImage=function(e){return new Promise((t,n)=>{const r=new Image;r.onload=()=>{t(r)},r.onerror=e=>{n(e)},r.src=e})},exports.loadScript=qe,exports.loadScriptIfUndefined=function(e,t){if(window[e])return Promise.resolve("defined");let n=We.get(e);const r=n?.get(t);if(r)return r;n||(n=new Map,We.set(e,n));const o=()=>{n?.delete(t),0===n?.size&&We.delete(e)},i=qe(t).then(e=>(o(),e),e=>{throw o(),e});return n.set(t,i),i},exports.longestComSubsequence=h,exports.longestComSubstring=m,exports.mNow=c,exports.mTrim=function(e){return e.trim()},exports.mazeyCon=le,exports.newLine=function(e){return P(e)},exports.onURLChange=function(e,t={}){const{fireOnInit:n=!0}=t,r=history;let o=location.href;const i=[],s=t=>{const n=location.href;if(n===o&&"load"!==t)return;const r=o;o=n,e({url:n,oldUrl:r,trigger:t})},a=()=>s("popstate"),c=()=>s("hashchange");window.addEventListener("popstate",a),window.addEventListener("hashchange",c),i.push(()=>window.removeEventListener("popstate",a)),i.push(()=>window.removeEventListener("hashchange",c)),r.__mazeyUrlChangePatched__||(r.__mazeyUrlChangePatched__=!0,r.__mazeyUrlChangeSubscribers__=new Set,r.__mazeyRawPushState__=history.pushState.bind(history),r.__mazeyRawReplaceState__=history.replaceState.bind(history),history.pushState=function(...e){r.__mazeyRawPushState__(...e),r.__mazeyUrlChangeSubscribers__.forEach(e=>e("pushState"))},history.replaceState=function(...e){r.__mazeyRawReplaceState__(...e),r.__mazeyUrlChangeSubscribers__.forEach(e=>e("replaceState"))});const u=e=>s(e);return r.__mazeyUrlChangeSubscribers__.add(u),i.push(()=>r.__mazeyUrlChangeSubscribers__.delete(u)),n&&s("load"),()=>{i.forEach(e=>e())}},exports.parseGitHubRepository=function(e){if("string"!=typeof e)throw new TypeError("value must be a string");const t=e.trim();if(!t||/[%\\?#]/.test(t)||function(e){for(let t=0;t<e.length;t++){const n=e.charCodeAt(t);if(n<=31||127===n)return!0}return!1}(t))throw ee();const n=t.match(/^(?:github:)?([^/:\s]+)\/([^/\s]+)$/i);if(n)return te(n[1],n[2]);const r=t.match(/^git@([^:\s]+):([^/\s]+)\/([^/\s]+)$/);if(r&&"github.com"===r[1].toLowerCase())return te(r[2],r[3]);const o=t.replace(/^git\+(?=(?:git|ssh|https?):\/\/)/i,""),i=o.match(/^[a-z][a-z\d+.-]*:\/\/([^/?#]+)/i);if(!i||/(^|\/)\.{1,2}(?:\/|$)/.test(o.slice(i[0].length)))throw ee();if(-1!==i[1].slice(i[1].lastIndexOf("@")+1).indexOf(":"))throw ee();let s;try{s=new URL(o)}catch(e){throw ee()}const a=s.protocol.toLowerCase(),c=s.hostname.toLowerCase().replace(/^www\./,"");if(!["git:","ssh:","http:","https:"].includes(a)||"github.com"!==c||""!==s.username&&"git"!==s.username||""!==s.password||""!==s.search||""!==s.hash)throw ee();const u=s.pathname.match(/^\/([^/]+)\/([^/]+)\/?$/);if(!u)throw ee();return te(u[1],u[2])},exports.parseJsonSafe=function(e,t=null){try{return JSON.parse(e)}catch(e){return t}},exports.parseLocalDateTime=function(e){if("string"!=typeof e)return null;const t=s.exec(e);if(!t)return null;const[n,i,a,c,u,l="0",f=""]=t.slice(1),p=Number(n),d=Number(i),g=Number(a),m=Number(c),h=Number(u),y=Number(l),w=Number(`${f}00`.slice(0,3));return p<1||!r(p,d,g,m,h,y,w)?null:o(p,d,g,m,h,y,w)},exports.removeClass=function(e,t){if(!e)return void le.error("The element is not exist.");let n;n=" "+e.className+" ",n=n.replace(/(\s+)/gi," "),n=n.replace(" "+t+" "," "),n=n.replace(/(^\s+)|(\s+$)/g,""),e.className=n},exports.removeCookie=Ie,exports.removeEvent=function(e,t){const n=Se(),r=n[e];if("string"==typeof e&&Array.isArray(r))if("function"==typeof t){for(let o=0,i=r.length;o<i;o++)if(r[o]===t){n[e].splice(o,1);break}}else delete n[e]},exports.removeHTML=F,exports.removeHtml=function(e,t={}){return F(e,t)},exports.repeatUntilConditionMet=function(e,t={},n=e=>!0===e){const{interval:r=1e3,times:o=10,context:i,args:s}=t;if("function"!=typeof e)return void console.error("Expected a function.");if(!Number.isFinite(r)||r<0)return void console.error("Expected a non-negative number for interval.");if(!Number.isFinite(o)||o<0)return void console.error("Expected a non-negative number for times.");if(0===o)return;let a=0;const c=()=>{setTimeout(async()=>{const t=await e.apply(i,s);n(t)||++a>=o||c()},r)};c()},exports.replaceHttp=function(e){return ae(e)},exports.resolveElementTarget=function(e,t){if(void 0===e)return me(t.defaultElement)?t.defaultElement:null;let n=t.unwrap?t.unwrap(e):e;if(null==n)return null;if("string"==typeof n)try{return t.root.querySelector(n)}catch(e){return null}return"object"==typeof n&&"$el"in n&&(n=n.$el),me(n)?n:null},exports.resolveLanguagePreference=function(e){at(e);const t=ht(ct("lang"));if(t)return wt(t);const n=ht(ut(e));return wt(n||(ht(function(){if("undefined"==typeof window||"undefined"==typeof navigator)return null;try{return"string"==typeof navigator.language?navigator.language:null}catch(e){return null}}())??"en"))},exports.resolveThemePreference=function(e){at(e);const t=ct(e);if(pt(t))return gt(t,t);const n=ut(e);if(pt(n))return gt(n,n);const r=dt();return"system"===n&&r||r?gt(r,"system"):gt("light","light")},exports.sanitizeInput=function(e){const t={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","/":"&#x2F;"};if("string"!=typeof e)throw new Error("Input must be a string");return e.replace(/[&<>"'/]/g,e=>t[e])},exports.setClass=function(e,t){pe(e,t)},exports.setCookie=function(e,t,n,r){let o;if(n){const e=new Date;e.setTime(e.getTime()+24*n*60*60*1e3),o="; expires="+e.toUTCString()}else o="";const i=function(e){let t=!0;for(let n=0;n<e.length;n++){const r=e.charCodeAt(n);if(!(33===r||r>=35&&r<=43||r>=45&&r<=58||r>=60&&r<=91||r>=93&&r<=126)){t=!1;break}}return{isEncoded:!t,value:t?e:encodeURIComponent(e)}}(t),s=Fe(e),a=i.isEncoded?"1":"",c=i.isEncoded?o:"; expires=Thu, 01 Jan 1970 00:00:00 GMT",u=[`${s}=${i.value}${o}; path=/`,`${Pe(e)}=${a}${c}; path=/`],l=e=>{const t=e?`; domain=${e}`:"";u.forEach(e=>{document.cookie=`${e}${t}`})},f=location.hostname;if(r)l(r);else if(-1===f.indexOf("."))l();else{const n=f.split(".");n.shift();l("."+n.join(".")),ze(e)!==t&&l(`.${f}`)}},exports.setImgSizeBySrc=de,exports.setImgWidHeiBySrc=function(){return de()},exports.setLanguagePreference=function(e,t){at(e);const n=ht(t);if(!n)throw new TypeError("language must be a valid language tag.");return lt(e,n)},exports.setLocalJSON=$e,exports.setLocalStorage=je,exports.setSessionJSON=Ce,exports.setSessionStorage=_e,exports.setThemePreference=function(e,t){if(at(e),!function(e){return"system"===e||pt(e)}(t))throw new TypeError('value must be "system", "light", or "dark".');return lt(e,t)},exports.sha256Hex=async function(e){const t="undefined"==typeof crypto?null:crypto;if(!t?.subtle||"function"!=typeof t.subtle.digest)throw new Error("Web Crypto API is not available.");let n=e;if("string"==typeof e){if("undefined"==typeof TextEncoder)throw new Error("TextEncoder is not available.");n=(new TextEncoder).encode(e)}const r=await t.subtle.digest("SHA-256",n);let o="";const i=new Uint8Array(r);for(let e=0;e<i.length;e++){const t=i[e].toString(16);o+=1===t.length?`0${t}`:t}return o},exports.show=function(e){return ve(e).forEach(e=>{he.has(e)?(e.style.display=he.get(e),he.delete(e)):"none"===e.style.display&&(e.style.display=""),""===e.style.display&&"none"===Ee(e)&&(e.style.display=Te(e))}),e},exports.sleep=async function(e){return W(e)},exports.subYears=function(t,n){const r="number"==typeof t?t:"object"==typeof t&&null!==t?e(t):null,o=new Date(r??NaN),i="number"==typeof n?n<0?Math.ceil(n):Math.floor(n):NaN;if(!Number.isFinite(o.getTime())||!Number.isFinite(i))return new Date(NaN);if(0===i)return o;const s=o.getMonth(),a=o.getDate(),c=o.getFullYear()-i,u=new Date(o.getTime());return u.setFullYear(c,s+1,0),a>=u.getDate()?u:(o.setFullYear(c,s,a),o)},exports.throttle=function(e,t,n={}){n=Object.assign({},n);let r=null,o=null,i=null,[s,a]=[null,0];const u=function(){a=!1===n.leading?0:c(),i=null,s=e.apply(this,o),i||(r=o=null)};return function(...l){const f=c();a||!1!==n.leading||(a=f);const p=t-(f-a);return r=this,o=l,p<=0||p>t?(i&&(clearTimeout(i),i=null),a=f,s=e.apply(r,o),i||(r=o=null)):i||!1===n.trailing||(i=setTimeout(u.bind(r),p)),s}},exports.timeCon=fe,exports.toJavaScriptGlobalName=A,exports.truncateZHString=z,exports.unsanitize=function(e){return R(e)},exports.unsanitizeInput=R,exports.updateQueryParam=function(e,t,n){const r=e.indexOf("#"),o=-1===r?"":e.slice(r),i=-1===r?e:e.slice(0,r),s=i.indexOf("?"),a=-1===s?i:i.slice(0,s),c=-1===s?"":i.slice(s+1),u=encodeURIComponent(t),l=encodeURIComponent(n);let f=!1;const p=(c?c.split("&").filter(Boolean):[]).reduce((e,n)=>{const r=n.indexOf("=");return J(-1===r?n:n.slice(0,r))===t?f||(e.push(`${u}=${l}`),f=!0):e.push(n),e},[]);return f||p.push(`${u}=${l}`),`${a}?${p.join("&")}${o}`},exports.waitTime=W,exports.watchServiceWorkerUpdates=function(e,t,n){if(null===e||"object"!=typeof e||"function"!=typeof e.addEventListener||"function"!=typeof e.removeEventListener)throw new TypeError("registration must support event listeners");if(null===t||"object"!=typeof t||"function"!=typeof t.addEventListener||"function"!=typeof t.removeEventListener)throw new TypeError("container must support event listeners");if(null===n||"object"!=typeof n||"function"!=typeof n.onUpdateAvailable||void 0!==n.onControllerChange&&"function"!=typeof n.onControllerChange)throw new TypeError("callbacks must provide onUpdateAvailable");let r=!1,o=null,i=null,s=!1,a=!1;const c=e=>{r||i===e||(i=e,n.onUpdateAvailable(e))},u=()=>{!r&&"installed"===o?.state&&t.controller&&c(o)},l=()=>{r||(o?.removeEventListener("statechange",u),o=e.installing,o?.addEventListener("statechange",u),u())},f=()=>{r||n.onControllerChange?.()},p=()=>{if(s){try{e.removeEventListener("updatefound",l)}catch(e){}s=!1}try{o?.removeEventListener("statechange",u)}catch(e){}if(a){try{t.removeEventListener("controllerchange",f)}catch(e){}a=!1}};try{e.addEventListener("updatefound",l),s=!0,t.addEventListener("controllerchange",f),a=!0,e.waiting&&t.controller&&c(e.waiting),e.installing&&l()}catch(e){throw r=!0,p(),o=null,i=null,e}return{activateWaiting(e={type:"SKIP_WAITING"}){if(r||!i)return!1;try{return i.postMessage(e),!0}catch(e){return!1}},dispose(){r||(r=!0,p(),o=null,i=null)}}},exports.windowLoaded=function(e=3e4){return new Promise((t,n)=>{let r=null;const o=()=>{window.removeEventListener("load",i),null!==r&&(clearTimeout(r),r=null)},i=()=>{o(),t("load")};"complete"!==document.readyState?(window.addEventListener("load",i),r=setTimeout(()=>{o(),n(new Error("timeout"))},e)):t("complete")})},exports.zAxiosIsValidRes=function(e,t={validStatusRange:[200,300],validCode:[0]}){const n=t||{},{validStatusRange:r=[200,300],validCode:o=[0]}=n;2!==r.length&&console.error("valid validStatusRange is required");let i=!1;if(e&&e.status&&2===r.length&&e.status>=r[0]&&e.status<r[1]){const t=e.data;t&&o.includes(t.code)&&(i=!0)}return i};
6
+ "use strict";function e(e){try{return Date.prototype.getTime.call(e)}catch(e){return null}}const t=/^(\d{4})-(\d{2})-(\d{2})(?:[ T](\d{2}):(\d{2})(?::(\d{2}))?)?$/,n=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2})(?::(\d{2})(?:\.(\d{1,3}))?)?(Z|[+-]\d{2}:\d{2})$/;function r(e,t,n,r,o,i,s=0,a=!1){const c=new Date(0);return a?(c.setUTCFullYear(e,t-1,n),c.setUTCHours(r,o,i,s),Number.isFinite(c.getTime())&&c.getUTCFullYear()===e&&c.getUTCMonth()===t-1&&c.getUTCDate()===n&&c.getUTCHours()===r&&c.getUTCMinutes()===o&&c.getUTCSeconds()===i&&c.getUTCMilliseconds()===s):(c.setFullYear(e,t-1,n),c.setHours(r,o,i,s),Number.isFinite(c.getTime())&&c.getFullYear()===e&&c.getMonth()===t-1&&c.getDate()===n&&c.getHours()===r&&c.getMinutes()===o&&c.getSeconds()===i&&c.getMilliseconds()===s)}function o(e,t,n,r,o,i,s=0){const a=new Date(0);return a.setFullYear(e,t-1,n),a.setHours(r,o,i,s),a}function i(i){if("number"==typeof i){const e=new Date(i);return Number.isFinite(i)&&Number.isFinite(e.getTime())?e:null}if("object"==typeof i&&null!==i){const t=e(i);return null!==t&&Number.isFinite(t)?new Date(t):null}if("string"!=typeof i)return null;const s=i.trim();if(!s)return null;const a=t.exec(s);if(a){const[e,t,n,i="0",s="0",c="0"]=a.slice(1),[u,l,f,p,d,m]=[e,t,n,i,s,c].map(Number);return r(u,l,f,p,d,m)?o(u,l,f,p,d,m):null}const c=n.exec(s);if(!c)return null;const[u,l,f,p,d,m="0",g="",h]=c.slice(1),y=Number(`${g}00`.slice(0,3));if(!r(Number(u),Number(l),Number(f),Number(p),Number(d),Number(m),y,!0))return null;if("Z"!==h){const e=Number(h.slice(1,3)),t=Number(h.slice(4,6));if(e>23||t>59)return null}return function(e,t,n,r,o,i,s,a){const c=new Date(0);if(c.setUTCFullYear(e,t-1,n),c.setUTCHours(r,o,i,s),"Z"===a)return c;const u="+"===a[0]?1:-1,l=60*Number(a.slice(1,3))+Number(a.slice(4,6));return new Date(c.getTime()-u*l*60*1e3)}(Number(u),Number(l),Number(f),Number(p),Number(d),Number(m),y,h)}const s=/^(\d{4,})-(\d{2})-(\d{2})T(\d{2}):(\d{2})(?::(\d{2})(?:\.(\d{1,3}))?)?$/;function a(e,t){const n=String(e);return n.length>=t?n:`${"0".repeat(t-n.length)}${n}`}function c(){return Date.now()}const u={type:"d"};function l(e){return"string"==typeof e&&/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/.test(e)?e.replace(" ","T"):e}function f(e=0,t=0,n=u){n=Object.assign({},u,n);const{type:r}=n;"number"==typeof e&&Number.isFinite(e)||(e=new Date(l(e)).getTime()),"number"==typeof t&&Number.isFinite(t)||(t=new Date(l(t)).getTime());const o=Number(t)-Number(e);let i="",[s,a,c,f]=new Array(4).fill(0);if(o>=0)switch(s=Math.floor(o/1e3/60/60/24),a=Math.floor(o/1e3/60/60),c=Math.floor(o/1e3/60),f=Math.floor(o/1e3),r){case"d":i=s;break;case"text":s=Math.floor(o/1e3/60/60/24),a=Math.floor(o/1e3/60/60%24),c=Math.floor(o/1e3/60%60),f=Math.floor(o/1e3%60),i=[{value:s,unit:"day"},{value:a,unit:"hour"},{value:c,unit:"minute"},{value:f,unit:"second"}].filter(({value:e})=>e>0).map(({value:e,unit:t})=>p(e,t)).join(" ")||p(0,"second");break;default:i=f}return i}function p(e,t){const n=Math.round(10*e)/10;return`${n} ${1===n?t:`${t}s`}`}function d(e,t){const n=Math.max(1,Math.round(e));return`about ${n} ${t}${1===n?"":"s"}`}function m(e,t="yyyy-MM-dd"){void 0===e&&(e=new Date);const n=new Date(e);if(!Number.isFinite(n.getTime()))throw new RangeError("Invalid date");const r=n.getHours(),o={yyyy:n.getFullYear(),MM:n.getMonth()+1,dd:n.getDate()<10?"0"+n.getDate():n.getDate(),HH:r<10?"0"+r:r,hh:(r%12||12)<10?"0"+(r%12||12):r%12||12,mm:n.getMinutes()<10?"0"+n.getMinutes():n.getMinutes(),ss:n.getSeconds()<10?"0"+n.getSeconds():n.getSeconds(),a:r<12?"AM":"PM"};let i=t||"yyyy-MM-dd";return Object.keys(o).forEach(e=>{let t=o[e];"MM"===e&&Number(t)<=9&&(t=`0${t}`),i=i.split(e).join(String(t))}),i}function g(e,t){const n=e.length,r=t.length;if(0===n||0===r)return 0;const o=Array.from({length:n},()=>new Array(r).fill(0));let i=0;for(let s=0;s<n;++s)for(let n=0;n<r;++n)if(e[s]===t[n]){let e=0;s>0&&n>0&&(e=o[s-1][n-1]),o[s][n]=e+1,i=Math.max(i,o[s][n])}return i}function h(e,t){const n=e.length,r=t.length;if(0===n||0===r)return 0;const o=Array.from({length:n},()=>new Array(r).fill(0));for(let i=0;i<n;++i)for(let n=0;n<r;++n)if(e[i]===t[n]){let e=0;i>0&&n>0&&(e=o[i-1][n-1]),o[i][n]=e+1}else{let[e,t]=[0,0];n>0&&(e=o[i][n-1]),i>0&&(t=o[i-1][n]),o[i][n]=Math.max(e,t)}return o[n-1][r-1]}function y(e){return Math.random()<e}const w=Function.prototype.toString.call(Object);function b(e,t,n){const r=Object.getOwnPropertyDescriptor(t,n)?.get;if(!r)return!1;try{return r.call(e),!0}catch(e){return!1}}function x(e){return null===e||"object"!=typeof e?e:v(e,new WeakMap)}function v(t,n){if(null===t||"object"!=typeof t)return t;const r=t,o=n.get(r);if(void 0!==o)return o;const i=e(r);if(null!==i){const e=new Date(i);return n.set(r,e),e}const s=function(e){const t=Object.getOwnPropertyDescriptor(RegExp.prototype,"source")?.get;if(!t)return null;try{return t.call(e)}catch(e){return null}}(r);if(null!==s){const e=t,o=new RegExp(s,function(e){return e.flags}(e));return o.lastIndex=e.lastIndex,n.set(r,o),o}if("undefined"!=typeof ArrayBuffer&&b(r,ArrayBuffer.prototype,"byteLength")){const e=ArrayBuffer.prototype.slice.call(t,0);return n.set(r,e),e}if("undefined"!=typeof SharedArrayBuffer&&b(r,SharedArrayBuffer.prototype,"byteLength")){const e=SharedArrayBuffer.prototype.slice.call(t,0);return n.set(r,e),e}if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&ArrayBuffer.isView(t)){const e=v(t.buffer,n),o="undefined"!=typeof DataView&&b(r,DataView.prototype,"byteLength")?new DataView(e,t.byteOffset,t.byteLength):new t.constructor(e,t.byteOffset,t.length);return n.set(r,o),o}if("undefined"!=typeof Map&&b(r,Map.prototype,"size")){const e=new Map;return n.set(r,e),Map.prototype.forEach.call(t,(t,r)=>{e.set(v(r,n),v(t,n))}),e}if("undefined"!=typeof Set&&b(r,Set.prototype,"size")){const e=new Set;return n.set(r,e),Set.prototype.forEach.call(t,t=>{e.add(v(t,n))}),e}const a=Array.isArray(t),c=Object.getPrototypeOf(t),u=function(e){const t=Object.getPrototypeOf(e);if(null===t)return!0;const n=Object.hasOwn(t,"constructor")?t.constructor:null;return"function"==typeof n&&Function.prototype.toString.call(n)===w}(r),l=!a&&!u&&function(e){const t=Object.getPrototypeOf(e),n=t?.constructor;return"function"==typeof n&&-1===Function.prototype.toString.call(n).indexOf("[native code]")}(r);if(!a&&!u&&!l)return n.set(r,t),t;const f=a?new Array(t.length):Object.create(l?Object.prototype:c);return n.set(r,f),function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}(r).forEach(e=>{if(a&&"length"===e)return;const t=Object.getOwnPropertyDescriptor(r,e);t&&("value"in t&&(t.value=v(t.value,n)),Object.defineProperty(f,e,t))}),f}function E(e){const t=e.replace(/([A-Z])/g,"-$1").toLowerCase();return"-"===t[0]?t.substring(1):t}function T(e){const t=e.replace(/([A-Z])/g,"_$1").toLowerCase();return"_"===t[0]?t.substring(1):t}function S(e){return T(e)}function A(e){if("string"!=typeof e)throw new TypeError("value must be a string");const t=e.replace(/[^A-Za-z0-9_$]/g,"_").toUpperCase();return/^[A-Za-z_$]/.test(t)?t:`_${t}`}function N(e){if("string"!=typeof e)return!1;try{return JSON.parse(e),!0}catch(e){}return!1}function C(e=5){if(!Number.isFinite(e)||e<=0)return"";e=Math.floor(e);let t="";for(;e--;)t+=Math.floor(10*Math.random());return t}function $(e=5){return C(e)}function O(e=3){const[t,n]=[c(),$(e||3)];return t+n}function _(e,t={}){const{isNaNAsNumber:n=!1,isInfinityAsNumber:r=!1,isUnFiniteAsNumber:o=!1,integer:i=!1,min:s,max:a}=t;return"number"==typeof e&&(!(!0!==r&&!0!==o&&!isFinite(e))&&(!(!n&&isNaN(e))&&((void 0===s||"number"==typeof s&&!Number.isNaN(s))&&((void 0===a||"number"==typeof a&&!Number.isNaN(a))&&(!(void 0!==s&&void 0!==a&&s>a)&&(!(!0===i&&!Number.isInteger(e))&&((void 0===s&&void 0===a||!Number.isNaN(e))&&!(void 0!==s&&e<s||void 0!==a&&e>a))))))))}function j(e,...t){let n=null;return e&&"function"==typeof e&&(n=e(...t)),n}function M(e,...t){return j(e,...t)}function D(e){let t=!1;return Array.isArray(e)&&e.length&&(t=!0),t}function L(e){const t=Boolean(e),n="object"==typeof e,r="[object Object]"===Object.prototype.toString.call(e);return t&&n&&r}function k(e){return"boolean"==typeof e}function P(e){if(!e)return"";const t=new RegExp("\\n","g");return e.replace(t,"<br />")}function F(e,t={}){const{removeNewLine:n=!1}=t;let r="";return e&&(r=e.replace(/<\/?.+?>/g,""),n&&(r=r.replace(/[\r\n]/g,""))),r}function R(e){const t={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#x27;":"'","&#x2F;":"/"};if("string"!=typeof e)throw new Error("Input must be a string");return e.replace(/(&amp;|&lt;|&gt;|&quot;|&#x27;|&#x2F;)/g,e=>t[e])}function U(e,t,n={hasDot:!1,dotText:"..."}){if(n=Object.assign({hasDot:!1,dotText:"..."},n),""!=e&&e){let r=0,o="";const i=/[^\x00-\xff]/g;let s="";const a=e.replace(i,"**").length;for(let n=0;n<a&&(s=e.charAt(n).toString(),null!=s.match(i)?r+=2:r++,!(r>t));n++)o+=s;return n.hasDot&&a>t&&(o+=n.dotText),o}return""}function z(e,t,n=!1){return U(e,t,{hasDot:n})}const I=["B","KB","MB","GB","TB"];function B(e,t={}){const{base:n=1024,fractionDigits:r=1,invalidValue:o=""}=t;if(!Number.isFinite(e)||e<0||1e3!==n&&1024!==n||!Number.isInteger(r)||r<0||r>20)return o;let i=e,s=0;for(;i>=n&&s<I.length-1;)i/=n,s+=1;return 0===s?`${Number(i.toFixed(r))} ${I[s]}`:`${i.toFixed(r)} ${I[s]}`}function H(e){return/^1\d{10}$/.test(e)}const q=H;async function W(e){return new Promise(t=>{setTimeout(()=>{t(e)},e)})}let V="";function Y(e,t){const n=e[t];if(void 0!==n&&"string"!=typeof n)throw new TypeError(`manifest.${t} must be a string when provided`);return n}function Z(e){if(void 0===e)return{name:""};if("string"==typeof e)return{name:e.trim()};if(null===e||"object"!=typeof e||Array.isArray(e))throw new TypeError("manifest.author must be a string or object");const t=e,n={name:""};for(const e of["name","email","url"]){const r=t[e];if(void 0!==r&&"string"!=typeof r)throw new TypeError(`manifest.author.${e} must be a string when provided`);if("string"==typeof r){const t=r.trim();("name"===e||t)&&(n[e]=t)}}return n}function J(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch(t){return e}}function Q(e){const t=e.indexOf("#"),n=-1===t?e:e.slice(0,t),r=n.indexOf("?"),o=/^(?:[a-z][a-z\d+.-]*:)?\/\//i.test(n)||"/"===n.charAt(0),i=-1===r?o?"":n:n.slice(r+1);return i?i.split("&").reduce((e,t)=>{if(!t||-1===t.indexOf("="))return e;const n=t.indexOf("=");return e.push([J(t.slice(0,n)),J(t.slice(n+1))]),e},[]):[]}function G(e,t){return Q(e).filter(([e])=>e===t).map(([,e])=>e)}const K=/^(?=.{1,39}$)(?!.*--)[A-Za-z0-9](?:[A-Za-z0-9-]*[A-Za-z0-9])?$/,X=/^(?=.{1,100}$)(?!\.{1,2}$)[A-Za-z0-9_.-]+$/;function ee(){return new Error("The value does not identify one supported GitHub repository")}function te(e,t){const n=t.replace(/\.git$/i,"");if(!K.test(e)||!X.test(n))throw ee();const r=`${e}/${n}`;return{owner:e,name:n,slug:r,url:`https://github.com/${r}`}}function ne(e){return void 0===e||Number(e)<=65535}function re(e){const t=e.split(".");return 4===t.length&&t.every(e=>/^\d{1,3}$/.test(e)&&(1===e.length||"0"!==e.charAt(0))&&Number(e)<=255)}function oe(e){const t=e.split("::");if(t.length>2)return!1;const n=2===t.length;let r=[];t.forEach(e=>{e&&(r=r.concat(e.split(":")))});let o=0;for(let e=0;e<r.length;e++){const t=r[e];if(-1!==t.indexOf(".")){if(e!==r.length-1||!re(t))return!1;o+=2}else{if(!/^[0-9a-f]{1,4}$/i.test(t))return!1;o+=1}}return n?o<8:8===o}function ie(e){const t=e.match(/^\[([0-9a-f:.]+)\]$/i);if(t)return oe(t[1]);if("."===e.charAt(e.length-1)&&(e=e.slice(0,-1)),re(e))return!0;const n=e.split(".");return!(n.length<2||n.some(e=>!e||!/^[a-z\d-]+$/i.test(e)||"-"===e.charAt(0)||"-"===e.charAt(e.length-1)))&&!/^\d+$/.test(n[n.length-1])}function se(e,t={strict:!0}){if("string"!=typeof e||!e||e.trim()!==e)return!1;const n=/^https?:\/\/[^/\\]/i.test(e),r=/^\/\/[^/\\]/.test(e);if(!n&&(t.strict||!r))return!1;const o=r?`http:${e}`:e;if(!function(e){const t=e.match(/^https?:\/\/([^/?#]+)(?:[/?#][^\s<>"`]*)?$/i);if(!t||-1!==t[1].indexOf("@"))return!1;const n=t[1],r=n.match(/^\[([0-9a-f:.]+)\](?::(\d*))?$/i);if(r)return oe(r[1])&&ne(r[2]);const o=n.match(/^([^:]+)(?::(\d*))?$/);return!(!o||!ne(o[2]))&&ie(o[1])}(o))return!1;try{const e=new URL(o);return("http:"===e.protocol||"https:"===e.protocol)&&ie(e.hostname)&&!e.username&&!e.password}catch(e){return!1}}function ae(e){return e.replace(/^http:/,"https:")}const ce={enabled:!0,isClosed:!1,showWrap:!1,showDate:!1,locales:"en-US",isStringifyObject:!1,logFn:()=>{},errorFn:()=>{}};function ue(e="",t={...ce}){const{enabled:n,isClosed:r,showWrap:o,showDate:i,locales:s,isStringifyObject:a,logFn:c,errorFn:u}=Object.assign({...ce},t);let l=n;!0===r&&(le.warn("The options.isClosed is deprecated. Please use options.enabled instead."),l=!1);const f=Object.create(null),p=()=>(new Date).toLocaleDateString(s,{weekday:"short",year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"});return["log","info","warn","error"].forEach(t=>{f[t]=function(...n){if(!l)return;let r=e,s=e;if("string"==typeof e&&e.length>=2){const t=e.length;r=":"===e[t-1]?e.substring(0,t-1):e}o&&console.log(`--- ${r} - begin ---`),i&&(s=e?`${p()} ${e}`:`${p()}`),a&&(n=n.map(e=>L(e)?JSON.stringify(e):e)),e||i?console[t](s,...n):console[t](...n),"log"===t&&c(),"error"===t&&u(),o&&console.log(`--- ${r} - end ---`)}}),f}const le=ue("[Mazey]"),fe=ue("",{showDate:!0,locales:"zh-CN",isStringifyObject:!0});function pe(e,t){if(!e)return void le.error("The element is not exist.");if(Array.isArray(t))return void t.forEach(t=>{t&&e.classList.add(t)});if(!t)return;const n=e.className,r=n.split(/\s+/);for(let e=0;e<r.length;e++)if(r[e]===t)return;let o="",i="";""!==n&&(o=" "),i=n+o+t,e.className=i}function de(){const e=window.jQuery||window.$;if(e){const t=e("img");return!(!t||!t.length)&&(t.each(function(){const t=e(this);if(!t)return;const n=t.attr("src");if(!(n&&"string"==typeof n&&n.length))return;const r=n.match(/[?&]width=([0-9]+[a-z%]*)/),o=n.match(/[?&]height=([0-9]+[a-z%]*)/);r&&D(r)&&r[1]&&t.width(r[1]),o&&D(o)&&o[1]&&t.height(o[1])}),!0)}{const e=document.getElementsByTagName("img");if(e.length>0)return Array.from(e).forEach(function(e){const t=e;if(!t)return;const n=t.getAttribute("src");if(!(n&&"string"==typeof n&&n.length))return;const r=n.match(/[?&]width=([0-9]+[a-z%]*)/),o=n.match(/[?&]height=([0-9]+[a-z%]*)/);r&&D(r)&&r[1]&&(t.style.width=r[1]),o&&D(o)&&o[1]&&(t.style.height=o[1])}),!0}return!1}function me(e,t={}){if("string"!=typeof e)return!1;const n=e.trim();if(!n)return!0===t.allowEmpty;const r=t.root||("undefined"==typeof document?null:document);if(!r)return!1;try{return r.querySelector(n),!0}catch(e){return!1}}function ge(e){return Boolean(e&&"object"==typeof e&&1===e.nodeType&&"string"==typeof e.nodeName&&"function"==typeof e.getAttribute)}const he=new WeakMap,ye=new WeakMap,we={button:"inline-block",input:"inline-block",select:"inline-block",textarea:"inline-block",table:"table",caption:"table-caption",colgroup:"table-column-group",col:"table-column",thead:"table-header-group",tbody:"table-row-group",tfoot:"table-footer-group",tr:"table-row",td:"table-cell",th:"table-cell",li:"list-item",summary:"list-item"},be=new Set(["address","article","aside","blockquote","body","dd","details","dialog","div","dl","dt","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","hr","html","main","nav","ol","p","pre","section","ul"]);function xe(e){if(!ge(e))return null;const t=e.style;return t&&"string"==typeof t.display?e:null}function ve(e){const t=new Set,n=e=>{const n=xe(e);n&&t.add(n)};if("string"==typeof e){if("undefined"==typeof document)return[];try{document.querySelectorAll(e).forEach(n)}catch(e){return[]}return Array.from(t)}const r=xe(e);if(r)return[r];if(!e||"object"!=typeof e)return[];if("function"==typeof e[Symbol.iterator]){for(const t of e)n(t);return Array.from(t)}const o=e.length;if(!Number.isSafeInteger(o)||o<0)return[];for(let t=0;t<o;t+=1)n(e[t]);return Array.from(t)}function Ee(e){const t=e.ownerDocument.defaultView;return t?t.getComputedStyle(e).display:null}function Te(e){const t=e.ownerDocument,n=e.localName.toLowerCase();let r=ye.get(t);r||(r=new Map,ye.set(t,r));const o=e.namespaceURI||"",i=`${o}:${n}`,s=r.get(i);if(s)return s;let a="";const c="http://www.w3.org/1999/xhtml"===o&&n.includes("-"),u=t.body||t.documentElement;if(u&&!c){const e=o&&"http://www.w3.org/1999/xhtml"!==o?t.createElementNS(o,n):t.createElement(n);u.appendChild(e);try{a=Ee(e)||""}finally{u.removeChild(e)}}return a&&"none"!==a||(a=function(e){return we[e]?we[e]:be.has(e)?"block":"inline"}(n)),r.set(i,a),a}function Se(){const e=window.MAZEY_DEFINE_LISTENERS;if(e&&"object"==typeof e)return e;const t=Object.create(null);return window.MAZEY_DEFINE_LISTENERS=t,t}function Ae(e,t){const n=Se()[e];if(Array.isArray(n)){const e=n.slice();for(let n=0,r=e.length;n<r;n++)"function"==typeof e[n]&&(void 0===t?e[n]():e[n](t))}}function Ne(e,t=null){if(e){const n=JSON.stringify(t);sessionStorage.setItem(e,void 0===n?"null":n)}}function Ce(e){let t=null;if(e){const n=sessionStorage.getItem(e);if(n)try{t=JSON.parse(n)}catch(e){t=n}}return t}function $e(e,t=null){if(e){const n=JSON.stringify(t);localStorage.setItem(e,void 0===n?"null":n)}}function Oe(e){let t=null;if(e){const n=localStorage.getItem(e);if(n)try{t=JSON.parse(n)}catch(e){t=n}}return t}const _e=Ne,je=Ce,Me=$e,De=Oe,Le="__mazey_cookie_name_encoded__-",ke="__mazey_cookie_value_encoded__-";function Pe(e){return`${ke}${encodeURIComponent(e)}`}function Fe(e){const t=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/.test(e),n=0===e.indexOf(Le)||0===e.indexOf(ke);return t&&!n?e:function(e){return`${Le}${encodeURIComponent(e)}`}(e)}function Re(e){const t=Fe(e);return t!==e?[t,e]:[e]}function Ue(e){const t=e+"=",n=document.cookie.split(";");for(let e=0;e<n.length;e++){const r=n[e].trim();if(0===r.indexOf(t))return r.substring(t.length)}}function ze(e){const t=Re(e),n="1"===Ue(Pe(e));for(let e=0;e<t.length;e++){const r=Ue(t[e]);if(void 0!==r){if(n)try{return decodeURIComponent(r)}catch(e){return r}return r}}return""}function Ie(e){const t=Re(e),n=t.concat(Pe(e)),r=new Date;r.setTime(r.getTime()-1);const o=t.some(e=>void 0!==Ue(e));return n.forEach((e,t)=>{if(n.indexOf(e)===t&&void 0!==Ue(e)){[`${e}=; expires=${r.toUTCString()}`,`${e}=; expires=${r.toUTCString()}; path=/`].forEach(e=>{document.cookie=e;const t=location.hostname;if(-1!==t.indexOf(".")){const n=t.split(".");for(let t=0;t<n.length;t++)document.cookie=`${e}; domain=.${n.slice(t).join(".")}`}})}}),o&&n.every(e=>void 0===Ue(e))}function Be(e,t={id:""}){const{id:n}=t;return new Promise((t,r)=>{const o=document.createElement("link");let i=!1;const s=()=>{o.onload=null,o.onerror=null};o.rel="stylesheet",o.type="text/css",o.href=e,void 0!==n&&(o.id=n),o.onload=()=>{i||(i=!0,s(),t("loaded"))},o.onerror=()=>{i||(i=!0,s(),r(new Error(`Failed to load CSS: ${e}`)))},document.head.appendChild(o)})}const He={id:"",callback:function(){},timeout:5e3,isDefer:!1,isAsync:!1,isCrossOrigin:!1,attributes:null,cssUrl:""};function qe(e,t={...He}){const{id:n,callback:r,timeout:o,isDefer:i,isAsync:s,isCrossOrigin:a,attributes:c,cssUrl:u}=Object.assign({...He},t);if(u){const t=function(e,t){if(!t)return"";if(se(t))return t;try{const n=new URL(e,location.href);return new URL(t,n).href}catch(n){const r=e.split("/");return r.pop(),`${r.join("/")}/${t}`}}(e,u);t&&Be(t).catch(e=>{console.error(`Failed to load CSS from ${t}: ${e?.message}`)})}return new Promise((t,u)=>{const l=document.createElement("script");let f=!1,p=null;const d=()=>{l.onload=null,l.onerror=null,null!==p&&(clearTimeout(p),p=null)},m=e=>{f||(f=!0,d(),u(e))};l.type="text/javascript",l.defer=Boolean(i),l.async=Boolean(s),a&&(l.crossOrigin="anonymous"),n&&(l.id=n),c&&Object.keys(c).forEach(e=>{l.setAttribute(e,c[e])}),l.onload=()=>{if(!f){f=!0,d();try{M(r),t("loaded")}catch(e){u(e)}}},l.onerror=()=>m(new Error(`Failed to load script: ${e}`)),l.src=e,o&&(p=setTimeout(()=>m(new Error("timeout")),o));const g=document.getElementsByTagName("script")[0];if(g?.parentNode)g.parentNode.insertBefore(l,g);else{(document.head||document.body||document.documentElement).appendChild(l)}})}const We=new Map;function Ve(e){if("undefined"==typeof window)return!1;let t=[];const n=window.PerformanceObserver;return!!n&&(D(n.supportedEntryTypes)&&(t=n.supportedEntryTypes),t.includes(e))}async function Ye(){return Ve("paint")?new Promise(e=>{const t=new window.PerformanceObserver(n=>{const r=n.getEntries().find(e=>"first-contentful-paint"===e.name);r&&(t.disconnect(),e(Math.round(r.startTime)))});t.observe({type:"paint",buffered:!0})}):0}async function Ze(){return Ve("paint")?new Promise(e=>{const t=new window.PerformanceObserver(n=>{const r=n.getEntries().find(e=>"first-paint"===e.name);r&&(t.disconnect(),e(Math.round(r.startTime)))});t.observe({type:"paint",buffered:!0})}):0}function Je(e,t=e.userAgent.trim().toLowerCase()){return/\bmacintosh\b/.test(t)&&"macintel"===e.platform.toLowerCase()&&e.maxTouchPoints>1}const Qe=Object.freeze(["adsbot-google","ahrefsbot","amazonbot","applebot","baiduspider","bingbot","bingpreview","bytespider","ccbot","chatgpt-user","claudebot","discordbot","dotbot","duckduckbot","facebookexternalhit","facebot","google-inspectiontool","googlebot","googleother","gptbot","linkedinbot","mediapartners-google","mj12bot","perplexitybot","petalbot","semrushbot","slackbot","slurp","storebot-google","telegrambot","twitterbot","whatsapp","yandexbot"]),Ge=Object.freeze(["headlesschrome","phantomjs","slimerjs","selenium","puppeteer","playwright"]);function Ke(){try{return"undefined"==typeof navigator?null:navigator}catch(e){return null}}function Xe(){const e=Ke();if(!e)return{userAgent:"",platform:"",maxTouchPoints:0};let t="",n="",r=0;try{const n=e.userAgent;t="string"==typeof n?n:""}catch(e){return{userAgent:"",platform:"",maxTouchPoints:0}}try{const t=e.platform;n="string"==typeof t?t:""}catch(e){n=""}try{const t=e.maxTouchPoints;r=Number.isFinite(t)?t:0}catch(e){r=0}return{userAgent:t,platform:n,maxTouchPoints:r}}function et(e){const t=e.userAgent.trim().toLowerCase();return t?/\bandroid\b|\badr\b/.test(t)?"android":/\bios\b|\biphone\b|\bipad\b|\bipod\b|\biwatch\b/.test(t)||Je(e,t)?"ios":/\bwindows\b|\bwin32\b|\bwin64\b|\bwow32\b|\bwow64\b/.test(t)?"windows":/\bmacintosh\b|\bmacintel\b|\bmac os x\b/.test(t)?"macos":/\blinux\b/.test(t)?"linux":"":""}function tt(e){const t=e.userAgent.trim().toLowerCase();if(!t)return"";if(/\biwatch\b|\bapple watch\b/.test(t))return"";if(/\bipad\b|\btablet\b/.test(t)||Je(e,t))return"tablet";const n=et(e);return"android"===n?/\bmobile\b/.test(t)?"mobile":"tablet":"ios"===n&&/\biphone\b|\bipod\b/.test(t)?"mobile":"windows"===n||"macos"===n||"linux"===n||/\bcros\b/.test(t)?"desktop":/\bmobile\b/.test(t)?"mobile":""}function nt(e){if(void 0!==e&&"string"!=typeof e)throw new TypeError("userAgent must be a string when provided.");return tt(void 0!==e?{userAgent:e,platform:"",maxTouchPoints:0}:Xe())}function rt(e){if(void 0!==e&&"string"!=typeof e)throw new TypeError("userAgent must be a string when provided.");return et(void 0!==e?{userAgent:e,platform:"",maxTouchPoints:0}:Xe())}function ot(e,t){const n=e.trim().toLowerCase();return t.some(e=>n.includes(e))}function it(e){if(void 0===e)return function(){try{return"undefined"==typeof window||"undefined"==typeof navigator?null:{window:window,navigator:navigator,document:"undefined"==typeof document?void 0:document}}catch(e){return null}}();if(null===e||"object"!=typeof e||Array.isArray(e))return null;try{const t=e.window,n=e.navigator,r=e.document;return null===t||"object"!=typeof t||null===n||"object"!=typeof n||void 0!==r&&(null===r||"object"!=typeof r)?null:{window:t,navigator:n,document:r}}catch(e){return null}}function st(){if(window.MAZEY_BROWSER_INFO&&"object"==typeof window.MAZEY_BROWSER_INFO)return window.MAZEY_BROWSER_INFO;let e={engine:"",engineVs:"",platform:"",supporter:"",supporterVs:"",system:"",systemVs:"",shell:"",shellVs:"",appleType:"",colorScheme:""};try{const t=Xe(),n=t.userAgent.toLowerCase();if(!n)return e;const r=e=>e.test(n),o=e=>{let t="";const r=n.match(e);return r&&D(r)&&(t=r.toString(),t=t.replace(/[^0-9|_.]/g,""),t=t.replace(/_/g,".")),t},i=et(t);let s="";"ios"===i&&(r(/ipad/g)?s="ipad":r(/iphone/g)?s="iphone":r(/iwatch/g)?s="iwatch":r(/ipod/g)?s="ipod":"macintel"===t.platform.toLowerCase()&&t.maxTouchPoints>1&&(s="ipad")),e={...e,system:i,appleType:s};let a="";"windows"===i?r(/windows nt 5.0|windows 2000/g)?a="2000":r(/windows nt 5.1|windows xp/g)?a="xp":r(/windows nt 5.2|windows 2003/g)?a="2003":r(/windows nt 6.0|windows vista/g)?a="vista":r(/windows nt 6.1|windows 7/g)?a="7":r(/windows nt 6.2|windows 8/g)?a="8":r(/windows nt 6.3|windows 8.1/g)?a="8.1":r(/windows nt 10.0|windows 10/g)&&(a="10"):"macos"===i?a=o(/os x [\d._]+/g):"android"===i?a=o(/android [\d._]+/g):"ios"===i&&(a=o(/os [\d._]+/g)),e={...e,systemVs:a};let c="";"windows"===i||"macos"===i||"linux"===i?c="desktop":("android"===i||"ios"===i||r(/mobile/g))&&(c="mobile"),e={...e,platform:c};let u="",l="";r(/applewebkit/g)?(u="webkit",r(/edg(?:a|ios)?\//g)||r(/edge\//g)?l="edge":r(/opr/g)?l="opera":r(/chrome/g)?l="chrome":r(/safari/g)&&(l="safari")):r(/gecko/g)&&r(/firefox/g)?(u="gecko",l="firefox"):r(/presto/g)?(u="presto",l="opera"):r(/trident|compatible|msie/g)&&(u="trident",l="iexplore"),e={...e,engine:u,supporter:l};let f="";"webkit"===u?f=o(/applewebkit\/[\d._]+/g):"gecko"===u?f=o(/gecko\/[\d._]+/g):"presto"===u?f=o(/presto\/[\d._]+/g):"trident"===u&&(f=o(/trident\/[\d._]+/g)),e={...e,engineVs:f};let p="";"chrome"===l?p=o(/chrome\/[\d._]+/g):"safari"===l?p=o(/version\/[\d._]+/g):"firefox"===l?p=o(/firefox\/[\d._]+/g):"opera"===l?p=o(/opr\/[\d._]+/g):"iexplore"===l?p=o(/(msie [\d._]+)|(rv:[\d._]+)/g):"edge"===l&&(p=o(/(?:edge|edg|edga|edgios)\/[\d._]+/g)),e={...e,supporterVs:p};let d="",m="";r(/micromessenger/g)?(d="wechat",m=o(/micromessenger\/[\d._]+/g)):r(/qqbrowser/g)?(d="qq_browser",m=o(/qqbrowser\/[\d._]+/g)):r(/\sqq/g)?d="qq_app":r(/ucbrowser/g)?(d="uc",m=o(/ucbrowser\/[\d._]+/g)):r(/qihu 360se/g)?d="360":r(/2345explorer/g)?(d="2345",m=o(/2345explorer\/[\d._]+/g)):r(/metasr/g)?d="sougou":r(/lbbrowser/g)?d="liebao":r(/maxthon/g)?(d="maxthon",m=o(/maxthon\/[\d._]+/g)):r(/biliapp/g)&&(d="bilibili"),e={...e,shell:d,shellVs:m};let g="";if(window.matchMedia){const e=window.matchMedia("(prefers-color-scheme: dark)"),t=window.matchMedia("(prefers-color-scheme: light)");e.matches?g="dark":t.matches&&(g="light")}return e={...e,colorScheme:g},window.MAZEY_BROWSER_INFO=e,e}catch(t){return le.warn(t),e}}let at="";function ct(e){if("string"!=typeof e||""===e.trim())throw new TypeError("storageKey must be a non-empty string.")}function ut(e){if("undefined"==typeof window)return null;try{return new URL(window.location.href).searchParams.get(e)}catch(e){return null}}function lt(e){if("undefined"==typeof window)return null;try{const t=window.localStorage;return t&&"function"==typeof t.getItem?t.getItem(e):null}catch(e){return null}}function ft(e,t){if("undefined"==typeof window)return!1;try{const n=window.localStorage;return!(!n||"function"!=typeof n.setItem)&&(n.setItem(e,t),!0)}catch(e){return!1}}const pt=Object.freeze({system:"System",light:"Light",dark:"Dark"});function dt(e){return"light"===e||"dark"===e}function mt(){if("undefined"==typeof window)return null;try{const e=window.matchMedia;return"function"!=typeof e?null:e.call(window,"(prefers-color-scheme: dark)").matches?"dark":"light"}catch(e){return null}}function gt(e,t){return{value:e,label:pt[t]}}function ht(e){const t=e.split("-");if(!/^[a-z]{2,8}$/i.test(t[0]))return null;const n=[t[0].toLowerCase()];let r=1;if(r<t.length&&/^[a-z]{4}$/i.test(t[r])){const e=t[r].toLowerCase();n.push(`${e[0].toUpperCase()}${e.slice(1)}`),r++}for(r<t.length&&(/^[a-z]{2}$/i.test(t[r])||/^\d{3}$/.test(t[r]))&&(n.push(/^[a-z]{2}$/i.test(t[r])?t[r].toUpperCase():t[r]),r++);r<t.length;r++){const e=t[r];if(!/^(?:[a-z0-9]{5,8}|\d[a-z0-9]{3})$/i.test(e))return null;n.push(e.toLowerCase())}return n.join("-")}function yt(e){if("string"!=typeof e)return null;const t=e.trim().replace(/_/g,"-");if(!t)return null;if("undefined"!=typeof Intl)try{const e=Intl,n=e.getCanonicalLocales;if("function"==typeof n){const r=n.call(e,t)[0];return"string"==typeof r&&r?r:null}}catch(e){return e instanceof RangeError||"object"==typeof e&&null!==e&&"name"in e&&"RangeError"===e.name?null:ht(t)}return ht(t)}function wt(e){if("undefined"==typeof Intl)return e;try{const t=Intl.DisplayNames;if("function"!=typeof t)return e;const n=new t([e],{type:"language"}).of(e);return"string"==typeof n&&n.trim()?n:e}catch(t){return e}}function bt(e){return{value:e,label:wt(e)}}exports.addClass=pe,exports.addEvent=function(e,t){const n=Se();Array.isArray(n[e])||Object.defineProperty(n,e,{configurable:!0,enumerable:!0,value:[],writable:!0}),"function"==typeof t&&n[e].push(t)},exports.addStyle=function(e,t={id:""}){if(!e)return!1;const n=document.createDocumentFragment();let r=null,o="";const i=document.createElement("style");return t.id?(o=`${t.id}`,r=document.getElementById(o),r?r.innerHTML=e:(i.setAttribute("id",t.id),i.innerHTML=e,n.appendChild(i),document.head.appendChild(n))):(i.innerHTML=e,n.appendChild(i),document.head.appendChild(n)),!0},exports.assignDefined=function(e,...t){return t.forEach(t=>{void 0!==t&&Object.keys(t).forEach(n=>{const r=t[n];if(void 0!==r){const t=e;"__proto__"!==n||Object.hasOwn(e,n)?t[n]=r:Object.defineProperty(e,n,{configurable:!0,enumerable:!0,value:r,writable:!0})}})}),e},exports.calLongestCommonSubsequence=function(e,t){return h(e,t)},exports.calLongestCommonSubstring=function(e,t){return g(e,t)},exports.calculateAspectRatio=function(e,t){if(!Number.isSafeInteger(e))throw new TypeError("width must be a safe integer.");if(!Number.isSafeInteger(t))throw new TypeError("height must be a safe integer.");if(e<=0||t<=0)throw new RangeError("width and height must be greater than zero.");const n=function(e,t){for(;0!==t;){const n=e%t;e=t,t=n}return e}(e,t);return`${e/n}x${t/n}`},exports.calculateCAGR=function(e,t,n){const r=i(e);if(!r)throw new TypeError("startDate must be a valid date.");const o=i(t);if(!o)throw new TypeError("endDate must be a valid date.");const s=o.getTime()-r.getTime();if(s<=0)throw new RangeError("endDate must be later than startDate.");const a=function(e){if("number"==typeof e){if(!Number.isFinite(e))throw new TypeError("totalReturnRate must be a finite number or percentage string.");return e}if("string"!=typeof e)throw new TypeError("totalReturnRate must be a finite number or percentage string.");const t=e.trim();if(!t)throw new TypeError("totalReturnRate must not be empty.");const n=t.endsWith("%")?t.slice(0,-1).trim():t;if(!n)throw new TypeError("totalReturnRate must be a valid percentage string.");const r=Number(n);if(!Number.isFinite(r))throw new TypeError("totalReturnRate must be a valid percentage string.");return r/100}(n);if(a<=-1)throw new RangeError("totalReturnRate must be greater than -1.");const c=s/864e5,u=Math.pow(1+a,365/c)-1;if(!Number.isFinite(u))throw new RangeError("calculated CAGR must be finite.");return u},exports.camelCase2Underscore=S,exports.camelCaseToKebabCase=function(e){return E(e)},exports.cancelBubble=function(e){e.stopPropagation()},exports.clearHTML=function(e,t={}){return F(e,t)},exports.clearHtml=function(e,t={}){return F(e,t)},exports.convert10To26=function(e){if(!Number.isFinite(e)||e<=0)return"";e=Math.floor(e);let t="";for(;e>0;){let n=e%26;0===n&&(n=26),t=String.fromCharCode(n+96)+t,e=(e-n)/26}return t},exports.convertCamelToKebab=E,exports.convertCamelToUnder=T,exports.convertHttpToHttps=ae,exports.convertKebabToCamel=function(e){const t=e.replace(/-([a-z])/g,(e,t)=>t.toUpperCase());return t.endsWith("-")?t.slice(0,-1):t},exports.convertObjectToQuery=function(e){return e&&0===Object.keys(e).length?"":`?${Object.keys(e).map(t=>`${encodeURIComponent(t)}=${encodeURIComponent(e[t])}`).join("&")}`},exports.convertToHtmlBreaks=P,exports.convertUnderToCamel=function(e){return e.replace(/_([a-z])/g,(e,t)=>t.toUpperCase())},exports.cutCHSString=function(e,t,n=!1){return z(e,t,n)},exports.cutZHString=U,exports.debounce=function(e,t,n){let r=null,o=null,i=null,s=null,a=null;const u=function(){const l=c()-i;l<t&&l>=0?o=setTimeout(u,t-l):(o=null,n||(a=e.apply(r,s),o||(r=s=null)))};return function(...l){r=this,s=l,i=c();const f=n&&!o;return o||(o=setTimeout(u,t)),f&&(a=e.apply(r,s),r=s=null),a}},exports.deepCopy=x,exports.deepCopyObject=function(e){return x(e)},exports.deepFreeze=function e(t){return!t||"object"!=typeof t||Object.isFrozen(t)||(Object.freeze(t),Object.values(t).forEach(e)),t},exports.delCookie=function(e){Ie(e)},exports.derivePackageMetadata=function(e,t={}){if(null===e||"object"!=typeof e||Array.isArray(e))throw new TypeError("manifest must be an object");if(null===t||"object"!=typeof t||Array.isArray(t))throw new TypeError("options must be an object when provided");const n=e;if("string"!=typeof n.name||!n.name.trim())throw new TypeError("manifest.name must be a non-empty string");const r=n.name.trim(),o=function(e){if(/\s/.test(e))throw new TypeError("manifest.name must not contain whitespace");if(e.startsWith("@")){const t=e.split("/");if(2!==t.length||t[0].length<2||!t[1])throw new TypeError("manifest.name must be a valid scoped package name");return t[1]}if(e.includes("/"))throw new TypeError("manifest.name must be an unscoped or scoped package name");return e}(r),i=t.packageManager??"npm";if("npm"!==i&&"pnpm"!==i&&"yarn"!==i)throw new TypeError('packageManager must be "npm", "pnpm", or "yarn"');const s="npm"===i?"npm install":`${i} add`;return{name:r,version:Y(n,"version"),description:Y(n,"description"),license:Y(n,"license"),author:Z(n.author),unscopedName:o,iifeGlobal:A(o),installCommand:`${s} ${r}`}},exports.detectVisitorType=function(e){if(void 0!==e&&"string"!=typeof e)throw new TypeError("userAgent must be a string when provided.");const t=void 0===e?function(){const e=Ke();if(!e)return"";try{const t=e.userAgent;return"string"==typeof t?t:""}catch(e){return""}}():e;return ot(t,Qe)?"crawler":ot(t,Ge)||function(){const e=Ke();if(!e)return!1;try{return!0===e.webdriver}catch(e){return!1}}()?"automation":"unknown"},exports.doFn=M,exports.escapeHtmlAttribute=function(e,t={}){if("string"!=typeof e)throw new TypeError("value must be a string.");const n=t.preserveEntities?/&(?!(?:#[0-9]+|#x[0-9a-f]+|[a-z][a-z0-9]+);)/gi:/&/g,r={"<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};return e.replace(n,"&amp;").replace(/[<>"']/g,e=>r[e])},exports.extractElementText=function(e,t={}){const{excludeSelector:n="",replaceImagesWithAlt:r=!0,normalizeWhitespace:o=!0}=t,i=e.cloneNode(!0);r&&Array.from(i.querySelectorAll("img[alt]")).forEach(e=>{const t=e.getAttribute("alt")||"";e.parentNode?.replaceChild(i.ownerDocument.createTextNode(t),e)});const s=n.trim();s&&me(s,{root:i})&&Array.from(i.querySelectorAll(s)).forEach(e=>e.parentNode?.removeChild(e));const a=i.innerText||i.textContent||"";return o?a.replace(/\u00a0/g," ").replace(/\s+/g," ").trim():a},exports.fireEvent=Ae,exports.floatFixed=function(e,t=0){return parseFloat(String(e)).toFixed(t)},exports.floatToPercent=function(e,t=0){let n="";return n=t?(100*e).toFixed(t):String(Math.floor(100*e)),`${n}%`},exports.formatByteSize=B,exports.formatDate=m,exports.formatDistanceToNow=function(e){const t=i(e);if(!t)return"";const n=6e4,r=36e5,o=864e5,s=Math.abs(t.getTime()-Date.now());return s<3e4?"less than a minute":s<9e4?"about 1 minute":s<27e5?d(s/n,"minute"):s<54e5?"about 1 hour":s<864e5?d(s/r,"hour"):s<1512e5?"about 1 day":s<30*o?d(s/o,"day"):s<45*o?"about 1 month":s<365*o?d(s/(30*o),"month"):s<545*o?"about 1 year":d(s/(365*o),"year")},exports.formatDurationFromMs=function(e){const t=(Number.isFinite(e)?Math.max(e,0):0)/1e3;return t>=86400?p(t/24/60/60,"day"):t>=3600?p(t/60/60,"hour"):t>=60?p(t/60,"minute"):p(t,"second")},exports.formatLocalDateTime=function(t,n={}){const r="object"==typeof t&&null!==t?e(t):null;if(null===r)throw new TypeError("date must be a Date");if(!Number.isFinite(r))throw new RangeError("Invalid date");const o=n.precision??"minute";if("minute"!==o&&"second"!==o&&"millisecond"!==o)throw new TypeError("precision must be minute, second, or millisecond");const i=new Date(r),s=i.getFullYear();if(s<1)throw new RangeError("Date year must be greater than zero");const c=[a(s,4),a(i.getMonth()+1,2),a(i.getDate(),2)].join("-"),u=[a(i.getHours(),2),a(i.getMinutes(),2)];"minute"!==o&&u.push(a(i.getSeconds(),2));let l=`${c}T${u.join(":")}`;return"millisecond"===o&&(l+=`.${a(i.getMilliseconds(),3)}`),l},exports.genBrowserAttrs=function(e="",t="-"){const n=st(),r=[];return["system","platform","engine","supporter","shell","appleType"].forEach(o=>{const i=n[o];if(i){let n="";e&&e.length>0&&(n=`${e}${t}`),r.push(`${n}${i}`)}}),r},exports.genCustomConsole=ue,exports.genHashCode=function(e){let t,n,r=0;for(t=0;t<e.length;t++)n=e.charCodeAt(t),r=(r<<5)-r+n,r|=0;return r},exports.genRndNumString=C,exports.genStyleString=function(e,t){let n="";return t&&t.length>0&&(n=t.join(";")+";"),`${e}{${n}}`},exports.genUniqueNumString=O,exports.generateCalendarVersion=function(e){return m(void 0===e?new Date:new Date(e instanceof Date?e.getTime():e),"yyyy.MMdd.HHmmss").split(".").map(e=>String(Number(e))).join(".")},exports.generateRndNum=$,exports.generateUniqueNum=function(e=3){return O(e)},exports.getAllQueryParams=function(e=""){""===e&&(e=location.search);const t={};return Q(e).forEach(([e,n])=>{Object.hasOwn(t,e)||Object.defineProperty(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0})}),t},exports.getBrowserInfo=st,exports.getCLS=async function(){return Ve("layout-shift")?new Promise(e=>{const t=new window.PerformanceObserver(n=>{const r=n.getEntries().reduce((e,t)=>{let n=0;return _(t.value)&&(n=t.value),e+n},0);t.disconnect(),e(r)});t.observe({type:"layout-shift",buffered:!0})}):0},exports.getCookie=ze,exports.getCurrentVersion=function(){return"v4"},exports.getDateDifference=f,exports.getDefineListeners=Se,exports.getDomain=function(e,t=["hostname"]){try{const n=new URL(e,document.baseURI);return t.reduce((e,t)=>e+=n[t],"")}catch(n){const r=document.createElement("a");return r.href=e,t.reduce((e,t)=>e+=r[t],"")}},exports.getFCP=Ye,exports.getFID=async function(){return Ve("first-input")?new Promise(e=>{const t=new window.PerformanceObserver(n=>{const r=n.getEntries().find(e=>"first-input"===e.entryType);if(r){t.disconnect();const n=r.processingStart;e(n?Math.round(r.processingStart-r.startTime):0)}});t.observe({type:"first-input",buffered:!0})}):0},exports.getFP=Ze,exports.getFileSize=function(e,t={}){return B(e,t)},exports.getFriendlyInterval=function(e=0,t=0,n=u){return f(e,t,n)},exports.getHashQueryParam=function(e){const t=location.hash.split("?");return 1===t.length?"":G(`?${t.slice(1).join("?")}`,e)[0]||""},exports.getLCP=async function(){return Ve("largest-contentful-paint")?new Promise(e=>{const t=new window.PerformanceObserver(n=>{const r=n.getEntries().find(e=>"largest-contentful-paint"===e.entryType);r&&(t.disconnect(),e(Math.round(r.startTime)))});t.observe({type:"largest-contentful-paint",buffered:!0})}):0},exports.getLocalJSON=Oe,exports.getLocalStorage=De,exports.getPageMeta=function(e){const t=document.getElementsByTagName("meta");for(let n=0;n<t.length;n++)if(t[n].getAttribute("name")===e)return t[n].getAttribute("content")||"";return""},exports.getPerformance=async function(e=!1){if(!Ve("navigation"))return Promise.reject(new Error("navigation is not supported"));const t=window.performance;if(!t||"function"!=typeof t.getEntriesByType)return Promise.reject(new Error("performance is not supported"));let n;const r=new Promise(e=>{[n]=[e]}),o=t.getEntriesByType("navigation");if(!D(o))return Promise.reject(new Error("NavigationTiming is not supported"));const i=o[0];let[s,a,c,u,l,f,p,d,m,g,h,y,w,b,x,v,E,T,A]=new Array(19).fill(0);({decodedBodySize:T,encodedBodySize:A}=i),({unloadEventEnd:s,unloadEventStart:a,redirectEnd:c,redirectStart:u,domainLookupEnd:l,domainLookupStart:f,connectEnd:p,connectStart:d,secureConnectionStart:m,responseStart:g,requestStart:h,responseEnd:y,domContentLoadedEventStart:w,loadEventStart:b,loadEventEnd:x,startTime:v,fetchStart:E}=i);let N=0;if(_(v))N=v;else{if(!_(E))return Promise.reject(new Error("startTime, navigationStart or fetchStart are required"));N=E}const[C,$]=await Promise.all([Ze(),Ye()]);function O(){({decodedBodySize:T,encodedBodySize:A}=i),({unloadEventEnd:s,unloadEventStart:a,redirectEnd:c,redirectStart:u,domainLookupEnd:l,domainLookupStart:f,connectEnd:p,connectStart:d,secureConnectionStart:m,responseStart:g,requestStart:h,responseEnd:y,domContentLoadedEventStart:w,loadEventStart:b,loadEventEnd:x,startTime:v,fetchStart:E}=i),_(v)?N=v:_(E)&&(N=E);const t={source:"PerformanceNavigationTiming",os:j(),osVersion:M(),deviceType:L(),network:k(),screenDirection:P(),unloadTime:s-a,redirectTime:c-u,dnsTime:l-f,tcpTime:p-d,sslTime:F(p,m),responseTime:g-h,downloadTime:y-g,firstPaintTime:C,firstContentfulPaintTime:$,domReadyTime:w-N,onloadTime:b-N,whiteTime:g-N,renderTime:x-N,decodedBodySize:T,encodedBodySize:A};Object.keys(t).forEach(e=>{_(t[e])&&(t[e]<0?t[e]=0:t[e]=Math.round(t[e]))}),_(t.whiteTime)&&t.whiteTime>t.onloadTime&&(t.whiteTime=0);const r={};e||Object.keys(t).forEach(e=>{r[S(e)]=t[e]}),Object.keys(r).length?n(r):n(t)}function j(){let e;return e=navigator.userAgent.indexOf("Android")>-1?"android":navigator.userAgent.indexOf("iPhone")>-1?"ios":navigator.userAgent.indexOf("Windows Phone")>-1?"wp":"others",e}function M(){let e="";const t=navigator.userAgent,n=t.indexOf("Android")>-1,r=!!t.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),o=navigator.userAgent.split(";");if(o.length<2)return e;const i=o[1];return i?(n&&(e=(i.match(/\d+\.\d+/g)||[])[0]),r&&(e=(i.match(/(\d+)_(\d+)_?(\d+)?/)||[])[0]),e||(e=""),e):e}function L(){let e;const t=navigator.userAgent.toLowerCase(),n=t.match(/(ipad)/i)&&"ipad",r=t.match(/iphone os/i)&&"iphone os",o=t.match(/midp/i)&&"midp",i=t.match(/rv:1.2.3.4/i)&&"rv:1.2.3.4",s=t.match(/ucweb/i)&&"ucweb",a=t.match(/android/i)&&"android",c=t.match(/windows ce/i)&&"windows ce",u=t.match(/windows mobile/i)&&"windows mobile";return e=n||r||o||i||s||a||c||u?r||o||i||s||a||c||u?"phone":n?"ipad":void 0:"pc",e||(e=""),e}function k(){let e="";const t=window.navigator;if(t.connection&&t.connection.effectiveType)switch(t.connection.effectiveType){case"wifi":e="wifi";break;case"4g":e="4g";break;case"2g":e="2g";break;case"3g":e="3g";break;case"ethernet":e="ethernet";break;case"default":e=void 0}return e||(e=""),e}function P(){let e="";return window.screen&&window.screen.orientation&&"number"==typeof window.screen.orientation.angle&&(180!==window.screen.orientation.angle&&0!==window.screen.orientation.angle||(e="|"),90!==window.screen.orientation.angle&&-90!==window.screen.orientation.angle||(e="-")),e}function F(e,t){let n=0;return t&&(n=e-t),n}return _(x)&&x>0?O():"complete"===document.readyState?window.setTimeout(O,0):window.addEventListener("load",function e(){window.removeEventListener("load",e),window.setTimeout(function(){O()},0)}),r},exports.getQueryParam=function(e){return G(location.search,e)[0]||""},exports.getScriptQueryParam=function(e,t=""){t||(t=".js");const n=document.querySelectorAll("script[src]");for(let r=0;r<n.length;r++){const o=n[r].getAttribute("src");if(o&&-1!==o.indexOf(t)){const t=G(o,e)[0];if(void 0!==t)return t}}return""},exports.getSessionJSON=Ce,exports.getSessionStorage=je,exports.getSystemTheme=mt,exports.getTTFB=async function(){if(!Ve("navigation"))return 0;if(!window.performance||!window.performance.getEntriesByType)return 0;const e=window.performance.getEntriesByType("navigation")[0];let t=0;return e?(t=e.responseStart-e.requestStart,Math.round(t)):0},exports.getUrlFileType=function(e){let t="";if("string"!=typeof e||""==e)return t;const n=e.split(/[?#]/,1)[0],r=/\.[^/]+$/.exec(n);return r?(r[0].length>1&&(t=r[0].substring(1)),t):t},exports.getUrlHost=function(e){!se(e)&&se(e,{strict:!1})&&e.startsWith("//")&&(e="https:"+e);try{return new URL(e).host}catch(e){return""}},exports.getUrlParam=function(e,t,n={}){const r=G(e,t);return n.returnArray?r:r.length?r[0]:null},exports.getUrlPath=function(e){!se(e)&&se(e,{strict:!1})&&e.startsWith("//")&&(e="https:"+e);try{return new URL(e).pathname}catch(e){return""}},exports.hasClass=function(e,t){if(!e)return le.error("The element is not exist."),!1;const n=e.className.split(/\s+/);for(let e=0;e<n.length;e++)if(n[e]===t)return!0;return!1},exports.hide=function(e){return ve(e).forEach(e=>{"none"!==Ee(e)&&"none"!==e.style.display&&he.set(e,e.style.display),e.style.display="none"}),e},exports.inRate=function(e){return y(e)},exports.invokeEvent=function(e,t){Ae(e,t)},exports.invokeFn=j,exports.isAndroid=function(e){return"android"===rt(e)},exports.isArray=function(e){return"[object Array]"===Object.prototype.toString.call(e)},exports.isBool=k,exports.isBoolean=function(e){return k(e)},exports.isBrowser=function(){if(V)return"browser"===V;const e="undefined"!=typeof window;return e&&(V="browser"),e},exports.isDesktop=function(e){return"desktop"===nt(e)},exports.isFunction=function(e){return"function"==typeof e},exports.isHit=y,exports.isIOS=function(e){return"ios"===rt(e)},exports.isJSONString=N,exports.isJsonString=function(e){return N(e)},exports.isLinux=function(e){return"linux"===rt(e)},exports.isMacOS=function(e){return"macos"===rt(e)},exports.isMobile=q,exports.isNonEmptyArray=D,exports.isNonEmptyObject=function(e){return!!L(e)&&0!==Object.keys(e).length},exports.isNumber=_,exports.isPhone=function(e){return"mobile"===nt(e)},exports.isPureObject=L,exports.isSafePWAEnv=function(e={}){try{if(null===e||"object"!=typeof e||Array.isArray(e))return!1;const t=e.requireManifest,n=e.scope,r=e.environment;if(void 0!==t&&"boolean"!=typeof t||void 0!==n&&"string"!=typeof n)return!1;const o=it(r);if(!o)return!1;const{window:i,navigator:s,document:a}=o,c=s.serviceWorker;if(!0!==i.isSecureContext||null===c||"object"!=typeof c)return!1;if(void 0!==n&&!function(e,t){const n=e.trim();if(!n||/[?#]/.test(n))return!1;try{const e=new URL(t.location.href),r=new URL(n,e);if(r.origin!==e.origin||""!==r.search||""!==r.hash)return!1;if(e.pathname===r.pathname)return!0;const o=r.pathname.endsWith("/")?r.pathname:`${r.pathname}/`;return e.pathname.startsWith(o)}catch(e){return!1}}(n,i))return!1;if(!1===t)return!0;if(!a)return!1;const u=a.querySelector('link[rel~="manifest"][href]');return Boolean(u?.getAttribute("href")?.trim())}catch(e){return!1}},exports.isStandalonePWA=function(e={}){let t;try{if(null===e||"object"!=typeof e||Array.isArray(e))return!1;t=e.environment}catch(e){return!1}const n=it(t);if(!n)return!1;const{window:r,navigator:o}=n;try{const e=r.matchMedia;if("function"==typeof e&&e.call(r,"(display-mode: standalone)").matches)return!0}catch(e){}try{return!0===o.standalone}catch(e){return!1}},exports.isString=function(e){return"string"==typeof e},exports.isSupportWebp=function(){return at?Promise.resolve("webp"===at):new Promise(e=>{const t=new Image;t.onload=()=>{const n=t.width>0&&t.height>0;at=n?"webp":"no-webp",e(n)},t.onerror=()=>{at="no-webp",e(!1)},t.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAAAAAAfQ//73v/+BiOh/AAA="})},exports.isSupportedEntryType=Ve,exports.isTablet=function(e){return"tablet"===nt(e)},exports.isThisHour=function(e){const t=i(e);if(!t)return!1;const n=new Date;return t.getFullYear()===n.getFullYear()&&t.getMonth()===n.getMonth()&&t.getDate()===n.getDate()&&t.getHours()===n.getHours()},exports.isThisMonth=function(e){const t=i(e);if(!t)return!1;const n=new Date;return t.getFullYear()===n.getFullYear()&&t.getMonth()===n.getMonth()},exports.isThisWeek=function(e){const t=i(e);if(!t)return!1;const n=new Date,r=(n.getDay()+6)%7;n.setHours(0,0,0,0),n.setDate(n.getDate()-r);const o=new Date(n.getTime());o.setDate(o.getDate()+7);const s=t.getTime();return s>=n.getTime()&&s<o.getTime()},exports.isThisYear=function(e){const t=i(e);return null!==t&&t.getFullYear()===(new Date).getFullYear()},exports.isToday=function(e){const t=i(e);if(!t)return!1;const n=new Date;return t.getFullYear()===n.getFullYear()&&t.getMonth()===n.getMonth()&&t.getDate()===n.getDate()},exports.isUdfOrNul=function(e){return null==e},exports.isValidCssSelector=me,exports.isValidData=function(e,t,n){if(null===e||"object"!=typeof e)return!1;let r=e;for(const e of t){if(null===r||"object"!=typeof r&&"function"!=typeof r||!Object.hasOwn(r,e))return!1;r=r[e]}return r===n},exports.isValidDate=function(e){return null!==i(e)},exports.isValidEmail=function(e){return/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e)},exports.isValidHttpUrl=se,exports.isValidPhoneNumber=H,exports.isValidUrl=function(e){return/^[a-zA-Z0-9]+:\/\/[-a-zA-Z0-9@:%._+~#=]{1,256}\b([-a-zA-Z0-9\u4E00-\u9FA5\u3002\uff1b\uff0c\uff1a\u201c\u201d\uff08\uff09\u3001\uff1f\u300a\u300b()!@:%_+.~#?&//=]*)$/.test(e)},exports.isWindows=function(e){return"windows"===rt(e)},exports.listenMediaQueryChanges=function(e,t){if("function"!=typeof t)throw new TypeError("listener must be a function");if(null===e)return()=>{};if("object"!=typeof e)throw new TypeError("media must be a MediaQueryList or null");const n=e.addEventListener,r=e.removeEventListener;let o=null;if("function"==typeof n&&"function"==typeof r){const i=t;n.call(e,"change",i),o=()=>r.call(e,"change",i)}let i=!1;return()=>{i||(i=!0,o?.())}},exports.loadCSS=Be,exports.loadImage=function(e){return new Promise((t,n)=>{const r=new Image;r.onload=()=>{t(r)},r.onerror=e=>{n(e)},r.src=e})},exports.loadScript=qe,exports.loadScriptIfUndefined=function(e,t){if(window[e])return Promise.resolve("defined");let n=We.get(e);const r=n?.get(t);if(r)return r;n||(n=new Map,We.set(e,n));const o=()=>{n?.delete(t),0===n?.size&&We.delete(e)},i=qe(t).then(e=>(o(),e),e=>{throw o(),e});return n.set(t,i),i},exports.longestComSubsequence=h,exports.longestComSubstring=g,exports.mNow=c,exports.mTrim=function(e){return e.trim()},exports.mazeyCon=le,exports.newLine=function(e){return P(e)},exports.onURLChange=function(e,t={}){const{fireOnInit:n=!0}=t,r=history;let o=location.href;const i=[],s=t=>{const n=location.href;if(n===o&&"load"!==t)return;const r=o;o=n,e({url:n,oldUrl:r,trigger:t})},a=()=>s("popstate"),c=()=>s("hashchange");window.addEventListener("popstate",a),window.addEventListener("hashchange",c),i.push(()=>window.removeEventListener("popstate",a)),i.push(()=>window.removeEventListener("hashchange",c)),r.__mazeyUrlChangePatched__||(r.__mazeyUrlChangePatched__=!0,r.__mazeyUrlChangeSubscribers__=new Set,r.__mazeyRawPushState__=history.pushState.bind(history),r.__mazeyRawReplaceState__=history.replaceState.bind(history),history.pushState=function(...e){r.__mazeyRawPushState__(...e),r.__mazeyUrlChangeSubscribers__.forEach(e=>e("pushState"))},history.replaceState=function(...e){r.__mazeyRawReplaceState__(...e),r.__mazeyUrlChangeSubscribers__.forEach(e=>e("replaceState"))});const u=e=>s(e);return r.__mazeyUrlChangeSubscribers__.add(u),i.push(()=>r.__mazeyUrlChangeSubscribers__.delete(u)),n&&s("load"),()=>{i.forEach(e=>e())}},exports.parseGitHubRepository=function(e){if("string"!=typeof e)throw new TypeError("value must be a string");const t=e.trim();if(!t||/[%\\?#]/.test(t)||function(e){for(let t=0;t<e.length;t++){const n=e.charCodeAt(t);if(n<=31||127===n)return!0}return!1}(t))throw ee();const n=t.match(/^(?:github:)?([^/:\s]+)\/([^/\s]+)$/i);if(n)return te(n[1],n[2]);const r=t.match(/^git@([^:\s]+):([^/\s]+)\/([^/\s]+)$/);if(r&&"github.com"===r[1].toLowerCase())return te(r[2],r[3]);const o=t.replace(/^git\+(?=(?:git|ssh|https?):\/\/)/i,""),i=o.match(/^[a-z][a-z\d+.-]*:\/\/([^/?#]+)/i);if(!i||/(^|\/)\.{1,2}(?:\/|$)/.test(o.slice(i[0].length)))throw ee();if(-1!==i[1].slice(i[1].lastIndexOf("@")+1).indexOf(":"))throw ee();let s;try{s=new URL(o)}catch(e){throw ee()}const a=s.protocol.toLowerCase(),c=s.hostname.toLowerCase().replace(/^www\./,"");if(!["git:","ssh:","http:","https:"].includes(a)||"github.com"!==c||""!==s.username&&"git"!==s.username||""!==s.password||""!==s.search||""!==s.hash)throw ee();const u=s.pathname.match(/^\/([^/]+)\/([^/]+)\/?$/);if(!u)throw ee();return te(u[1],u[2])},exports.parseJsonSafe=function(e,t=null){try{return JSON.parse(e)}catch(e){return t}},exports.parseLocalDateTime=function(e){if("string"!=typeof e)return null;const t=s.exec(e);if(!t)return null;const[n,i,a,c,u,l="0",f=""]=t.slice(1),p=Number(n),d=Number(i),m=Number(a),g=Number(c),h=Number(u),y=Number(l),w=Number(`${f}00`.slice(0,3));return p<1||!r(p,d,m,g,h,y,w)?null:o(p,d,m,g,h,y,w)},exports.removeClass=function(e,t){if(!e)return void le.error("The element is not exist.");let n;n=" "+e.className+" ",n=n.replace(/(\s+)/gi," "),n=n.replace(" "+t+" "," "),n=n.replace(/(^\s+)|(\s+$)/g,""),e.className=n},exports.removeCookie=Ie,exports.removeEvent=function(e,t){const n=Se(),r=n[e];if("string"==typeof e&&Array.isArray(r))if("function"==typeof t){for(let o=0,i=r.length;o<i;o++)if(r[o]===t){n[e].splice(o,1);break}}else delete n[e]},exports.removeHTML=F,exports.removeHtml=function(e,t={}){return F(e,t)},exports.repeatUntilConditionMet=function(e,t={},n=e=>!0===e){const{interval:r=1e3,times:o=10,context:i,args:s}=t;if("function"!=typeof e)return void console.error("Expected a function.");if(!Number.isFinite(r)||r<0)return void console.error("Expected a non-negative number for interval.");if(!Number.isFinite(o)||o<0)return void console.error("Expected a non-negative number for times.");if(0===o)return;let a=0;const c=()=>{setTimeout(async()=>{const t=await e.apply(i,s);n(t)||++a>=o||c()},r)};c()},exports.replaceHttp=function(e){return ae(e)},exports.resolveElementTarget=function(e,t){if(void 0===e)return ge(t.defaultElement)?t.defaultElement:null;let n=t.unwrap?t.unwrap(e):e;if(null==n)return null;if("string"==typeof n)try{return t.root.querySelector(n)}catch(e){return null}return"object"==typeof n&&"$el"in n&&(n=n.$el),ge(n)?n:null},exports.resolveLanguagePreference=function(e){ct(e);const t=yt(ut("lang"));if(t)return bt(t);const n=yt(lt(e));return bt(n||(yt(function(){if("undefined"==typeof window||"undefined"==typeof navigator)return null;try{return"string"==typeof navigator.language?navigator.language:null}catch(e){return null}}())??"en"))},exports.resolveThemePreference=function(e){ct(e);const t=ut(e);if(dt(t))return gt(t,t);const n=lt(e);if(dt(n))return gt(n,n);const r=mt();return"system"===n&&r||r?gt(r,"system"):gt("light","light")},exports.sanitizeInput=function(e){const t={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","/":"&#x2F;"};if("string"!=typeof e)throw new Error("Input must be a string");return e.replace(/[&<>"'/]/g,e=>t[e])},exports.setClass=function(e,t){pe(e,t)},exports.setCookie=function(e,t,n,r){let o;if(n){const e=new Date;e.setTime(e.getTime()+24*n*60*60*1e3),o="; expires="+e.toUTCString()}else o="";const i=function(e){let t=!0;for(let n=0;n<e.length;n++){const r=e.charCodeAt(n);if(!(33===r||r>=35&&r<=43||r>=45&&r<=58||r>=60&&r<=91||r>=93&&r<=126)){t=!1;break}}return{isEncoded:!t,value:t?e:encodeURIComponent(e)}}(t),s=Fe(e),a=i.isEncoded?"1":"",c=i.isEncoded?o:"; expires=Thu, 01 Jan 1970 00:00:00 GMT",u=[`${s}=${i.value}${o}; path=/`,`${Pe(e)}=${a}${c}; path=/`],l=e=>{const t=e?`; domain=${e}`:"";u.forEach(e=>{document.cookie=`${e}${t}`})},f=location.hostname;if(r)l(r);else if(-1===f.indexOf("."))l();else{const n=f.split(".");n.shift();l("."+n.join(".")),ze(e)!==t&&l(`.${f}`)}},exports.setImgSizeBySrc=de,exports.setImgWidHeiBySrc=function(){return de()},exports.setLanguagePreference=function(e,t){ct(e);const n=yt(t);if(!n)throw new TypeError("language must be a valid language tag.");return ft(e,n)},exports.setLocalJSON=$e,exports.setLocalStorage=Me,exports.setSessionJSON=Ne,exports.setSessionStorage=_e,exports.setThemePreference=function(e,t){if(ct(e),!function(e){return"system"===e||dt(e)}(t))throw new TypeError('value must be "system", "light", or "dark".');return ft(e,t)},exports.sha256Hex=async function(e){const t="undefined"==typeof crypto?null:crypto;if(!t?.subtle||"function"!=typeof t.subtle.digest)throw new Error("Web Crypto API is not available.");let n=e;if("string"==typeof e){if("undefined"==typeof TextEncoder)throw new Error("TextEncoder is not available.");n=(new TextEncoder).encode(e)}const r=await t.subtle.digest("SHA-256",n);let o="";const i=new Uint8Array(r);for(let e=0;e<i.length;e++){const t=i[e].toString(16);o+=1===t.length?`0${t}`:t}return o},exports.show=function(e){return ve(e).forEach(e=>{he.has(e)?(e.style.display=he.get(e),he.delete(e)):"none"===e.style.display&&(e.style.display=""),""===e.style.display&&"none"===Ee(e)&&(e.style.display=Te(e))}),e},exports.sleep=async function(e){return W(e)},exports.subYears=function(t,n){const r="number"==typeof t?t:"object"==typeof t&&null!==t?e(t):null,o=new Date(r??NaN),i="number"==typeof n?n<0?Math.ceil(n):Math.floor(n):NaN;if(!Number.isFinite(o.getTime())||!Number.isFinite(i))return new Date(NaN);if(0===i)return o;const s=o.getMonth(),a=o.getDate(),c=o.getFullYear()-i,u=new Date(o.getTime());return u.setFullYear(c,s+1,0),a>=u.getDate()?u:(o.setFullYear(c,s,a),o)},exports.throttle=function(e,t,n={}){n=Object.assign({},n);let r=null,o=null,i=null,[s,a]=[null,0];const u=function(){a=!1===n.leading?0:c(),i=null,s=e.apply(this,o),i||(r=o=null)};return function(...l){const f=c();a||!1!==n.leading||(a=f);const p=t-(f-a);return r=this,o=l,p<=0||p>t?(i&&(clearTimeout(i),i=null),a=f,s=e.apply(r,o),i||(r=o=null)):i||!1===n.trailing||(i=setTimeout(u.bind(r),p)),s}},exports.timeCon=fe,exports.toJavaScriptGlobalName=A,exports.truncateZHString=z,exports.unsanitize=function(e){return R(e)},exports.unsanitizeInput=R,exports.updateQueryParam=function(e,t,n){const r=e.indexOf("#"),o=-1===r?"":e.slice(r),i=-1===r?e:e.slice(0,r),s=i.indexOf("?"),a=-1===s?i:i.slice(0,s),c=-1===s?"":i.slice(s+1),u=encodeURIComponent(t),l=encodeURIComponent(n);let f=!1;const p=(c?c.split("&").filter(Boolean):[]).reduce((e,n)=>{const r=n.indexOf("=");return J(-1===r?n:n.slice(0,r))===t?f||(e.push(`${u}=${l}`),f=!0):e.push(n),e},[]);return f||p.push(`${u}=${l}`),`${a}?${p.join("&")}${o}`},exports.waitTime=W,exports.watchServiceWorkerUpdates=function(e,t,n){if(null===e||"object"!=typeof e||"function"!=typeof e.addEventListener||"function"!=typeof e.removeEventListener)throw new TypeError("registration must support event listeners");if(null===t||"object"!=typeof t||"function"!=typeof t.addEventListener||"function"!=typeof t.removeEventListener)throw new TypeError("container must support event listeners");if(null===n||"object"!=typeof n||"function"!=typeof n.onUpdateAvailable||void 0!==n.onControllerChange&&"function"!=typeof n.onControllerChange)throw new TypeError("callbacks must provide onUpdateAvailable");let r=!1,o=null,i=null,s=!1,a=!1;const c=e=>{r||i===e||(i=e,n.onUpdateAvailable(e))},u=()=>{!r&&"installed"===o?.state&&t.controller&&c(o)},l=()=>{r||(o?.removeEventListener("statechange",u),o=e.installing,o?.addEventListener("statechange",u),u())},f=()=>{r||n.onControllerChange?.()},p=()=>{if(s){try{e.removeEventListener("updatefound",l)}catch(e){}s=!1}try{o?.removeEventListener("statechange",u)}catch(e){}if(a){try{t.removeEventListener("controllerchange",f)}catch(e){}a=!1}};try{e.addEventListener("updatefound",l),s=!0,t.addEventListener("controllerchange",f),a=!0,e.waiting&&t.controller&&c(e.waiting),e.installing&&l()}catch(e){throw r=!0,p(),o=null,i=null,e}return{activateWaiting(e={type:"SKIP_WAITING"}){if(r||!i)return!1;try{return i.postMessage(e),!0}catch(e){return!1}},dispose(){r||(r=!0,p(),o=null,i=null)}}},exports.windowLoaded=function(e=3e4){return new Promise((t,n)=>{let r=null;const o=()=>{window.removeEventListener("load",i),null!==r&&(clearTimeout(r),r=null)},i=()=>{o(),t("load")};"complete"!==document.readyState?(window.addEventListener("load",i),r=setTimeout(()=>{o(),n(new Error("timeout"))},e)):t("complete")})},exports.zAxiosIsValidRes=function(e,t={validStatusRange:[200,300],validCode:[0]}){const n=t||{},{validStatusRange:r=[200,300],validCode:o=[0]}=n;2!==r.length&&console.error("valid validStatusRange is required");let i=!1;if(e&&e.status&&2===r.length&&e.status>=r[0]&&e.status<r[1]){const t=e.data;t&&o.includes(t.code)&&(i=!0)}return i};
package/lib/index.d.ts CHANGED
@@ -40,10 +40,24 @@ type ThrottleFunc<T extends (...args: any[]) => any> = (...args: Parameters<T>)
40
40
 
41
41
  type DebounceFunc<T extends (...args: any[]) => any> = (...args: Parameters<T>) => ReturnType<T> | null;
42
42
 
43
+ /**
44
+ * Optional constraints used by {@link isNumber}.
45
+ *
46
+ * @category Util
47
+ */
43
48
  interface IsNumberOptions {
49
+ /** Treat `NaN` as a number when no integer or range constraint rejects it. */
44
50
  isNaNAsNumber?: boolean;
51
+ /** Treat positive and negative infinity as numbers. */
45
52
  isInfinityAsNumber?: boolean;
53
+ /** Compatibility alias that permits non-finite numeric values. */
46
54
  isUnFiniteAsNumber?: boolean;
55
+ /** Require the value to be an integer. */
56
+ integer?: boolean;
57
+ /** Inclusive minimum value. */
58
+ min?: number;
59
+ /** Inclusive maximum value. */
60
+ max?: number;
47
61
  }
48
62
 
49
63
  interface ZResResponse {
@@ -1374,18 +1388,21 @@ declare function debounce<T extends (...args: MazeyFnParams) => MazeyFnReturn>(f
1374
1388
  * const ret4 = isNumber(Infinity, { isInfinityAsNumber: true });
1375
1389
  * const ret5 = isNumber(NaN);
1376
1390
  * const ret6 = isNumber(NaN, { isNaNAsNumber: true, isInfinityAsNumber: true });
1377
- * console.log(ret1, ret2, ret3, ret4, ret5, ret6);
1391
+ * const ret7 = isNumber(12, { integer: true, min: 1, max: 31 });
1392
+ * const ret8 = isNumber(12.5, { integer: true, min: 1, max: 31 });
1393
+ * console.log(ret1, ret2, ret3, ret4, ret5, ret6, ret7, ret8);
1378
1394
  * ```
1379
1395
  *
1380
1396
  * Output:
1381
1397
  *
1382
1398
  * ```text
1383
- * true false false true false true
1399
+ * true false false true false true true false
1384
1400
  * ```
1385
1401
  *
1386
1402
  * @param {*} num Value to check.
1387
- * @param options Controls whether `NaN`, `Infinity`, or other non-finite values count as numbers.
1403
+ * @param options Controls non-finite values and optional integer or inclusive range constraints.
1388
1404
  * @returns {boolean} Whether the value is an allowed number.
1405
+ * @remarks Invalid bounds, reversed bounds, and `NaN` combined with an integer or range constraint return `false`. Omitting the new constraints preserves the existing non-finite-number behavior.
1389
1406
  * @category Util
1390
1407
  */
1391
1408
  declare function isNumber(num: unknown, options?: IsNumberOptions): boolean;
@@ -3990,6 +4007,35 @@ declare function isLinux(userAgent?: string): boolean;
3990
4007
  * @category Browser Information
3991
4008
  */
3992
4009
  declare function detectVisitorType(userAgent?: string): VisitorType;
4010
+ /**
4011
+ * Browser objects used by Mazey's synchronous PWA capability checks.
4012
+ *
4013
+ * Supply an environment when the caller already owns browser references, such
4014
+ * as a site initializer, iframe integration, or deterministic test. Injected
4015
+ * objects are used exclusively and are never combined with global browser
4016
+ * objects.
4017
+ *
4018
+ * @category Browser Information
4019
+ */
4020
+ interface PWAEnvironment {
4021
+ /** Window capabilities used by PWA scope and display-mode checks. */
4022
+ window: Pick<Window, "isSecureContext" | "location" | "matchMedia">;
4023
+ /** Navigator capabilities used by Service Worker and iOS standalone checks. */
4024
+ navigator: Navigator & {
4025
+ readonly standalone?: boolean;
4026
+ };
4027
+ /** Document inspected for a web app manifest when one is required. */
4028
+ document?: Document;
4029
+ }
4030
+ /**
4031
+ * Options for {@link isStandalonePWA}.
4032
+ *
4033
+ * @category Browser Information
4034
+ */
4035
+ interface IsStandalonePWAOptions {
4036
+ /** Browser objects to inspect instead of browser globals. */
4037
+ environment?: PWAEnvironment;
4038
+ }
3993
4039
  /**
3994
4040
  * Options for {@link isSafePWAEnv}.
3995
4041
  *
@@ -4003,6 +4049,8 @@ interface IsSafePWAEnvOptions {
4003
4049
  * Comparison uses serialized WHATWG URL paths; encoded separators remain encoded.
4004
4050
  */
4005
4051
  scope?: string;
4052
+ /** Browser objects to inspect instead of browser globals. */
4053
+ environment?: PWAEnvironment;
4006
4054
  }
4007
4055
  /**
4008
4056
  * Detect whether the current browser document provides the minimum
@@ -4033,8 +4081,20 @@ interface IsSafePWAEnvOptions {
4033
4081
  * true
4034
4082
  * ```
4035
4083
  *
4036
- * @remarks Browser-preferred and safe to call during SSR.
4037
- * @param options Optional manifest and URL-scope requirements.
4084
+ * Callers that already own browser references can inject them without changing
4085
+ * globals:
4086
+ *
4087
+ * ```javascript
4088
+ * const ret = isSafePWAEnv({
4089
+ * scope: "/app/",
4090
+ * environment: { window, navigator, document },
4091
+ * });
4092
+ * ```
4093
+ *
4094
+ * @remarks Browser-preferred and safe to call during SSR. When `environment`
4095
+ * is provided, only those objects are inspected; missing injected capabilities
4096
+ * return `false` rather than falling back to globals.
4097
+ * @param options Optional manifest, URL-scope, and browser-environment requirements.
4038
4098
  * @returns Whether the detectable minimum PWA prerequisites are satisfied.
4039
4099
  * @category Browser Information
4040
4100
  */
@@ -4046,11 +4106,23 @@ declare function isSafePWAEnv(options?: IsSafePWAEnvOptions): boolean;
4046
4106
  * `navigator.standalone` compatibility signal. This does not prove that the app
4047
4107
  * is installed, trusted, or controlled by a service worker.
4048
4108
  *
4049
- * @remarks Browser-preferred and safe to call during SSR.
4109
+ * Callers that already own browser references can inject them without changing
4110
+ * globals:
4111
+ *
4112
+ * ```javascript
4113
+ * const standalone = isStandalonePWA({
4114
+ * environment: { window, navigator },
4115
+ * });
4116
+ * ```
4117
+ *
4118
+ * @remarks Browser-preferred and safe to call during SSR. This is a one-time
4119
+ * synchronous read and does not install listeners. When `environment` is
4120
+ * supplied, only those objects are inspected.
4121
+ * @param options Optional browser environment to inspect instead of globals.
4050
4122
  * @returns `true` in detected standalone presentation; otherwise `false`.
4051
4123
  * @category Browser Information
4052
4124
  */
4053
- declare function isStandalonePWA(): boolean;
4125
+ declare function isStandalonePWA(options?: IsStandalonePWAOptions): boolean;
4054
4126
  /**
4055
4127
  * Return detailed information about the current browser.
4056
4128
  *
@@ -4529,4 +4601,4 @@ declare const mazeyCon: Console;
4529
4601
  declare const timeCon: Console;
4530
4602
 
4531
4603
  export { addClass, addEvent, addStyle, assignDefined, calLongestCommonSubsequence, calLongestCommonSubstring, calculateAspectRatio, calculateCAGR, camelCase2Underscore, camelCaseToKebabCase, cancelBubble, clearHTML, clearHtml, convert10To26, convertCamelToKebab, convertCamelToUnder, convertHttpToHttps, convertKebabToCamel, convertObjectToQuery, convertToHtmlBreaks, convertUnderToCamel, cutCHSString, cutZHString, debounce, deepCopy, deepCopyObject, deepFreeze, delCookie, derivePackageMetadata, detectVisitorType, doFn, escapeHtmlAttribute, extractElementText, fireEvent, floatFixed, floatToPercent, formatByteSize, formatDate, formatDistanceToNow, formatDurationFromMs, formatLocalDateTime, genBrowserAttrs, genCustomConsole, genHashCode, genRndNumString, genStyleString, genUniqueNumString, generateCalendarVersion, generateRndNum, generateUniqueNum, getAllQueryParams, getBrowserInfo, getCLS, getCookie, getCurrentVersion, getDateDifference, getDefineListeners, getDomain, getFCP, getFID, getFP, getFileSize, getFriendlyInterval, getHashQueryParam, getLCP, getLocalJSON, getLocalStorage, getPageMeta, getPerformance, getQueryParam, getScriptQueryParam, getSessionJSON, getSessionStorage, getSystemTheme, getTTFB, getUrlFileType, getUrlHost, getUrlParam, getUrlPath, hasClass, hide, inRate, invokeEvent, invokeFn, isAndroid, isArray, isBool, isBoolean, isBrowser, isDesktop, isFunction, isHit, isIOS, isJSONString, isJsonString, isLinux, isMacOS, isMobile, isNonEmptyArray, isNonEmptyObject, isNumber, isPhone, isPureObject, isSafePWAEnv, isStandalonePWA, isString, isSupportWebp, isSupportedEntryType, isTablet, isThisHour, isThisMonth, isThisWeek, isThisYear, isToday, isUdfOrNul, isValidCssSelector, isValidData, isValidDate, isValidEmail, isValidHttpUrl, isValidPhoneNumber, isValidUrl, isWindows, listenMediaQueryChanges, loadCSS, loadImage, loadScript, loadScriptIfUndefined, longestComSubsequence, longestComSubstring, mNow, mTrim, mazeyCon, newLine, onURLChange, parseGitHubRepository, parseJsonSafe, parseLocalDateTime, removeClass, removeCookie, removeEvent, removeHTML, removeHtml, repeatUntilConditionMet, replaceHttp, resolveElementTarget, resolveLanguagePreference, resolveThemePreference, sanitizeInput, setClass, setCookie, setImgSizeBySrc, setImgWidHeiBySrc, setLanguagePreference, setLocalJSON, setLocalStorage, setSessionJSON, setSessionStorage, setThemePreference, sha256Hex, show, sleep, subYears, throttle, timeCon, toJavaScriptGlobalName, truncateZHString, unsanitize, unsanitizeInput, updateQueryParam, waitTime, watchServiceWorkerUpdates, windowLoaded, zAxiosIsValidRes };
4532
- export type { DerivePackageMetadataOptions, DerivedPackageMetadata, DomVisibilityTarget, FormatByteSizeOptions, GitHubRepositoryDetails, InvestmentReturnRate, IsSafePWAEnvOptions, LocalDateTimePrecision, PackageManager, PackageManifest, PackageManifestAuthor, PreferenceResult, ResolveElementTargetOptions, ResolvedTheme, ServiceWorkerUpdateCallbacks, ServiceWorkerUpdateWatcher, ThemePreference, VisitorType };
4604
+ export type { DerivePackageMetadataOptions, DerivedPackageMetadata, DomVisibilityTarget, FormatByteSizeOptions, GitHubRepositoryDetails, InvestmentReturnRate, IsNumberOptions, IsSafePWAEnvOptions, IsStandalonePWAOptions, LocalDateTimePrecision, PWAEnvironment, PackageManager, PackageManifest, PackageManifestAuthor, PreferenceResult, ResolveElementTargetOptions, ResolvedTheme, ServiceWorkerUpdateCallbacks, ServiceWorkerUpdateWatcher, ThemePreference, VisitorType };