@gx-design-vue/pro-utils 0.1.4 → 0.2.0-alpha.1

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 (171) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +73 -2
  3. package/dist/array/index.d.ts +5 -0
  4. package/dist/array/index.js +6 -0
  5. package/dist/array/slice.d.ts +11 -0
  6. package/dist/array/slice.js +29 -0
  7. package/dist/array/sort.d.ts +41 -0
  8. package/dist/array/sort.js +65 -0
  9. package/dist/array/tree.d.ts +83 -0
  10. package/dist/array/tree.js +157 -0
  11. package/dist/array/unique.d.ts +12 -0
  12. package/dist/array/unique.js +14 -0
  13. package/dist/base64/index.d.ts +26 -0
  14. package/dist/base64/index.js +106 -0
  15. package/dist/class/index.d.ts +2 -0
  16. package/dist/class/index.js +3 -0
  17. package/dist/class/prefix.d.ts +25 -0
  18. package/dist/class/prefix.js +15 -0
  19. package/dist/clone/cloneDeep.d.ts +30 -0
  20. package/dist/clone/cloneDeep.js +35 -0
  21. package/dist/clone/cloneDeepWith.d.ts +14 -0
  22. package/dist/clone/cloneDeepWith.js +150 -0
  23. package/dist/clone/getTag.d.ts +10 -0
  24. package/dist/clone/getTag.js +13 -0
  25. package/dist/clone/index.d.ts +3 -0
  26. package/dist/clone/index.js +4 -0
  27. package/dist/clone/symbols.d.ts +10 -0
  28. package/dist/clone/symbols.js +13 -0
  29. package/dist/clone/tags.d.ts +47 -0
  30. package/dist/clone/tags.js +48 -0
  31. package/dist/dom/event.d.ts +21 -0
  32. package/dist/dom/event.js +26 -0
  33. package/dist/dom/index.d.ts +5 -0
  34. package/dist/dom/index.js +6 -0
  35. package/dist/dom/measure.d.ts +19 -0
  36. package/dist/dom/measure.js +42 -0
  37. package/dist/dom/raf.d.ts +14 -0
  38. package/dist/dom/raf.js +44 -0
  39. package/dist/dom/scroll.d.ts +20 -0
  40. package/dist/dom/scroll.js +97 -0
  41. package/dist/file/config.d.ts +13 -0
  42. package/dist/file/config.js +81 -0
  43. package/dist/file/convert.d.ts +41 -0
  44. package/dist/file/convert.js +69 -0
  45. package/dist/file/index.d.ts +5 -0
  46. package/dist/file/index.js +6 -0
  47. package/dist/file/media.d.ts +35 -0
  48. package/dist/file/media.js +161 -0
  49. package/dist/file/type.d.ts +25 -0
  50. package/dist/file/type.js +58 -0
  51. package/dist/function/copy.d.ts +12 -0
  52. package/dist/function/copy.js +13 -0
  53. package/dist/function/getValue.d.ts +12 -0
  54. package/dist/function/getValue.js +19 -0
  55. package/dist/function/index.d.ts +5 -0
  56. package/dist/function/index.js +6 -0
  57. package/dist/function/object.d.ts +24 -0
  58. package/dist/function/object.js +33 -0
  59. package/dist/function/run.d.ts +11 -0
  60. package/dist/function/run.js +15 -0
  61. package/dist/index.d.ts +59 -26
  62. package/dist/index.js +61 -0
  63. package/dist/is/base64.d.ts +17 -0
  64. package/dist/is/base64.js +27 -0
  65. package/dist/is/browser.d.ts +9 -0
  66. package/dist/is/browser.js +14 -0
  67. package/dist/is/deepEqual.d.ts +13 -0
  68. package/dist/is/deepEqual.js +62 -0
  69. package/dist/is/device.d.ts +21 -0
  70. package/dist/is/device.js +37 -0
  71. package/dist/is/equal.d.ts +12 -0
  72. package/dist/is/equal.js +34 -0
  73. package/dist/is/img.d.ts +10 -0
  74. package/dist/is/img.js +13 -0
  75. package/dist/is/index.d.ts +16 -0
  76. package/dist/is/index.js +17 -0
  77. package/dist/is/nil.d.ts +17 -0
  78. package/dist/is/nil.js +22 -0
  79. package/dist/is/plainObject.d.ts +17 -0
  80. package/dist/is/plainObject.js +30 -0
  81. package/dist/is/primitive.d.ts +10 -0
  82. package/dist/is/primitive.js +13 -0
  83. package/dist/is/server.d.ts +9 -0
  84. package/dist/is/server.js +10 -0
  85. package/dist/is/type.d.ts +60 -0
  86. package/dist/is/type.js +84 -0
  87. package/dist/is/typedArray.d.ts +30 -0
  88. package/dist/is/typedArray.js +33 -0
  89. package/dist/is/unsafeProperty.d.ts +10 -0
  90. package/dist/is/unsafeProperty.js +18 -0
  91. package/dist/is/url.d.ts +10 -0
  92. package/dist/is/url.js +20 -0
  93. package/dist/is/valid.d.ts +17 -0
  94. package/dist/is/valid.js +23 -0
  95. package/dist/merge/index.d.ts +19 -5
  96. package/dist/merge/index.js +42 -0
  97. package/dist/merge/mergeWith.d.ts +12 -0
  98. package/dist/merge/mergeWith.js +31 -0
  99. package/dist/merge/useDeepMege.d.ts +46 -0
  100. package/dist/merge/useDeepMege.js +56 -0
  101. package/dist/number/chinese.d.ts +10 -0
  102. package/dist/number/chinese.js +46 -0
  103. package/dist/number/format.d.ts +27 -0
  104. package/dist/number/format.js +72 -0
  105. package/dist/number/index.d.ts +3 -0
  106. package/dist/number/index.js +4 -0
  107. package/dist/object/classNames.d.ts +10 -0
  108. package/dist/object/classNames.js +30 -0
  109. package/dist/object/index.d.ts +5 -0
  110. package/dist/object/index.js +6 -0
  111. package/dist/object/omitBoolean.d.ts +10 -0
  112. package/dist/object/omitBoolean.js +13 -0
  113. package/dist/object/omitUndefined.d.ts +12 -0
  114. package/dist/object/omitUndefined.js +18 -0
  115. package/dist/object/omitUndefinedAndEmptyArr.d.ts +10 -0
  116. package/dist/object/omitUndefinedAndEmptyArr.js +19 -0
  117. package/dist/pro-utils.esm.js +948 -0
  118. package/dist/pro-utils.js +1 -0
  119. package/dist/string/duration.d.ts +10 -0
  120. package/dist/string/duration.js +25 -0
  121. package/dist/string/empty.d.ts +14 -0
  122. package/dist/string/empty.js +26 -0
  123. package/dist/string/index.d.ts +5 -0
  124. package/dist/string/index.js +6 -0
  125. package/dist/string/nanoid.d.ts +9 -0
  126. package/dist/string/nanoid.js +32 -0
  127. package/dist/string/uuid.d.ts +34 -0
  128. package/dist/string/uuid.js +57 -0
  129. package/dist/table/column.d.ts +27 -0
  130. package/dist/table/column.js +42 -0
  131. package/dist/table/index.d.ts +3 -0
  132. package/dist/table/index.js +4 -0
  133. package/dist/table/page.d.ts +13 -0
  134. package/dist/table/page.js +23 -0
  135. package/dist/typing.d.ts +262 -0
  136. package/dist/typing.js +1 -0
  137. package/dist/vue/index.d.ts +2 -0
  138. package/dist/vue/index.js +3 -0
  139. package/dist/vue/slots.d.ts +56 -0
  140. package/dist/vue/slots.js +89 -0
  141. package/package.json +45 -64
  142. package/dist/classNames/index.d.ts +0 -2
  143. package/dist/components/FieldLabel/index.d.ts +0 -77
  144. package/dist/components/FieldLabel/index.less +0 -107
  145. package/dist/components/LabelIconTip/index.d.ts +0 -20
  146. package/dist/components/LabelIconTip/index.less +0 -38
  147. package/dist/design/ant-design-theme.less +0 -4
  148. package/dist/design/ant-design-vue.less +0 -1
  149. package/dist/design/config.less +0 -2
  150. package/dist/isBrowser/index.d.ts +0 -1
  151. package/dist/isDeepEqualReact/index.d.ts +0 -1
  152. package/dist/isServer.d.ts +0 -2
  153. package/dist/omitBoolean/index.d.ts +0 -6
  154. package/dist/omitUndefined/index.d.ts +0 -5
  155. package/dist/pro-utils.es.js +0 -1044
  156. package/dist/pro-utils.umd.js +0 -1
  157. package/dist/proUtils.less +0 -4
  158. package/dist/scroll/easings.d.ts +0 -1
  159. package/dist/scroll/getScroll.d.ts +0 -2
  160. package/dist/scroll/index.d.ts +0 -4
  161. package/dist/scroll/raf.d.ts +0 -9
  162. package/dist/scroll/scrollTo.d.ts +0 -10
  163. package/dist/scroll/throttleByAnimationFrame.d.ts +0 -5
  164. package/dist/slots/index.d.ts +0 -9
  165. package/dist/style/index.less +0 -2
  166. package/dist/style.css +0 -1
  167. package/dist/style.less +0 -3
  168. package/dist/typings/index.d.ts +0 -30
  169. package/dist/utils/config.d.ts +0 -8
  170. package/dist/utils/index.d.ts +0 -208
  171. package/dist/utils/validate.d.ts +0 -25
