@mxmweb/zui 1.0.3 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (132) hide show
  1. package/.editorconfig +38 -0
  2. package/.prettierignore +16 -0
  3. package/.prettierrc +17 -0
  4. package/.releaserc.json +36 -0
  5. package/CHANGELOG.md +58 -0
  6. package/CONTRIBUTING.md +111 -0
  7. package/NPMREADME.md +0 -0
  8. package/README.md +4 -1
  9. package/bash.exe.stackdump +40 -0
  10. package/components.json +21 -0
  11. package/dist/README.md +0 -0
  12. package/dist/assets/style.css +1 -0
  13. package/{containers → dist/containers}/DashboardContainer.d.ts +8 -0
  14. package/dist/containers/DockContainer.d.ts +24 -0
  15. package/{elements → dist/elements}/Button.d.ts +3 -4
  16. package/dist/elements/CustomDock.d.ts +25 -0
  17. package/dist/elements/DropDownButton.d.ts +24 -0
  18. package/{elements → dist/elements}/DropdownMenu.d.ts +2 -4
  19. package/dist/elements/GoggleNavbar.d.ts +31 -0
  20. package/{elements → dist/elements}/Uploader/UploadItem.d.ts +17 -0
  21. package/{elements → dist/elements}/Uploader/styles.d.ts +10 -1
  22. package/dist/elements/Uploader/types.d.ts +87 -0
  23. package/dist/examples/DockContainerExample.d.ts +3 -0
  24. package/dist/icons/Icon.d.ts +7 -0
  25. package/dist/icons/Icon.tsx +82 -0
  26. package/dist/icons/index.d.ts +13 -0
  27. package/dist/icons/index.tsx +92 -0
  28. package/dist/icons/lazyIndex.d.ts +7 -0
  29. package/dist/icons/lazyIndex.tsx +49 -0
  30. package/dist/icons/rag/csv.svg +3 -0
  31. package/dist/icons/rag/document.svg +3 -0
  32. package/dist/icons/rag/excel.svg +3 -0
  33. package/dist/icons/rag/file.svg +3 -0
  34. package/dist/icons/rag/folder.svg +5 -0
  35. package/dist/icons/rag/json.svg +3 -0
  36. package/dist/icons/rag/knowledgebase.svg +3 -0
  37. package/dist/icons/rag/netretrive.svg +3 -0
  38. package/dist/icons/rag/odf.svg +7 -0
  39. package/dist/icons/rag/pdf.svg +3 -0
  40. package/dist/icons/rag/pic.svg +3 -0
  41. package/dist/icons/rag/ppt.svg +3 -0
  42. package/dist/icons/rag/think.svg +6 -0
  43. package/dist/icons/rag/txt.svg +3 -0
  44. package/dist/icons/rag/url.svg +3 -0
  45. package/dist/icons/rag/word.svg +3 -0
  46. package/dist/icons/rag/wps.svg +3 -0
  47. package/dist/icons/rag/zip.svg +7 -0
  48. package/dist/index.js +2299 -0
  49. package/dist/lib_enter.d.ts +13 -0
  50. package/dist/package.json +26 -0
  51. package/{theme → dist/theme}/styledTheme.d.ts +40 -54
  52. package/eslint.config.js +92 -0
  53. package/index.html +13 -0
  54. package/package.json +42 -14
  55. package/postcss.config.cjs +19 -0
  56. package/public/mock.csv +16 -0
  57. package/public/mock_/345/211/257/346/234/254.csv +16 -0
  58. package/public/vite.svg +1 -0
  59. package/src/Preview.tsx +15 -0
  60. package/src/assets/img/excel.png +0 -0
  61. package/src/assets/img/img.png +0 -0
  62. package/src/assets/img/pdf.png +0 -0
  63. package/src/assets/img/ppt.png +0 -0
  64. package/src/assets/img/txt.png +0 -0
  65. package/src/assets/img/word.png +0 -0
  66. package/src/containers/DashboardContainer.tsx +507 -0
  67. package/src/containers/DockContainer.tsx +186 -0
  68. package/src/containers/style.css +37 -0
  69. package/src/elements/Button.tsx +118 -0
  70. package/src/elements/CustomDock.tsx +287 -0
  71. package/src/elements/DropDownButton.tsx +249 -0
  72. package/src/elements/DropdownMenu.tsx +184 -0
  73. package/src/elements/GoggleNavbar.tsx +184 -0
  74. package/src/elements/Uploader/README.md +249 -0
  75. package/src/elements/Uploader/UploadItem.tsx +298 -0
  76. package/src/elements/Uploader/example.tsx +95 -0
  77. package/src/elements/Uploader/index.tsx +702 -0
  78. package/src/elements/Uploader/styles.tsx +291 -0
  79. package/src/elements/Uploader/types.ts +119 -0
  80. package/src/elements/Uploader/utils.ts +200 -0
  81. package/src/elements/Uploader.tsx +3 -0
  82. package/src/examples/DockContainerExample.tsx +237 -0
  83. package/src/icons/Icon.tsx +82 -0
  84. package/src/icons/index.tsx +92 -0
  85. package/src/icons/lazyIndex.tsx +49 -0
  86. package/src/icons/rag/csv.svg +3 -0
  87. package/src/icons/rag/document.svg +3 -0
  88. package/src/icons/rag/excel.svg +3 -0
  89. package/src/icons/rag/file.svg +3 -0
  90. package/src/icons/rag/folder.svg +5 -0
  91. package/src/icons/rag/json.svg +3 -0
  92. package/src/icons/rag/knowledgebase.svg +3 -0
  93. package/src/icons/rag/netretrive.svg +3 -0
  94. package/src/icons/rag/odf.svg +7 -0
  95. package/src/icons/rag/pdf.svg +3 -0
  96. package/src/icons/rag/pic.svg +3 -0
  97. package/src/icons/rag/ppt.svg +3 -0
  98. package/src/icons/rag/think.svg +6 -0
  99. package/src/icons/rag/txt.svg +3 -0
  100. package/src/icons/rag/url.svg +3 -0
  101. package/src/icons/rag/word.svg +3 -0
  102. package/src/icons/rag/wps.svg +3 -0
  103. package/src/icons/rag/zip.svg +7 -0
  104. package/src/lib_enter.ts +27 -0
  105. package/src/main.tsx +11 -0
  106. package/src/style.css +9 -0
  107. package/src/theme/styledTheme.tsx +253 -0
  108. package/src/type.d.ts +0 -0
  109. package/src/types/images.d.ts +12 -0
  110. package/src/types/svg-modules.d.ts +24 -0
  111. package/src/vite-env.d.ts +11 -0
  112. package/tailwind.config.js +170 -0
  113. package/tsconfig.app.json +29 -0
  114. package/tsconfig.app.tsbuildinfo +11 -0
  115. package/tsconfig.json +13 -0
  116. package/tsconfig.node.json +22 -0
  117. package/tsconfig.node.tsbuildinfo +1 -0
  118. package/vite.config.ts +180 -0
  119. package/assets/zui.css +0 -1
  120. package/elements/Uploader/types.d.ts +0 -50
  121. package/index-CgFHm4CL-O5tUkbrp.js +0 -48009
  122. package/index.js +0 -49394
  123. package/lib_enter.d.ts +0 -6
  124. /package/{Preview.d.ts → dist/Preview.d.ts} +0 -0
  125. /package/{elements → dist/elements}/Uploader/example.d.ts +0 -0
  126. /package/{elements → dist/elements}/Uploader/index.d.ts +0 -0
  127. /package/{elements → dist/elements}/Uploader/utils.d.ts +0 -0
  128. /package/{elements → dist/elements}/Uploader.d.ts +0 -0
  129. /package/{main.d.ts → dist/main.d.ts} +0 -0
  130. /package/{mock.csv → dist/mock.csv} +0 -0
  131. /package/{mock_ → dist/mock_}/345/211/257/346/234/254.csv" +0 -0
  132. /package/{vite.svg → dist/vite.svg} +0 -0
