@fast-china/utils 2.1.3 → 2.1.4

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.
Files changed (46) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/array/index.d.mts +11 -12
  3. package/dist/async/index.d.mts +13 -14
  4. package/dist/async/index.mjs +7 -5
  5. package/dist/async/index.mjs.map +1 -1
  6. package/dist/base64/index.d.mts +13 -13
  7. package/dist/color/index.d.mts +10 -11
  8. package/dist/crypto/index.d.mts +38 -39
  9. package/dist/crypto/index.mjs +9 -4
  10. package/dist/crypto/index.mjs.map +1 -1
  11. package/dist/date/index.d.mts +23 -24
  12. package/dist/dom/style.d.mts +5 -6
  13. package/dist/env/index.d.mts +9 -10
  14. package/dist/env/index.mjs +17 -10
  15. package/dist/env/index.mjs.map +1 -1
  16. package/dist/identity/index.d.mts +5 -6
  17. package/dist/index.global.min.js +2 -2
  18. package/dist/index.global.min.js.map +1 -1
  19. package/dist/internal/runtime.mjs +12 -0
  20. package/dist/internal/runtime.mjs.map +1 -0
  21. package/dist/internal/text.d.mts +1 -2
  22. package/dist/internal/text.mjs +1 -1
  23. package/dist/internal/text.mjs.map +1 -1
  24. package/dist/logger/index.d.mts +7 -8
  25. package/dist/logger/index.mjs +2 -1
  26. package/dist/logger/index.mjs.map +1 -1
  27. package/dist/number/index.d.mts +9 -10
  28. package/dist/number/index.mjs +4 -3
  29. package/dist/number/index.mjs.map +1 -1
  30. package/dist/object/index.d.mts +10 -11
  31. package/dist/storage/index.d.mts +10 -11
  32. package/dist/storage/index.mjs +3 -2
  33. package/dist/storage/index.mjs.map +1 -1
  34. package/dist/string/index.d.mts +18 -19
  35. package/dist/string/index.mjs +15 -13
  36. package/dist/string/index.mjs.map +1 -1
  37. package/dist/vue/emits.d.mts +2 -3
  38. package/dist/vue/expose.d.mts +1 -2
  39. package/dist/vue/func.d.mts +2 -3
  40. package/dist/vue/install.d.mts +6 -7
  41. package/dist/vue/install.mjs.map +1 -1
  42. package/dist/vue/props.d.mts +2 -3
  43. package/dist/vue/render.d.mts +1 -2
  44. package/dist/vue/slots.d.mts +3 -4
  45. package/dist/vue/with.d.mts +1 -2
  46. package/package.json +11 -11
@@ -1,24 +1,30 @@
1
+ import { runtimeGlobals } from "../internal/runtime.mjs";
1
2
  //#region src/env/index.ts
2
3
  /**
3
4
  * 延迟读取当前 User-Agent。
4
5
  *
5
6
  * @returns Navigator 不存在或字段类型异常时返回空字符串。
6
7
  */
7
- const currentUserAgent = () => typeof globalThis.navigator?.userAgent === "string" ? globalThis.navigator.userAgent : "";
8
+ const currentUserAgent = () => {
9
+ const userAgent = runtimeGlobals.navigator?.userAgent;
10
+ return typeof userAgent === "string" ? userAgent : "";
11
+ };
8
12
  /**
9
13
  * 延迟读取当前设备报告的最大触点数。
10
14
  *
11
15
  * @returns Navigator 不存在或字段类型异常时返回 `0`。
12
16
  */
13
- const currentTouchPoints = () => typeof globalThis.navigator?.maxTouchPoints === "number" ? globalThis.navigator.maxTouchPoints : 0;
17
+ const currentTouchPoints = () => {
18
+ const maxTouchPoints = runtimeGlobals.navigator?.maxTouchPoints;
19
+ return typeof maxTouchPoints === "number" ? maxTouchPoints : 0;
20
+ };
14
21
  /**
15
22
  * 判断当前运行时是否具有浏览器 `window` 与 `document`。
16
23
  *
17
24
  * @returns 两项能力均存在时返回 `true`;不读取 DOM 内容。
18
25
  */
19
26
  function isBrowser() {
20
- const window = globalThis.window;
21
- return window !== void 0 && window !== null && window.document !== null && typeof window.document === "object";
27
+ return runtimeGlobals.window?.document !== void 0;
22
28
  }
23
29
  /**
24
30
  * 判断当前运行时是否像 Web Worker 且不是 Window。
@@ -28,7 +34,7 @@ function isBrowser() {
28
34
  * @returns 具有 `importScripts` 且不是浏览器 Window 时返回 `true`。
29
35
  */
30
36
  function isWebWorker() {
31
- return !isBrowser() && typeof Reflect.get(globalThis, "importScripts") === "function";
37
+ return !isBrowser() && typeof runtimeGlobals.importScripts === "function";
32
38
  }
33
39
  /**
34
40
  * 判断当前运行时是否暴露 Node.js 版本标记。
@@ -36,10 +42,11 @@ function isWebWorker() {
36
42
  * @returns `process.versions.node` 为字符串时返回 `true`。
37
43
  */
38
44
  function isNode() {
39
- const process = Reflect.get(globalThis, "process");
45
+ const process = runtimeGlobals.process;
40
46
  if (typeof process !== "object" && typeof process !== "function" || process === null) return false;
41
- const versions = Reflect.get(process, "versions");
42
- return (typeof versions === "object" || typeof versions === "function") && versions !== null && typeof Reflect.get(versions, "node") === "string";
47
+ const versions = process.versions;
48
+ if (typeof versions !== "object" && typeof versions !== "function" || versions === null) return false;
49
+ return typeof versions.node === "string";
43
50
  }
44
51
  /**
45
52
  * 判断当前运行时是否暴露 uni-app 的 `uni` 全局对象。
@@ -47,7 +54,7 @@ function isNode() {
47
54
  * @returns 全局属性存在且不为 `undefined` 时返回 `true`;不调用任何平台 API。
48
55
  */
49
56
  function isUniApp() {
50
- return Reflect.get(globalThis, "uni") !== void 0;
57
+ return runtimeGlobals.uni !== void 0;
51
58
  }
52
59
  /**
53
60
  * 判断当前运行时是否具备本库完整加密 API 所需的 Web Crypto 能力。
@@ -57,7 +64,7 @@ function isUniApp() {
57
64
  * @returns 同时提供本库 Web Crypto 功能所需方法时返回 `true`。
58
65
  */
59
66
  function hasWebCrypto() {
60
- const crypto = globalThis.crypto;
67
+ const crypto = runtimeGlobals.crypto;
61
68
  const subtle = crypto?.subtle;
62
69
  return typeof crypto?.getRandomValues === "function" && typeof subtle?.decrypt === "function" && typeof subtle.deriveBits === "function" && typeof subtle.deriveKey === "function" && typeof subtle.digest === "function" && typeof subtle.encrypt === "function" && typeof subtle.exportKey === "function" && typeof subtle.generateKey === "function" && typeof subtle.importKey === "function" && typeof subtle.sign === "function" && typeof subtle.verify === "function";
63
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":[],"sources":["../../src/env/index.ts"],"sourcesContent":["/** 可识别的主要 JavaScript 运行环境。 */\nexport type RuntimeKind = \"browser\" | \"node\" | \"unknown\" | \"worker\";\n\n/**\n * 延迟读取当前 User-Agent。\n *\n * @returns Navigator 不存在或字段类型异常时返回空字符串。\n */\nconst currentUserAgent = (): string => (typeof globalThis.navigator?.userAgent === \"string\" ? globalThis.navigator.userAgent : \"\");\n/**\n * 延迟读取当前设备报告的最大触点数。\n *\n * @returns Navigator 不存在或字段类型异常时返回 `0`。\n */\nconst currentTouchPoints = (): number => (typeof globalThis.navigator?.maxTouchPoints === \"number\" ? globalThis.navigator.maxTouchPoints : 0);\n\n/**\n * 判断当前运行时是否具有浏览器 `window` 与 `document`。\n *\n * @returns 两项能力均存在时返回 `true`;不读取 DOM 内容。\n */\nexport function isBrowser(): boolean {\n\tconst window = globalThis.window;\n\treturn window !== undefined && window !== null && window.document !== null && typeof window.document === \"object\";\n}\n\n/**\n * 判断当前运行时是否像 Web Worker 且不是 Window。\n *\n * @remarks 经典、模块、Shared 与 Service Worker 全局通常都暴露 `importScripts`;模块\n * Worker 中调用它可能抛错,本检测只检查能力存在,不会执行。\n * @returns 具有 `importScripts` 且不是浏览器 Window 时返回 `true`。\n */\nexport function isWebWorker(): boolean {\n\treturn !isBrowser() && typeof Reflect.get(globalThis, \"importScripts\") === \"function\";\n}\n\n/**\n * 判断当前运行时是否暴露 Node.js 版本标记。\n *\n * @returns `process.versions.node` 为字符串时返回 `true`。\n */\nexport function isNode(): boolean {\n\tconst process: unknown = Reflect.get(globalThis, \"process\");\n\tif ((typeof process !== \"object\" && typeof process !== \"function\") || process === null) return false;\n\tconst versions: unknown = Reflect.get(process, \"versions\");\n\treturn (typeof versions === \"object\" || typeof versions === \"function\") && versions !== null && typeof Reflect.get(versions, \"node\") === \"string\";\n}\n\n/**\n * 判断当前运行时是否暴露 uni-app 的 `uni` 全局对象。\n *\n * @returns 全局属性存在且不为 `undefined` 时返回 `true`;不调用任何平台 API。\n */\nexport function isUniApp(): boolean {\n\treturn Reflect.get(globalThis, \"uni\") !== undefined;\n}\n\n/**\n * 判断当前运行时是否具备本库完整加密 API 所需的 Web Crypto 能力。\n *\n * @remarks 普通随机数、随机字符串和 UUID 在缺少 Web Crypto 时可以回退到 `Math.random()`,但本函数\n * 仍会返回 `false`,因为摘要、PBKDF2、AES-GCM、RSA 与 ECC 需要完整的 Web Crypto 能力。\n * @returns 同时提供本库 Web Crypto 功能所需方法时返回 `true`。\n */\nexport function hasWebCrypto(): boolean {\n\tconst crypto = globalThis.crypto;\n\tconst subtle = crypto?.subtle;\n\treturn (\n\t\ttypeof crypto?.getRandomValues === \"function\" &&\n\t\ttypeof subtle?.decrypt === \"function\" &&\n\t\ttypeof subtle.deriveBits === \"function\" &&\n\t\ttypeof subtle.deriveKey === \"function\" &&\n\t\ttypeof subtle.digest === \"function\" &&\n\t\ttypeof subtle.encrypt === \"function\" &&\n\t\ttypeof subtle.exportKey === \"function\" &&\n\t\ttypeof subtle.generateKey === \"function\" &&\n\t\ttypeof subtle.importKey === \"function\" &&\n\t\ttypeof subtle.sign === \"function\" &&\n\t\ttypeof subtle.verify === \"function\"\n\t);\n}\n\n/**\n * 返回当前主要运行环境。\n *\n * @remarks 在使用 DOM 模拟器的 Node.js 进程中优先报告 `browser`,因为可观察能力比宿主进程名称更有用。\n * @returns `browser`、`worker`、`node` 或无法识别时的 `unknown`。\n */\nexport function detectRuntime(): RuntimeKind {\n\tif (isBrowser()) return \"browser\";\n\tif (isWebWorker()) return \"worker\";\n\tif (isNode()) return \"node\";\n\treturn \"unknown\";\n}\n\n/**\n * 基于 User-Agent 启发式判断手机设备。\n *\n * @param userAgent - 默认读取当前 `navigator.userAgent`;平台对象不存在时使用空字符串。\n * @remarks User-Agent 可以被伪造,不得用于鉴权、安全策略或永久功能分流。\n * @returns 命中手机特征时返回 `true`。\n */\nexport function isMobileUserAgent(userAgent: string = currentUserAgent()): boolean {\n\treturn /Mobile|iPhone|Android.*Mobile|Windows Phone/iu.test(userAgent);\n}\n\n/**\n * 基于 User-Agent 与触点数量启发式判断平板设备。\n *\n * @param userAgent - 默认读取当前 User-Agent。\n * @param maxTouchPoints - 用于识别桌面 User-Agent 模式下的 iPadOS,默认读取当前触点数。\n * @returns 命中平板特征时返回 `true`。\n */\nexport function isTabletUserAgent(userAgent: string = currentUserAgent(), maxTouchPoints: number = currentTouchPoints()): boolean {\n\treturn /iPad|Android(?!.*Mobile)|Tablet/iu.test(userAgent) || (/Macintosh/iu.test(userAgent) && maxTouchPoints > 1);\n}\n"],"mappings":";;;;;;AAQA,MAAM,yBAAkC,OAAO,WAAW,WAAW,cAAc,WAAW,WAAW,UAAU,YAAY;;;;;;AAM/H,MAAM,2BAAoC,OAAO,WAAW,WAAW,mBAAmB,WAAW,WAAW,UAAU,iBAAiB;;;;;;AAO3I,SAAgB,YAAqB;CACpC,MAAM,SAAS,WAAW;CAC1B,OAAO,WAAW,KAAA,KAAa,WAAW,QAAQ,OAAO,aAAa,QAAQ,OAAO,OAAO,aAAa;AAC1G;;;;;;;;AASA,SAAgB,cAAuB;CACtC,OAAO,CAAC,UAAU,KAAK,OAAO,QAAQ,IAAI,YAAY,eAAe,MAAM;AAC5E;;;;;;AAOA,SAAgB,SAAkB;CACjC,MAAM,UAAmB,QAAQ,IAAI,YAAY,SAAS;CAC1D,IAAK,OAAO,YAAY,YAAY,OAAO,YAAY,cAAe,YAAY,MAAM,OAAO;CAC/F,MAAM,WAAoB,QAAQ,IAAI,SAAS,UAAU;CACzD,QAAQ,OAAO,aAAa,YAAY,OAAO,aAAa,eAAe,aAAa,QAAQ,OAAO,QAAQ,IAAI,UAAU,MAAM,MAAM;AAC1I;;;;;;AAOA,SAAgB,WAAoB;CACnC,OAAO,QAAQ,IAAI,YAAY,KAAK,MAAM,KAAA;AAC3C;;;;;;;;AASA,SAAgB,eAAwB;CACvC,MAAM,SAAS,WAAW;CAC1B,MAAM,SAAS,QAAQ;CACvB,OACC,OAAO,QAAQ,oBAAoB,cACnC,OAAO,QAAQ,YAAY,cAC3B,OAAO,OAAO,eAAe,cAC7B,OAAO,OAAO,cAAc,cAC5B,OAAO,OAAO,WAAW,cACzB,OAAO,OAAO,YAAY,cAC1B,OAAO,OAAO,cAAc,cAC5B,OAAO,OAAO,gBAAgB,cAC9B,OAAO,OAAO,cAAc,cAC5B,OAAO,OAAO,SAAS,cACvB,OAAO,OAAO,WAAW;AAE3B;;;;;;;AAQA,SAAgB,gBAA6B;CAC5C,IAAI,UAAU,GAAG,OAAO;CACxB,IAAI,YAAY,GAAG,OAAO;CAC1B,IAAI,OAAO,GAAG,OAAO;CACrB,OAAO;AACR;;;;;;;;AASA,SAAgB,kBAAkB,YAAoB,iBAAiB,GAAY;CAClF,OAAO,gDAAgD,KAAK,SAAS;AACtE;;;;;;;;AASA,SAAgB,kBAAkB,YAAoB,iBAAiB,GAAG,iBAAyB,mBAAmB,GAAY;CACjI,OAAO,oCAAoC,KAAK,SAAS,KAAM,cAAc,KAAK,SAAS,KAAK,iBAAiB;AAClH"}
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../../src/env/index.ts"],"sourcesContent":["import { runtimeGlobals } from \"../internal/runtime\";\n\n/** 可识别的主要 JavaScript 运行环境。 */\nexport type RuntimeKind = \"browser\" | \"node\" | \"unknown\" | \"worker\";\n\n/**\n * 延迟读取当前 User-Agent。\n *\n * @returns Navigator 不存在或字段类型异常时返回空字符串。\n */\nconst currentUserAgent = (): string => {\n\tconst userAgent: unknown = runtimeGlobals.navigator?.userAgent;\n\treturn typeof userAgent === \"string\" ? userAgent : \"\";\n};\n/**\n * 延迟读取当前设备报告的最大触点数。\n *\n * @returns Navigator 不存在或字段类型异常时返回 `0`。\n */\nconst currentTouchPoints = (): number => {\n\tconst maxTouchPoints: unknown = runtimeGlobals.navigator?.maxTouchPoints;\n\treturn typeof maxTouchPoints === \"number\" ? maxTouchPoints : 0;\n};\n\n/**\n * 判断当前运行时是否具有浏览器 `window` 与 `document`。\n *\n * @returns 两项能力均存在时返回 `true`;不读取 DOM 内容。\n */\nexport function isBrowser(): boolean {\n\treturn runtimeGlobals.window?.document !== undefined;\n}\n\n/**\n * 判断当前运行时是否像 Web Worker 且不是 Window。\n *\n * @remarks 经典、模块、Shared 与 Service Worker 全局通常都暴露 `importScripts`;模块\n * Worker 中调用它可能抛错,本检测只检查能力存在,不会执行。\n * @returns 具有 `importScripts` 且不是浏览器 Window 时返回 `true`。\n */\nexport function isWebWorker(): boolean {\n\treturn !isBrowser() && typeof runtimeGlobals.importScripts === \"function\";\n}\n\n/**\n * 判断当前运行时是否暴露 Node.js 版本标记。\n *\n * @returns `process.versions.node` 为字符串时返回 `true`。\n */\nexport function isNode(): boolean {\n\tconst process = runtimeGlobals.process;\n\tif ((typeof process !== \"object\" && typeof process !== \"function\") || process === null) return false;\n\tconst versions: unknown = (process as { versions?: unknown }).versions;\n\tif ((typeof versions !== \"object\" && typeof versions !== \"function\") || versions === null) return false;\n\treturn typeof (versions as { node?: unknown }).node === \"string\";\n}\n\n/**\n * 判断当前运行时是否暴露 uni-app 的 `uni` 全局对象。\n *\n * @returns 全局属性存在且不为 `undefined` 时返回 `true`;不调用任何平台 API。\n */\nexport function isUniApp(): boolean {\n\treturn runtimeGlobals.uni !== undefined;\n}\n\n/**\n * 判断当前运行时是否具备本库完整加密 API 所需的 Web Crypto 能力。\n *\n * @remarks 普通随机数、随机字符串和 UUID 在缺少 Web Crypto 时可以回退到 `Math.random()`,但本函数\n * 仍会返回 `false`,因为摘要、PBKDF2、AES-GCM、RSA 与 ECC 需要完整的 Web Crypto 能力。\n * @returns 同时提供本库 Web Crypto 功能所需方法时返回 `true`。\n */\nexport function hasWebCrypto(): boolean {\n\tconst crypto = runtimeGlobals.crypto;\n\tconst subtle = crypto?.subtle;\n\treturn (\n\t\ttypeof crypto?.getRandomValues === \"function\" &&\n\t\ttypeof subtle?.decrypt === \"function\" &&\n\t\ttypeof subtle.deriveBits === \"function\" &&\n\t\ttypeof subtle.deriveKey === \"function\" &&\n\t\ttypeof subtle.digest === \"function\" &&\n\t\ttypeof subtle.encrypt === \"function\" &&\n\t\ttypeof subtle.exportKey === \"function\" &&\n\t\ttypeof subtle.generateKey === \"function\" &&\n\t\ttypeof subtle.importKey === \"function\" &&\n\t\ttypeof subtle.sign === \"function\" &&\n\t\ttypeof subtle.verify === \"function\"\n\t);\n}\n\n/**\n * 返回当前主要运行环境。\n *\n * @remarks 在使用 DOM 模拟器的 Node.js 进程中优先报告 `browser`,因为可观察能力比宿主进程名称更有用。\n * @returns `browser`、`worker`、`node` 或无法识别时的 `unknown`。\n */\nexport function detectRuntime(): RuntimeKind {\n\tif (isBrowser()) return \"browser\";\n\tif (isWebWorker()) return \"worker\";\n\tif (isNode()) return \"node\";\n\treturn \"unknown\";\n}\n\n/**\n * 基于 User-Agent 启发式判断手机设备。\n *\n * @param userAgent - 默认读取当前 `navigator.userAgent`;平台对象不存在时使用空字符串。\n * @remarks User-Agent 可以被伪造,不得用于鉴权、安全策略或永久功能分流。\n * @returns 命中手机特征时返回 `true`。\n */\nexport function isMobileUserAgent(userAgent: string = currentUserAgent()): boolean {\n\treturn /Mobile|iPhone|Android.*Mobile|Windows Phone/iu.test(userAgent);\n}\n\n/**\n * 基于 User-Agent 与触点数量启发式判断平板设备。\n *\n * @param userAgent - 默认读取当前 User-Agent。\n * @param maxTouchPoints - 用于识别桌面 User-Agent 模式下的 iPadOS,默认读取当前触点数。\n * @returns 命中平板特征时返回 `true`。\n */\nexport function isTabletUserAgent(userAgent: string = currentUserAgent(), maxTouchPoints: number = currentTouchPoints()): boolean {\n\treturn /iPad|Android(?!.*Mobile)|Tablet/iu.test(userAgent) || (/Macintosh/iu.test(userAgent) && maxTouchPoints > 1);\n}\n"],"mappings":";;;;;;;AAUA,MAAM,yBAAiC;CACtC,MAAM,YAAqB,eAAe,WAAW;CACrD,OAAO,OAAO,cAAc,WAAW,YAAY;AACpD;;;;;;AAMA,MAAM,2BAAmC;CACxC,MAAM,iBAA0B,eAAe,WAAW;CAC1D,OAAO,OAAO,mBAAmB,WAAW,iBAAiB;AAC9D;;;;;;AAOA,SAAgB,YAAqB;CACpC,OAAO,eAAe,QAAQ,aAAa,KAAA;AAC5C;;;;;;;;AASA,SAAgB,cAAuB;CACtC,OAAO,CAAC,UAAU,KAAK,OAAO,eAAe,kBAAkB;AAChE;;;;;;AAOA,SAAgB,SAAkB;CACjC,MAAM,UAAU,eAAe;CAC/B,IAAK,OAAO,YAAY,YAAY,OAAO,YAAY,cAAe,YAAY,MAAM,OAAO;CAC/F,MAAM,WAAqB,QAAmC;CAC9D,IAAK,OAAO,aAAa,YAAY,OAAO,aAAa,cAAe,aAAa,MAAM,OAAO;CAClG,OAAO,OAAQ,SAAgC,SAAS;AACzD;;;;;;AAOA,SAAgB,WAAoB;CACnC,OAAO,eAAe,QAAQ,KAAA;AAC/B;;;;;;;;AASA,SAAgB,eAAwB;CACvC,MAAM,SAAS,eAAe;CAC9B,MAAM,SAAS,QAAQ;CACvB,OACC,OAAO,QAAQ,oBAAoB,cACnC,OAAO,QAAQ,YAAY,cAC3B,OAAO,OAAO,eAAe,cAC7B,OAAO,OAAO,cAAc,cAC5B,OAAO,OAAO,WAAW,cACzB,OAAO,OAAO,YAAY,cAC1B,OAAO,OAAO,cAAc,cAC5B,OAAO,OAAO,gBAAgB,cAC9B,OAAO,OAAO,cAAc,cAC5B,OAAO,OAAO,SAAS,cACvB,OAAO,OAAO,WAAW;AAE3B;;;;;;;AAQA,SAAgB,gBAA6B;CAC5C,IAAI,UAAU,GAAG,OAAO;CACxB,IAAI,YAAY,GAAG,OAAO;CAC1B,IAAI,OAAO,GAAG,OAAO;CACrB,OAAO;AACR;;;;;;;;AASA,SAAgB,kBAAkB,YAAoB,iBAAiB,GAAY;CAClF,OAAO,gDAAgD,KAAK,SAAS;AACtE;;;;;;;;AASA,SAAgB,kBAAkB,YAAoB,iBAAiB,GAAG,iBAAyB,mBAAmB,GAAY;CACjI,OAAO,oCAAoC,KAAK,SAAS,KAAM,cAAc,KAAK,SAAS,KAAK,iBAAiB;AAClH"}
@@ -1,6 +1,6 @@
1
1
  //#region src/identity/index.d.ts
2
2
  /** {@link configureInstallationIdentity} 接收的安装标识配置。 */