@@ -0,0 +1,948 @@
1
+ import { Comment, Fragment, isVNode } from "vue";
2
+ function isBase64(e = "") {
3
+ return !!(e && [
4
+ "data:image/",
5
+ "data:video/",
6
+ "data:audio/"
7
+ ].find((t) => e.includes(t)));
8
+ }
9
+ function isDataURLBase64(e) {
10
+ return typeof e == "string" && /^data:(?:image|video|audio)\/[A-Za-z]+;base64,[A-Za-z0-9+/=]+$/.test(e);
11
+ }
12
+ var isNode = typeof process < "u" && process.versions != null && process.versions.node != null;
13
+ function isBrowser() {
14
+ return process.env.NODE_ENV === "TEST" ? !0 : typeof window < "u" && window.document !== void 0 && window.matchMedia !== void 0 && !isNode;
15
+ }
16
+ function isDeepEqualReact(e, t, n, r) {
17
+ if (e === t) return !0;
18
+ if (e && t && typeof e == "object" && typeof t == "object") {
19
+ if (e.constructor !== t.constructor) return !1;
20
+ let i, a;
21
+ if (Array.isArray(e)) {
22
+ if (i = e.length, i != t.length) return !1;
23
+ for (a = i; a-- !== 0;) if (!isDeepEqualReact(e[a], t[a], n, r)) return !1;
24
+ return !0;
25
+ }
26
+ if (e instanceof Map && t instanceof Map) {
27
+ if (e.size !== t.size) return !1;
28
+ for (a of e.entries()) if (!t.has(a[0])) return !1;
29
+ for (a of e.entries()) if (!isDeepEqualReact(a[1], t.get(a[0]), n, r)) return !1;
30
+ return !0;
31
+ }
32
+ if (e instanceof Set && t instanceof Set) {
33
+ if (e.size !== t.size) return !1;
34
+ for (a of e.entries()) if (!t.has(a[0])) return !1;
35
+ return !0;
36
+ }
37
+ if (ArrayBuffer.isView(e) && ArrayBuffer.isView(t)) {
38
+ if (i = e.length, i != t.length) return !1;
39
+ for (a = i; a-- !== 0;) if (e[a] !== t[a]) return !1;
40
+ return !0;
41
+ }
42
+ if (e.constructor === RegExp) return e.source === t.source && e.flags === t.flags;
43
+ if (e.valueOf !== Object.prototype.valueOf && e.valueOf) return e.valueOf() === t.valueOf();
44
+ if (e.toString !== Object.prototype.toString && e.toString) return e.toString() === t.toString();
45
+ let o = Object.keys(e);
46
+ if (i = o.length, i !== Object.keys(t).length) return !1;
47
+ for (a = i; a-- !== 0;) if (!Object.prototype.hasOwnProperty.call(t, o[a])) return !1;
48
+ for (a = i; a-- !== 0;) {
49
+ let i = o[a];
50
+ if (!n?.includes(i) && !(i === "_owner" && e.$$typeof) && !isDeepEqualReact(e[i], t[i], n, r)) return r && console.log(i), !1;
51
+ }
52
+ return !0;
53
+ }
54
+ return e !== e && t !== t;
55
+ }
56
+ function isMobile() {
57
+ let e = navigator.userAgent || navigator.vendor;
58
+ return !!(/iPhone/.test(e) || /Android/.test(e) && /Mobile/.test(e) || /Windows Phone/.test(e) || /Mobile/.test(e) && !isTablet());
59
+ }
60
+ function isTablet() {
61
+ let e = navigator.userAgent || navigator.vendor;
62
+ return !!(/iPad/.test(e) || /Macintosh/.test(e) && "ontouchend" in document || /Android/.test(e) && !/Mobile/.test(e));
63
+ }
64
+ function isWindowsOs() {
65
+ return /windows|win32/i.test(navigator.userAgent);
66
+ }
67
+ function isEqual(e, t, n = !1) {
68
+ let r = /* @__PURE__ */ new Set();
69
+ function i(e, t, a = 1) {
70
+ if (r.has(e)) return !1;
71
+ if (e === t) return !0;
72
+ if (n && a > 1) return !1;
73
+ r.add(e);
74
+ let o = a + 1;
75
+ if (Array.isArray(e)) {
76
+ if (!Array.isArray(t) || e.length !== t.length) return !1;
77
+ for (let n = 0; n < e.length; n++) if (!i(e[n], t[n], o)) return !1;
78
+ return !0;
79
+ }
80
+ if (e && t && typeof e == "object" && typeof t == "object") {
81
+ let n = Object.keys(e);
82
+ return n.length === Object.keys(t).length ? n.every((n) => i(e[n], t[n], o)) : !1;
83
+ }
84
+ return !1;
85
+ }
86
+ return i(e, t);
87
+ }
88
+ function isImg(e) {
89
+ return /\w.(?:png|jpg|jpeg|svg|webp|gif|bmp)$/i.test(e);
90
+ }
91
+ function isNil(e) {
92
+ return e == null;
93
+ }
94
+ function isNotNil(e) {
95
+ return e != null;
96
+ }
97
+ function getSymbols(e) {
98
+ return Object.getOwnPropertySymbols(e);
99
+ }
100
+ function forInObject(e, t) {
101
+ Object.keys(e).forEach((n) => {
102
+ t(n, e[n]);
103
+ });
104
+ }
105
+ function keysOf(e) {
106
+ return Object.keys(e);
107
+ }
108
+ function is(e, t) {
109
+ return Object.prototype.toString.call(e) === `[object ${t}]`;
110
+ }
111
+ function isBoolean(e) {
112
+ return typeof e == "boolean";
113
+ }
114
+ function isNumber(e) {
115
+ return typeof e == "number";
116
+ }
117
+ function isArray(e) {
118
+ return Array.isArray === void 0 ? Object.prototype.toString.call(e) === "[object Array]" : Array.isArray(e);
119
+ }
120
+ function isObject(e) {
121
+ return e !== null && is(e, "Object");
122
+ }
123
+ function isString(e) {
124
+ return typeof e == "string";
125
+ }
126
+ function isFunction(e) {
127
+ return typeof e == "function" || Object.prototype.toString.call(e) === "[object Function]";
128
+ }
129
+ function isJSONStr(e) {
130
+ if (typeof e != "string") return !1;
131
+ try {
132
+ let t = JSON.parse(e);
133
+ return typeof t == "object" && !!t;
134
+ } catch {
135
+ return !1;
136
+ }
137
+ }
138
+ function isPlainObject(e) {
139
+ if (!isObject(e)) return !1;
140
+ let t = Object.getPrototypeOf(e);
141
+ if (t === null) return !0;
142
+ let n = Object.prototype.hasOwnProperty.call(t, "constructor") && t.constructor;
143
+ return typeof n == "function" && n instanceof n && Function.prototype.toString.call(n) === Function.prototype.toString.call(Object);
144
+ }
145
+ function isObjectWithSymbols(e) {
146
+ return isObject(e) ? getSymbols(e).length > 0 : !1;
147
+ }
148
+ function isPrimitive(e) {
149
+ return e === null || typeof e != "object" && typeof e != "function";
150
+ }
151
+ const isServer = typeof window > "u";
152
+ function isTypedArray(e) {
153
+ return ArrayBuffer.isView(e) && !(e instanceof DataView);
154
+ }
155
+ function isUnsafeProperty(e) {
156
+ return typeof e == "symbol" ? !1 : [
157
+ "__proto__",
158
+ "constructor",
159
+ "prototype"
160
+ ].includes(e);
161
+ }
162
+ function isUrl(e) {
163
+ if (!e || !e.startsWith("http")) return !1;
164
+ try {
165
+ return !!new URL(e);
166
+ } catch (e) {
167
+ return console.error("isUrl error", e), !1;
168
+ }
169
+ }
170
+ function isValid(e) {
171
+ return e != null && e !== "";
172
+ }
173
+ function convertValueBoolean(e) {
174
+ return typeof e == "boolean" ? e : !!e;
175
+ }
176
+ function arraySlice(e, t) {
177
+ return isArray(e) ? e?.filter((n, r) => {
178
+ if (isNumber(t)) return r <= t - 1;
179
+ if (isArray(t) && t.length === 2) {
180
+ let n = t, i = n[0] - 1;
181
+ return r <= (n[1] ? n[1] - 1 : e.length - 1) && r >= i;
182
+ } else if (isArray(t) && t.length === 1) {
183
+ let n = t[0] - 1;
184
+ return r <= e.length - 1 && r >= n;
185
+ }
186
+ return !0;
187
+ }) : [];
188
+ }
189
+ function compareArray(e, t, n, r = 0) {
190
+ let i = isNumber(r) && (r === 0 || r === 1) ? r : 0, a = e[n], o = t[n], s = 0;
191
+ return a < o ? s = i === 0 ? -1 : 0 : a > o && (s = i === 0 ? 0 : -1), s;
192
+ }
193
+ function compareTime(e, t, n, r = 0) {
194
+ let i = isNumber(r) && (r === 0 || r === 1) ? r : 0, a = new Date(e[n]), o = new Date(t[n]), s = 0;
195
+ return a < o ? s = i === 0 ? -1 : 0 : a > o && (s = i === 0 ? 0 : -1), s;
196
+ }
197
+ function compareArraySort(e, t, n = 0) {
198
+ return e.sort((e, r) => compareArray(e, r, t, n));
199
+ }
200
+ function compareArrayTimeSort(e, t, n = 0) {
201
+ return e.sort((e, r) => compareTime(e, r, t, n));
202
+ }
203
+ function getMaxFloor(e, t) {
204
+ if (!Array.isArray(e) || e.length === 0) return 0;
205
+ let n = t || "children";
206
+ return Math.max(...e.map((e) => {
207
+ let t = e[n];
208
+ return 1 + (t ? getMaxFloor(t, n) : 0);
209
+ }));
210
+ }
211
+ function getLevelData(e, t = "children") {
212
+ let n = [];
213
+ return e.forEach((e) => {
214
+ n.push(e), isArray(e[t]) && e[t].length > 0 && (n = n.concat(getLevelData(e[t], t)));
215
+ }), n;
216
+ }
217
+ function treeData(e, t) {
218
+ if (!e || !isArray(e) || e?.length === 0) return [];
219
+ let { id: n = "id", parentId: r = "parentId", children: i = "children", emptyChildren: a = !0 } = t || {}, o = t?.rootId ?? 0, s = structuredClone(e);
220
+ return s.map((e) => (!a && e[i] && e[i]?.length === 0 && delete e[i], e)).filter((e) => {
221
+ let t = s.filter((t) => e[n] === t[r]);
222
+ return t.length > 0 ? e[i] = t : a && (e[i] = []), o === !1 ? !0 : e[r] === o;
223
+ });
224
+ }
225
+ function filterTree(e, t) {
226
+ return e.map((e) => {
227
+ let n = { ...e };
228
+ return n.children &&= filterTree(n.children, t), t(n) || n.children && n.children.length > 0 ? n : null;
229
+ }).filter(Boolean);
230
+ }
231
+ function findValueAndAncestors(e, t, n) {
232
+ let { value: r, children: i } = n || {
233
+ value: "value",
234
+ children: "children"
235
+ }, a = [];
236
+ function o(e, n) {
237
+ if (e[r] === t) return a = [...n, e[r]], !0;
238
+ if (e[i]) {
239
+ for (let t of e[i]) if (o(t, [...n, e[r]])) return !0;
240
+ }
241
+ return !1;
242
+ }
243
+ for (let t of e) if (o(t, [])) break;
244
+ return a;
245
+ }
246
+ function findSourceByTree(e, t, n) {
247
+ let r = n?.value || "id", i = n?.children || "children";
248
+ for (let a of e) {
249
+ if (a[r] === t) return a;
250
+ let e = a[i];
251
+ if (e) {
252
+ let r = findSourceByTree(e, t, n);
253
+ if (r) return r;
254
+ }
255
+ }
256
+ }
257
+ function getArrayLast(e) {
258
+ return e && isArray(e) ? e[e.length - 1] : null;
259
+ }
260
+ function getSortIndex(e = [], t, n = "children") {
261
+ function r(e, t) {
262
+ return t.map((t, i) => {
263
+ let a = `${e}-${i + 1}`;
264
+ return t[n] && (t[n] = r(a, t[n])), t.sortIndex = a, t;
265
+ });
266
+ }
267
+ return structuredClone(e).map((e, i) => {
268
+ let a = isObject(t) && t.current || 1, o = isObject(t) && t.pageSize || 10, s = `${a ? (a - 1) * o + (i + 1) : i + 1}`;
269
+ return e[n] && (e[n] = r(`${s}`, e[n])), e.sortIndex = s, e;
270
+ });
271
+ }
272
+ function arrayUnique(e) {
273
+ let t = new Set(e);
274
+ return Array.from(t);
275
+ }
276
+ function getPrefixCls({ suffixCls: e, customizePrefixCls: t, isPor: n, className: r }) {
277
+ let i = r || (n ? "gx-pro" : "gx");
278
+ return t || (e ? `${i}-${e}` : i);
279
+ }
280
+ function getTag(e) {
281
+ return Object.prototype.toString.call(e);
282
+ }
283
+ function getSymbols$1(e) {
284
+ return Object.getOwnPropertySymbols(e);
285
+ }
286
+ function cloneDeepWith(e, t) {
287
+ return cloneDeepWithImpl(e, void 0, e, /* @__PURE__ */ new Map(), t);
288
+ }
289
+ function cloneDeepWithImpl(e, t, n, r = /* @__PURE__ */ new Map(), i = void 0) {
290
+ let a = i?.(e, t, n, r);
291
+ if (a !== void 0) return a;
292
+ if (isPrimitive(e)) return e;
293
+ if (r.has(e)) return r.get(e);
294
+ if (Array.isArray(e)) {
295
+ let t = Array.from({ length: e.length });
296
+ r.set(e, t);
297
+ for (let a = 0; a < e.length; a++) t[a] = cloneDeepWithImpl(e[a], a, n, r, i);
298
+ return Object.prototype.hasOwnProperty.call(e, "index") && (t.index = e.index), Object.prototype.hasOwnProperty.call(e, "input") && (t.input = e.input), t;
299
+ }
300
+ if (e instanceof Date) return new Date(e.getTime());
301
+ if (e instanceof RegExp) {
302
+ let t = new RegExp(e.source, e.flags);
303
+ return t.lastIndex = e.lastIndex, t;
304
+ }
305
+ if (e instanceof Map) {
306
+ let t = /* @__PURE__ */ new Map();
307
+ r.set(e, t);
308
+ for (let [a, o] of e) t.set(a, cloneDeepWithImpl(o, a, n, r, i));
309
+ return t;
310
+ }
311
+ if (e instanceof Set) {
312
+ let t = /* @__PURE__ */ new Set();
313
+ r.set(e, t);
314
+ for (let a of e) t.add(cloneDeepWithImpl(a, void 0, n, r, i));
315
+ return t;
316
+ }
317
+ if (typeof Buffer < "u" && Buffer.isBuffer(e)) return e.subarray();
318
+ if (isTypedArray(e)) {
319
+ let t = new (Object.getPrototypeOf(e)).constructor(e.length);
320
+ r.set(e, t);
321
+ for (let a = 0; a < e.length; a++) t[a] = cloneDeepWithImpl(e[a], a, n, r, i);
322
+ return t;
323
+ }
324
+ if (e instanceof ArrayBuffer || typeof SharedArrayBuffer < "u" && e instanceof SharedArrayBuffer) return e.slice(0);
325
+ if (e instanceof DataView) {
326
+ let t = new DataView(e.buffer.slice(0), e.byteOffset, e.byteLength);
327
+ return r.set(e, t), copyProperties(t, e, n, r, i), t;
328
+ }
329
+ if (typeof File < "u" && e instanceof File) {
330
+ let t = new File([e], e.name, { type: e.type });
331
+ return r.set(e, t), copyProperties(t, e, n, r, i), t;
332
+ }
333
+ if (typeof Blob < "u" && e instanceof Blob) {
334
+ let t = new Blob([e], { type: e.type });
335
+ return r.set(e, t), copyProperties(t, e, n, r, i), t;
336
+ }
337
+ if (e instanceof Error) {
338
+ let t = new e.constructor();
339
+ return r.set(e, t), t.message = e.message, t.name = e.name, t.stack = e.stack, t.cause = e.cause, copyProperties(t, e, n, r, i), t;
340
+ }
341
+ if (typeof e == "boolean") {
342
+ let t = !!e.valueOf();
343
+ return r.set(e, t), copyProperties(t, e, n, r, i), t;
344
+ }
345
+ if (typeof e == "number") {
346
+ let t = Number(e.valueOf());
347
+ return r.set(e, t), copyProperties(t, e, n, r, i), t;
348
+ }
349
+ if (typeof e == "string") {
350
+ let t = String(e.valueOf());
351
+ return r.set(e, t), copyProperties(t, e, n, r, i), t;
352
+ }
353
+ if (typeof e == "object" && isCloneableObject(e)) {
354
+ let t = Object.create(Object.getPrototypeOf(e));
355
+ return r.set(e, t), copyProperties(t, e, n, r, i), t;
356
+ }
357
+ return e;
358
+ }
359
+ function copyProperties(e, t, n = e, r, i) {
360
+ let a = [...Object.keys(t), ...getSymbols$1(t)];
361
+ for (let o = 0; o < a.length; o++) {
362
+ let s = a[o], c = Object.getOwnPropertyDescriptor(e, s);
363
+ (c == null || c.writable) && (e[s] = cloneDeepWithImpl(t[s], s, n, r, i));
364
+ }
365
+ }
366
+ function isCloneableObject(e) {
367
+ switch (getTag(e)) {
368
+ case "[object Arguments]":
369
+ case "[object Array]":
370
+ case "[object ArrayBuffer]":
371
+ case "[object DataView]":
372
+ case "[object Boolean]":
373
+ case "[object Date]":
374
+ case "[object Float32Array]":
375
+ case "[object Float64Array]":
376
+ case "[object Int8Array]":
377
+ case "[object Int16Array]":
378
+ case "[object Int32Array]":
379
+ case "[object Map]":
380
+ case "[object Number]":
381
+ case "[object Object]":
382
+ case "[object RegExp]":
383
+ case "[object Set]":
384
+ case "[object String]":
385
+ case "[object Symbol]":
386
+ case "[object Uint8Array]":
387
+ case "[object Uint8ClampedArray]":
388
+ case "[object Uint16Array]":
389
+ case "[object Uint32Array]": return !0;
390
+ default: return !1;
391
+ }
392
+ }
393
+ function cloneDeep(e) {
394
+ return cloneDeepWithImpl(e, void 0, e, /* @__PURE__ */ new Map(), void 0);
395
+ }
396
+ function on(e, t, n, r = !1) {
397
+ e && t && n && e.addEventListener(t, n, r);
398
+ }
399
+ function off(e, t, n, r = !1) {
400
+ e && t && n && e.removeEventListener(t, n, r);
401
+ }
402
+ function getTextWidth(e, t) {
403
+ let n = 0, r = isBoolean(t.removeAfter) ? t.removeAfter : !0, i = t.id || "hiddenElement", a = {
404
+ opacity: 0,
405
+ visibility: "hidden",
406
+ position: "fixed",
407
+ zIndex: -1,
408
+ top: 0,
409
+ left: 0
410
+ }, o = document.querySelector(`#${i}`);
411
+ if (!o) {
412
+ let e = document.createElement("div");
413
+ e.id = i, document.body.appendChild(e), o = document.querySelector(`#${i}`);
414
+ }
415
+ Object.assign(o.style, a);
416
+ let s = document.createElement(t.createName || "span");
417
+ return s.innerHTML = e, (t.cssObject || isObject(t.cssObject)) && Object.assign(s.style, t.cssObject), o.append(s), n = s.getBoundingClientRect()[t.type || "width"], r && o.removeChild(s), n;
418
+ }
419
+ var raf = (e) => setTimeout(e, 16), caf = (e) => clearTimeout(e);
420
+ typeof window < "u" && "requestAnimationFrame" in window && (raf = (e) => window.requestAnimationFrame(e), caf = (e) => window.cancelAnimationFrame(e));
421
+ var rafUUID = 0, rafIds = /* @__PURE__ */ new Map();
422
+ function cleanup(e) {
423
+ rafIds.delete(e);
424
+ }
425
+ function wrapperRaf(e, t = 1) {
426
+ rafUUID += 1;
427
+ let n = rafUUID;
428
+ function r(t) {
429
+ if (t === 0) cleanup(n), e();
430
+ else {
431
+ let e = raf(() => {
432
+ r(t - 1);
433
+ });
434
+ rafIds.set(n, e);
435
+ }
436
+ }
437
+ return r(t), n;
438
+ }
439
+ wrapperRaf.cancel = (e) => {
440
+ let t = rafIds.get(e);
441
+ return cleanup(t), caf(t);
442
+ };
443
+ function easeInOutCubic(e, t, n, r) {
444
+ let i = n - t;
445
+ return e /= r / 2, e < 1 ? i / 2 * e * e * e + t : i / 2 * ((e -= 2) * e * e + 2) + t;
446
+ }
447
+ function camelize(e) {
448
+ return e.replace(/[-_](.)/g, (e, t) => t.toUpperCase());
449
+ }
450
+ function getStyle(e, t) {
451
+ if (isServer || !e || !t) return "";
452
+ t = camelize(t), t === "float" && (t = "cssFloat");
453
+ try {
454
+ let n = e.style[t];
455
+ if (n) return n;
456
+ let r = document?.defaultView?.getComputedStyle(e, "");
457
+ return r ? r[t] : "";
458
+ } catch {
459
+ return e.style[t];
460
+ }
461
+ }
462
+ function isScroll(e, t) {
463
+ if (!isServer) return (t == null ? getStyle(e, "overflow") : t ? getStyle(e, "overflow-y") : getStyle(e, "overflow-x")).match(/(scroll|auto|overlay)/);
464
+ }
465
+ function getScrollContainer(e, t) {
466
+ if (isServer) return;
467
+ let n = e;
468
+ for (; n;) {
469
+ if ([
470
+ window,
471
+ document,
472
+ document.documentElement
473
+ ].includes(n)) return window;
474
+ if (isScroll(n, t)) return n;
475
+ n = n.parentNode;
476
+ }
477
+ return n;
478
+ }
479
+ function isInContainer(e, t) {
480
+ if (isServer || !e || !t) return !1;
481
+ let n = e.getBoundingClientRect(), r;
482
+ return r = [
483
+ window,
484
+ document,
485
+ document.documentElement,
486
+ null,
487
+ void 0
488
+ ].includes(t) ? {
489
+ top: 0,
490
+ right: window.innerWidth,
491
+ bottom: window.innerHeight,
492
+ left: 0
493
+ } : t.getBoundingClientRect(), n.top < r.bottom && n.bottom > r.top && n.right > r.left && n.left < r.right;
494
+ }
495
+ function isWindow(e) {
496
+ return e != null && e === e.window;
497
+ }
498
+ function getScroll(e, t) {
499
+ if (typeof window > "u") return 0;
500
+ let n = t ? "scrollTop" : "scrollLeft", r = 0;
501
+ return isWindow(e) ? r = e[t ? "pageYOffset" : "pageXOffset"] : e instanceof Document ? r = e.documentElement[n] : e && (r = e[n]), e && !isWindow(e) && typeof r != "number" && (r = (e.ownerDocument || e).documentElement?.[n]), r;
502
+ }
503
+ function scrollTo(e, t = {}) {
504
+ let { getContainer: n = () => window, callback: r, duration: i = 450 } = t, a = n(), o = getScroll(a, !0), s = Date.now(), c = () => {
505
+ let t = Date.now() - s, n = easeInOutCubic(t > i ? i : t, o, e, i);
506
+ isWindow(a) ? a.scrollTo(window.pageXOffset, n) : a instanceof HTMLDocument || a.constructor.name === "HTMLDocument" ? a.documentElement.scrollTop = n : a.scrollTop = n, t < i ? wrapperRaf(c) : typeof r == "function" && r();
507
+ };
508
+ a && wrapperRaf(c);
509
+ }
510
+ const fileTypes = {
511
+ videoAllowType: [
512
+ "mp4",
513
+ "webm",
514
+ "ogg"
515
+ ],
516
+ audioAllowType: [
517
+ "mp3",
518
+ "ogg",
519
+ "wav",
520
+ "aac",
521
+ "m4a",
522
+ "webm"
523
+ ],
524
+ imageType: [
525
+ "jpeg",
526
+ "jpg",
527
+ "png",
528
+ "gif",
529
+ "bmp",
530
+ "tiff",
531
+ "tif",
532
+ "webp",
533
+ "heic",
534
+ "heif",
535
+ "svg",
536
+ "ico",
537
+ "raw",
538
+ "cr2",
539
+ "nef",
540
+ "arw",
541
+ "dng",
542
+ "psd",
543
+ "eps"
544
+ ],
545
+ videoType: [
546
+ "mp4",
547
+ "avi",
548
+ "mov",
549
+ "wmv",
550
+ "mkv",
551
+ "flv",
552
+ "webm",
553
+ "mpeg",
554
+ "mpg",
555
+ "3gp",
556
+ "ogv",
557
+ "mxf",
558
+ "vob",
559
+ "rm",
560
+ "rmvb",
561
+ "ts",
562
+ "mts",
563
+ "m2ts",
564
+ "divx",
565
+ "xvid"
566
+ ],
567
+ audioType: [
568
+ "mp3",
569
+ "wav",
570
+ "aac",
571
+ "flac",
572
+ "ogg",
573
+ "wma",
574
+ "m4a",
575
+ "alac",
576
+ "opus",
577
+ "amr",
578
+ "aiff",
579
+ "au",
580
+ "pcm",
581
+ "ape"
582
+ ]
583
+ };
584
+ function getBlobUrl(e) {
585
+ return URL.createObjectURL(e);
586
+ }
587
+ function getBase64(e) {
588
+ return new Promise((t, n) => {
589
+ let r = new FileReader();
590
+ r.readAsDataURL(e), r.onload = () => t(r.result), r.onerror = (e) => n(e);
591
+ });
592
+ }
593
+ function dataURLtoBlob(e) {
594
+ let t = e.split(","), n = t[0].match(/:(.*?);/)[1], r = atob(t[1]), i = r.length, a = new Uint8Array(i);
595
+ for (; i--;) a[i] = r.charCodeAt(i);
596
+ return new Blob([a], { type: n });
597
+ }
598
+ function dataURLtoFile(e, t) {
599
+ let n = e.split(","), r = n[0].match(/:(.*?);/)[1], i = atob(n[1]), a = i.length, o = new Uint8Array(a);
600
+ for (; a--;) o[a] = i.charCodeAt(a);
601
+ return new File([o], t, { type: r });
602
+ }
603
+ function blobToDataURL(e, t, n) {
604
+ return new window.File([e], t, { type: n });
605
+ }
606
+ function getFileSuffix(e) {
607
+ if (!e || typeof e != "string") return "";
608
+ let t = getVideoFileUrl(e), n = t.lastIndexOf(".");
609
+ return n > 0 && `${t?.substring?.(n)?.split("?")?.[0]}`?.split(".")?.[1] || "";
610
+ }
611
+ function getVideoFileUrl(e) {
612
+ if (!e || typeof e != "string") return "";
613
+ let t = e.indexOf("?");
614
+ return t > 0 ? `${e.substring(0, t)}` : e;
615
+ }
616
+ function checkFileType(e, t) {
617
+ if (t) return t;
618
+ if (!e || e === "data:") return "4";
619
+ let n = "4";
620
+ return isBase64(e) ? e.includes("data:image/") ? n = "png" : e.includes("data:video/") ? n = "mp4" : e.includes("data:audio/") && (n = "mp3") : e instanceof Blob ? (e = String(e), e.includes("image") ? n = "png" : e.includes("video") ? n = "mp4" : e.includes("audio") && (n = "mp3")) : n = getFileSuffix(e).toLowerCase(), fileTypes.imageType.includes(n) ? "1" : fileTypes.videoType.includes(n) ? "3" : fileTypes.audioType.includes(n) ? "2" : "4";
621
+ }
622
+ function getMediaInfos(e) {
623
+ let { url: t = "", fileType: n = "1" } = e || {}, i = "", a = {
624
+ play: !1,
625
+ height: 0,
626
+ size: 0,
627
+ width: 0,
628
+ duration: 0
629
+ };
630
+ function o() {
631
+ a = {
632
+ play: !1,
633
+ height: 0,
634
+ size: 0,
635
+ width: 0,
636
+ duration: 0
637
+ };
638
+ }
639
+ return t instanceof File ? i = URL.createObjectURL(t) : isBase64(t) ? i = t : t instanceof Blob ? i = URL.createObjectURL(t) : (t.includes("https") || t.includes("http")) && (i = t), new Promise((e) => {
640
+ let t;
641
+ if (n === "4") {
642
+ e(a);
643
+ return;
644
+ }
645
+ n === "1" ? (t = document.createElement("img"), t.src = i) : n === "2" ? (t = document.createElement("audio"), t.src = i) : n === "3" && (t = document.createElement("video"), t.src = i), n === "1" ? t.onload = function() {
646
+ o(), a.play = !0, a.width = t.width || 0, a.height = t.height || 0, e(a), t = null;
647
+ } : t.oncanplay = function() {
648
+ o(), a.play = !0, a.width = t?.videoWidth || 0, a.height = t?.videoHeight || 0, a.duration = t?.duration || 0, e(a), t = null;
649
+ }, t.onerror = function() {
650
+ o(), e(a), t = null;
651
+ };
652
+ });
653
+ }
654
+ async function getVideoCoverPicture(e) {
655
+ let { url: t = "", currentTime: n, videoSuffix: i = "", videoAllowPlay: a = !1 } = e, o = "", s = i, c = "1", l;
656
+ return t instanceof File ? (o = URL.createObjectURL(t), s = getFileSuffix(t.name), c = checkFileType(t.name)) : t instanceof Blob ? (o = URL.createObjectURL(t), c = checkFileType(t)) : isBase64(t) ? (o = t, c = checkFileType(t)) : (t.includes("https") || t.includes("http")) && (o = t, s = getFileSuffix(t), c = checkFileType(t)), s && fileTypes.videoAllowType.includes(s.toLowerCase()) ? a ? generateVideoPicture(o, n) : (l = await getMediaInfos({
657
+ url: o,
658
+ fileType: c
659
+ }), l.play ? generateVideoPicture(o, n) : new Promise((e) => {
660
+ e("");
661
+ })) : new Promise((e) => {
662
+ e("");
663
+ });
664
+ }
665
+ async function generateVideoPicture(e, t = 0) {
666
+ return new Promise((n) => {
667
+ let r = document.createElement("video");
668
+ r && (r.controls = !0, r.muted = !0, r.setAttribute("src", e), r.setAttribute("muted", "true"), r.setAttribute("crossorigin", "anonymous"), r.setAttribute("autoplay", "true"), r.addEventListener("loadeddata", async () => {
669
+ let e;
670
+ for (r?.addEventListener("seeked", async () => {
671
+ e && e();
672
+ }); t < (r?.duration || 0);) {
673
+ r && (r.currentTime = t), await new Promise((t) => e = t);
674
+ let i = document.createElement("canvas"), a = .8, o = i.getContext("2d"), s = r?.videoWidth || 0 * a, c = r?.videoHeight || 0 * a;
675
+ i.width = r?.videoWidth || 0 * a, i.height = r?.videoHeight || 0 * a, r && o.drawImage(r, 0, 0, s + 0, c + 0), r = null, n(s === 0 || c === 0 ? "" : i.toDataURL("image/png", 1));
676
+ }
677
+ }));
678
+ });
679
+ }
680
+ function deepCopy(e) {
681
+ return JSON.parse(JSON.stringify(e));
682
+ }
683
+ function getValueFromObjectByKey(e, t) {
684
+ if (typeof t != "string" && !Array.isArray(t)) return;
685
+ let n = Array.isArray(t) ? t : t.split(":"), r = e;
686
+ for (let e = 0; e < n.length; e++) if (r && Object.prototype.hasOwnProperty.call(r, n[e])) r = r[n[e]];
687
+ else return;
688
+ return r;
689
+ }
690
+ function runFunction(e, ...t) {
691
+ return typeof e == "function" ? e(...t) : e;
692
+ }
693
+ function mergeWith(e, t, n) {
694
+ let r = Object.keys(t);
695
+ for (let i = 0; i < r.length; i++) {
696
+ let a = r[i];
697
+ if (isUnsafeProperty(a)) continue;
698
+ let o = t[a], s = e[a], c = n(s, o, a, e, t);
699
+ c === void 0 ? isPlainObject(o) ? isPlainObject(s) ? e[a] = mergeWith(s, o, n) : e[a] = mergeWith({}, o, n) : e[a] = o : e[a] = c;
700
+ }
701
+ return e;
702
+ }
703
+ function useDeepMerge(e, t) {
704
+ return mergeWith(e, t, function e(t, n) {
705
+ if (isPlainObject(n)) return isPlainObject(t) ? mergeWith(t, n, e) : mergeWith({}, n, e);
706
+ });
707
+ }
708
+ function merge(...e) {
709
+ let t = {}, n = e.length, r, i = 0;
710
+ for (; i < n; i += 1) for (r in e[i]) Object.prototype.hasOwnProperty.call(e[i], r) && (typeof t[r] == "object" && typeof e[i][r] == "object" && t[r] !== void 0 && t[r] !== null && !Array.isArray(t[r]) && !Array.isArray(e[i][r]) ? t[r] = {
711
+ ...t[r],
712
+ ...e[i][r]
713
+ } : t[r] = e[i][r]);
714
+ return t;
715
+ }
716
+ function deepMerge(e, t) {
717
+ return mergeWith(cloneDeep(e), t, function e(t, n) {
718
+ if (isPlainObject(n)) return isPlainObject(t) ? mergeWith(cloneDeep(t), n, e) : mergeWith({}, n, e);
719
+ });
720
+ }
721
+ function toChinesNum(e) {
722
+ e = isNumber(e) && !Number.isNaN(e) ? e : 0;
723
+ let t = [
724
+ "零",
725
+ "一",
726
+ "二",
727
+ "三",
728
+ "四",
729
+ "五",
730
+ "六",
731
+ "七",
732
+ "八",
733
+ "九"
734
+ ], n = [
735
+ "",
736
+ "十",
737
+ "百",
738
+ "千",
739
+ "万"
740
+ ];
741
+ e = Number.parseInt(`${e}`);
742
+ let r = (r) => {
743
+ let i = r.toString().split("").reverse(), a = "";
744
+ for (let r = 0; r < i.length; r++) a = (r === 0 && i[r] === "0" || r > 0 && i[r] === "0" && i[r - 1] === "0" ? "" : (e < 20 && r > 0 ? "" : t[i[r]]) + (i[r] === "0" ? n[0] : n[r])) + a;
745
+ return a;
746
+ }, i = Math.floor(e / 1e4), a = e % 1e4;
747
+ return a.toString().length < 4 && (a = `0${a}`), i ? `${r(i)}万${r(a)}` : r(e);
748
+ }
749
+ function formatNumber(e, t) {
750
+ let n = `^\\d+(?:\\.\\d{0,${e}})?`, r = new RegExp(n), i = t.toString().match(r);
751
+ if (i) {
752
+ let e = i[0];
753
+ if (e.includes(".")) {
754
+ let [t, n] = e.split(".");
755
+ if (/^0*$/.test(n)) return t;
756
+ }
757
+ return e;
758
+ }
759
+ return t.toString();
760
+ }
761
+ function toConvertNumberShow(e, t) {
762
+ let { toChinese: n = !1, fixed: r = 2, min: i = 1e4 } = t || {}, a = isNumber(i) ? i : 1e4, o = isNumber(r) ? r : 2, s = n ? e < a ? "" : e < 1e8 ? "万" : "亿" : e < a ? "" : e < 1e8 ? "w" : "亿";
763
+ if (!isNumber(e) || e < a) return {
764
+ str: `${e}`,
765
+ number: `${e}`
766
+ };
767
+ if (o === 0) {
768
+ let t = (e / (e < 1e8 ? 1e4 : 1e8)).toFixed(1).split(".")[0];
769
+ return {
770
+ str: `${t}${s}`,
771
+ number: t,
772
+ unit: s
773
+ };
774
+ }
775
+ let c;
776
+ return e < 1e8 ? (c = formatNumber(o, e / 1e4), {
777
+ str: c + s,
778
+ number: c,
779
+ unit: s
780
+ }) : (c = formatNumber(o, e / 1e8), {
781
+ str: c + s,
782
+ number: c,
783
+ unit: s
784
+ });
785
+ }
786
+ function classNames(...e) {
787
+ let t = [];
788
+ for (let n = 0; n < e.length; n++) {
789
+ let r = e[n];
790
+ if (r) {
791
+ if (isString(r)) t.push(r);
792
+ else if (isArray(r)) for (let e = 0; e < r.length; e++) {
793
+ let n = classNames(r[e]);
794
+ n && t.push(n);
795
+ }
796
+ else if (isObject(r)) for (let e in r) r[e] && t.push(e);
797
+ }
798
+ }
799
+ return t.filter((e) => e).join(" ");
800
+ }
801
+ function omitBoolean(e) {
802
+ if (e && e !== !0) return e;
803
+ }
804
+ function omitUndefined(e) {
805
+ let t = {};
806
+ if (Object.keys(e || {}).forEach((n) => {
807
+ e[n] !== void 0 && (t[n] = e[n]);
808
+ }), !(Object.keys(t).length < 1)) return t;
809
+ }
810
+ function omitUndefinedAndEmptyArr(e) {
811
+ let t = {};
812
+ return Object.keys(e || {}).forEach((n) => {
813
+ Array.isArray(e[n]) && e[n]?.length === 0 || e[n] !== void 0 && (t[n] = e[n]);
814
+ }), t;
815
+ }
816
+ function formatDuration(e) {
817
+ let t = "";
818
+ if (e > -1) {
819
+ let n = Math.floor(e / 3600), r = Math.floor(e / 60) % 60, i = Number.parseInt(String(e % 60));
820
+ t = n < 10 ? `0${n}:` : `${n}:`, r < 10 && (t += "0"), t += `${r}:`, i < 10 && (t += "0"), t += i;
821
+ }
822
+ return t.split(":")[0] === "00" ? `${t.split(":")[1]}:${t.split(":")[2]}` : t;
823
+ }
824
+ function handleEmptyField(e, t) {
825
+ let n = ["null", "undefined"], r = !0;
826
+ return e === 0 ? r = !0 : n.includes(e) ? r = !1 : e || (r = !1), r ? {
827
+ value: e,
828
+ success: r
829
+ } : {
830
+ value: t === "" ? t : t || "-",
831
+ success: r
832
+ };
833
+ }
834
+ var index = 0;
835
+ function genNanoid(e = 21) {
836
+ if (typeof window > "u" || !window.crypto) return (index += 1).toFixed(0);
837
+ let t = "", n = crypto.getRandomValues(new Uint8Array(e));
838
+ for (; e--;) {
839
+ let r = 63 & n[e];
840
+ t += r < 36 ? r.toString(36) : r < 62 ? (r - 26).toString(36).toUpperCase() : r < 63 ? "_" : "-";
841
+ }
842
+ return t;
843
+ }
844
+ function nanoid() {
845
+ return typeof window > "u" ? genNanoid() : window.crypto && window.crypto.randomUUID && typeof crypto.randomUUID == "function" ? crypto.randomUUID() : genNanoid();
846
+ }
847
+ function getRandomNumber() {
848
+ let e = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split("");
849
+ return {
850
+ uuid(t, n) {
851
+ let r = e, i = [], a = n || r.length, o, s;
852
+ if (t) for (o = 0; o < t; o += 1) i[o] = r[Number.parseInt(String(Math.random() * a))];
853
+ else for (i[8] = "-", i[13] = "-", i[18] = "-", i[23] = "-", i[14] = "4", o = 0; o < 36; o += 1) i[o] || (s = Math.random() * 16, i[o] = r[o === 19 ? s && 3 || 8 : s]);
854
+ return i.join("");
855
+ },
856
+ uuidFast() {
857
+ let t = e, n = Array.from({ length: 36 }), r = 0, i, a;
858
+ for (a = 0; a < 36; a += 1) a === 8 || a === 13 || a === 18 || a === 23 ? n[a] = "-" : a === 14 ? n[a] = "4" : (r <= 2 && (r = 33554432 + Math.random() * 16777216 || 0), i = r && 15, r = r > 4, n[a] = t[a === 19 ? i && 3 || 8 : i]);
859
+ return n.join("");
860
+ },
861
+ uuidString() {
862
+ return this.uuidFast().replace(/-/g, "");
863
+ },
864
+ uuidCompact() {
865
+ return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (e) => {
866
+ let t = Math.random() * 16 || 0;
867
+ return (e === "x" ? t : t && 3 || 8).toString(16);
868
+ });
869
+ }
870
+ };
871
+ }
872
+ function genColumnKey(e, t) {
873
+ return e ? isArray(e) ? e.join("-") : e.toString() : `${t || 0}`;
874
+ }
875
+ function handleShowIndex(e, { align: t, showIndex: n }) {
876
+ let r = structuredClone(e);
877
+ if (n && e.length && e.every((e) => e.dataIndex !== "sortIndex")) {
878
+ let n = e[0];
879
+ r.unshift({
880
+ title: "序号",
881
+ align: t,
882
+ fixed: n.fixed,
883
+ width: 60,
884
+ uuid: getRandomNumber().uuid(15),
885
+ dataIndex: "sortIndex",
886
+ key: "sortIndex"
887
+ });
888
+ } else r.filter((e) => e.dataIndex !== "sortIndex");
889
+ return r;
890
+ }
891
+ function handleCurrentPage(e, t) {
892
+ if (isObject(e)) {
893
+ let { pageSize: n = 10, total: r = 0 } = e, { current: i = 1 } = e;
894
+ return r - t <= n * (i - 1) && --i, i === 0 ? 1 : i;
895
+ }
896
+ return 1;
897
+ }
898
+ function getKeys(e) {
899
+ if (!(typeof e != "string" && !Array.isArray(e))) return Array.isArray(e) ? e[e.length - 1] : e.split(":")?.slice(-1)[0];
900
+ }
901
+ function isEmptyElement(n) {
902
+ return n && (n.type === Comment || n.type === Fragment && n.children.length === 0 || n.type === Text && n.children.trim() === "");
903
+ }
904
+ function getSlotsChildren(e, t) {
905
+ return filterEmpty(typeof e[t] == "function" ? e[t]?.() : []);
906
+ }
907
+ function filterEmpty(e = [], r = !0) {
908
+ let i = Array.isArray(e) ? e : [e], a = [];
909
+ return i.forEach((e) => {
910
+ Array.isArray(e) ? a.push(...filterEmpty(e, r)) : e?.type === Fragment || e?.type === "template" ? a.push(...filterEmpty(e.children, r)) : e && isVNode(e) ? r && !isEmptyElement(e) ? a.push(e) : r || a.push(e) : isValid(e) && a.push(e);
911
+ }), a;
912
+ }
913
+ function slotRender({ vnode: e, defaultVNode: t }, ...n) {
914
+ return e === !1 ? null : typeof e == "function" ? e?.(...n) : e || t;
915
+ }
916
+ function getSlot(e, ...t) {
917
+ let { slots: r, key: i = "default", render: a, props: o, defaultChildren: s } = e, c, l = o[i], u = r?.[i], d = typeof s == "function" ? s?.() : s;
918
+ return c = l === !1 ? !1 : l === !0 ? u ?? d : isObject(l) && a ? isVNode(l) ? l : u : l || u, c === !1 ? !1 : a ? slotRender({
919
+ vnode: c,
920
+ defaultVNode: d
921
+ }, ...t) : c;
922
+ }
923
+ function getSlotVNode(e, ...t) {
924
+ let { slots: r, key: i = "default", props: a, defaultChildren: o } = e, s, c = a[i], l = r?.[i]?.(...t), u = typeof o == "function" ? o?.() : o;
925
+ return s = c === !1 ? !1 : c === !0 ? l ?? u : isObject(c) ? isVNode(c) ? c : l : c || l, s === !1 ? !1 : slotRender({
926
+ vnode: s,
927
+ defaultVNode: u
928
+ }, ...t);
929
+ }
930
+ function getSlotsProps(e, ...t) {
931
+ let { slots: n, props: r, keys: i, render: a, defaultVNodes: o } = e, s = {};
932
+ return i.forEach((e, i) => {
933
+ let c = o ? o[i] : null, l = a ? getSlotVNode({
934
+ slots: n,
935
+ props: r,
936
+ key: e,
937
+ defaultChildren: c
938
+ }, ...t) : getSlot({
939
+ slots: n,
940
+ props: r,
941
+ key: e,
942
+ render: !1,
943
+ defaultChildren: c
944
+ }, ...t);
945
+ (isBoolean(l) || l) && (s[e] = l);
946
+ }), s;
947
+ }
948
+ export { arraySlice, arrayUnique, blobToDataURL, checkFileType, classNames, cloneDeep, cloneDeepWith, cloneDeepWithImpl, compareArray, compareArraySort, compareArrayTimeSort, compareTime, convertValueBoolean, copyProperties, dataURLtoBlob, dataURLtoFile, deepCopy, deepMerge, easeInOutCubic, fileTypes, filterEmpty, filterTree, findSourceByTree, findValueAndAncestors, forInObject, formatDuration, formatNumber, genColumnKey, generateVideoPicture, getArrayLast, getBase64, getBlobUrl, getFileSuffix, getKeys, getLevelData, getMaxFloor, getMediaInfos, getPrefixCls, getRandomNumber, getScroll, getScrollContainer, getSlot, getSlotVNode, getSlotsChildren, getSlotsProps, getSortIndex, getSymbols, getTextWidth, getValueFromObjectByKey, getVideoCoverPicture, getVideoFileUrl, handleCurrentPage, handleEmptyField, handleShowIndex, is, isArray, isBase64, isBoolean, isBrowser, isDataURLBase64, isDeepEqualReact, isEmptyElement, isEqual, isFunction, isImg, isInContainer, isJSONStr, isMobile, isNil, isNotNil, isNumber, isObject, isObjectWithSymbols, isPlainObject, isPrimitive, isScroll, isServer, isString, isTablet, isTypedArray, isUnsafeProperty, isUrl, isValid, isWindow, isWindowsOs, keysOf, merge, mergeWith, nanoid, off, omitBoolean, omitUndefined, omitUndefinedAndEmptyArr, on, wrapperRaf as raf, runFunction, scrollTo, slotRender, toChinesNum, toConvertNumberShow, treeData, useDeepMerge };