package/dist/index.js ADDED
@@ -0,0 +1,2299 @@
1
+ import { jsxs as k, jsx as i, Fragment as u0 } from "react/jsx-runtime";
2
+ import m, { createGlobalStyle as H0 } from "styled-components";
3
+ import * as P from "react";
4
+ import J, { createContext as B0, useState as j, useMemo as d0, useEffect as o0, useRef as r0, useCallback as U, memo as M0, Suspense as A0 } from "react";
5
+ import { createPortal as w0 } from "react-dom";
6
+ import { MoreHorizontal as _0, Trash as V0, File as Y, AlertCircle as h0, Upload as z0, ChevronDown as I0, ArrowLeft as E0, ChevronRight as a0 } from "lucide-react";
7
+ import { FormXviwer as S0 } from "@mxmweb/xviewer";
8
+ import "@mxmweb/xviewer/style.css";
9
+ import f0 from "animejs/lib/anime.es.js";
10
+ const I = {
11
+ colors: {
12
+ // 兼容旧字段
13
+ primary: "#4E6EF2",
14
+ secondary: "#6D86F5",
15
+ success: "#52C41A",
16
+ warning: "#FAAD14",
17
+ error: "#F5222D",
18
+ info: "#1890FF",
19
+ background: "#F7F8FA",
20
+ text: "#1D2129",
21
+ border: "#DDE0E5",
22
+ disabled: "#C9CDD4",
23
+ disabledBackground: "#F5F7FA",
24
+ disabledText: "#C9CDD4",
25
+ shadow: "0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24)",
26
+ appBackground: "transparent",
27
+ listBackground: "#F2F3F5",
28
+ dashboardBackground: "#FFFFFF",
29
+ textSecondary: "#4E5969",
30
+ textTertiary: "#86909C",
31
+ textInverse: "#FFFFFF",
32
+ // 状态与扩展
33
+ primaryHover: "#6D86F5",
34
+ primaryActive: "#2D4BE0",
35
+ borderWeak: "#E5E6EB",
36
+ surfaceSubtle: "#F2F3F5",
37
+ surfaceSelected: "#EEF3FE",
38
+ // 按钮映射
39
+ btnPrimaryBg: "#4E6EF2",
40
+ btnPrimaryBgHover: "#6D86F5",
41
+ btnPrimaryBgActive: "#2D4BE0",
42
+ btnPrimaryBgDisabled: "#F5F7FA",
43
+ btnPrimaryText: "#FFFFFF",
44
+ btnPrimaryTextDisabled: "#C9CDD4",
45
+ btnSecondaryText: "#4E6EF2",
46
+ btnSecondaryTextHover: "#4E6EF2",
47
+ btnSecondaryTextActive: "#2D4BE0",
48
+ btnSecondaryTextDisabled: "#C9CDD4",
49
+ btnSecondaryBg: "#FFFFFF",
50
+ btnSecondaryBgHover: "#EEF3FE",
51
+ btnSecondaryBgActive: "#EEF3FE",
52
+ btnSecondaryBgDisabled: "#F5F7FA",
53
+ btnSecondaryBorder: "#4E6EF2",
54
+ btnSecondaryBorderHover: "#6D86F5",
55
+ btnSecondaryBorderActive: "#2D4BE0",
56
+ btnSecondaryBorderDisabled: "#E5E6EB",
57
+ btnTextText: "#4E6EF2",
58
+ btnTextTextHover: "#6D86F5",
59
+ btnTextTextActive: "#2D4BE0",
60
+ btnTextTextDisabled: "#C9CDD4"
61
+ },
62
+ space: {
63
+ sidebar: "260px",
64
+ size: "12px",
65
+ radius: "4px",
66
+ padding: "8px",
67
+ margin: "8px",
68
+ shadow: "0 2px 8px rgba(0,0,0,0.1)",
69
+ lineHeight: "1.5"
70
+ },
71
+ fonts: {
72
+ body: {
73
+ size: "14px",
74
+ weight: "normal",
75
+ family: "PingFang SC, Microsoft YaHei, Arial, sans-serif"
76
+ },
77
+ heading: {
78
+ size: "16px",
79
+ weight: "600",
80
+ family: "PingFang SC, Microsoft YaHei, Arial, sans-serif"
81
+ }
82
+ },
83
+ icons: {
84
+ aiAvatar: "http://10.15.12.13:9000/dev-rag-data/header_pic/JIABINBIN00/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20231212161213.jpg",
85
+ userAvatar: "http://10.15.12.13:9005/assets/nav-logo-BKaOCDqi.png",
86
+ pdf: "https://ai-chat-1326151111.cos.ap-shanghai.myqcloud.com/pdf-icon.png",
87
+ word: "https://ai-chat-1326151111.cos.ap-shanghai.myqcloud.com/word-icon.png",
88
+ image: "https://ai-chat-1326151111.cos.ap-shanghai.myqcloud.com/image-icon.png",
89
+ video: "https://ai-chat-1326151111.cos.ap-shanghai.myqcloud.com/video-icon.png",
90
+ audio: "https://ai-chat-1326151111.cos.ap-shanghai.myqcloud.com/audio-icon.png",
91
+ excel: "https://ai-chat-1326151111.cos.c zap-shanghai.myqcloud.com/excel-icon.png",
92
+ ppt: "https://ai-chat-1326151111.cos.ap-shanghai.myqcloud.com/ppt-icon.png"
93
+ },
94
+ others: {
95
+ baseFontWeight: "normal"
96
+ }
97
+ }, F0 = {
98
+ theme: I,
99
+ mode: "light"
100
+ };
101
+ function l0(e, o) {
102
+ if (!o) return e;
103
+ const r = {
104
+ ...e,
105
+ ...o
106
+ };
107
+ return o.theme && e.theme && (r.theme = {
108
+ ...e.theme,
109
+ ...o.theme,
110
+ colors: { ...e.theme.colors, ...o.theme.colors },
111
+ space: { ...e.theme.space, ...o.theme.space },
112
+ icons: { ...e.theme.icons, ...o.theme.icons },
113
+ fonts: { ...e.theme.fonts, ...o.theme.fonts },
114
+ others: { ...e.theme.others, ...o.theme.others }
115
+ }), r;
116
+ }
117
+ B0(F0);
118
+ const N0 = m.button`
119
+ height: 36px;
120
+ min-height: 36px;
121
+ max-height: 36px;
122
+ line-height: 34px;
123
+ padding: 0 12px;
124
+ border-radius: ${(e) => {
125
+ var o, r;
126
+ return ((r = (o = e.$theme) == null ? void 0 : o.space) == null ? void 0 : r.radius) || "4px";
127
+ }};
128
+ font-size: 12px;
129
+ border: none;
130
+ cursor: ${(e) => e.$disabled || e.$loading ? "not-allowed" : "pointer"};
131
+ transition: all 0.2s;
132
+ opacity: ${(e) => e.$disabled ? 0.5 : 1};
133
+ display: inline-flex;
134
+ align-items: center;
135
+ justify-content: center;
136
+ gap: 6px;
137
+ position: relative;
138
+ background: ${({ $btnType: e, $theme: o }) => {
139
+ var r, a, n;
140
+ return e === "text" ? "none" : e === "primary" ? ((r = o == null ? void 0 : o.colors) == null ? void 0 : r.primary) || "#007bff" : e === "error" ? ((a = o == null ? void 0 : o.colors) == null ? void 0 : a.error) || "#FF0000" : e === "default" ? ((n = o == null ? void 0 : o.colors) == null ? void 0 : n.background) || "#f8f9fa" : "none";
141
+ }};
142
+ color: ${({ $btnType: e, $theme: o }) => {
143
+ var r, a;
144
+ return e === "text" ? ((r = o == null ? void 0 : o.colors) == null ? void 0 : r.primary) || "#007bff" : e === "primary" || e === "error" ? "#ffffff" : ((a = o == null ? void 0 : o.colors) == null ? void 0 : a.text) || "#343a40";
145
+ }};
146
+ border: ${({ $btnType: e, $theme: o }) => {
147
+ var r;
148
+ return e === "default" ? `1px solid ${((r = o == null ? void 0 : o.colors) == null ? void 0 : r.border) || "#dee2e6"}` : "none";
149
+ }};
150
+ box-shadow: none;
151
+
152
+ /* Loading 状态样式 */
153
+ ${(e) => e.$loading && `
154
+ pointer-events: none;
155
+ opacity: 0.8;
156
+
157
+ .button-loading {
158
+ width: 14px;
159
+ height: 14px;
160
+ border: 2px solid transparent;
161
+ border-top: 2px solid currentColor;
162
+ border-radius: 50%;
163
+ animation: spin 1s linear infinite;
164
+ margin-right: 6px;
165
+ }
166
+ `}
167
+
168
+ @keyframes spin {
169
+ 0% { transform: rotate(0deg); }
170
+ 100% { transform: rotate(360deg); }
171
+ }
172
+ `, v0 = ({
173
+ mode: e = "default",
174
+ label: o,
175
+ icon: r,
176
+ disabled: a = !1,
177
+ loading: n = !1,
178
+ // 新增:loading 状态
179
+ onClick: g,
180
+ styles: w,
181
+ style: u,
182
+ className: $,
183
+ children: C,
184
+ ...c
185
+ }) => {
186
+ const f = l0(I, w), h = () => {
187
+ !a && !n && g && g();
188
+ };
189
+ return /* @__PURE__ */ k(
190
+ N0,
191
+ {
192
+ $btnType: e,
193
+ $disabled: a,
194
+ $loading: n,
195
+ $theme: f.theme || I,
196
+ onClick: h,
197
+ disabled: a || n,
198
+ style: u,
199
+ className: $,
200
+ ...c,
201
+ children: [
202
+ n && /* @__PURE__ */ i("span", { className: "button-loading" }),
203
+ r && /* @__PURE__ */ i("span", { className: "button-icon", style: { marginRight: 4 }, children: r }),
204
+ o && /* @__PURE__ */ i("span", { className: "button-label", children: o }),
205
+ C
206
+ ]
207
+ }
208
+ );
209
+ }, T0 = m.div`
210
+ background-color: #ffffff;
211
+ box-shadow: 0 2px 12px rgba(0,0,0,0.08);
212
+ border-radius: ${(e) => {
213
+ var o, r;
214
+ return ((r = (o = e.$theme) == null ? void 0 : o.space) == null ? void 0 : r.radius) || "8px";
215
+ }};
216
+ height: 90vh;
217
+ overflow: hidden;
218
+ position: relative;
219
+ `, Z0 = () => {
220
+ o0(() => {
221
+ const e = "goggle-nav-icon-styles";
222
+ if (!document.getElementById(e)) {
223
+ const o = document.createElement("style");
224
+ o.id = e, o.innerHTML = `
225
+ :root { --color-gray: #64748b; --color-blue: #3b82f6; }
226
+ .g-nav-item { position: relative; transition: all .3s ease; border-radius: 8px; }
227
+ .g-nav-icon img { transition: all .3s ease; filter: grayscale(100%) brightness(100%) opacity(.7); }
228
+ .g-nav-text { color: var(--color-gray); transition: color .3s ease; }
229
+ .g-nav-item:not(.active):hover .g-nav-icon img { filter: sepia(100%) saturate(1000%) hue-rotate(200deg) brightness(80%) opacity(1); transform: scale(1.05); }
230
+ .g-nav-item:not(.active):hover .g-nav-text { color: var(--color-blue); font-weight: 500; }
231
+ .g-nav-item.active { background-color: rgba(219,234,254,0.6); }
232
+ .g-nav-item.active .g-nav-icon img { filter: sepia(100%) saturate(1000%) hue-rotate(200deg) brightness(100%) opacity(1); transform: scale(1.05); }
233
+ .g-nav-item.active .g-nav-text { color: var(--color-blue); opacity: .8; font-weight: 500; }
234
+ .g-nav-item.active::before { content: ''; position: absolute; left: 0; top: 30%; bottom: 30%; width: 3px; background: var(--color-blue); border-radius: 0 2px 2px 0; }
235
+ `, document.head.appendChild(o);
236
+ }
237
+ }, []);
238
+ }, C1 = ({
239
+ items: e,
240
+ activePath: o,
241
+ defaultOpen: r = !0,
242
+ open: a,
243
+ onOpenChange: n,
244
+ onItemClick: g,
245
+ logo: w,
246
+ className: u,
247
+ style: $,
248
+ styles: C
249
+ }) => {
250
+ const c = l0(I, C == null ? void 0 : C.theme);
251
+ Z0();
252
+ const [f, h] = j(r), t = typeof a == "boolean" ? a : f, F = (v) => {
253
+ typeof a == "boolean" || h(v), n == null || n(v);
254
+ }, [y, _] = j(!1), D = (v) => v ? typeof v == "string" ? /* @__PURE__ */ i("img", { src: v, className: "w-6 h-6 transition-all duration-200", alt: "nav" }) : v : null, E = d0(() => ({
255
+ width: t ? "60px" : "20px",
256
+ minWidth: t ? "60px" : "20px",
257
+ transition: "all 0.3s cubic-bezier(0.4, 0, 0.2, 1)"
258
+ }), [t]);
259
+ return /* @__PURE__ */ k(T0, { $theme: c.theme || I, className: `relative ${u || ""}`, style: { ...E, ...$ }, children: [
260
+ /* @__PURE__ */ i(
261
+ "div",
262
+ {
263
+ onMouseEnter: () => _(!0),
264
+ onMouseLeave: () => _(!1),
265
+ className: "absolute top-1/2 -translate-y-1/2 right-1 w-6 h-6 cursor-pointer z-20 transition-all duration-300",
266
+ onClick: () => F(!t),
267
+ "aria-label": t ? "\u6536\u8D77" : "\u5C55\u5F00",
268
+ role: "button",
269
+ children: /* @__PURE__ */ i("div", { className: "group flex items-center justify-center w-6 h-6 rounded-full transition-all duration-200", children: /* @__PURE__ */ k("div", { className: "relative w-4 h-4 flex items-center justify-center", children: [
270
+ /* @__PURE__ */ i("div", { className: `absolute w-[2px] h-3 bg-gray-400 rounded-full transition-all duration-300 ${y ? "opacity-0 scale-0" : "opacity-100 scale-100"}` }),
271
+ /* @__PURE__ */ i(
272
+ "svg",
273
+ {
274
+ viewBox: "0 0 24 24",
275
+ fill: "none",
276
+ className: `absolute w-4 h-4 stroke-gray-400 transition-all duration-300 ${y ? "opacity-100 scale-100" : "opacity-0 scale-0"} ${t ? "rotate-0" : "rotate-180"}`,
277
+ strokeWidth: "2",
278
+ strokeLinecap: "round",
279
+ strokeLinejoin: "round",
280
+ children: /* @__PURE__ */ i("polyline", { points: "15 18 9 12 15 6" })
281
+ }
282
+ )
283
+ ] }) })
284
+ }
285
+ ),
286
+ /* @__PURE__ */ k(
287
+ "div",
288
+ {
289
+ className: "h-full py-6 px-[2px] flex flex-col items-center",
290
+ style: {
291
+ opacity: t ? 1 : 0,
292
+ transform: t ? "translateX(0)" : "translateX(-10px)",
293
+ transition: "all 0.2s cubic-bezier(0.4, 0, 0.2, 1)"
294
+ },
295
+ children: [
296
+ /* @__PURE__ */ i("div", { className: "mb-6 transition-transform duration-300 hover:scale-105", children: typeof w == "string" ? /* @__PURE__ */ i("img", { src: w, className: "w-7 h-7", alt: "logo" }) : w || /* @__PURE__ */ i("div", { className: "w-7 h-7 rounded bg-gray-100 flex items-center justify-center text-xs text-gray-500", children: "G" }) }),
297
+ /* @__PURE__ */ i("div", { className: "w-full gap-y-[2px] mb-10 flex-1 overflow-x-hidden overflow-y-auto scrollbar-none flex flex-col items-center", children: e.map((v) => {
298
+ const R = !!(o && v.path && o.startsWith(v.path)), H = R && v.activeIcon ? v.activeIcon : v.icon;
299
+ return /* @__PURE__ */ k(
300
+ "div",
301
+ {
302
+ onClick: () => !v.disabled && (g == null ? void 0 : g(v)),
303
+ className: `g-nav-item group relative w-full flex flex-col items-center justify-center py-3 px-2 rounded-lg cursor-pointer transition-all duration-200 ${R ? "active bg-blue-50" : "text-gray-500 hover:bg-gray-50"}`,
304
+ children: [
305
+ /* @__PURE__ */ k("div", { className: "relative g-nav-icon transition-transform duration-200 group-hover:scale-105", children: [
306
+ D(H),
307
+ v.badge && v.badge > 0 && /* @__PURE__ */ i("span", { className: "absolute -top-1 -right-1 min-w-[16px] h-4 px-1 rounded-full bg-red-500 text-white text-[10px] leading-4 text-center", children: v.badge > 99 ? "99+" : v.badge })
308
+ ] }),
309
+ /* @__PURE__ */ i("div", { className: "mt-1 text-xs text-center g-nav-text transition-colors duration-200", children: v.name })
310
+ ]
311
+ },
312
+ v.key
313
+ );
314
+ }) })
315
+ ]
316
+ }
317
+ )
318
+ ] });
319
+ }, x1 = ({
320
+ actions: e,
321
+ onAction: o,
322
+ direction: r = "top",
323
+ styles: a
324
+ }) => {
325
+ const [n, g] = j(!1), w = r0(null), [u, $] = j({}), C = r0(null);
326
+ o0(() => {
327
+ if (!n) return;
328
+ const h = w.current;
329
+ if (!h) return;
330
+ const t = h.getBoundingClientRect(), F = window.scrollX || window.pageXOffset, y = window.scrollY || window.pageYOffset, _ = 128, D = 8;
331
+ let E = {
332
+ position: "absolute",
333
+ left: t.right - _ + F,
334
+ width: _,
335
+ zIndex: 9999
336
+ };
337
+ if (r === "bottom")
338
+ E.top = t.bottom + D - 12 + y;
339
+ else {
340
+ const H = e.length * 30 + 1;
341
+ E.top = t.top - D + 10 - H + y;
342
+ }
343
+ $(E);
344
+ }, [n, r, e]), o0(() => {
345
+ if (!n) return;
346
+ const h = (F) => {
347
+ w.current && w.current.contains(F.target) || C.current && C.current.contains(F.target) || g(!1);
348
+ }, t = () => g(!1);
349
+ return document.addEventListener("mousedown", h), window.addEventListener("scroll", t, !0), () => {
350
+ document.removeEventListener("mousedown", h), window.removeEventListener("scroll", t, !0);
351
+ };
352
+ }, [n]);
353
+ const c = (a == null ? void 0 : a.theme) || I, f = /* @__PURE__ */ i(
354
+ "div",
355
+ {
356
+ ref: C,
357
+ className: `origin-bottom-right absolute right-0 w-32 rounded-md shadow-lg focus:outline-none border transition-all duration-200 ease-in-out
358
+ ${n ? "opacity-100 translate-y-0 pointer-events-auto scale-100" : "opacity-0 pointer-events-none scale-95"}
359
+ `,
360
+ style: {
361
+ ...u,
362
+ background: c.colors.background,
363
+ color: c.colors.text,
364
+ border: `1px solid ${c.colors.border}`,
365
+ borderRadius: c.space.radius,
366
+ boxShadow: c.colors.shadow,
367
+ minWidth: 128,
368
+ zIndex: 9999
369
+ },
370
+ children: /* @__PURE__ */ i("div", { className: "py-1 px-2", children: e.map((h, t) => h.type === "divider" ? /* @__PURE__ */ i(
371
+ "div",
372
+ {
373
+ className: "my-2 bg-gray-100",
374
+ style: {
375
+ height: 1
376
+ }
377
+ },
378
+ h.key || `divider-${t}`
379
+ ) : /* @__PURE__ */ k(
380
+ "button",
381
+ {
382
+ className: "w-full rounded flex cursor-pointer items-center px-4 py-2 text-sm transition whitespace-nowrap",
383
+ style: {
384
+ color: c.colors.text,
385
+ background: "transparent",
386
+ border: "none",
387
+ // borderRadius: theme.space.radius,
388
+ fontSize: 12
389
+ },
390
+ onClick: (F) => {
391
+ F.stopPropagation(), g(!1), o(h.key), h.onClick && h.onClick();
392
+ },
393
+ type: "button",
394
+ onMouseOver: (F) => F.currentTarget.style.background = c.colors.disabledBackground,
395
+ onMouseOut: (F) => F.currentTarget.style.background = "transparent",
396
+ children: [
397
+ h.icon && /* @__PURE__ */ i("span", { className: "mr-2", children: h.icon }),
398
+ h.label
399
+ ]
400
+ },
401
+ h.key || `action-${t}`
402
+ )) })
403
+ }
404
+ );
405
+ return /* @__PURE__ */ k(u0, { children: [
406
+ /* @__PURE__ */ i(
407
+ "button",
408
+ {
409
+ ref: w,
410
+ className: "card-action-more-btn cursor-pointer! flex items-center justify-center w-9 h-9 rounded-sm transition border-none outline-none",
411
+ style: {
412
+ background: "transparent",
413
+ // 默认透明背景
414
+ color: c.colors.primary,
415
+ borderRadius: c.space.radius
416
+ },
417
+ onClick: (h) => {
418
+ h.stopPropagation(), g((t) => !t);
419
+ },
420
+ tabIndex: 0,
421
+ "aria-label": "\u66F4\u591A\u64CD\u4F5C",
422
+ type: "button",
423
+ children: /* @__PURE__ */ i(_0, { size: 18, className: "text-blue-500" })
424
+ }
425
+ ),
426
+ n && w0(f, document.body)
427
+ ] });
428
+ };
429
+ if (typeof window < "u" && !document.getElementById("card-action-more-btn-style")) {
430
+ const e = document.createElement("style");
431
+ e.id = "card-action-more-btn-style", e.innerHTML = `
432
+ .card-action-more-btn:hover {
433
+ background: #f5f6fa !important;
434
+ color: #222 !important;
435
+ box-shadow: 0 2px 8px 0 rgba(51,112,255,0.06);
436
+ }
437
+ `, document.head.appendChild(e);
438
+ }
439
+ const L0 = (e) => {
440
+ if (e === 0) return "0 B";
441
+ const o = 1024, r = ["B", "KB", "MB", "GB"], a = Math.floor(Math.log(e) / Math.log(o));
442
+ return parseFloat((e / Math.pow(o, a)).toFixed(2)) + " " + r[a];
443
+ }, C0 = () => Math.random().toString(36).substr(2, 9), R0 = (e, o) => {
444
+ const r = { ...e.formData }, a = ["name", "filename", "title", "displayName", "fileName"], n = ["size", "fileSize", "file_size"], g = ["type", "fileType", "mimeType", "contentType"];
445
+ return o.forEach((w) => {
446
+ const u = w.name || w.field;
447
+ u && (a.includes(u.toLowerCase()) && !r[u] && (r[u] = e.name), n.includes(u.toLowerCase()) && !r[u] && (r[u] = L0(e.size)), g.includes(u.toLowerCase()) && !r[u] && (r[u] = e.type));
448
+ }), r;
449
+ }, O0 = async (e, o, r = {}, a = {}, n) => new Promise((g, w) => {
450
+ var f;
451
+ const u = new XMLHttpRequest(), $ = new URL(o);
452
+ if (Object.entries(a).forEach(([h, t]) => {
453
+ $.searchParams.append(h, t);
454
+ }), (f = r["Content-Type"]) == null ? void 0 : f.includes("application/json")) {
455
+ const h = new FileReader();
456
+ h.onload = () => {
457
+ const t = h.result, F = JSON.stringify({
458
+ file: t.split(",")[1]
459
+ // 移除 data:application/octet-stream;base64, 前缀
460
+ });
461
+ c(F);
462
+ }, h.onerror = () => w(new Error("\u6587\u4EF6\u8BFB\u53D6\u5931\u8D25")), h.readAsDataURL(e);
463
+ } else {
464
+ const h = new FormData();
465
+ h.append("tableFile", e), c(h);
466
+ }
467
+ function c(h) {
468
+ u.upload.addEventListener("progress", (t) => {
469
+ if (t.lengthComputable) {
470
+ const F = Math.round(t.loaded / t.total * 100);
471
+ n == null || n(F);
472
+ }
473
+ }), u.addEventListener("load", () => {
474
+ if (u.status >= 200 && u.status < 300)
475
+ try {
476
+ const t = JSON.parse(u.responseText);
477
+ t.data ? g(t.data) : g(u.responseText);
478
+ } catch {
479
+ g(u.responseText);
480
+ }
481
+ else {
482
+ console.log("====xhr.responseText", u.responseText);
483
+ let t = "";
484
+ try {
485
+ const y = JSON.parse(u.responseText);
486
+ y.errorMsg ? t = y.errorMsg : y.message ? t = y.message : y.error ? t = y.error : t = `\u4E0A\u4F20\u5931\u8D25: ${u.status} ${u.statusText}`;
487
+ } catch {
488
+ t = `\u4E0A\u4F20\u5931\u8D25: ${u.status} ${u.statusText}`;
489
+ }
490
+ const F = new Error(t);
491
+ F.response = {
492
+ status: u.status,
493
+ statusText: u.statusText,
494
+ data: u.responseText ? JSON.parse(u.responseText) : null,
495
+ headers: u.getAllResponseHeaders()
496
+ }, w(F);
497
+ }
498
+ }), u.addEventListener("error", () => {
499
+ const t = new Error("\u7F51\u7EDC\u9519\u8BEF\uFF0C\u4E0A\u4F20\u5931\u8D25");
500
+ t.request = u, t.type = "network", w(t);
501
+ }), u.addEventListener("timeout", () => {
502
+ const t = new Error("\u8BF7\u6C42\u8D85\u65F6\uFF0C\u4E0A\u4F20\u5931\u8D25");
503
+ t.request = u, t.type = "timeout", w(t);
504
+ }), u.open("POST", $.toString()), Object.entries(r).forEach(([t, F]) => {
505
+ u.setRequestHeader(t, F);
506
+ }), u.send(h);
507
+ }
508
+ }), j0 = m.div`
509
+ border: 2px dashed ${(e) => {
510
+ var o, r, a, n;
511
+ return e.$isDragOver ? ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.primary) || "#007bff" : ((n = (a = e.$theme) == null ? void 0 : a.colors) == null ? void 0 : n.border) || "#dee2e6";
512
+ }};
513
+ border-radius: 4px;
514
+ background: ${(e) => {
515
+ var o, r, a, n;
516
+ return e.$isDragOver ? `${((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.primary) || "#007bff"}10` : ((n = (a = e.$theme) == null ? void 0 : a.colors) == null ? void 0 : n.background) || "#f8f9fa";
517
+ }};
518
+ padding: 24px;
519
+ text-align: center;
520
+ transition: all 0.2s ease;
521
+ cursor: pointer;
522
+ min-height: 200px;
523
+ display: flex;
524
+ flex-direction: column;
525
+ align-items: center;
526
+ justify-content: center;
527
+ gap: 16px;
528
+
529
+ &:hover {
530
+ border-color: ${(e) => {
531
+ var o, r;
532
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.primary) || "#007bff";
533
+ }};
534
+ background: ${(e) => {
535
+ var o, r;
536
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.background) || "#f8f9fa";
537
+ }};
538
+ }
539
+ `, W0 = m.div`
540
+ color: ${(e) => {
541
+ var o, r;
542
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.primary) || "#007bff";
543
+ }};
544
+ font-size: 48px;
545
+ margin-bottom: 8px;
546
+ `, U0 = m.div`
547
+ color: ${(e) => {
548
+ var o, r;
549
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.text) || "#343a40";
550
+ }};
551
+ font-size: 16px;
552
+ font-weight: 500;
553
+ margin-bottom: 4px;
554
+ `, x0 = m.div`
555
+ color: ${(e) => {
556
+ var o, r, a, n;
557
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.textSecondary) || ((n = (a = e.$theme) == null ? void 0 : a.colors) == null ? void 0 : n.disabledText) || "#6b7280";
558
+ }};
559
+ font-size: 14px;
560
+ `, P0 = m.input`
561
+ display: none;
562
+ `, X0 = m.div`
563
+
564
+ width: 100%;
565
+ max-width: 600px;
566
+ `, q0 = m.div.attrs({
567
+ className: "upload-item"
568
+ })`
569
+ display: flex;
570
+ align-items: center;
571
+ padding: 8px 12px;
572
+ border-bottom: 1px solid ${(e) => {
573
+ var o, r;
574
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.border) || "#dee2e6";
575
+ }};
576
+ border: ${(e) => {
577
+ var o, r, a, n;
578
+ return e.$hasForm ? "none" : e.$status === "error" ? `1px solid ${((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.error) || "#FF0000"}` : `1px solid ${((n = (a = e.$theme) == null ? void 0 : a.colors) == null ? void 0 : n.border) || "#dee2e6"}`;
579
+ }};
580
+ border-radius: 4px;
581
+ background: ${(e) => {
582
+ var o, r;
583
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.background) || "#ffffff";
584
+ }};
585
+ transition: all 0.2s ease;
586
+
587
+ &:hover {
588
+ border-color: ${(e) => {
589
+ var o, r, a, n;
590
+ return e.$hasForm ? "transparent" : e.$status === "error" ? ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.error) || "#FF0000" : ((n = (a = e.$theme) == null ? void 0 : a.colors) == null ? void 0 : n.primary) || "#007bff";
591
+ }};
592
+ }
593
+ `, G0 = m.div`
594
+ color: ${(e) => {
595
+ var o, r;
596
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.primary) || "#007bff";
597
+ }};
598
+ margin-right: 12px;
599
+ flex-shrink: 0;
600
+ `, Y0 = m.div`
601
+ flex: 1;
602
+ min-width: 0;
603
+ `, J0 = m.div`
604
+ color: ${(e) => {
605
+ var o, r;
606
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.text) || "#343a40";
607
+ }};
608
+ font-size: 12px;
609
+ font-weight: 400;
610
+ margin-bottom: 2px;
611
+ white-space: nowrap;
612
+ overflow: hidden;
613
+ text-overflow: ellipsis;
614
+ `, K0 = m.div`
615
+ color: ${(e) => {
616
+ var o, r, a, n;
617
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.textSecondary) || ((n = (a = e.$theme) == null ? void 0 : a.colors) == null ? void 0 : n.disabledText) || "#6b7280";
618
+ }};
619
+ font-size: 10px;
620
+ `, Q0 = m.div`
621
+ width: 100%;
622
+ height: 4px;
623
+ background: ${(e) => {
624
+ var o, r;
625
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.border) || "#dee2e6";
626
+ }};
627
+ border-radius: 2px;
628
+ overflow: hidden;
629
+ margin-top: 8px;
630
+ position: relative;
631
+
632
+ &::after {
633
+ content: '';
634
+ position: absolute;
635
+ top: 0;
636
+ left: 0;
637
+ height: 100%;
638
+ width: ${(e) => e.$progress}%;
639
+ background: ${(e) => {
640
+ var o, r;
641
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.primary) || "#007bff";
642
+ }};
643
+ transition: width 0.3s ease;
644
+ }
645
+ `, e2 = m.div`
646
+ margin-left: 12px;
647
+ flex-shrink: 0;
648
+ color: ${(e) => {
649
+ var o, r, a, n, g, w, u, $, C, c;
650
+ switch (e.$status) {
651
+ case "success":
652
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.success) || "#008000";
653
+ case "error":
654
+ return ((n = (a = e.$theme) == null ? void 0 : a.colors) == null ? void 0 : n.error) || "#FF0000";
655
+ case "uploading":
656
+ return ((w = (g = e.$theme) == null ? void 0 : g.colors) == null ? void 0 : w.primary) || "#007bff";
657
+ case "pending":
658
+ return (($ = (u = e.$theme) == null ? void 0 : u.colors) == null ? void 0 : $.warning) || "#FFA500";
659
+ default:
660
+ return ((c = (C = e.$theme) == null ? void 0 : C.colors) == null ? void 0 : c.disabledText) || "#808080";
661
+ }
662
+ }};
663
+ `, o2 = m.button`
664
+ background: none;
665
+ border: none;
666
+ color: ${(e) => {
667
+ var o, r;
668
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.error) || "#FF0000";
669
+ }};
670
+ cursor: pointer;
671
+ padding: 4px;
672
+ border-radius: 4px;
673
+ margin-left: 8px;
674
+ transition: all 0.2s ease;
675
+
676
+ &:hover {
677
+ background: ${(e) => {
678
+ var o, r;
679
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.error) || "#FF0000";
680
+ }}20;
681
+ }
682
+ `;
683
+ m.button`
684
+ background: ${(e) => {
685
+ var o, r;
686
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.background) || "#f8f9fa";
687
+ }};
688
+ border: 1px solid ${(e) => {
689
+ var o, r;
690
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.border) || "#dee2e6";
691
+ }};
692
+ color: ${(e) => {
693
+ var o, r;
694
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.primary) || "#007bff";
695
+ }};
696
+ padding: 8px 16px;
697
+ border-radius: 4px;
698
+ cursor: pointer;
699
+ display: flex;
700
+ align-items: center;
701
+ gap: 8px;
702
+ font-size: 14px;
703
+ transition: all 0.2s ease;
704
+
705
+ &:hover {
706
+ border-color: ${(e) => {
707
+ var o, r;
708
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.primary) || "#007bff";
709
+ }};
710
+ background: ${(e) => {
711
+ var o, r;
712
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.primary) || "#007bff";
713
+ }}10;
714
+ }
715
+ `;
716
+ m.button`
717
+ background: none;
718
+ border: none;
719
+ color: ${(e) => {
720
+ var o, r;
721
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.primary) || "#007bff";
722
+ }};
723
+ cursor: pointer;
724
+ padding: 4px;
725
+ border-radius: 4px;
726
+ margin-left: 8px;
727
+ transition: all 0.2s ease;
728
+ display: flex;
729
+ align-items: center;
730
+
731
+ &:hover {
732
+ background: ${(e) => {
733
+ var o, r;
734
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.primary) || "#007bff";
735
+ }}20;
736
+ }
737
+ `;
738
+ const r2 = m.div`
739
+ padding: 0px;
740
+ background: ${(e) => {
741
+ var o, r;
742
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.background) || "#f8f9fa";
743
+ }};
744
+
745
+ /* 移除边框,避免与外层容器边框重叠 */
746
+ border: none;
747
+ border-radius: 0;
748
+
749
+ /* 添加上方隔离线 */
750
+ border-top: 1px solid ${(e) => {
751
+ var o, r;
752
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.border) || "#dee2e6";
753
+ }};
754
+
755
+ /* 当有错误时,使用错误状态的隔离线颜色 */
756
+ ${(e) => {
757
+ var o, r;
758
+ return e.$hasError && `
759
+ border-top-color: ${((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.error) || "#FF0000"};
760
+ `;
761
+ }}
762
+
763
+ /* 添加左右内边距,与外层容器对齐 */
764
+ margin: 0 1px;
765
+
766
+ /* 添加背景色区分 */
767
+ background: ${(e) => {
768
+ var o, r;
769
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.listBackground) || "#f9f9f9";
770
+ }};
771
+ `;
772
+ m.input`
773
+ border: 1px solid ${(e) => {
774
+ var o, r;
775
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.border) || "#dee2e6";
776
+ }};
777
+ border-radius: 4px;
778
+ padding: 8px 12px;
779
+ font-size: 14px;
780
+ width: 100%;
781
+ margin-top: 8px;
782
+ background: ${(e) => {
783
+ var o, r;
784
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.background) || "#f8f9fa";
785
+ }};
786
+ color: ${(e) => {
787
+ var o, r;
788
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.text) || "#343a40";
789
+ }};
790
+
791
+ &:focus {
792
+ outline: none;
793
+ border-color: ${(e) => {
794
+ var o, r;
795
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.primary) || "#007bff";
796
+ }};
797
+ }
798
+ `;
799
+ const t2 = m.div`
800
+ /* 基础样式 */
801
+ margin-top: 5px;
802
+ background: ${(e) => {
803
+ var o, r;
804
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.background) || "#f8f9fa";
805
+ }};
806
+ transition: all 0.2s ease;
807
+
808
+ /* 边框逻辑:有表单时显示边框,无表单时不显示 */
809
+ border: ${(e) => {
810
+ var o, r, a, n;
811
+ return e.$hasForm ? e.$status === "error" ? `1px solid ${((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.error) || "#FF0000"}` : `1px solid ${((n = (a = e.$theme) == null ? void 0 : a.colors) == null ? void 0 : n.border) || "#dee2e6"}` : "none";
812
+ }};
813
+
814
+ /* 圆角设置:有表单时设置圆角,无表单时不设置 */
815
+ border-radius: ${(e) => e.$hasForm ? "4px" : "0"};
816
+
817
+ /* 当有表单时的特殊样式 */
818
+ ${(e) => e.$hasForm && `
819
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
820
+
821
+ /* \u786E\u4FDD\u8FB9\u6846\u5B8C\u6574\u5305\u88F9\u6574\u4E2A\u5BB9\u5668 */
822
+ overflow: hidden;
823
+ `}
824
+
825
+ /* 错误状态的特殊样式 */
826
+ ${(e) => {
827
+ var o, r;
828
+ return e.$status === "error" && `
829
+ background: ${((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.error) || "#FF0000"}05;
830
+ `;
831
+ }}
832
+
833
+ /* 样式覆盖 */
834
+ .list-my div{
835
+ padding: 2px 2px !important;
836
+ }
837
+
838
+ :where(.css-dev-only-do-not-override-1v28nim).ant-input-textarea-affix-wrapper.ant-input-affix-wrapper >textarea.ant-input{
839
+ min-height: 32px !important;
840
+ }
841
+ `, b0 = !1, n2 = (e, o) => o != null && o.fileType ? e.startsWith("image/") ? o.fileType.image || /* @__PURE__ */ i(Y, { size: 20 }) : e.includes("document") || e.includes("pdf") || e.includes("text") ? o.fileType.document || /* @__PURE__ */ i(Y, { size: 20 }) : e.includes("spreadsheet") || e.includes("excel") || e.includes("csv") ? o.fileType.spreadsheet || /* @__PURE__ */ i(Y, { size: 20 }) : e.includes("zip") || e.includes("rar") || e.includes("7z") ? o.fileType.archive || /* @__PURE__ */ i(Y, { size: 20 }) : e.startsWith("video/") ? o.fileType.video || /* @__PURE__ */ i(Y, { size: 20 }) : e.startsWith("audio/") ? o.fileType.audio || /* @__PURE__ */ i(Y, { size: 20 }) : o.fileType.default || /* @__PURE__ */ i(Y, { size: 20 }) : /* @__PURE__ */ i(Y, { size: 20 }), a2 = (e, o, r) => {
842
+ var a, n, g, w;
843
+ if (r != null && r.itemStatus)
844
+ switch (e) {
845
+ case "error":
846
+ return r.itemStatus.error || /* @__PURE__ */ i(h0, { size: 20 });
847
+ case "uploading":
848
+ return r.itemStatus.uploading || /* @__PURE__ */ i("span", { style: { fontSize: "12px", color: ((a = o == null ? void 0 : o.colors) == null ? void 0 : a.primary) || "#007bff" }, children: "\u4E0A\u4F20\u4E2D..." });
849
+ case "success":
850
+ return r.itemStatus.success || null;
851
+ case "pending":
852
+ return r.itemStatus.pending || /* @__PURE__ */ i("span", { style: { fontSize: "12px", color: ((n = o == null ? void 0 : o.colors) == null ? void 0 : n.warning) || "#FFA500" }, children: "\u7B49\u5F85\u4E2D" });
853
+ default:
854
+ return null;
855
+ }
856
+ switch (e) {
857
+ case "error":
858
+ return /* @__PURE__ */ i(h0, { size: 20 });
859
+ case "uploading":
860
+ return /* @__PURE__ */ i("span", { style: { fontSize: "12px", color: ((g = o == null ? void 0 : o.colors) == null ? void 0 : g.primary) || "#007bff" }, children: "\u4E0A\u4F20\u4E2D..." });
861
+ case "pending":
862
+ return /* @__PURE__ */ i("span", { style: { fontSize: "12px", color: ((w = o == null ? void 0 : o.colors) == null ? void 0 : w.warning) || "#FFA500" }, children: "\u7B49\u5F85\u4E2D" });
863
+ default:
864
+ return null;
865
+ }
866
+ };
867
+ H0`
868
+ .upload-item-container .upload-item {
869
+ padding: 0px !important;
870
+ }
871
+
872
+ .upload-item-container .list-item {
873
+ padding: 0px !important;
874
+ }
875
+ `;
876
+ const i2 = ({
877
+ item: e,
878
+ index: o,
879
+ theme: r,
880
+ itemForm: a,
881
+ onRemove: n,
882
+ onToggleExpand: g,
883
+ onFormDataChange: w,
884
+ icons: u
885
+ }) => {
886
+ var $;
887
+ return /* @__PURE__ */ k(t2, { $theme: r, $status: e.status, $hasForm: a.length > 0, children: [
888
+ /* @__PURE__ */ k(q0, { $theme: r, $status: e.status, $hasForm: a.length > 0, children: [
889
+ /* @__PURE__ */ i(G0, { $theme: r, children: n2(e.type, u) }),
890
+ /* @__PURE__ */ k(Y0, { children: [
891
+ /* @__PURE__ */ k("div", { className: "flex items-center gap-1 line-clamp-1", children: [
892
+ /* @__PURE__ */ i(J0, { $theme: r, children: e.name }),
893
+ /* @__PURE__ */ i(K0, { $theme: r, children: L0(e.size) })
894
+ ] }),
895
+ e.status === "uploading" && /* @__PURE__ */ i(Q0, { $theme: r, $progress: e.progress }),
896
+ e.status === "error" && e.error && /* @__PURE__ */ i("div", { style: { color: (($ = r == null ? void 0 : r.colors) == null ? void 0 : $.error) || "#FF0000", fontSize: "12px", marginTop: "4px" }, children: typeof e.error == "string" ? e.error : String(e.error) })
897
+ ] }),
898
+ (() => {
899
+ const C = a2(e.status, r, u);
900
+ return C && /* @__PURE__ */ i(e2, { $theme: r, $status: e.status, children: C });
901
+ })(),
902
+ b0,
903
+ /* @__PURE__ */ i(
904
+ o2,
905
+ {
906
+ $theme: r,
907
+ onClick: () => n(e.id),
908
+ title: "\u79FB\u9664\u6587\u4EF6",
909
+ children: /* @__PURE__ */ i(V0, { size: 16 })
910
+ }
911
+ )
912
+ ] }),
913
+ (a.length > 0 || b0) && /* @__PURE__ */ i(
914
+ r2,
915
+ {
916
+ $theme: r,
917
+ $hasError: e.status === "error",
918
+ className: "list-my",
919
+ children: /* @__PURE__ */ i(
920
+ S0,
921
+ {
922
+ formItems: a,
923
+ initialValues: e.formData || {},
924
+ size: "sm",
925
+ formProps: { component: !1 },
926
+ eventsEmit: (C, c) => {
927
+ switch (console.log("FormXviwer Event:", C, c), C) {
928
+ case "form:submit":
929
+ w(e.id, c.values);
930
+ break;
931
+ case "form:change":
932
+ w(e.id, c.values);
933
+ break;
934
+ case "form:fieldChange":
935
+ if (c.field && c.value !== void 0) {
936
+ const f = {
937
+ ...e.formData,
938
+ [c.field]: c.value
939
+ };
940
+ w(e.id, f);
941
+ }
942
+ break;
943
+ case "form:reset":
944
+ w(e.id, {});
945
+ break;
946
+ case "form:validate":
947
+ c.values && w(e.id, c.values);
948
+ break;
949
+ }
950
+ },
951
+ styles: { theme: r },
952
+ style: {
953
+ padding: "0px"
954
+ }
955
+ },
956
+ `form-${e.id}-always`
957
+ )
958
+ }
959
+ )
960
+ ] });
961
+ }, b1 = ({
962
+ multiple: e = !0,
963
+ accept: o = "*/*",
964
+ maxSize: r = 100,
965
+ // 100MB
966
+ maxFiles: a = 10,
967
+ // 预留接口,后续可扩展文件数量限制功能
968
+ autoUpload: n = !0,
969
+ url: g = "http://localhost:3000/upload",
970
+ // 默认上传地址
971
+ headers: w = {},
972
+ // 默认请求头
973
+ queryParams: u = {},
974
+ // 默认查询参数
975
+ itemForm: $ = [],
976
+ styles: C,
977
+ buttons: c = [],
978
+ // 新增:自定义按钮数组
979
+ errorMessages: f = {},
980
+ // 新增:错误提示配置
981
+ icons: h,
982
+ // 新增:图标配置
983
+ eventsEmit: t,
984
+ onRef: F,
985
+ placeholder: y,
986
+ listName: _
987
+ }) => {
988
+ var c0, Q;
989
+ const D = l0(F0, C), E = r0(null), [v, R] = j(!1), [H, M] = j([]), x = U((s) => (s ?? H).map((p) => ({
990
+ id: p.id,
991
+ name: p.name,
992
+ status: p.status,
993
+ error: p.error,
994
+ uploadApiRes: p.uploadApiRes || {},
995
+ formData: p.formData || {},
996
+ file: p.file,
997
+ size: p.size,
998
+ type: p.type
999
+ })), [H]), O = d0(() => {
1000
+ if (!y) return null;
1001
+ if (typeof y == "string") {
1002
+ let s = y;
1003
+ return s = s.replace(/<br\s*\/?>(?=\s*)/gi, `
1004
+ `), s = s.replace(/\s*\/n\s*/gi, `
1005
+ `), s = s.replace(/\\n/g, `
1006
+ `), /* @__PURE__ */ i(
1007
+ x0,
1008
+ {
1009
+ $theme: D.theme || I,
1010
+ style: {
1011
+ textAlign: "center",
1012
+ whiteSpace: "pre-line"
1013
+ },
1014
+ children: s
1015
+ }
1016
+ );
1017
+ }
1018
+ return y;
1019
+ }, [y, D.theme]), T = {
1020
+ noUrl: "\u8BF7\u63D0\u4F9B\u4E0A\u4F20\u63A5\u53E3\u5730\u5740 (url)",
1021
+ uploadFailed: "\u4E0A\u4F20\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5",
1022
+ fileTooLarge: `\u6587\u4EF6\u5927\u5C0F\u4E0D\u80FD\u8D85\u8FC7 ${r}MB`,
1023
+ invalidFileType: "\u4E0D\u652F\u6301\u7684\u6587\u4EF6\u7C7B\u578B"
1024
+ }, L = { ...T, ...f }, V = (s, d) => L[s] ? L[s] : d || T[s], A = (s) => {
1025
+ const d = s / 1048576;
1026
+ return `${Number(d.toFixed(2))}MB`;
1027
+ }, S = U(
1028
+ (s, d) => {
1029
+ const p = r * 1024 * 1024, l = [], N = [];
1030
+ if (s.forEach((b) => {
1031
+ b.size > p ? l.push(b) : N.push(b);
1032
+ }), l.length > 0) {
1033
+ const b = l.map((n0) => `${n0.name}\uFF08${A(n0.size)}\uFF09`).join("\u3001"), e0 = `${V("fileTooLarge")}\uFF1A${b}`;
1034
+ t == null || t("uploader:error", {
1035
+ type: "fileTooLarge",
1036
+ message: e0,
1037
+ files: l.map((n0) => ({ name: n0.name, size: n0.size })),
1038
+ limit: `${r}MB`,
1039
+ data: x()
1040
+ });
1041
+ }
1042
+ const W = Math.max(0, a - d);
1043
+ if (W <= 0) {
1044
+ const b = `\u6700\u591A\u53EA\u80FD\u4E0A\u4F20 ${a} \u4E2A\u6587\u4EF6\uFF0C\u5DF2\u5B58\u5728 ${d} \u4E2A\uFF0C\u65E0\u6CD5\u7EE7\u7EED\u6DFB\u52A0\u3002`;
1045
+ return t == null || t("uploader:error", {
1046
+ type: "tooManyFiles",
1047
+ message: b,
1048
+ currentCount: d,
1049
+ tryAdd: s.length,
1050
+ limit: a,
1051
+ data: x()
1052
+ }), [];
1053
+ }
1054
+ const B = N.slice(0, W);
1055
+ if (N.length > W) {
1056
+ const b = N.length - B.length, e0 = `\u6700\u591A\u53EA\u80FD\u4E0A\u4F20 ${a} \u4E2A\u6587\u4EF6\uFF0C\u672C\u6B21\u4EC5\u63A5\u53D7 ${B.length} \u4E2A\uFF0C\u5FFD\u7565 ${b} \u4E2A\u3002`;
1057
+ t == null || t("uploader:error", {
1058
+ type: "tooManyFiles",
1059
+ message: e0,
1060
+ currentCount: d,
1061
+ accepted: B.length,
1062
+ dropped: b,
1063
+ limit: a,
1064
+ data: x()
1065
+ });
1066
+ }
1067
+ return B;
1068
+ },
1069
+ [r, a, V, t, x]
1070
+ ), X = d0(
1071
+ () => ({
1072
+ // 获取所有上传项
1073
+ getUploadItems: () => H,
1074
+ // 获取所有上传项的数据(包含表单数据)
1075
+ getUploadItemsData: (s) => {
1076
+ let d = H;
1077
+ return s != null && s.includeStatus && (d = d.filter(
1078
+ (p) => s.includeStatus.includes(p.status)
1079
+ )), s != null && s.excludeStatus && (d = d.filter(
1080
+ (p) => !s.excludeStatus.includes(p.status)
1081
+ )), d.map((p) => ({
1082
+ id: p.id,
1083
+ name: p.name,
1084
+ status: p.status,
1085
+ error: p.error,
1086
+ // 新增:错误信息
1087
+ uploadApiRes: p.uploadApiRes || {},
1088
+ formData: p.formData || {},
1089
+ file: p.file,
1090
+ size: p.size,
1091
+ type: p.type
1092
+ }));
1093
+ },
1094
+ // 清空所有上传项
1095
+ clearUploadItems: () => {
1096
+ M([]), t == null || t("uploader:clear", {});
1097
+ },
1098
+ // 新增:设置某个 item 的错误信息
1099
+ setItemError: (s, d) => {
1100
+ M((p) => p.map(
1101
+ (l) => l.id === s ? { ...l, status: "error", error: d } : l
1102
+ )), t == null || t("uploader:errorSet", { itemId: s, error: d, data: x() });
1103
+ },
1104
+ // 新增:清除某个 item 的错误信息
1105
+ clearItemError: (s) => {
1106
+ M((d) => d.map(
1107
+ (p) => p.id === s ? { ...p, status: "pending", error: void 0 } : p
1108
+ )), t == null || t("uploader:errorCleared", { itemId: s, data: x() });
1109
+ },
1110
+ // 添加新的上传项(对外方法也应用限流)
1111
+ addUploadItems: (s) => {
1112
+ const d = S(s, H.length);
1113
+ if (d.length === 0) return;
1114
+ const p = d.map((l) => ({
1115
+ id: C0(),
1116
+ file: l,
1117
+ name: l.name,
1118
+ size: l.size,
1119
+ type: l.type,
1120
+ status: "pending",
1121
+ progress: 0,
1122
+ formData: {},
1123
+ isExpanded: !1
1124
+ }));
1125
+ M((l) => [...l, ...p]), n && z(p);
1126
+ },
1127
+ // 移除指定上传项
1128
+ removeUploadItem: (s) => {
1129
+ M((d) => {
1130
+ const p = d.find((l) => l.id === s);
1131
+ return p && (t == null || t("uploader:remove", {
1132
+ itemId: s,
1133
+ item: p,
1134
+ data: x(d)
1135
+ })), d.filter((l) => l.id !== s);
1136
+ });
1137
+ },
1138
+ // 验证表单数据
1139
+ validateFormData: async () => !(H.some((l) => l.status === "error") || H.some((l) => l.status === "uploading") || !H.some((l) => l.status === "success"))
1140
+ }),
1141
+ [H, n, t, S, x]
1142
+ );
1143
+ o0(() => {
1144
+ F && F(X);
1145
+ }, [X, F]);
1146
+ const K = U(
1147
+ (s) => {
1148
+ if (!s) return;
1149
+ const d = S(Array.from(s), H.length);
1150
+ if (d.length === 0) return;
1151
+ const p = d.map((l) => ({
1152
+ id: C0(),
1153
+ file: l,
1154
+ name: l.name,
1155
+ size: l.size,
1156
+ type: l.type,
1157
+ status: "pending",
1158
+ progress: 0,
1159
+ formData: {},
1160
+ // 每个item独立的表单数据
1161
+ isExpanded: !1
1162
+ }));
1163
+ M((l) => [...l, ...p]), n && z(p);
1164
+ },
1165
+ [n, H.length, S]
1166
+ ), q = U((s) => {
1167
+ s.preventDefault(), R(!0);
1168
+ }, []), G = U((s) => {
1169
+ s.preventDefault(), R(!1);
1170
+ }, []), t0 = U(
1171
+ (s) => {
1172
+ s.preventDefault(), R(!1), K(s.dataTransfer.files);
1173
+ },
1174
+ [K]
1175
+ ), z = U(
1176
+ async (s) => {
1177
+ if (!g) {
1178
+ console.error(V("noUrl"));
1179
+ return;
1180
+ }
1181
+ t == null || t("uploader:start", { items: s, data: x() });
1182
+ for (const d of s)
1183
+ try {
1184
+ M(
1185
+ (B) => B.map((b) => b.id === d.id ? { ...b, status: "uploading" } : b)
1186
+ );
1187
+ const p = await O0(d.file, g, w, u, (B) => {
1188
+ M((b) => b.map((e0) => e0.id === d.id ? { ...e0, progress: B } : e0)), t == null || t("uploader:progress", { item: { ...d, progress: B }, data: x() });
1189
+ }), l = R0(d, $), N = {
1190
+ ...d,
1191
+ status: "success",
1192
+ uploadApiRes: p,
1193
+ progress: 100,
1194
+ formData: l,
1195
+ // 使用自动填充后的表单数据
1196
+ isExpanded: $.length > 0
1197
+ // 上传成功后,如果有表单配置则默认展开
1198
+ }, W = H.map((B) => B.id === d.id ? N : B);
1199
+ M((B) => B.map((b) => b.id === d.id ? N : b)), t == null || t("uploader:success", { item: N, data: x(W) });
1200
+ } catch (p) {
1201
+ let l = "";
1202
+ if (console.log("\u4E0A\u4F20\u9519\u8BEF\u8BE6\u60C5:", p), p && typeof p == "object") {
1203
+ const B = p;
1204
+ if (B.response && B.response.data) {
1205
+ const b = B.response.data;
1206
+ if (console.log("\u9519\u8BEF\u54CD\u5E94\u6570\u636E:", b), b.errorMsg)
1207
+ l = b.errorMsg;
1208
+ else if (b.message)
1209
+ l = b.message;
1210
+ else if (b.error)
1211
+ l = b.error;
1212
+ else if (b.errorCode)
1213
+ switch (b.errorCode) {
1214
+ case "30013":
1215
+ l = "\u767B\u5F55\u5931\u6548\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u91CD\u65B0\u767B\u5F55";
1216
+ break;
1217
+ case "30014":
1218
+ l = "\u6CA1\u6709\u6743\u9650\u6267\u884C\u6B64\u64CD\u4F5C";
1219
+ break;
1220
+ case "30015":
1221
+ l = "\u6587\u4EF6\u683C\u5F0F\u4E0D\u652F\u6301";
1222
+ break;
1223
+ case "30016":
1224
+ l = "\u6587\u4EF6\u5927\u5C0F\u8D85\u51FA\u9650\u5236";
1225
+ break;
1226
+ default:
1227
+ l = `\u64CD\u4F5C\u5931\u8D25 (${b.errorCode})`;
1228
+ }
1229
+ } else if (B.message)
1230
+ try {
1231
+ const b = JSON.parse(B.message);
1232
+ if (console.log("\u89E3\u6790\u7684\u9519\u8BEF\u6570\u636E:", b), b.errorMsg)
1233
+ l = b.errorMsg;
1234
+ else if (b.message)
1235
+ l = b.message;
1236
+ else if (b.error)
1237
+ l = b.error;
1238
+ else if (b.errorCode)
1239
+ switch (b.errorCode) {
1240
+ case "30013":
1241
+ l = "\u767B\u5F55\u5931\u6548\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u91CD\u65B0\u767B\u5F55";
1242
+ break;
1243
+ case "30014":
1244
+ l = "\u6CA1\u6709\u6743\u9650\u6267\u884C\u6B64\u64CD\u4F5C";
1245
+ break;
1246
+ case "30015":
1247
+ l = "\u6587\u4EF6\u683C\u5F0F\u4E0D\u652F\u6301";
1248
+ break;
1249
+ case "30016":
1250
+ l = "\u6587\u4EF6\u5927\u5C0F\u8D85\u51FA\u9650\u5236";
1251
+ break;
1252
+ default:
1253
+ l = `\u64CD\u4F5C\u5931\u8D25 (${b.errorCode})`;
1254
+ }
1255
+ } catch (b) {
1256
+ console.log("\u9519\u8BEF\u6D88\u606F\u89E3\u6790\u5931\u8D25:", b), l = B.message;
1257
+ }
1258
+ }
1259
+ l || (l = V("uploadFailed")), console.log("\u6700\u7EC8\u4F7F\u7528\u7684\u9519\u8BEF\u4FE1\u606F:", l);
1260
+ const N = { ...d, status: "error", error: l }, W = H.map((B) => B.id === d.id ? N : B);
1261
+ M((B) => B.map((b) => b.id === d.id ? N : b)), t == null || t("uploader:error", { item: N, error: l, data: x(W) });
1262
+ }
1263
+ t == null || t("uploader:complete", { items: H, data: x() });
1264
+ },
1265
+ [g, w, u, t, H, $, L.uploadFailed, x]
1266
+ ), Z = U(
1267
+ (s) => {
1268
+ M((d) => {
1269
+ const p = d.find((l) => l.id === s);
1270
+ return p && (t == null || t("uploader:remove", {
1271
+ itemId: s,
1272
+ item: p,
1273
+ data: x(d)
1274
+ })), d.filter((l) => l.id !== s);
1275
+ });
1276
+ },
1277
+ [t, x]
1278
+ ), p0 = U(
1279
+ (s) => {
1280
+ M(
1281
+ (d) => d.map((p) => {
1282
+ if (p.id === s) {
1283
+ const l = {
1284
+ ...p,
1285
+ isExpanded: !p.isExpanded
1286
+ };
1287
+ return console.log("Toggle Expand:", s, l.isExpanded, l.formData), t == null || t("uploader:toggleExpand", {
1288
+ itemId: s,
1289
+ isExpanded: l.isExpanded,
1290
+ item: l,
1291
+ data: x(d)
1292
+ }), l;
1293
+ }
1294
+ return p;
1295
+ })
1296
+ );
1297
+ },
1298
+ [t, x]
1299
+ ), g0 = U(
1300
+ (s, d) => {
1301
+ console.log("FormData Change:", s, d), M((p) => {
1302
+ const l = p.map((N) => {
1303
+ if (N.id === s) {
1304
+ const W = {
1305
+ ...N,
1306
+ formData: { ...d }
1307
+ // 确保数据是深拷贝
1308
+ };
1309
+ return t == null || t("uploader:formDataChange", {
1310
+ itemId: s,
1311
+ formData: W.formData,
1312
+ item: W,
1313
+ data: x(p)
1314
+ }), W;
1315
+ }
1316
+ return N;
1317
+ });
1318
+ return t == null || t("uploader:dataChange", {
1319
+ items: l,
1320
+ changedItemId: s,
1321
+ changedFormData: d,
1322
+ data: x(l)
1323
+ }), l;
1324
+ });
1325
+ },
1326
+ [t, x]
1327
+ );
1328
+ return /* @__PURE__ */ k("div", { children: [
1329
+ /* @__PURE__ */ k(
1330
+ j0,
1331
+ {
1332
+ $theme: D.theme || I,
1333
+ $isDragOver: v,
1334
+ onDragOver: q,
1335
+ onDragLeave: G,
1336
+ onDrop: t0,
1337
+ onClick: () => {
1338
+ var s;
1339
+ E.current && (E.current.value = ""), (s = E.current) == null || s.click();
1340
+ },
1341
+ children: [
1342
+ /* @__PURE__ */ i(W0, { $theme: D.theme || I, children: (h == null ? void 0 : h.dragUpload) || /* @__PURE__ */ i(z0, { size: 48 }) }),
1343
+ O || /* @__PURE__ */ k(u0, { children: [
1344
+ /* @__PURE__ */ i(U0, { $theme: D.theme || I, children: "\u62D6\u62FD\u6587\u4EF6\u5230\u6B64\u5904\u6216\u70B9\u51FB\u9009\u62E9\u6587\u4EF6" }),
1345
+ /* @__PURE__ */ k(x0, { $theme: D.theme || I, children: [
1346
+ "\u652F\u6301 ",
1347
+ o,
1348
+ " \u683C\u5F0F\uFF0C\u5355\u4E2A\u6587\u4EF6\u6700\u5927 ",
1349
+ r,
1350
+ "MB",
1351
+ !g && /* @__PURE__ */ i("div", { style: { color: ((Q = (c0 = D.theme) == null ? void 0 : c0.colors) == null ? void 0 : Q.error) || "#FF0000", marginTop: "8px", fontSize: "12px" }, children: V("noUrl") })
1352
+ ] })
1353
+ ] })
1354
+ ]
1355
+ }
1356
+ ),
1357
+ /* @__PURE__ */ i(
1358
+ P0,
1359
+ {
1360
+ ref: E,
1361
+ type: "file",
1362
+ multiple: e,
1363
+ accept: o,
1364
+ onChange: (s) => {
1365
+ K(s.target.files), s.target.value = "";
1366
+ }
1367
+ }
1368
+ ),
1369
+ H.length > 0 && /* @__PURE__ */ k("div", { children: [
1370
+ /* @__PURE__ */ k("div", { style: {
1371
+ display: "flex",
1372
+ justifyContent: "space-between",
1373
+ alignItems: "center",
1374
+ margin: "6px 0px"
1375
+ }, children: [
1376
+ /* @__PURE__ */ i("div", { className: "text-[14px] font-bold opacity-60", children: _ || "\u4E0A\u4F20\u6587\u4EF6\u5217\u8868" }),
1377
+ c.length > 0 && /* @__PURE__ */ i("div", { style: {
1378
+ display: "flex",
1379
+ gap: "8px",
1380
+ alignItems: "center"
1381
+ }, children: c.map((s, d) => /* @__PURE__ */ i(
1382
+ v0,
1383
+ {
1384
+ mode: s.mode || "default",
1385
+ label: s.label,
1386
+ icon: s.icon,
1387
+ disabled: s.disabled,
1388
+ onClick: s.onClick,
1389
+ styles: C
1390
+ },
1391
+ d
1392
+ )) })
1393
+ ] }),
1394
+ /* @__PURE__ */ i(X0, { $theme: D.theme || I, children: H.map((s, d) => /* @__PURE__ */ i(
1395
+ i2,
1396
+ {
1397
+ item: s,
1398
+ index: d,
1399
+ itemForm: $,
1400
+ onRemove: Z,
1401
+ onToggleExpand: p0,
1402
+ onFormDataChange: g0,
1403
+ theme: D.theme || I,
1404
+ icons: h
1405
+ },
1406
+ s.id
1407
+ )) })
1408
+ ] })
1409
+ ] });
1410
+ }, s2 = m.div`
1411
+ position: fixed;
1412
+ background: ${(e) => {
1413
+ var o, r;
1414
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.background) || "#f8f9fa";
1415
+ }};
1416
+ border: 1px solid ${(e) => {
1417
+ var o, r;
1418
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.border) || "#dee2e6";
1419
+ }};
1420
+ border-radius: ${(e) => {
1421
+ var o, r;
1422
+ return ((r = (o = e.$theme) == null ? void 0 : o.space) == null ? void 0 : r.radius) || "4px";
1423
+ }};
1424
+ box-shadow: ${(e) => {
1425
+ var o, r;
1426
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.shadow) || "0 1px 3px rgba(0, 0, 0, 0.12)";
1427
+ }};
1428
+ z-index: 9999;
1429
+ min-width: ${(e) => e.$buttonRect ? `${e.$buttonRect.width}px` : "auto"};
1430
+ max-width: 300px;
1431
+ overflow: hidden;
1432
+ padding: 4px 0;
1433
+ `, l2 = m.div`
1434
+ padding: 8px 12px;
1435
+ cursor: pointer;
1436
+ display: flex;
1437
+ align-items: center;
1438
+ gap: 8px;
1439
+ font-size: 12px;
1440
+ color: ${(e) => {
1441
+ var o, r;
1442
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.text) || "#343a40";
1443
+ }};
1444
+ background: transparent;
1445
+ transition: background-color 0.2s;
1446
+
1447
+ &:hover {
1448
+ background: ${(e) => {
1449
+ var o, r;
1450
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.disabledBackground) || "#F5F5F5";
1451
+ }};
1452
+ }
1453
+
1454
+ &:first-child {
1455
+ border-top-left-radius: ${(e) => {
1456
+ var o, r;
1457
+ return ((r = (o = e.$theme) == null ? void 0 : o.space) == null ? void 0 : r.radius) || "4px";
1458
+ }};
1459
+ border-top-right-radius: ${(e) => {
1460
+ var o, r;
1461
+ return ((r = (o = e.$theme) == null ? void 0 : o.space) == null ? void 0 : r.radius) || "4px";
1462
+ }};
1463
+ }
1464
+
1465
+ &:last-child {
1466
+ border-bottom-left-radius: ${(e) => {
1467
+ var o, r;
1468
+ return ((r = (o = e.$theme) == null ? void 0 : o.space) == null ? void 0 : r.radius) || "4px";
1469
+ }};
1470
+ border-bottom-right-radius: ${(e) => {
1471
+ var o, r;
1472
+ return ((r = (o = e.$theme) == null ? void 0 : o.space) == null ? void 0 : r.radius) || "4px";
1473
+ }};
1474
+ }
1475
+ `, c2 = m.div`
1476
+ height: 1px;
1477
+ background: ${(e) => {
1478
+ var o, r;
1479
+ return ((r = (o = e.$theme) == null ? void 0 : o.colors) == null ? void 0 : r.border) || "#dee2e6";
1480
+ }};
1481
+ margin: 4px 0;
1482
+ `, m1 = ({
1483
+ mode: e = "default",
1484
+ label: o = "\u9009\u62E9\u9009\u9879",
1485
+ actions: r,
1486
+ styles: a,
1487
+ icon: n,
1488
+ disabled: g = !1,
1489
+ style: w,
1490
+ className: u,
1491
+ children: $,
1492
+ eventEmit: C,
1493
+ ...c
1494
+ }) => {
1495
+ const [f, h] = j(!1), t = r0(null), [F, y] = j(null), [_, D] = j({ top: 0, left: 0 }), E = l0(I, a == null ? void 0 : a.theme);
1496
+ o0(() => {
1497
+ console.log("[DropDownButton] \u7EC4\u4EF6\u6302\u8F7D\uFF0CeventEmit:", C), console.log("[DropDownButton] actions:", r);
1498
+ }, [C, r]);
1499
+ const v = () => {
1500
+ if (!t.current) return;
1501
+ const x = t.current.getBoundingClientRect();
1502
+ y(x);
1503
+ const O = x.bottom + 4, T = x.left;
1504
+ D({ top: O, left: T });
1505
+ };
1506
+ o0(() => {
1507
+ if (!f) return;
1508
+ const x = (L) => {
1509
+ t.current && !t.current.contains(L.target) && h(!1);
1510
+ }, O = () => h(!1), T = () => h(!1);
1511
+ return document.addEventListener("mousedown", x), window.addEventListener("scroll", O, !0), window.addEventListener("resize", T), () => {
1512
+ document.removeEventListener("mousedown", x), window.removeEventListener("scroll", O, !0), window.removeEventListener("resize", T);
1513
+ };
1514
+ }, [f]);
1515
+ const R = (x) => {
1516
+ C && C("dropdown_action", { key: x }), h(!1);
1517
+ }, H = () => {
1518
+ g || (f || v(), h(!f));
1519
+ }, M = () => !f || !F ? null : /* @__PURE__ */ i(
1520
+ s2,
1521
+ {
1522
+ $theme: E.theme || I,
1523
+ $buttonRect: F,
1524
+ style: {
1525
+ top: _.top,
1526
+ left: _.left
1527
+ },
1528
+ children: r.map((x, O) => x.type === "divider" ? /* @__PURE__ */ i(
1529
+ c2,
1530
+ {
1531
+ $theme: E.theme || I
1532
+ },
1533
+ x.key || `divider-${O}`
1534
+ ) : /* @__PURE__ */ k(
1535
+ l2,
1536
+ {
1537
+ $theme: E.theme || I,
1538
+ onMouseDown: (T) => {
1539
+ T.preventDefault(), T.stopPropagation(), R(x.key), x.onClick && x.onClick();
1540
+ },
1541
+ children: [
1542
+ x.icon && /* @__PURE__ */ i("span", { className: "mr-2", children: x.icon }),
1543
+ x.component || x.label
1544
+ ]
1545
+ },
1546
+ x.key || `action-${O}`
1547
+ ))
1548
+ }
1549
+ );
1550
+ return /* @__PURE__ */ k(
1551
+ "div",
1552
+ {
1553
+ ref: t,
1554
+ style: { position: "relative", display: "inline-block" },
1555
+ className: u,
1556
+ children: [
1557
+ /* @__PURE__ */ k(
1558
+ v0,
1559
+ {
1560
+ mode: e,
1561
+ label: o,
1562
+ icon: n,
1563
+ disabled: g,
1564
+ onClick: H,
1565
+ styles: a,
1566
+ style: w,
1567
+ ...c,
1568
+ children: [
1569
+ $,
1570
+ /* @__PURE__ */ i(
1571
+ I0,
1572
+ {
1573
+ size: 14,
1574
+ style: {
1575
+ marginLeft: 4,
1576
+ transition: "transform 0.2s",
1577
+ transform: f ? "rotate(180deg)" : "rotate(0deg)"
1578
+ }
1579
+ }
1580
+ )
1581
+ ]
1582
+ }
1583
+ ),
1584
+ f && w0(M(), document.body)
1585
+ ]
1586
+ }
1587
+ );
1588
+ }, d2 = m.div.withConfig({
1589
+ shouldForwardProp: (e) => !["itemWidth", "itemGap"].includes(e)
1590
+ })`
1591
+ position: relative;
1592
+ display: flex;
1593
+ align-items: flex-end;
1594
+ justify-content: center;
1595
+ padding: 12px 20px;
1596
+ background: rgba(255, 255, 255, 0.18);
1597
+ backdrop-filter: saturate(180%) blur(20px);
1598
+ -webkit-backdrop-filter: saturate(180%) blur(20px);
1599
+ border: 1px solid rgba(255, 255, 255, 0.28);
1600
+ border-radius: 14px;
1601
+ box-shadow: 0 6px 24px rgba(0, 0, 0, 0.25), inset 0 0.5px 0 rgba(255, 255, 255, 0.4);
1602
+ width: fit-content;
1603
+ margin: 0 auto;
1604
+ min-width: ${(e) => e.itemWidth * 2}px;
1605
+ `, u2 = m.div.withConfig({
1606
+ shouldForwardProp: (e) => !["itemWidth", "itemHeight", "itemGap", "isHovered", "magnification"].includes(e)
1607
+ })`
1608
+ position: relative;
1609
+ width: ${(e) => e.itemWidth}px;
1610
+ height: ${(e) => e.itemHeight}px;
1611
+ margin: 0 ${(e) => e.itemGap / 2}px;
1612
+ cursor: pointer;
1613
+ transition: transform 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
1614
+ transform: ${(e) => e.isHovered ? `scale(${e.magnification})` : "scale(1)"};
1615
+ transform-origin: center bottom;
1616
+ z-index: ${(e) => e.isHovered ? 10 : 1};
1617
+ `, p2 = m.img.withConfig({
1618
+ shouldForwardProp: (e) => !["isActive"].includes(e)
1619
+ })`
1620
+ width: 80%;
1621
+ height: 80%;
1622
+ object-fit: contain;
1623
+ border-radius: 8px;
1624
+ transition: all 0.15s ease;
1625
+ filter: ${(e) => e.isActive ? "none" : "grayscale(0.3) brightness(0.8)"};
1626
+
1627
+ &:hover {
1628
+ filter: none;
1629
+ }
1630
+ `, g2 = m.div.withConfig({
1631
+ shouldForwardProp: (e) => !["isActive"].includes(e)
1632
+ })`
1633
+ position: absolute;
1634
+ bottom: -4px;
1635
+ left: 40%;
1636
+ transform: translateX(-50%);
1637
+ width: 6px;
1638
+ height: 6px;
1639
+ background: #007AFF;
1640
+ border-radius: 50%;
1641
+ opacity: ${(e) => e.isActive ? 1 : 0};
1642
+ transition: opacity 0.2s ease;
1643
+ `, h2 = m.div.withConfig({
1644
+ shouldForwardProp: (e) => !["visible"].includes(e)
1645
+ })`
1646
+ position: absolute;
1647
+ bottom: 100%;
1648
+ left: 40%;
1649
+ transform: translateX(-50%) translateY(-8px);
1650
+ background: rgba(0, 0, 0, 0.8);
1651
+ color: white;
1652
+ padding: 4px 8px;
1653
+ border-radius: 4px;
1654
+ font-size: 10px;
1655
+ white-space: nowrap;
1656
+ opacity: ${(e) => e.visible ? 1 : 0};
1657
+ visibility: ${(e) => e.visible ? "visible" : "hidden"};
1658
+ transition: all 0.2s ease;
1659
+ z-index: 1000;
1660
+
1661
+ &::after {
1662
+ content: '';
1663
+ position: absolute;
1664
+ top: 100%;
1665
+ left: 50%;
1666
+ transform: translateX(-50%);
1667
+ border: 4px solid transparent;
1668
+ border-top-color: rgba(0, 0, 0, 0.8);
1669
+ }
1670
+ `, y0 = ({
1671
+ items: e,
1672
+ itemWidth: o = 48,
1673
+ itemHeight: r = 48,
1674
+ magnification: a = 1.2,
1675
+ itemGap: n = 13,
1676
+ activeMode: g = "single",
1677
+ defaultActiveId: w,
1678
+ defaultActiveIds: u = [],
1679
+ onItemClick: $,
1680
+ onActiveChange: C,
1681
+ onActiveChangeMultiple: c,
1682
+ className: f
1683
+ }) => {
1684
+ const [h, t] = j(null), [F, y] = j(null), _ = () => g === "multiple" ? u || [] : w || (e.length > 0 ? e[0].id : null), [D, E] = j(
1685
+ g === "single" ? _() : null
1686
+ ), [v, R] = j(
1687
+ g === "multiple" ? _() : []
1688
+ ), H = r0(null), M = r0([]), x = (L) => {
1689
+ t(L), y(L);
1690
+ const V = M.current[L];
1691
+ V && f0({
1692
+ targets: V,
1693
+ scale: a,
1694
+ duration: 200,
1695
+ easing: "easeOutCubic"
1696
+ });
1697
+ }, O = (L) => {
1698
+ t(null), y(null);
1699
+ const V = M.current[L];
1700
+ V && f0({
1701
+ targets: V,
1702
+ scale: 1,
1703
+ duration: 200,
1704
+ easing: "easeOutCubic"
1705
+ });
1706
+ }, T = (L, V) => {
1707
+ if (g === "single")
1708
+ D !== L.id && (E(L.id), C && C(L.id, L));
1709
+ else {
1710
+ const A = v.includes(L.id) ? v.filter((S) => S !== L.id) : [...v, L.id];
1711
+ if (R(A), c) {
1712
+ const S = e.filter((X) => A.includes(X.id));
1713
+ c(A, S);
1714
+ }
1715
+ }
1716
+ $ && $(L, V), L.onClick && L.onClick();
1717
+ };
1718
+ return o0(() => {
1719
+ M.current = M.current.slice(0, e.length);
1720
+ }, [e.length]), /* @__PURE__ */ i(
1721
+ d2,
1722
+ {
1723
+ ref: H,
1724
+ itemWidth: o,
1725
+ itemGap: n,
1726
+ className: f,
1727
+ children: e.map((L, V) => /* @__PURE__ */ k(
1728
+ u2,
1729
+ {
1730
+ ref: (A) => M.current[V] = A,
1731
+ itemWidth: o,
1732
+ itemHeight: r,
1733
+ itemGap: n,
1734
+ isHovered: h === V,
1735
+ magnification: a,
1736
+ onMouseEnter: () => x(V),
1737
+ onMouseLeave: () => O(V),
1738
+ onClick: () => T(L, V),
1739
+ children: [
1740
+ /* @__PURE__ */ i(
1741
+ p2,
1742
+ {
1743
+ src: L.icon,
1744
+ alt: L.label,
1745
+ isActive: g === "single" ? D === L.id : v.includes(L.id)
1746
+ }
1747
+ ),
1748
+ /* @__PURE__ */ i(g2, { isActive: g === "single" ? D === L.id : v.includes(L.id) }),
1749
+ /* @__PURE__ */ i(h2, { visible: F === V, children: L.label })
1750
+ ]
1751
+ },
1752
+ L.id
1753
+ ))
1754
+ }
1755
+ );
1756
+ };
1757
+ /**
1758
+ * React Router v6.30.1
1759
+ *
1760
+ * Copyright (c) Remix Software Inc.
1761
+ *
1762
+ * This source code is licensed under the MIT license found in the
1763
+ * LICENSE.md file in the root directory of this source tree.
1764
+ *
1765
+ * @license MIT
1766
+ */
1767
+ const f2 = /* @__PURE__ */ P.createContext(null);
1768
+ process.env.NODE_ENV !== "production" && (f2.displayName = "DataRouter");
1769
+ const C2 = /* @__PURE__ */ P.createContext(null);
1770
+ process.env.NODE_ENV !== "production" && (C2.displayName = "DataRouterState");
1771
+ const x2 = /* @__PURE__ */ P.createContext(null);
1772
+ process.env.NODE_ENV !== "production" && (x2.displayName = "Await");
1773
+ const b2 = /* @__PURE__ */ P.createContext(null);
1774
+ process.env.NODE_ENV !== "production" && (b2.displayName = "Navigation");
1775
+ const m2 = /* @__PURE__ */ P.createContext(null);
1776
+ process.env.NODE_ENV !== "production" && (m2.displayName = "Location");
1777
+ const $0 = /* @__PURE__ */ P.createContext({
1778
+ outlet: null,
1779
+ matches: [],
1780
+ isDataRoute: !1
1781
+ });
1782
+ process.env.NODE_ENV !== "production" && ($0.displayName = "Route");
1783
+ const w2 = /* @__PURE__ */ P.createContext(null);
1784
+ process.env.NODE_ENV !== "production" && (w2.displayName = "RouteError");
1785
+ const F2 = /* @__PURE__ */ P.createContext(null);
1786
+ function v2(e) {
1787
+ let o = P.useContext($0).outlet;
1788
+ return o && /* @__PURE__ */ P.createElement(F2.Provider, {
1789
+ value: e
1790
+ }, o);
1791
+ }
1792
+ function L2(e) {
1793
+ return v2(e.context);
1794
+ }
1795
+ new Promise(() => {
1796
+ });
1797
+ const y2 = m.div`
1798
+ display: flex;
1799
+ justify-content: flex-start;
1800
+ align-items: flex-start;
1801
+ margin-left: 20px;
1802
+ flex-direction: column;
1803
+ height: 100%;
1804
+ width: 100%;
1805
+ max-width: 98%;
1806
+ position: relative;
1807
+ `, $2 = m.div`
1808
+ display: flex;
1809
+ height: 38px;
1810
+ z-index: 10;
1811
+ background: transparent;
1812
+ gap: 8px;
1813
+ flex-direction: row;
1814
+ align-items: center;
1815
+ justify-content: flex-start;
1816
+ width: 100%;
1817
+ min-width: 0; /* 确保 flex 子元素可以收缩 */
1818
+ `, k2 = m.button`
1819
+ display: flex;
1820
+ align-items: center;
1821
+ justify-content: center;
1822
+ width: 32px;
1823
+ height: 32px;
1824
+ background: transparent;
1825
+ border: none;
1826
+ cursor: pointer;
1827
+
1828
+ /* 仅让图标在 hover 时上浮,按钮背景保持透明 */
1829
+ svg {
1830
+ transition: transform 0.2s ease;
1831
+ }
1832
+
1833
+ &:hover {
1834
+ background: transparent;
1835
+ }
1836
+
1837
+ &:hover svg {
1838
+ transform: translateY(-1px);
1839
+ }
1840
+
1841
+ &:active svg {
1842
+ transform: translateY(0);
1843
+ }
1844
+ `, D2 = m.div`
1845
+ line-height: 1.4;
1846
+ cursor: pointer;
1847
+ transition: color 0.2s ease;
1848
+ white-space: nowrap;
1849
+ overflow: hidden;
1850
+ text-overflow: ellipsis;
1851
+ max-width: 200px;
1852
+ min-width: 0;
1853
+
1854
+ &:hover {
1855
+ color: #007bff;
1856
+ }
1857
+ `, H2 = m.div`
1858
+ line-height: 1.4;
1859
+ white-space: nowrap;
1860
+ overflow: hidden;
1861
+ text-overflow: ellipsis;
1862
+ flex: 1;
1863
+ min-width: 0;
1864
+ `, m0 = m.div`
1865
+ display: flex;
1866
+ align-items: center;
1867
+ gap: 4px;
1868
+ flex-wrap: nowrap;
1869
+ max-width: 50%;
1870
+ min-width: 0;
1871
+ overflow: hidden;
1872
+ `, i0 = m.div`
1873
+ display: flex;
1874
+ align-items: center;
1875
+ gap: 4px;
1876
+ font-size: 14px;
1877
+ color: ${(e) => e.$isLast ? "#343a40" : "#6c757d"};
1878
+ font-weight: ${(e) => e.$isLast ? "600" : "normal"};
1879
+ cursor: ${(e) => e.$isClickable ? "pointer" : "default"};
1880
+ transition: color 0.2s ease;
1881
+ white-space: nowrap;
1882
+ overflow: hidden;
1883
+ text-overflow: ellipsis;
1884
+ max-width: 120px;
1885
+
1886
+ &:hover {
1887
+ color: ${(e) => e.$isLast ? "#007bff" : "inherit"};
1888
+ }
1889
+ `, s0 = m.div`
1890
+ display: flex;
1891
+ align-items: center;
1892
+ color: #6c757d;
1893
+ margin: 0 2px;
1894
+ `, B2 = m.div`
1895
+ display: flex;
1896
+ flex-direction: column;
1897
+ width: 100%;
1898
+ height: calc(100% - 45px);
1899
+ min-height: 650px;
1900
+ overflow: auto;
1901
+ `, M2 = m.div`
1902
+ position: fixed;
1903
+ bottom: 20px;
1904
+ left: 50%;
1905
+ transform: translateX(-50%);
1906
+ z-index: 1000;
1907
+ `, w1 = ({
1908
+ children: e,
1909
+ goBack: o,
1910
+ title: r,
1911
+ description: a,
1912
+ breadcrumbs: n,
1913
+ dockItems: g,
1914
+ dockActiveMode: w = "single",
1915
+ defaultDockActiveId: u,
1916
+ defaultDockActiveIds: $,
1917
+ styles: C,
1918
+ eventsEmit: c
1919
+ }) => {
1920
+ var R, H, M, x, O, T, L, V;
1921
+ const f = (C == null ? void 0 : C.theme) || I, h = J.useRef(null), t = () => {
1922
+ c != null && c.onGoBack ? c.onGoBack() : o && o();
1923
+ }, F = () => {
1924
+ c != null && c.onTitleClick && c.onTitleClick();
1925
+ }, y = (A, S) => {
1926
+ c != null && c.onBreadcrumbClick ? c.onBreadcrumbClick(A, S) : A.onClick && A.onClick();
1927
+ }, _ = (A, S) => {
1928
+ c != null && c.onDockItemClick ? c.onDockItemClick(A, S) : A.onClick && A.onClick();
1929
+ }, D = (A, S) => {
1930
+ c != null && c.onDockActiveChange && c.onDockActiveChange(A, S);
1931
+ }, E = (A, S) => {
1932
+ c != null && c.onDockActiveChangeMultiple && c.onDockActiveChangeMultiple(A, S);
1933
+ }, v = () => {
1934
+ if (!n || n.length === 0) return null;
1935
+ const A = J.useRef(null), [S, X] = J.useState({ start: 0, end: n.length, showEllipsis: !1 }), K = J.useCallback(() => {
1936
+ if (!A.current || n.length <= 3) {
1937
+ X({ start: 0, end: n.length, showEllipsis: !1 });
1938
+ return;
1939
+ }
1940
+ const Z = A.current.offsetWidth * 0.5;
1941
+ let Q = Math.floor((Z - 30) / (120 + 20));
1942
+ if (Q < 2 && (Q = 2), Q >= n.length) {
1943
+ X({ start: 0, end: n.length, showEllipsis: !1 });
1944
+ return;
1945
+ }
1946
+ const s = 0, d = Math.min(Q - 1, n.length);
1947
+ X({
1948
+ start: s,
1949
+ end: d,
1950
+ showEllipsis: d < n.length - 1
1951
+ });
1952
+ }, [n.length]);
1953
+ if (J.useEffect(() => {
1954
+ K();
1955
+ const z = new ResizeObserver(() => {
1956
+ K();
1957
+ });
1958
+ return A.current && z.observe(A.current), () => {
1959
+ z.disconnect();
1960
+ };
1961
+ }, [K]), n.length <= 3)
1962
+ return /* @__PURE__ */ i(m0, { children: n.map((z, Z) => /* @__PURE__ */ k(J.Fragment, { children: [
1963
+ /* @__PURE__ */ i(
1964
+ i0,
1965
+ {
1966
+ $isLast: Z === n.length - 1,
1967
+ $isClickable: !!(Z < n.length - 1 || z.onClick),
1968
+ onClick: () => y(z, Z),
1969
+ style: {
1970
+ color: Z === n.length - 1 ? f.colors.text : f.colors.textSecondary || f.colors.disabledText
1971
+ },
1972
+ title: z.label,
1973
+ children: z.label
1974
+ }
1975
+ ),
1976
+ Z < n.length - 1 && /* @__PURE__ */ i(s0, { children: /* @__PURE__ */ i(a0, { size: 14 }) })
1977
+ ] }, z.id)) });
1978
+ const { start: q, end: G, showEllipsis: t0 } = S;
1979
+ return /* @__PURE__ */ k(m0, { children: [
1980
+ n.slice(q, G).map((z, Z) => /* @__PURE__ */ k(J.Fragment, { children: [
1981
+ /* @__PURE__ */ i(
1982
+ i0,
1983
+ {
1984
+ $isLast: Z === G - q - 1 && !t0,
1985
+ $isClickable: !!(Z < G - q - 1 || z.onClick),
1986
+ onClick: () => y(z, q + Z),
1987
+ style: {
1988
+ color: Z === G - q - 1 && !t0 ? f.colors.text : f.colors.textSecondary || f.colors.disabledText
1989
+ },
1990
+ title: z.label,
1991
+ children: z.label
1992
+ }
1993
+ ),
1994
+ Z < G - q - 1 && /* @__PURE__ */ i(s0, { children: /* @__PURE__ */ i(a0, { size: 14 }) })
1995
+ ] }, z.id)),
1996
+ t0 && /* @__PURE__ */ k(u0, { children: [
1997
+ /* @__PURE__ */ i(s0, { children: /* @__PURE__ */ i(a0, { size: 14 }) }),
1998
+ /* @__PURE__ */ i(
1999
+ i0,
2000
+ {
2001
+ $isLast: !1,
2002
+ $isClickable: !1,
2003
+ style: {
2004
+ color: f.colors.textSecondary || f.colors.disabledText,
2005
+ cursor: "default",
2006
+ maxWidth: "auto"
2007
+ },
2008
+ title: `${n.slice(G, -1).map((z) => z.label).join(" > ")}`,
2009
+ children: "..."
2010
+ }
2011
+ ),
2012
+ /* @__PURE__ */ i(s0, { children: /* @__PURE__ */ i(a0, { size: 14 }) }),
2013
+ /* @__PURE__ */ i(
2014
+ i0,
2015
+ {
2016
+ $isLast: !0,
2017
+ $isClickable: !!n[n.length - 1].onClick,
2018
+ onClick: () => y(n[n.length - 1], n.length - 1),
2019
+ style: {
2020
+ color: f.colors.text
2021
+ },
2022
+ title: n[n.length - 1].label,
2023
+ children: n[n.length - 1].label
2024
+ }
2025
+ )
2026
+ ] })
2027
+ ] });
2028
+ };
2029
+ return /* @__PURE__ */ k(
2030
+ y2,
2031
+ {
2032
+ style: {
2033
+ background: f.colors.appBackground,
2034
+ color: f.colors.text,
2035
+ fontFamily: ((H = (R = f.fonts) == null ? void 0 : R.body) == null ? void 0 : H.family) || "PingFang SC, Microsoft YaHei, Arial, sans-serif"
2036
+ },
2037
+ children: [
2038
+ (r || a || o || n) && /* @__PURE__ */ k($2, { ref: h, children: [
2039
+ o && /* @__PURE__ */ i(
2040
+ k2,
2041
+ {
2042
+ onClick: t,
2043
+ style: {
2044
+ color: f.colors.primary,
2045
+ borderRadius: f.space.radius || "6px"
2046
+ },
2047
+ title: "\u8FD4\u56DE",
2048
+ children: /* @__PURE__ */ i(E0, { size: 18 })
2049
+ }
2050
+ ),
2051
+ v(),
2052
+ r && /* @__PURE__ */ i(
2053
+ D2,
2054
+ {
2055
+ onClick: F,
2056
+ style: {
2057
+ color: f.colors.text,
2058
+ fontSize: ((x = (M = f.fonts) == null ? void 0 : M.heading) == null ? void 0 : x.size) || "16px",
2059
+ fontWeight: ((T = (O = f.fonts) == null ? void 0 : O.heading) == null ? void 0 : T.weight) || "600"
2060
+ },
2061
+ title: r,
2062
+ children: r
2063
+ }
2064
+ ),
2065
+ a && /* @__PURE__ */ i(
2066
+ H2,
2067
+ {
2068
+ style: {
2069
+ color: f.colors.textSecondary || f.colors.disabledText,
2070
+ opacity: 0.7,
2071
+ fontSize: ((V = (L = f.fonts) == null ? void 0 : L.body) == null ? void 0 : V.size) || "12px"
2072
+ },
2073
+ title: a,
2074
+ children: a
2075
+ }
2076
+ )
2077
+ ] }),
2078
+ /* @__PURE__ */ i(
2079
+ B2,
2080
+ {
2081
+ style: {
2082
+ background: f.colors.dashboardBackground || "transparent",
2083
+ border: `1px solid ${f.colors.border}` || void 0,
2084
+ borderRadius: f.space.radius || void 0,
2085
+ boxShadow: f.colors.shadow || void 0
2086
+ },
2087
+ children: e || /* @__PURE__ */ i(L2, {})
2088
+ }
2089
+ ),
2090
+ g && g.length > 0 && /* @__PURE__ */ i(M2, { children: /* @__PURE__ */ i(
2091
+ y0,
2092
+ {
2093
+ items: g,
2094
+ itemWidth: 48,
2095
+ itemHeight: 48,
2096
+ magnification: 1.5,
2097
+ itemGap: 8,
2098
+ activeMode: w,
2099
+ defaultActiveId: u,
2100
+ defaultActiveIds: $,
2101
+ onItemClick: _,
2102
+ onActiveChange: D,
2103
+ onActiveChangeMultiple: E
2104
+ }
2105
+ ) })
2106
+ ]
2107
+ }
2108
+ );
2109
+ }, A2 = m.div.withConfig({
2110
+ shouldForwardProp: (e) => !["backgroundImage", "backgroundColor"].includes(e)
2111
+ })`
2112
+ position: fixed;
2113
+ top: 0;
2114
+ left: 0;
2115
+ width: 100vw;
2116
+ height: 100vh;
2117
+ background: ${(e) => e.backgroundImage ? `url(${e.backgroundImage}) center/cover no-repeat` : e.backgroundColor || "#1a1a1a"};
2118
+ display: flex;
2119
+ flex-direction: column;
2120
+ overflow: hidden;
2121
+ z-index: 1;
2122
+ `, _2 = m.div`
2123
+ height: 48px;
2124
+ width: 100%;
2125
+ display: flex;
2126
+ align-items: center;
2127
+ justify-content: center;
2128
+ background: transparent;
2129
+ z-index: 10;
2130
+ flex-shrink: 0;
2131
+ `, V2 = m.div`
2132
+ flex: 1;
2133
+ width: 100%;
2134
+ overflow-y: auto;
2135
+ overflow-x: hidden;
2136
+ position: relative;
2137
+ z-index: 2;
2138
+ background: transparent;
2139
+
2140
+ /* 自定义滚动条样式 */
2141
+ &::-webkit-scrollbar {
2142
+ width: 6px;
2143
+ }
2144
+
2145
+ &::-webkit-scrollbar-track {
2146
+ background: rgba(255, 255, 255, 0.1);
2147
+ border-radius: 3px;
2148
+ }
2149
+
2150
+ &::-webkit-scrollbar-thumb {
2151
+ background: rgba(255, 255, 255, 0.3);
2152
+ border-radius: 3px;
2153
+ }
2154
+
2155
+ &::-webkit-scrollbar-thumb:hover {
2156
+ background: rgba(255, 255, 255, 0.5);
2157
+ }
2158
+ `, z2 = m.div`
2159
+ height: 80px;
2160
+ width: 100%;
2161
+ display: flex;
2162
+ align-items: flex-end;
2163
+ justify-content: center;
2164
+ padding: 12px 0;
2165
+ background: transparent;
2166
+ z-index: 10;
2167
+ flex-shrink: 0;
2168
+ `, F1 = ({
2169
+ children: e,
2170
+ backgroundImage: o,
2171
+ backgroundColor: r,
2172
+ header: a,
2173
+ dockItems: n,
2174
+ dockActiveMode: g = "single",
2175
+ defaultDockActiveId: w,
2176
+ defaultDockActiveIds: u,
2177
+ styles: $,
2178
+ eventsEmit: C
2179
+ }) => {
2180
+ var F, y;
2181
+ const c = ($ == null ? void 0 : $.theme) || I, f = (_, D) => {
2182
+ C != null && C.onDockItemClick ? C.onDockItemClick(_, D) : _.onClick && _.onClick();
2183
+ }, h = (_, D) => {
2184
+ C != null && C.onDockActiveChange && C.onDockActiveChange(_, D);
2185
+ }, t = (_, D) => {
2186
+ C != null && C.onDockActiveChangeMultiple && C.onDockActiveChangeMultiple(_, D);
2187
+ };
2188
+ return /* @__PURE__ */ k(
2189
+ A2,
2190
+ {
2191
+ backgroundImage: o,
2192
+ backgroundColor: r,
2193
+ children: [
2194
+ a && /* @__PURE__ */ i(_2, { children: a }),
2195
+ /* @__PURE__ */ i(
2196
+ V2,
2197
+ {
2198
+ style: {
2199
+ color: c.colors.text,
2200
+ fontFamily: ((y = (F = c.fonts) == null ? void 0 : F.body) == null ? void 0 : y.family) || "PingFang SC, Microsoft YaHei, Arial, sans-serif"
2201
+ },
2202
+ children: e
2203
+ }
2204
+ ),
2205
+ n && n.length > 0 && /* @__PURE__ */ i(z2, { children: /* @__PURE__ */ i(
2206
+ y0,
2207
+ {
2208
+ items: n,
2209
+ itemWidth: 48,
2210
+ itemHeight: 48,
2211
+ magnification: 1.5,
2212
+ itemGap: 8,
2213
+ activeMode: g,
2214
+ defaultActiveId: w,
2215
+ defaultActiveIds: u,
2216
+ onItemClick: f,
2217
+ onActiveChange: h,
2218
+ onActiveChangeMultiple: t
2219
+ }
2220
+ ) })
2221
+ ]
2222
+ }
2223
+ );
2224
+ }, I2 = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10.957%201.33301C11.124%201.33307%2011.2853%201.39583%2011.4082%201.50879L12.3174%202.3457L11.6406%203.08105L10.8271%202.33301H3.66699V13.666H12.334V3.71387L11.6436%203.08398L11.6406%203.08203L12.3174%202.3457L13.1172%203.07617C13.2549%203.20229%2013.3338%203.38063%2013.334%203.56738V14L13.3203%2014.1338C13.2583%2014.4376%2012.9891%2014.6659%2012.667%2014.666H3.33398L3.19922%2014.6523C2.93884%2014.599%202.73387%2014.3942%202.68066%2014.1338L2.66699%2014V2C2.66711%201.67798%202.89556%201.40887%203.19922%201.34668L3.33398%201.33301H10.957ZM8.69727%205.36035C9.24139%205.36035%209.7044%205.43727%2010.0781%205.59961L10.1787%205.64355V6.78418L9.93066%206.64746C9.56044%206.44228%209.15313%206.33892%208.70508%206.33887C8.12836%206.33887%207.66998%206.52918%207.31543%206.90527L7.31445%206.90625C6.96154%207.27886%206.77643%207.78905%206.77637%208.45605C6.77641%209.08819%206.94869%209.57219%207.27637%209.92578L7.4043%2010.0488C7.71343%2010.3185%208.1013%2010.456%208.5791%2010.4561C9.10219%2010.4561%209.54903%2010.3382%209.9248%2010.1084L10.1787%209.95312V11.0381L10.0889%2011.085C9.65012%2011.3158%209.10967%2011.4268%208.47559%2011.4268C7.6423%2011.4268%206.9605%2011.1612%206.44922%2010.6191V10.6182C5.93981%2010.0754%205.69145%209.36307%205.69141%208.49902C5.69147%207.57075%205.97064%206.80719%206.54102%206.22656C7.10964%205.64782%207.83309%205.36042%208.69727%205.36035ZM6.3291%206.75488C6.32678%206.75844%206.32457%206.76206%206.32227%206.76562C6.36901%206.69342%206.41884%206.62326%206.47266%206.55566L6.3291%206.75488ZM8.10645%205.57812C8.01275%205.59511%207.92124%205.61615%207.83203%205.6416C8.0108%205.5906%208.19869%205.55704%208.39551%205.54004L8.10645%205.57812Z'%20fill='%23339C43'/%3e%3c/svg%3e", E2 = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M11.29%201.33301C11.457%201.33301%2011.6182%201.39584%2011.7412%201.50879L12.6504%202.3457L11.9736%203.08105L11.1602%202.33301H4V13.666H12.667V3.71387L11.9766%203.08398L11.9736%203.08203L12.6504%202.3457L13.4502%203.07617C13.5879%203.20229%2013.6668%203.38063%2013.667%203.56738V14L13.6533%2014.1338C13.5913%2014.4377%2013.3223%2014.666%2013%2014.666H3.66699L3.53223%2014.6523C3.27187%2014.599%203.06687%2014.3942%203.01367%2014.1338L3%2014V2C3.00012%201.67798%203.22857%201.40887%203.53223%201.34668L3.66699%201.33301H11.29ZM10.5%209C10.7761%209%2011%209.22386%2011%209.5C11%209.77614%2010.7761%2010%2010.5%2010H6.5C6.22386%2010%206%209.77614%206%209.5C6%209.22386%206.22386%209%206.5%209H10.5ZM10.5%207C10.7761%207%2011%207.22386%2011%207.5C11%207.77614%2010.7761%208%2010.5%208H6.5C6.22386%208%206%207.77614%206%207.5C6%207.22386%206.22386%207%206.5%207H10.5Z'%20fill='%23426BFF'/%3e%3c/svg%3e", S2 = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10.957%201.33301C11.124%201.33307%2011.2853%201.39583%2011.4082%201.50879L12.3174%202.3457L11.6406%203.08105L10.8271%202.33301H3.66699V13.666H12.334V3.71387L11.6436%203.08398L11.6406%203.08203L12.3174%202.3457L13.1172%203.07617C13.2549%203.20229%2013.3338%203.38063%2013.334%203.56738V14L13.3203%2014.1338C13.2583%2014.4376%2012.9891%2014.6659%2012.667%2014.666H3.33398L3.19922%2014.6523C2.93884%2014.599%202.73387%2014.3942%202.68066%2014.1338L2.66699%2014V2C2.66711%201.67798%202.89556%201.40887%203.19922%201.34668L3.33398%201.33301H10.957ZM6.71582%205.33301C6.78793%205.33301%206.85481%205.37254%206.89258%205.43652L7.9541%207.25586L9.00488%205.43848C9.04265%205.3745%209.10953%205.33496%209.18164%205.33496H9.79395C9.83089%205.33515%209.86769%205.34564%209.89941%205.36523C9.93101%205.3848%209.95694%205.41285%209.97461%205.44629C9.99224%205.47972%2010.0011%205.5176%2010%205.55566C9.99877%205.59389%209.9876%205.63179%209.96777%205.66406L8.50293%208.01855L9.94531%2010.3359C10.0071%2010.4354%209.97971%2010.5668%209.88379%2010.6309C9.84945%2010.6522%209.81097%2010.665%209.77148%2010.665H9.12793C9.05762%2010.665%208.99086%2010.6274%208.95312%2010.5635L7.88379%208.76172L6.80664%2010.5654C6.76885%2010.6275%206.70384%2010.667%206.63184%2010.667H6.04004C6.00321%2010.6669%205.96628%2010.6561%205.93457%2010.6367C5.90309%2010.6174%205.87717%2010.5897%205.85938%2010.5566C5.84153%2010.5233%205.83209%2010.4854%205.83301%2010.4473C5.83393%2010.4093%205.84491%2010.3721%205.86426%2010.3398L7.2959%207.97949L5.88379%205.66211C5.82198%205.56081%205.85112%205.42939%205.94727%205.36719C5.97982%205.3442%206.01726%205.33302%206.05664%205.33301H6.71582Z'%20fill='%232F913E'/%3e%3c/svg%3e", N2 = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10.957%201.33301C11.124%201.33307%2011.2853%201.39583%2011.4082%201.50879L12.3174%202.3457L11.6406%203.08105L10.8271%202.33301H3.66699V13.666H12.334V3.71387L11.6436%203.08398L11.6406%203.08203L12.3174%202.3457L13.1162%203.07617C13.2543%203.20232%2013.3338%203.3804%2013.334%203.56738V14L13.3203%2014.1338C13.2583%2014.4376%2012.9891%2014.6659%2012.667%2014.666H3.33398L3.19922%2014.6523C2.93884%2014.599%202.73387%2014.3942%202.68066%2014.1338L2.66699%2014V2C2.66711%201.67798%202.89556%201.40887%203.19922%201.34668L3.33398%201.33301H10.957ZM10%208.5C10.2761%208.5%2010.5%208.72386%2010.5%209C10.5%209.27614%2010.2761%209.5%2010%209.5H6C5.72386%209.5%205.5%209.27614%205.5%209C5.5%208.72386%205.72386%208.5%206%208.5H10ZM9%206C9.27614%206%209.5%206.22386%209.5%206.5C9.5%206.77614%209.27614%207%209%207H6C5.72386%207%205.5%206.77614%205.5%206.5C5.5%206.22386%205.72386%206%206%206H9Z'%20fill='%2370706E'/%3e%3c/svg%3e", T2 = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M2%202.66667C2%202.29848%202.29848%202%202.66667%202H8.22957C8.49499%202%208.73512%202.15744%208.84095%202.40085L9.92791%204.90085C10.1193%205.34115%209.79664%205.83333%209.31652%205.83333H2.66667C2.29848%205.83333%202%205.53486%202%205.16667V2.66667Z'%20fill='%23F9B13C'/%3e%3cpath%20d='M3%204.50008C3%204.31599%203.14924%204.16675%203.33333%204.16675H12.6667C12.8508%204.16675%2013%204.31599%2013%204.50008V13.1667C13%2013.3508%2012.8508%2013.5001%2012.6667%2013.5001H3.33333C3.14924%2013.5001%203%2013.3508%203%2013.1667V4.50008Z'%20fill='white'/%3e%3cpath%20d='M2%204.66675H13.3333C13.7015%204.66675%2014%204.96522%2014%205.33341V13.3334C14%2013.7016%2013.7015%2014.0001%2013.3333%2014.0001H2.66667C2.29848%2014.0001%202%2013.7016%202%2013.3334V4.66675Z'%20fill='%23FFCB2E'/%3e%3c/svg%3e", Z2 = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10.957%201.33301C11.124%201.33307%2011.2853%201.39583%2011.4082%201.50879L12.3174%202.3457L11.6406%203.08105L10.8271%202.33301H3.66699V13.666H12.334V3.71387L11.6436%203.08398L11.6406%203.08203L12.3174%202.3457L13.1172%203.07617C13.2549%203.20229%2013.3338%203.38063%2013.334%203.56738V14L13.3203%2014.1338C13.2583%2014.4376%2012.9891%2014.6659%2012.667%2014.666H3.33398L3.19922%2014.6523C2.93884%2014.599%202.73387%2014.3942%202.68066%2014.1338L2.66699%2014V2C2.66711%201.67798%202.89556%201.40887%203.19922%201.34668L3.33398%201.33301H10.957ZM8.95117%208.80469C8.95117%209.45619%208.83123%209.99047%208.58105%2010.3984L8.46582%2010.5654C8.13575%2010.9898%207.68375%2011.2012%207.12109%2011.2012C6.86476%2011.2012%206.64525%2011.1636%206.4668%2011.083L6.4082%2011.0566V10.0342L6.56641%2010.1494C6.70723%2010.2516%206.88862%2010.3066%207.11719%2010.3066C7.40052%2010.3066%207.60577%2010.1907%207.74609%209.95508C7.89129%209.7111%207.9707%209.33189%207.9707%208.80469V4.84961H8.95117V8.80469Z'%20fill='%23FF4D50'/%3e%3c/svg%3e", R2 = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M13%201C13.5523%201%2014%201.44772%2014%202V13H3.5C3.22386%2013%203%2013.2239%203%2013.5C3%2013.7761%203.22386%2014%203.5%2014H14C14%2014.5523%2013.5523%2015%2013%2015H4C2.89543%2015%202%2014.1046%202%2013V3C2%201.89543%202.89543%201%204%201H13ZM5.5%204C5.22386%204%205%204.22386%205%204.5C5%204.77614%205.22386%205%205.5%205H10.5C10.7761%205%2011%204.77614%2011%204.5C11%204.22386%2010.7761%204%2010.5%204H5.5Z'%20fill='%230956E4'/%3e%3c/svg%3e", O2 = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M8%201.5C11.5899%201.5%2014.5%204.41015%2014.5%208C14.5%2011.5899%2011.5899%2014.5%208%2014.5C4.41015%2014.5%201.5%2011.5899%201.5%208C1.5%204.41015%204.41015%201.5%208%201.5ZM8%202.42871C4.92298%202.42871%202.42871%204.92298%202.42871%208C2.42871%2011.077%204.92298%2013.5713%208%2013.5713C11.077%2013.5713%2013.5713%2011.077%2013.5713%208C13.5713%204.92298%2011.077%202.42871%208%202.42871ZM6.19434%207.36523C6.2548%207.30503%206.3537%207.30487%206.41406%207.36523L6.68262%207.63477C6.74275%207.69515%206.74275%207.79314%206.68262%207.85352L6.30371%208.23242C5.89985%208.63677%205.89974%209.29201%206.30371%209.69629C6.70813%2010.1005%207.3642%2010.1006%207.76855%209.69629L8.14746%209.31738C8.20788%209.25744%208.30591%209.25726%208.36621%209.31738L8.63574%209.58691C8.69582%209.64722%208.69567%209.74526%208.63574%209.80566L8.25684%2010.1846C7.58294%2010.8585%206.49045%2010.8582%205.81641%2010.1846C5.14239%209.51056%205.14239%208.41815%205.81641%207.74414L6.19434%207.36523ZM8.27441%207.27246C8.33487%207.21231%208.43282%207.21214%208.49316%207.27246L8.7627%207.54199C8.82268%207.60237%208.82273%207.7004%208.7627%207.76074L7.76074%208.76172C7.70035%208.82211%207.60244%208.82201%207.54199%208.76172L7.27246%208.49316C7.21217%208.43285%207.21239%208.33487%207.27246%208.27441L8.27441%207.27246ZM7.74414%205.81543C8.41813%205.14189%209.51068%205.14173%2010.1846%205.81543C10.8584%206.48938%2010.8583%207.58286%2010.1846%208.25684L9.80566%208.63477C9.74528%208.69515%209.64736%208.69505%209.58691%208.63477L9.31738%208.36621C9.25716%208.30593%209.25744%208.20792%209.31738%208.14746L9.69629%207.76855C10.1004%207.36418%2010.1005%206.70805%209.69629%206.30371C9.29201%205.89962%208.6368%205.89978%208.23242%206.30371L7.85352%206.68262C7.79319%206.74294%207.69523%206.74271%207.63477%206.68262L7.36523%206.41309C7.30484%206.35264%207.30481%206.25476%207.36523%206.19434L7.74414%205.81543Z'%20fill='%2339B83F'/%3e%3c/svg%3e", j2 = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10.957%201.33301C11.124%201.33307%2011.2853%201.39583%2011.4082%201.50879L12.3174%202.3457L11.6406%203.08105L10.8271%202.33301H3.66699V13.666H12.334V3.71387L11.6436%203.08398L11.6406%203.08203L12.3174%202.3457L13.1172%203.07617C13.2549%203.20229%2013.3338%203.38063%2013.334%203.56738V14L13.3203%2014.1338C13.2583%2014.4376%2012.9891%2014.6659%2012.667%2014.666H3.33398L3.19922%2014.6523C2.93884%2014.599%202.73387%2014.3942%202.68066%2014.1338L2.66699%2014V2C2.66711%201.67798%202.89556%201.40887%203.19922%201.34668L3.33398%201.33301H10.957Z'%20fill='%23675FF0'/%3e%3cpath%20d='M5%206.81818C5.12597%206.81818%205.22541%206.79021%205.30497%206.73427C5.38453%206.67832%205.43757%206.6014%205.46409%206.51049C5.49061%206.41259%205.50387%206.25175%205.50387%206.02098C5.50387%205.79021%205.5105%205.63636%205.51713%205.56643C5.53039%205.44755%205.55691%205.35664%205.60331%205.28671C5.64309%205.21678%205.6895%205.16084%205.74917%205.11888C5.80884%205.07692%205.88177%205.04895%205.97459%205.02098C6.03425%205.00699%206.14033%205%206.27956%205H6.41878V5.32867H6.34586C6.17348%205.32867%206.06077%205.35664%206.00773%205.40559C5.9547%205.45454%205.92155%205.57343%205.92155%205.75525C5.92155%206.11888%205.91492%206.34266%205.89503%206.44056C5.86851%206.58741%205.81547%206.6993%205.74254%206.78322C5.66961%206.86014%205.55691%206.93706%205.41105%207C5.59006%207.06294%205.72265%207.16084%205.80221%207.29371C5.88177%207.42657%205.92155%207.63636%205.92155%207.93706C5.92155%208.2028%205.92818%208.36364%205.92818%208.41958C5.94144%208.51049%205.97459%208.58042%206.02762%208.61539C6.08066%208.65035%206.18674%208.67133%206.33923%208.67133H6.41215V9H6.27293C6.11381%209%205.99448%208.99301%205.92818%208.96503C5.8221%208.93007%205.73591%208.88112%205.66961%208.81119C5.60331%208.74126%205.55691%208.65035%205.53702%208.53846C5.51713%208.42657%205.50387%208.25175%205.50387%208C5.50387%207.74825%205.49061%207.58042%205.46409%207.48252C5.43757%207.39161%205.38453%207.30769%205.30497%207.25874C5.22541%207.2028%205.12597%207.17483%205%207.16783V6.81818ZM10.5956%206.06993H7.22099C7.04199%206.06993%206.90276%205.91608%206.90276%205.73427V5.67133C6.90276%205.48252%207.04862%205.33566%207.22099%205.33566H10.5956C10.7746%205.33566%2010.9138%205.48951%2010.9138%205.67133V5.73427C10.9138%205.91608%2010.768%206.06993%2010.5956%206.06993ZM10.5956%207.3986H7.22099C7.04199%207.3986%206.90276%207.24476%206.90276%207.06294V7C6.90276%206.81119%207.04862%206.66434%207.22099%206.66434H10.5956C10.7746%206.66434%2010.9138%206.81818%2010.9138%207V7.06294C10.9138%207.24476%2010.768%207.3986%2010.5956%207.3986ZM10.5956%208.73427H7.22099C7.04199%208.73427%206.90276%208.58042%206.90276%208.3986V8.33566C6.90276%208.14685%207.04862%208%207.22099%208H10.5956C10.7746%208%2010.9138%208.15385%2010.9138%208.33566V8.3986C10.9138%208.58042%2010.768%208.73427%2010.5956%208.73427Z'%20fill='%23675FF0'/%3e%3cpath%20d='M11.5%2010.1265H10.8525V12H10.3677V10.1265H9.72168V9.73096H11.5V10.1265Z'%20fill='%23675FF0'/%3e%3cpath%20d='M7.55811%2012V9.73096H8.3418C9.14746%209.73096%209.55029%2010.0996%209.55029%2010.8369C9.55029%2011.1875%209.4375%2011.4692%209.21191%2011.6821C8.98633%2011.894%208.69531%2012%208.33887%2012H7.55811ZM8.0415%2010.1265V11.6045H8.30518C8.53467%2011.6045%208.71484%2011.5361%208.8457%2011.3994C8.97656%2011.2627%209.04199%2011.0776%209.04199%2010.8442C9.04199%2010.6187%208.97363%2010.4429%208.83691%2010.3169C8.7002%2010.1899%208.52246%2010.1265%208.30371%2010.1265H8.0415Z'%20fill='%23675FF0'/%3e%3cpath%20d='M4.96094%2010.8955C4.96094%2010.54%205.06445%2010.251%205.27148%2010.0283C5.47949%209.80469%205.75391%209.69287%206.09473%209.69287C6.41895%209.69287%206.67969%209.80078%206.87695%2010.0166C7.0752%2010.2324%207.17432%2010.5098%207.17432%2010.8486C7.17432%2011.2021%207.07129%2011.4893%206.86523%2011.71C6.66016%2011.9297%206.39111%2012.0396%206.05811%2012.0396C5.73291%2012.0396%205.46875%2011.9331%205.26562%2011.7202C5.0625%2011.5063%204.96094%2011.2314%204.96094%2010.8955ZM5.46924%2010.8691C5.46924%2011.0898%205.52246%2011.2705%205.62891%2011.4111C5.73535%2011.5508%205.88135%2011.6206%206.06689%2011.6206C6.25635%2011.6206%206.40381%2011.5537%206.50928%2011.4199C6.61475%2011.2852%206.66748%2011.1045%206.66748%2010.8779C6.66748%2010.6416%206.61621%2010.4551%206.51367%2010.3184C6.41113%2010.1807%206.2666%2010.1118%206.08008%2010.1118C5.89062%2010.1118%205.74121%2010.1821%205.63184%2010.3228C5.52344%2010.4634%205.46924%2010.6455%205.46924%2010.8691Z'%20fill='%23675FF0'/%3e%3c/svg%3e", W2 = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10.957%201.33301C11.124%201.33307%2011.2853%201.39583%2011.4082%201.50879L12.3174%202.3457L11.6406%203.08105L10.8271%202.33301H3.66699V13.666H12.334V3.71387L11.6436%203.08398L11.6406%203.08203L12.3174%202.3457L13.1172%203.07617C13.2549%203.20229%2013.3338%203.38063%2013.334%203.56738V14L13.3203%2014.1338C13.2583%2014.4376%2012.9891%2014.6659%2012.667%2014.666H3.33398L3.19922%2014.6523C2.93884%2014.599%202.73387%2014.3942%202.68066%2014.1338L2.66699%2014V2C2.66711%201.67798%202.89556%201.40887%203.19922%201.34668L3.33398%201.33301H10.957ZM7.71191%205.00098C7.95398%205.01182%208.23799%205.16198%208.30664%205.54688C8.40941%206.03464%208.27759%206.57316%208.17285%207.00488L8.16699%207.03027C8.37835%207.57951%208.66991%207.94773%209.11426%208.21875C10.017%208.10683%2010.5964%208.16863%2010.835%208.40332C10.9994%208.56776%2011.0484%208.87519%2010.9473%209.11914C10.8894%209.25831%2010.7357%209.48926%2010.3457%209.48926C9.95189%209.48921%209.37167%209.31384%208.8623%209.04102C8.40175%209.11875%207.8926%209.29278%207.40137%209.45898C7.2966%209.49512%207.18778%209.5311%207.08301%209.56543C6.3969%2010.7429%205.8824%2010.9998%205.56445%2011C5.48865%2011%205.4233%2010.9837%205.36914%2010.9639C5.24449%2010.9169%205.13813%2010.8189%205.07129%2010.6924C5.01181%2010.5787%204.98629%2010.4528%205.00781%2010.3535C5.1144%209.81502%205.83149%209.3878%206.36621%209.11133C6.65343%208.60533%207.04538%207.75431%207.29102%207.16895C7.09599%206.41389%206.98933%205.82132%207.1084%205.3877C7.17162%205.15099%207.42651%204.98835%207.71191%205.00098ZM6.18555%209.77441C5.99948%209.94427%205.76264%2010.1801%205.6416%2010.4023C5.74457%2010.3228%205.93444%2010.1394%206.18555%209.77441ZM7.73926%207.69629C7.60016%208.05769%207.39944%208.55181%207.15918%208.9873C7.23144%208.95839%207.30596%208.9272%207.38184%208.89648C7.69966%208.76643%208.05529%208.61975%208.44531%208.53125C8.17624%208.31804%207.93249%208.03049%207.73926%207.69629ZM9.73535%208.74707C10.3674%208.99599%2010.5185%208.91259%2010.5352%208.90234L10.5391%208.89648H10.543C10.5536%208.88933%2010.5516%208.88347%2010.5498%208.87988C10.544%208.87053%2010.4509%208.71359%209.73535%208.74707ZM7.72852%205.4834C7.67613%205.54303%207.68883%206.05251%207.77734%206.41211C7.8496%206.16635%207.86152%205.68036%207.76758%205.51953C7.75502%205.4962%207.74284%205.48532%207.72852%205.4834Z'%20fill='%23FF4D50'/%3e%3c/svg%3e", U2 = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M14.1777%202.67969C14.4553%202.7361%2014.6644%202.98029%2014.666%203.27441V12.667C14.6659%2012.9891%2014.4376%2013.2583%2014.1338%2013.3203L14%2013.334H2L1.86523%2013.3203C1.56164%2013.2581%201.33312%2012.989%201.33301%2012.667V3.33398C1.33301%203.01196%201.56164%202.74298%201.86523%202.68066L2%202.66699H14.0557L14.1777%202.67969ZM2.33301%2012.334H13.666V3.66699H2.33301V12.334ZM8.78125%207.39355C8.79747%207.40146%208.81204%207.41261%208.82324%207.42676L10.8545%2010.0166C10.915%2010.0939%2010.8601%2010.2078%2010.7607%2010.208H5.28613C5.26386%2010.2081%205.24156%2010.2022%205.22266%2010.1904C5.20374%2010.1786%205.18849%2010.1616%205.17871%2010.1416C5.16897%2010.1216%205.16469%2010.0993%205.16699%2010.0771C5.16933%2010.055%205.17865%2010.0341%205.19238%2010.0166L6.67676%208.12305C6.68788%208.10885%206.70253%208.09775%206.71875%208.08984C6.73488%208.08198%206.75256%208.07818%206.77051%208.07812C6.78858%208.07812%206.807%208.08193%206.82324%208.08984C6.83924%208.09768%206.85322%208.10907%206.86426%208.12305L7.47656%208.90332L8.63379%207.42676C8.64501%207.41261%208.65955%207.40145%208.67578%207.39355C8.69215%207.38564%208.71034%207.38086%208.72852%207.38086C8.74668%207.38087%208.7649%207.38565%208.78125%207.39355ZM6.35547%205.83301C6.51333%205.83301%206.66474%205.89619%206.77637%206.00781C6.888%206.11944%206.95117%206.27084%206.95117%206.42871C6.95111%206.5865%206.88794%206.73803%206.77637%206.84961C6.66476%206.9611%206.51323%207.02344%206.35547%207.02344C6.19768%207.02338%206.04615%206.96118%205.93457%206.84961C5.823%206.73803%205.7608%206.5865%205.76074%206.42871C5.76074%206.27095%205.82308%206.11942%205.93457%206.00781C6.04615%205.89624%206.19768%205.83307%206.35547%205.83301Z'%20fill='%2332A3FF'/%3e%3c/svg%3e", P2 = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10.957%201.33301C11.124%201.33307%2011.2853%201.39583%2011.4082%201.50879L12.3174%202.3457L11.6406%203.08105L10.8271%202.33301H3.66699V13.666H12.334V3.71387L11.6436%203.08398L11.6406%203.08203L12.3174%202.3457L13.1172%203.07617C13.2549%203.20229%2013.3338%203.38063%2013.334%203.56738V14L13.3203%2014.1338C13.2583%2014.4376%2012.9891%2014.6659%2012.667%2014.666H3.33398L3.19922%2014.6523C2.93884%2014.599%202.73387%2014.3942%202.68066%2014.1338L2.66699%2014V2C2.66711%201.67798%202.89556%201.40887%203.19922%201.34668L3.33398%201.33301H10.957ZM6.1543%205.26758H8.1543C9.30194%205.26778%209.9998%206.03334%2010%207.08105C10%208.14247%209.29247%208.89045%208.15039%208.89062H6.93262V10.7275C6.93262%2010.812%206.86371%2010.8816%206.7793%2010.8818H6.1543C6.06968%2010.8818%206%2010.8122%206%2010.7275V5.41992C6.00002%205.33532%206.06969%205.2666%206.1543%205.2666V5.26758ZM6.93262%206.03906V8.12402H7.68066C8.54028%208.12402%209.0498%207.91372%209.0498%207.0791C9.04962%206.41793%208.66339%206.03914%208.01367%206.03906H6.93262Z'%20fill='%23FA8C16'/%3e%3c/svg%3e", X2 = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M1.73633%201.57642C2.53848%200.774265%203.74473%200.714862%204.87207%201.03052C6.02182%201.35245%207.24885%202.09683%208.3125%203.1604C9.37624%204.22414%2010.1204%205.45195%2010.4424%206.60181C10.758%207.72909%2010.6986%208.93446%209.89648%209.73657C9.09439%2010.5387%207.88901%2010.5981%206.76172%2010.2825C5.61186%209.96051%204.38405%209.21632%203.32031%208.15259C2.25674%207.08894%201.51236%205.86191%201.19043%204.71216C0.874775%203.58481%200.934176%202.37857%201.73633%201.57642Z'%20stroke='%234E6EF2'%20stroke-width='1.3'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M6.76172%205.41479C7.88883%205.09929%209.09442%205.15888%209.89648%205.96069C10.6986%206.76284%2010.758%207.96909%2010.4424%209.09644C10.1204%2010.2462%209.37617%2011.4732%208.3125%2012.5369C7.24882%2013.6005%206.02187%2014.3448%204.87207%2014.6667C3.74472%2014.9824%202.53848%2014.923%201.73633%2014.1208C0.934528%2013.3188%200.874922%2012.1132%201.19043%2010.9861C1.51239%209.83623%202.25659%208.60841%203.32031%207.54468C4.38405%206.48096%205.61186%205.73675%206.76172%205.41479Z'%20stroke='%234E6EF2'%20stroke-width='1.3'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M11.1282%201.03052C12.2553%200.715012%2013.4609%200.774612%2014.263%201.57642C15.0651%202.37857%2015.1246%203.58481%2014.8089%204.71216C14.4869%205.86196%2013.7427%207.08892%2012.679%208.15259C11.6153%209.21627%2010.3884%209.96048%209.23859%2010.2825C8.11124%2010.5981%206.90499%2010.5387%206.10284%209.73657C5.30106%208.9345%205.24144%207.72892%205.55695%206.60181C5.8789%205.45195%206.62311%204.22414%207.68683%203.1604C8.75056%202.09668%209.97838%201.35248%2011.1282%201.03052Z'%20stroke='%234E6EF2'%20stroke-width='1.3'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M6.10284%205.96069C6.90499%205.15855%208.11124%205.09914%209.23859%205.41479C10.3883%205.73673%2011.6154%206.48111%2012.679%207.54468C13.7427%208.60841%2014.4869%209.83623%2014.8089%2010.9861C15.1245%2012.1134%2015.0651%2013.3188%2014.263%2014.1208C13.4609%2014.9229%2012.2555%2014.9823%2011.1282%2014.6667C9.97838%2014.3448%208.75055%2013.6006%207.68683%2012.5369C6.62325%2011.4732%205.87888%2010.2462%205.55695%209.09644C5.24129%207.96909%205.3007%206.76284%206.10284%205.96069Z'%20stroke='%234E6EF2'%20stroke-width='1.3'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e", q2 = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10.957%201.33301C11.124%201.33307%2011.2853%201.39583%2011.4082%201.50879L12.3174%202.3457L11.6406%203.08105L10.8271%202.33301H3.66699V13.666H12.334V3.71387L11.6436%203.08398L11.6406%203.08203L12.3174%202.3457L13.1172%203.07617C13.2549%203.20229%2013.3338%203.38063%2013.334%203.56738V14L13.3203%2014.1338C13.2583%2014.4376%2012.9891%2014.6659%2012.667%2014.666H3.33398L3.19922%2014.6523C2.93884%2014.599%202.73387%2014.3942%202.68066%2014.1338L2.66699%2014V2C2.66711%201.67798%202.89556%201.40887%203.19922%201.34668L3.33398%201.33301H10.957ZM9.91406%205.16699C10.0058%205.16721%2010.0799%205.24128%2010.0801%205.33301V5.9707C10.0801%206.06262%2010.0059%206.13748%209.91406%206.1377H8.64648C8.55457%206.1377%208.47971%206.21185%208.47949%206.30371V10.5469C8.47936%2010.6387%208.40525%2010.7127%208.31348%2010.7129H7.59375C7.50178%2010.7129%207.42689%2010.6388%207.42676%2010.5469V6.30371C7.42654%206.21185%207.35168%206.1377%207.25977%206.1377H6C5.90795%206.1377%205.83301%206.06275%205.83301%205.9707V5.33301C5.83323%205.24115%205.90809%205.16699%206%205.16699H9.91406Z'%20fill='%234089FF'/%3e%3c/svg%3e", G2 = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10.9568%201.33276C11.1238%201.33276%2011.2849%201.39651%2011.408%201.50952L12.3171%202.34644L11.6404%203.08179L10.8269%202.33374H3.66675V13.6667H12.3337V3.7146L11.6433%203.08472L11.6404%203.08276L12.3171%202.34644L13.1169%203.0769C13.2546%203.20307%2013.3336%203.38138%2013.3337%203.56812V14.0007L13.3201%2014.1345C13.2578%2014.4382%2012.9888%2014.6667%2012.6667%2014.6667H3.33374L3.19897%2014.6531C2.93875%2014.5998%202.73378%2014.3947%202.68042%2014.1345L2.66675%2014.0007V2.00073C2.66675%201.67864%202.89529%201.40965%203.19897%201.34741L3.33374%201.33276H10.9568ZM6.05542%207.31616C6.12046%207.25114%206.22568%207.25122%206.29077%207.31616L6.58081%207.6062C6.64589%207.67128%206.64588%207.77646%206.58081%207.84155L6.17358%208.24976C5.73807%208.68527%205.73807%209.39139%206.17358%209.8269C6.60912%2010.2622%207.31529%2010.2624%207.75073%209.8269L8.15796%209.4187C8.22305%209.35363%208.32921%209.35362%208.39429%209.4187L8.68433%209.70874C8.74934%209.77383%208.74937%209.88%208.68433%209.94507L8.27612%2010.3523C7.55026%2011.0782%206.37308%2011.0782%205.64722%2010.3523C4.92174%209.62652%204.92177%208.45016%205.64722%207.72437L6.05542%207.31616ZM8.29468%207.21655C8.35977%207.15147%208.46592%207.15147%208.53101%207.21655L8.82104%207.50659C8.88578%207.5716%208.88575%207.67692%208.82104%207.74194L7.74194%208.82104C7.67692%208.88583%207.57163%208.8858%207.50659%208.82104L7.21655%208.53101C7.15147%208.46592%207.15147%208.35977%207.21655%208.29468L8.29468%207.21655ZM7.72339%205.64722C8.44919%204.92141%209.62642%204.92152%2010.3523%205.64722C11.0782%206.37308%2011.0782%207.55026%2010.3523%208.27612L9.94409%208.68433C9.87904%208.74897%209.77371%208.7491%209.70874%208.68433L9.4187%208.39429C9.35361%208.3292%209.35361%208.22305%209.4187%208.15796L9.8269%207.75073C10.2623%207.31533%2010.2621%206.60913%209.8269%206.17358C9.39139%205.73807%208.68527%205.73807%208.24976%206.17358L7.84155%206.58081C7.77647%206.64589%207.67129%206.64588%207.6062%206.58081L7.31616%206.29077C7.25109%206.22568%207.25108%206.1205%207.31616%206.05542L7.72339%205.64722Z'%20fill='%231998FF'/%3e%3c/svg%3e", Y2 = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10.957%201.33301C11.124%201.33307%2011.2853%201.39583%2011.4082%201.50879L12.3174%202.3457L11.6406%203.08105L10.8271%202.33301H3.66699V13.666H12.334V3.71387L11.6436%203.08398L11.6406%203.08203L12.3174%202.3457L13.1172%203.07617C13.2549%203.20229%2013.3338%203.38063%2013.334%203.56738V14L13.3203%2014.1338C13.2583%2014.4376%2012.9891%2014.6659%2012.667%2014.666H3.33398L3.19922%2014.6523C2.93884%2014.599%202.73387%2014.3942%202.68066%2014.1338L2.66699%2014V2C2.66711%201.67798%202.89556%201.40887%203.19922%201.34668L3.33398%201.33301H10.957ZM5.77832%205.83301C5.87031%205.83301%205.94933%205.8983%205.9707%205.98828L6.72852%209.2998L7.54492%205.98535C7.56627%205.89541%207.64507%205.83309%207.73535%205.83301H8.26465C8.35498%205.83305%208.43373%205.89538%208.45508%205.98535L9.27344%209.30664L10.0254%205.98828C10.0467%205.89837%2010.1259%205.83313%2010.2178%205.83301H10.8027C10.8329%205.83312%2010.8626%205.84093%2010.8896%205.85449C10.9167%205.86808%2010.9406%205.88781%2010.959%205.91211C10.9773%205.93632%2010.9901%205.96425%2010.9961%205.99414C11.0021%206.02417%2011.0008%206.05533%2010.9932%206.08496L9.77148%2010.6846C9.74853%2010.7727%209.66957%2010.8328%209.58105%2010.833H9.05859C8.96987%2010.833%208.89019%2010.7712%208.86719%2010.6846L8%207.40137L7.13281%2010.6846C7.10985%2010.7728%207.03094%2010.8328%206.94238%2010.833H6.41602C6.32739%2010.8329%206.24857%2010.7712%206.22559%2010.6846L5.00684%206.08496C4.99909%206.05533%204.99796%206.0242%205.00391%205.99414C5.00985%205.9641%205.02262%205.93543%205.04102%205.91113C5.05939%205.88697%205.08338%205.86703%205.11035%205.85352C5.13734%205.84008%205.1672%205.83306%205.19727%205.83301H5.77832Z'%20fill='%23426BFF'/%3e%3c/svg%3e", J2 = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M11.29%201.33008C11.457%201.33008%2011.6182%201.39298%2011.7412%201.50586L12.6504%202.34277L11.9736%203.07812L11.1602%202.33008H4V13.6631H12.667V3.71094L11.9766%203.08105L11.9736%203.0791L12.6504%202.34277L13.4502%203.07324C13.588%203.19942%2013.6669%203.37761%2013.667%203.56445V13.9971L13.6533%2014.1309C13.5912%2014.4347%2013.3222%2014.6631%2013%2014.6631H3.66699L3.53223%2014.6494C3.27204%2014.5959%203.06685%2014.3912%203.01367%2014.1309L3%2013.9971V1.99707C3%201.67508%203.22869%201.40611%203.53223%201.34375L3.66699%201.33008H11.29ZM7.36816%206.39941C7.65187%206.39959%207.84768%206.57468%207.95605%206.93066L7.52734%207.78809L7.31641%207.35938C7.24417%207.22007%207.15618%207.14756%207.04785%207.14746H6.19043C6.04599%207.14751%206.00977%207.21486%206.08203%207.35938L7.04199%209.38867C7.68737%208.10825%208.05967%207.27658%208.21973%206.93066C8.40557%206.5332%208.62233%206.39943%208.90625%206.39941H10.791C11.1471%206.39948%2011.2705%206.57449%2011.1621%206.93066C11.0536%207.287%2010.5013%208.46426%209.50488%2010.457C9.46874%2010.5241%209.41249%2010.5762%209.35059%2010.6123C9.1441%2010.731%208.88077%2010.6635%208.75684%2010.457L8.22461%209.28027L8.65332%208.42285L9.13379%209.43945L10.1504%207.35938C10.2175%207.21997%2010.1866%207.14746%2010.042%207.14746H8.97852L7.47656%2010.3535C7.43013%2010.5031%207.31627%2010.6168%207.17188%2010.6582C6.93438%2010.7253%206.68626%2010.591%206.61914%2010.3535C5.62275%208.28844%205.09083%207.1111%205.01855%206.82715C4.94645%206.54338%205.09114%206.39941%205.44727%206.39941H7.36816Z'%20fill='%23ED8E35'/%3e%3c/svg%3e", K2 = "data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M2%202.66667C2%202.29848%202.29848%202%202.66667%202H13.3333C13.7015%202%2014%202.29848%2014%202.66667V8H2V2.66667Z'%20fill='%234DC6FF'/%3e%3cpath%20d='M2%208H14V13.3333C14%2013.7015%2013.7015%2014%2013.3333%2014H2.66667C2.29848%2014%202%2013.7015%202%2013.3333V8Z'%20fill='%234DCE84'/%3e%3crect%20x='14'%20y='6'%20width='4'%20height='12'%20transform='rotate(90%2014%206)'%20fill='%23FF5F5A'/%3e%3crect%20x='6'%20y='2'%20width='4'%20height='12'%20fill='%23FCC048'/%3e%3crect%20x='5.66667'%20y='5.66667'%20width='4.66667'%20height='4.66667'%20rx='0.666667'%20stroke='white'%20stroke-width='0.666667'/%3e%3c/svg%3e", Q2 = /* @__PURE__ */ Object.assign({});
2225
+ function e1(e, o, r) {
2226
+ let a = e;
2227
+ for (let n = 0; n < o.length - 1; n += 1) {
2228
+ const g = o[n];
2229
+ (!a[g] || typeof a[g] != "object") && (a[g] = {}), a = a[g];
2230
+ }
2231
+ a[o[o.length - 1]] = r;
2232
+ }
2233
+ function o1(e) {
2234
+ return e.replace(/^\.\//, "").split("?")[0].replace(/\.svg$/i, "").split("/");
2235
+ }
2236
+ function r1(e, o) {
2237
+ const r = J.lazy(() => e().then((n) => ({ default: n.default || n.ReactComponent }))), a = (n) => /* @__PURE__ */ i(A0, { fallback: null, children: /* @__PURE__ */ i(r, { ...n }) });
2238
+ return a.displayName = o, M0(a);
2239
+ }
2240
+ const k0 = {};
2241
+ Object.entries(Q2).forEach(([e, o]) => {
2242
+ const r = o1(e), a = r1(o, `Icon(${r.join("/")})`);
2243
+ e1(k0, r, a);
2244
+ });
2245
+ const t1 = /* @__PURE__ */ Object.assign({ "./rag/csv.svg": I2, "./rag/document.svg": E2, "./rag/excel.svg": S2, "./rag/file.svg": N2, "./rag/folder.svg": T2, "./rag/json.svg": Z2, "./rag/knowledgebase.svg": R2, "./rag/netretrive.svg": O2, "./rag/odf.svg": j2, "./rag/pdf.svg": W2, "./rag/pic.svg": U2, "./rag/ppt.svg": P2, "./rag/think.svg": X2, "./rag/txt.svg": q2, "./rag/url.svg": G2, "./rag/word.svg": Y2, "./rag/wps.svg": J2, "./rag/zip.svg": K2 });
2246
+ function n1(e, o, r) {
2247
+ let a = e;
2248
+ for (let n = 0; n < o.length - 1; n += 1) {
2249
+ const g = o[n];
2250
+ (!a[g] || typeof a[g] != "object") && (a[g] = {}), a = a[g];
2251
+ }
2252
+ a[o[o.length - 1]] = r;
2253
+ }
2254
+ function a1(e) {
2255
+ return e.replace(/^\.\//, "").split("?")[0].replace(/\.svg$/i, "").split("/");
2256
+ }
2257
+ const D0 = {};
2258
+ Object.entries(t1).forEach(([e, o]) => {
2259
+ const r = a1(e);
2260
+ n1(D0, r, o);
2261
+ });
2262
+ function i1(e) {
2263
+ const o = e.split("/").filter(Boolean);
2264
+ let r = k0;
2265
+ for (const a of o) {
2266
+ if (!r) return;
2267
+ r = r[a];
2268
+ }
2269
+ return typeof r == "function" ? r : void 0;
2270
+ }
2271
+ function s1(e) {
2272
+ const o = e.split("/").filter(Boolean);
2273
+ let r = D0;
2274
+ for (const a of o) {
2275
+ if (!r) return;
2276
+ r = r[a];
2277
+ }
2278
+ return typeof r == "string" ? r : void 0;
2279
+ }
2280
+ const v1 = ({ type: e, size: o, ...r }) => {
2281
+ const a = i1(e), n = typeof o < "u" ? { width: o, height: o } : {};
2282
+ if (a)
2283
+ return /* @__PURE__ */ i(a, { ...n, ...r });
2284
+ const g = s1(e);
2285
+ return g ? /* @__PURE__ */ i("img", { src: g, alt: "", ...n, ...r }) : null;
2286
+ };
2287
+ export {
2288
+ v0 as Button,
2289
+ y0 as CustomDock,
2290
+ w1 as DashboardContainer,
2291
+ F1 as DockContainer,
2292
+ m1 as DropDownButton,
2293
+ C1 as GoggleNavbar,
2294
+ v1 as Icon,
2295
+ x1 as MoreDropdown,
2296
+ b1 as Uploader,
2297
+ l0 as deepMergeTheme,
2298
+ I as defaultTheme
2299
+ };