3
- interface InstallationIdentityConfiguration {
3
+ export interface InstallationIdentityConfiguration {
4
4
  /**
5
5
  * `Local` 中使用的业务键,默认 `identity:installation-id`。
6
6
  *
@@ -9,7 +9,7 @@ interface InstallationIdentityConfiguration {
9
9
  cacheKey?: string;
10
10
  }
11
11
  /** 浏览器或 uni-app 当前安装实例标识。 */
12
- interface InstallationIdentity {
12
+ export interface InstallationIdentity {
13
13
  /**
14
14
  * `Local` 中使用的业务键。
15
15
  *
@@ -56,14 +56,14 @@ interface InstallationIdentity {
56
56
  * @throws `TypeError` 当 `cacheKey` 不是非空字符串或包含外围空白。
57
57
  * @throws `Error` 当安装标识已经使用另一个业务键初始化。
58
58
  */
59
- declare function configureInstallationIdentity(options?: InstallationIdentityConfiguration): void;
59
+ export declare function configureInstallationIdentity(options?: InstallationIdentityConfiguration): void;
60
60
  /**
61
61
  * 全局安装标识状态。
62
62
  *
63
63
  * @remarks Storage 未显式配置时会使用其默认值。生成 UUID 时优先使用 Web Crypto,能力缺失时
64
64
  * 回退到 `Math.random()`。该值不是硬件标识、认证凭证或安全边界。
65
65
  */
66
- declare const installationIdentity: InstallationIdentity;
66
+ export declare const installationIdentity: InstallationIdentity;
67
67
  /**
68
68
  * 返回已有安装标识,否则创建并持久化一个 UUID v4。
69
69
  *
@@ -72,7 +72,6 @@ declare const installationIdentity: InstallationIdentity;
72
72
  * @throws `TypeError` 当显式值或持久化值不是 UUID v4。
73
73
  * @throws `Error` 当当前平台存储不可用。
74
74
  */
75
- declare function getOrCreateInstallationId(installationId?: string): string;
75
+ export declare function getOrCreateInstallationId(installationId?: string): string;
76
76
  //#endregion
77
- export { InstallationIdentity, InstallationIdentityConfiguration, configureInstallationIdentity, getOrCreateInstallationId, installationIdentity };
78
77
  //# sourceMappingURL=index.d.mts.map
@@ -1,3 +1,3 @@
1
- var FastUtils=(function(e,t){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var n=Object.create,r=Object.defineProperty,i=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.getPrototypeOf,s=Object.prototype.hasOwnProperty,c=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),l=(e,t,n,o)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var c=a(t),l=0,u=c.length,d;l<u;l++)d=c[l],!s.call(e,d)&&d!==n&&r(e,d,{get:(e=>t[e]).bind(null,d),enumerable:!(o=i(t,d))||o.enumerable});return e},u=(e,t,i)=>(i=e==null?{}:n(o(e)),l(t||!e||!e.__esModule||!s.call(e,`default`)?r(i,`default`,{value:e,enumerable:!0}):i,e));function d(e,t){if(!Number.isSafeInteger(t)||t<=0)throw RangeError("`size` 必须是正安全整数。");let n=[];for(let r=0;r<e.length;r+=t)n.push(e.slice(r,r+t));return n}function f(e){return e.filter(e=>e!=null)}function p(e){let t=[],n=new Set;for(let r=0;r<e.length;r+=1){if(!(r in e))continue;let i=e[r];n.has(i)||(n.add(i),t.push(i))}return t}function m(e,t){let n=new Set,r=[];for(let i=0;i<e.length;i+=1){let a=e[i];if(a===void 0&&!(i in e))continue;let o=t(a,i);n.has(o)||(n.add(o),r.push(a))}return r}function h(e,t){let n=new Map;return e.forEach((e,r)=>{let i=t(e,r),a=n.get(i);a===void 0?n.set(i,[e]):a.push(e)}),n}function g(e,t){let n=[],r=[];return e.forEach((e,i)=>(t(e,i)?n:r).push(e)),[n,r]}function _(e,t){let n=new Set(p(t));return p(e).filter(e=>!n.has(e))}function v(e,t){let n=new Set(p(t));return p(e).filter(e=>n.has(e))}function y(e,t){let n=new Set;for(let r=0;r<e.length;r+=1){let i=e[r];if(i===void 0&&!(r in e))continue;let a=t(i,r);if(n.has(a))return!0;n.add(a)}return!1}function b(e,t){let n,r=!1;for(let i=0;i<e.length;i+=1){let a=e[i];if(a===void 0&&!(i in e))continue;let o=t(a,i);if(!r){n=o,r=!0;continue}if(!(n===o||Number.isNaN(n)&&Number.isNaN(o)))return!1}return!0}let x=2147483647,S=e=>{let t=Error(`操作已取消。`,{cause:e.reason});return t.name=`AbortError`,t},C=e=>{if(e?.aborted)throw S(e)},w=(e,t=`milliseconds`)=>{if(!Number.isFinite(e)||e<0||e>x)throw RangeError(`\`${t}\` 必须是 0 到 ${x} 之间的有限数。`);return e};function T(e,t={}){let n=w(e),r=t.signal;return C(r),new Promise((e,t)=>{let i;function a(){r!==void 0&&(clearTimeout(i),t(S(r)))}i=setTimeout(()=>{r?.removeEventListener(`abort`,a),e()},n),r?.addEventListener(`abort`,a,{once:!0})})}function ee(e,t,n={}){let r=w(t,`timeoutMs`),i=n.signal;return C(i),new Promise((t,a)=>{let o=!1,s;function c(){clearTimeout(s),i?.removeEventListener(`abort`,u)}function l(e){o||(o=!0,c(),e())}function u(){i!==void 0&&l(()=>{a(S(i))})}s=setTimeout(()=>{l(()=>{a(Error(n.message??`操作超过 ${r} 毫秒仍未完成。`))})},r),i?.addEventListener(`abort`,u,{once:!0}),Promise.resolve(e).then(e=>{l(()=>{t(e)})},e=>{l(()=>{a(e)})})})}async function E(e,t={}){let n=t.attempts??3,r=w(t.delayMs??200,`delayMs`),i=w(t.maxDelayMs??3e4,`maxDelayMs`),a=t.factor??2;if(!Number.isSafeInteger(n)||n<=0)throw RangeError("`attempts` 必须是正安全整数。");if(!Number.isFinite(a)||a<1)throw RangeError("`factor` 必须是大于或等于 1 的有限数。");for(let o=1;o<=n;o+=1){C(t.signal);let s=t.signal===void 0?{attempt:o}:{attempt:o,signal:t.signal};try{return await e(s)}catch(e){if(o===n||t.shouldRetry!==void 0&&!await t.shouldRetry(e,s))throw e;await T(r===0?0:Math.min(r*a**(o-1),i),t.signal===void 0?{}:{signal:t.signal})}}throw Error(`重试结束但未获得结果。`)}async function D(e,t,n,r={}){if(!Number.isSafeInteger(t)||t<=0)throw RangeError("`concurrency` 必须是正安全整数。");C(r.signal);let i=Array(e.length),a=0,o=!1,s=async()=>{for(;!o;){C(r.signal);let t=a;if(t>=e.length)return;if(a+=1,t in e)try{i[t]=await n(e[t],t,r.signal)}catch(e){throw o=!0,e}}},c=Math.min(t,e.length);return await Promise.all(Array.from({length:c},()=>s())),i}function O(e,t=300){let n=w(t,`delayMs`),r,i,a=[],o=async()=>{let t=i;if(t===void 0)throw Error(`当前没有待处理的防抖调用。`);i=void 0,r=void 0;let n=a;a=[];try{let r=await e(...t);return n.forEach(e=>{e.resolve(r)}),r}catch(e){throw n.forEach(t=>{t.reject(e)}),e}},s=(...e)=>(i=e,r!==void 0&&clearTimeout(r),r=setTimeout(()=>{o().catch(()=>void 0)},n),new Promise((e,t)=>a.push({reject:t,resolve:e})));return s.cancel=e=>{r!==void 0&&clearTimeout(r),r=void 0,i=void 0;let t=e??Error(`防抖调用已取消。`);a.forEach(e=>{e.reject(t)}),a=[]},s.flush=()=>{if(r!==void 0)return clearTimeout(r),o()},s.pending=()=>r!==void 0,s}function k(e,t=300){let n=w(t,`delayMs`),r,i,a=!1,o=!1,s=()=>{!a&&o&&(i=void 0)},c=(...t)=>{if(i!==void 0)return i;a=!0,o=!1;let c;try{c=Promise.resolve(e(...t))}catch(e){c=Promise.reject(e)}return i=c,c.then(()=>{o=!0,s()},()=>{o=!0,s()}),r=setTimeout(()=>{r=void 0,a=!1,s()},n),c};return c.cancel=()=>{r!==void 0&&clearTimeout(r),r=void 0,a=!1,s()},c.pending=()=>i!==void 0,c}let te=()=>{let e=globalThis.TextDecoder;if(typeof e!=`function`)throw Error(`当前运行环境不支持 TextDecoder。`);return new e(`utf-8`,{fatal:!0})},ne=()=>{let e=globalThis.TextEncoder;if(typeof e!=`function`)throw Error(`当前运行环境不支持 TextEncoder。`);return new e},A=e=>ne().encode(e),re=Symbol.for(`@fast-china/utils/parse-json`),ie=function(){let e=String(this);try{return JSON.parse(e)}catch{return e}};Object.defineProperty(ie,re,{value:!0});let ae=()=>{let e=Object.getOwnPropertyDescriptor(String.prototype,`parseJson`);if(e!==void 0){if(typeof e.value==`function`&&Reflect.get(e.value,re)===!0)return;throw TypeError(`String.prototype.parseJson 已被其他实现占用。`)}try{Object.defineProperty(String.prototype,"parseJson",{configurable:!0,enumerable:!1,value:ie,writable:!0})}catch(e){throw TypeError(`当前运行环境不允许安装 String.prototype.parseJson。`,{cause:e})}},j=e=>(ae(),e),oe=[`B`,`kB`,`MB`,`GB`,`TB`,`PB`,`EB`,`ZB`,`YB`],se=[`B`,`KiB`,`MiB`,`GiB`,`TiB`,`PiB`,`EiB`,`ZiB`,`YiB`],M=(e,t)=>{if(Number.isNaN(e))throw RangeError(`\`${t}\` 不能是 NaN。`)},N=(e,t)=>{if(!Number.isFinite(e))throw RangeError(`\`${t}\` 必须是有限数。`)},ce=(e,t)=>{if(Object.is(e,-0))return-0;let[n=`0`,r=`0`]=e.toString().split(`e`);return Number(`${n}e${Number(r)+t}`)};function le(e,t,n){if(M(e,`value`),M(t,`minimum`),M(n,`maximum`),t>n)throw RangeError("`minimum` 不能大于 `maximum`。");return Math.min(Math.max(e,t),n)}function ue(e,t,n,r=!1){if(M(e,`value`),M(t,`minimum`),M(n,`maximum`),t>n)throw RangeError("`minimum` 不能大于 `maximum`。");return e>=t&&(r?e<=n:e<n)}function de(e,t=0){if(N(e,`value`),!Number.isSafeInteger(t)||t<-15||t>15)throw RangeError("`digits` 必须是 -15 到 15 之间的安全整数。");let n=ce(e,t);return Number.isFinite(n)?ce(Math.round(n),-t):e}function fe(e){let t=0,n=0;return e.forEach(e=>{N(e,`value`);let r=e-n,i=t+r;if(!Number.isFinite(i))throw RangeError(`总和超出有限数范围。`);n=i-t-r,t=i}),t}function pe(e){let t=0,n=0;return e.forEach(e=>{N(e,`value`),t+=1,n=n*((t-1)/t)+e/t}),t===0?void 0:n}function me(e,t,n){N(e,`start`),N(t,`end`),N(n,`amount`);let r=e*(1-n)+t*n;if(!Number.isFinite(r))throw RangeError(`插值结果超出有限数范围。`);return r}function he(e,t={}){if(N(e,`bytes`),e<0)throw RangeError("`bytes` 不能为负数。");let n=t.base??1024;if(n!==1e3&&n!==1024)throw RangeError("`base` 必须是 1000 或 1024。");let r=n,i=t.decimals??2;if(!Number.isSafeInteger(i)||i<0||i>20)throw RangeError("`decimals` 必须是 0 到 20 之间的安全整数。");if(e===0)return`0 B`;let a=r===1024?se:oe,o=Math.min(Math.floor(Math.log(e)/Math.log(r)),a.length-1),s=e/r**o;return`${new Intl.NumberFormat(t.locale??`en-US`,{maximumFractionDigits:i,minimumFractionDigits:0,useGrouping:!1}).format(s)} ${a[o]??a.at(-1)}`}function ge(e,t){if(!Number.isSafeInteger(e)||!Number.isSafeInteger(t))throw RangeError("`minimum` 和 `maximumExclusive` 必须是安全整数。");let n=t-e,r=4294967296;if(n<=0||n>r)throw RangeError(`区间不能为空且宽度不能超过 2^32。`);let i=globalThis.crypto,a=typeof i?.getRandomValues==`function`,o=Math.floor(r/n)*n,s=new Uint32Array(1),c;do a?i.getRandomValues(s):s[0]=Math.floor(Math.random()*r),c=s[0]??r;while(c>=o);return e+c%n}let P=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,_e=e=>TypeError(`该值不是有效的 ${e===`url`?`Base64URL`:`Base64`}。`),ve=(e,t)=>{let n=t===`standard`?e.replace(/[\t\n\f\r ]+/gu,``):e;if(!(t===`url`?/^[\w-]*={0,2}$/u:/^[A-Za-z\d+/]*={0,2}$/u).test(n)||n.length%4==1||n.includes(`=`)&&n.length%4!=0)throw _e(t);let r=(t===`url`?n.replace(/-/gu,`+`).replace(/_/gu,`/`):n).replace(/=+$/u,``);return r.padEnd(Math.ceil(r.length/4)*4,`=`)},ye=e=>{let t=``;for(let n=0;n<e.length;n+=3){let r=e[n]??0,i=e[n+1],a=e[n+2],o=r<<16|(i??0)<<8|(a??0);t+=P[o>>18&63]??``,t+=P[o>>12&63]??``,t+=i===void 0?`=`:P[o>>6&63]??``,t+=a===void 0?`=`:P[o&63]??``}return t},be=(e,t)=>{let n=ve(e,t);if(n.length===0)return new Uint8Array;let r=n.endsWith(`==`)?2:+!!n.endsWith(`=`),i=new Uint8Array(n.length/4*3-r),a=0;for(let e=0;e<n.length;e+=4){let o=P.indexOf(n[e]??``),s=P.indexOf(n[e+1]??``),c=n[e+2]??`=`,l=n[e+3]??`=`,u=c===`=`?0:P.indexOf(c),d=l===`=`?0:P.indexOf(l);if(o<0||s<0||u<0||d<0||e+4===n.length&&(r===2&&s&15||r===1&&u&3))throw _e(t);let f=o<<18|s<<12|u<<6|d;a<i.length&&(i[a++]=f>>16&255),a<i.length&&(i[a++]=f>>8&255),a<i.length&&(i[a++]=f&255)}return i},xe=e=>{let t=te();try{return t.decode(e)}catch(e){throw TypeError(`解码后的字节不是有效的 UTF-8。`,{cause:e})}};function F(e){return ye(e)}function I(e){return be(e,`standard`)}function Se(e){return ye(A(e))}function Ce(e){return j(xe(I(e)))}function L(e){return ye(e).replace(/\+/gu,`-`).replace(/\//gu,`_`).replace(/=+$/u,``)}function R(e){return be(e,`url`)}function we(e){return L(A(e))}function Te(e){return j(xe(R(e)))}function Ee(e){let t=new Uint8Array(e.length);for(let n=0;n<e.length;n+=1){let r=e.charCodeAt(n);if(r>255)throw TypeError(`待编码字符串包含超出 Latin-1 范围的字符。`);t[n]=r}return F(t)}function De(e){let t=I(e),n=``;for(let e of t)n+=String.fromCharCode(e);return j(n)}let Oe=Object.freeze([{index:977,randomIndex:188},{index:926,randomIndex:201},{index:851,randomIndex:225},{index:700,randomIndex:255},{index:600,randomIndex:268},{index:500,randomIndex:277},{index:400,randomIndex:288},{index:330,randomIndex:327},{index:300,randomIndex:180},{index:200,randomIndex:178},{index:100,randomIndex:124},{index:98,randomIndex:95},{index:92,randomIndex:90},{index:91,randomIndex:87},{index:88,randomIndex:84},{index:82,randomIndex:79},{index:78,randomIndex:71},{index:72,randomIndex:69},{index:68,randomIndex:66},{index:59,randomIndex:55},{index:48,randomIndex:43},{index:42,randomIndex:37},{index:36,randomIndex:30},{index:33,randomIndex:27},{index:24,randomIndex:20},{index:23,randomIndex:18},{index:21,randomIndex:16},{index:17,randomIndex:14},{index:13,randomIndex:9},{index:7,randomIndex:4},{index:5,randomIndex:3},{index:2,randomIndex:1}]),ke=e=>{if(!Number.isSafeInteger(e)||e<0)throw RangeError("`prefixStrLength` 必须是非负安全整数。")},Ae=e=>{let t=``;for(let n=0;n<e;n+=1)t+=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz`[ge(0,52)]??``;return t},je=e=>{let t=e;for(let n of Oe){if(n.index>=e.length)continue;let r=e[n.randomIndex]??e.at(-1)??``;t=t.slice(0,n.index)+r+t.slice(n.index)}return t},Me=e=>{let t=e;for(let n=Oe.length-1;n>=0;--n){let r=Oe[n];r!==void 0&&r.index<e.length&&(t=t.slice(0,r.index)+t.slice(r.index+1))}return t};function Ne(e,t=6){if(e.length===0)return``;ke(t);let n=Ae(t),r=Ee(encodeURIComponent(e));return t!==0&&(r=je(r)),n+r}function Pe(e,t=6){if(e.length===0)return j(``);if(ke(t),t>e.length)throw TypeError(`Base64 值的长度小于配置的前缀长度。`);let n=e.slice(t);return t!==0&&(n=Me(n)),j(decodeURIComponent(De(n)))}let Fe=(e,t)=>{if(!Number.isFinite(e)||e<0||e>255)throw RangeError(`\`${t}\` 必须是 0 到 255 之间的有限数。`)},Ie=e=>{if(!Number.isFinite(e)||e<0||e>1)throw RangeError("`alpha` 必须是 0 到 1 之间的有限数。")},Le=e=>{let t=e.startsWith(`#`)?e.slice(1):e;if(![3,4,6,8].includes(t.length)||!/^[\dA-F]+$/iu.test(t))throw TypeError(`十六进制颜色必须包含 3、4、6 或 8 个十六进制字符。`);return t.length<=4?Array.from(t,e=>`${e}${e}`).join(``):t},Re=e=>Math.round(e).toString(16).padStart(2,`0`);function ze(e){let t=Le(e);return{red:Number.parseInt(t.slice(0,2),16),green:Number.parseInt(t.slice(2,4),16),blue:Number.parseInt(t.slice(4,6),16),alpha:t.length===8?Number.parseInt(t.slice(6,8),16)/255:1}}function Be(e,t=`alpha`in e&&e.alpha<1){Fe(e.red,`red`),Fe(e.green,`green`),Fe(e.blue,`blue`);let n=`alpha`in e?e.alpha:1;return Ie(n),`#${`${Re(e.red)}${Re(e.green)}${Re(e.blue)}`}${t?Re(n*255):``}`}function Ve(e,t,n){if(!Number.isFinite(n)||n<0||n>1)throw RangeError("`amount` 必须是 0 到 1 之间的有限数。");let r=ze(e),i=ze(t),a=(e,t)=>e+(t-e)*n;return Be({red:a(r.red,i.red),green:a(r.green,i.green),blue:a(r.blue,i.blue),alpha:a(r.alpha,i.alpha)},r.alpha<1||i.alpha<1)}function He(e,t){return Ve(e,`#000000`,t)}function Ue(e,t){return Ve(e,`#ffffff`,t)}let We=e=>{let t=e/255;return t<=.04045?t/12.92:((t+.055)/1.055)**2.4};function Ge(e){let{red:t,green:n,blue:r}=ze(e);return .2126*We(t)+.7152*We(n)+.0722*We(r)}function Ke(e,t){let n=Ge(e),r=Ge(t),i=Math.max(n,r),a=Math.min(n,r);return(i+.05)/(a+.05)}function qe(e,t=`#000000`,n=`#ffffff`){return Ke(e,t)>=Ke(e,n)?t:n}var Je=c((()=>{})),z=c(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r():typeof define==`function`&&define.amd?define([],r):n.CryptoJS=r()})(e,function(){var e=e||function(e,t){var n;if(typeof window<`u`&&window.crypto&&(n=window.crypto),typeof self<`u`&&self.crypto&&(n=self.crypto),typeof globalThis<`u`&&globalThis.crypto&&(n=globalThis.crypto),!n&&typeof window<`u`&&window.msCrypto&&(n=window.msCrypto),!n&&typeof global<`u`&&global.crypto&&(n=global.crypto),!n&&typeof require==`function`)try{n=Je()}catch{}var r=function(){if(n){if(typeof n.getRandomValues==`function`)try{return n.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof n.randomBytes==`function`)try{return n.randomBytes(4).readInt32LE()}catch{}}throw Error(`Native crypto module could not be used to get secure random number.`)},i=Object.create||function(){function e(){}return function(t){var n;return e.prototype=t,n=new e,e.prototype=null,n}}(),a={},o=a.lib={},s=o.Base=function(){return{extend:function(e){var t=i(this);return e&&t.mixIn(e),(!t.hasOwnProperty(`init`)||this.init===t.init)&&(t.init=function(){t.$super.init.apply(this,arguments)}),t.init.prototype=t,t.$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty(`toString`)&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),c=o.WordArray=s.extend({init:function(e,n){e=this.words=e||[],this.sigBytes=n==t?e.length*4:n},toString:function(e){return(e||u).stringify(this)},concat:function(e){var t=this.words,n=e.words,r=this.sigBytes,i=e.sigBytes;if(this.clamp(),r%4)for(var a=0;a<i;a++){var o=n[a>>>2]>>>24-a%4*8&255;t[r+a>>>2]|=o<<24-(r+a)%4*8}else for(var s=0;s<i;s+=4)t[r+s>>>2]=n[s>>>2];return this.sigBytes+=i,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=s.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],n=0;n<e;n+=4)t.push(r());return new c.init(t,e)}}),l=a.enc={},u=l.Hex={stringify:function(e){for(var t=e.words,n=e.sigBytes,r=[],i=0;i<n;i++){var a=t[i>>>2]>>>24-i%4*8&255;r.push((a>>>4).toString(16)),r.push((a&15).toString(16))}return r.join(``)},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r+=2)n[r>>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new c.init(n,t/2)}},d=l.Latin1={stringify:function(e){for(var t=e.words,n=e.sigBytes,r=[],i=0;i<n;i++){var a=t[i>>>2]>>>24-i%4*8&255;r.push(String.fromCharCode(a))}return r.join(``)},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r++)n[r>>>2]|=(e.charCodeAt(r)&255)<<24-r%4*8;return new c.init(n,t)}},f=l.Utf8={stringify:function(e){try{return decodeURIComponent(escape(d.stringify(e)))}catch{throw Error(`Malformed UTF-8 data`)}},parse:function(e){return d.parse(unescape(encodeURIComponent(e)))}},p=o.BufferedBlockAlgorithm=s.extend({reset:function(){this._data=new c.init,this._nDataBytes=0},_append:function(e){typeof e==`string`&&(e=f.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n,r=this._data,i=r.words,a=r.sigBytes,o=this.blockSize,s=a/(o*4);s=t?e.ceil(s):e.max((s|0)-this._minBufferSize,0);var l=s*o,u=e.min(l*4,a);if(l){for(var d=0;d<l;d+=o)this._doProcessBlock(i,d);n=i.splice(0,l),r.sigBytes-=u}return new c.init(n,u)},clone:function(){var e=s.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0});o.Hasher=p.extend({cfg:s.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){p.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){return e&&this._append(e),this._doFinalize()},blockSize:16,_createHelper:function(e){return function(t,n){return new e.init(n).finalize(t)}},_createHmacHelper:function(e){return function(t,n){return new m.HMAC.init(e,n).finalize(t)}}});var m=a.algo={};return a}(Math);return e})})),Ye=c(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(z()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib.WordArray,r=t.enc;r.Base64={stringify:function(e){var t=e.words,n=e.sigBytes,r=this._map;e.clamp();for(var i=[],a=0;a<n;a+=3)for(var o=t[a>>>2]>>>24-a%4*8&255,s=t[a+1>>>2]>>>24-(a+1)%4*8&255,c=t[a+2>>>2]>>>24-(a+2)%4*8&255,l=o<<16|s<<8|c,u=0;u<4&&a+u*.75<n;u++)i.push(r.charAt(l>>>6*(3-u)&63));var d=r.charAt(64);if(d)for(;i.length%4;)i.push(d);return i.join(``)},parse:function(e){var t=e.length,n=this._map,r=this._reverseMap;if(!r){r=this._reverseMap=[];for(var a=0;a<n.length;a++)r[n.charCodeAt(a)]=a}var o=n.charAt(64);if(o){var s=e.indexOf(o);s!==-1&&(t=s)}return i(e,t,r)},_map:`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=`};function i(e,t,r){for(var i=[],a=0,o=0;o<t;o++)if(o%4){var s=r[e.charCodeAt(o-1)]<<o%4*2|r[e.charCodeAt(o)]>>>6-o%4*2;i[a>>>2]|=s<<24-a%4*8,a++}return n.create(i,a)}})(),e.enc.Base64})})),Xe=c(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(z()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return(function(t){var n=e,r=n.lib,i=r.WordArray,a=r.Hasher,o=n.algo,s=[];(function(){for(var e=0;e<64;e++)s[e]=t.abs(t.sin(e+1))*4294967296|0})();var c=o.MD5=a.extend({_doReset:function(){this._hash=new i.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(e,t){for(var n=0;n<16;n++){var r=t+n,i=e[r];e[r]=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360}var a=this._hash.words,o=e[t+0],c=e[t+1],p=e[t+2],m=e[t+3],h=e[t+4],g=e[t+5],_=e[t+6],v=e[t+7],y=e[t+8],b=e[t+9],x=e[t+10],S=e[t+11],C=e[t+12],w=e[t+13],T=e[t+14],ee=e[t+15],E=a[0],D=a[1],O=a[2],k=a[3];E=l(E,D,O,k,o,7,s[0]),k=l(k,E,D,O,c,12,s[1]),O=l(O,k,E,D,p,17,s[2]),D=l(D,O,k,E,m,22,s[3]),E=l(E,D,O,k,h,7,s[4]),k=l(k,E,D,O,g,12,s[5]),O=l(O,k,E,D,_,17,s[6]),D=l(D,O,k,E,v,22,s[7]),E=l(E,D,O,k,y,7,s[8]),k=l(k,E,D,O,b,12,s[9]),O=l(O,k,E,D,x,17,s[10]),D=l(D,O,k,E,S,22,s[11]),E=l(E,D,O,k,C,7,s[12]),k=l(k,E,D,O,w,12,s[13]),O=l(O,k,E,D,T,17,s[14]),D=l(D,O,k,E,ee,22,s[15]),E=u(E,D,O,k,c,5,s[16]),k=u(k,E,D,O,_,9,s[17]),O=u(O,k,E,D,S,14,s[18]),D=u(D,O,k,E,o,20,s[19]),E=u(E,D,O,k,g,5,s[20]),k=u(k,E,D,O,x,9,s[21]),O=u(O,k,E,D,ee,14,s[22]),D=u(D,O,k,E,h,20,s[23]),E=u(E,D,O,k,b,5,s[24]),k=u(k,E,D,O,T,9,s[25]),O=u(O,k,E,D,m,14,s[26]),D=u(D,O,k,E,y,20,s[27]),E=u(E,D,O,k,w,5,s[28]),k=u(k,E,D,O,p,9,s[29]),O=u(O,k,E,D,v,14,s[30]),D=u(D,O,k,E,C,20,s[31]),E=d(E,D,O,k,g,4,s[32]),k=d(k,E,D,O,y,11,s[33]),O=d(O,k,E,D,S,16,s[34]),D=d(D,O,k,E,T,23,s[35]),E=d(E,D,O,k,c,4,s[36]),k=d(k,E,D,O,h,11,s[37]),O=d(O,k,E,D,v,16,s[38]),D=d(D,O,k,E,x,23,s[39]),E=d(E,D,O,k,w,4,s[40]),k=d(k,E,D,O,o,11,s[41]),O=d(O,k,E,D,m,16,s[42]),D=d(D,O,k,E,_,23,s[43]),E=d(E,D,O,k,b,4,s[44]),k=d(k,E,D,O,C,11,s[45]),O=d(O,k,E,D,ee,16,s[46]),D=d(D,O,k,E,p,23,s[47]),E=f(E,D,O,k,o,6,s[48]),k=f(k,E,D,O,v,10,s[49]),O=f(O,k,E,D,T,15,s[50]),D=f(D,O,k,E,g,21,s[51]),E=f(E,D,O,k,C,6,s[52]),k=f(k,E,D,O,m,10,s[53]),O=f(O,k,E,D,x,15,s[54]),D=f(D,O,k,E,c,21,s[55]),E=f(E,D,O,k,y,6,s[56]),k=f(k,E,D,O,ee,10,s[57]),O=f(O,k,E,D,_,15,s[58]),D=f(D,O,k,E,w,21,s[59]),E=f(E,D,O,k,h,6,s[60]),k=f(k,E,D,O,S,10,s[61]),O=f(O,k,E,D,p,15,s[62]),D=f(D,O,k,E,b,21,s[63]),a[0]=a[0]+E|0,a[1]=a[1]+D|0,a[2]=a[2]+O|0,a[3]=a[3]+k|0},_doFinalize:function(){var e=this._data,n=e.words,r=this._nDataBytes*8,i=e.sigBytes*8;n[i>>>5]|=128<<24-i%32;var a=t.floor(r/4294967296),o=r;n[(i+64>>>9<<4)+15]=(a<<8|a>>>24)&16711935|(a<<24|a>>>8)&4278255360,n[(i+64>>>9<<4)+14]=(o<<8|o>>>24)&16711935|(o<<24|o>>>8)&4278255360,e.sigBytes=(n.length+1)*4,this._process();for(var s=this._hash,c=s.words,l=0;l<4;l++){var u=c[l];c[l]=(u<<8|u>>>24)&16711935|(u<<24|u>>>8)&4278255360}return s},clone:function(){var e=a.clone.call(this);return e._hash=this._hash.clone(),e}});function l(e,t,n,r,i,a,o){var s=e+(t&n|~t&r)+i+o;return(s<<a|s>>>32-a)+t}function u(e,t,n,r,i,a,o){var s=e+(t&r|n&~r)+i+o;return(s<<a|s>>>32-a)+t}function d(e,t,n,r,i,a,o){var s=e+(t^n^r)+i+o;return(s<<a|s>>>32-a)+t}function f(e,t,n,r,i,a,o){var s=e+(n^(t|~r))+i+o;return(s<<a|s>>>32-a)+t}n.MD5=a._createHelper(c),n.HmacMD5=a._createHmacHelper(c)})(Math),e.MD5})})),Ze=c(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(z()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib,r=n.WordArray,i=n.Hasher,a=t.algo,o=[],s=a.SHA1=i.extend({_doReset:function(){this._hash=new r.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(e,t){for(var n=this._hash.words,r=n[0],i=n[1],a=n[2],s=n[3],c=n[4],l=0;l<80;l++){if(l<16)o[l]=e[t+l]|0;else{var u=o[l-3]^o[l-8]^o[l-14]^o[l-16];o[l]=u<<1|u>>>31}var d=(r<<5|r>>>27)+c+o[l];d+=l<20?(i&a|~i&s)+1518500249:l<40?(i^a^s)+1859775393:l<60?(i&a|i&s|a&s)-1894007588:(i^a^s)-899497514,c=s,s=a,a=i<<30|i>>>2,i=r,r=d}n[0]=n[0]+r|0,n[1]=n[1]+i|0,n[2]=n[2]+a|0,n[3]=n[3]+s|0,n[4]=n[4]+c|0},_doFinalize:function(){var e=this._data,t=e.words,n=this._nDataBytes*8,r=e.sigBytes*8;return t[r>>>5]|=128<<24-r%32,t[(r+64>>>9<<4)+14]=Math.floor(n/4294967296),t[(r+64>>>9<<4)+15]=n,e.sigBytes=t.length*4,this._process(),this._hash},clone:function(){var e=i.clone.call(this);return e._hash=this._hash.clone(),e}});t.SHA1=i._createHelper(s),t.HmacSHA1=i._createHmacHelper(s)})(),e.SHA1})})),Qe=c(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(z()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){(function(){var t=e,n=t.lib.Base,r=t.enc.Utf8,i=t.algo;i.HMAC=n.extend({init:function(e,t){e=this._hasher=new e.init,typeof t==`string`&&(t=r.parse(t));var n=e.blockSize,i=n*4;t.sigBytes>i&&(t=e.finalize(t)),t.clamp();for(var a=this._oKey=t.clone(),o=this._iKey=t.clone(),s=a.words,c=o.words,l=0;l<n;l++)s[l]^=1549556828,c[l]^=909522486;a.sigBytes=o.sigBytes=i,this.reset()},reset:function(){var e=this._hasher;e.reset(),e.update(this._iKey)},update:function(e){return this._hasher.update(e),this},finalize:function(e){var t=this._hasher,n=t.finalize(e);return t.reset(),t.finalize(this._oKey.clone().concat(n))}})})()})})),$e=c(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(z(),Ze(),Qe()):typeof define==`function`&&define.amd?define([`./core`,`./sha1`,`./hmac`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib,r=n.Base,i=n.WordArray,a=t.algo,o=a.MD5,s=a.EvpKDF=r.extend({cfg:r.extend({keySize:4,hasher:o,iterations:1}),init:function(e){this.cfg=this.cfg.extend(e)},compute:function(e,t){for(var n,r=this.cfg,a=r.hasher.create(),o=i.create(),s=o.words,c=r.keySize,l=r.iterations;s.length<c;){n&&a.update(n),n=a.update(e).finalize(t),a.reset();for(var u=1;u<l;u++)n=a.finalize(n),a.reset();o.concat(n)}return o.sigBytes=c*4,o}});t.EvpKDF=function(e,t,n){return s.create(n).compute(e,t)}})(),e.EvpKDF})})),B=c(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(z(),$e()):typeof define==`function`&&define.amd?define([`./core`,`./evpkdf`],r):r(n.CryptoJS)})(e,function(e){e.lib.Cipher||function(t){var n=e,r=n.lib,i=r.Base,a=r.WordArray,o=r.BufferedBlockAlgorithm,s=n.enc;s.Utf8;var c=s.Base64,l=n.algo.EvpKDF,u=r.Cipher=o.extend({cfg:i.extend(),createEncryptor:function(e,t){return this.create(this._ENC_XFORM_MODE,e,t)},createDecryptor:function(e,t){return this.create(this._DEC_XFORM_MODE,e,t)},init:function(e,t,n){this.cfg=this.cfg.extend(n),this._xformMode=e,this._key=t,this.reset()},reset:function(){o.reset.call(this),this._doReset()},process:function(e){return this._append(e),this._process()},finalize:function(e){return e&&this._append(e),this._doFinalize()},keySize:4,ivSize:4,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function e(e){return typeof e==`string`?S:y}return function(t){return{encrypt:function(n,r,i){return e(r).encrypt(t,n,r,i)},decrypt:function(n,r,i){return e(r).decrypt(t,n,r,i)}}}}()});r.StreamCipher=u.extend({_doFinalize:function(){return this._process(!0)},blockSize:1});var d=n.mode={},f=r.BlockCipherMode=i.extend({createEncryptor:function(e,t){return this.Encryptor.create(e,t)},createDecryptor:function(e,t){return this.Decryptor.create(e,t)},init:function(e,t){this._cipher=e,this._iv=t}}),p=d.CBC=function(){var e=f.extend();e.Encryptor=e.extend({processBlock:function(e,t){var r=this._cipher,i=r.blockSize;n.call(this,e,t,i),r.encryptBlock(e,t),this._prevBlock=e.slice(t,t+i)}}),e.Decryptor=e.extend({processBlock:function(e,t){var r=this._cipher,i=r.blockSize,a=e.slice(t,t+i);r.decryptBlock(e,t),n.call(this,e,t,i),this._prevBlock=a}});function n(e,n,r){var i,a=this._iv;a?(i=a,this._iv=t):i=this._prevBlock;for(var o=0;o<r;o++)e[n+o]^=i[o]}return e}(),m=n.pad={},h=m.Pkcs7={pad:function(e,t){for(var n=t*4,r=n-e.sigBytes%n,i=r<<24|r<<16|r<<8|r,o=[],s=0;s<r;s+=4)o.push(i);var c=a.create(o,r);e.concat(c)},unpad:function(e){var t=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=t}};r.BlockCipher=u.extend({cfg:u.cfg.extend({mode:p,padding:h}),reset:function(){var e;u.reset.call(this);var t=this.cfg,n=t.iv,r=t.mode;this._xformMode==this._ENC_XFORM_MODE?e=r.createEncryptor:(e=r.createDecryptor,this._minBufferSize=1),this._mode&&this._mode.__creator==e?this._mode.init(this,n&&n.words):(this._mode=e.call(r,this,n&&n.words),this._mode.__creator=e)},_doProcessBlock:function(e,t){this._mode.processBlock(e,t)},_doFinalize:function(){var e,t=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(t.pad(this._data,this.blockSize),e=this._process(!0)):(e=this._process(!0),t.unpad(e)),e},blockSize:4});var g=r.CipherParams=i.extend({init:function(e){this.mixIn(e)},toString:function(e){return(e||this.formatter).stringify(this)}}),_=n.format={},v=_.OpenSSL={stringify:function(e){var t,n=e.ciphertext,r=e.salt;return t=r?a.create([1398893684,1701076831]).concat(r).concat(n):n,t.toString(c)},parse:function(e){var t,n=c.parse(e),r=n.words;return r[0]==1398893684&&r[1]==1701076831&&(t=a.create(r.slice(2,4)),r.splice(0,4),n.sigBytes-=16),g.create({ciphertext:n,salt:t})}},y=r.SerializableCipher=i.extend({cfg:i.extend({format:v}),encrypt:function(e,t,n,r){r=this.cfg.extend(r);var i=e.createEncryptor(n,r),a=i.finalize(t),o=i.cfg;return g.create({ciphertext:a,key:n,iv:o.iv,algorithm:e,mode:o.mode,padding:o.padding,blockSize:e.blockSize,formatter:r.format})},decrypt:function(e,t,n,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),e.createDecryptor(n,r).finalize(t.ciphertext)},_parse:function(e,t){return typeof e==`string`?t.parse(e,this):e}}),b=n.kdf={},x=b.OpenSSL={execute:function(e,t,n,r,i){if(r||=a.random(8),i)var o=l.create({keySize:t+n,hasher:i}).compute(e,r);else var o=l.create({keySize:t+n}).compute(e,r);var s=a.create(o.words.slice(t),n*4);return o.sigBytes=t*4,g.create({key:o,iv:s,salt:r})}},S=r.PasswordBasedCipher=y.extend({cfg:y.cfg.extend({kdf:x}),encrypt:function(e,t,n,r){r=this.cfg.extend(r);var i=r.kdf.execute(n,e.keySize,e.ivSize,r.salt,r.hasher);r.iv=i.iv;var a=y.encrypt.call(this,e,t,i.key,r);return a.mixIn(i),a},decrypt:function(e,t,n,r){r=this.cfg.extend(r),t=this._parse(t,r.format);var i=r.kdf.execute(n,e.keySize,e.ivSize,t.salt,r.hasher);return r.iv=i.iv,y.decrypt.call(this,e,t,i.key,r)}})}()})})),et=c(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(z(),Ye(),Xe(),$e(),B()):typeof define==`function`&&define.amd?define([`./core`,`./enc-base64`,`./md5`,`./evpkdf`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib.BlockCipher,r=t.algo,i=[],a=[],o=[],s=[],c=[],l=[],u=[],d=[],f=[],p=[];(function(){for(var e=[],t=0;t<256;t++)t<128?e[t]=t<<1:e[t]=t<<1^283;for(var n=0,r=0,t=0;t<256;t++){var m=r^r<<1^r<<2^r<<3^r<<4;m=m>>>8^m&255^99,i[n]=m,a[m]=n;var h=e[n],g=e[h],_=e[g],v=e[m]*257^m*16843008;o[n]=v<<24|v>>>8,s[n]=v<<16|v>>>16,c[n]=v<<8|v>>>24,l[n]=v;var v=_*16843009^g*65537^h*257^n*16843008;u[m]=v<<24|v>>>8,d[m]=v<<16|v>>>16,f[m]=v<<8|v>>>24,p[m]=v,n?(n=h^e[e[e[_^h]]],r^=e[e[r]]):n=r=1}})();var m=[0,1,2,4,8,16,32,64,128,27,54],h=r.AES=n.extend({_doReset:function(){var e;if(!(this._nRounds&&this._keyPriorReset===this._key)){for(var t=this._keyPriorReset=this._key,n=t.words,r=t.sigBytes/4,a=((this._nRounds=r+6)+1)*4,o=this._keySchedule=[],s=0;s<a;s++)s<r?o[s]=n[s]:(e=o[s-1],s%r?r>6&&s%r==4&&(e=i[e>>>24]<<24|i[e>>>16&255]<<16|i[e>>>8&255]<<8|i[e&255]):(e=e<<8|e>>>24,e=i[e>>>24]<<24|i[e>>>16&255]<<16|i[e>>>8&255]<<8|i[e&255],e^=m[s/r|0]<<24),o[s]=o[s-r]^e);for(var c=this._invKeySchedule=[],l=0;l<a;l++){var s=a-l;if(l%4)var e=o[s];else var e=o[s-4];l<4||s<=4?c[l]=e:c[l]=u[i[e>>>24]]^d[i[e>>>16&255]]^f[i[e>>>8&255]]^p[i[e&255]]}}},encryptBlock:function(e,t){this._doCryptBlock(e,t,this._keySchedule,o,s,c,l,i)},decryptBlock:function(e,t){var n=e[t+1];e[t+1]=e[t+3],e[t+3]=n,this._doCryptBlock(e,t,this._invKeySchedule,u,d,f,p,a);var n=e[t+1];e[t+1]=e[t+3],e[t+3]=n},_doCryptBlock:function(e,t,n,r,i,a,o,s){for(var c=this._nRounds,l=e[t]^n[0],u=e[t+1]^n[1],d=e[t+2]^n[2],f=e[t+3]^n[3],p=4,m=1;m<c;m++){var h=r[l>>>24]^i[u>>>16&255]^a[d>>>8&255]^o[f&255]^n[p++],g=r[u>>>24]^i[d>>>16&255]^a[f>>>8&255]^o[l&255]^n[p++],_=r[d>>>24]^i[f>>>16&255]^a[l>>>8&255]^o[u&255]^n[p++],v=r[f>>>24]^i[l>>>16&255]^a[u>>>8&255]^o[d&255]^n[p++];l=h,u=g,d=_,f=v}var h=(s[l>>>24]<<24|s[u>>>16&255]<<16|s[d>>>8&255]<<8|s[f&255])^n[p++],g=(s[u>>>24]<<24|s[d>>>16&255]<<16|s[f>>>8&255]<<8|s[l&255])^n[p++],_=(s[d>>>24]<<24|s[f>>>16&255]<<16|s[l>>>8&255]<<8|s[u&255])^n[p++],v=(s[f>>>24]<<24|s[l>>>16&255]<<16|s[u>>>8&255]<<8|s[d&255])^n[p++];e[t]=h,e[t+1]=g,e[t+2]=_,e[t+3]=v},keySize:8});t.AES=n._createHelper(h)})(),e.AES})})),tt=c(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(z()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return e.enc.Hex})})),nt=c(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(z()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return e.enc.Utf8})})),rt=c(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(z(),B()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.mode.ECB=function(){var t=e.lib.BlockCipherMode.extend();return t.Encryptor=t.extend({processBlock:function(e,t){this._cipher.encryptBlock(e,t)}}),t.Decryptor=t.extend({processBlock:function(e,t){this._cipher.decryptBlock(e,t)}}),t}(),e.mode.ECB})})),it=c(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(z(),B()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.pad.AnsiX923={pad:function(e,t){var n=e.sigBytes,r=t*4,i=r-n%r,a=n+i-1;e.clamp(),e.words[a>>>2]|=i<<24-a%4*8,e.sigBytes+=i},unpad:function(e){var t=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=t}},e.pad.Ansix923})})),at=c(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(z(),B()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.pad.Iso10126={pad:function(t,n){var r=n*4,i=r-t.sigBytes%r;t.concat(e.lib.WordArray.random(i-1)).concat(e.lib.WordArray.create([i<<24],1))},unpad:function(e){var t=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=t}},e.pad.Iso10126})})),ot=c(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(z(),B()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.pad.NoPadding={pad:function(){},unpad:function(){}},e.pad.NoPadding})})),st=c(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(z(),B()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.pad.Pkcs7})})),ct=c(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(z(),B()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.pad.ZeroPadding={pad:function(e,t){var n=t*4;e.clamp(),e.sigBytes+=n-(e.sigBytes%n||n)},unpad:function(e){for(var t=e.words,n=e.sigBytes-1,n=e.sigBytes-1;n>=0;n--)if(t[n>>>2]>>>24-n%4*8&255){e.sigBytes=n+1;break}}},e.pad.ZeroPadding})})),lt=u(et(),1),ut=u(z(),1),dt=u(tt(),1),V=u(nt(),1),ft=u(Xe(),1),pt=u(rt(),1);it();var mt=u(at(),1),ht=u(ot(),1),gt=u(st(),1),_t=u(ct(),1),vt=u(Ze(),1);let yt=6e5,bt=1e5,xt=5e6,St=1024,Ct=8388608,wt=`FAST-AES-256-GCM-V1`,Tt=`FAST-PBKDF2-SHA256-V1`,H=()=>{let e=globalThis.crypto,t=e?.subtle;if(typeof t?.decrypt!=`function`||typeof t.deriveBits!=`function`||typeof t.deriveKey!=`function`||typeof t.digest!=`function`||typeof t.encrypt!=`function`||typeof t.exportKey!=`function`||typeof t.generateKey!=`function`||typeof t.importKey!=`function`||typeof t.sign!=`function`||typeof t.verify!=`function`)throw Error(`当前运行环境不支持 Web Crypto SubtleCrypto。`);return e},U=e=>{let t=new Uint8Array(e.byteLength);return t.set(e),t.buffer},W={private:`PRIVATE KEY`,public:`PUBLIC KEY`},Et=(e,t)=>`-----BEGIN ${e}-----\n${F(new Uint8Array(t)).match(/.{1,64}/gu)?.join(`
2
- `)??``}\n-----END ${e}-----`,G=(e,t)=>{let n=`-----BEGIN ${t}-----`,r=`-----END ${t}-----`,i=e.trim();if(!i.startsWith(n)||!i.endsWith(r))throw TypeError(`应提供 ${t} 格式的 PEM 值。`);let a=i.slice(n.length,-r.length).replace(/\s+/gu,``);return U(I(a))},Dt=async e=>{let t=H(),[n,r]=await Promise.all([t.subtle.exportKey(`pkcs8`,e.privateKey),t.subtle.exportKey(`spki`,e.publicKey)]);return{privateKey:Et(W.private,n),publicKey:Et(W.public,r)}},Ot=e=>{if(`privateKey`in e&&`publicKey`in e)return e;throw Error(`当前运行环境未生成密钥对。`)},kt=e=>{let t=A(e);if(t.length===0)throw TypeError(`加密密码不能为空。`);if(t.length>St)throw RangeError(`UTF-8 密码不能超过 ${St} 字节。`);return t},At=e=>{if(!Number.isSafeInteger(e)||e<bt||e>xt)throw RangeError(`\`iterations\` 必须是 ${bt} 到 ${xt} 之间的安全整数。`);return e},jt=e=>Array.from(e,e=>e.toString(16).padStart(2,`0`)).join(``),Mt=e=>jt(e).toUpperCase(),Nt=async(e,t,n)=>{let r=A(t);if(r.length===0)throw TypeError(`HMAC 密钥不能为空。`);let i=H(),a=await i.subtle.importKey(`raw`,U(r),{hash:n,name:`HMAC`},!1,[`sign`]),o=await i.subtle.sign(`HMAC`,a,U(A(e)));return new Uint8Array(o)};function K(e){if(!Number.isSafeInteger(e)||e<0||e>65536)throw RangeError("`length` 必须是 0 到 65,536 之间的安全整数。");let t=new Uint8Array(e),n=globalThis.crypto;if(typeof n?.getRandomValues==`function`)return n.getRandomValues(t);for(let e=0;e<t.length;e+=1)t[e]=Math.floor(Math.random()*256);return t}function Pt(e,t){let n=Math.max(e.length,t.length),r=e.length===t.length?0:1;for(let i=0;i<n;i+=1)r|=(e[i]??0)^(t[i]??0);return r===0}function Ft(e){return(0,ft.default)(e).toString(dt.default)}function It(e){return(0,vt.default)(e).toString(dt.default).toUpperCase()}async function Lt(e){let t=await H().subtle.digest(`SHA-256`,U(A(e)));return new Uint8Array(t)}async function Rt(e){return Mt(await Lt(e))}async function zt(e){let t=await H().subtle.digest(`SHA-384`,U(A(e)));return new Uint8Array(t)}async function Bt(e){return Mt(await zt(e))}async function Vt(e){let t=await H().subtle.digest(`SHA-512`,U(A(e)));return new Uint8Array(t)}async function Ht(e){return Mt(await Vt(e))}async function Ut(e,t){return jt(await Nt(e,t,`SHA-256`))}async function Wt(e,t){return jt(await Nt(e,t,`SHA-384`))}async function Gt(e,t){return jt(await Nt(e,t,`SHA-512`))}async function Kt(e,t,n=yt,r=32){let i=kt(e);if(t.length<8)throw RangeError(`PBKDF2 盐值必须至少包含 8 字节,建议不少于 16 字节。`);if(!Number.isSafeInteger(r)||r<1||r>1024)throw RangeError("`outputLength` 必须是 1 到 1,024 之间的安全整数。");let a=H(),o=await a.subtle.importKey(`raw`,U(i),`PBKDF2`,!1,[`deriveBits`]),s=await a.subtle.deriveBits({hash:`SHA-256`,iterations:At(n),name:`PBKDF2`,salt:U(t)},o,r*8);return new Uint8Array(s)}async function qt(e,t=yt){let n=K(16),r=await Kt(e,n,t);return[Tt,String(t),L(n),L(r)].join(`:`)}async function Jt(e,t){try{let n=t.split(`:`);if(n.length!==4||n[0]!==Tt)return!1;let r=At(Number(n[1])),i=R(n[2]??``),a=R(n[3]??``);return i.length!==16||a.length!==32?!1:Pt(await Kt(e,i,r,a.length),a)}catch{return!1}}async function Yt(e,t=new Uint8Array,n=new Uint8Array,r=32){if(!Number.isSafeInteger(r)||r<1||r>8160)throw RangeError("`outputLength` 必须是 1 到 8,160 之间的安全整数。");let i=H(),a=await i.subtle.importKey(`raw`,U(e),`HKDF`,!1,[`deriveBits`]),o=await i.subtle.deriveBits({hash:`SHA-256`,info:U(n),name:`HKDF`,salt:U(t)},a,r*8);return new Uint8Array(o)}function Xt(e,t,n,r=`CBC`,i=`PKCS7`){if(e.trim().length===0||t.trim().length===0||n.trim().length===0)return null;if(r!==`CBC`&&r!==`ECB`)throw RangeError("`cipherMode` 必须是 `CBC` 或 `ECB`。");let a=gt.default;switch(i){case`None`:a=ht.default;break;case`PKCS7`:break;case`Zeros`:a=_t.default;break;case`ANSIX923`:a=ut.default.pad.AnsiX923;break;case`ISO10126`:a=mt.default;break;default:throw RangeError("不支持当前 `paddingMode`。")}if(i===`None`&&A(e).length%16!=0)throw RangeError("当 `paddingMode` 为 `None` 时,AES 明文长度必须是 16 字节的整数倍。");let o=V.default.parse(t.padEnd(32,`f`).slice(0,32)),s=V.default.parse(n.padEnd(16,`f`).slice(0,16));return lt.default.encrypt(e,o,r===`CBC`?{iv:s,padding:a}:{iv:s,mode:pt.default,padding:a}).toString()}function Zt(e,t,n,r=`CBC`,i=`PKCS7`){if(e.trim().length===0||t.trim().length===0||n.trim().length===0)return null;if(r!==`CBC`&&r!==`ECB`)throw RangeError("`cipherMode` 必须是 `CBC` 或 `ECB`。");let a=gt.default;switch(i){case`None`:a=ht.default;break;case`PKCS7`:break;case`Zeros`:a=ht.default;break;case`ANSIX923`:a=ut.default.pad.AnsiX923;break;case`ISO10126`:a=mt.default;break;default:throw RangeError("不支持当前 `paddingMode`。")}let o=I(e);if(o.length===0||o.length%16!=0)throw RangeError(`AES 密文必须至少包含一个完整的 16 字节块。`);let s=V.default.parse(t.padEnd(32,`f`).slice(0,32)),c=V.default.parse(n.padEnd(16,`f`).slice(0,16));return j(lt.default.decrypt(e,s,r===`CBC`?{iv:c,padding:a}:{iv:c,mode:pt.default,padding:a}).toString(V.default))}async function Qt(e,t){if(t.trim().length===0)throw TypeError(`加密密钥不能为空。`);let n=H(),r=await Lt(t),i=await n.subtle.importKey(`raw`,U(r),{name:`AES-GCM`},!1,[`encrypt`]),a=K(12),o=new Uint8Array(await n.subtle.encrypt({iv:U(a),name:`AES-GCM`,tagLength:128},i,U(A(e)))),s=o.length-16,c=new Uint8Array(1+a.length+16+s);return c[0]=1,c.set(a,1),c.set(o.subarray(s),1+a.length),c.set(o.subarray(0,s),1+a.length+16),F(c)}async function $t(e,t){if(t.trim().length===0)throw TypeError(`加密密钥不能为空。`);let n=I(e);if(n.length<29||n[0]!==1)throw TypeError(`不支持该 AES-GCM 载荷格式或版本。`);let r=n.subarray(1,13),i=n.subarray(13,29),a=n.subarray(29),o=new Uint8Array(a.length+i.length);o.set(a),o.set(i,a.length);let s=H(),c=await Lt(t),l=await s.subtle.importKey(`raw`,U(c),{name:`AES-GCM`},!1,[`decrypt`]),u=await s.subtle.decrypt({iv:U(r),name:`AES-GCM`,tagLength:128},l,U(o));return j(te().decode(u))}async function en(e,t,n=yt){let r=kt(t),i=A(e);if(i.length>Ct)throw RangeError(`UTF-8 明文不能超过 ${Ct} 字节。`);let a=At(n),o=H(),s=K(16),c=K(12),l=await o.subtle.importKey(`raw`,U(r),`PBKDF2`,!1,[`deriveKey`]),u=await o.subtle.deriveKey({hash:`SHA-256`,iterations:a,name:`PBKDF2`,salt:U(s)},l,{length:256,name:`AES-GCM`},!1,[`encrypt`]),d=await o.subtle.encrypt({additionalData:U(A(wt)),iv:U(c),name:`AES-GCM`,tagLength:128},u,i);return[wt,String(a),L(s),L(c),L(new Uint8Array(d))].join(`:`)}async function tn(e,t){let n=kt(t);if(e.length>16777216)throw RangeError(`加密载荷超出支持的大小。`);let r=e.split(`:`);if(r.length!==5||r[0]!==wt)throw TypeError(`不支持该加密载荷格式。`);let i,a,o,s;try{if(i=At(Number(r[1])),a=R(r[2]??``),o=R(r[3]??``),s=R(r[4]??``),a.length!==16||o.length!==12||s.length<16)throw TypeError(`加密载荷的字段长度无效。`)}catch(e){throw TypeError(`加密载荷包含无效字段。`,{cause:e})}let c=H(),l=te();try{let e=await c.subtle.importKey(`raw`,U(n),`PBKDF2`,!1,[`deriveKey`]),t=await c.subtle.deriveKey({hash:`SHA-256`,iterations:i,name:`PBKDF2`,salt:U(a)},e,{length:256,name:`AES-GCM`},!1,[`decrypt`]),r=await c.subtle.decrypt({additionalData:U(A(wt)),iv:U(o),name:`AES-GCM`,tagLength:128},t,U(s));return j(l.decode(r))}catch(e){throw Error(`无法认证或解密载荷。`,{cause:e})}}async function nn(e=2048){if(!Number.isSafeInteger(e)||e<2048||e%256!=0)throw RangeError("`modulusLength` 必须是大于或等于 2048 且能被 256 整除的安全整数。");let t=H(),n=Ot(await t.subtle.generateKey({hash:`SHA-256`,modulusLength:e,name:`RSA-OAEP`,publicExponent:Uint8Array.of(1,0,1)},!0,[`decrypt`,`encrypt`]));return Dt(n)}async function rn(e,t){let n=H(),r=await n.subtle.importKey(`spki`,G(t,W.public),{hash:`SHA-256`,name:`RSA-OAEP`},!1,[`encrypt`]),i=await n.subtle.encrypt({name:`RSA-OAEP`},r,U(A(e)));return F(new Uint8Array(i))}async function an(e,t){let n=H(),r=await n.subtle.importKey(`pkcs8`,G(t,W.private),{hash:`SHA-256`,name:`RSA-OAEP`},!1,[`decrypt`]),i=await n.subtle.decrypt({name:`RSA-OAEP`},r,U(I(e)));return j(te().decode(i))}async function on(e,t){let n=H(),r=await n.subtle.importKey(`pkcs8`,G(t,W.private),{hash:`SHA-256`,name:`RSA-PSS`},!1,[`sign`]),i=await n.subtle.sign({name:`RSA-PSS`,saltLength:32},r,U(A(e)));return F(new Uint8Array(i))}async function sn(e,t,n){let r=H(),i=await r.subtle.importKey(`spki`,G(n,W.public),{hash:`SHA-256`,name:`RSA-PSS`},!1,[`verify`]);return r.subtle.verify({name:`RSA-PSS`,saltLength:32},i,U(I(t)),U(A(e)))}async function cn(e=`P-256`){let t=H(),n=Ot(await t.subtle.generateKey({name:`ECDSA`,namedCurve:e},!0,[`sign`,`verify`]));return Dt(n)}async function ln(e,t,n=`P-256`){let r=H(),i=await r.subtle.importKey(`pkcs8`,G(t,W.private),{name:`ECDSA`,namedCurve:n},!1,[`sign`]),a=n===`P-256`?`SHA-256`:n===`P-384`?`SHA-384`:`SHA-512`,o=await r.subtle.sign({hash:a,name:`ECDSA`},i,U(A(e)));return F(new Uint8Array(o))}async function un(e,t,n,r=`P-256`){let i=H(),a=await i.subtle.importKey(`spki`,G(n,W.public),{name:`ECDSA`,namedCurve:r},!1,[`verify`]),o=r===`P-256`?`SHA-256`:r===`P-384`?`SHA-384`:`SHA-512`;return i.subtle.verify({hash:o,name:`ECDSA`},a,U(I(t)),U(A(e)))}async function dn(e=`P-256`){let t=H(),n=Ot(await t.subtle.generateKey({name:`ECDH`,namedCurve:e},!0,[`deriveBits`]));return Dt(n)}async function fn(e,t,n=`P-256`){let r=H(),[i,a]=await Promise.all([r.subtle.importKey(`pkcs8`,G(e,W.private),{name:`ECDH`,namedCurve:n},!1,[`deriveBits`]),r.subtle.importKey(`spki`,G(t,W.public),{name:`ECDH`,namedCurve:n},!1,[])]),o=n===`P-256`?256:n===`P-384`?384:528,s=await r.subtle.deriveBits({name:`ECDH`,public:a},i,o);return new Uint8Array(s)}async function pn(e,t,n=`P-256`){let r=await fn(e,t,n),i=await H().subtle.digest(`SHA-256`,U(r));return new Uint8Array(i)}let mn=e=>{if(!Number.isSafeInteger(e))throw RangeError("`amount` 必须是安全整数。")};function q(e){let t=e instanceof Date?new Date(e.getTime()):new Date(e);if(!Number.isFinite(t.getTime()))throw TypeError(`该值不是有效日期。`);return t}function hn(e){return e instanceof Date||typeof e==`number`||typeof e==`string`?Number.isFinite(new Date(e).getTime()):!1}function gn(e){let t=q(e);return t.setHours(0,0,0,0),q(t)}function _n(e){let t=q(e);return t.setHours(23,59,59,999),q(t)}function vn(e,t){mn(t);let n=q(e);return n.setDate(n.getDate()+t),q(n)}function yn(e,t){mn(t);let n=q(e),r=n.getDate();n.setDate(1),n.setMonth(n.getMonth()+t);let i=new Date(n.getTime());i.setMonth(i.getMonth()+1,0);let a=i.getDate();return n.setDate(Math.min(r,a)),q(n)}function bn(e,t){return mn(t),yn(e,t*12)}function xn(e,t){let n=q(e),r=q(t);return n.getFullYear()===r.getFullYear()&&n.getMonth()===r.getMonth()&&n.getDate()===r.getDate()}function Sn(e,t=Date.now()){return q(e).getTime()>q(t).getTime()}function Cn(e=Date.now()){return[gn(e),_n(e)]}function wn(e,t,n){let r=q(e).getTime(),i=q(t).getTime(),a=q(n).getTime();if(i>a)throw RangeError("`start` 不能晚于 `end`。");return r>=i&&r<=a}function Tn(e,t={}){let n=(q(e).getTime()-q(t.now??Date.now()).getTime())/1e3,r=Math.abs(n),i,a;return r<60?(i=1,a=`second`):r<3600?(i=60,a=`minute`):r<86400?(i=3600,a=`hour`):r<604800?(i=86400,a=`day`):r<2629800?(i=604800,a=`week`):r<31557600?(i=2629800,a=`month`):(i=31557600,a=`year`),new Intl.RelativeTimeFormat(t.locale??`zh-CN`,{numeric:t.numeric??`auto`,style:t.style??`long`}).format(Math.round(n/i),a)}let En=(e,t,n)=>{switch(n){case`day`:e.setDate(e.getDate()+t);break;case`month`:e.setMonth(e.getMonth()+t);break;case`year`:e.setFullYear(e.getFullYear()+t)}},J=(e,t,n)=>({text:e,value:()=>{let e=new Date;return En(e,t,n),e.setHours(0,0,0,0),e}}),Y=(e,t,n,r)=>({text:e,value:()=>{let e=new Date,i=new Date;return En(r?i:e,r?t:-t,n),e.setHours(0,0,0,0),i.setHours(23,59,59,999),[e,i]}});function Dn(e){if(e==null)return``;let t;if(t=typeof e==`string`?new Date(e).getTime():typeof e==`number`?e.toString().length<=10?e*1e3:e:e.getTime(),!Number.isFinite(t))return``;let n=Date.now(),r=n-t,i=Math.abs(r)/6e4,a=Math.abs(r)/36e5,o=Math.abs(r)/864e5,s=new Date(n),c=new Date(t),l=(s.getFullYear()-c.getFullYear())*12+s.getMonth()-c.getMonth(),u=r<0?`后`:`前`;return Math.abs(l)>=12?`${Math.floor(Math.abs(l)/12)}年${u}`:Math.abs(l)>=6?`半年${u}`:Math.abs(l)>=1?`${Math.abs(l)}月${u}`:o>=15?`半月${u}`:o>=7?`${Math.floor(o/7)}周${u}`:o>=1?`${Math.floor(o)}天${u}`:a>=1?`${Math.floor(a)}小时${u}`:i>=1?`${Math.floor(i)}分钟${u}`:`刚刚`}function On(e=!1){let t=new Date,n=new Date;return En(e?n:t,e?1:-1,`month`),t.setHours(0,0,0,0),n.setHours(23,59,59,999),[t,n]}function kn(e){return e.getTime()>Date.now()}function An(){let e=new Date().getHours();return e<5?`夜深了,注意身体哦!`:e<9?`早上好!欢迎回来!`:e<12?`上午好!欢迎回来!`:e<14?`中午好!欢迎回来!`:e<18?`下午好!欢迎回来!`:e<24?`晚上好!欢迎回来!`:`您好!欢迎回来!`}function jn(e=!1){return e?[Y(`后1天`,1,`day`,!0),Y(`后3天`,3,`day`,!0),Y(`后1周`,7,`day`,!0),Y(`后1月`,1,`month`,!0),Y(`后3月`,3,`month`,!0),Y(`后6月`,6,`month`,!0),Y(`后1年`,1,`year`,!0)]:[Y(`近1天`,1,`day`,!1),Y(`近3天`,3,`day`,!1),Y(`近1周`,7,`day`,!1),Y(`近1月`,1,`month`,!1),Y(`近3月`,3,`month`,!1),Y(`近6月`,6,`month`,!1),Y(`近1年`,1,`year`,!1)]}function Mn(e=!1){return e?[J(`今天`,0,`day`),J(`明天`,1,`day`),J(`一周后`,7,`day`),J(`一月后`,1,`month`),J(`一年后`,1,`year`)]:[J(`今天`,0,`day`),J(`昨天`,-1,`day`),J(`一周前`,-7,`day`),J(`一月前`,-1,`month`),J(`一年前`,-1,`year`)]}function Nn(){return gn(new Date)}let Pn=e=>Array.isArray(e),Fn=e=>{if(e.length===0||!Number.isFinite(Number(e)))return!1;let t=e.startsWith(`+`)||e.startsWith(`-`)?e.slice(1):e;return!/^0[box]/iu.test(t)},In=e=>e.startsWith(`--`)?e:(e.startsWith(`ms`)?`-${e}`:e).replace(/([A-Z])/gu,`-$1`).toLowerCase();function Ln(e,t=`px`){if(e==null||e===``)return``;if(t.length===0)throw RangeError("`unit` 不能为空。");if(typeof e==`number`){if(!Number.isFinite(e))throw RangeError("`value` 必须是有限数。");return e===0?`0`:`${e}${t}`}let n=e.trim();return Fn(n)?Number(n)===0?`0`:`${n}${t}`:e}function Rn(e){if(e==null||e===``)return``;if(Pn(e))return e.map(e=>Rn(e)).filter(e=>e.length>0).join(` `);if(typeof e==`string`){let t=e.trim();return t.length===0?``:t.endsWith(`;`)?t:`${t};`}return Object.entries(e).filter(([,e])=>e!=null&&e!==``).map(([e,t])=>{if(typeof t==`number`&&!Number.isFinite(t))throw RangeError(`样式属性“${e}”必须是有限数。`);return`${In(e)}:${String(t)};`}).join(` `)}let zn=()=>typeof globalThis.navigator?.userAgent==`string`?globalThis.navigator.userAgent:``,Bn=()=>typeof globalThis.navigator?.maxTouchPoints==`number`?globalThis.navigator.maxTouchPoints:0;function Vn(){let e=globalThis.window;return e!=null&&e.document!==null&&typeof e.document==`object`}function Hn(){return!Vn()&&typeof Reflect.get(globalThis,`importScripts`)==`function`}function Un(){let e=Reflect.get(globalThis,`process`);if(typeof e!=`object`&&typeof e!=`function`||e===null)return!1;let t=Reflect.get(e,`versions`);return(typeof t==`object`||typeof t==`function`)&&t!==null&&typeof Reflect.get(t,`node`)==`string`}function Wn(){return Reflect.get(globalThis,`uni`)!==void 0}function Gn(){let e=globalThis.crypto,t=e?.subtle;return typeof e?.getRandomValues==`function`&&typeof t?.decrypt==`function`&&typeof t.deriveBits==`function`&&typeof t.deriveKey==`function`&&typeof t.digest==`function`&&typeof t.encrypt==`function`&&typeof t.exportKey==`function`&&typeof t.generateKey==`function`&&typeof t.importKey==`function`&&typeof t.sign==`function`&&typeof t.verify==`function`}function Kn(){return Vn()?`browser`:Hn()?`worker`:Un()?`node`:`unknown`}function qn(e=zn()){return/Mobile|iPhone|Android.*Mobile|Windows Phone/iu.test(e)}function Jn(e=zn(),t=Bn()){return/iPad|Android(?!.*Mobile)|Tablet/iu.test(e)||/Macintosh/iu.test(e)&&t>1}let Yn=()=>{let e=Reflect.get(globalThis,`uni`);if(e===void 0)return;if(typeof e!=`object`&&typeof e!=`function`||e===null)throw TypeError(`全局 uni 对象未提供同步 Storage API。`);let t=e;if(typeof t.getStorageSync!=`function`||typeof t.getStorageInfoSync!=`function`||typeof t.removeStorageSync!=`function`||typeof t.setStorageSync!=`function`)throw TypeError(`全局 uni 对象未提供同步 Storage API。`);return t},Xn={decode:e=>JSON.parse(e),encode:e=>{let t=JSON.stringify(e);if(typeof t!=`string`)throw TypeError(`存储值无法序列化为 JSON。`);return t}},Zn={decode:e=>JSON.parse(Pe(e)),encode:e=>{let t=JSON.stringify(e);if(typeof t!=`string`)throw TypeError(`存储值无法序列化为 JSON。`);return Ne(t)}},X,Qn=e=>typeof e==`object`&&!!e&&!Array.isArray(e),$n=e=>{if(typeof e!=`string`||e.length===0)throw TypeError(`Storage 键必须是非空字符串。`)},er=e=>{let t=e===`local`?globalThis.localStorage:globalThis.sessionStorage;if(t===void 0)throw Error(`当前运行环境不支持 ${e}Storage。`);return{getItem:e=>t.getItem(e),keys:()=>{let e=[];for(let n=0;n<t.length;n+=1){let r=t.key(n);r!==null&&e.push(r)}return e},removeItem:e=>{t.removeItem(e)},setItem:(e,n)=>{t.setItem(e,n)}}},tr=e=>({getItem:t=>{let n=e.getStorageSync(t);return n===``?e.getStorageInfoSync().keys.includes(t)?n:void 0:n},keys:()=>[...e.getStorageInfoSync().keys],removeItem:t=>{e.removeStorageSync(t)},setItem:(t,n)=>{e.setStorageSync(t,n)}}),nr=(e,t)=>{if(typeof e!=`string`)throw TypeError(`Storage 条目“${t}”不是字符串。`);try{let t=JSON.parse(e);if(!Qn(t)||t.version!==3||typeof t.data!=`string`||!(t.expiresAt===null||typeof t.expiresAt==`number`&&Number.isFinite(t.expiresAt)))throw TypeError(`不支持该存储包络。`);return{data:t.data,expiresAt:t.expiresAt,version:3}}catch(e){throw TypeError(`Storage 条目“${t}”已损坏或不受支持。`,{cause:e})}},rr=(e,t,n,r)=>{let i=e=>`${t}${e}`,a=e=>{if(e===void 0)return n;if(typeof e!=`boolean`)throw TypeError("Storage 单次 `crypto` 选项必须是布尔值。");return e?Zn:Xn},o=e=>{let n=e.keys();if(!Array.isArray(n)||!n.every(e=>typeof e==`string`))throw TypeError(`Storage 后端返回的键必须是字符串。`);return[...new Set(n.filter(e=>e.startsWith(t)).map(e=>e.slice(t.length)))].sort()},s=(e,t)=>{$n(t);let n=i(t),a=e.getItem(n);if(a==null)return;let o=nr(a,n);if(o.expiresAt===null)return o;let s=r();if(!Number.isFinite(s))throw RangeError(`Storage 时钟必须返回有限时间戳。`);if(s<o.expiresAt)return o;e.removeItem(n)};return{prefix:t,clear(){let t=e();for(let e of o(t))t.removeItem(i(e))},get(t,n={}){let r=s(e(),t);if(r!==void 0)try{return a(n.crypto).decode(r.data)}catch(e){throw TypeError(`无法解码 Storage 条目“${i(t)}”。`,{cause:e})}},has:t=>s(e(),t)!==void 0,keys:()=>o(e()),pruneExpired(){let t=e(),n=0;for(let e of o(t))t.getItem(i(e))!=null&&s(t,e)===void 0&&(n+=1);return n},remove(t){$n(t),e().removeItem(i(t))},removeByPrefix(t){$n(t);let n=e();for(let e of o(n))e.startsWith(t)&&n.removeItem(i(e))},set(t,n,o={}){if($n(t),n===void 0)throw TypeError("不能存储顶层 `undefined`,请改为移除对应的键。");let s=null;if(o.ttlMs!==void 0){if(!Number.isFinite(o.ttlMs)||o.ttlMs<=0)throw RangeError("`ttlMs` 必须是大于 0 的有限数。");let e=r();if(!Number.isFinite(e)||!Number.isFinite(e+o.ttlMs))throw RangeError(`Storage 过期时间超出支持的时间戳范围。`);s=e+o.ttlMs}let c;try{if(c=a(o.crypto).encode(n),typeof c!=`string`)throw TypeError(`Storage Codec 必须返回字符串。`)}catch(e){throw TypeError(`无法编码存储值。`,{cause:e})}e().setItem(i(t),JSON.stringify({data:c,expiresAt:s,version:3}))}}},ir=()=>{if(X===void 0&&cr(),X===void 0)throw Error(`无法初始化 Storage 配置。`);return X},ar=(e,t)=>{let n=()=>{let n=e(ir());if(n===void 0)throw Error(`uni-app 中不支持 ${t}。`);return n};return{get prefix(){return n().prefix},clear:()=>{n().clear()},get:(e,t)=>n().get(e,t),has:e=>n().has(e),keys:()=>n().keys(),pruneExpired:()=>n().pruneExpired(),remove:e=>{n().remove(e)},removeByPrefix:e=>{n().removeByPrefix(e)},set:(e,t,r)=>{n().set(e,t,r)}}},or=ar(e=>e.local,`Local`),sr=ar(e=>e.session,`Session`);function cr(e={}){let t=e.prefix??`fast__`;if(typeof t!=`string`||t.length===0)throw TypeError(`Storage 前缀必须是非空字符串。`);if(e.codec!==void 0&&e.crypto===!0)throw TypeError(`Storage 的 Codec 和加密选项不能同时使用。`);let n=e.codec??(e.crypto===!0?Zn:Xn),r=e.now??Date.now;if(X!==void 0){if(X.prefix===t&&X.codec===n&&X.now===r)return;throw Error(`Storage 已使用其他选项完成配置。`)}let i=Yn(),a={codec:n,local:rr(i===void 0?()=>er(`local`):()=>tr(i),t,n,r),now:r,prefix:t};i===void 0&&(a.session=rr(()=>er(`session`),t,n,r)),X=a}function lr(){return X!==void 0}let Z=`en-US`,ur=1e6,dr=4294967296,fr=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/iu,pr=e=>{let t=globalThis.crypto;if(typeof t?.getRandomValues==`function`){t.getRandomValues(e);return}let n=e.BYTES_PER_ELEMENT===Uint8Array.BYTES_PER_ELEMENT?256:dr;for(let t=0;t<e.length;t+=1)e[t]=Math.floor(Math.random()*n)},mr=e=>{e[6]=(e[6]??0)&15|64,e[8]=(e[8]??0)&63|128;let t=Array.from(e,e=>e.toString(16).padStart(2,`0`)).join(``);return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`},hr=(e,t)=>{let n=globalThis.Intl?.Segmenter;if(typeof n!=`function`)throw Error(`当前运行环境不支持 Intl.Segmenter。`);let r=new n(t??Z,{granularity:`grapheme`});return Array.from(r.segment(e),({segment:e})=>e)};function gr(e,t=10){if(!Number.isSafeInteger(t)||t<0)throw RangeError("`maxDepth` 必须是非负安全整数。");let n=e;for(let e=0;e<t;e+=1){let e=decodeURIComponent(n);if(e===n)break;n=e}return n}function _r(e){let t=e.indexOf(`#`),n=t<0?e:e.slice(0,t),r=/^[a-z][a-z\d+.-]*:\/\//iu.test(n),i=n.indexOf(`?`);if(r&&i<0)return{};let a=r?n.slice(i+1):n.replace(/^\?/u,``),o={};for(let[e,t]of new URLSearchParams(a)){let n=Object.hasOwn(o,e)?o[e]:void 0;n===void 0?Object.defineProperty(o,e,{configurable:!0,enumerable:!0,value:t,writable:!0}):Array.isArray(n)?n.push(t):Object.defineProperty(o,e,{configurable:!0,enumerable:!0,value:[n,t],writable:!0})}return o}function vr(e){if(e.trim().length===0)return!1;try{return JSON.parse(e),!0}catch{return!1}}function yr(e){return e.trim().replace(/(\p{Ll}|\p{N})(\p{Lu})/gu,`$1 $2`).replace(/(\p{Lu})(\p{Lu}\p{Ll})/gu,`$1 $2`).split(/[\s_-]+/u).filter(e=>e.length>0)}function br(e,t){let n=Array.from(e),r=n.shift();return r===void 0?``:r.toLocaleUpperCase(t??Z)+n.join(``)}function xr(e,t){let n=Array.from(e),r=n.shift();return r===void 0?``:r.toLocaleLowerCase(t??Z)+n.join(``)}function Sr(e,t){return yr(e).map((e,n)=>{let r=e.toLocaleLowerCase(t??Z);return n===0?r:br(r,t)}).join(``)}function Cr(e,t){return br(Sr(e,t),t)}function wr(e,t){return yr(e).map(e=>e.toLocaleLowerCase(t??Z)).join(`-`)}function Tr(e,t,n=`…`,r){if(!Number.isSafeInteger(t)||t<0)throw RangeError("`maxLength` 必须是非负安全整数。");let i=hr(e,r);return i.length>t?i.slice(0,t).join(``)+n:e}async function Er(e){let t=Reflect.get(globalThis,`uni`);if(t!==void 0){if(typeof t!=`object`&&typeof t!=`function`||t===null)throw TypeError("全局 uni 对象未提供 `setClipboardData`。");let n=Reflect.get(t,`setClipboardData`);if(typeof n!=`function`)throw TypeError("全局 uni 对象未提供 `setClipboardData`。");await new Promise((r,i)=>{Reflect.apply(n,t,[{data:e,fail:e=>{i(e instanceof Error?e:Error(`文本复制到剪贴板失败。`,{cause:e}))},success:r}])});return}let n=globalThis.navigator?.clipboard;if(globalThis.isSecureContext===!0&&typeof n?.writeText==`function`){await n.writeText(e);return}let r=globalThis.document;if(typeof r?.createElement!=`function`||r.body===null||typeof r.execCommand!=`function`)throw Error(`当前运行环境不支持访问剪贴板。`);let i=r.createElement(`textarea`);i.value=e,i.style.left=`-999999px`,i.style.opacity=`0`,i.style.position=`fixed`,i.style.top=`-999999px`,r.body.appendChild(i);let a;try{i.focus(),i.select(),a=r.execCommand(`copy`)}finally{i.remove()}if(!a)throw Error(`文本复制到剪贴板失败。`)}function Dr(e,t=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789`){if(!Number.isSafeInteger(e)||e<0||e>ur)throw RangeError(`\`length\` 必须是 0 到 ${ur} 之间的安全整数。`);let n=Array.from(t);if(n.length===0)throw RangeError("`alphabet` 不能为空。");if(new Set(n).size!==n.length)throw RangeError("`alphabet` 不能包含重复字符。");if(n.length>4294967296)throw RangeError("`alphabet` 不能包含超过 2^32 个字符。");if(e===0)return``;let r=Math.floor(dr/n.length)*n.length,i=[];for(;i.length<e;){let t=e-i.length,a=new Uint32Array(Math.min(t,16384));pr(a);for(let t of a){if(t>=r)continue;let a=n[t%n.length];if(a!==void 0&&(i.push(a),i.length===e))break}}return i.join(``)}function Or(){let e=globalThis.crypto;if(typeof e?.randomUUID==`function`)return e.randomUUID();let t=new Uint8Array(16);return pr(t),mr(t)}function kr(e){return fr.test(e)}function Ar(e){return e.replace(/[&<>"']/gu,e=>{switch(e){case`&`:return`&amp;`;case`<`:return`&lt;`;case`>`:return`&gt;`;case`"`:return`&quot;`;default:return`&#39;`}})}function jr(e){return e.trim().replace(/\s+/gu,` `)}let Mr=`identity:installation-id`,Nr=e=>{if(!kr(e))throw TypeError(`安装标识值必须是符合 RFC 4122 的 UUID v4。`)},Pr,Fr=()=>(Pr??=Mr,Pr);function Ir(e={}){let t=e.cacheKey??Mr;if(typeof t!=`string`||t.length===0||t.trim()!==t)throw TypeError("安装标识的 `cacheKey` 必须是无外围空白的非空字符串。");if(Pr===void 0){Pr=t;return}if(Pr!==t)throw Error("安装标识已使用其他 `cacheKey` 完成配置。")}let Q={get cacheKey(){return Fr()},deviceId:``,clear(){or.remove(Q.cacheKey),Q.deviceId=``},getOrCreate(e){let t=e??(Q.deviceId.length>0?Q.deviceId:Q.read())??Or();return Nr(t),or.set(Q.cacheKey,t),Q.deviceId=t,t},read(){let e=or.get(Q.cacheKey);if(e!==void 0){if(typeof e!=`string`)throw TypeError(`存储的安装标识已损坏。`);return Nr(e),e}}};function Lr(e){return Q.getOrCreate(e)}let Rr={debug:10,log:20,warn:30,error:40},zr=e=>typeof e==`string`&&Object.hasOwn(Rr,e),Br=()=>Reflect.get(globalThis,`uni`)!==void 0&&Reflect.get(globalThis,`plus`)!==void 0,Vr=e=>{if(typeof e==`string`)return e;if(typeof e==`bigint`)return`${e.toString()}n`;if(e instanceof Error)return e.stack??`${e.name}: ${e.message}`;let t=new WeakSet;try{let n=JSON.stringify(e,(e,n)=>typeof n==`bigint`?`${n.toString()}n`:typeof n!=`object`||!n?n:t.has(n)?`[Circular]`:(t.add(n),n),2);return typeof n==`string`?n:String(e)}catch{return String(e)}},Hr={debug:(...e)=>{typeof console.debug==`function`?console.debug(...e):console.log(...e)},log:(...e)=>{console.log(...e)},warn:(...e)=>{console.warn(...e)},error:(...e)=>{console.error(...e)}};function Ur(e={}){let t=e.level??`debug`,n=e.prefix??`Fast`,r=e.sink??Hr;if(!zr(t))throw RangeError(`未知的日志级别:${String(t)}。`);if(typeof n!=`string`||n.length===0)throw RangeError(`日志前缀必须是非空字符串。`);let i=t,a=n,o=e.uniAppPlusSplit??!1,s=(e,t,n)=>{if(typeof t!=`string`)throw TypeError(`日志作用域必须是字符串。`);if(t.length===0||t.trim()!==t)throw RangeError(`日志作用域必须是无外围空白的非空字符串。`);if(Rr[e]<Rr[i])return;let s=`[${a}:${t}]`,c=e;if(o&&Br()){let[e,...t]=n;if(typeof e==`string`){r[c](`${s} ${e}`);for(let e of t)r[c](Vr(e))}else{r[c](s);for(let e of n)r[c](Vr(e))}return}r[c](s,...n)};return{debug:(e,...t)=>{s(`debug`,e,t)},log:(e,...t)=>{s(`log`,e,t)},warn:(e,...t)=>{s(`warn`,e,t)},error:(e,...t)=>{s(`error`,e,t)}}}let $=Ur();function Wr(e={}){$=Ur(e)}let Gr={debug:(e,...t)=>{$.debug(e,...t)},log:(e,...t)=>{$.log(e,...t)},warn:(e,...t)=>{$.warn(e,...t)},error:(e,...t)=>{$.error(e,...t)}},Kr=e=>Array.isArray(e),qr=(e,t,n)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0})};function Jr(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function Yr(e,t){return Object.hasOwn(e,t)}function Xr(e,t){let n={};for(let r of t)Object.prototype.propertyIsEnumerable.call(e,r)&&qr(n,r,e[r]);return n}function Zr(e,t){let n={...e};for(let e of t)Reflect.deleteProperty(n,e);return n}function Qr(e,t){let n={};for(let r of Reflect.ownKeys(e))Object.prototype.propertyIsEnumerable.call(e,r)&&qr(n,r,t(e[r],r,e));return n}function $r(e,t){if(Object.is(e,t))return!0;let n=Reflect.ownKeys(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t)),r=Reflect.ownKeys(t).filter(e=>Object.prototype.propertyIsEnumerable.call(t,e));return n.length===r.length&&n.every(n=>Object.hasOwn(t,n)&&Object.is(Reflect.get(e,n),Reflect.get(t,n)))}let ei=e=>{if(typeof e==`number`&&!Number.isFinite(e))throw RangeError(`查询参数中的数字必须是有限数。`);return String(e)};function ti(e,t={}){let n=Object.entries(e);t.sort&&n.sort(([e],[t])=>e<t?-1:+(e>t));let r=new URLSearchParams;for(let[e,t]of n){let n=Kr(t)?t:[t];for(let t of n)t!=null&&r.append(e,ei(t))}let i=r.toString();return t.space===`percent`&&(i=i.replace(/\+/gu,`%20`)),i&&t.prefixQuestionMark?`?${i}`:i}let ni=e=>`on${e.split(`-`).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(``)}`;function ri(e,n,r=[]){let i=new Set(r),a=n;return(0,t.computed)(()=>{let t={},n=new Set;for(let r of Object.keys(e)){if(i.has(r))continue;if(r.length===0||/\s/u.test(r))throw TypeError(`无效的 Vue 事件名称:“${r}”。`);let e=ni(r);if(n.has(e))throw TypeError(`多个 Vue 事件映射到同一处理器属性:“${e}”。`);n.add(e),Object.defineProperty(t,e,{enumerable:!0,value:(...e)=>{a(r,...e)},writable:!0})}return t})}function ii(e,t){return e(t),t}async function ai(e,...t){if(e!=null)return Promise.resolve(e(...t))}let oi=e=>{if(typeof e!=`object`||!e)throw TypeError(`安装 Vue 插件需要 Vue 3 App 实例。`);let t=e;if(typeof t.component!=`function`||typeof t.directive!=`function`)throw TypeError("安装 Vue 插件需要 `component()` 和 `directive()` 注册方法。");return t},si=e=>{let t=e.name;if(typeof t!=`string`||t.length===0||/\s/u.test(t))throw TypeError(`可安装的 Vue 组件必须公开不含空白的非空名称。`);return t},ci=(e,t)=>{let n=si(t),r=e.component(n);if(r!==void 0&&r!==t)throw Error(`Vue 组件名称“${n}”已被其他组件注册。`);return{component:t,name:n,registered:r===t}};function li(e,t){let n=new Set([si(e)]);if(`install`in Object(e))throw TypeError("Vue 组件已定义 `install` 属性。");let r=Object.entries(t??{});if(t!==void 0&&Object.getOwnPropertySymbols(t).some(e=>Object.prototype.propertyIsEnumerable.call(t,e)))throw TypeError(`Vue 组件附属项必须使用字符串属性名。`);for(let[t,i]of r){let r=si(i);if(n.has(r))throw TypeError(`Vue 组件名称“${r}”被重复注册。`);if(n.add(r),t===`install`||t in Object(e))throw TypeError(`Vue 组件附属项“${t}”会覆盖主组件上的属性。`)}let i=e;for(let[e,t]of r)Object.defineProperty(i,e,{configurable:!0,enumerable:!0,value:t,writable:!0});return i.install=t=>{let n=oi(t),i=[e,...r.map(([,e])=>e)].map(e=>ci(n,e));for(let e of i)e.registered||n.component(e.name,e.component)},i}function ui(e){if(`install`in Object(e))throw TypeError("Vue 组件已定义 `install` 属性。");let t=e;return t.install=()=>void 0,t}function di(e,t){if(t.length===0||/\s/u.test(t)||t.startsWith(`v-`))throw TypeError("可安装的 Vue 指令名称不能包含空白或 `v-` 前缀。");if(`install`in Object(e))throw TypeError("Vue 指令已定义 `install` 属性。");let n=e;return n.install=n=>{let r=oi(n),i=r.directive(t);if(i!==void 0&&i!==e)throw Error(`Vue 指令名称“${t}”已被其他指令注册。`);i!==e&&r.directive(t,e)},n}function fi(e){return e}function pi(e,n,r=[]){let i=new Set(r);return(0,t.computed)(()=>{let t={};for(let r of Reflect.ownKeys(n))i.has(r)||!Object.hasOwn(e,r)||Object.defineProperty(t,r,{configurable:!0,enumerable:!0,value:Reflect.get(e,r),writable:!0});return t})}function mi(e){let n=(0,t.getCurrentInstance)();if(n===null)throw Error("`useRender` 必须在 `setup` 函数内部调用。");n.render=e}function hi(){return Object}function gi(e){return e}return e.AESDecrypt=Zt,e.AESDecryptAuthenticated=$t,e.AESDecryptWithPassword=tn,e.AESEncrypt=Xt,e.AESEncryptAuthenticated=Qt,e.AESEncryptWithPassword=en,e.DeriveECDHKeySHA256=pn,e.DeriveECDHSecret=fn,e.ECDSASign=ln,e.ECDSAVerify=un,e.FixedTimeEquals=Pt,e.GenerateECDHKeyPair=dn,e.GenerateECDSAKeyPair=cn,e.GenerateRSAKeyPair=nn,e.GenerateRandomBytes=K,e.HKDFSHA256=Yt,e.HMACSHA256Encrypt=Ut,e.HMACSHA384Encrypt=Wt,e.HMACSHA512Encrypt=Gt,e.HashPasswordPBKDF2SHA256=qt,e.Local=or,e.MD5Encrypt=Ft,e.PBKDF2SHA256=Kt,e.RSADecryptOAEP=an,e.RSAEncryptOAEP=rn,e.RSASignPSS=on,e.RSAVerifyPSS=sn,e.SHA1Encrypt=It,e.SHA256Bytes=Lt,e.SHA256Encrypt=Rt,e.SHA384Bytes=zt,e.SHA384Encrypt=Bt,e.SHA512Bytes=Vt,e.SHA512Encrypt=Ht,e.Session=sr,e.VerifyPasswordPBKDF2SHA256=Jt,e.addCssUnit=Ln,e.addDays=vn,e.addMonths=yn,e.addYears=bn,e.allEqualBy=b,e.average=pe,e.base64StorageCodec=Zn,e.callOptionalFunction=ai,e.camelCase=Sr,e.chunk=d,e.clamp=le,e.configureInstallationIdentity=Ir,e.configureLogger=Wr,e.configureStorage=cr,e.contrastRatio=Ke,e.copy=Er,e.createDateRangeShortcuts=jn,e.createDateShortcuts=Mn,e.createLogger=Ur,e.createOneMonthRangeFromToday=On,e.debounce=O,e.decodeBase64=Ce,e.decodeBase64Bytes=I,e.decodeBase64Url=Te,e.decodeBase64UrlBytes=R,e.decodeLatin1Base64=De,e.decodeSecureBase64=Pe,e.decodeURIComponentRepeatedly=gr,e.definePropType=fi,e.detectRuntime=Kn,e.difference=_,e.encodeBase64=Se,e.encodeBase64Bytes=F,e.encodeBase64Url=we,e.encodeBase64UrlBytes=L,e.encodeLatin1Base64=Ee,e.encodeSecureBase64=Ne,e.endOfDay=_n,e.escapeHtml=Ar,e.formatBytes=he,e.formatChineseRelativeTime=Dn,e.formatHexColor=Be,e.formatRelativeTime=Tn,e.generateUuidV4=Or,e.getLocalDayBounds=Cn,e.getLocalTimeGreeting=An,e.getOrCreateInstallationId=Lr,e.getStartOfToday=Nn,e.groupBy=h,e.hasDuplicatesBy=y,e.hasOwn=Yr,e.hasWebCrypto=Gn,e.inRange=ue,e.installationIdentity=Q,e.intersection=v,e.isBrowser=Vn,e.isDateAfterNow=kn,e.isFuture=Sn,e.isMobileUserAgent=qn,e.isNode=Un,e.isPlainObject=Jr,e.isSameDay=xn,e.isStorageConfigured=lr,e.isTabletUserAgent=Jn,e.isUniApp=Wn,e.isUuidV4=kr,e.isValidDate=hn,e.isValidJson=vr,e.isWebWorker=Hn,e.isWithinInterval=wn,e.kebabCase=wr,e.lerp=me,e.logger=Gr,e.lowerFirst=xr,e.makeSlots=hi,e.mapConcurrent=D,e.mapValues=Qr,e.mixHexColorWithBlack=He,e.mixHexColorWithWhite=Ue,e.mixHexColors=Ve,e.normalizeWhitespace=jr,e.omit=Zr,e.parseHexColor=ze,e.parseQueryString=_r,e.partition=g,e.pascalCase=Cr,e.pick=Xr,e.pickHigherContrastColor=qe,e.randomInt=ge,e.randomString=Dr,e.relativeLuminance=Ge,e.removeNullishValues=f,e.retry=E,e.roundTo=de,e.serializeStyle=Rn,e.shallowEqual=$r,e.sleep=T,e.splitWords=yr,e.startOfDay=gn,e.sum=fe,e.throttle=k,e.toDate=q,e.toQueryString=ti,e.truncateGraphemes=Tr,e.unique=p,e.uniqueBy=m,e.upperFirst=br,e.useEmits=ri,e.useExpose=ii,e.useProps=pi,e.useRender=mi,e.withDefineType=gi,e.withInstall=li,e.withInstallDirective=di,e.withNoopInstall=ui,e.withTimeout=ee,e})({},Vue);
1
+ var FastUtils=(function(e,t){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var n=Object.create,r=Object.defineProperty,i=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.getPrototypeOf,s=Object.prototype.hasOwnProperty,c=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),l=(e,t,n,o)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var c=a(t),l=0,u=c.length,d;l<u;l++)d=c[l],!s.call(e,d)&&d!==n&&r(e,d,{get:(e=>t[e]).bind(null,d),enumerable:!(o=i(t,d))||o.enumerable});return e},u=(e,t,i)=>(i=e==null?{}:n(o(e)),l(t||!e||!e.__esModule||!s.call(e,`default`)?r(i,`default`,{value:e,enumerable:!0}):i,e));function d(e,t){if(!Number.isSafeInteger(t)||t<=0)throw RangeError("`size` 必须是正安全整数。");let n=[];for(let r=0;r<e.length;r+=t)n.push(e.slice(r,r+t));return n}function f(e){return e.filter(e=>e!=null)}function p(e){let t=[],n=new Set;for(let r=0;r<e.length;r+=1){if(!(r in e))continue;let i=e[r];n.has(i)||(n.add(i),t.push(i))}return t}function m(e,t){let n=new Set,r=[];for(let i=0;i<e.length;i+=1){let a=e[i];if(a===void 0&&!(i in e))continue;let o=t(a,i);n.has(o)||(n.add(o),r.push(a))}return r}function h(e,t){let n=new Map;return e.forEach((e,r)=>{let i=t(e,r),a=n.get(i);a===void 0?n.set(i,[e]):a.push(e)}),n}function g(e,t){let n=[],r=[];return e.forEach((e,i)=>(t(e,i)?n:r).push(e)),[n,r]}function _(e,t){let n=new Set(p(t));return p(e).filter(e=>!n.has(e))}function v(e,t){let n=new Set(p(t));return p(e).filter(e=>n.has(e))}function y(e,t){let n=new Set;for(let r=0;r<e.length;r+=1){let i=e[r];if(i===void 0&&!(r in e))continue;let a=t(i,r);if(n.has(a))return!0;n.add(a)}return!1}function b(e,t){let n,r=!1;for(let i=0;i<e.length;i+=1){let a=e[i];if(a===void 0&&!(i in e))continue;let o=t(a,i);if(!r){n=o,r=!0;continue}if(!(n===o||Number.isNaN(n)&&Number.isNaN(o)))return!1}return!0}let x=2147483647,S=e=>{let t=Error(`操作已取消。`,{cause:e.reason});return t.name=`AbortError`,t},C=e=>{if(e?.aborted)throw S(e)},w=(e,t=`milliseconds`)=>{if(!Number.isFinite(e)||e<0||e>x)throw RangeError(`\`${t}\` 必须是 0 到 ${x} 之间的有限数。`);return e};function T(e,t={}){let n=w(e),r=t.signal;return C(r),new Promise((e,t)=>{let i;function a(){r!==void 0&&(clearTimeout(i),t(S(r)))}i=setTimeout(()=>{r?.removeEventListener(`abort`,a),e()},n),r?.addEventListener(`abort`,a,{once:!0})})}function E(e,t,n={}){let r=w(t,`timeoutMs`),i=n.signal;return C(i),new Promise((t,a)=>{let o=!1,s;function c(){clearTimeout(s),i?.removeEventListener(`abort`,u)}function l(e){o||(o=!0,c(),e())}function u(){i!==void 0&&l(()=>{a(S(i))})}s=setTimeout(()=>{l(()=>{a(Error(n.message??`操作超过 ${r} 毫秒仍未完成。`))})},r),i?.addEventListener(`abort`,u,{once:!0}),Promise.resolve(e).then(e=>{l(()=>{t(e)})},e=>{l(()=>{a(e)})})})}async function D(e,t={}){let n=t.attempts??3,r=w(t.delayMs??200,`delayMs`),i=w(t.maxDelayMs??3e4,`maxDelayMs`),a=t.factor??2;if(!Number.isSafeInteger(n)||n<=0)throw RangeError("`attempts` 必须是正安全整数。");if(!Number.isFinite(a)||a<1)throw RangeError("`factor` 必须是大于或等于 1 的有限数。");for(let o=1;o<=n;o+=1){C(t.signal);let s=t.signal===void 0?{attempt:o}:{attempt:o,signal:t.signal};try{return await e(s)}catch(e){if(o===n||t.shouldRetry!==void 0&&!await t.shouldRetry(e,s))throw e;await T(r===0?0:Math.min(r*a**(o-1),i),t.signal===void 0?{}:{signal:t.signal})}}throw Error(`重试结束但未获得结果。`)}async function O(e,t,n,r={}){if(!Number.isSafeInteger(t)||t<=0)throw RangeError("`concurrency` 必须是正安全整数。");C(r.signal);let i=Array(e.length),a=0,o=!1,s=async()=>{for(;!o;){C(r.signal);let t=a;if(t>=e.length)return;if(a+=1,t in e)try{i[t]=await n(e[t],t,r.signal)}catch(e){throw o=!0,e}}},c=Math.min(t,e.length);return await Promise.all(Array.from({length:c},s)),i}function k(e,t=300){let n=w(t,`delayMs`),r,i,a=[],o=async()=>{let t=i;if(t===void 0)throw Error(`当前没有待处理的防抖调用。`);i=void 0,r=void 0;let n=a;a=[];try{let r=await e(...t);return n.forEach(e=>{e.resolve(r)}),r}catch(e){throw n.forEach(t=>{t.reject(e)}),e}},s=(...e)=>(i=e,r!==void 0&&clearTimeout(r),r=setTimeout(()=>{o().catch(()=>void 0)},n),new Promise((e,t)=>{a.push({reject:t,resolve:e})}));return s.cancel=e=>{r!==void 0&&clearTimeout(r),r=void 0,i=void 0;let t=e??Error(`防抖调用已取消。`);a.forEach(e=>{e.reject(t)}),a=[]},s.flush=()=>{if(r!==void 0)return clearTimeout(r),o()},s.pending=()=>r!==void 0,s}function A(e,t=300){let n=w(t,`delayMs`),r,i,a=!1,o=!1,s=()=>{!a&&o&&(i=void 0)},c=(...t)=>{if(i!==void 0)return i;a=!0,o=!1;let c;try{c=Promise.resolve(e(...t))}catch(e){c=Promise.reject(e)}return i=c,c.then(()=>{o=!0,s()},()=>{o=!0,s()}),r=setTimeout(()=>{r=void 0,a=!1,s()},n),c};return c.cancel=()=>{r!==void 0&&clearTimeout(r),r=void 0,a=!1,s()},c.pending=()=>i!==void 0,c}let ee=()=>{let e=globalThis.TextDecoder;if(typeof e!=`function`)throw Error(`当前运行环境不支持 TextDecoder。`);return new e(`utf-8`,{fatal:!0})},te=()=>{let e=globalThis.TextEncoder;if(typeof e!=`function`)throw Error(`当前运行环境不支持 TextEncoder。`);return new e},j=e=>te().encode(e),ne=Symbol.for(`@fast-china/utils/parse-json`),re=function(){let e=this.valueOf();try{return JSON.parse(e)}catch{return e}};Object.defineProperty(re,ne,{value:!0});let ie=()=>{let e=Object.getOwnPropertyDescriptor(String.prototype,`parseJson`);if(e!==void 0){if(typeof e.value==`function`&&Reflect.get(e.value,ne)===!0)return;throw TypeError(`String.prototype.parseJson 已被其他实现占用。`)}try{Object.defineProperty(String.prototype,"parseJson",{configurable:!0,enumerable:!1,value:re,writable:!0})}catch(e){throw TypeError(`当前运行环境不允许安装 String.prototype.parseJson。`,{cause:e})}},M=e=>(ie(),e),N=globalThis,ae=[`B`,`kB`,`MB`,`GB`,`TB`,`PB`,`EB`,`ZB`,`YB`],oe=[`B`,`KiB`,`MiB`,`GiB`,`TiB`,`PiB`,`EiB`,`ZiB`,`YiB`],P=(e,t)=>{if(Number.isNaN(e))throw RangeError(`\`${t}\` 不能是 NaN。`)},F=(e,t)=>{if(!Number.isFinite(e))throw RangeError(`\`${t}\` 必须是有限数。`)},se=(e,t)=>{if(Object.is(e,-0))return-0;let[n=`0`,r=`0`]=e.toString().split(`e`);return Number(`${n}e${Number(r)+t}`)};function ce(e,t,n){if(P(e,`value`),P(t,`minimum`),P(n,`maximum`),t>n)throw RangeError("`minimum` 不能大于 `maximum`。");return Math.min(Math.max(e,t),n)}function le(e,t,n,r=!1){if(P(e,`value`),P(t,`minimum`),P(n,`maximum`),t>n)throw RangeError("`minimum` 不能大于 `maximum`。");return e>=t&&(r?e<=n:e<n)}function ue(e,t=0){if(F(e,`value`),!Number.isSafeInteger(t)||t<-15||t>15)throw RangeError("`digits` 必须是 -15 到 15 之间的安全整数。");let n=se(e,t);return Number.isFinite(n)?se(Math.round(n),-t):e}function de(e){let t=0,n=0;return e.forEach(e=>{F(e,`value`);let r=e-n,i=t+r;if(!Number.isFinite(i))throw RangeError(`总和超出有限数范围。`);n=i-t-r,t=i}),t}function fe(e){let t=0,n=0;return e.forEach(e=>{F(e,`value`),t+=1,n=n*((t-1)/t)+e/t}),t===0?void 0:n}function pe(e,t,n){F(e,`start`),F(t,`end`),F(n,`amount`);let r=e*(1-n)+t*n;if(!Number.isFinite(r))throw RangeError(`插值结果超出有限数范围。`);return r}function me(e,t={}){if(F(e,`bytes`),e<0)throw RangeError("`bytes` 不能为负数。");let n=t.base??1024;if(n!==1e3&&n!==1024)throw RangeError("`base` 必须是 1000 或 1024。");let r=n,i=t.decimals??2;if(!Number.isSafeInteger(i)||i<0||i>20)throw RangeError("`decimals` 必须是 0 到 20 之间的安全整数。");if(e===0)return`0 B`;let a=r===1024?oe:ae,o=Math.min(Math.floor(Math.log(e)/Math.log(r)),a.length-1),s=e/r**o;return`${new Intl.NumberFormat(t.locale??`en-US`,{maximumFractionDigits:i,minimumFractionDigits:0,useGrouping:!1}).format(s)} ${a[o]??a.at(-1)}`}function he(e,t){if(!Number.isSafeInteger(e)||!Number.isSafeInteger(t))throw RangeError("`minimum` 和 `maximumExclusive` 必须是安全整数。");let n=t-e,r=4294967296;if(n<=0||n>r)throw RangeError(`区间不能为空且宽度不能超过 2^32。`);let i=N.crypto,a=i?.getRandomValues?.bind(i),o=Math.floor(r/n)*n,s=new Uint32Array(1),c;do a===void 0?s[0]=Math.floor(Math.random()*r):a(s),c=s[0]??r;while(c>=o);return e+c%n}let I=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,ge=e=>TypeError(`该值不是有效的 ${e===`url`?`Base64URL`:`Base64`}。`),_e=(e,t)=>{let n=t===`standard`?e.replace(/[\t\n\f\r ]+/gu,``):e;if(!(t===`url`?/^[\w-]*={0,2}$/u:/^[A-Za-z\d+/]*={0,2}$/u).test(n)||n.length%4==1||n.includes(`=`)&&n.length%4!=0)throw ge(t);let r=(t===`url`?n.replace(/-/gu,`+`).replace(/_/gu,`/`):n).replace(/=+$/u,``);return r.padEnd(Math.ceil(r.length/4)*4,`=`)},ve=e=>{let t=``;for(let n=0;n<e.length;n+=3){let r=e[n]??0,i=e[n+1],a=e[n+2],o=r<<16|(i??0)<<8|(a??0);t+=I[o>>18&63]??``,t+=I[o>>12&63]??``,t+=i===void 0?`=`:I[o>>6&63]??``,t+=a===void 0?`=`:I[o&63]??``}return t},ye=(e,t)=>{let n=_e(e,t);if(n.length===0)return new Uint8Array;let r=n.endsWith(`==`)?2:+!!n.endsWith(`=`),i=new Uint8Array(n.length/4*3-r),a=0;for(let e=0;e<n.length;e+=4){let o=I.indexOf(n[e]??``),s=I.indexOf(n[e+1]??``),c=n[e+2]??`=`,l=n[e+3]??`=`,u=c===`=`?0:I.indexOf(c),d=l===`=`?0:I.indexOf(l);if(o<0||s<0||u<0||d<0||e+4===n.length&&(r===2&&s&15||r===1&&u&3))throw ge(t);let f=o<<18|s<<12|u<<6|d;a<i.length&&(i[a++]=f>>16&255),a<i.length&&(i[a++]=f>>8&255),a<i.length&&(i[a++]=f&255)}return i},be=e=>{let t=ee();try{return t.decode(e)}catch(e){throw TypeError(`解码后的字节不是有效的 UTF-8。`,{cause:e})}};function L(e){return ve(e)}function R(e){return ye(e,`standard`)}function xe(e){return ve(j(e))}function Se(e){return M(be(R(e)))}function z(e){return ve(e).replace(/\+/gu,`-`).replace(/\//gu,`_`).replace(/=+$/u,``)}function B(e){return ye(e,`url`)}function Ce(e){return z(j(e))}function we(e){return M(be(B(e)))}function Te(e){let t=new Uint8Array(e.length);for(let n=0;n<e.length;n+=1){let r=e.charCodeAt(n);if(r>255)throw TypeError(`待编码字符串包含超出 Latin-1 范围的字符。`);t[n]=r}return L(t)}function Ee(e){let t=R(e),n=``;for(let e of t)n+=String.fromCharCode(e);return M(n)}let De=Object.freeze([{index:977,randomIndex:188},{index:926,randomIndex:201},{index:851,randomIndex:225},{index:700,randomIndex:255},{index:600,randomIndex:268},{index:500,randomIndex:277},{index:400,randomIndex:288},{index:330,randomIndex:327},{index:300,randomIndex:180},{index:200,randomIndex:178},{index:100,randomIndex:124},{index:98,randomIndex:95},{index:92,randomIndex:90},{index:91,randomIndex:87},{index:88,randomIndex:84},{index:82,randomIndex:79},{index:78,randomIndex:71},{index:72,randomIndex:69},{index:68,randomIndex:66},{index:59,randomIndex:55},{index:48,randomIndex:43},{index:42,randomIndex:37},{index:36,randomIndex:30},{index:33,randomIndex:27},{index:24,randomIndex:20},{index:23,randomIndex:18},{index:21,randomIndex:16},{index:17,randomIndex:14},{index:13,randomIndex:9},{index:7,randomIndex:4},{index:5,randomIndex:3},{index:2,randomIndex:1}]),Oe=e=>{if(!Number.isSafeInteger(e)||e<0)throw RangeError("`prefixStrLength` 必须是非负安全整数。")},ke=e=>{let t=``;for(let n=0;n<e;n+=1)t+=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz`[he(0,52)]??``;return t},Ae=e=>{let t=e;for(let n of De){if(n.index>=e.length)continue;let r=e[n.randomIndex]??e.at(-1)??``;t=t.slice(0,n.index)+r+t.slice(n.index)}return t},je=e=>{let t=e;for(let n=De.length-1;n>=0;--n){let r=De[n];r!==void 0&&r.index<e.length&&(t=t.slice(0,r.index)+t.slice(r.index+1))}return t};function Me(e,t=6){if(e.length===0)return``;Oe(t);let n=ke(t),r=Te(encodeURIComponent(e));return t!==0&&(r=Ae(r)),n+r}function Ne(e,t=6){if(e.length===0)return M(``);if(Oe(t),t>e.length)throw TypeError(`Base64 值的长度小于配置的前缀长度。`);let n=e.slice(t);return t!==0&&(n=je(n)),M(decodeURIComponent(Ee(n)))}let Pe=(e,t)=>{if(!Number.isFinite(e)||e<0||e>255)throw RangeError(`\`${t}\` 必须是 0 到 255 之间的有限数。`)},Fe=e=>{if(!Number.isFinite(e)||e<0||e>1)throw RangeError("`alpha` 必须是 0 到 1 之间的有限数。")},Ie=e=>{let t=e.startsWith(`#`)?e.slice(1):e;if(![3,4,6,8].includes(t.length)||!/^[\dA-F]+$/iu.test(t))throw TypeError(`十六进制颜色必须包含 3、4、6 或 8 个十六进制字符。`);return t.length<=4?Array.from(t,e=>`${e}${e}`).join(``):t},Le=e=>Math.round(e).toString(16).padStart(2,`0`);function Re(e){let t=Ie(e);return{red:Number.parseInt(t.slice(0,2),16),green:Number.parseInt(t.slice(2,4),16),blue:Number.parseInt(t.slice(4,6),16),alpha:t.length===8?Number.parseInt(t.slice(6,8),16)/255:1}}function ze(e,t=`alpha`in e&&e.alpha<1){Pe(e.red,`red`),Pe(e.green,`green`),Pe(e.blue,`blue`);let n=`alpha`in e?e.alpha:1;return Fe(n),`#${`${Le(e.red)}${Le(e.green)}${Le(e.blue)}`}${t?Le(n*255):``}`}function Be(e,t,n){if(!Number.isFinite(n)||n<0||n>1)throw RangeError("`amount` 必须是 0 到 1 之间的有限数。");let r=Re(e),i=Re(t),a=(e,t)=>e+(t-e)*n;return ze({red:a(r.red,i.red),green:a(r.green,i.green),blue:a(r.blue,i.blue),alpha:a(r.alpha,i.alpha)},r.alpha<1||i.alpha<1)}function Ve(e,t){return Be(e,`#000000`,t)}function He(e,t){return Be(e,`#ffffff`,t)}let Ue=e=>{let t=e/255;return t<=.04045?t/12.92:((t+.055)/1.055)**2.4};function We(e){let{red:t,green:n,blue:r}=Re(e);return .2126*Ue(t)+.7152*Ue(n)+.0722*Ue(r)}function Ge(e,t){let n=We(e),r=We(t),i=Math.max(n,r),a=Math.min(n,r);return(i+.05)/(a+.05)}function Ke(e,t=`#000000`,n=`#ffffff`){return Ge(e,t)>=Ge(e,n)?t:n}var qe=c((()=>{})),V=c(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r():typeof define==`function`&&define.amd?define([],r):n.CryptoJS=r()})(e,function(){var e=e||function(e,t){var n;if(typeof window<`u`&&window.crypto&&(n=window.crypto),typeof self<`u`&&self.crypto&&(n=self.crypto),typeof globalThis<`u`&&globalThis.crypto&&(n=globalThis.crypto),!n&&typeof window<`u`&&window.msCrypto&&(n=window.msCrypto),!n&&typeof global<`u`&&global.crypto&&(n=global.crypto),!n&&typeof require==`function`)try{n=qe()}catch{}var r=function(){if(n){if(typeof n.getRandomValues==`function`)try{return n.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof n.randomBytes==`function`)try{return n.randomBytes(4).readInt32LE()}catch{}}throw Error(`Native crypto module could not be used to get secure random number.`)},i=Object.create||function(){function e(){}return function(t){var n;return e.prototype=t,n=new e,e.prototype=null,n}}(),a={},o=a.lib={},s=o.Base=function(){return{extend:function(e){var t=i(this);return e&&t.mixIn(e),(!t.hasOwnProperty(`init`)||this.init===t.init)&&(t.init=function(){t.$super.init.apply(this,arguments)}),t.init.prototype=t,t.$super=this,t},create:function(){var e=this.extend();return e.init.apply(e,arguments),e},init:function(){},mixIn:function(e){for(var t in e)e.hasOwnProperty(t)&&(this[t]=e[t]);e.hasOwnProperty(`toString`)&&(this.toString=e.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),c=o.WordArray=s.extend({init:function(e,n){e=this.words=e||[],this.sigBytes=n==t?e.length*4:n},toString:function(e){return(e||u).stringify(this)},concat:function(e){var t=this.words,n=e.words,r=this.sigBytes,i=e.sigBytes;if(this.clamp(),r%4)for(var a=0;a<i;a++){var o=n[a>>>2]>>>24-a%4*8&255;t[r+a>>>2]|=o<<24-(r+a)%4*8}else for(var s=0;s<i;s+=4)t[r+s>>>2]=n[s>>>2];return this.sigBytes+=i,this},clamp:function(){var t=this.words,n=this.sigBytes;t[n>>>2]&=4294967295<<32-n%4*8,t.length=e.ceil(n/4)},clone:function(){var e=s.clone.call(this);return e.words=this.words.slice(0),e},random:function(e){for(var t=[],n=0;n<e;n+=4)t.push(r());return new c.init(t,e)}}),l=a.enc={},u=l.Hex={stringify:function(e){for(var t=e.words,n=e.sigBytes,r=[],i=0;i<n;i++){var a=t[i>>>2]>>>24-i%4*8&255;r.push((a>>>4).toString(16)),r.push((a&15).toString(16))}return r.join(``)},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r+=2)n[r>>>3]|=parseInt(e.substr(r,2),16)<<24-r%8*4;return new c.init(n,t/2)}},d=l.Latin1={stringify:function(e){for(var t=e.words,n=e.sigBytes,r=[],i=0;i<n;i++){var a=t[i>>>2]>>>24-i%4*8&255;r.push(String.fromCharCode(a))}return r.join(``)},parse:function(e){for(var t=e.length,n=[],r=0;r<t;r++)n[r>>>2]|=(e.charCodeAt(r)&255)<<24-r%4*8;return new c.init(n,t)}},f=l.Utf8={stringify:function(e){try{return decodeURIComponent(escape(d.stringify(e)))}catch{throw Error(`Malformed UTF-8 data`)}},parse:function(e){return d.parse(unescape(encodeURIComponent(e)))}},p=o.BufferedBlockAlgorithm=s.extend({reset:function(){this._data=new c.init,this._nDataBytes=0},_append:function(e){typeof e==`string`&&(e=f.parse(e)),this._data.concat(e),this._nDataBytes+=e.sigBytes},_process:function(t){var n,r=this._data,i=r.words,a=r.sigBytes,o=this.blockSize,s=a/(o*4);s=t?e.ceil(s):e.max((s|0)-this._minBufferSize,0);var l=s*o,u=e.min(l*4,a);if(l){for(var d=0;d<l;d+=o)this._doProcessBlock(i,d);n=i.splice(0,l),r.sigBytes-=u}return new c.init(n,u)},clone:function(){var e=s.clone.call(this);return e._data=this._data.clone(),e},_minBufferSize:0});o.Hasher=p.extend({cfg:s.extend(),init:function(e){this.cfg=this.cfg.extend(e),this.reset()},reset:function(){p.reset.call(this),this._doReset()},update:function(e){return this._append(e),this._process(),this},finalize:function(e){return e&&this._append(e),this._doFinalize()},blockSize:16,_createHelper:function(e){return function(t,n){return new e.init(n).finalize(t)}},_createHmacHelper:function(e){return function(t,n){return new m.HMAC.init(e,n).finalize(t)}}});var m=a.algo={};return a}(Math);return e})})),Je=c(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(V()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib.WordArray,r=t.enc;r.Base64={stringify:function(e){var t=e.words,n=e.sigBytes,r=this._map;e.clamp();for(var i=[],a=0;a<n;a+=3)for(var o=t[a>>>2]>>>24-a%4*8&255,s=t[a+1>>>2]>>>24-(a+1)%4*8&255,c=t[a+2>>>2]>>>24-(a+2)%4*8&255,l=o<<16|s<<8|c,u=0;u<4&&a+u*.75<n;u++)i.push(r.charAt(l>>>6*(3-u)&63));var d=r.charAt(64);if(d)for(;i.length%4;)i.push(d);return i.join(``)},parse:function(e){var t=e.length,n=this._map,r=this._reverseMap;if(!r){r=this._reverseMap=[];for(var a=0;a<n.length;a++)r[n.charCodeAt(a)]=a}var o=n.charAt(64);if(o){var s=e.indexOf(o);s!==-1&&(t=s)}return i(e,t,r)},_map:`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=`};function i(e,t,r){for(var i=[],a=0,o=0;o<t;o++)if(o%4){var s=r[e.charCodeAt(o-1)]<<o%4*2|r[e.charCodeAt(o)]>>>6-o%4*2;i[a>>>2]|=s<<24-a%4*8,a++}return n.create(i,a)}})(),e.enc.Base64})})),Ye=c(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(V()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return(function(t){var n=e,r=n.lib,i=r.WordArray,a=r.Hasher,o=n.algo,s=[];(function(){for(var e=0;e<64;e++)s[e]=t.abs(t.sin(e+1))*4294967296|0})();var c=o.MD5=a.extend({_doReset:function(){this._hash=new i.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(e,t){for(var n=0;n<16;n++){var r=t+n,i=e[r];e[r]=(i<<8|i>>>24)&16711935|(i<<24|i>>>8)&4278255360}var a=this._hash.words,o=e[t+0],c=e[t+1],p=e[t+2],m=e[t+3],h=e[t+4],g=e[t+5],_=e[t+6],v=e[t+7],y=e[t+8],b=e[t+9],x=e[t+10],S=e[t+11],C=e[t+12],w=e[t+13],T=e[t+14],E=e[t+15],D=a[0],O=a[1],k=a[2],A=a[3];D=l(D,O,k,A,o,7,s[0]),A=l(A,D,O,k,c,12,s[1]),k=l(k,A,D,O,p,17,s[2]),O=l(O,k,A,D,m,22,s[3]),D=l(D,O,k,A,h,7,s[4]),A=l(A,D,O,k,g,12,s[5]),k=l(k,A,D,O,_,17,s[6]),O=l(O,k,A,D,v,22,s[7]),D=l(D,O,k,A,y,7,s[8]),A=l(A,D,O,k,b,12,s[9]),k=l(k,A,D,O,x,17,s[10]),O=l(O,k,A,D,S,22,s[11]),D=l(D,O,k,A,C,7,s[12]),A=l(A,D,O,k,w,12,s[13]),k=l(k,A,D,O,T,17,s[14]),O=l(O,k,A,D,E,22,s[15]),D=u(D,O,k,A,c,5,s[16]),A=u(A,D,O,k,_,9,s[17]),k=u(k,A,D,O,S,14,s[18]),O=u(O,k,A,D,o,20,s[19]),D=u(D,O,k,A,g,5,s[20]),A=u(A,D,O,k,x,9,s[21]),k=u(k,A,D,O,E,14,s[22]),O=u(O,k,A,D,h,20,s[23]),D=u(D,O,k,A,b,5,s[24]),A=u(A,D,O,k,T,9,s[25]),k=u(k,A,D,O,m,14,s[26]),O=u(O,k,A,D,y,20,s[27]),D=u(D,O,k,A,w,5,s[28]),A=u(A,D,O,k,p,9,s[29]),k=u(k,A,D,O,v,14,s[30]),O=u(O,k,A,D,C,20,s[31]),D=d(D,O,k,A,g,4,s[32]),A=d(A,D,O,k,y,11,s[33]),k=d(k,A,D,O,S,16,s[34]),O=d(O,k,A,D,T,23,s[35]),D=d(D,O,k,A,c,4,s[36]),A=d(A,D,O,k,h,11,s[37]),k=d(k,A,D,O,v,16,s[38]),O=d(O,k,A,D,x,23,s[39]),D=d(D,O,k,A,w,4,s[40]),A=d(A,D,O,k,o,11,s[41]),k=d(k,A,D,O,m,16,s[42]),O=d(O,k,A,D,_,23,s[43]),D=d(D,O,k,A,b,4,s[44]),A=d(A,D,O,k,C,11,s[45]),k=d(k,A,D,O,E,16,s[46]),O=d(O,k,A,D,p,23,s[47]),D=f(D,O,k,A,o,6,s[48]),A=f(A,D,O,k,v,10,s[49]),k=f(k,A,D,O,T,15,s[50]),O=f(O,k,A,D,g,21,s[51]),D=f(D,O,k,A,C,6,s[52]),A=f(A,D,O,k,m,10,s[53]),k=f(k,A,D,O,x,15,s[54]),O=f(O,k,A,D,c,21,s[55]),D=f(D,O,k,A,y,6,s[56]),A=f(A,D,O,k,E,10,s[57]),k=f(k,A,D,O,_,15,s[58]),O=f(O,k,A,D,w,21,s[59]),D=f(D,O,k,A,h,6,s[60]),A=f(A,D,O,k,S,10,s[61]),k=f(k,A,D,O,p,15,s[62]),O=f(O,k,A,D,b,21,s[63]),a[0]=a[0]+D|0,a[1]=a[1]+O|0,a[2]=a[2]+k|0,a[3]=a[3]+A|0},_doFinalize:function(){var e=this._data,n=e.words,r=this._nDataBytes*8,i=e.sigBytes*8;n[i>>>5]|=128<<24-i%32;var a=t.floor(r/4294967296),o=r;n[(i+64>>>9<<4)+15]=(a<<8|a>>>24)&16711935|(a<<24|a>>>8)&4278255360,n[(i+64>>>9<<4)+14]=(o<<8|o>>>24)&16711935|(o<<24|o>>>8)&4278255360,e.sigBytes=(n.length+1)*4,this._process();for(var s=this._hash,c=s.words,l=0;l<4;l++){var u=c[l];c[l]=(u<<8|u>>>24)&16711935|(u<<24|u>>>8)&4278255360}return s},clone:function(){var e=a.clone.call(this);return e._hash=this._hash.clone(),e}});function l(e,t,n,r,i,a,o){var s=e+(t&n|~t&r)+i+o;return(s<<a|s>>>32-a)+t}function u(e,t,n,r,i,a,o){var s=e+(t&r|n&~r)+i+o;return(s<<a|s>>>32-a)+t}function d(e,t,n,r,i,a,o){var s=e+(t^n^r)+i+o;return(s<<a|s>>>32-a)+t}function f(e,t,n,r,i,a,o){var s=e+(n^(t|~r))+i+o;return(s<<a|s>>>32-a)+t}n.MD5=a._createHelper(c),n.HmacMD5=a._createHmacHelper(c)})(Math),e.MD5})})),Xe=c(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(V()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib,r=n.WordArray,i=n.Hasher,a=t.algo,o=[],s=a.SHA1=i.extend({_doReset:function(){this._hash=new r.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(e,t){for(var n=this._hash.words,r=n[0],i=n[1],a=n[2],s=n[3],c=n[4],l=0;l<80;l++){if(l<16)o[l]=e[t+l]|0;else{var u=o[l-3]^o[l-8]^o[l-14]^o[l-16];o[l]=u<<1|u>>>31}var d=(r<<5|r>>>27)+c+o[l];d+=l<20?(i&a|~i&s)+1518500249:l<40?(i^a^s)+1859775393:l<60?(i&a|i&s|a&s)-1894007588:(i^a^s)-899497514,c=s,s=a,a=i<<30|i>>>2,i=r,r=d}n[0]=n[0]+r|0,n[1]=n[1]+i|0,n[2]=n[2]+a|0,n[3]=n[3]+s|0,n[4]=n[4]+c|0},_doFinalize:function(){var e=this._data,t=e.words,n=this._nDataBytes*8,r=e.sigBytes*8;return t[r>>>5]|=128<<24-r%32,t[(r+64>>>9<<4)+14]=Math.floor(n/4294967296),t[(r+64>>>9<<4)+15]=n,e.sigBytes=t.length*4,this._process(),this._hash},clone:function(){var e=i.clone.call(this);return e._hash=this._hash.clone(),e}});t.SHA1=i._createHelper(s),t.HmacSHA1=i._createHmacHelper(s)})(),e.SHA1})})),Ze=c(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(V()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){(function(){var t=e,n=t.lib.Base,r=t.enc.Utf8,i=t.algo;i.HMAC=n.extend({init:function(e,t){e=this._hasher=new e.init,typeof t==`string`&&(t=r.parse(t));var n=e.blockSize,i=n*4;t.sigBytes>i&&(t=e.finalize(t)),t.clamp();for(var a=this._oKey=t.clone(),o=this._iKey=t.clone(),s=a.words,c=o.words,l=0;l<n;l++)s[l]^=1549556828,c[l]^=909522486;a.sigBytes=o.sigBytes=i,this.reset()},reset:function(){var e=this._hasher;e.reset(),e.update(this._iKey)},update:function(e){return this._hasher.update(e),this},finalize:function(e){var t=this._hasher,n=t.finalize(e);return t.reset(),t.finalize(this._oKey.clone().concat(n))}})})()})})),Qe=c(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(V(),Xe(),Ze()):typeof define==`function`&&define.amd?define([`./core`,`./sha1`,`./hmac`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib,r=n.Base,i=n.WordArray,a=t.algo,o=a.MD5,s=a.EvpKDF=r.extend({cfg:r.extend({keySize:4,hasher:o,iterations:1}),init:function(e){this.cfg=this.cfg.extend(e)},compute:function(e,t){for(var n,r=this.cfg,a=r.hasher.create(),o=i.create(),s=o.words,c=r.keySize,l=r.iterations;s.length<c;){n&&a.update(n),n=a.update(e).finalize(t),a.reset();for(var u=1;u<l;u++)n=a.finalize(n),a.reset();o.concat(n)}return o.sigBytes=c*4,o}});t.EvpKDF=function(e,t,n){return s.create(n).compute(e,t)}})(),e.EvpKDF})})),H=c(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(V(),Qe()):typeof define==`function`&&define.amd?define([`./core`,`./evpkdf`],r):r(n.CryptoJS)})(e,function(e){e.lib.Cipher||function(t){var n=e,r=n.lib,i=r.Base,a=r.WordArray,o=r.BufferedBlockAlgorithm,s=n.enc;s.Utf8;var c=s.Base64,l=n.algo.EvpKDF,u=r.Cipher=o.extend({cfg:i.extend(),createEncryptor:function(e,t){return this.create(this._ENC_XFORM_MODE,e,t)},createDecryptor:function(e,t){return this.create(this._DEC_XFORM_MODE,e,t)},init:function(e,t,n){this.cfg=this.cfg.extend(n),this._xformMode=e,this._key=t,this.reset()},reset:function(){o.reset.call(this),this._doReset()},process:function(e){return this._append(e),this._process()},finalize:function(e){return e&&this._append(e),this._doFinalize()},keySize:4,ivSize:4,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function e(e){return typeof e==`string`?S:y}return function(t){return{encrypt:function(n,r,i){return e(r).encrypt(t,n,r,i)},decrypt:function(n,r,i){return e(r).decrypt(t,n,r,i)}}}}()});r.StreamCipher=u.extend({_doFinalize:function(){return this._process(!0)},blockSize:1});var d=n.mode={},f=r.BlockCipherMode=i.extend({createEncryptor:function(e,t){return this.Encryptor.create(e,t)},createDecryptor:function(e,t){return this.Decryptor.create(e,t)},init:function(e,t){this._cipher=e,this._iv=t}}),p=d.CBC=function(){var e=f.extend();e.Encryptor=e.extend({processBlock:function(e,t){var r=this._cipher,i=r.blockSize;n.call(this,e,t,i),r.encryptBlock(e,t),this._prevBlock=e.slice(t,t+i)}}),e.Decryptor=e.extend({processBlock:function(e,t){var r=this._cipher,i=r.blockSize,a=e.slice(t,t+i);r.decryptBlock(e,t),n.call(this,e,t,i),this._prevBlock=a}});function n(e,n,r){var i,a=this._iv;a?(i=a,this._iv=t):i=this._prevBlock;for(var o=0;o<r;o++)e[n+o]^=i[o]}return e}(),m=n.pad={},h=m.Pkcs7={pad:function(e,t){for(var n=t*4,r=n-e.sigBytes%n,i=r<<24|r<<16|r<<8|r,o=[],s=0;s<r;s+=4)o.push(i);var c=a.create(o,r);e.concat(c)},unpad:function(e){var t=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=t}};r.BlockCipher=u.extend({cfg:u.cfg.extend({mode:p,padding:h}),reset:function(){var e;u.reset.call(this);var t=this.cfg,n=t.iv,r=t.mode;this._xformMode==this._ENC_XFORM_MODE?e=r.createEncryptor:(e=r.createDecryptor,this._minBufferSize=1),this._mode&&this._mode.__creator==e?this._mode.init(this,n&&n.words):(this._mode=e.call(r,this,n&&n.words),this._mode.__creator=e)},_doProcessBlock:function(e,t){this._mode.processBlock(e,t)},_doFinalize:function(){var e,t=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(t.pad(this._data,this.blockSize),e=this._process(!0)):(e=this._process(!0),t.unpad(e)),e},blockSize:4});var g=r.CipherParams=i.extend({init:function(e){this.mixIn(e)},toString:function(e){return(e||this.formatter).stringify(this)}}),_=n.format={},v=_.OpenSSL={stringify:function(e){var t,n=e.ciphertext,r=e.salt;return t=r?a.create([1398893684,1701076831]).concat(r).concat(n):n,t.toString(c)},parse:function(e){var t,n=c.parse(e),r=n.words;return r[0]==1398893684&&r[1]==1701076831&&(t=a.create(r.slice(2,4)),r.splice(0,4),n.sigBytes-=16),g.create({ciphertext:n,salt:t})}},y=r.SerializableCipher=i.extend({cfg:i.extend({format:v}),encrypt:function(e,t,n,r){r=this.cfg.extend(r);var i=e.createEncryptor(n,r),a=i.finalize(t),o=i.cfg;return g.create({ciphertext:a,key:n,iv:o.iv,algorithm:e,mode:o.mode,padding:o.padding,blockSize:e.blockSize,formatter:r.format})},decrypt:function(e,t,n,r){return r=this.cfg.extend(r),t=this._parse(t,r.format),e.createDecryptor(n,r).finalize(t.ciphertext)},_parse:function(e,t){return typeof e==`string`?t.parse(e,this):e}}),b=n.kdf={},x=b.OpenSSL={execute:function(e,t,n,r,i){if(r||=a.random(8),i)var o=l.create({keySize:t+n,hasher:i}).compute(e,r);else var o=l.create({keySize:t+n}).compute(e,r);var s=a.create(o.words.slice(t),n*4);return o.sigBytes=t*4,g.create({key:o,iv:s,salt:r})}},S=r.PasswordBasedCipher=y.extend({cfg:y.cfg.extend({kdf:x}),encrypt:function(e,t,n,r){r=this.cfg.extend(r);var i=r.kdf.execute(n,e.keySize,e.ivSize,r.salt,r.hasher);r.iv=i.iv;var a=y.encrypt.call(this,e,t,i.key,r);return a.mixIn(i),a},decrypt:function(e,t,n,r){r=this.cfg.extend(r),t=this._parse(t,r.format);var i=r.kdf.execute(n,e.keySize,e.ivSize,t.salt,r.hasher);return r.iv=i.iv,y.decrypt.call(this,e,t,i.key,r)}})}()})})),$e=c(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(V(),Je(),Ye(),Qe(),H()):typeof define==`function`&&define.amd?define([`./core`,`./enc-base64`,`./md5`,`./evpkdf`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return(function(){var t=e,n=t.lib.BlockCipher,r=t.algo,i=[],a=[],o=[],s=[],c=[],l=[],u=[],d=[],f=[],p=[];(function(){for(var e=[],t=0;t<256;t++)t<128?e[t]=t<<1:e[t]=t<<1^283;for(var n=0,r=0,t=0;t<256;t++){var m=r^r<<1^r<<2^r<<3^r<<4;m=m>>>8^m&255^99,i[n]=m,a[m]=n;var h=e[n],g=e[h],_=e[g],v=e[m]*257^m*16843008;o[n]=v<<24|v>>>8,s[n]=v<<16|v>>>16,c[n]=v<<8|v>>>24,l[n]=v;var v=_*16843009^g*65537^h*257^n*16843008;u[m]=v<<24|v>>>8,d[m]=v<<16|v>>>16,f[m]=v<<8|v>>>24,p[m]=v,n?(n=h^e[e[e[_^h]]],r^=e[e[r]]):n=r=1}})();var m=[0,1,2,4,8,16,32,64,128,27,54],h=r.AES=n.extend({_doReset:function(){var e;if(!(this._nRounds&&this._keyPriorReset===this._key)){for(var t=this._keyPriorReset=this._key,n=t.words,r=t.sigBytes/4,a=((this._nRounds=r+6)+1)*4,o=this._keySchedule=[],s=0;s<a;s++)s<r?o[s]=n[s]:(e=o[s-1],s%r?r>6&&s%r==4&&(e=i[e>>>24]<<24|i[e>>>16&255]<<16|i[e>>>8&255]<<8|i[e&255]):(e=e<<8|e>>>24,e=i[e>>>24]<<24|i[e>>>16&255]<<16|i[e>>>8&255]<<8|i[e&255],e^=m[s/r|0]<<24),o[s]=o[s-r]^e);for(var c=this._invKeySchedule=[],l=0;l<a;l++){var s=a-l;if(l%4)var e=o[s];else var e=o[s-4];l<4||s<=4?c[l]=e:c[l]=u[i[e>>>24]]^d[i[e>>>16&255]]^f[i[e>>>8&255]]^p[i[e&255]]}}},encryptBlock:function(e,t){this._doCryptBlock(e,t,this._keySchedule,o,s,c,l,i)},decryptBlock:function(e,t){var n=e[t+1];e[t+1]=e[t+3],e[t+3]=n,this._doCryptBlock(e,t,this._invKeySchedule,u,d,f,p,a);var n=e[t+1];e[t+1]=e[t+3],e[t+3]=n},_doCryptBlock:function(e,t,n,r,i,a,o,s){for(var c=this._nRounds,l=e[t]^n[0],u=e[t+1]^n[1],d=e[t+2]^n[2],f=e[t+3]^n[3],p=4,m=1;m<c;m++){var h=r[l>>>24]^i[u>>>16&255]^a[d>>>8&255]^o[f&255]^n[p++],g=r[u>>>24]^i[d>>>16&255]^a[f>>>8&255]^o[l&255]^n[p++],_=r[d>>>24]^i[f>>>16&255]^a[l>>>8&255]^o[u&255]^n[p++],v=r[f>>>24]^i[l>>>16&255]^a[u>>>8&255]^o[d&255]^n[p++];l=h,u=g,d=_,f=v}var h=(s[l>>>24]<<24|s[u>>>16&255]<<16|s[d>>>8&255]<<8|s[f&255])^n[p++],g=(s[u>>>24]<<24|s[d>>>16&255]<<16|s[f>>>8&255]<<8|s[l&255])^n[p++],_=(s[d>>>24]<<24|s[f>>>16&255]<<16|s[l>>>8&255]<<8|s[u&255])^n[p++],v=(s[f>>>24]<<24|s[l>>>16&255]<<16|s[u>>>8&255]<<8|s[d&255])^n[p++];e[t]=h,e[t+1]=g,e[t+2]=_,e[t+3]=v},keySize:8});t.AES=n._createHelper(h)})(),e.AES})})),et=c(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(V()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return e.enc.Hex})})),tt=c(((e,t)=>{(function(n,r){typeof e==`object`?t.exports=e=r(V()):typeof define==`function`&&define.amd?define([`./core`],r):r(n.CryptoJS)})(e,function(e){return e.enc.Utf8})})),nt=c(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(V(),H()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.mode.ECB=function(){var t=e.lib.BlockCipherMode.extend();return t.Encryptor=t.extend({processBlock:function(e,t){this._cipher.encryptBlock(e,t)}}),t.Decryptor=t.extend({processBlock:function(e,t){this._cipher.decryptBlock(e,t)}}),t}(),e.mode.ECB})})),rt=c(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(V(),H()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.pad.AnsiX923={pad:function(e,t){var n=e.sigBytes,r=t*4,i=r-n%r,a=n+i-1;e.clamp(),e.words[a>>>2]|=i<<24-a%4*8,e.sigBytes+=i},unpad:function(e){var t=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=t}},e.pad.Ansix923})})),it=c(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(V(),H()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.pad.Iso10126={pad:function(t,n){var r=n*4,i=r-t.sigBytes%r;t.concat(e.lib.WordArray.random(i-1)).concat(e.lib.WordArray.create([i<<24],1))},unpad:function(e){var t=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=t}},e.pad.Iso10126})})),at=c(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(V(),H()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.pad.NoPadding={pad:function(){},unpad:function(){}},e.pad.NoPadding})})),ot=c(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(V(),H()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.pad.Pkcs7})})),st=c(((e,t)=>{(function(n,r,i){typeof e==`object`?t.exports=e=r(V(),H()):typeof define==`function`&&define.amd?define([`./core`,`./cipher-core`],r):r(n.CryptoJS)})(e,function(e){return e.pad.ZeroPadding={pad:function(e,t){var n=t*4;e.clamp(),e.sigBytes+=n-(e.sigBytes%n||n)},unpad:function(e){for(var t=e.words,n=e.sigBytes-1,n=e.sigBytes-1;n>=0;n--)if(t[n>>>2]>>>24-n%4*8&255){e.sigBytes=n+1;break}}},e.pad.ZeroPadding})})),ct=u($e(),1),lt=u(V(),1),ut=u(et(),1),U=u(tt(),1),dt=u(Ye(),1),ft=u(nt(),1);rt();var pt=u(it(),1),mt=u(at(),1),ht=u(ot(),1),gt=u(st(),1),_t=u(Xe(),1);let vt=6e5,yt=1e5,bt=5e6,xt=1024,St=8388608,Ct=`FAST-AES-256-GCM-V1`,wt=`FAST-PBKDF2-SHA256-V1`,Tt=e=>{if(e!==`CBC`&&e!==`ECB`)throw RangeError("`cipherMode` 必须是 `CBC` 或 `ECB`。")},W=()=>{let e=N.crypto,t=e?.subtle;if(typeof t?.decrypt!=`function`||typeof t.deriveBits!=`function`||typeof t.deriveKey!=`function`||typeof t.digest!=`function`||typeof t.encrypt!=`function`||typeof t.exportKey!=`function`||typeof t.generateKey!=`function`||typeof t.importKey!=`function`||typeof t.sign!=`function`||typeof t.verify!=`function`)throw Error(`当前运行环境不支持 Web Crypto SubtleCrypto。`);return e},G=e=>{let t=new Uint8Array(e.byteLength);return t.set(e),t.buffer},K={private:`PRIVATE KEY`,public:`PUBLIC KEY`},Et=(e,t)=>`-----BEGIN ${e}-----\n${L(new Uint8Array(t)).match(/.{1,64}/gu)?.join(`
2
+ `)??``}\n-----END ${e}-----`,q=(e,t)=>{let n=`-----BEGIN ${t}-----`,r=`-----END ${t}-----`,i=e.trim();if(!i.startsWith(n)||!i.endsWith(r))throw TypeError(`应提供 ${t} 格式的 PEM 值。`);let a=i.slice(n.length,-r.length).replace(/\s+/gu,``);return G(R(a))},Dt=async e=>{let t=W(),[n,r]=await Promise.all([t.subtle.exportKey(`pkcs8`,e.privateKey),t.subtle.exportKey(`spki`,e.publicKey)]);return{privateKey:Et(K.private,n),publicKey:Et(K.public,r)}},Ot=e=>{if(`privateKey`in e&&`publicKey`in e)return e;throw Error(`当前运行环境未生成密钥对。`)},kt=e=>{let t=j(e);if(t.length===0)throw TypeError(`加密密码不能为空。`);if(t.length>xt)throw RangeError(`UTF-8 密码不能超过 ${xt} 字节。`);return t},At=e=>{if(!Number.isSafeInteger(e)||e<yt||e>bt)throw RangeError(`\`iterations\` 必须是 ${yt} 到 ${bt} 之间的安全整数。`);return e},jt=e=>Array.from(e,e=>e.toString(16).padStart(2,`0`)).join(``),Mt=e=>jt(e).toUpperCase(),Nt=async(e,t,n)=>{let r=j(t);if(r.length===0)throw TypeError(`HMAC 密钥不能为空。`);let i=W(),a=await i.subtle.importKey(`raw`,G(r),{hash:n,name:`HMAC`},!1,[`sign`]),o=await i.subtle.sign(`HMAC`,a,G(j(e)));return new Uint8Array(o)};function Pt(e){if(!Number.isSafeInteger(e)||e<0||e>65536)throw RangeError("`length` 必须是 0 到 65,536 之间的安全整数。");let t=new Uint8Array(e),n=N.crypto;if(typeof n?.getRandomValues==`function`)return n.getRandomValues(t);for(let e=0;e<t.length;e+=1)t[e]=Math.floor(Math.random()*256);return t}function Ft(e,t){let n=Math.max(e.length,t.length),r=e.length===t.length?0:1;for(let i=0;i<n;i+=1)r|=(e[i]??0)^(t[i]??0);return r===0}function It(e){return(0,dt.default)(e).toString(ut.default)}function Lt(e){return(0,_t.default)(e).toString(ut.default).toUpperCase()}async function Rt(e){let t=await W().subtle.digest(`SHA-256`,G(j(e)));return new Uint8Array(t)}async function zt(e){return Mt(await Rt(e))}async function Bt(e){let t=await W().subtle.digest(`SHA-384`,G(j(e)));return new Uint8Array(t)}async function Vt(e){return Mt(await Bt(e))}async function Ht(e){let t=await W().subtle.digest(`SHA-512`,G(j(e)));return new Uint8Array(t)}async function Ut(e){return Mt(await Ht(e))}async function Wt(e,t){return jt(await Nt(e,t,`SHA-256`))}async function Gt(e,t){return jt(await Nt(e,t,`SHA-384`))}async function Kt(e,t){return jt(await Nt(e,t,`SHA-512`))}async function qt(e,t,n=vt,r=32){let i=kt(e);if(t.length<8)throw RangeError(`PBKDF2 盐值必须至少包含 8 字节,建议不少于 16 字节。`);if(!Number.isSafeInteger(r)||r<1||r>1024)throw RangeError("`outputLength` 必须是 1 到 1,024 之间的安全整数。");let a=W(),o=await a.subtle.importKey(`raw`,G(i),`PBKDF2`,!1,[`deriveBits`]),s=await a.subtle.deriveBits({hash:`SHA-256`,iterations:At(n),name:`PBKDF2`,salt:G(t)},o,r*8);return new Uint8Array(s)}async function Jt(e,t=vt){let n=Pt(16),r=await qt(e,n,t);return[wt,String(t),z(n),z(r)].join(`:`)}async function Yt(e,t){try{let n=t.split(`:`);if(n.length!==4||n[0]!==wt)return!1;let r=At(Number(n[1])),i=B(n[2]??``),a=B(n[3]??``);return i.length!==16||a.length!==32?!1:Ft(await qt(e,i,r,a.length),a)}catch{return!1}}async function Xt(e,t=new Uint8Array,n=new Uint8Array,r=32){if(!Number.isSafeInteger(r)||r<1||r>8160)throw RangeError("`outputLength` 必须是 1 到 8,160 之间的安全整数。");let i=W(),a=await i.subtle.importKey(`raw`,G(e),`HKDF`,!1,[`deriveBits`]),o=await i.subtle.deriveBits({hash:`SHA-256`,info:G(n),name:`HKDF`,salt:G(t)},a,r*8);return new Uint8Array(o)}function Zt(e,t,n,r=`CBC`,i=`PKCS7`){if(e.trim().length===0||t.trim().length===0||n.trim().length===0)return null;Tt(r);let a=ht.default;switch(i){case`None`:a=mt.default;break;case`PKCS7`:break;case`Zeros`:a=gt.default;break;case`ANSIX923`:a=lt.default.pad.AnsiX923;break;case`ISO10126`:a=pt.default;break;default:throw RangeError("不支持当前 `paddingMode`。")}if(i===`None`&&j(e).length%16!=0)throw RangeError("当 `paddingMode` 为 `None` 时,AES 明文长度必须是 16 字节的整数倍。");let o=U.default.parse(t.padEnd(32,`f`).slice(0,32)),s=U.default.parse(n.padEnd(16,`f`).slice(0,16));return ct.default.encrypt(e,o,r===`CBC`?{iv:s,padding:a}:{iv:s,mode:ft.default,padding:a}).toString()}function Qt(e,t,n,r=`CBC`,i=`PKCS7`){if(e.trim().length===0||t.trim().length===0||n.trim().length===0)return null;Tt(r);let a=ht.default;switch(i){case`None`:a=mt.default;break;case`PKCS7`:break;case`Zeros`:a=mt.default;break;case`ANSIX923`:a=lt.default.pad.AnsiX923;break;case`ISO10126`:a=pt.default;break;default:throw RangeError("不支持当前 `paddingMode`。")}let o=R(e);if(o.length===0||o.length%16!=0)throw RangeError(`AES 密文必须至少包含一个完整的 16 字节块。`);let s=U.default.parse(t.padEnd(32,`f`).slice(0,32)),c=U.default.parse(n.padEnd(16,`f`).slice(0,16));return M(ct.default.decrypt(e,s,r===`CBC`?{iv:c,padding:a}:{iv:c,mode:ft.default,padding:a}).toString(U.default))}async function $t(e,t){if(t.trim().length===0)throw TypeError(`加密密钥不能为空。`);let n=W(),r=await Rt(t),i=await n.subtle.importKey(`raw`,G(r),{name:`AES-GCM`},!1,[`encrypt`]),a=Pt(12),o=new Uint8Array(await n.subtle.encrypt({iv:G(a),name:`AES-GCM`,tagLength:128},i,G(j(e)))),s=o.length-16,c=new Uint8Array(1+a.length+16+s);return c[0]=1,c.set(a,1),c.set(o.subarray(s),1+a.length),c.set(o.subarray(0,s),1+a.length+16),L(c)}async function en(e,t){if(t.trim().length===0)throw TypeError(`加密密钥不能为空。`);let n=R(e);if(n.length<29||n[0]!==1)throw TypeError(`不支持该 AES-GCM 载荷格式或版本。`);let r=n.subarray(1,13),i=n.subarray(13,29),a=n.subarray(29),o=new Uint8Array(a.length+i.length);o.set(a),o.set(i,a.length);let s=W(),c=await Rt(t),l=await s.subtle.importKey(`raw`,G(c),{name:`AES-GCM`},!1,[`decrypt`]),u=await s.subtle.decrypt({iv:G(r),name:`AES-GCM`,tagLength:128},l,G(o));return M(ee().decode(u))}async function tn(e,t,n=vt){let r=kt(t),i=j(e);if(i.length>St)throw RangeError(`UTF-8 明文不能超过 ${St} 字节。`);let a=At(n),o=W(),s=Pt(16),c=Pt(12),l=await o.subtle.importKey(`raw`,G(r),`PBKDF2`,!1,[`deriveKey`]),u=await o.subtle.deriveKey({hash:`SHA-256`,iterations:a,name:`PBKDF2`,salt:G(s)},l,{length:256,name:`AES-GCM`},!1,[`encrypt`]),d=await o.subtle.encrypt({additionalData:G(j(Ct)),iv:G(c),name:`AES-GCM`,tagLength:128},u,i);return[Ct,String(a),z(s),z(c),z(new Uint8Array(d))].join(`:`)}async function nn(e,t){let n=kt(t);if(e.length>16777216)throw RangeError(`加密载荷超出支持的大小。`);let r=e.split(`:`);if(r.length!==5||r[0]!==Ct)throw TypeError(`不支持该加密载荷格式。`);let i,a,o,s;try{if(i=At(Number(r[1])),a=B(r[2]??``),o=B(r[3]??``),s=B(r[4]??``),a.length!==16||o.length!==12||s.length<16)throw TypeError(`加密载荷的字段长度无效。`)}catch(e){throw TypeError(`加密载荷包含无效字段。`,{cause:e})}let c=W(),l=ee();try{let e=await c.subtle.importKey(`raw`,G(n),`PBKDF2`,!1,[`deriveKey`]),t=await c.subtle.deriveKey({hash:`SHA-256`,iterations:i,name:`PBKDF2`,salt:G(a)},e,{length:256,name:`AES-GCM`},!1,[`decrypt`]),r=await c.subtle.decrypt({additionalData:G(j(Ct)),iv:G(o),name:`AES-GCM`,tagLength:128},t,G(s));return M(l.decode(r))}catch(e){throw Error(`无法认证或解密载荷。`,{cause:e})}}async function rn(e=2048){if(!Number.isSafeInteger(e)||e<2048||e%256!=0)throw RangeError("`modulusLength` 必须是大于或等于 2048 且能被 256 整除的安全整数。");let t=W(),n=Ot(await t.subtle.generateKey({hash:`SHA-256`,modulusLength:e,name:`RSA-OAEP`,publicExponent:Uint8Array.of(1,0,1)},!0,[`decrypt`,`encrypt`]));return Dt(n)}async function an(e,t){let n=W(),r=await n.subtle.importKey(`spki`,q(t,K.public),{hash:`SHA-256`,name:`RSA-OAEP`},!1,[`encrypt`]),i=await n.subtle.encrypt({name:`RSA-OAEP`},r,G(j(e)));return L(new Uint8Array(i))}async function on(e,t){let n=W(),r=await n.subtle.importKey(`pkcs8`,q(t,K.private),{hash:`SHA-256`,name:`RSA-OAEP`},!1,[`decrypt`]),i=await n.subtle.decrypt({name:`RSA-OAEP`},r,G(R(e)));return M(ee().decode(i))}async function sn(e,t){let n=W(),r=await n.subtle.importKey(`pkcs8`,q(t,K.private),{hash:`SHA-256`,name:`RSA-PSS`},!1,[`sign`]),i=await n.subtle.sign({name:`RSA-PSS`,saltLength:32},r,G(j(e)));return L(new Uint8Array(i))}async function cn(e,t,n){let r=W(),i=await r.subtle.importKey(`spki`,q(n,K.public),{hash:`SHA-256`,name:`RSA-PSS`},!1,[`verify`]);return r.subtle.verify({name:`RSA-PSS`,saltLength:32},i,G(R(t)),G(j(e)))}async function ln(e=`P-256`){let t=W(),n=Ot(await t.subtle.generateKey({name:`ECDSA`,namedCurve:e},!0,[`sign`,`verify`]));return Dt(n)}async function un(e,t,n=`P-256`){let r=W(),i=await r.subtle.importKey(`pkcs8`,q(t,K.private),{name:`ECDSA`,namedCurve:n},!1,[`sign`]),a=n===`P-256`?`SHA-256`:n===`P-384`?`SHA-384`:`SHA-512`,o=await r.subtle.sign({hash:a,name:`ECDSA`},i,G(j(e)));return L(new Uint8Array(o))}async function dn(e,t,n,r=`P-256`){let i=W(),a=await i.subtle.importKey(`spki`,q(n,K.public),{name:`ECDSA`,namedCurve:r},!1,[`verify`]),o=r===`P-256`?`SHA-256`:r===`P-384`?`SHA-384`:`SHA-512`;return i.subtle.verify({hash:o,name:`ECDSA`},a,G(R(t)),G(j(e)))}async function fn(e=`P-256`){let t=W(),n=Ot(await t.subtle.generateKey({name:`ECDH`,namedCurve:e},!0,[`deriveBits`]));return Dt(n)}async function pn(e,t,n=`P-256`){let r=W(),[i,a]=await Promise.all([r.subtle.importKey(`pkcs8`,q(e,K.private),{name:`ECDH`,namedCurve:n},!1,[`deriveBits`]),r.subtle.importKey(`spki`,q(t,K.public),{name:`ECDH`,namedCurve:n},!1,[])]),o=n===`P-256`?256:n===`P-384`?384:528,s=await r.subtle.deriveBits({name:`ECDH`,public:a},i,o);return new Uint8Array(s)}async function mn(e,t,n=`P-256`){let r=await pn(e,t,n),i=await W().subtle.digest(`SHA-256`,G(r));return new Uint8Array(i)}let hn=e=>{if(!Number.isSafeInteger(e))throw RangeError("`amount` 必须是安全整数。")};function J(e){let t=e instanceof Date?new Date(e.getTime()):new Date(e);if(!Number.isFinite(t.getTime()))throw TypeError(`该值不是有效日期。`);return t}function gn(e){return e instanceof Date||typeof e==`number`||typeof e==`string`?Number.isFinite(new Date(e).getTime()):!1}function _n(e){let t=J(e);return t.setHours(0,0,0,0),J(t)}function vn(e){let t=J(e);return t.setHours(23,59,59,999),J(t)}function yn(e,t){hn(t);let n=J(e);return n.setDate(n.getDate()+t),J(n)}function bn(e,t){hn(t);let n=J(e),r=n.getDate();n.setDate(1),n.setMonth(n.getMonth()+t);let i=new Date(n.getTime());i.setMonth(i.getMonth()+1,0);let a=i.getDate();return n.setDate(Math.min(r,a)),J(n)}function xn(e,t){return hn(t),bn(e,t*12)}function Sn(e,t){let n=J(e),r=J(t);return n.getFullYear()===r.getFullYear()&&n.getMonth()===r.getMonth()&&n.getDate()===r.getDate()}function Cn(e,t=Date.now()){return J(e).getTime()>J(t).getTime()}function wn(e=Date.now()){return[_n(e),vn(e)]}function Tn(e,t,n){let r=J(e).getTime(),i=J(t).getTime(),a=J(n).getTime();if(i>a)throw RangeError("`start` 不能晚于 `end`。");return r>=i&&r<=a}function En(e,t={}){let n=(J(e).getTime()-J(t.now??Date.now()).getTime())/1e3,r=Math.abs(n),i,a;return r<60?(i=1,a=`second`):r<3600?(i=60,a=`minute`):r<86400?(i=3600,a=`hour`):r<604800?(i=86400,a=`day`):r<2629800?(i=604800,a=`week`):r<31557600?(i=2629800,a=`month`):(i=31557600,a=`year`),new Intl.RelativeTimeFormat(t.locale??`zh-CN`,{numeric:t.numeric??`auto`,style:t.style??`long`}).format(Math.round(n/i),a)}let Dn=(e,t,n)=>{switch(n){case`day`:e.setDate(e.getDate()+t);break;case`month`:e.setMonth(e.getMonth()+t);break;case`year`:e.setFullYear(e.getFullYear()+t)}},Y=(e,t,n)=>({text:e,value:()=>{let e=new Date;return Dn(e,t,n),e.setHours(0,0,0,0),e}}),X=(e,t,n,r)=>({text:e,value:()=>{let e=new Date,i=new Date;return Dn(r?i:e,r?t:-t,n),e.setHours(0,0,0,0),i.setHours(23,59,59,999),[e,i]}});function On(e){if(e==null)return``;let t;if(t=typeof e==`string`?new Date(e).getTime():typeof e==`number`?e.toString().length<=10?e*1e3:e:e.getTime(),!Number.isFinite(t))return``;let n=Date.now(),r=n-t,i=Math.abs(r)/6e4,a=Math.abs(r)/36e5,o=Math.abs(r)/864e5,s=new Date(n),c=new Date(t),l=(s.getFullYear()-c.getFullYear())*12+s.getMonth()-c.getMonth(),u=r<0?`后`:`前`;return Math.abs(l)>=12?`${Math.floor(Math.abs(l)/12)}年${u}`:Math.abs(l)>=6?`半年${u}`:Math.abs(l)>=1?`${Math.abs(l)}月${u}`:o>=15?`半月${u}`:o>=7?`${Math.floor(o/7)}周${u}`:o>=1?`${Math.floor(o)}天${u}`:a>=1?`${Math.floor(a)}小时${u}`:i>=1?`${Math.floor(i)}分钟${u}`:`刚刚`}function kn(e=!1){let t=new Date,n=new Date;return Dn(e?n:t,e?1:-1,`month`),t.setHours(0,0,0,0),n.setHours(23,59,59,999),[t,n]}function An(e){return e.getTime()>Date.now()}function jn(){let e=new Date().getHours();return e<5?`夜深了,注意身体哦!`:e<9?`早上好!欢迎回来!`:e<12?`上午好!欢迎回来!`:e<14?`中午好!欢迎回来!`:e<18?`下午好!欢迎回来!`:e<24?`晚上好!欢迎回来!`:`您好!欢迎回来!`}function Mn(e=!1){return e?[X(`后1天`,1,`day`,!0),X(`后3天`,3,`day`,!0),X(`后1周`,7,`day`,!0),X(`后1月`,1,`month`,!0),X(`后3月`,3,`month`,!0),X(`后6月`,6,`month`,!0),X(`后1年`,1,`year`,!0)]:[X(`近1天`,1,`day`,!1),X(`近3天`,3,`day`,!1),X(`近1周`,7,`day`,!1),X(`近1月`,1,`month`,!1),X(`近3月`,3,`month`,!1),X(`近6月`,6,`month`,!1),X(`近1年`,1,`year`,!1)]}function Nn(e=!1){return e?[Y(`今天`,0,`day`),Y(`明天`,1,`day`),Y(`一周后`,7,`day`),Y(`一月后`,1,`month`),Y(`一年后`,1,`year`)]:[Y(`今天`,0,`day`),Y(`昨天`,-1,`day`),Y(`一周前`,-7,`day`),Y(`一月前`,-1,`month`),Y(`一年前`,-1,`year`)]}function Pn(){return _n(new Date)}let Fn=e=>Array.isArray(e),In=e=>{if(e.length===0||!Number.isFinite(Number(e)))return!1;let t=e.startsWith(`+`)||e.startsWith(`-`)?e.slice(1):e;return!/^0[box]/iu.test(t)},Ln=e=>e.startsWith(`--`)?e:(e.startsWith(`ms`)?`-${e}`:e).replace(/([A-Z])/gu,`-$1`).toLowerCase();function Rn(e,t=`px`){if(e==null||e===``)return``;if(t.length===0)throw RangeError("`unit` 不能为空。");if(typeof e==`number`){if(!Number.isFinite(e))throw RangeError("`value` 必须是有限数。");return e===0?`0`:`${e}${t}`}let n=e.trim();return In(n)?Number(n)===0?`0`:`${n}${t}`:e}function zn(e){if(e==null||e===``)return``;if(Fn(e))return e.map(e=>zn(e)).filter(e=>e.length>0).join(` `);if(typeof e==`string`){let t=e.trim();return t.length===0?``:t.endsWith(`;`)?t:`${t};`}return Object.entries(e).filter(([,e])=>e!=null&&e!==``).map(([e,t])=>{if(typeof t==`number`&&!Number.isFinite(t))throw RangeError(`样式属性“${e}”必须是有限数。`);return`${Ln(e)}:${String(t)};`}).join(` `)}let Bn=()=>{let e=N.navigator?.userAgent;return typeof e==`string`?e:``},Vn=()=>{let e=N.navigator?.maxTouchPoints;return typeof e==`number`?e:0};function Hn(){return N.window?.document!==void 0}function Un(){return!Hn()&&typeof N.importScripts==`function`}function Wn(){let e=N.process;if(typeof e!=`object`&&typeof e!=`function`||e===null)return!1;let t=e.versions;return typeof t!=`object`&&typeof t!=`function`||t===null?!1:typeof t.node==`string`}function Gn(){return N.uni!==void 0}function Kn(){let e=N.crypto,t=e?.subtle;return typeof e?.getRandomValues==`function`&&typeof t?.decrypt==`function`&&typeof t.deriveBits==`function`&&typeof t.deriveKey==`function`&&typeof t.digest==`function`&&typeof t.encrypt==`function`&&typeof t.exportKey==`function`&&typeof t.generateKey==`function`&&typeof t.importKey==`function`&&typeof t.sign==`function`&&typeof t.verify==`function`}function qn(){return Hn()?`browser`:Un()?`worker`:Wn()?`node`:`unknown`}function Jn(e=Bn()){return/Mobile|iPhone|Android.*Mobile|Windows Phone/iu.test(e)}function Yn(e=Bn(),t=Vn()){return/iPad|Android(?!.*Mobile)|Tablet/iu.test(e)||/Macintosh/iu.test(e)&&t>1}let Xn=()=>{let e=N.uni;if(e===void 0)return;if(typeof e!=`object`&&typeof e!=`function`||e===null)throw TypeError(`全局 uni 对象未提供同步 Storage API。`);let t=e;if(typeof t.getStorageSync!=`function`||typeof t.getStorageInfoSync!=`function`||typeof t.removeStorageSync!=`function`||typeof t.setStorageSync!=`function`)throw TypeError(`全局 uni 对象未提供同步 Storage API。`);return t},Zn={decode:e=>JSON.parse(e),encode:e=>{let t=JSON.stringify(e);if(typeof t!=`string`)throw TypeError(`存储值无法序列化为 JSON。`);return t}},Qn={decode:e=>JSON.parse(Ne(e)),encode:e=>{let t=JSON.stringify(e);if(typeof t!=`string`)throw TypeError(`存储值无法序列化为 JSON。`);return Me(t)}},Z,$n=e=>typeof e==`object`&&!!e&&!Array.isArray(e),er=e=>{if(typeof e!=`string`||e.length===0)throw TypeError(`Storage 键必须是非空字符串。`)},tr=e=>{let t=e===`local`?N.localStorage:N.sessionStorage;if(t===void 0)throw Error(`当前运行环境不支持 ${e}Storage。`);return{getItem:e=>t.getItem(e),keys:()=>{let e=[];for(let n=0;n<t.length;n+=1){let r=t.key(n);r!==null&&e.push(r)}return e},removeItem:e=>{t.removeItem(e)},setItem:(e,n)=>{t.setItem(e,n)}}},nr=e=>({getItem:t=>{let n=e.getStorageSync(t);return n===``?e.getStorageInfoSync().keys.includes(t)?n:void 0:n},keys:()=>[...e.getStorageInfoSync().keys],removeItem:t=>{e.removeStorageSync(t)},setItem:(t,n)=>{e.setStorageSync(t,n)}}),rr=(e,t)=>{if(typeof e!=`string`)throw TypeError(`Storage 条目“${t}”不是字符串。`);try{let t=JSON.parse(e);if(!$n(t)||t.version!==3||typeof t.data!=`string`||!(t.expiresAt===null||typeof t.expiresAt==`number`&&Number.isFinite(t.expiresAt)))throw TypeError(`不支持该存储包络。`);return{data:t.data,expiresAt:t.expiresAt,version:3}}catch(e){throw TypeError(`Storage 条目“${t}”已损坏或不受支持。`,{cause:e})}},ir=(e,t,n,r)=>{let i=e=>`${t}${e}`,a=e=>{if(e===void 0)return n;if(typeof e!=`boolean`)throw TypeError("Storage 单次 `crypto` 选项必须是布尔值。");return e?Qn:Zn},o=e=>{let n=e.keys();if(!Array.isArray(n)||!n.every(e=>typeof e==`string`))throw TypeError(`Storage 后端返回的键必须是字符串。`);return[...new Set(n.filter(e=>e.startsWith(t)).map(e=>e.slice(t.length)))].sort()},s=(e,t)=>{er(t);let n=i(t),a=e.getItem(n);if(a==null)return;let o=rr(a,n);if(o.expiresAt===null)return o;let s=r();if(!Number.isFinite(s))throw RangeError(`Storage 时钟必须返回有限时间戳。`);if(s<o.expiresAt)return o;e.removeItem(n)};return{prefix:t,clear(){let t=e();for(let e of o(t))t.removeItem(i(e))},get(t,n={}){let r=s(e(),t);if(r!==void 0)try{return a(n.crypto).decode(r.data)}catch(e){throw TypeError(`无法解码 Storage 条目“${i(t)}”。`,{cause:e})}},has:t=>s(e(),t)!==void 0,keys:()=>o(e()),pruneExpired(){let t=e(),n=0;for(let e of o(t))t.getItem(i(e))!=null&&s(t,e)===void 0&&(n+=1);return n},remove(t){er(t),e().removeItem(i(t))},removeByPrefix(t){er(t);let n=e();for(let e of o(n))e.startsWith(t)&&n.removeItem(i(e))},set(t,n,o={}){if(er(t),n===void 0)throw TypeError("不能存储顶层 `undefined`,请改为移除对应的键。");let s=null;if(o.ttlMs!==void 0){if(!Number.isFinite(o.ttlMs)||o.ttlMs<=0)throw RangeError("`ttlMs` 必须是大于 0 的有限数。");let e=r();if(!Number.isFinite(e)||!Number.isFinite(e+o.ttlMs))throw RangeError(`Storage 过期时间超出支持的时间戳范围。`);s=e+o.ttlMs}let c;try{if(c=a(o.crypto).encode(n),typeof c!=`string`)throw TypeError(`Storage Codec 必须返回字符串。`)}catch(e){throw TypeError(`无法编码存储值。`,{cause:e})}e().setItem(i(t),JSON.stringify({data:c,expiresAt:s,version:3}))}}},ar=()=>{if(Z===void 0&&lr(),Z===void 0)throw Error(`无法初始化 Storage 配置。`);return Z},or=(e,t)=>{let n=()=>{let n=e(ar());if(n===void 0)throw Error(`uni-app 中不支持 ${t}。`);return n};return{get prefix(){return n().prefix},clear:()=>{n().clear()},get:(e,t)=>n().get(e,t),has:e=>n().has(e),keys:()=>n().keys(),pruneExpired:()=>n().pruneExpired(),remove:e=>{n().remove(e)},removeByPrefix:e=>{n().removeByPrefix(e)},set:(e,t,r)=>{n().set(e,t,r)}}},sr=or(e=>e.local,`Local`),cr=or(e=>e.session,`Session`);function lr(e={}){let t=e.prefix??`fast__`;if(typeof t!=`string`||t.length===0)throw TypeError(`Storage 前缀必须是非空字符串。`);if(e.codec!==void 0&&e.crypto===!0)throw TypeError(`Storage 的 Codec 和加密选项不能同时使用。`);let n=e.codec??(e.crypto===!0?Qn:Zn),r=e.now??Date.now;if(Z!==void 0){if(Z.prefix===t&&Z.codec===n&&Z.now===r)return;throw Error(`Storage 已使用其他选项完成配置。`)}let i=Xn(),a={codec:n,local:ir(i===void 0?()=>tr(`local`):()=>nr(i),t,n,r),now:r,prefix:t};i===void 0&&(a.session=ir(()=>tr(`session`),t,n,r)),Z=a}function ur(){return Z!==void 0}let dr=`en-US`,fr=1e6,pr=4294967296,mr=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/iu,hr=e=>{let t=N.crypto;if(typeof t?.getRandomValues==`function`){t.getRandomValues(e);return}let n=e.BYTES_PER_ELEMENT===Uint8Array.BYTES_PER_ELEMENT?256:pr;for(let t=0;t<e.length;t+=1)e[t]=Math.floor(Math.random()*n)},gr=e=>{e[6]=(e[6]??0)&15|64,e[8]=(e[8]??0)&63|128;let t=Array.from(e,e=>e.toString(16).padStart(2,`0`)).join(``);return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`},_r=(e,t)=>{let n=N.Intl?.Segmenter;if(typeof n!=`function`)throw Error(`当前运行环境不支持 Intl.Segmenter。`);let r=new n(t??dr,{granularity:`grapheme`});return Array.from(r.segment(e),({segment:e})=>e)};function vr(e,t=10){if(!Number.isSafeInteger(t)||t<0)throw RangeError("`maxDepth` 必须是非负安全整数。");let n=e;for(let e=0;e<t;e+=1){let e=decodeURIComponent(n);if(e===n)break;n=e}return n}function yr(e){let t=e.indexOf(`#`),n=t<0?e:e.slice(0,t),r=/^[a-z][a-z\d+.-]*:\/\//iu.test(n),i=n.indexOf(`?`);if(r&&i<0)return{};let a=r?n.slice(i+1):n.replace(/^\?/u,``),o={};for(let[e,t]of new URLSearchParams(a)){let n=Object.hasOwn(o,e)?o[e]:void 0;n===void 0?Object.defineProperty(o,e,{configurable:!0,enumerable:!0,value:t,writable:!0}):Array.isArray(n)?n.push(t):Object.defineProperty(o,e,{configurable:!0,enumerable:!0,value:[n,t],writable:!0})}return o}function br(e){if(e.trim().length===0)return!1;try{return JSON.parse(e),!0}catch{return!1}}function xr(e){return e.trim().replace(/(\p{Ll}|\p{N})(\p{Lu})/gu,`$1 $2`).replace(/(\p{Lu})(\p{Lu}\p{Ll})/gu,`$1 $2`).split(/[\s_-]+/u).filter(e=>e.length>0)}function Sr(e,t){let n=Array.from(e),r=n.shift();return r===void 0?``:r.toLocaleUpperCase(t??dr)+n.join(``)}function Cr(e,t){let n=Array.from(e),r=n.shift();return r===void 0?``:r.toLocaleLowerCase(t??dr)+n.join(``)}function wr(e,t){return xr(e).map((e,n)=>{let r=e.toLocaleLowerCase(t??dr);return n===0?r:Sr(r,t)}).join(``)}function Tr(e,t){return Sr(wr(e,t),t)}function Er(e,t){return xr(e).map(e=>e.toLocaleLowerCase(t??dr)).join(`-`)}function Dr(e,t,n=`…`,r){if(!Number.isSafeInteger(t)||t<0)throw RangeError("`maxLength` 必须是非负安全整数。");let i=_r(e,r);return i.length>t?i.slice(0,t).join(``)+n:e}async function Or(e){let t=N.uni;if(t!==void 0){if(typeof t!=`object`&&typeof t!=`function`||t===null)throw TypeError("全局 uni 对象未提供 `setClipboardData`。");let n=t,r=n.setClipboardData?.bind(n);if(r===void 0)throw TypeError("全局 uni 对象未提供 `setClipboardData`。");await new Promise((t,n)=>{r({data:e,fail:e=>{n(e instanceof Error?e:Error(`文本复制到剪贴板失败。`,{cause:e}))},success:t})});return}let n=N.navigator?.clipboard;if(N.isSecureContext===!0&&typeof n?.writeText==`function`){await n.writeText(e);return}let r=N.document;if(typeof r?.createElement!=`function`||r.body==null||typeof r.execCommand!=`function`)throw Error(`当前运行环境不支持访问剪贴板。`);let i=r.createElement(`textarea`);i.value=e,i.style.left=`-999999px`,i.style.opacity=`0`,i.style.position=`fixed`,i.style.top=`-999999px`,r.body.appendChild(i);let a;try{i.focus(),i.select(),a=r.execCommand(`copy`)}finally{i.remove()}if(!a)throw Error(`文本复制到剪贴板失败。`)}function kr(e,t=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789`){if(!Number.isSafeInteger(e)||e<0||e>fr)throw RangeError(`\`length\` 必须是 0 到 ${fr} 之间的安全整数。`);let n=Array.from(t);if(n.length===0)throw RangeError("`alphabet` 不能为空。");if(new Set(n).size!==n.length)throw RangeError("`alphabet` 不能包含重复字符。");if(n.length>4294967296)throw RangeError("`alphabet` 不能包含超过 2^32 个字符。");if(e===0)return``;let r=Math.floor(pr/n.length)*n.length,i=[];for(;i.length<e;){let t=e-i.length,a=new Uint32Array(Math.min(t,16384));hr(a);for(let t of a){if(t>=r)continue;let a=n[t%n.length];if(a!==void 0&&(i.push(a),i.length===e))break}}return i.join(``)}function Ar(){let e=N.crypto;if(typeof e?.randomUUID==`function`)return e.randomUUID();let t=new Uint8Array(16);return hr(t),gr(t)}function jr(e){return mr.test(e)}function Mr(e){return e.replace(/[&<>"']/gu,e=>{switch(e){case`&`:return`&amp;`;case`<`:return`&lt;`;case`>`:return`&gt;`;case`"`:return`&quot;`;default:return`&#39;`}})}function Nr(e){return e.trim().replace(/\s+/gu,` `)}let Pr=`identity:installation-id`,Fr=e=>{if(!jr(e))throw TypeError(`安装标识值必须是符合 RFC 4122 的 UUID v4。`)},Q,Ir=()=>(Q??=Pr,Q);function Lr(e={}){let t=e.cacheKey??Pr;if(typeof t!=`string`||t.length===0||t.trim()!==t)throw TypeError("安装标识的 `cacheKey` 必须是无外围空白的非空字符串。");if(Q===void 0){Q=t;return}if(Q!==t)throw Error("安装标识已使用其他 `cacheKey` 完成配置。")}let $={get cacheKey(){return Ir()},deviceId:``,clear(){sr.remove($.cacheKey),$.deviceId=``},getOrCreate(e){let t=e??($.deviceId.length>0?$.deviceId:$.read())??Ar();return Fr(t),sr.set($.cacheKey,t),$.deviceId=t,t},read(){let e=sr.get($.cacheKey);if(e!==void 0){if(typeof e!=`string`)throw TypeError(`存储的安装标识已损坏。`);return Fr(e),e}}};function Rr(e){return $.getOrCreate(e)}let zr={debug:10,log:20,warn:30,error:40},Br=e=>typeof e==`string`&&Object.hasOwn(zr,e),Vr=()=>N.uni!==void 0&&N.plus!==void 0,Hr=e=>{if(typeof e==`string`)return e;if(typeof e==`bigint`)return`${e.toString()}n`;if(e instanceof Error)return e.stack??`${e.name}: ${e.message}`;let t=new WeakSet;try{let n=JSON.stringify(e,(e,n)=>typeof n==`bigint`?`${n.toString()}n`:typeof n!=`object`||!n?n:t.has(n)?`[Circular]`:(t.add(n),n),2);return typeof n==`string`?n:String(e)}catch{return String(e)}},Ur={debug:(...e)=>{typeof console.debug==`function`?console.debug(...e):console.log(...e)},log:(...e)=>{console.log(...e)},warn:(...e)=>{console.warn(...e)},error:(...e)=>{console.error(...e)}};function Wr(e={}){let t=e.level??`debug`,n=e.prefix??`Fast`,r=e.sink??Ur;if(!Br(t))throw RangeError(`未知的日志级别:${String(t)}。`);if(typeof n!=`string`||n.length===0)throw RangeError(`日志前缀必须是非空字符串。`);let i=t,a=n,o=e.uniAppPlusSplit??!1,s=(e,t,n)=>{if(typeof t!=`string`)throw TypeError(`日志作用域必须是字符串。`);if(t.length===0||t.trim()!==t)throw RangeError(`日志作用域必须是无外围空白的非空字符串。`);if(zr[e]<zr[i])return;let s=`[${a}:${t}]`,c=e;if(o&&Vr()){let[e,...t]=n;if(typeof e==`string`){r[c](`${s} ${e}`);for(let e of t)r[c](Hr(e))}else{r[c](s);for(let e of n)r[c](Hr(e))}return}r[c](s,...n)};return{debug:(e,...t)=>{s(`debug`,e,t)},log:(e,...t)=>{s(`log`,e,t)},warn:(e,...t)=>{s(`warn`,e,t)},error:(e,...t)=>{s(`error`,e,t)}}}let Gr=Wr();function Kr(e={}){Gr=Wr(e)}let qr={debug:(e,...t)=>{Gr.debug(e,...t)},log:(e,...t)=>{Gr.log(e,...t)},warn:(e,...t)=>{Gr.warn(e,...t)},error:(e,...t)=>{Gr.error(e,...t)}},Jr=e=>Array.isArray(e),Yr=(e,t,n)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0})};function Xr(e){if(typeof e!=`object`||!e)return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function Zr(e,t){return Object.hasOwn(e,t)}function Qr(e,t){let n={};for(let r of t)Object.prototype.propertyIsEnumerable.call(e,r)&&Yr(n,r,e[r]);return n}function $r(e,t){let n={...e};for(let e of t)Reflect.deleteProperty(n,e);return n}function ei(e,t){let n={};for(let r of Reflect.ownKeys(e))Object.prototype.propertyIsEnumerable.call(e,r)&&Yr(n,r,t(e[r],r,e));return n}function ti(e,t){if(Object.is(e,t))return!0;let n=Reflect.ownKeys(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t)),r=Reflect.ownKeys(t).filter(e=>Object.prototype.propertyIsEnumerable.call(t,e));return n.length===r.length&&n.every(n=>Object.hasOwn(t,n)&&Object.is(Reflect.get(e,n),Reflect.get(t,n)))}let ni=e=>{if(typeof e==`number`&&!Number.isFinite(e))throw RangeError(`查询参数中的数字必须是有限数。`);return String(e)};function ri(e,t={}){let n=Object.entries(e);t.sort&&n.sort(([e],[t])=>e<t?-1:+(e>t));let r=new URLSearchParams;for(let[e,t]of n){let n=Jr(t)?t:[t];for(let t of n)t!=null&&r.append(e,ni(t))}let i=r.toString();return t.space===`percent`&&(i=i.replace(/\+/gu,`%20`)),i&&t.prefixQuestionMark?`?${i}`:i}let ii=e=>`on${e.split(`-`).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(``)}`;function ai(e,n,r=[]){let i=new Set(r),a=n;return(0,t.computed)(()=>{let t={},n=new Set;for(let r of Object.keys(e)){if(i.has(r))continue;if(r.length===0||/\s/u.test(r))throw TypeError(`无效的 Vue 事件名称:“${r}”。`);let e=ii(r);if(n.has(e))throw TypeError(`多个 Vue 事件映射到同一处理器属性:“${e}”。`);n.add(e),Object.defineProperty(t,e,{enumerable:!0,value:(...e)=>{a(r,...e)},writable:!0})}return t})}function oi(e,t){return e(t),t}async function si(e,...t){if(e!=null)return Promise.resolve(e(...t))}let ci=e=>{if(typeof e!=`object`||!e)throw TypeError(`安装 Vue 插件需要 Vue 3 App 实例。`);let t=e;if(typeof t.component!=`function`||typeof t.directive!=`function`)throw TypeError("安装 Vue 插件需要 `component()` 和 `directive()` 注册方法。");return t},li=e=>{let t=e.name;if(typeof t!=`string`||t.length===0||/\s/u.test(t))throw TypeError(`可安装的 Vue 组件必须公开不含空白的非空名称。`);return t},ui=(e,t)=>{let n=li(t),r=e.component(n);if(r!==void 0&&r!==t)throw Error(`Vue 组件名称“${n}”已被其他组件注册。`);return{component:t,name:n,registered:r===t}};function di(e,t){let n=new Set([li(e)]);if(`install`in Object(e))throw TypeError("Vue 组件已定义 `install` 属性。");let r=Object.entries(t??{});if(t!==void 0&&Object.getOwnPropertySymbols(t).some(e=>Object.prototype.propertyIsEnumerable.call(t,e)))throw TypeError(`Vue 组件附属项必须使用字符串属性名。`);for(let[t,i]of r){let r=li(i);if(n.has(r))throw TypeError(`Vue 组件名称“${r}”被重复注册。`);if(n.add(r),t===`install`||t in Object(e))throw TypeError(`Vue 组件附属项“${t}”会覆盖主组件上的属性。`)}let i=e;for(let[e,t]of r)Object.defineProperty(i,e,{configurable:!0,enumerable:!0,value:t,writable:!0});return i.install=t=>{let n=ci(t),i=[e,...r.map(([,e])=>e)].map(e=>ui(n,e));for(let e of i)e.registered||n.component(e.name,e.component)},i}function fi(e){if(`install`in Object(e))throw TypeError("Vue 组件已定义 `install` 属性。");let t=e;return t.install=()=>void 0,t}function pi(e,t){if(t.length===0||/\s/u.test(t)||t.startsWith(`v-`))throw TypeError("可安装的 Vue 指令名称不能包含空白或 `v-` 前缀。");if(`install`in Object(e))throw TypeError("Vue 指令已定义 `install` 属性。");let n=e;return n.install=n=>{let r=ci(n),i=r.directive(t);if(i!==void 0&&i!==e)throw Error(`Vue 指令名称“${t}”已被其他指令注册。`);i!==e&&r.directive(t,e)},n}function mi(e){return e}function hi(e,n,r=[]){let i=new Set(r);return(0,t.computed)(()=>{let t={};for(let r of Reflect.ownKeys(n))!i.has(r)&&Object.hasOwn(e,r)&&Object.defineProperty(t,r,{configurable:!0,enumerable:!0,value:Reflect.get(e,r),writable:!0});return t})}function gi(e){let n=(0,t.getCurrentInstance)();if(n===null)throw Error("`useRender` 必须在 `setup` 函数内部调用。");n.render=e}function _i(){return Object}function vi(e){return e}return e.AESDecrypt=Qt,e.AESDecryptAuthenticated=en,e.AESDecryptWithPassword=nn,e.AESEncrypt=Zt,e.AESEncryptAuthenticated=$t,e.AESEncryptWithPassword=tn,e.DeriveECDHKeySHA256=mn,e.DeriveECDHSecret=pn,e.ECDSASign=un,e.ECDSAVerify=dn,e.FixedTimeEquals=Ft,e.GenerateECDHKeyPair=fn,e.GenerateECDSAKeyPair=ln,e.GenerateRSAKeyPair=rn,e.GenerateRandomBytes=Pt,e.HKDFSHA256=Xt,e.HMACSHA256Encrypt=Wt,e.HMACSHA384Encrypt=Gt,e.HMACSHA512Encrypt=Kt,e.HashPasswordPBKDF2SHA256=Jt,e.Local=sr,e.MD5Encrypt=It,e.PBKDF2SHA256=qt,e.RSADecryptOAEP=on,e.RSAEncryptOAEP=an,e.RSASignPSS=sn,e.RSAVerifyPSS=cn,e.SHA1Encrypt=Lt,e.SHA256Bytes=Rt,e.SHA256Encrypt=zt,e.SHA384Bytes=Bt,e.SHA384Encrypt=Vt,e.SHA512Bytes=Ht,e.SHA512Encrypt=Ut,e.Session=cr,e.VerifyPasswordPBKDF2SHA256=Yt,e.addCssUnit=Rn,e.addDays=yn,e.addMonths=bn,e.addYears=xn,e.allEqualBy=b,e.average=fe,e.base64StorageCodec=Qn,e.callOptionalFunction=si,e.camelCase=wr,e.chunk=d,e.clamp=ce,e.configureInstallationIdentity=Lr,e.configureLogger=Kr,e.configureStorage=lr,e.contrastRatio=Ge,e.copy=Or,e.createDateRangeShortcuts=Mn,e.createDateShortcuts=Nn,e.createLogger=Wr,e.createOneMonthRangeFromToday=kn,e.debounce=k,e.decodeBase64=Se,e.decodeBase64Bytes=R,e.decodeBase64Url=we,e.decodeBase64UrlBytes=B,e.decodeLatin1Base64=Ee,e.decodeSecureBase64=Ne,e.decodeURIComponentRepeatedly=vr,e.definePropType=mi,e.detectRuntime=qn,e.difference=_,e.encodeBase64=xe,e.encodeBase64Bytes=L,e.encodeBase64Url=Ce,e.encodeBase64UrlBytes=z,e.encodeLatin1Base64=Te,e.encodeSecureBase64=Me,e.endOfDay=vn,e.escapeHtml=Mr,e.formatBytes=me,e.formatChineseRelativeTime=On,e.formatHexColor=ze,e.formatRelativeTime=En,e.generateUuidV4=Ar,e.getLocalDayBounds=wn,e.getLocalTimeGreeting=jn,e.getOrCreateInstallationId=Rr,e.getStartOfToday=Pn,e.groupBy=h,e.hasDuplicatesBy=y,e.hasOwn=Zr,e.hasWebCrypto=Kn,e.inRange=le,e.installationIdentity=$,e.intersection=v,e.isBrowser=Hn,e.isDateAfterNow=An,e.isFuture=Cn,e.isMobileUserAgent=Jn,e.isNode=Wn,e.isPlainObject=Xr,e.isSameDay=Sn,e.isStorageConfigured=ur,e.isTabletUserAgent=Yn,e.isUniApp=Gn,e.isUuidV4=jr,e.isValidDate=gn,e.isValidJson=br,e.isWebWorker=Un,e.isWithinInterval=Tn,e.kebabCase=Er,e.lerp=pe,e.logger=qr,e.lowerFirst=Cr,e.makeSlots=_i,e.mapConcurrent=O,e.mapValues=ei,e.mixHexColorWithBlack=Ve,e.mixHexColorWithWhite=He,e.mixHexColors=Be,e.normalizeWhitespace=Nr,e.omit=$r,e.parseHexColor=Re,e.parseQueryString=yr,e.partition=g,e.pascalCase=Tr,e.pick=Qr,e.pickHigherContrastColor=Ke,e.randomInt=he,e.randomString=kr,e.relativeLuminance=We,e.removeNullishValues=f,e.retry=D,e.roundTo=ue,e.serializeStyle=zn,e.shallowEqual=ti,e.sleep=T,e.splitWords=xr,e.startOfDay=_n,e.sum=de,e.throttle=A,e.toDate=J,e.toQueryString=ri,e.truncateGraphemes=Dr,e.unique=p,e.uniqueBy=m,e.upperFirst=Sr,e.useEmits=ai,e.useExpose=oi,e.useProps=hi,e.useRender=gi,e.withDefineType=vi,e.withInstall=di,e.withInstallDirective=pi,e.withNoopInstall=fi,e.withTimeout=E,e})({},Vue);
3
3
  //# sourceMappingURL=index.global.min.js.map