mazey 5.9.2 → 5.10.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 +39 -15
- package/README.zh-CN.md +48 -5
- package/lib/index.cjs.js +2 -2
- package/lib/index.d.ts +62 -22
- package/lib/index.esm.js +2 -2
- package/lib/mazey.min.js +2 -2
- package/package.json +6 -9
package/README.md
CHANGED
|
@@ -78,6 +78,7 @@ There are some examples maintained by hand below. For more information, please c
|
|
|
78
78
|
- [windowLoaded](#windowloaded)
|
|
79
79
|
- [Util](#util)
|
|
80
80
|
- [isNumber](#isnumber)
|
|
81
|
+
- [isNullish](#isnullish)
|
|
81
82
|
- [isJSONString](#isjsonstring)
|
|
82
83
|
- [parseJsonSafe](#parsejsonsafe)
|
|
83
84
|
- [escapeHtmlAttribute](#escapehtmlattribute)
|
|
@@ -121,7 +122,7 @@ There are some examples maintained by hand below. For more information, please c
|
|
|
121
122
|
- [Storage Helpers](#storage-helpers)
|
|
122
123
|
- [DOM](#dom)
|
|
123
124
|
- [Class Helpers](#class-helpers)
|
|
124
|
-
- [
|
|
125
|
+
- [hideElements and showElements](#hideelements-and-showelements)
|
|
125
126
|
- [isValidCssSelector](#isvalidcssselector)
|
|
126
127
|
- [resolveElementTarget](#resolveelementtarget)
|
|
127
128
|
- [extractElementText](#extractelementtext)
|
|
@@ -133,7 +134,7 @@ There are some examples maintained by hand below. For more information, please c
|
|
|
133
134
|
- [Calculate and Formula](#calculate-and-formula)
|
|
134
135
|
- [calculateAspectRatio](#calculateaspectratio)
|
|
135
136
|
- [calculateCAGR](#calculatecagr)
|
|
136
|
-
- [
|
|
137
|
+
- [randomBoolean](#randomboolean)
|
|
137
138
|
- [longestComSubstring](#longestcomsubstring)
|
|
138
139
|
- [longestComSubsequence](#longestcomsubsequence)
|
|
139
140
|
- [Browser Information](#browser-information)
|
|
@@ -293,6 +294,9 @@ Load Success: load
|
|
|
293
294
|
|
|
294
295
|
### Util
|
|
295
296
|
|
|
297
|
+
Use native `Date.now()` to get the current epoch time in milliseconds. The
|
|
298
|
+
former `mNow()` helper remains available as a deprecated compatibility API.
|
|
299
|
+
|
|
296
300
|
#### isNumber
|
|
297
301
|
|
|
298
302
|
Check whether a value is an allowed numeric primitive. Optional constraints can
|
|
@@ -323,6 +327,21 @@ true false false true false true true false
|
|
|
323
327
|
reversed bounds return `false`. Existing non-finite-number behavior is unchanged
|
|
324
328
|
when `integer`, `min`, and `max` are omitted.
|
|
325
329
|
|
|
330
|
+
#### isNullish
|
|
331
|
+
|
|
332
|
+
Check whether a value is exactly `undefined` or `null`. Other falsy values are
|
|
333
|
+
not nullish.
|
|
334
|
+
|
|
335
|
+
```javascript
|
|
336
|
+
isNullish(undefined); // true
|
|
337
|
+
isNullish(null); // true
|
|
338
|
+
isNullish(false); // false
|
|
339
|
+
isNullish(0); // false
|
|
340
|
+
isNullish(""); // false
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
`isUdfOrNul` remains available as a deprecated alias of `isNullish`.
|
|
344
|
+
|
|
326
345
|
#### isJSONString
|
|
327
346
|
|
|
328
347
|
Check whether it is a valid JSON string.
|
|
@@ -1139,29 +1158,31 @@ addClass(dom, "test");
|
|
|
1139
1158
|
removeClass(dom, "test");
|
|
1140
1159
|
```
|
|
1141
1160
|
|
|
1142
|
-
####
|
|
1161
|
+
#### hideElements and showElements
|
|
1143
1162
|
|
|
1144
1163
|
Hide or show a CSS selector, one element, or an iterable or array-like element
|
|
1145
1164
|
collection. Both helpers return the original target, so a caller can retain its
|
|
1146
1165
|
own chaining convention. Duplicate elements are changed only once, and invalid
|
|
1147
1166
|
selectors or unsupported values are ignored.
|
|
1148
1167
|
|
|
1149
|
-
`
|
|
1150
|
-
that value, or recovers the element's normal display
|
|
1151
|
-
otherwise keep it hidden.
|
|
1168
|
+
`hideElements()` preserves a visible element's inline `display` value.
|
|
1169
|
+
`showElements()` restores that value, or recovers the element's normal display
|
|
1170
|
+
when a stylesheet would otherwise keep it hidden.
|
|
1152
1171
|
|
|
1153
1172
|
```javascript
|
|
1154
|
-
import {
|
|
1173
|
+
import { hideElements, showElements } from "mazey";
|
|
1155
1174
|
|
|
1156
1175
|
const notices = document.querySelectorAll(".notice");
|
|
1157
1176
|
|
|
1158
|
-
|
|
1159
|
-
|
|
1177
|
+
hideElements(notices);
|
|
1178
|
+
showElements(notices);
|
|
1160
1179
|
|
|
1161
|
-
|
|
1162
|
-
|
|
1180
|
+
hideElements("#temporary-message");
|
|
1181
|
+
showElements(document.querySelector("#temporary-message"));
|
|
1163
1182
|
```
|
|
1164
1183
|
|
|
1184
|
+
`hide` and `show` remain available as deprecated aliases.
|
|
1185
|
+
|
|
1165
1186
|
#### isValidCssSelector
|
|
1166
1187
|
|
|
1167
1188
|
Check whether a value is a CSS selector supported by the supplied query root.
|
|
@@ -1435,14 +1456,14 @@ calculateCAGR(
|
|
|
1435
1456
|
|
|
1436
1457
|
Date strings are validated using Mazey's strict date rules. Invalid dates, malformed or non-finite returns, and non-increasing date ranges throw errors. The parsed total return must be greater than `-1`, because `-1` represents a complete loss for which CAGR is undefined.
|
|
1437
1458
|
|
|
1438
|
-
####
|
|
1459
|
+
#### randomBoolean
|
|
1439
1460
|
|
|
1440
|
-
|
|
1461
|
+
Return whether a generated random value is less than the supplied probability.
|
|
1441
1462
|
|
|
1442
1463
|
Usage:
|
|
1443
1464
|
|
|
1444
1465
|
```javascript
|
|
1445
|
-
const ret =
|
|
1466
|
+
const ret = randomBoolean(0.5); // A 50% chance of returning true.
|
|
1446
1467
|
console.log(ret);
|
|
1447
1468
|
```
|
|
1448
1469
|
|
|
@@ -1459,7 +1480,7 @@ Example: Test the precision.
|
|
|
1459
1480
|
let trueCount = 0;
|
|
1460
1481
|
let falseCount = 0;
|
|
1461
1482
|
new Array(1000000).fill(0).forEach(() => {
|
|
1462
|
-
if (
|
|
1483
|
+
if (randomBoolean(0.5)) {
|
|
1463
1484
|
trueCount++;
|
|
1464
1485
|
} else {
|
|
1465
1486
|
falseCount++;
|
|
@@ -1468,6 +1489,9 @@ new Array(1000000).fill(0).forEach(() => {
|
|
|
1468
1489
|
console.log(trueCount, falseCount); // 499994 500006
|
|
1469
1490
|
```
|
|
1470
1491
|
|
|
1492
|
+
`randomBoolean` evaluates `Math.random() < rate` without clamping the supplied
|
|
1493
|
+
rate. `isHit` is a deprecated alias, and `inRate` remains a compatibility alias.
|
|
1494
|
+
|
|
1471
1495
|
#### longestComSubstring
|
|
1472
1496
|
|
|
1473
1497
|
Computes the longest common substring of two strings.
|
package/README.zh-CN.md
CHANGED
|
@@ -78,6 +78,7 @@ isNumber(z, { isInfinityAsNumber: true }); // 输出: true
|
|
|
78
78
|
- [windowLoaded](#windowloaded)
|
|
79
79
|
- [通用工具](#通用工具)
|
|
80
80
|
- [isNumber](#isnumber)
|
|
81
|
+
- [isNullish](#isnullish)
|
|
81
82
|
- [isJSONString](#isjsonstring)
|
|
82
83
|
- [isValidData](#isvaliddata)
|
|
83
84
|
- [genRndNumString](#genrndnumstring)
|
|
@@ -107,6 +108,7 @@ isNumber(z, { isInfinityAsNumber: true }); // 输出: true
|
|
|
107
108
|
- [Storage 工具](#storage-工具)
|
|
108
109
|
- [DOM](#dom)
|
|
109
110
|
- [Class 工具](#class-工具)
|
|
111
|
+
- [hideElements 和 showElements](#hideelements-和-showelements)
|
|
110
112
|
- [injectStyle](#injectstyle)
|
|
111
113
|
- [genStyleString](#genstylestring)
|
|
112
114
|
- [newLine](#newline)
|
|
@@ -115,7 +117,7 @@ isNumber(z, { isInfinityAsNumber: true }); // 输出: true
|
|
|
115
117
|
- [计算与公式](#计算与公式)
|
|
116
118
|
- [calculateAspectRatio](#calculateaspectratio)
|
|
117
119
|
- [calculateCAGR](#calculatecagr)
|
|
118
|
-
- [
|
|
120
|
+
- [randomBoolean](#randomboolean)
|
|
119
121
|
- [longestComSubstring](#longestcomsubstring)
|
|
120
122
|
- [longestComSubsequence](#longestcomsubsequence)
|
|
121
123
|
- [浏览器信息](#浏览器信息)
|
|
@@ -266,6 +268,9 @@ windowLoaded()
|
|
|
266
268
|
|
|
267
269
|
### 通用工具
|
|
268
270
|
|
|
271
|
+
使用原生 `Date.now()` 获取当前时间戳 (毫秒)。原有的 `mNow()` 工具仍作为弃用兼容 API
|
|
272
|
+
保留。
|
|
273
|
+
|
|
269
274
|
#### isNumber
|
|
270
275
|
|
|
271
276
|
判断某个值是否为有效数字。
|
|
@@ -289,6 +294,20 @@ console.log(ret1, ret2, ret3, ret4, ret5, ret6);
|
|
|
289
294
|
true false false true false true
|
|
290
295
|
```
|
|
291
296
|
|
|
297
|
+
#### isNullish
|
|
298
|
+
|
|
299
|
+
判断值是否严格为 `undefined` 或 `null`。其他假值不属于空值。
|
|
300
|
+
|
|
301
|
+
```javascript
|
|
302
|
+
isNullish(undefined); // true
|
|
303
|
+
isNullish(null); // true
|
|
304
|
+
isNullish(false); // false
|
|
305
|
+
isNullish(0); // false
|
|
306
|
+
isNullish(""); // false
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
`isUdfOrNul` 仍作为 `isNullish` 的弃用别名保留。
|
|
310
|
+
|
|
292
311
|
#### isJSONString
|
|
293
312
|
|
|
294
313
|
判断字符串是否为有效的 JSON 字符串。
|
|
@@ -861,6 +880,27 @@ addClass(dom, "test");
|
|
|
861
880
|
removeClass(dom, "test");
|
|
862
881
|
```
|
|
863
882
|
|
|
883
|
+
#### hideElements 和 showElements
|
|
884
|
+
|
|
885
|
+
隐藏或显示 CSS 选择器、单个元素、可迭代元素集合或类数组元素集合。两个函数都会返回原始输入。
|
|
886
|
+
重复元素只会被修改一次。函数会忽略无效选择器和不支持的值。
|
|
887
|
+
|
|
888
|
+
`hideElements()` 会保存可见元素的内联 `display` 值。`showElements()` 会恢复该值。如果样式表仍隐藏该元素,函数会恢复元素的默认显示方式。
|
|
889
|
+
|
|
890
|
+
```javascript
|
|
891
|
+
import { hideElements, showElements } from "mazey";
|
|
892
|
+
|
|
893
|
+
const notices = document.querySelectorAll(".notice");
|
|
894
|
+
|
|
895
|
+
hideElements(notices);
|
|
896
|
+
showElements(notices);
|
|
897
|
+
|
|
898
|
+
hideElements("#temporary-message");
|
|
899
|
+
showElements(document.querySelector("#temporary-message"));
|
|
900
|
+
```
|
|
901
|
+
|
|
902
|
+
`hide` 和 `show` 仍作为弃用别名保留。
|
|
903
|
+
|
|
864
904
|
#### injectStyle
|
|
865
905
|
|
|
866
906
|
在 `<head>` 中添加 `<style>` 元素。
|
|
@@ -1092,14 +1132,14 @@ calculateCAGR(
|
|
|
1092
1132
|
|
|
1093
1133
|
日期字符串遵循 Mazey 的严格日期校验规则。无效日期、格式错误或非有限的回报率,以及没有递增的日期范围都会抛出错误。解析后的总回报率必须大于 `-1`,因为 `-1` 表示本金完全损失,此时 CAGR 没有定义。
|
|
1094
1134
|
|
|
1095
|
-
####
|
|
1135
|
+
#### randomBoolean
|
|
1096
1136
|
|
|
1097
|
-
|
|
1137
|
+
判断生成的随机值是否小于指定概率。
|
|
1098
1138
|
|
|
1099
1139
|
用法:
|
|
1100
1140
|
|
|
1101
1141
|
```javascript
|
|
1102
|
-
const ret =
|
|
1142
|
+
const ret = randomBoolean(0.5); // 有 50% 的概率返回 true
|
|
1103
1143
|
console.log(ret);
|
|
1104
1144
|
```
|
|
1105
1145
|
|
|
@@ -1116,7 +1156,7 @@ true
|
|
|
1116
1156
|
let trueCount = 0;
|
|
1117
1157
|
let falseCount = 0;
|
|
1118
1158
|
new Array(1000000).fill(0).forEach(() => {
|
|
1119
|
-
if (
|
|
1159
|
+
if (randomBoolean(0.5)) {
|
|
1120
1160
|
trueCount++;
|
|
1121
1161
|
} else {
|
|
1122
1162
|
falseCount++;
|
|
@@ -1125,6 +1165,9 @@ new Array(1000000).fill(0).forEach(() => {
|
|
|
1125
1165
|
console.log(trueCount, falseCount); // 499994 500006
|
|
1126
1166
|
```
|
|
1127
1167
|
|
|
1168
|
+
`randomBoolean` 直接计算 `Math.random() < rate`,不会限制传入的概率值。`isHit` 是弃用别名。
|
|
1169
|
+
`inRate` 仍作为兼容别名保留。
|
|
1170
|
+
|
|
1128
1171
|
#### longestComSubstring
|
|
1129
1172
|
|
|
1130
1173
|
计算两个字符串的最长公共子串长度。
|
package/lib/index.cjs.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Mazey v5.
|
|
2
|
+
* Mazey v5.10.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,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={"&":"&","<":"<",">":">",""":'"',"'":"'","/":"/"};if("string"!=typeof e)throw new Error("Input must be a string");return e.replace(/(&|<|>|"|'|/)/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(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}const me=de;function ge(){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 he(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 ye(e){return Boolean(e&&"object"==typeof e&&1===e.nodeType&&"string"==typeof e.nodeName&&"function"==typeof e.getAttribute)}const we=new WeakMap,be=new WeakMap,xe={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"},ve=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 Ee(e){if(!ye(e))return null;const t=e.style;return t&&"string"==typeof t.display?e:null}function Te(e){const t=new Set,n=e=>{const n=Ee(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=Ee(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 Se(e){const t=e.ownerDocument.defaultView;return t?t.getComputedStyle(e).display:null}function Ae(e){const t=e.ownerDocument,n=e.localName.toLowerCase();let r=be.get(t);r||(r=new Map,be.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=Se(e)||""}finally{u.removeChild(e)}}return a&&"none"!==a||(a=function(e){return xe[e]?xe[e]:ve.has(e)?"block":"inline"}(n)),r.set(i,a),a}function Ne(){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 Ce(e,t){const n=Ne();Array.isArray(n[e])||Object.defineProperty(n,e,{configurable:!0,enumerable:!0,value:[],writable:!0}),"function"==typeof t&&n[e].push(t)}const $e=Ce;function Oe(e,t){const n=Ne()[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 _e(e,t=null){if(e){const n=JSON.stringify(t);sessionStorage.setItem(e,void 0===n?"null":n)}}function je(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 Me(e,t=null){if(e){const n=JSON.stringify(t);localStorage.setItem(e,void 0===n?"null":n)}}function De(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 Le=_e,ke=je,Pe=Me,Fe=De,Re="__mazey_cookie_name_encoded__-",Ue="__mazey_cookie_value_encoded__-";function ze(e){return`${Ue}${encodeURIComponent(e)}`}function Ie(e){const t=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/.test(e),n=0===e.indexOf(Re)||0===e.indexOf(Ue);return t&&!n?e:function(e){return`${Re}${encodeURIComponent(e)}`}(e)}function Be(e){const t=Ie(e);return t!==e?[t,e]:[e]}function He(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 qe(e){const t=Be(e),n="1"===He(ze(e));for(let e=0;e<t.length;e++){const r=He(t[e]);if(void 0!==r){if(n)try{return decodeURIComponent(r)}catch(e){return r}return r}}return""}function We(e){const t=Be(e),n=t.concat(ze(e)),r=new Date;r.setTime(r.getTime()-1);const o=t.some(e=>void 0!==He(e));return n.forEach((e,t)=>{if(n.indexOf(e)===t&&void 0!==He(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===He(e))}function Ve(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 Ye={id:"",callback:function(){},timeout:5e3,isDefer:!1,isAsync:!1,isCrossOrigin:!1,attributes:null,cssUrl:""};function Ze(e,t={...Ye}){const{id:n,callback:r,timeout:o,isDefer:i,isAsync:s,isCrossOrigin:a,attributes:c,cssUrl:u}=Object.assign({...Ye},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&&Ve(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 Je=new Map;function Qe(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 Ge(){return Qe("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 Ke(){return Qe("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 Xe(e,t=e.userAgent.trim().toLowerCase()){return/\bmacintosh\b/.test(t)&&"macintel"===e.platform.toLowerCase()&&e.maxTouchPoints>1}const et=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"]),tt=Object.freeze(["headlesschrome","phantomjs","slimerjs","selenium","puppeteer","playwright"]);function nt(){try{return"undefined"==typeof navigator?null:navigator}catch(e){return null}}function rt(){const e=nt();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 ot(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)||Xe(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 it(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)||Xe(e,t))return"tablet";const n=ot(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 st(e){if(void 0!==e&&"string"!=typeof e)throw new TypeError("userAgent must be a string when provided.");return it(void 0!==e?{userAgent:e,platform:"",maxTouchPoints:0}:rt())}function at(e){if(void 0!==e&&"string"!=typeof e)throw new TypeError("userAgent must be a string when provided.");return ot(void 0!==e?{userAgent:e,platform:"",maxTouchPoints:0}:rt())}function ct(e,t){const n=e.trim().toLowerCase();return t.some(e=>n.includes(e))}function ut(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 lt(){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=rt(),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=ot(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 ft="";function pt(e){if("string"!=typeof e||""===e.trim())throw new TypeError("storageKey must be a non-empty string.")}function dt(e){if("undefined"==typeof window)return null;try{return new URL(window.location.href).searchParams.get(e)}catch(e){return null}}function mt(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 gt(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 ht=Object.freeze({system:"System",light:"Light",dark:"Dark"});function yt(e){return"light"===e||"dark"===e}function wt(){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 bt(e,t){return{value:e,label:ht[t]}}function xt(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 vt(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:xt(t)}return xt(t)}function Et(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 Tt(e){return{value:e,label:Et(e)}}exports.addClass=pe,exports.addEvent=$e,exports.addStyle=me,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){We(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=nt();if(!e)return"";try{const t=e.userAgent;return"string"==typeof t?t:""}catch(e){return""}}():e;return ct(t,et)?"crawler":ct(t,tt)||function(){const e=nt();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={"<":"<",">":">",'"':""","'":"'"};return e.replace(n,"&").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&&he(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=Oe,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=lt(),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=lt,exports.getCLS=async function(){return Qe("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=qe,exports.getCurrentVersion=function(){return"v4"},exports.getDateDifference=f,exports.getDefineListeners=Ne,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=Ge,exports.getFID=async function(){return Qe("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=Ke,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 Qe("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=De,exports.getLocalStorage=Fe,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(!Qe("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([Ke(),Ge()]);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=je,exports.getSessionStorage=ke,exports.getSystemTheme=wt,exports.getTTFB=async function(){if(!Qe("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 Te(e).forEach(e=>{"none"!==Se(e)&&"none"!==e.style.display&&we.set(e,e.style.display),e.style.display="none"}),e},exports.inRate=function(e){return y(e)},exports.injectStyle=de,exports.invokeEvent=function(e,t){Oe(e,t)},exports.invokeFn=j,exports.isAndroid=function(e){return"android"===at(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"===st(e)},exports.isFunction=function(e){return"function"==typeof e},exports.isHit=y,exports.isIOS=function(e){return"ios"===at(e)},exports.isJSONString=N,exports.isJsonString=function(e){return N(e)},exports.isLinux=function(e){return"linux"===at(e)},exports.isMacOS=function(e){return"macos"===at(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"===st(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=ut(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=ut(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 ft?Promise.resolve("webp"===ft):new Promise(e=>{const t=new Image;t.onload=()=>{const n=t.width>0&&t.height>0;ft=n?"webp":"no-webp",e(n)},t.onerror=()=>{ft="no-webp",e(!1)},t.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAAAAAAfQ//73v/+BiOh/AAA="})},exports.isSupportedEntryType=Qe,exports.isTablet=function(e){return"tablet"===st(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=he,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"===at(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=Ve,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=Ze,exports.loadScriptIfUndefined=function(e,t){if(window[e])return Promise.resolve("defined");let n=Je.get(e);const r=n?.get(t);if(r)return r;n||(n=new Map,Je.set(e,n));const o=()=>{n?.delete(t),0===n?.size&&Je.delete(e)},i=Ze(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.onEvent=Ce,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=We,exports.removeEvent=function(e,t){const n=Ne(),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 ye(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),ye(n)?n:null},exports.resolveLanguagePreference=function(e){pt(e);const t=vt(dt("lang"));if(t)return Tt(t);const n=vt(mt(e));return Tt(n||(vt(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){pt(e);const t=dt(e);if(yt(t))return bt(t,t);const n=mt(e);if(yt(n))return bt(n,n);const r=wt();return"system"===n&&r||r?bt(r,"system"):bt("light","light")},exports.sanitizeInput=function(e){const t={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};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=Ie(e),a=i.isEncoded?"1":"",c=i.isEncoded?o:"; expires=Thu, 01 Jan 1970 00:00:00 GMT",u=[`${s}=${i.value}${o}; path=/`,`${ze(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(".")),qe(e)!==t&&l(`.${f}`)}},exports.setImgSizeBySrc=ge,exports.setImgWidHeiBySrc=function(){return ge()},exports.setLanguagePreference=function(e,t){pt(e);const n=vt(t);if(!n)throw new TypeError("language must be a valid language tag.");return gt(e,n)},exports.setLocalJSON=Me,exports.setLocalStorage=Pe,exports.setSessionJSON=_e,exports.setSessionStorage=Le,exports.setThemePreference=function(e,t){if(pt(e),!function(e){return"system"===e||yt(e)}(t))throw new TypeError('value must be "system", "light", or "dark".');return gt(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 Te(e).forEach(e=>{we.has(e)?(e.style.display=we.get(e),we.delete(e)):"none"===e.style.display&&(e.style.display=""),""===e.style.display&&"none"===Se(e)&&(e.style.display=Ae(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}`}const c={type:"d"};function u(e){return"string"==typeof e&&/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/.test(e)?e.replace(" ","T"):e}function l(e=0,t=0,n=c){n=Object.assign({},c,n);const{type:r}=n;"number"==typeof e&&Number.isFinite(e)||(e=new Date(u(e)).getTime()),"number"==typeof t&&Number.isFinite(t)||(t=new Date(u(t)).getTime());const o=Number(t)-Number(e);let i="",[s,a,l,p]=new Array(4).fill(0);if(o>=0)switch(s=Math.floor(o/1e3/60/60/24),a=Math.floor(o/1e3/60/60),l=Math.floor(o/1e3/60),p=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),l=Math.floor(o/1e3/60%60),p=Math.floor(o/1e3%60),i=[{value:s,unit:"day"},{value:a,unit:"hour"},{value:l,unit:"minute"},{value:p,unit:"second"}].filter(({value:e})=>e>0).map(({value:e,unit:t})=>f(e,t)).join(" ")||f(0,"second");break;default:i=p}return i}function f(e,t){const n=Math.round(10*e)/10;return`${n} ${1===n?t:`${t}s`}`}function p(e,t){const n=Math.max(1,Math.round(e));return`about ${n} ${t}${1===n?"":"s"}`}function d(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 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));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 h(e){return Math.random()<e}const y=Function.prototype.toString.call(Object);function w(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 b(e){return null===e||"object"!=typeof e?e:x(e,new WeakMap)}function x(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&&w(r,ArrayBuffer.prototype,"byteLength")){const e=ArrayBuffer.prototype.slice.call(t,0);return n.set(r,e),e}if("undefined"!=typeof SharedArrayBuffer&&w(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=x(t.buffer,n),o="undefined"!=typeof DataView&&w(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&&w(r,Map.prototype,"size")){const e=new Map;return n.set(r,e),Map.prototype.forEach.call(t,(t,r)=>{e.set(x(r,n),x(t,n))}),e}if("undefined"!=typeof Set&&w(r,Set.prototype,"size")){const e=new Set;return n.set(r,e),Set.prototype.forEach.call(t,t=>{e.add(x(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)===y}(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=x(t.value,n)),Object.defineProperty(f,e,t))}),f}function v(e){const t=e.replace(/([A-Z])/g,"-$1").toLowerCase();return"-"===t[0]?t.substring(1):t}function E(e){const t=e.replace(/([A-Z])/g,"_$1").toLowerCase();return"_"===t[0]?t.substring(1):t}function T(e){return E(e)}function S(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 A(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 C(e=5){return N(e)}function $(e=3){const[t,n]=[Date.now(),C(e||3)];return t+n}function O(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 _(e,...t){let n=null;return e&&"function"==typeof e&&(n=e(...t)),n}function j(e,...t){return _(e,...t)}function M(e){let t=!1;return Array.isArray(e)&&e.length&&(t=!0),t}function D(e){const t=Boolean(e),n="object"==typeof e,r="[object Object]"===Object.prototype.toString.call(e);return t&&n&&r}function L(e){return"boolean"==typeof e}function k(e){return null==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={"&":"&","<":"<",">":">",""":'"',"'":"'","/":"/"};if("string"!=typeof e)throw new Error("Input must be a string");return e.replace(/(&|<|>|"|'|/)/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=>D(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(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}const me=de;function ge(){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&&M(r)&&r[1]&&t.width(r[1]),o&&M(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&&M(r)&&r[1]&&(t.style.width=r[1]),o&&M(o)&&o[1]&&(t.style.height=o[1])}),!0}return!1}function he(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 ye(e){return Boolean(e&&"object"==typeof e&&1===e.nodeType&&"string"==typeof e.nodeName&&"function"==typeof e.getAttribute)}const we=new WeakMap,be=new WeakMap,xe={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"},ve=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 Ee(e){if(!ye(e))return null;const t=e.style;return t&&"string"==typeof t.display?e:null}function Te(e){const t=new Set,n=e=>{const n=Ee(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=Ee(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 Se(e){const t=e.ownerDocument.defaultView;return t?t.getComputedStyle(e).display:null}function Ae(e){const t=e.ownerDocument,n=e.localName.toLowerCase();let r=be.get(t);r||(r=new Map,be.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=Se(e)||""}finally{u.removeChild(e)}}return a&&"none"!==a||(a=function(e){return xe[e]?xe[e]:ve.has(e)?"block":"inline"}(n)),r.set(i,a),a}function Ne(e){return Te(e).forEach(e=>{"none"!==Se(e)&&"none"!==e.style.display&&we.set(e,e.style.display),e.style.display="none"}),e}function Ce(e){return Te(e).forEach(e=>{we.has(e)?(e.style.display=we.get(e),we.delete(e)):"none"===e.style.display&&(e.style.display=""),""===e.style.display&&"none"===Se(e)&&(e.style.display=Ae(e))}),e}function $e(){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 Oe(e,t){const n=$e();Array.isArray(n[e])||Object.defineProperty(n,e,{configurable:!0,enumerable:!0,value:[],writable:!0}),"function"==typeof t&&n[e].push(t)}const _e=Oe;function je(e,t){const n=$e()[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 Me(e,t=null){if(e){const n=JSON.stringify(t);sessionStorage.setItem(e,void 0===n?"null":n)}}function De(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 Le(e,t=null){if(e){const n=JSON.stringify(t);localStorage.setItem(e,void 0===n?"null":n)}}function ke(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 Pe=Me,Fe=De,Re=Le,Ue=ke,ze="__mazey_cookie_name_encoded__-",Ie="__mazey_cookie_value_encoded__-";function Be(e){return`${Ie}${encodeURIComponent(e)}`}function He(e){const t=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/.test(e),n=0===e.indexOf(ze)||0===e.indexOf(Ie);return t&&!n?e:function(e){return`${ze}${encodeURIComponent(e)}`}(e)}function qe(e){const t=He(e);return t!==e?[t,e]:[e]}function We(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 Ve(e){const t=qe(e),n="1"===We(Be(e));for(let e=0;e<t.length;e++){const r=We(t[e]);if(void 0!==r){if(n)try{return decodeURIComponent(r)}catch(e){return r}return r}}return""}function Ye(e){const t=qe(e),n=t.concat(Be(e)),r=new Date;r.setTime(r.getTime()-1);const o=t.some(e=>void 0!==We(e));return n.forEach((e,t)=>{if(n.indexOf(e)===t&&void 0!==We(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===We(e))}function Ze(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 Je={id:"",callback:function(){},timeout:5e3,isDefer:!1,isAsync:!1,isCrossOrigin:!1,attributes:null,cssUrl:""};function Qe(e,t={...Je}){const{id:n,callback:r,timeout:o,isDefer:i,isAsync:s,isCrossOrigin:a,attributes:c,cssUrl:u}=Object.assign({...Je},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&&Ze(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{j(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 Ge=new Map;function Ke(e){if("undefined"==typeof window)return!1;let t=[];const n=window.PerformanceObserver;return!!n&&(M(n.supportedEntryTypes)&&(t=n.supportedEntryTypes),t.includes(e))}async function Xe(){return Ke("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 et(){return Ke("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 tt(e,t=e.userAgent.trim().toLowerCase()){return/\bmacintosh\b/.test(t)&&"macintel"===e.platform.toLowerCase()&&e.maxTouchPoints>1}const nt=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"]),rt=Object.freeze(["headlesschrome","phantomjs","slimerjs","selenium","puppeteer","playwright"]);function ot(){try{return"undefined"==typeof navigator?null:navigator}catch(e){return null}}function it(){const e=ot();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 st(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)||tt(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 at(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)||tt(e,t))return"tablet";const n=st(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 ct(e){if(void 0!==e&&"string"!=typeof e)throw new TypeError("userAgent must be a string when provided.");return at(void 0!==e?{userAgent:e,platform:"",maxTouchPoints:0}:it())}function ut(e){if(void 0!==e&&"string"!=typeof e)throw new TypeError("userAgent must be a string when provided.");return st(void 0!==e?{userAgent:e,platform:"",maxTouchPoints:0}:it())}function lt(e,t){const n=e.trim().toLowerCase();return t.some(e=>n.includes(e))}function ft(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 pt(){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=it(),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&&M(r)&&(t=r.toString(),t=t.replace(/[^0-9|_.]/g,""),t=t.replace(/_/g,".")),t},i=st(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 dt="";function mt(e){if("string"!=typeof e||""===e.trim())throw new TypeError("storageKey must be a non-empty string.")}function gt(e){if("undefined"==typeof window)return null;try{return new URL(window.location.href).searchParams.get(e)}catch(e){return null}}function ht(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 yt(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 wt=Object.freeze({system:"System",light:"Light",dark:"Dark"});function bt(e){return"light"===e||"dark"===e}function xt(){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 vt(e,t){return{value:e,label:wt[t]}}function Et(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 Tt(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:Et(t)}return Et(t)}function St(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 At(e){return{value:e,label:St(e)}}exports.addClass=pe,exports.addEvent=_e,exports.addStyle=me,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 g(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=T,exports.camelCaseToKebabCase=function(e){return v(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=v,exports.convertCamelToUnder=E,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 c=function(){const u=Date.now()-i;u<t&&u>=0?o=setTimeout(c,t-u):(o=null,n||(a=e.apply(r,s),o||(r=s=null)))};return function(...u){r=this,s=u,i=Date.now();const l=n&&!o;return o||(o=setTimeout(c,t)),l&&(a=e.apply(r,s),r=s=null),a}},exports.deepCopy=b,exports.deepCopyObject=function(e){return b(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){Ye(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:S(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=ot();if(!e)return"";try{const t=e.userAgent;return"string"==typeof t?t:""}catch(e){return""}}():e;return lt(t,nt)?"crawler":lt(t,rt)||function(){const e=ot();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={"<":"<",">":">",'"':""","'":"'"};return e.replace(n,"&").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&&he(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=je,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=d,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?p(s/n,"minute"):s<54e5?"about 1 hour":s<864e5?p(s/r,"hour"):s<1512e5?"about 1 day":s<30*o?p(s/o,"day"):s<45*o?"about 1 month":s<365*o?p(s/(30*o),"month"):s<545*o?"about 1 year":p(s/(365*o),"year")},exports.formatDurationFromMs=function(e){const t=(Number.isFinite(e)?Math.max(e,0):0)/1e3;return t>=86400?f(t/24/60/60,"day"):t>=3600?f(t/60/60,"hour"):t>=60?f(t/60,"minute"):f(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=pt(),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=$,exports.generateCalendarVersion=function(e){return d(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=C,exports.generateUniqueNum=function(e=3){return $(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=pt,exports.getCLS=async function(){return Ke("layout-shift")?new Promise(e=>{const t=new window.PerformanceObserver(n=>{const r=n.getEntries().reduce((e,t)=>{let n=0;return O(t.value)&&(n=t.value),e+n},0);t.disconnect(),e(r)});t.observe({type:"layout-shift",buffered:!0})}):0},exports.getCookie=Ve,exports.getCurrentVersion=function(){return"v4"},exports.getDateDifference=l,exports.getDefineListeners=$e,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=Xe,exports.getFID=async function(){return Ke("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=et,exports.getFileSize=function(e,t={}){return B(e,t)},exports.getFriendlyInterval=function(e=0,t=0,n=c){return l(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 Ke("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=ke,exports.getLocalStorage=Ue,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(!Ke("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(!M(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,S,A]=new Array(19).fill(0);({decodedBodySize:S,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(O(v))N=v;else{if(!O(E))return Promise.reject(new Error("startTime, navigationStart or fetchStart are required"));N=E}const[C,$]=await Promise.all([et(),Xe()]);function _(){({decodedBodySize:S,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),O(v)?N=v:O(E)&&(N=E);const t={source:"PerformanceNavigationTiming",os:j(),osVersion:D(),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:S,encodedBodySize:A};Object.keys(t).forEach(e=>{O(t[e])&&(t[e]<0?t[e]=0:t[e]=Math.round(t[e]))}),O(t.whiteTime)&&t.whiteTime>t.onloadTime&&(t.whiteTime=0);const r={};e||Object.keys(t).forEach(e=>{r[T(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 D(){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 O(x)&&x>0?_():"complete"===document.readyState?window.setTimeout(_,0):window.addEventListener("load",function e(){window.removeEventListener("load",e),window.setTimeout(function(){_()},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=De,exports.getSessionStorage=Fe,exports.getSystemTheme=xt,exports.getTTFB=async function(){if(!Ke("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 Ne(e)},exports.hideElements=Ne,exports.inRate=function(e){return h(e)},exports.injectStyle=de,exports.invokeEvent=function(e,t){je(e,t)},exports.invokeFn=_,exports.isAndroid=function(e){return"android"===ut(e)},exports.isArray=function(e){return"[object Array]"===Object.prototype.toString.call(e)},exports.isBool=L,exports.isBoolean=function(e){return L(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"===ct(e)},exports.isFunction=function(e){return"function"==typeof e},exports.isHit=function(e){return h(e)},exports.isIOS=function(e){return"ios"===ut(e)},exports.isJSONString=A,exports.isJsonString=function(e){return A(e)},exports.isLinux=function(e){return"linux"===ut(e)},exports.isMacOS=function(e){return"macos"===ut(e)},exports.isMobile=q,exports.isNonEmptyArray=M,exports.isNonEmptyObject=function(e){return!!D(e)&&0!==Object.keys(e).length},exports.isNullish=k,exports.isNumber=O,exports.isPhone=function(e){return"mobile"===ct(e)},exports.isPureObject=D,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=ft(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=ft(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 dt?Promise.resolve("webp"===dt):new Promise(e=>{const t=new Image;t.onload=()=>{const n=t.width>0&&t.height>0;dt=n?"webp":"no-webp",e(n)},t.onerror=()=>{dt="no-webp",e(!1)},t.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAAAAAAfQ//73v/+BiOh/AAA="})},exports.isSupportedEntryType=Ke,exports.isTablet=function(e){return"tablet"===ct(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 k(e)},exports.isValidCssSelector=he,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"===ut(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=Ze,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=Ge.get(e);const r=n?.get(t);if(r)return r;n||(n=new Map,Ge.set(e,n));const o=()=>{n?.delete(t),0===n?.size&&Ge.delete(e)},i=Qe(t).then(e=>(o(),e),e=>{throw o(),e});return n.set(t,i),i},exports.longestComSubsequence=g,exports.longestComSubstring=m,exports.mNow=function(){return Date.now()},exports.mTrim=function(e){return e.trim()},exports.mazeyCon=le,exports.newLine=function(e){return P(e)},exports.onEvent=Oe,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.randomBoolean=h,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=Ye,exports.removeEvent=function(e,t){const n=$e(),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 ye(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),ye(n)?n:null},exports.resolveLanguagePreference=function(e){mt(e);const t=Tt(gt("lang"));if(t)return At(t);const n=Tt(ht(e));return At(n||(Tt(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){mt(e);const t=gt(e);if(bt(t))return vt(t,t);const n=ht(e);if(bt(n))return vt(n,n);const r=xt();return"system"===n&&r||r?vt(r,"system"):vt("light","light")},exports.sanitizeInput=function(e){const t={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};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=He(e),a=i.isEncoded?"1":"",c=i.isEncoded?o:"; expires=Thu, 01 Jan 1970 00:00:00 GMT",u=[`${s}=${i.value}${o}; path=/`,`${Be(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(".")),Ve(e)!==t&&l(`.${f}`)}},exports.setImgSizeBySrc=ge,exports.setImgWidHeiBySrc=function(){return ge()},exports.setLanguagePreference=function(e,t){mt(e);const n=Tt(t);if(!n)throw new TypeError("language must be a valid language tag.");return yt(e,n)},exports.setLocalJSON=Le,exports.setLocalStorage=Re,exports.setSessionJSON=Me,exports.setSessionStorage=Pe,exports.setThemePreference=function(e,t){if(mt(e),!function(e){return"system"===e||bt(e)}(t))throw new TypeError('value must be "system", "light", or "dark".');return yt(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 Ce(e)},exports.showElements=Ce,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 c=function(){a=!1===n.leading?0:Date.now(),i=null,s=e.apply(this,o),i||(r=o=null)};return function(...u){const l=Date.now();a||!1!==n.leading||(a=l);const f=t-(l-a);return r=this,o=u,f<=0||f>t?(i&&(clearTimeout(i),i=null),a=l,s=e.apply(r,o),i||(r=o=null)):i||!1===n.trailing||(i=setTimeout(c.bind(r),f)),s}},exports.timeCon=fe,exports.toJavaScriptGlobalName=S,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};
|