xto-fronted 0.6.3 → 0.8.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 (33) hide show
  1. package/dist/{index-DydABgae.js → index-D73_-C9m.js} +13 -13
  2. package/dist/index-DBjV4kzh.js +249 -0
  3. package/dist/{index-IOKG7Gwo.js → index-DJ1oHe08.js} +973 -918
  4. package/dist/{index-BKO6Hzba.js → index-D_TGEwDg.js} +192 -140
  5. package/dist/{index-BZSZ3bx2.js → index-DauAWAHG.js} +28 -28
  6. package/dist/index.js +1 -1
  7. package/dist/style.css +1 -1
  8. package/package.json +9 -9
  9. package/src/App.vue +4 -4
  10. package/src/assets/styles/_dark.scss +176 -176
  11. package/src/assets/styles/_reset.scss +8 -8
  12. package/src/assets/styles/_root.scss +131 -125
  13. package/src/assets/styles/_variables.scss +17 -17
  14. package/src/assets/styles/index.scss +39 -39
  15. package/src/components/Layout/Footer.vue +1 -1
  16. package/src/components/Layout/Header.vue +59 -60
  17. package/src/components/Layout/MixTopMenu.vue +42 -43
  18. package/src/components/Layout/Sidebar.vue +8 -8
  19. package/src/components/Layout/SidebarMenuItem.vue +2 -2
  20. package/src/components/Layout/Tabs.vue +6 -6
  21. package/src/components/Layout/TopMenu.vue +42 -43
  22. package/src/components/Layout/index.vue +4 -4
  23. package/src/stores/app.ts +26 -2
  24. package/src/style.scss +2 -2
  25. package/src/views/dashboard/index.vue +125 -104
  26. package/src/views/error/403.vue +13 -13
  27. package/src/views/error/404.vue +14 -14
  28. package/src/views/login/index.vue +21 -54
  29. package/src/views/system/menu/index.vue +30 -30
  30. package/src/views/system/role/index.vue +20 -20
  31. package/src/views/system/user/index.vue +23 -23
  32. package/vite.config.ts +4 -1
  33. package/dist/index-BXHwCe22.js +0 -189
@@ -1,53 +1,72 @@
1
- import { x as I, y as Ie, z as ot, A as at, B as nt, C as lt, o as ht, D as rt, E as _t, i as Qe, m as ft, F as gt, G as et, H as yt, I as bt, J as kt } from "./user-77I_qZ8j.js";
2
- import { ref as y, computed as w, watch as ye, defineComponent as ne, resolveComponent as it, openBlock as a, createBlock as B, unref as n, withCtx as M, createElementBlock as c, Fragment as K, renderList as X, createElementVNode as e, toDisplayString as x, createCommentVNode as P, normalizeClass as J, withDirectives as Te, vShow as wt, createVNode as b, createTextVNode as he, onMounted as Ke, onUnmounted as je, vModelText as We, Transition as be, withModifiers as Pe, normalizeStyle as Ne, reactive as qe, createStaticVNode as ze, withKeys as xt, h as Ct } from "vue";
1
+ import { x as E, y as Ie, z as ot, A as at, B as nt, C as lt, o as ht, D as rt, E as _t, i as Qe, m as ft, F as gt, G as et, H as yt, I as bt, J as kt } from "./user-77I_qZ8j.js";
2
+ import { ref as y, computed as w, watch as xe, defineComponent as le, resolveComponent as it, openBlock as a, createBlock as B, unref as l, withCtx as M, createElementBlock as c, Fragment as K, renderList as Z, createElementVNode as e, toDisplayString as x, createCommentVNode as T, normalizeClass as Q, withDirectives as Pe, vShow as wt, createVNode as b, createTextVNode as ye, onMounted as Ke, onUnmounted as je, vModelText as We, Transition as Ce, withModifiers as Te, normalizeStyle as Ne, reactive as qe, createStaticVNode as ze, withKeys as xt, h as Ct } from "vue";
3
3
  import { defineStore as Ee } from "pinia";
4
- import { useRoute as we, useRouter as me, createRouter as He, createWebHistory as Ye } from "vue-router";
4
+ import { useRoute as Le, useRouter as he, createRouter as He, createWebHistory as Ye } from "vue-router";
5
5
  import { SubMenu as Re, MenuItem as Se, Menu as Ge, Tabs as $t, TabPane as Lt } from "@xto/navigation";
6
- import { Icon as U, Button as ke } from "@xto/base";
6
+ import { Icon as U, Button as $e } from "@xto/base";
7
7
  import { Drawer as Xe, Message as Mt } from "@xto/feedback";
8
- import { Form as St, FormItem as De, Input as tt, Checkbox as Nt } from "@xto/form";
8
+ import { Form as St, FormItem as Fe, Input as tt, Checkbox as Nt } from "@xto/form";
9
9
  import { createLocaleProvider as It, getSupportedLocales as Et, useLocale as Ut } from "@xto/core/locale";
10
- const ue = Ee("app", () => {
11
- const t = y(I.get("appName") || "XTO App"), l = y(I.get("indexPath") || "/dashboard"), u = y(I.get("loginPath") || "/login"), s = y(I.get("isDark") || !1), o = y(I.get("theme") || "light"), i = y(I.get("layout") || "sidebar"), h = y(I.get("isCollapsed") || !1), v = y(I.get("showTabs") ?? !0), d = y(I.get("showFooter") ?? !0), g = y(I.get("showBreadcrumb") ?? !0), _ = y(I.get("primaryColor") || "#4F46E5"), f = y([]), m = y([]), j = w(() => s.value ? "dark" : "light"), A = (E) => {
12
- t.value = E, I.set("appName", E);
13
- }, W = (E) => {
14
- l.value = E, I.set("indexPath", E);
15
- }, F = (E) => {
16
- u.value = E, I.set("loginPath", E);
10
+ function zt(t) {
11
+ const n = /^#?([0-9a-f]{6})$/i.exec(t.trim());
12
+ if (!n) return null;
13
+ const u = parseInt(n[1], 16);
14
+ return [u >> 16 & 255, u >> 8 & 255, u & 255];
15
+ }
16
+ const pe = Ee("app", () => {
17
+ const t = y(E.get("appName") || "XTO App"), n = y(E.get("indexPath") || "/dashboard"), u = y(E.get("loginPath") || "/login"), s = y(E.get("isDark") || !1), o = y(E.get("theme") || "light"), i = y(E.get("layout") || "sidebar"), h = y(E.get("isCollapsed") || !1), v = y(E.get("showTabs") ?? !0), d = y(E.get("showFooter") ?? !0), g = y(E.get("showBreadcrumb") ?? !0), _ = y(E.get("primaryColor") || "#4F46E5"), f = y([]), m = y([]), j = w(() => s.value ? "dark" : "light"), D = (N) => {
18
+ t.value = N, E.set("appName", N);
19
+ }, W = (N) => {
20
+ n.value = N, E.set("indexPath", N);
21
+ }, A = (N) => {
22
+ u.value = N, E.set("loginPath", N);
17
23
  }, V = () => {
18
- s.value = !s.value, o.value = s.value ? "dark" : "light", Z();
19
- }, H = (E) => {
20
- o.value = E, s.value = E === "dark", Z();
21
- }, Z = () => {
22
- const E = document.documentElement;
23
- s.value ? E.classList.add("dark") : E.classList.remove("dark"), I.set("isDark", s.value), I.set("theme", o.value);
24
- }, Y = () => {
25
- h.value = !h.value, I.set("isCollapsed", h.value);
26
- }, q = (E) => {
27
- i.value = E, I.set("layout", E);
24
+ s.value = !s.value, o.value = s.value ? "dark" : "light", ee();
25
+ }, G = (N) => {
26
+ o.value = N, s.value = N === "dark", ee();
28
27
  }, ee = () => {
29
- v.value = !v.value, I.set("showTabs", v.value);
30
- }, T = () => {
31
- d.value = !d.value, I.set("showFooter", d.value);
32
- }, N = () => {
33
- g.value = !g.value, I.set("showBreadcrumb", g.value);
34
- }, D = (E) => {
35
- _.value = E, document.documentElement.style.setProperty("--xto-color-primary", E), I.set("primaryColor", E);
36
- }, G = (E) => {
37
- f.value.includes(E) || f.value.push(E);
38
- }, R = (E) => {
39
- const oe = f.value.indexOf(E);
40
- oe > -1 && f.value.splice(oe, 1);
41
- }, se = () => {
28
+ const N = document.documentElement;
29
+ s.value ? N.classList.add("dark") : N.classList.remove("dark"), E.set("isDark", s.value), E.set("theme", o.value);
30
+ }, X = () => {
31
+ h.value = !h.value, E.set("isCollapsed", h.value);
32
+ }, q = (N) => {
33
+ i.value = N, E.set("layout", N);
34
+ }, oe = () => {
35
+ v.value = !v.value, E.set("showTabs", v.value);
36
+ }, P = () => {
37
+ d.value = !d.value, E.set("showFooter", d.value);
38
+ }, I = () => {
39
+ g.value = !g.value, E.set("showBreadcrumb", g.value);
40
+ }, F = (N) => {
41
+ _.value = N;
42
+ const H = document.documentElement;
43
+ H.style.setProperty("--xto-color-primary", N);
44
+ const de = zt(N);
45
+ if (de) {
46
+ const te = (Y, me) => {
47
+ const fe = me ? [255, 255, 255] : [0, 0, 0];
48
+ return `#${de.map((ce, ge) => Math.round(ce + (fe[ge] - ce) * Y)).map((ce) => ce.toString(16).padStart(2, "0")).join("")}`;
49
+ };
50
+ for (let Y = 1; Y <= 9; Y++)
51
+ H.style.setProperty(`--xto-color-primary-light-${Y}`, te(Y * 0.1, !0));
52
+ H.style.setProperty("--xto-color-primary-dark-1", te(0.12, !1)), H.style.setProperty("--xto-color-primary-dark-2", te(0.28, !1)), H.style.setProperty("--xto-color-primary-dark-3", te(0.45, !1)), H.style.setProperty("--xto-color-ring", N);
53
+ }
54
+ E.set("primaryColor", N);
55
+ }, J = (N) => {
56
+ f.value.includes(N) || f.value.push(N);
57
+ }, R = (N) => {
58
+ const H = f.value.indexOf(N);
59
+ H > -1 && f.value.splice(H, 1);
60
+ }, ne = () => {
42
61
  f.value = [];
43
- }, ie = (E) => {
44
- m.value = E;
45
- }, pe = () => {
46
- Z(), _.value !== "#4F46E5" && document.documentElement.style.setProperty("--xto-color-primary", _.value);
62
+ }, ue = (N) => {
63
+ m.value = N;
64
+ }, _e = () => {
65
+ ee(), _.value !== "#4F46E5" && document.documentElement.style.setProperty("--xto-color-primary", _.value);
47
66
  };
48
- return ye(s, Z), {
67
+ return xe(s, ee), {
49
68
  appName: t,
50
- indexPath: l,
69
+ indexPath: n,
51
70
  loginPath: u,
52
71
  isDark: s,
53
72
  theme: o,
@@ -60,27 +79,27 @@ const ue = Ee("app", () => {
60
79
  cachedViews: f,
61
80
  mixSubMenus: m,
62
81
  themeClass: j,
63
- setAppName: A,
82
+ setAppName: D,
64
83
  setIndexPath: W,
65
- setLoginPath: F,
84
+ setLoginPath: A,
66
85
  toggleTheme: V,
67
- toggleCollapse: Y,
68
- setTheme: H,
86
+ toggleCollapse: X,
87
+ setTheme: G,
69
88
  setLayout: q,
70
- toggleTabs: ee,
71
- toggleFooter: T,
72
- toggleBreadcrumb: N,
73
- setPrimaryColor: D,
74
- addCachedView: G,
89
+ toggleTabs: oe,
90
+ toggleFooter: P,
91
+ toggleBreadcrumb: I,
92
+ setPrimaryColor: F,
93
+ addCachedView: J,
75
94
  removeCachedView: R,
76
- clearCachedViews: se,
77
- setMixSubMenus: ie,
78
- initTheme: pe
95
+ clearCachedViews: ne,
96
+ setMixSubMenus: ue,
97
+ initTheme: _e
79
98
  };
80
- }), zt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
99
+ }), Pt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
81
100
  __proto__: null,
82
- useAppStore: ue
83
- }, Symbol.toStringTag, { value: "Module" })), Tt = "menu_list", Pt = "permission_list", Ae = () => `${Tt}_${Ie()}`, Fe = () => `${Pt}_${Ie()}`, Dt = {
101
+ useAppStore: pe
102
+ }, Symbol.toStringTag, { value: "Module" })), Tt = "menu_list", Ft = "permission_list", De = () => `${Tt}_${Ie()}`, Ae = () => `${Ft}_${Ie()}`, Dt = {
84
103
  menuCode: "home",
85
104
  menuName: "首页",
86
105
  menuUrl: "/dashboard",
@@ -90,38 +109,38 @@ const ue = Ee("app", () => {
90
109
  isOut: !1
91
110
  };
92
111
  function ct(t) {
93
- return t.filter((l) => l.type !== 1).map((l) => ({
94
- ...l,
95
- children: l.children ? ct(l.children) : void 0
112
+ return t.filter((n) => n.type !== 1).map((n) => ({
113
+ ...n,
114
+ children: n.children ? ct(n.children) : void 0
96
115
  }));
97
116
  }
98
117
  function At(t) {
99
- const l = [];
118
+ const n = [];
100
119
  function u(s) {
101
120
  s.forEach((o) => {
102
- o.type === 1 && o.menuCode && l.push(o.menuCode), o.children && u(o.children);
121
+ o.type === 1 && o.menuCode && n.push(o.menuCode), o.children && u(o.children);
103
122
  });
104
123
  }
105
- return u(t), l;
124
+ return u(t), n;
106
125
  }
107
- const de = Ee("menu", () => {
108
- const t = y(I.get(Ae()) || []), l = y(I.get(Fe()) || []), u = w(() => t.value.length > 0);
126
+ const ve = Ee("menu", () => {
127
+ const t = y(E.get(De()) || []), n = y(E.get(Ae()) || []), u = w(() => t.value.length > 0);
109
128
  return {
110
129
  menuList: t,
111
- permissions: l,
130
+ permissions: n,
112
131
  hasMenu: u,
113
132
  setMenuList: (h) => {
114
- l.value = At(h), I.set(Fe(), l.value);
133
+ n.value = At(h), E.set(Ae(), n.value);
115
134
  const v = ct(h);
116
- t.value = [Dt, ...v], I.set(Ae(), t.value);
135
+ t.value = [Dt, ...v], E.set(De(), t.value);
117
136
  },
118
137
  clearMenu: () => {
119
- t.value = [], l.value = [], I.remove(Ae()), I.remove(Fe());
138
+ t.value = [], n.value = [], E.remove(De()), E.remove(Ae());
120
139
  },
121
- hasPermission: (h) => Array.isArray(h) ? h.some((v) => l.value.includes(v)) : l.value.includes(h)
140
+ hasPermission: (h) => Array.isArray(h) ? h.some((v) => n.value.includes(v)) : n.value.includes(h)
122
141
  };
123
- }), Be = "user_info", le = Ee("user", () => {
124
- const t = y(I.get(Be)), l = w(() => !!t.value), u = w(() => {
142
+ }), Be = "user_info", re = Ee("user", () => {
143
+ const t = y(E.get(Be)), n = w(() => !!t.value), u = w(() => {
125
144
  var m;
126
145
  return ((m = t.value) == null ? void 0 : m.userId) || "";
127
146
  }), s = w(() => {
@@ -148,7 +167,7 @@ const de = Ee("menu", () => {
148
167
  });
149
168
  return {
150
169
  userInfo: t,
151
- isLoggedIn: l,
170
+ isLoggedIn: n,
152
171
  userId: u,
153
172
  userName: s,
154
173
  departmentName: o,
@@ -158,17 +177,17 @@ const de = Ee("menu", () => {
158
177
  positionName: d,
159
178
  avatar: g,
160
179
  setUserInfo: (m) => {
161
- t.value = m, I.set(Be, m);
180
+ t.value = m, E.set(Be, m);
162
181
  },
163
182
  clearUserInfo: () => {
164
- t.value = null, I.remove(Be);
183
+ t.value = null, E.remove(Be);
165
184
  }
166
185
  };
167
186
  }), Ue = Ee("auth", () => {
168
- const t = y(ot()), l = w(() => at()), u = y(""), s = y(""), o = y(""), i = y("/login");
187
+ const t = y(ot()), n = w(() => at()), u = y(""), s = y(""), o = y(""), i = y("/login");
169
188
  return {
170
189
  token: t,
171
- isLoggedIn: l,
190
+ isLoggedIn: n,
172
191
  baseUrl: u,
173
192
  appId: s,
174
193
  clientId: o,
@@ -192,22 +211,22 @@ const de = Ee("menu", () => {
192
211
  i.value = m;
193
212
  }
194
213
  };
195
- }), Ft = { class: "menu-item__content" }, Bt = { class: "menu-item__icon" }, Vt = {
214
+ }), Bt = { class: "menu-item__content" }, Vt = { class: "menu-item__icon" }, Ot = {
196
215
  key: 1,
197
216
  class: "menu-item__char"
198
- }, Ot = { class: "menu-item__text" }, Rt = { class: "menu-item__content" }, Kt = {
217
+ }, Rt = { class: "menu-item__text" }, Kt = { class: "menu-item__content" }, jt = {
199
218
  key: 0,
200
219
  class: "menu-item__icon"
201
- }, jt = {
220
+ }, Wt = {
202
221
  key: 1,
203
222
  class: "menu-item__char"
204
- }, Wt = { class: "menu-item__text" }, qt = /* @__PURE__ */ ne({
223
+ }, qt = { class: "menu-item__text" }, Ht = /* @__PURE__ */ le({
205
224
  __name: "SidebarMenuItem",
206
225
  props: {
207
226
  menu: {}
208
227
  },
209
228
  setup(t) {
210
- const l = t, u = /* @__PURE__ */ new Set([
229
+ const n = t, u = /* @__PURE__ */ new Set([
211
230
  "arrow-up",
212
231
  "arrow-down",
213
232
  "arrow-left",
@@ -346,64 +365,64 @@ const de = Ee("menu", () => {
346
365
  list: "list",
347
366
  grid: "grid"
348
367
  }[d] || d;
349
- }, o = (d) => d ? d.charAt(0) : "", i = (d) => u.has(d), h = w(() => l.menu.menuId || l.menu.menuCode || l.menu.menuUrl || ""), v = w(() => l.menu.children && l.menu.children.length > 0);
368
+ }, o = (d) => d ? d.charAt(0) : "", i = (d) => u.has(d), h = w(() => n.menu.menuId || n.menu.menuCode || n.menu.menuUrl || ""), v = w(() => n.menu.children && n.menu.children.length > 0);
350
369
  return (d, g) => {
351
370
  const _ = it("SidebarMenuItem", !0);
352
- return v.value ? (a(), B(n(Re), {
371
+ return v.value ? (a(), B(l(Re), {
353
372
  key: 0,
354
373
  index: h.value
355
374
  }, {
356
375
  title: M(() => [
357
- e("span", Ft, [
358
- e("span", Bt, [
359
- i(s(t.menu.icon)) ? (a(), B(n(U), {
376
+ e("span", Bt, [
377
+ e("span", Vt, [
378
+ i(s(t.menu.icon)) ? (a(), B(l(U), {
360
379
  key: 0,
361
380
  name: s(t.menu.icon),
362
381
  size: 16
363
- }, null, 8, ["name"])) : (a(), c("span", Vt, x(o(t.menu.menuName)), 1))
382
+ }, null, 8, ["name"])) : (a(), c("span", Ot, x(o(t.menu.menuName)), 1))
364
383
  ]),
365
- e("span", Ot, x(t.menu.menuName), 1)
384
+ e("span", Rt, x(t.menu.menuName), 1)
366
385
  ])
367
386
  ]),
368
387
  default: M(() => [
369
- (a(!0), c(K, null, X(t.menu.children, (f) => (a(), B(_, {
388
+ (a(!0), c(K, null, Z(t.menu.children, (f) => (a(), B(_, {
370
389
  key: f.menuId || f.menuCode || f.menuUrl,
371
390
  menu: f
372
391
  }, null, 8, ["menu"]))), 128))
373
392
  ]),
374
393
  _: 1
375
- }, 8, ["index"])) : (a(), B(n(Se), {
394
+ }, 8, ["index"])) : (a(), B(l(Se), {
376
395
  key: 1,
377
396
  index: t.menu.menuUrl || h.value
378
397
  }, {
379
398
  default: M(() => [
380
- e("span", Rt, [
381
- t.menu.menuName !== "首页" ? (a(), c("span", Kt, [
382
- i(s(t.menu.icon)) ? (a(), B(n(U), {
399
+ e("span", Kt, [
400
+ t.menu.menuName !== "首页" ? (a(), c("span", jt, [
401
+ i(s(t.menu.icon)) ? (a(), B(l(U), {
383
402
  key: 0,
384
403
  name: s(t.menu.icon),
385
404
  size: 16
386
- }, null, 8, ["name"])) : (a(), c("span", jt, x(o(t.menu.menuName)), 1))
387
- ])) : P("", !0),
388
- e("span", Wt, x(t.menu.menuName), 1)
405
+ }, null, 8, ["name"])) : (a(), c("span", Wt, x(o(t.menu.menuName)), 1))
406
+ ])) : T("", !0),
407
+ e("span", qt, x(t.menu.menuName), 1)
389
408
  ])
390
409
  ]),
391
410
  _: 1
392
411
  }, 8, ["index"]));
393
412
  };
394
413
  }
395
- }), re = (t, l) => {
414
+ }), ie = (t, n) => {
396
415
  const u = t.__vccOpts || t;
397
- for (const [s, o] of l)
416
+ for (const [s, o] of n)
398
417
  u[s] = o;
399
418
  return u;
400
- }, Ht = /* @__PURE__ */ re(qt, [["__scopeId", "data-v-78c62b56"]]), Yt = {
419
+ }, Yt = /* @__PURE__ */ ie(Ht, [["__scopeId", "data-v-03a4d35c"]]), Gt = {
401
420
  key: 0,
402
421
  class: "sidebar__logo"
403
- }, Gt = ["src"], Xt = {
422
+ }, Xt = ["src"], Jt = {
404
423
  key: 1,
405
424
  class: "sidebar__user"
406
- }, Jt = { class: "sidebar__user-info" }, Zt = { class: "sidebar__user-name" }, Qt = { class: "sidebar__user-role" }, Ve = "sidebar_opened_menus", Oe = "sidebar_menu_list_key", es = /* @__PURE__ */ ne({
425
+ }, Zt = { class: "sidebar__user-info" }, Qt = { class: "sidebar__user-name" }, es = { class: "sidebar__user-role" }, Ve = "sidebar_opened_menus", Oe = "sidebar_menu_list_key", ts = /* @__PURE__ */ le({
407
426
  __name: "Sidebar",
408
427
  props: {
409
428
  menuList: { default: () => [] },
@@ -412,150 +431,149 @@ const de = Ee("menu", () => {
412
431
  logoSrc: { default: "/vite.svg" }
413
432
  },
414
433
  setup(t) {
415
- const l = t, u = we(), s = me(), o = de(), i = le(), h = Ue(), v = ue(), d = w(() => l.menuList.length > 0 ? l.menuList : o.menuList), g = w(() => v.isCollapsed), _ = w(() => u.path), f = (T) => T.menuId || T.menuCode || T.menuUrl || "", m = () => d.value.map(f).join(","), j = I.get(Oe) || "", A = m(), W = j === A ? I.get(Ve) || [] : [], F = y(W);
416
- ye(F, (T) => {
417
- I.set(Ve, T), I.set(Oe, m());
434
+ const n = t, u = Le(), s = he(), o = ve(), i = re(), h = Ue(), v = pe(), d = w(() => n.menuList.length > 0 ? n.menuList : o.menuList), g = w(() => v.isCollapsed), _ = w(() => u.path), f = (P) => P.menuId || P.menuCode || P.menuUrl || "", m = () => d.value.map(f).join(","), j = E.get(Oe) || "", D = m(), W = j === D ? E.get(Ve) || [] : [], A = y(W);
435
+ xe(A, (P) => {
436
+ E.set(Ve, P), E.set(Oe, m());
418
437
  }, { deep: !0 });
419
- const V = (T, N, D = []) => {
420
- var G;
421
- for (const R of T) {
422
- if (R.menuUrl && (N === R.menuUrl || N.startsWith(R.menuUrl + "/")))
423
- return [...D, f(R)];
424
- if ((G = R.children) != null && G.length) {
425
- const se = V(R.children, N, [...D, f(R)]);
426
- if (se) return se;
438
+ const V = (P, I, F = []) => {
439
+ var J;
440
+ for (const R of P) {
441
+ if (R.menuUrl && (I === R.menuUrl || I.startsWith(R.menuUrl + "/")))
442
+ return [...F, f(R)];
443
+ if ((J = R.children) != null && J.length) {
444
+ const ne = V(R.children, I, [...F, f(R)]);
445
+ if (ne) return ne;
427
446
  }
428
447
  }
429
448
  return null;
430
449
  };
431
- ye([() => u.path, d], ([T, N]) => {
432
- if (N.length > 0) {
433
- const D = V(N, T);
434
- if (D) {
435
- const G = D.slice(0, -1), R = /* @__PURE__ */ new Set([...F.value, ...G]);
436
- F.value = Array.from(R);
450
+ xe([() => u.path, d], ([P, I]) => {
451
+ if (I.length > 0) {
452
+ const F = V(I, P);
453
+ if (F) {
454
+ const J = F.slice(0, -1), R = /* @__PURE__ */ new Set([...A.value, ...J]);
455
+ A.value = Array.from(R);
437
456
  }
438
457
  }
439
- }, { immediate: !0 }), ye(d, (T, N) => {
440
- T !== N && (F.value = [], I.set(Ve, []), I.set(Oe, m()));
458
+ }, { immediate: !0 }), xe(d, (P, I) => {
459
+ P !== I && (A.value = [], E.set(Ve, []), E.set(Oe, m()));
441
460
  }, { immediate: !1 });
442
- const H = w(() => v.isDark ? "#111A2C" : "#fff"), Z = w(() => v.isDark ? "#CBD5E1" : "#334155"), Y = w(() => v.isDark ? "#4C8DFF" : "#1D4ED8"), q = (T) => {
443
- T && T !== u.path && s.push(T);
444
- }, ee = () => {
461
+ const G = w(() => v.isDark ? "#161B21" : "#fff"), ee = w(() => v.isDark ? "#D9DCE1" : "#4E5566"), X = w(() => v.isDark ? "#818CF8" : "#4F46E5"), q = (P) => {
462
+ P && P !== u.path && s.push(P);
463
+ }, oe = () => {
445
464
  h.logout(), i.clearUserInfo(), o.clearMenu(), s.push(v.loginPath);
446
465
  };
447
- return (T, N) => (a(), c("div", {
448
- class: J(["sidebar", { "sidebar--collapsed": g.value }])
466
+ return (P, I) => (a(), c("div", {
467
+ class: Q(["sidebar", { "sidebar--collapsed": g.value }])
449
468
  }, [
450
- l.showLogo ? (a(), c("div", Yt, [
469
+ n.showLogo ? (a(), c("div", Gt, [
451
470
  e("img", {
452
- src: l.logoSrc,
471
+ src: n.logoSrc,
453
472
  alt: "Logo",
454
473
  class: "sidebar__logo-img"
455
- }, null, 8, Gt),
456
- Te(e("span", { class: "sidebar__logo-text" }, x(n(v).appName), 513), [
474
+ }, null, 8, Xt),
475
+ Pe(e("span", { class: "sidebar__logo-text" }, x(l(v).appName), 513), [
457
476
  [wt, !g.value]
458
477
  ])
459
- ])) : P("", !0),
460
- b(n(Ge), {
478
+ ])) : T("", !0),
479
+ b(l(Ge), {
461
480
  modelValue: _.value,
462
- "onUpdate:modelValue": N[0] || (N[0] = (D) => _.value = D),
463
- openeds: F.value,
464
- "onUpdate:openeds": N[1] || (N[1] = (D) => F.value = D),
481
+ "onUpdate:modelValue": I[0] || (I[0] = (F) => _.value = F),
482
+ openeds: A.value,
483
+ "onUpdate:openeds": I[1] || (I[1] = (F) => A.value = F),
465
484
  mode: "vertical",
466
485
  collapse: g.value,
467
486
  "collapse-transition": !1,
468
- "background-color": H.value,
469
- "text-color": Z.value,
470
- "active-text-color": Y.value,
487
+ "background-color": G.value,
488
+ "text-color": ee.value,
489
+ "active-text-color": X.value,
471
490
  class: "sidebar__menu",
472
491
  onSelect: q
473
492
  }, {
474
493
  default: M(() => [
475
- (a(!0), c(K, null, X(d.value, (D) => (a(), B(Ht, {
476
- key: f(D),
477
- menu: D
494
+ (a(!0), c(K, null, Z(d.value, (F) => (a(), B(Yt, {
495
+ key: f(F),
496
+ menu: F
478
497
  }, null, 8, ["menu"]))), 128))
479
498
  ]),
480
499
  _: 1
481
500
  }, 8, ["modelValue", "openeds", "collapse", "background-color", "text-color", "active-text-color"]),
482
- l.showUser && !g.value ? (a(), c("div", Xt, [
483
- e("div", Jt, [
484
- e("span", Zt, x(n(i).userName), 1),
485
- e("span", Qt, x(n(i).departmentName), 1)
501
+ n.showUser && !g.value ? (a(), c("div", Jt, [
502
+ e("div", Zt, [
503
+ e("span", Qt, x(l(i).userName), 1),
504
+ e("span", es, x(l(i).departmentName), 1)
486
505
  ]),
487
- b(n(ke), {
506
+ b(l($e), {
488
507
  type: "text",
489
508
  size: "small",
490
- onClick: ee
509
+ onClick: oe
491
510
  }, {
492
- default: M(() => [...N[2] || (N[2] = [
493
- he("退出", -1)
511
+ default: M(() => [...I[2] || (I[2] = [
512
+ ye("退出", -1)
494
513
  ])]),
495
514
  _: 1
496
515
  })
497
- ])) : P("", !0)
516
+ ])) : T("", !0)
498
517
  ], 2));
499
518
  }
500
- }), st = /* @__PURE__ */ re(es, [["__scopeId", "data-v-6c197c26"]]), ts = { class: "header" }, ss = { class: "header__left" }, os = {
519
+ }), st = /* @__PURE__ */ ie(ts, [["__scopeId", "data-v-7d329414"]]), ss = { class: "header" }, os = { class: "header__left" }, as = {
501
520
  key: 0,
502
521
  class: "header__breadcrumb"
503
- }, as = {
522
+ }, ns = {
504
523
  key: 0,
505
524
  class: "breadcrumb-separator"
506
- }, ns = { class: "header__right" }, ls = {
525
+ }, ls = { class: "header__right" }, rs = {
507
526
  key: 0,
508
527
  class: "header__search-dropdown"
509
- }, rs = {
528
+ }, is = {
510
529
  key: 0,
511
530
  class: "header__search-results"
512
- }, is = ["onClick"], cs = {
531
+ }, cs = ["onClick"], us = {
513
532
  key: 0,
514
533
  class: "header__search-icon"
515
- }, us = {
534
+ }, ds = {
516
535
  key: 1,
517
536
  class: "header__search-char"
518
- }, ds = { class: "header__search-item-title" }, ms = {
537
+ }, ms = { class: "header__search-item-title" }, ps = {
519
538
  key: 1,
520
539
  class: "header__search-item-parent"
521
- }, ps = {
540
+ }, vs = {
522
541
  key: 1,
523
542
  class: "header__search-empty"
524
- }, vs = ["title"], hs = { class: "header__avatar" }, _s = { class: "header__user-name" }, fs = {
543
+ }, hs = ["title"], _s = { class: "header__avatar" }, fs = { class: "header__user-name" }, gs = {
525
544
  key: 0,
526
545
  class: "header__dropdown"
527
- }, gs = { class: "header__dropdown-header" }, ys = { class: "header__dropdown-avatar" }, bs = { class: "header__dropdown-info" }, ks = { class: "header__dropdown-name" }, ws = { class: "header__dropdown-role" }, xs = { class: "header__dropdown-menu" }, Cs = { class: "settings-drawer" }, $s = { class: "settings-section" }, Ls = { class: "settings-layout-options" }, Ms = ["onClick"], Ss = { class: "layout-option__preview" }, Ns = {
546
+ }, ys = { class: "header__dropdown-header" }, bs = { class: "header__dropdown-avatar" }, ks = { class: "header__dropdown-info" }, ws = { class: "header__dropdown-name" }, xs = { class: "header__dropdown-role" }, Cs = { class: "header__dropdown-menu" }, $s = { class: "settings-drawer" }, Ls = { class: "settings-section" }, Ms = { class: "settings-layout-options" }, Ss = ["onClick"], Ns = { class: "layout-option__preview" }, Is = {
528
547
  key: 0,
529
548
  class: "layout-preview-sidebar"
530
- }, Is = {
549
+ }, Es = {
531
550
  key: 1,
532
551
  class: "layout-preview-top"
533
- }, Es = {
552
+ }, Us = {
534
553
  key: 2,
535
554
  class: "layout-preview-mix"
536
- }, Us = { class: "layout-option__label" }, zs = { class: "settings-section" }, Ts = { class: "settings-color-options" }, Ps = ["title", "onClick"], Ds = { class: "settings-section" }, As = { class: "settings-switch-list" }, Fs = { class: "settings-switch-item" }, Bs = { class: "settings-switch-item" }, Vs = /* @__PURE__ */ ne({
555
+ }, zs = { class: "layout-option__label" }, Ps = { class: "settings-section" }, Ts = { class: "settings-color-options" }, Fs = ["title", "onClick"], Ds = { class: "settings-section" }, As = { class: "settings-switch-list" }, Bs = { class: "settings-switch-item" }, Vs = { class: "settings-switch-item" }, Os = /* @__PURE__ */ le({
537
556
  __name: "Header",
538
557
  setup(t) {
539
- const l = we(), u = me(), s = ue(), o = le(), i = Ue(), h = de(), v = y(!1), d = y(!1), g = y(null), _ = y(!1), f = y(!1), m = y(""), j = y(null), A = y(!1), W = [
558
+ const n = Le(), u = he(), s = pe(), o = re(), i = Ue(), h = ve(), v = y(!1), d = y(!1), g = y(null), _ = y(!1), f = y(!1), m = y(""), j = y(null), D = y(!1), W = [
540
559
  { value: "sidebar", label: "左侧菜单", icon: "sidebar-left" },
541
560
  { value: "top", label: "顶部菜单", icon: "menu" },
542
561
  { value: "mix", label: "混合菜单", icon: "grid" }
543
- ], F = [
544
- { value: "#1D4ED8", label: "品牌蓝" },
545
- { value: "#1890ff", label: "科技蓝" },
546
- { value: "#52c41a", label: "极光绿" },
547
- { value: "#faad14", label: "日落橙" },
548
- { value: "#f5222d", label: "薄暮红" },
549
- { value: "#722ed1", label: "酱紫" }
550
- ], V = w(() => l.matched.filter((k) => k.meta && k.meta.title).map((k) => ({
562
+ ], A = [
563
+ { value: "#4F46E5", label: "品牌蓝" },
564
+ { value: "#0F6FDE", label: "企业蓝" },
565
+ { value: "#00A870", label: "翡翠绿" },
566
+ { value: "#D46B08", label: "琥珀橙" },
567
+ { value: "#1F2329", label: "石墨黑" }
568
+ ], V = w(() => n.matched.filter((k) => k.meta && k.meta.title).map((k) => ({
551
569
  title: k.meta.title,
552
570
  path: k.path
553
- }))), H = (z, k = "") => {
554
- const Q = [];
555
- return z.forEach((C) => {
556
- C.children && C.children.length > 0 ? Q.push(...H(C.children, C.menuName)) : Q.push({ ...C, parentTitle: k, title: C.menuName, path: C.menuUrl });
557
- }), Q;
558
- }, Z = /* @__PURE__ */ new Set([
571
+ }))), G = (z, k = "") => {
572
+ const se = [];
573
+ return z.forEach(($) => {
574
+ $.children && $.children.length > 0 ? se.push(...G($.children, $.menuName)) : se.push({ ...$, parentTitle: k, title: $.menuName, path: $.menuUrl });
575
+ }), se;
576
+ }, ee = /* @__PURE__ */ new Set([
559
577
  "arrow-up",
560
578
  "arrow-down",
561
579
  "arrow-left",
@@ -657,10 +675,10 @@ const de = Ee("menu", () => {
657
675
  "sun",
658
676
  "theme",
659
677
  "skin"
660
- ]), Y = (z) => {
678
+ ]), X = (z) => {
661
679
  if (!z || z === "") return "";
662
680
  if (z.startsWith("tineco-icon-")) {
663
- const Q = z.replace("tineco-icon-", "");
681
+ const se = z.replace("tineco-icon-", "");
664
682
  return {
665
683
  home: "home",
666
684
  dashboard: "dashboard",
@@ -674,7 +692,7 @@ const de = Ee("menu", () => {
674
692
  chart: "chart",
675
693
  report: "report",
676
694
  analytics: "analytics"
677
- }[Q] || Q;
695
+ }[se] || se;
678
696
  }
679
697
  return {
680
698
  dashboard: "dashboard",
@@ -694,149 +712,149 @@ const de = Ee("menu", () => {
694
712
  list: "list",
695
713
  grid: "grid"
696
714
  }[z] || z;
697
- }, q = (z) => z ? z.charAt(0) : "", ee = (z) => Z.has(z), T = w(() => m.value.trim() ? H(h.menuList).filter(
715
+ }, q = (z) => z ? z.charAt(0) : "", oe = (z) => ee.has(z), P = w(() => m.value.trim() ? G(h.menuList).filter(
698
716
  (k) => k.title.toLowerCase().includes(m.value.toLowerCase())
699
- ) : []), N = w(() => s.layout), D = () => {
717
+ ) : []), I = w(() => s.layout), F = () => {
700
718
  s.toggleCollapse();
701
- }, G = () => {
719
+ }, J = () => {
702
720
  s.toggleTheme();
703
721
  }, R = () => {
704
722
  d.value = !0;
705
- }, se = (z) => {
723
+ }, ne = (z) => {
706
724
  s.setLayout(z), d.value = !1;
707
- }, ie = (z) => {
708
- A.value = z;
725
+ }, ue = (z) => {
726
+ D.value = z;
709
727
  const k = document.documentElement;
710
728
  z ? k.classList.add("grey-mode") : k.classList.remove("grey-mode");
711
- }, pe = () => {
712
- ie(!A.value), d.value = !1;
713
- }, E = () => {
729
+ }, _e = () => {
730
+ ue(!D.value), d.value = !1;
731
+ }, N = () => {
714
732
  s.toggleTheme(), d.value = !1;
715
- }, oe = () => {
733
+ }, H = () => {
716
734
  document.fullscreenElement ? document.exitFullscreen() : document.documentElement.requestFullscreen();
717
- }, _e = () => {
735
+ }, de = () => {
718
736
  _.value = !!document.fullscreenElement;
719
- }, ce = () => {
737
+ }, te = () => {
720
738
  v.value = !v.value;
721
- }, ae = () => {
739
+ }, Y = () => {
722
740
  v.value = !1;
723
- }, ve = () => {
741
+ }, me = () => {
724
742
  f.value = !1, m.value = "";
725
- }, xe = (z) => {
726
- u.push(z), ve();
727
- }, Ce = (z) => {
743
+ }, fe = (z) => {
744
+ u.push(z), me();
745
+ }, be = (z) => {
728
746
  s.setPrimaryColor(z), d.value = !1;
729
- }, $e = () => {
730
- ae(), u.push("/profile");
731
- }, Le = () => {
732
- ae(), u.push("/change-password");
747
+ }, ce = () => {
748
+ Y(), u.push("/profile");
749
+ }, ge = () => {
750
+ Y(), u.push("/change-password");
733
751
  }, Me = () => {
734
- ae(), i.logout(), o.clearUserInfo(), h.clearMenu(), u.push(s.loginPath);
735
- }, fe = (z) => {
736
- g.value && !g.value.contains(z.target) && ae(), j.value && !j.value.contains(z.target) && ve();
737
- }, ge = (z) => {
738
- z.key === "Escape" && (ve(), ae());
752
+ Y(), i.logout(), o.clearUserInfo(), h.clearMenu(), u.push(s.loginPath);
753
+ }, ke = (z) => {
754
+ g.value && !g.value.contains(z.target) && Y(), j.value && !j.value.contains(z.target) && me();
755
+ }, we = (z) => {
756
+ z.key === "Escape" && (me(), Y());
739
757
  };
740
758
  return Ke(() => {
741
- document.addEventListener("click", fe), document.addEventListener("fullscreenchange", _e), document.addEventListener("keydown", ge), s.initTheme(), A.value = document.documentElement.classList.contains("grey-mode");
759
+ document.addEventListener("click", ke), document.addEventListener("fullscreenchange", de), document.addEventListener("keydown", we), s.initTheme(), D.value = document.documentElement.classList.contains("grey-mode");
742
760
  }), je(() => {
743
- document.removeEventListener("click", fe), document.removeEventListener("fullscreenchange", _e), document.removeEventListener("keydown", ge);
761
+ document.removeEventListener("click", ke), document.removeEventListener("fullscreenchange", de), document.removeEventListener("keydown", we);
744
762
  }), (z, k) => {
745
- var Q;
746
- return a(), c("div", ts, [
747
- e("div", ss, [
763
+ var se;
764
+ return a(), c("div", ss, [
765
+ e("div", os, [
748
766
  e("div", {
749
767
  class: "header__collapse",
750
- onClick: D
768
+ onClick: F
751
769
  }, [
752
- b(n(U), {
753
- name: n(s).isCollapsed ? "menu-unfold" : "menu-fold",
770
+ b(l(U), {
771
+ name: l(s).isCollapsed ? "menu-unfold" : "menu-fold",
754
772
  size: 18
755
773
  }, null, 8, ["name"])
756
774
  ]),
757
- n(s).showBreadcrumb ? (a(), c("div", os, [
758
- (a(!0), c(K, null, X(V.value, (C, S) => (a(), c("span", {
759
- key: C.path
775
+ l(s).showBreadcrumb ? (a(), c("div", as, [
776
+ (a(!0), c(K, null, Z(V.value, ($, S) => (a(), c("span", {
777
+ key: $.path
760
778
  }, [
761
- S > 0 ? (a(), c("span", as, "/")) : P("", !0),
779
+ S > 0 ? (a(), c("span", ns, "/")) : T("", !0),
762
780
  e("span", {
763
- class: J({ "is-current": S === V.value.length - 1 })
764
- }, x(C.title), 3)
781
+ class: Q({ "is-current": S === V.value.length - 1 })
782
+ }, x($.title), 3)
765
783
  ]))), 128))
766
- ])) : P("", !0)
784
+ ])) : T("", !0)
767
785
  ]),
768
- e("div", ns, [
786
+ e("div", ls, [
769
787
  e("div", {
770
788
  class: "header__search",
771
789
  ref_key: "searchRef",
772
790
  ref: j
773
791
  }, [
774
- b(n(U), {
792
+ b(l(U), {
775
793
  name: "search",
776
794
  size: 14,
777
795
  class: "header__search-icon"
778
796
  }),
779
- Te(e("input", {
780
- "onUpdate:modelValue": k[0] || (k[0] = (C) => m.value = C),
797
+ Pe(e("input", {
798
+ "onUpdate:modelValue": k[0] || (k[0] = ($) => m.value = $),
781
799
  type: "text",
782
800
  class: "header__search-input",
783
801
  placeholder: "搜索菜单...",
784
- onFocus: k[1] || (k[1] = (C) => f.value = !0)
802
+ onFocus: k[1] || (k[1] = ($) => f.value = !0)
785
803
  }, null, 544), [
786
804
  [We, m.value]
787
805
  ]),
788
- b(be, { name: "search-dropdown" }, {
806
+ b(Ce, { name: "search-dropdown" }, {
789
807
  default: M(() => [
790
- f.value && (T.value.length > 0 || m.value) ? (a(), c("div", ls, [
791
- T.value.length > 0 ? (a(), c("div", rs, [
792
- (a(!0), c(K, null, X(T.value, (C) => (a(), c("div", {
793
- key: C.path,
808
+ f.value && (P.value.length > 0 || m.value) ? (a(), c("div", rs, [
809
+ P.value.length > 0 ? (a(), c("div", is, [
810
+ (a(!0), c(K, null, Z(P.value, ($) => (a(), c("div", {
811
+ key: $.path,
794
812
  class: "header__search-item",
795
- onClick: (S) => xe(C.path)
813
+ onClick: (S) => fe($.path)
796
814
  }, [
797
- C.title !== "首页" ? (a(), c("span", cs, [
798
- ee(Y(C.icon)) ? (a(), B(n(U), {
815
+ $.title !== "首页" ? (a(), c("span", us, [
816
+ oe(X($.icon)) ? (a(), B(l(U), {
799
817
  key: 0,
800
- name: Y(C.icon),
818
+ name: X($.icon),
801
819
  size: 16
802
- }, null, 8, ["name"])) : (a(), c("span", us, x(q(C.title)), 1))
803
- ])) : P("", !0),
804
- e("span", ds, x(C.title), 1),
805
- C.parentTitle ? (a(), c("span", ms, x(C.parentTitle), 1)) : P("", !0)
806
- ], 8, is))), 128))
807
- ])) : (a(), c("div", ps, " 未找到匹配的菜单 "))
808
- ])) : P("", !0)
820
+ }, null, 8, ["name"])) : (a(), c("span", ds, x(q($.title)), 1))
821
+ ])) : T("", !0),
822
+ e("span", ms, x($.title), 1),
823
+ $.parentTitle ? (a(), c("span", ps, x($.parentTitle), 1)) : T("", !0)
824
+ ], 8, cs))), 128))
825
+ ])) : (a(), c("div", vs, " 未找到匹配的菜单 "))
826
+ ])) : T("", !0)
809
827
  ]),
810
828
  _: 1
811
829
  })
812
830
  ], 512),
813
831
  e("div", {
814
832
  class: "header__action",
815
- onClick: oe,
833
+ onClick: H,
816
834
  title: _.value ? "退出全屏" : "全屏"
817
835
  }, [
818
- b(n(U), {
836
+ b(l(U), {
819
837
  name: _.value ? "fullscreen-exit" : "fullscreen",
820
838
  size: 16
821
839
  }, null, 8, ["name"])
822
- ], 8, vs),
840
+ ], 8, hs),
823
841
  e("div", {
824
842
  class: "header__action",
825
843
  onClick: R,
826
844
  title: "换肤设置"
827
845
  }, [
828
- b(n(U), {
846
+ b(l(U), {
829
847
  name: "skin",
830
848
  size: 16
831
849
  })
832
850
  ]),
833
851
  e("div", {
834
852
  class: "header__action",
835
- onClick: G,
853
+ onClick: J,
836
854
  title: "切换主题"
837
855
  }, [
838
- b(n(U), {
839
- name: n(s).isDark ? "sun" : "moon",
856
+ b(l(U), {
857
+ name: l(s).isDark ? "sun" : "moon",
840
858
  size: 16
841
859
  }, null, 8, ["name"])
842
860
  ]),
@@ -847,99 +865,112 @@ const de = Ee("menu", () => {
847
865
  }, [
848
866
  e("div", {
849
867
  class: "header__user-trigger",
850
- onClick: Pe(ce, ["stop"])
868
+ onClick: Te(te, ["stop"])
851
869
  }, [
852
- e("div", hs, [
853
- e("span", null, x(((Q = n(o).userName) == null ? void 0 : Q.charAt(0)) || "U"), 1)
870
+ e("div", _s, [
871
+ e("span", null, x(((se = l(o).userName) == null ? void 0 : se.charAt(0)) || "U"), 1)
854
872
  ]),
855
- e("span", _s, x(n(o).userName), 1),
873
+ e("span", fs, x(l(o).userName), 1),
856
874
  e("span", {
857
- class: J(["header__user-arrow", { "is-active": v.value }])
858
- }, "▼", 2)
875
+ class: Q(["header__user-arrow", { "is-active": v.value }])
876
+ }, [...k[3] || (k[3] = [
877
+ e("svg", {
878
+ viewBox: "0 0 12 12",
879
+ width: "10",
880
+ height: "10",
881
+ fill: "none",
882
+ stroke: "currentColor",
883
+ "stroke-width": "1.5",
884
+ "stroke-linecap": "round",
885
+ "stroke-linejoin": "round"
886
+ }, [
887
+ e("path", { d: "M2.5 4.5 6 8l3.5-3.5" })
888
+ ], -1)
889
+ ])], 2)
859
890
  ]),
860
- b(be, { name: "dropdown" }, {
891
+ b(Ce, { name: "dropdown" }, {
861
892
  default: M(() => {
862
- var C;
893
+ var $;
863
894
  return [
864
- v.value ? (a(), c("div", fs, [
865
- e("div", gs, [
866
- e("div", ys, [
867
- e("span", null, x(((C = n(o).userName) == null ? void 0 : C.charAt(0)) || "U"), 1)
868
- ]),
895
+ v.value ? (a(), c("div", gs, [
896
+ e("div", ys, [
869
897
  e("div", bs, [
870
- e("div", ks, x(n(o).userName), 1),
871
- e("div", ws, x(n(o).roleName || n(o).departmentName), 1)
898
+ e("span", null, x((($ = l(o).userName) == null ? void 0 : $.charAt(0)) || "U"), 1)
899
+ ]),
900
+ e("div", ks, [
901
+ e("div", ws, x(l(o).userName), 1),
902
+ e("div", xs, x(l(o).roleName || l(o).departmentName), 1)
872
903
  ])
873
904
  ]),
874
- k[7] || (k[7] = e("div", { class: "header__dropdown-divider" }, null, -1)),
875
- e("div", xs, [
905
+ k[8] || (k[8] = e("div", { class: "header__dropdown-divider" }, null, -1)),
906
+ e("div", Cs, [
876
907
  e("div", {
877
908
  class: "header__dropdown-item",
878
- onClick: $e
909
+ onClick: ce
879
910
  }, [
880
- b(n(U), {
911
+ b(l(U), {
881
912
  name: "user",
882
913
  size: 16
883
914
  }),
884
- k[3] || (k[3] = e("span", null, "个人信息", -1))
915
+ k[4] || (k[4] = e("span", null, "个人信息", -1))
885
916
  ]),
886
917
  e("div", {
887
918
  class: "header__dropdown-item",
888
- onClick: Le
919
+ onClick: ge
889
920
  }, [
890
- b(n(U), {
921
+ b(l(U), {
891
922
  name: "lock",
892
923
  size: 16
893
924
  }),
894
- k[4] || (k[4] = e("span", null, "修改密码", -1))
925
+ k[5] || (k[5] = e("span", null, "修改密码", -1))
895
926
  ]),
896
- k[6] || (k[6] = e("div", { class: "header__dropdown-divider" }, null, -1)),
927
+ k[7] || (k[7] = e("div", { class: "header__dropdown-divider" }, null, -1)),
897
928
  e("div", {
898
929
  class: "header__dropdown-item header__dropdown-item--danger",
899
930
  onClick: Me
900
931
  }, [
901
- b(n(U), {
932
+ b(l(U), {
902
933
  name: "logout",
903
934
  size: 16
904
935
  }),
905
- k[5] || (k[5] = e("span", null, "退出登录", -1))
936
+ k[6] || (k[6] = e("span", null, "退出登录", -1))
906
937
  ])
907
938
  ])
908
- ])) : P("", !0)
939
+ ])) : T("", !0)
909
940
  ];
910
941
  }),
911
942
  _: 1
912
943
  })
913
944
  ], 512)
914
945
  ]),
915
- b(n(Xe), {
946
+ b(l(Xe), {
916
947
  modelValue: d.value,
917
- "onUpdate:modelValue": k[2] || (k[2] = (C) => d.value = C),
948
+ "onUpdate:modelValue": k[2] || (k[2] = ($) => d.value = $),
918
949
  title: "换肤设置",
919
950
  direction: "rtl",
920
951
  size: "320px"
921
952
  }, {
922
953
  default: M(() => [
923
- e("div", Cs, [
924
- e("div", $s, [
925
- k[11] || (k[11] = e("div", { class: "settings-title" }, "布局模式", -1)),
926
- e("div", Ls, [
927
- (a(), c(K, null, X(W, (C) => e("div", {
928
- key: C.value,
929
- class: J(["layout-option", { "is-active": N.value === C.value }]),
930
- onClick: (S) => se(C.value)
954
+ e("div", $s, [
955
+ e("div", Ls, [
956
+ k[12] || (k[12] = e("div", { class: "settings-title" }, "布局模式", -1)),
957
+ e("div", Ms, [
958
+ (a(), c(K, null, Z(W, ($) => e("div", {
959
+ key: $.value,
960
+ class: Q(["layout-option", { "is-active": I.value === $.value }]),
961
+ onClick: (S) => ne($.value)
931
962
  }, [
932
- e("div", Ss, [
933
- C.value === "sidebar" ? (a(), c("div", Ns, [...k[8] || (k[8] = [
963
+ e("div", Ns, [
964
+ $.value === "sidebar" ? (a(), c("div", Is, [...k[9] || (k[9] = [
934
965
  e("div", { class: "preview-aside" }, null, -1),
935
966
  e("div", { class: "preview-main" }, [
936
967
  e("div", { class: "preview-header" }),
937
968
  e("div", { class: "preview-content" })
938
969
  ], -1)
939
- ])])) : C.value === "top" ? (a(), c("div", Is, [...k[9] || (k[9] = [
970
+ ])])) : $.value === "top" ? (a(), c("div", Es, [...k[10] || (k[10] = [
940
971
  e("div", { class: "preview-header-full" }, null, -1),
941
972
  e("div", { class: "preview-content-full" }, null, -1)
942
- ])])) : (a(), c("div", Es, [...k[10] || (k[10] = [
973
+ ])])) : (a(), c("div", Us, [...k[11] || (k[11] = [
943
974
  e("div", { class: "preview-header-mix" }, [
944
975
  e("div", { class: "preview-mix-left" })
945
976
  ], -1),
@@ -949,47 +980,47 @@ const de = Ee("menu", () => {
949
980
  ], -1)
950
981
  ])]))
951
982
  ]),
952
- e("span", Us, x(C.label), 1)
953
- ], 10, Ms)), 64))
983
+ e("span", zs, x($.label), 1)
984
+ ], 10, Ss)), 64))
954
985
  ])
955
986
  ]),
956
- e("div", zs, [
957
- k[12] || (k[12] = e("div", { class: "settings-title" }, "主题色", -1)),
987
+ e("div", Ps, [
988
+ k[13] || (k[13] = e("div", { class: "settings-title" }, "主题色", -1)),
958
989
  e("div", Ts, [
959
- (a(), c(K, null, X(F, (C) => e("div", {
960
- key: C.value,
961
- class: J(["color-option", { "is-active": n(s).primaryColor === C.value }]),
962
- style: Ne({ backgroundColor: C.value }),
963
- title: C.label,
964
- onClick: (S) => Ce(C.value)
990
+ (a(), c(K, null, Z(A, ($) => e("div", {
991
+ key: $.value,
992
+ class: Q(["color-option", { "is-active": l(s).primaryColor === $.value }]),
993
+ style: Ne({ backgroundColor: $.value }),
994
+ title: $.label,
995
+ onClick: (S) => be($.value)
965
996
  }, [
966
- n(s).primaryColor === C.value ? (a(), B(n(U), {
997
+ l(s).primaryColor === $.value ? (a(), B(l(U), {
967
998
  key: 0,
968
999
  name: "check",
969
1000
  size: 12,
970
1001
  color: "#fff"
971
- })) : P("", !0)
972
- ], 14, Ps)), 64))
1002
+ })) : T("", !0)
1003
+ ], 14, Fs)), 64))
973
1004
  ])
974
1005
  ]),
975
1006
  e("div", Ds, [
976
- k[17] || (k[17] = e("div", { class: "settings-title" }, "功能设置", -1)),
1007
+ k[18] || (k[18] = e("div", { class: "settings-title" }, "功能设置", -1)),
977
1008
  e("div", As, [
978
- e("div", Fs, [
979
- k[14] || (k[14] = e("span", null, "灰色模式", -1)),
1009
+ e("div", Bs, [
1010
+ k[15] || (k[15] = e("span", null, "灰色模式", -1)),
980
1011
  e("div", {
981
- class: J(["switch-wrapper", { "is-checked": A.value }]),
982
- onClick: pe
983
- }, [...k[13] || (k[13] = [
1012
+ class: Q(["switch-wrapper", { "is-checked": D.value }]),
1013
+ onClick: _e
1014
+ }, [...k[14] || (k[14] = [
984
1015
  e("span", { class: "switch-core" }, null, -1)
985
1016
  ])], 2)
986
1017
  ]),
987
- e("div", Bs, [
988
- k[16] || (k[16] = e("span", null, "暗黑模式", -1)),
1018
+ e("div", Vs, [
1019
+ k[17] || (k[17] = e("span", null, "暗黑模式", -1)),
989
1020
  e("div", {
990
- class: J(["switch-wrapper", { "is-checked": n(s).isDark }]),
991
- onClick: E
992
- }, [...k[15] || (k[15] = [
1021
+ class: Q(["switch-wrapper", { "is-checked": l(s).isDark }]),
1022
+ onClick: N
1023
+ }, [...k[16] || (k[16] = [
993
1024
  e("span", { class: "switch-core" }, null, -1)
994
1025
  ])], 2)
995
1026
  ])
@@ -1002,73 +1033,73 @@ const de = Ee("menu", () => {
1002
1033
  ]);
1003
1034
  };
1004
1035
  }
1005
- }), Os = /* @__PURE__ */ re(Vs, [["__scopeId", "data-v-a68ca7e5"]]), Rs = { class: "top-menu" }, Ks = { class: "top-menu__logo" }, js = ["src"], Ws = { class: "top-menu__logo-text" }, qs = { class: "top-menu__menu-content" }, Hs = {
1036
+ }), Rs = /* @__PURE__ */ ie(Os, [["__scopeId", "data-v-11f8bfa7"]]), Ks = { class: "top-menu" }, js = { class: "top-menu__logo" }, Ws = ["src"], qs = { class: "top-menu__logo-text" }, Hs = { class: "top-menu__menu-content" }, Ys = {
1006
1037
  key: 0,
1007
1038
  class: "top-menu__menu-icon"
1008
- }, Ys = {
1039
+ }, Gs = {
1009
1040
  key: 1,
1010
1041
  class: "top-menu__menu-char"
1011
- }, Gs = { class: "top-menu__menu-text" }, Xs = { class: "top-menu__menu-content" }, Js = { class: "top-menu__menu-icon" }, Zs = {
1042
+ }, Xs = { class: "top-menu__menu-text" }, Js = { class: "top-menu__menu-content" }, Zs = { class: "top-menu__menu-icon" }, Qs = {
1012
1043
  key: 1,
1013
1044
  class: "top-menu__menu-char"
1014
- }, Qs = { class: "top-menu__menu-text" }, eo = { class: "top-menu__menu-content" }, to = { class: "top-menu__menu-icon" }, so = {
1045
+ }, eo = { class: "top-menu__menu-text" }, to = { class: "top-menu__menu-content" }, so = { class: "top-menu__menu-icon" }, oo = {
1015
1046
  key: 1,
1016
1047
  class: "top-menu__menu-char"
1017
- }, oo = { class: "top-menu__menu-text" }, ao = { class: "top-menu__menu-content" }, no = { class: "top-menu__menu-icon" }, lo = {
1048
+ }, ao = { class: "top-menu__menu-text" }, no = { class: "top-menu__menu-content" }, lo = { class: "top-menu__menu-icon" }, ro = {
1018
1049
  key: 1,
1019
1050
  class: "top-menu__menu-char"
1020
- }, ro = { class: "top-menu__menu-text" }, io = { class: "top-menu__menu-content" }, co = {
1051
+ }, io = { class: "top-menu__menu-text" }, co = { class: "top-menu__menu-content" }, uo = {
1021
1052
  key: 0,
1022
1053
  class: "top-menu__menu-icon"
1023
- }, uo = {
1054
+ }, mo = {
1024
1055
  key: 1,
1025
1056
  class: "top-menu__menu-char"
1026
- }, mo = { class: "top-menu__menu-text" }, po = { class: "top-menu__actions" }, vo = {
1057
+ }, po = { class: "top-menu__menu-text" }, vo = { class: "top-menu__actions" }, ho = {
1027
1058
  key: 0,
1028
1059
  class: "top-menu__search-dropdown"
1029
- }, ho = {
1060
+ }, _o = {
1030
1061
  key: 0,
1031
1062
  class: "top-menu__search-results"
1032
- }, _o = ["onClick"], fo = {
1063
+ }, fo = ["onClick"], go = {
1033
1064
  key: 0,
1034
1065
  class: "top-menu__search-icon-item"
1035
- }, go = {
1066
+ }, yo = {
1036
1067
  key: 1,
1037
1068
  class: "top-menu__search-char"
1038
- }, yo = { class: "top-menu__search-item-title" }, bo = {
1069
+ }, bo = { class: "top-menu__search-item-title" }, ko = {
1039
1070
  key: 1,
1040
1071
  class: "top-menu__search-item-parent"
1041
- }, ko = {
1072
+ }, wo = {
1042
1073
  key: 1,
1043
1074
  class: "top-menu__search-empty"
1044
- }, wo = ["title"], xo = { class: "top-menu__avatar" }, Co = { class: "top-menu__user-name" }, $o = {
1075
+ }, xo = ["title"], Co = { class: "top-menu__avatar" }, $o = { class: "top-menu__user-name" }, Lo = {
1045
1076
  key: 0,
1046
1077
  class: "top-menu__dropdown"
1047
- }, Lo = { class: "top-menu__dropdown-header" }, Mo = { class: "top-menu__dropdown-avatar" }, So = { class: "top-menu__dropdown-info" }, No = { class: "top-menu__dropdown-name" }, Io = { class: "top-menu__dropdown-role" }, Eo = { class: "top-menu__dropdown-menu" }, Uo = { class: "settings-drawer" }, zo = { class: "settings-section" }, To = { class: "settings-layout-options" }, Po = ["onClick"], Do = { class: "layout-option__preview" }, Ao = {
1078
+ }, Mo = { class: "top-menu__dropdown-header" }, So = { class: "top-menu__dropdown-avatar" }, No = { class: "top-menu__dropdown-info" }, Io = { class: "top-menu__dropdown-name" }, Eo = { class: "top-menu__dropdown-role" }, Uo = { class: "top-menu__dropdown-menu" }, zo = { class: "settings-drawer" }, Po = { class: "settings-section" }, To = { class: "settings-layout-options" }, Fo = ["onClick"], Do = { class: "layout-option__preview" }, Ao = {
1048
1079
  key: 0,
1049
1080
  class: "layout-preview-sidebar"
1050
- }, Fo = {
1081
+ }, Bo = {
1051
1082
  key: 1,
1052
1083
  class: "layout-preview-top"
1053
- }, Bo = {
1084
+ }, Vo = {
1054
1085
  key: 2,
1055
1086
  class: "layout-preview-mix"
1056
- }, Vo = { class: "layout-option__label" }, Oo = { class: "settings-section" }, Ro = { class: "settings-color-options" }, Ko = ["title", "onClick"], jo = { class: "settings-section" }, Wo = { class: "settings-switch-list" }, qo = { class: "settings-switch-item" }, Ho = { class: "settings-switch-item" }, Yo = /* @__PURE__ */ ne({
1087
+ }, Oo = { class: "layout-option__label" }, Ro = { class: "settings-section" }, Ko = { class: "settings-color-options" }, jo = ["title", "onClick"], Wo = { class: "settings-section" }, qo = { class: "settings-switch-list" }, Ho = { class: "settings-switch-item" }, Yo = { class: "settings-switch-item" }, Go = /* @__PURE__ */ le({
1057
1088
  __name: "TopMenu",
1058
1089
  props: {
1059
1090
  logoSrc: { default: "/vite.svg" }
1060
1091
  },
1061
1092
  setup(t) {
1062
- const l = t, u = we(), s = me(), o = de(), i = ue(), h = le(), v = Ue(), d = w(() => u.path), g = (S, L = "") => {
1063
- const te = [];
1093
+ const n = t, u = Le(), s = he(), o = ve(), i = pe(), h = re(), v = Ue(), d = w(() => u.path), g = (S, C = "") => {
1094
+ const ae = [];
1064
1095
  return S.forEach((r) => {
1065
- r.children && r.children.length > 0 ? te.push(...g(r.children, r.menuName)) : te.push({ ...r, parentTitle: L, title: r.menuName, path: r.menuUrl });
1066
- }), te;
1067
- }, _ = w(() => Y.value.trim() ? g(o.menuList).filter(
1068
- (L) => L.title.toLowerCase().includes(Y.value.toLowerCase())
1069
- ) : []), f = w(() => i.isDark ? "#1d1e1f" : "#fff"), m = w(() => i.isDark ? "#cfd3dc" : "#303133"), j = w(() => "#409eff"), A = y(!1), W = y(null), F = y(!1), V = y(!1), H = y(!1), Z = y(!1), Y = y(""), q = y(null), ee = (S) => {
1096
+ r.children && r.children.length > 0 ? ae.push(...g(r.children, r.menuName)) : ae.push({ ...r, parentTitle: C, title: r.menuName, path: r.menuUrl });
1097
+ }), ae;
1098
+ }, _ = w(() => X.value.trim() ? g(o.menuList).filter(
1099
+ (C) => C.title.toLowerCase().includes(X.value.toLowerCase())
1100
+ ) : []), f = w(() => i.isDark ? "#1d1e1f" : "#fff"), m = w(() => i.isDark ? "#cfd3dc" : "#303133"), j = w(() => "#409eff"), D = y(!1), W = y(null), A = y(!1), V = y(!1), G = y(!1), ee = y(!1), X = y(""), q = y(null), oe = (S) => {
1070
1101
  S && S !== u.path && s.push(S);
1071
- }, T = /* @__PURE__ */ new Set([
1102
+ }, P = /* @__PURE__ */ new Set([
1072
1103
  "arrow-up",
1073
1104
  "arrow-down",
1074
1105
  "arrow-left",
@@ -1170,10 +1201,10 @@ const de = Ee("menu", () => {
1170
1201
  "sun",
1171
1202
  "theme",
1172
1203
  "skin"
1173
- ]), N = (S) => {
1204
+ ]), I = (S) => {
1174
1205
  if (!S || S === "") return "";
1175
1206
  if (S.startsWith("tineco-icon-")) {
1176
- const te = S.replace("tineco-icon-", "");
1207
+ const ae = S.replace("tineco-icon-", "");
1177
1208
  return {
1178
1209
  home: "home",
1179
1210
  dashboard: "dashboard",
@@ -1187,7 +1218,7 @@ const de = Ee("menu", () => {
1187
1218
  chart: "chart",
1188
1219
  report: "report",
1189
1220
  analytics: "analytics"
1190
- }[te] || te;
1221
+ }[ae] || ae;
1191
1222
  }
1192
1223
  return {
1193
1224
  dashboard: "dashboard",
@@ -1207,155 +1238,154 @@ const de = Ee("menu", () => {
1207
1238
  list: "list",
1208
1239
  grid: "grid"
1209
1240
  }[S] || S;
1210
- }, D = (S) => S ? S.charAt(0) : "", G = (S) => T.has(S), R = () => {
1241
+ }, F = (S) => S ? S.charAt(0) : "", J = (S) => P.has(S), R = () => {
1211
1242
  i.toggleTheme(), V.value = !1;
1212
- }, se = () => {
1243
+ }, ne = () => {
1213
1244
  document.fullscreenElement ? document.exitFullscreen() : document.documentElement.requestFullscreen();
1214
- }, ie = () => {
1215
- F.value = !!document.fullscreenElement;
1216
- }, pe = () => {
1217
- A.value = !A.value;
1218
- }, E = () => {
1219
- A.value = !1;
1220
- }, oe = () => {
1221
- Z.value = !1, Y.value = "";
1222
- }, _e = (S) => {
1223
- s.push(S), oe();
1224
- }, ce = () => {
1245
+ }, ue = () => {
1246
+ A.value = !!document.fullscreenElement;
1247
+ }, _e = () => {
1248
+ D.value = !D.value;
1249
+ }, N = () => {
1250
+ D.value = !1;
1251
+ }, H = () => {
1252
+ ee.value = !1, X.value = "";
1253
+ }, de = (S) => {
1254
+ s.push(S), H();
1255
+ }, te = () => {
1225
1256
  V.value = !0;
1226
- }, ae = (S) => {
1227
- H.value = S;
1228
- const L = document.documentElement;
1229
- S ? L.classList.add("grey-mode") : L.classList.remove("grey-mode");
1230
- }, ve = () => {
1231
- ae(!H.value), V.value = !1;
1232
- }, xe = () => {
1257
+ }, Y = (S) => {
1258
+ G.value = S;
1259
+ const C = document.documentElement;
1260
+ S ? C.classList.add("grey-mode") : C.classList.remove("grey-mode");
1261
+ }, me = () => {
1262
+ Y(!G.value), V.value = !1;
1263
+ }, fe = () => {
1233
1264
  i.toggleTheme(), V.value = !1;
1234
- }, Ce = [
1265
+ }, be = [
1235
1266
  { value: "sidebar", label: "左侧菜单", icon: "sidebar-left" },
1236
1267
  { value: "top", label: "顶部菜单", icon: "menu" },
1237
1268
  { value: "mix", label: "混合菜单", icon: "grid" }
1238
- ], $e = w(() => i.layout), Le = (S) => {
1269
+ ], ce = w(() => i.layout), ge = (S) => {
1239
1270
  i.setLayout(S), V.value = !1;
1240
1271
  }, Me = [
1241
1272
  { value: "#409eff", label: "默认蓝" },
1242
- { value: "#1890ff", label: "科技蓝" },
1243
- { value: "#52c41a", label: "极光绿" },
1244
- { value: "#faad14", label: "日落橙" },
1245
- { value: "#f5222d", label: "薄暮红" },
1246
- { value: "#722ed1", label: "酱紫" }
1247
- ], fe = (S) => {
1273
+ { value: "#0F6FDE", label: "企业蓝" },
1274
+ { value: "#00A870", label: "翡翠绿" },
1275
+ { value: "#D46B08", label: "琥珀橙" },
1276
+ { value: "#1F2329", label: "石墨黑" }
1277
+ ], ke = (S) => {
1248
1278
  i.setPrimaryColor(S), V.value = !1;
1249
- }, ge = () => {
1250
- E(), s.push("/profile");
1279
+ }, we = () => {
1280
+ N(), s.push("/profile");
1251
1281
  }, z = () => {
1252
- E(), s.push("/change-password");
1282
+ N(), s.push("/change-password");
1253
1283
  }, k = () => {
1254
- E(), v.logout(), h.clearUserInfo(), o.clearMenu(), s.push(i.loginPath);
1255
- }, Q = (S) => {
1256
- W.value && !W.value.contains(S.target) && E(), q.value && !q.value.contains(S.target) && oe();
1257
- }, C = (S) => {
1258
- S.key === "Escape" && (oe(), E());
1284
+ N(), v.logout(), h.clearUserInfo(), o.clearMenu(), s.push(i.loginPath);
1285
+ }, se = (S) => {
1286
+ W.value && !W.value.contains(S.target) && N(), q.value && !q.value.contains(S.target) && H();
1287
+ }, $ = (S) => {
1288
+ S.key === "Escape" && (H(), N());
1259
1289
  };
1260
1290
  return Ke(() => {
1261
- document.addEventListener("click", Q), document.addEventListener("fullscreenchange", ie), document.addEventListener("keydown", C), H.value = document.documentElement.classList.contains("grey-mode");
1291
+ document.addEventListener("click", se), document.addEventListener("fullscreenchange", ue), document.addEventListener("keydown", $), G.value = document.documentElement.classList.contains("grey-mode");
1262
1292
  }), je(() => {
1263
- document.removeEventListener("click", Q), document.removeEventListener("fullscreenchange", ie), document.removeEventListener("keydown", C);
1264
- }), (S, L) => {
1265
- var te;
1266
- return a(), c("div", Rs, [
1267
- e("div", Ks, [
1293
+ document.removeEventListener("click", se), document.removeEventListener("fullscreenchange", ue), document.removeEventListener("keydown", $);
1294
+ }), (S, C) => {
1295
+ var ae;
1296
+ return a(), c("div", Ks, [
1297
+ e("div", js, [
1268
1298
  e("img", {
1269
- src: l.logoSrc,
1299
+ src: n.logoSrc,
1270
1300
  alt: "Logo",
1271
1301
  class: "top-menu__logo-img"
1272
- }, null, 8, js),
1273
- e("span", Ws, x(n(i).appName), 1)
1302
+ }, null, 8, Ws),
1303
+ e("span", qs, x(l(i).appName), 1)
1274
1304
  ]),
1275
- b(n(Ge), {
1305
+ b(l(Ge), {
1276
1306
  "model-value": d.value,
1277
1307
  mode: "horizontal",
1278
1308
  "background-color": f.value,
1279
1309
  "text-color": m.value,
1280
1310
  "active-text-color": j.value,
1281
1311
  class: "top-menu__menu",
1282
- onSelect: ee
1312
+ onSelect: oe
1283
1313
  }, {
1284
1314
  default: M(() => [
1285
- (a(!0), c(K, null, X(n(o).menuList, (r) => (a(), c(K, {
1315
+ (a(!0), c(K, null, Z(l(o).menuList, (r) => (a(), c(K, {
1286
1316
  key: r.menuUrl
1287
1317
  }, [
1288
- r.children && r.children.length > 0 ? (a(), B(n(Re), {
1318
+ r.children && r.children.length > 0 ? (a(), B(l(Re), {
1289
1319
  key: 0,
1290
1320
  index: r.menuUrl
1291
1321
  }, {
1292
1322
  title: M(() => [
1293
- e("span", qs, [
1294
- r.menuName !== "首页" ? (a(), c("span", Hs, [
1295
- G(N(r.icon)) ? (a(), B(n(U), {
1323
+ e("span", Hs, [
1324
+ r.menuName !== "首页" ? (a(), c("span", Ys, [
1325
+ J(I(r.icon)) ? (a(), B(l(U), {
1296
1326
  key: 0,
1297
- name: N(r.icon),
1327
+ name: I(r.icon),
1298
1328
  size: 16
1299
- }, null, 8, ["name"])) : (a(), c("span", Ys, x(D(r.menuName)), 1))
1300
- ])) : P("", !0),
1301
- e("span", Gs, x(r.menuName), 1)
1329
+ }, null, 8, ["name"])) : (a(), c("span", Gs, x(F(r.menuName)), 1))
1330
+ ])) : T("", !0),
1331
+ e("span", Xs, x(r.menuName), 1)
1302
1332
  ])
1303
1333
  ]),
1304
1334
  default: M(() => [
1305
- (a(!0), c(K, null, X(r.children, (p) => (a(), c(K, {
1335
+ (a(!0), c(K, null, Z(r.children, (p) => (a(), c(K, {
1306
1336
  key: p.menuUrl
1307
1337
  }, [
1308
- p.children && p.children.length > 0 ? (a(), B(n(Re), {
1338
+ p.children && p.children.length > 0 ? (a(), B(l(Re), {
1309
1339
  key: 0,
1310
1340
  index: p.menuUrl
1311
1341
  }, {
1312
1342
  title: M(() => [
1313
- e("span", Xs, [
1314
- e("span", Js, [
1315
- G(N(p.icon)) ? (a(), B(n(U), {
1343
+ e("span", Js, [
1344
+ e("span", Zs, [
1345
+ J(I(p.icon)) ? (a(), B(l(U), {
1316
1346
  key: 0,
1317
- name: N(p.icon),
1347
+ name: I(p.icon),
1318
1348
  size: 16
1319
- }, null, 8, ["name"])) : (a(), c("span", Zs, x(D(p.menuName)), 1))
1349
+ }, null, 8, ["name"])) : (a(), c("span", Qs, x(F(p.menuName)), 1))
1320
1350
  ]),
1321
- e("span", Qs, x(p.menuName), 1)
1351
+ e("span", eo, x(p.menuName), 1)
1322
1352
  ])
1323
1353
  ]),
1324
1354
  default: M(() => [
1325
- (a(!0), c(K, null, X(p.children, (O) => (a(), B(n(Se), {
1355
+ (a(!0), c(K, null, Z(p.children, (O) => (a(), B(l(Se), {
1326
1356
  key: O.menuUrl,
1327
1357
  index: O.menuUrl
1328
1358
  }, {
1329
1359
  default: M(() => [
1330
- e("span", eo, [
1331
- e("span", to, [
1332
- G(N(O.icon)) ? (a(), B(n(U), {
1360
+ e("span", to, [
1361
+ e("span", so, [
1362
+ J(I(O.icon)) ? (a(), B(l(U), {
1333
1363
  key: 0,
1334
- name: N(O.icon),
1364
+ name: I(O.icon),
1335
1365
  size: 16
1336
- }, null, 8, ["name"])) : (a(), c("span", so, x(D(O.menuName)), 1))
1366
+ }, null, 8, ["name"])) : (a(), c("span", oo, x(F(O.menuName)), 1))
1337
1367
  ]),
1338
- e("span", oo, x(O.menuName), 1)
1368
+ e("span", ao, x(O.menuName), 1)
1339
1369
  ])
1340
1370
  ]),
1341
1371
  _: 2
1342
1372
  }, 1032, ["index"]))), 128))
1343
1373
  ]),
1344
1374
  _: 2
1345
- }, 1032, ["index"])) : (a(), B(n(Se), {
1375
+ }, 1032, ["index"])) : (a(), B(l(Se), {
1346
1376
  key: 1,
1347
1377
  index: p.menuUrl
1348
1378
  }, {
1349
1379
  default: M(() => [
1350
- e("span", ao, [
1351
- e("span", no, [
1352
- G(N(p.icon)) ? (a(), B(n(U), {
1380
+ e("span", no, [
1381
+ e("span", lo, [
1382
+ J(I(p.icon)) ? (a(), B(l(U), {
1353
1383
  key: 0,
1354
- name: N(p.icon),
1384
+ name: I(p.icon),
1355
1385
  size: 16
1356
- }, null, 8, ["name"])) : (a(), c("span", lo, x(D(p.menuName)), 1))
1386
+ }, null, 8, ["name"])) : (a(), c("span", ro, x(F(p.menuName)), 1))
1357
1387
  ]),
1358
- e("span", ro, x(p.menuName), 1)
1388
+ e("span", io, x(p.menuName), 1)
1359
1389
  ])
1360
1390
  ]),
1361
1391
  _: 2
@@ -1363,20 +1393,20 @@ const de = Ee("menu", () => {
1363
1393
  ], 64))), 128))
1364
1394
  ]),
1365
1395
  _: 2
1366
- }, 1032, ["index"])) : (a(), B(n(Se), {
1396
+ }, 1032, ["index"])) : (a(), B(l(Se), {
1367
1397
  key: 1,
1368
1398
  index: r.menuUrl
1369
1399
  }, {
1370
1400
  default: M(() => [
1371
- e("span", io, [
1372
- r.menuName !== "首页" ? (a(), c("span", co, [
1373
- G(N(r.icon)) ? (a(), B(n(U), {
1401
+ e("span", co, [
1402
+ r.menuName !== "首页" ? (a(), c("span", uo, [
1403
+ J(I(r.icon)) ? (a(), B(l(U), {
1374
1404
  key: 0,
1375
- name: N(r.icon),
1405
+ name: I(r.icon),
1376
1406
  size: 16
1377
- }, null, 8, ["name"])) : (a(), c("span", uo, x(D(r.menuName)), 1))
1378
- ])) : P("", !0),
1379
- e("span", mo, x(r.menuName), 1)
1407
+ }, null, 8, ["name"])) : (a(), c("span", mo, x(F(r.menuName)), 1))
1408
+ ])) : T("", !0),
1409
+ e("span", po, x(r.menuName), 1)
1380
1410
  ])
1381
1411
  ]),
1382
1412
  _: 2
@@ -1385,67 +1415,67 @@ const de = Ee("menu", () => {
1385
1415
  ]),
1386
1416
  _: 1
1387
1417
  }, 8, ["model-value", "background-color", "text-color", "active-text-color"]),
1388
- e("div", po, [
1418
+ e("div", vo, [
1389
1419
  e("div", {
1390
1420
  class: "top-menu__search",
1391
1421
  ref_key: "searchRef",
1392
1422
  ref: q
1393
1423
  }, [
1394
- b(n(U), {
1424
+ b(l(U), {
1395
1425
  name: "search",
1396
1426
  size: 14,
1397
1427
  class: "top-menu__search-icon"
1398
1428
  }),
1399
- Te(e("input", {
1400
- "onUpdate:modelValue": L[0] || (L[0] = (r) => Y.value = r),
1429
+ Pe(e("input", {
1430
+ "onUpdate:modelValue": C[0] || (C[0] = (r) => X.value = r),
1401
1431
  type: "text",
1402
1432
  class: "top-menu__search-input",
1403
1433
  placeholder: "搜索菜单...",
1404
- onFocus: L[1] || (L[1] = (r) => Z.value = !0)
1434
+ onFocus: C[1] || (C[1] = (r) => ee.value = !0)
1405
1435
  }, null, 544), [
1406
- [We, Y.value]
1436
+ [We, X.value]
1407
1437
  ]),
1408
- b(be, { name: "search-dropdown" }, {
1438
+ b(Ce, { name: "search-dropdown" }, {
1409
1439
  default: M(() => [
1410
- Z.value && (_.value.length > 0 || Y.value) ? (a(), c("div", vo, [
1411
- _.value.length > 0 ? (a(), c("div", ho, [
1412
- (a(!0), c(K, null, X(_.value, (r) => (a(), c("div", {
1440
+ ee.value && (_.value.length > 0 || X.value) ? (a(), c("div", ho, [
1441
+ _.value.length > 0 ? (a(), c("div", _o, [
1442
+ (a(!0), c(K, null, Z(_.value, (r) => (a(), c("div", {
1413
1443
  key: r.path,
1414
1444
  class: "top-menu__search-item",
1415
- onClick: (p) => _e(r.path)
1445
+ onClick: (p) => de(r.path)
1416
1446
  }, [
1417
- r.title !== "首页" ? (a(), c("span", fo, [
1418
- G(N(r.icon)) ? (a(), B(n(U), {
1447
+ r.title !== "首页" ? (a(), c("span", go, [
1448
+ J(I(r.icon)) ? (a(), B(l(U), {
1419
1449
  key: 0,
1420
- name: N(r.icon),
1450
+ name: I(r.icon),
1421
1451
  size: 16
1422
- }, null, 8, ["name"])) : (a(), c("span", go, x(D(r.title)), 1))
1423
- ])) : P("", !0),
1424
- e("span", yo, x(r.title), 1),
1425
- r.parentTitle ? (a(), c("span", bo, x(r.parentTitle), 1)) : P("", !0)
1426
- ], 8, _o))), 128))
1427
- ])) : (a(), c("div", ko, " 未找到匹配的菜单 "))
1428
- ])) : P("", !0)
1452
+ }, null, 8, ["name"])) : (a(), c("span", yo, x(F(r.title)), 1))
1453
+ ])) : T("", !0),
1454
+ e("span", bo, x(r.title), 1),
1455
+ r.parentTitle ? (a(), c("span", ko, x(r.parentTitle), 1)) : T("", !0)
1456
+ ], 8, fo))), 128))
1457
+ ])) : (a(), c("div", wo, " 未找到匹配的菜单 "))
1458
+ ])) : T("", !0)
1429
1459
  ]),
1430
1460
  _: 1
1431
1461
  })
1432
1462
  ], 512),
1433
1463
  e("div", {
1434
1464
  class: "top-menu__action",
1435
- onClick: se,
1436
- title: F.value ? "退出全屏" : "全屏"
1465
+ onClick: ne,
1466
+ title: A.value ? "退出全屏" : "全屏"
1437
1467
  }, [
1438
- b(n(U), {
1439
- name: F.value ? "fullscreen-exit" : "fullscreen",
1468
+ b(l(U), {
1469
+ name: A.value ? "fullscreen-exit" : "fullscreen",
1440
1470
  size: 16
1441
1471
  }, null, 8, ["name"])
1442
- ], 8, wo),
1472
+ ], 8, xo),
1443
1473
  e("div", {
1444
1474
  class: "top-menu__action",
1445
- onClick: ce,
1475
+ onClick: te,
1446
1476
  title: "换肤设置"
1447
1477
  }, [
1448
- b(n(U), {
1478
+ b(l(U), {
1449
1479
  name: "skin",
1450
1480
  size: 16
1451
1481
  })
@@ -1455,8 +1485,8 @@ const de = Ee("menu", () => {
1455
1485
  onClick: R,
1456
1486
  title: "切换主题"
1457
1487
  }, [
1458
- b(n(U), {
1459
- name: n(i).isDark ? "sun" : "moon",
1488
+ b(l(U), {
1489
+ name: l(i).isDark ? "sun" : "moon",
1460
1490
  size: 16
1461
1491
  }, null, 8, ["name"])
1462
1492
  ]),
@@ -1467,99 +1497,112 @@ const de = Ee("menu", () => {
1467
1497
  }, [
1468
1498
  e("div", {
1469
1499
  class: "top-menu__user-trigger",
1470
- onClick: Pe(pe, ["stop"])
1500
+ onClick: Te(_e, ["stop"])
1471
1501
  }, [
1472
- e("div", xo, [
1473
- e("span", null, x(((te = n(h).userName) == null ? void 0 : te.charAt(0)) || "U"), 1)
1502
+ e("div", Co, [
1503
+ e("span", null, x(((ae = l(h).userName) == null ? void 0 : ae.charAt(0)) || "U"), 1)
1474
1504
  ]),
1475
- e("span", Co, x(n(h).userName), 1),
1505
+ e("span", $o, x(l(h).userName), 1),
1476
1506
  e("span", {
1477
- class: J(["top-menu__user-arrow", { "is-active": A.value }])
1478
- }, "▼", 2)
1507
+ class: Q(["top-menu__user-arrow", { "is-active": D.value }])
1508
+ }, [...C[3] || (C[3] = [
1509
+ e("svg", {
1510
+ viewBox: "0 0 12 12",
1511
+ width: "10",
1512
+ height: "10",
1513
+ fill: "none",
1514
+ stroke: "currentColor",
1515
+ "stroke-width": "1.5",
1516
+ "stroke-linecap": "round",
1517
+ "stroke-linejoin": "round"
1518
+ }, [
1519
+ e("path", { d: "M2.5 4.5 6 8l3.5-3.5" })
1520
+ ], -1)
1521
+ ])], 2)
1479
1522
  ]),
1480
- b(be, { name: "dropdown" }, {
1523
+ b(Ce, { name: "dropdown" }, {
1481
1524
  default: M(() => {
1482
1525
  var r;
1483
1526
  return [
1484
- A.value ? (a(), c("div", $o, [
1485
- e("div", Lo, [
1486
- e("div", Mo, [
1487
- e("span", null, x(((r = n(h).userName) == null ? void 0 : r.charAt(0)) || "U"), 1)
1488
- ]),
1527
+ D.value ? (a(), c("div", Lo, [
1528
+ e("div", Mo, [
1489
1529
  e("div", So, [
1490
- e("div", No, x(n(h).userName), 1),
1491
- e("div", Io, x(n(h).departmentName), 1)
1530
+ e("span", null, x(((r = l(h).userName) == null ? void 0 : r.charAt(0)) || "U"), 1)
1531
+ ]),
1532
+ e("div", No, [
1533
+ e("div", Io, x(l(h).userName), 1),
1534
+ e("div", Eo, x(l(h).departmentName), 1)
1492
1535
  ])
1493
1536
  ]),
1494
- L[7] || (L[7] = e("div", { class: "top-menu__dropdown-divider" }, null, -1)),
1495
- e("div", Eo, [
1537
+ C[8] || (C[8] = e("div", { class: "top-menu__dropdown-divider" }, null, -1)),
1538
+ e("div", Uo, [
1496
1539
  e("div", {
1497
1540
  class: "top-menu__dropdown-item",
1498
- onClick: ge
1541
+ onClick: we
1499
1542
  }, [
1500
- b(n(U), {
1543
+ b(l(U), {
1501
1544
  name: "user",
1502
1545
  size: 16
1503
1546
  }),
1504
- L[3] || (L[3] = e("span", null, "个人信息", -1))
1547
+ C[4] || (C[4] = e("span", null, "个人信息", -1))
1505
1548
  ]),
1506
1549
  e("div", {
1507
1550
  class: "top-menu__dropdown-item",
1508
1551
  onClick: z
1509
1552
  }, [
1510
- b(n(U), {
1553
+ b(l(U), {
1511
1554
  name: "lock",
1512
1555
  size: 16
1513
1556
  }),
1514
- L[4] || (L[4] = e("span", null, "修改密码", -1))
1557
+ C[5] || (C[5] = e("span", null, "修改密码", -1))
1515
1558
  ]),
1516
- L[6] || (L[6] = e("div", { class: "top-menu__dropdown-divider" }, null, -1)),
1559
+ C[7] || (C[7] = e("div", { class: "top-menu__dropdown-divider" }, null, -1)),
1517
1560
  e("div", {
1518
1561
  class: "top-menu__dropdown-item top-menu__dropdown-item--danger",
1519
1562
  onClick: k
1520
1563
  }, [
1521
- b(n(U), {
1564
+ b(l(U), {
1522
1565
  name: "logout",
1523
1566
  size: 16
1524
1567
  }),
1525
- L[5] || (L[5] = e("span", null, "退出登录", -1))
1568
+ C[6] || (C[6] = e("span", null, "退出登录", -1))
1526
1569
  ])
1527
1570
  ])
1528
- ])) : P("", !0)
1571
+ ])) : T("", !0)
1529
1572
  ];
1530
1573
  }),
1531
1574
  _: 1
1532
1575
  })
1533
1576
  ], 512)
1534
1577
  ]),
1535
- b(n(Xe), {
1578
+ b(l(Xe), {
1536
1579
  modelValue: V.value,
1537
- "onUpdate:modelValue": L[2] || (L[2] = (r) => V.value = r),
1580
+ "onUpdate:modelValue": C[2] || (C[2] = (r) => V.value = r),
1538
1581
  title: "换肤设置",
1539
1582
  direction: "rtl",
1540
1583
  size: "320px"
1541
1584
  }, {
1542
1585
  default: M(() => [
1543
- e("div", Uo, [
1544
- e("div", zo, [
1545
- L[11] || (L[11] = e("div", { class: "settings-title" }, "布局模式", -1)),
1586
+ e("div", zo, [
1587
+ e("div", Po, [
1588
+ C[12] || (C[12] = e("div", { class: "settings-title" }, "布局模式", -1)),
1546
1589
  e("div", To, [
1547
- (a(), c(K, null, X(Ce, (r) => e("div", {
1590
+ (a(), c(K, null, Z(be, (r) => e("div", {
1548
1591
  key: r.value,
1549
- class: J(["layout-option", { "is-active": $e.value === r.value }]),
1550
- onClick: (p) => Le(r.value)
1592
+ class: Q(["layout-option", { "is-active": ce.value === r.value }]),
1593
+ onClick: (p) => ge(r.value)
1551
1594
  }, [
1552
1595
  e("div", Do, [
1553
- r.value === "sidebar" ? (a(), c("div", Ao, [...L[8] || (L[8] = [
1596
+ r.value === "sidebar" ? (a(), c("div", Ao, [...C[9] || (C[9] = [
1554
1597
  e("div", { class: "preview-aside" }, null, -1),
1555
1598
  e("div", { class: "preview-main" }, [
1556
1599
  e("div", { class: "preview-header" }),
1557
1600
  e("div", { class: "preview-content" })
1558
1601
  ], -1)
1559
- ])])) : r.value === "top" ? (a(), c("div", Fo, [...L[9] || (L[9] = [
1602
+ ])])) : r.value === "top" ? (a(), c("div", Bo, [...C[10] || (C[10] = [
1560
1603
  e("div", { class: "preview-header-full" }, null, -1),
1561
1604
  e("div", { class: "preview-content-full" }, null, -1)
1562
- ])])) : (a(), c("div", Bo, [...L[10] || (L[10] = [
1605
+ ])])) : (a(), c("div", Vo, [...C[11] || (C[11] = [
1563
1606
  e("div", { class: "preview-header-mix" }, [
1564
1607
  e("div", { class: "preview-mix-left" })
1565
1608
  ], -1),
@@ -1569,47 +1612,47 @@ const de = Ee("menu", () => {
1569
1612
  ], -1)
1570
1613
  ])]))
1571
1614
  ]),
1572
- e("span", Vo, x(r.label), 1)
1573
- ], 10, Po)), 64))
1615
+ e("span", Oo, x(r.label), 1)
1616
+ ], 10, Fo)), 64))
1574
1617
  ])
1575
1618
  ]),
1576
- e("div", Oo, [
1577
- L[12] || (L[12] = e("div", { class: "settings-title" }, "主题色", -1)),
1578
- e("div", Ro, [
1579
- (a(), c(K, null, X(Me, (r) => e("div", {
1619
+ e("div", Ro, [
1620
+ C[13] || (C[13] = e("div", { class: "settings-title" }, "主题色", -1)),
1621
+ e("div", Ko, [
1622
+ (a(), c(K, null, Z(Me, (r) => e("div", {
1580
1623
  key: r.value,
1581
- class: J(["color-option", { "is-active": n(i).primaryColor === r.value }]),
1624
+ class: Q(["color-option", { "is-active": l(i).primaryColor === r.value }]),
1582
1625
  style: Ne({ backgroundColor: r.value }),
1583
1626
  title: r.label,
1584
- onClick: (p) => fe(r.value)
1627
+ onClick: (p) => ke(r.value)
1585
1628
  }, [
1586
- n(i).primaryColor === r.value ? (a(), B(n(U), {
1629
+ l(i).primaryColor === r.value ? (a(), B(l(U), {
1587
1630
  key: 0,
1588
1631
  name: "check",
1589
1632
  size: 12,
1590
1633
  color: "#fff"
1591
- })) : P("", !0)
1592
- ], 14, Ko)), 64))
1634
+ })) : T("", !0)
1635
+ ], 14, jo)), 64))
1593
1636
  ])
1594
1637
  ]),
1595
- e("div", jo, [
1596
- L[17] || (L[17] = e("div", { class: "settings-title" }, "功能设置", -1)),
1597
- e("div", Wo, [
1598
- e("div", qo, [
1599
- L[14] || (L[14] = e("span", null, "灰色模式", -1)),
1638
+ e("div", Wo, [
1639
+ C[18] || (C[18] = e("div", { class: "settings-title" }, "功能设置", -1)),
1640
+ e("div", qo, [
1641
+ e("div", Ho, [
1642
+ C[15] || (C[15] = e("span", null, "灰色模式", -1)),
1600
1643
  e("div", {
1601
- class: J(["switch-wrapper", { "is-checked": H.value }]),
1602
- onClick: ve
1603
- }, [...L[13] || (L[13] = [
1644
+ class: Q(["switch-wrapper", { "is-checked": G.value }]),
1645
+ onClick: me
1646
+ }, [...C[14] || (C[14] = [
1604
1647
  e("span", { class: "switch-core" }, null, -1)
1605
1648
  ])], 2)
1606
1649
  ]),
1607
- e("div", Ho, [
1608
- L[16] || (L[16] = e("span", null, "暗黑模式", -1)),
1650
+ e("div", Yo, [
1651
+ C[17] || (C[17] = e("span", null, "暗黑模式", -1)),
1609
1652
  e("div", {
1610
- class: J(["switch-wrapper", { "is-checked": n(i).isDark }]),
1611
- onClick: xe
1612
- }, [...L[15] || (L[15] = [
1653
+ class: Q(["switch-wrapper", { "is-checked": l(i).isDark }]),
1654
+ onClick: fe
1655
+ }, [...C[16] || (C[16] = [
1613
1656
  e("span", { class: "switch-core" }, null, -1)
1614
1657
  ])], 2)
1615
1658
  ])
@@ -1622,61 +1665,61 @@ const de = Ee("menu", () => {
1622
1665
  ]);
1623
1666
  };
1624
1667
  }
1625
- }), Go = /* @__PURE__ */ re(Yo, [["__scopeId", "data-v-114a2a03"]]), Xo = { class: "mix-top-menu" }, Jo = { class: "mix-top-menu__logo" }, Zo = ["src"], Qo = { class: "mix-top-menu__logo-text" }, ea = { class: "mix-top-menu__menu-content" }, ta = {
1668
+ }), Xo = /* @__PURE__ */ ie(Go, [["__scopeId", "data-v-05337ab6"]]), Jo = { class: "mix-top-menu" }, Zo = { class: "mix-top-menu__logo" }, Qo = ["src"], ea = { class: "mix-top-menu__logo-text" }, ta = { class: "mix-top-menu__menu-content" }, sa = {
1626
1669
  key: 0,
1627
1670
  class: "mix-top-menu__menu-icon"
1628
- }, sa = {
1671
+ }, oa = {
1629
1672
  key: 1,
1630
1673
  class: "mix-top-menu__menu-char"
1631
- }, oa = { class: "mix-top-menu__menu-text" }, aa = { class: "mix-top-menu__actions" }, na = {
1674
+ }, aa = { class: "mix-top-menu__menu-text" }, na = { class: "mix-top-menu__actions" }, la = {
1632
1675
  key: 0,
1633
1676
  class: "mix-top-menu__search-dropdown"
1634
- }, la = {
1677
+ }, ra = {
1635
1678
  key: 0,
1636
1679
  class: "mix-top-menu__search-results"
1637
- }, ra = ["onClick"], ia = {
1680
+ }, ia = ["onClick"], ca = {
1638
1681
  key: 0,
1639
1682
  class: "mix-top-menu__search-icon-item"
1640
- }, ca = {
1683
+ }, ua = {
1641
1684
  key: 1,
1642
1685
  class: "mix-top-menu__search-char"
1643
- }, ua = { class: "mix-top-menu__search-item-title" }, da = {
1686
+ }, da = { class: "mix-top-menu__search-item-title" }, ma = {
1644
1687
  key: 1,
1645
1688
  class: "mix-top-menu__search-item-parent"
1646
- }, ma = {
1689
+ }, pa = {
1647
1690
  key: 1,
1648
1691
  class: "mix-top-menu__search-empty"
1649
- }, pa = ["title"], va = { class: "mix-top-menu__avatar" }, ha = { class: "mix-top-menu__user-name" }, _a = {
1692
+ }, va = ["title"], ha = { class: "mix-top-menu__avatar" }, _a = { class: "mix-top-menu__user-name" }, fa = {
1650
1693
  key: 0,
1651
1694
  class: "mix-top-menu__dropdown"
1652
- }, fa = { class: "mix-top-menu__dropdown-header" }, ga = { class: "mix-top-menu__dropdown-avatar" }, ya = { class: "mix-top-menu__dropdown-info" }, ba = { class: "mix-top-menu__dropdown-name" }, ka = { class: "mix-top-menu__dropdown-role" }, wa = { class: "mix-top-menu__dropdown-menu" }, xa = { class: "settings-drawer" }, Ca = { class: "settings-section" }, $a = { class: "settings-layout-options" }, La = ["onClick"], Ma = { class: "layout-option__preview" }, Sa = {
1695
+ }, ga = { class: "mix-top-menu__dropdown-header" }, ya = { class: "mix-top-menu__dropdown-avatar" }, ba = { class: "mix-top-menu__dropdown-info" }, ka = { class: "mix-top-menu__dropdown-name" }, wa = { class: "mix-top-menu__dropdown-role" }, xa = { class: "mix-top-menu__dropdown-menu" }, Ca = { class: "settings-drawer" }, $a = { class: "settings-section" }, La = { class: "settings-layout-options" }, Ma = ["onClick"], Sa = { class: "layout-option__preview" }, Na = {
1653
1696
  key: 0,
1654
1697
  class: "layout-preview-sidebar"
1655
- }, Na = {
1698
+ }, Ia = {
1656
1699
  key: 1,
1657
1700
  class: "layout-preview-top"
1658
- }, Ia = {
1701
+ }, Ea = {
1659
1702
  key: 2,
1660
1703
  class: "layout-preview-mix"
1661
- }, Ea = { class: "layout-option__label" }, Ua = { class: "settings-section" }, za = { class: "settings-color-options" }, Ta = ["title", "onClick"], Pa = { class: "settings-section" }, Da = { class: "settings-switch-list" }, Aa = { class: "settings-switch-item" }, Fa = { class: "settings-switch-item" }, Ba = /* @__PURE__ */ ne({
1704
+ }, Ua = { class: "layout-option__label" }, za = { class: "settings-section" }, Pa = { class: "settings-color-options" }, Ta = ["title", "onClick"], Fa = { class: "settings-section" }, Da = { class: "settings-switch-list" }, Aa = { class: "settings-switch-item" }, Ba = { class: "settings-switch-item" }, Va = /* @__PURE__ */ le({
1662
1705
  __name: "MixTopMenu",
1663
1706
  props: {
1664
1707
  logoSrc: { default: "/vite.svg" }
1665
1708
  },
1666
1709
  setup(t) {
1667
- const l = t, u = we(), s = me(), o = de(), i = ue(), h = le(), v = Ue(), d = y(""), g = (r, p = "") => {
1710
+ const n = t, u = Le(), s = he(), o = ve(), i = pe(), h = re(), v = Ue(), d = y(""), g = (r, p = "") => {
1668
1711
  const O = [];
1669
- return r.forEach(($) => {
1670
- $.children && $.children.length > 0 ? O.push(...g($.children, $.menuName)) : O.push({ ...$, parentTitle: p, title: $.menuName, path: $.menuUrl });
1712
+ return r.forEach((L) => {
1713
+ L.children && L.children.length > 0 ? O.push(...g(L.children, L.menuName)) : O.push({ ...L, parentTitle: p, title: L.menuName, path: L.menuUrl });
1671
1714
  }), O;
1672
- }, _ = w(() => N.value.trim() ? g(o.menuList).filter(
1673
- (p) => p.title.toLowerCase().includes(N.value.toLowerCase())
1715
+ }, _ = w(() => I.value.trim() ? g(o.menuList).filter(
1716
+ (p) => p.title.toLowerCase().includes(I.value.toLowerCase())
1674
1717
  ) : []), f = w(() => {
1675
1718
  const r = o.menuList.find((p) => p.menuUrl === d.value);
1676
1719
  return (r == null ? void 0 : r.children) || [];
1677
1720
  }), m = w(() => o.menuList.find((r) => !!(u.path === r.menuUrl || r.children && r.children.some((p) => u.path.startsWith(p.menuUrl) || u.path === p.menuUrl)))), j = () => {
1678
1721
  m.value ? d.value = m.value.menuUrl : o.menuList.length > 0 && (d.value = o.menuList[0].menuUrl);
1679
- }, A = (r) => {
1722
+ }, D = (r) => {
1680
1723
  d.value = r;
1681
1724
  const p = o.menuList.find((O) => O.menuUrl === r);
1682
1725
  if (p)
@@ -1685,13 +1728,13 @@ const de = Ee("menu", () => {
1685
1728
  u.path !== O && s.push(O);
1686
1729
  } else
1687
1730
  u.path !== r && s.push(r);
1688
- }, W = w(() => i.isDark ? "#1d1e1f" : "#fff"), F = w(() => i.isDark ? "#cfd3dc" : "#303133"), V = w(() => "#409eff"), H = y(!1), Z = y(null), Y = y(!1), q = y(!1), ee = y(!1), T = y(!1), N = y(""), D = y(null);
1689
- ye(() => u.path, () => {
1731
+ }, W = w(() => i.isDark ? "#1d1e1f" : "#fff"), A = w(() => i.isDark ? "#cfd3dc" : "#303133"), V = w(() => "#409eff"), G = y(!1), ee = y(null), X = y(!1), q = y(!1), oe = y(!1), P = y(!1), I = y(""), F = y(null);
1732
+ xe(() => u.path, () => {
1690
1733
  j(), i.setMixSubMenus(f.value);
1691
- }), ye(() => o.menuList, (r) => {
1734
+ }), xe(() => o.menuList, (r) => {
1692
1735
  r && r.length > 0 && (j(), i.setMixSubMenus(f.value));
1693
1736
  }, { immediate: !0 });
1694
- const G = /* @__PURE__ */ new Set([
1737
+ const J = /* @__PURE__ */ new Set([
1695
1738
  "arrow-up",
1696
1739
  "arrow-down",
1697
1740
  "arrow-left",
@@ -1830,95 +1873,94 @@ const de = Ee("menu", () => {
1830
1873
  list: "list",
1831
1874
  grid: "grid"
1832
1875
  }[r] || r;
1833
- }, se = (r) => r ? r.charAt(0) : "", ie = (r) => G.has(r), pe = () => {
1876
+ }, ne = (r) => r ? r.charAt(0) : "", ue = (r) => J.has(r), _e = () => {
1834
1877
  i.toggleTheme(), q.value = !1;
1835
- }, E = () => {
1878
+ }, N = () => {
1836
1879
  document.fullscreenElement ? document.exitFullscreen() : document.documentElement.requestFullscreen();
1837
- }, oe = () => {
1838
- Y.value = !!document.fullscreenElement;
1839
- }, _e = () => {
1840
- H.value = !H.value;
1841
- }, ce = () => {
1842
- H.value = !1;
1843
- }, ae = () => {
1844
- T.value = !1, N.value = "";
1845
- }, ve = (r) => {
1846
- s.push(r), ae();
1847
- }, xe = () => {
1880
+ }, H = () => {
1881
+ X.value = !!document.fullscreenElement;
1882
+ }, de = () => {
1883
+ G.value = !G.value;
1884
+ }, te = () => {
1885
+ G.value = !1;
1886
+ }, Y = () => {
1887
+ P.value = !1, I.value = "";
1888
+ }, me = (r) => {
1889
+ s.push(r), Y();
1890
+ }, fe = () => {
1848
1891
  q.value = !0;
1849
- }, Ce = (r) => {
1850
- ee.value = r;
1892
+ }, be = (r) => {
1893
+ oe.value = r;
1851
1894
  const p = document.documentElement;
1852
1895
  r ? p.classList.add("grey-mode") : p.classList.remove("grey-mode");
1853
- }, $e = () => {
1854
- Ce(!ee.value), q.value = !1;
1855
- }, Le = () => {
1896
+ }, ce = () => {
1897
+ be(!oe.value), q.value = !1;
1898
+ }, ge = () => {
1856
1899
  i.toggleTheme(), q.value = !1;
1857
1900
  }, Me = [
1858
1901
  { value: "sidebar", label: "左侧菜单", icon: "sidebar-left" },
1859
1902
  { value: "top", label: "顶部菜单", icon: "menu" },
1860
1903
  { value: "mix", label: "混合菜单", icon: "grid" }
1861
- ], fe = w(() => i.layout), ge = (r) => {
1904
+ ], ke = w(() => i.layout), we = (r) => {
1862
1905
  i.setLayout(r), q.value = !1;
1863
1906
  }, z = [
1864
1907
  { value: "#409eff", label: "默认蓝" },
1865
- { value: "#1890ff", label: "科技蓝" },
1866
- { value: "#52c41a", label: "极光绿" },
1867
- { value: "#faad14", label: "日落橙" },
1868
- { value: "#f5222d", label: "薄暮红" },
1869
- { value: "#722ed1", label: "酱紫" }
1908
+ { value: "#0F6FDE", label: "企业蓝" },
1909
+ { value: "#00A870", label: "翡翠绿" },
1910
+ { value: "#D46B08", label: "琥珀橙" },
1911
+ { value: "#1F2329", label: "石墨黑" }
1870
1912
  ], k = (r) => {
1871
1913
  i.setPrimaryColor(r), q.value = !1;
1872
- }, Q = () => {
1873
- ce(), s.push("/profile");
1874
- }, C = () => {
1875
- ce(), s.push("/change-password");
1914
+ }, se = () => {
1915
+ te(), s.push("/profile");
1916
+ }, $ = () => {
1917
+ te(), s.push("/change-password");
1876
1918
  }, S = () => {
1877
- ce(), v.logout(), h.clearUserInfo(), o.clearMenu(), s.push(i.loginPath);
1878
- }, L = (r) => {
1879
- Z.value && !Z.value.contains(r.target) && ce(), D.value && !D.value.contains(r.target) && ae();
1880
- }, te = (r) => {
1881
- r.key === "Escape" && (ae(), ce());
1919
+ te(), v.logout(), h.clearUserInfo(), o.clearMenu(), s.push(i.loginPath);
1920
+ }, C = (r) => {
1921
+ ee.value && !ee.value.contains(r.target) && te(), F.value && !F.value.contains(r.target) && Y();
1922
+ }, ae = (r) => {
1923
+ r.key === "Escape" && (Y(), te());
1882
1924
  };
1883
1925
  return Ke(() => {
1884
- document.addEventListener("click", L), document.addEventListener("fullscreenchange", oe), document.addEventListener("keydown", te), ee.value = document.documentElement.classList.contains("grey-mode"), j();
1926
+ document.addEventListener("click", C), document.addEventListener("fullscreenchange", H), document.addEventListener("keydown", ae), oe.value = document.documentElement.classList.contains("grey-mode"), j();
1885
1927
  }), je(() => {
1886
- document.removeEventListener("click", L), document.removeEventListener("fullscreenchange", oe), document.removeEventListener("keydown", te);
1928
+ document.removeEventListener("click", C), document.removeEventListener("fullscreenchange", H), document.removeEventListener("keydown", ae);
1887
1929
  }), (r, p) => {
1888
1930
  var O;
1889
- return a(), c("div", Xo, [
1890
- e("div", Jo, [
1931
+ return a(), c("div", Jo, [
1932
+ e("div", Zo, [
1891
1933
  e("img", {
1892
- src: l.logoSrc,
1934
+ src: n.logoSrc,
1893
1935
  alt: "Logo",
1894
1936
  class: "mix-top-menu__logo-img"
1895
- }, null, 8, Zo),
1896
- e("span", Qo, x(n(i).appName), 1)
1937
+ }, null, 8, Qo),
1938
+ e("span", ea, x(l(i).appName), 1)
1897
1939
  ]),
1898
- b(n(Ge), {
1940
+ b(l(Ge), {
1899
1941
  "model-value": d.value,
1900
1942
  mode: "horizontal",
1901
1943
  "background-color": W.value,
1902
- "text-color": F.value,
1944
+ "text-color": A.value,
1903
1945
  "active-text-color": V.value,
1904
1946
  class: "mix-top-menu__menu",
1905
- onSelect: A
1947
+ onSelect: D
1906
1948
  }, {
1907
1949
  default: M(() => [
1908
- (a(!0), c(K, null, X(n(o).menuList, ($) => (a(), B(n(Se), {
1909
- key: $.menuUrl,
1910
- index: $.menuUrl
1950
+ (a(!0), c(K, null, Z(l(o).menuList, (L) => (a(), B(l(Se), {
1951
+ key: L.menuUrl,
1952
+ index: L.menuUrl
1911
1953
  }, {
1912
1954
  default: M(() => [
1913
- e("span", ea, [
1914
- $.menuName !== "首页" ? (a(), c("span", ta, [
1915
- ie(R($.icon)) ? (a(), B(n(U), {
1955
+ e("span", ta, [
1956
+ L.menuName !== "首页" ? (a(), c("span", sa, [
1957
+ ue(R(L.icon)) ? (a(), B(l(U), {
1916
1958
  key: 0,
1917
- name: R($.icon),
1959
+ name: R(L.icon),
1918
1960
  size: 16
1919
- }, null, 8, ["name"])) : (a(), c("span", sa, x(se($.menuName)), 1))
1920
- ])) : P("", !0),
1921
- e("span", oa, x($.menuName), 1)
1961
+ }, null, 8, ["name"])) : (a(), c("span", oa, x(ne(L.menuName)), 1))
1962
+ ])) : T("", !0),
1963
+ e("span", aa, x(L.menuName), 1)
1922
1964
  ])
1923
1965
  ]),
1924
1966
  _: 2
@@ -1926,181 +1968,194 @@ const de = Ee("menu", () => {
1926
1968
  ]),
1927
1969
  _: 1
1928
1970
  }, 8, ["model-value", "background-color", "text-color", "active-text-color"]),
1929
- e("div", aa, [
1971
+ e("div", na, [
1930
1972
  e("div", {
1931
1973
  class: "mix-top-menu__search",
1932
1974
  ref_key: "searchRef",
1933
- ref: D
1975
+ ref: F
1934
1976
  }, [
1935
- b(n(U), {
1977
+ b(l(U), {
1936
1978
  name: "search",
1937
1979
  size: 14,
1938
1980
  class: "mix-top-menu__search-icon"
1939
1981
  }),
1940
- Te(e("input", {
1941
- "onUpdate:modelValue": p[0] || (p[0] = ($) => N.value = $),
1982
+ Pe(e("input", {
1983
+ "onUpdate:modelValue": p[0] || (p[0] = (L) => I.value = L),
1942
1984
  type: "text",
1943
1985
  class: "mix-top-menu__search-input",
1944
1986
  placeholder: "搜索菜单...",
1945
- onFocus: p[1] || (p[1] = ($) => T.value = !0)
1987
+ onFocus: p[1] || (p[1] = (L) => P.value = !0)
1946
1988
  }, null, 544), [
1947
- [We, N.value]
1989
+ [We, I.value]
1948
1990
  ]),
1949
- b(be, { name: "search-dropdown" }, {
1991
+ b(Ce, { name: "search-dropdown" }, {
1950
1992
  default: M(() => [
1951
- T.value && (_.value.length > 0 || N.value) ? (a(), c("div", na, [
1952
- _.value.length > 0 ? (a(), c("div", la, [
1953
- (a(!0), c(K, null, X(_.value, ($) => (a(), c("div", {
1954
- key: $.path,
1993
+ P.value && (_.value.length > 0 || I.value) ? (a(), c("div", la, [
1994
+ _.value.length > 0 ? (a(), c("div", ra, [
1995
+ (a(!0), c(K, null, Z(_.value, (L) => (a(), c("div", {
1996
+ key: L.path,
1955
1997
  class: "mix-top-menu__search-item",
1956
- onClick: (Ze) => ve($.path)
1998
+ onClick: (Ze) => me(L.path)
1957
1999
  }, [
1958
- $.title !== "首页" ? (a(), c("span", ia, [
1959
- ie(R($.icon)) ? (a(), B(n(U), {
2000
+ L.title !== "首页" ? (a(), c("span", ca, [
2001
+ ue(R(L.icon)) ? (a(), B(l(U), {
1960
2002
  key: 0,
1961
- name: R($.icon),
2003
+ name: R(L.icon),
1962
2004
  size: 16
1963
- }, null, 8, ["name"])) : (a(), c("span", ca, x(se($.title)), 1))
1964
- ])) : P("", !0),
1965
- e("span", ua, x($.title), 1),
1966
- $.parentTitle ? (a(), c("span", da, x($.parentTitle), 1)) : P("", !0)
1967
- ], 8, ra))), 128))
1968
- ])) : (a(), c("div", ma, " 未找到匹配的菜单 "))
1969
- ])) : P("", !0)
2005
+ }, null, 8, ["name"])) : (a(), c("span", ua, x(ne(L.title)), 1))
2006
+ ])) : T("", !0),
2007
+ e("span", da, x(L.title), 1),
2008
+ L.parentTitle ? (a(), c("span", ma, x(L.parentTitle), 1)) : T("", !0)
2009
+ ], 8, ia))), 128))
2010
+ ])) : (a(), c("div", pa, " 未找到匹配的菜单 "))
2011
+ ])) : T("", !0)
1970
2012
  ]),
1971
2013
  _: 1
1972
2014
  })
1973
2015
  ], 512),
1974
2016
  e("div", {
1975
2017
  class: "mix-top-menu__action",
1976
- onClick: E,
1977
- title: Y.value ? "退出全屏" : "全屏"
2018
+ onClick: N,
2019
+ title: X.value ? "退出全屏" : "全屏"
1978
2020
  }, [
1979
- b(n(U), {
1980
- name: Y.value ? "fullscreen-exit" : "fullscreen",
2021
+ b(l(U), {
2022
+ name: X.value ? "fullscreen-exit" : "fullscreen",
1981
2023
  size: 16
1982
2024
  }, null, 8, ["name"])
1983
- ], 8, pa),
2025
+ ], 8, va),
1984
2026
  e("div", {
1985
2027
  class: "mix-top-menu__action",
1986
- onClick: xe,
2028
+ onClick: fe,
1987
2029
  title: "换肤设置"
1988
2030
  }, [
1989
- b(n(U), {
2031
+ b(l(U), {
1990
2032
  name: "skin",
1991
2033
  size: 16
1992
2034
  })
1993
2035
  ]),
1994
2036
  e("div", {
1995
2037
  class: "mix-top-menu__action",
1996
- onClick: pe,
2038
+ onClick: _e,
1997
2039
  title: "切换主题"
1998
2040
  }, [
1999
- b(n(U), {
2000
- name: n(i).isDark ? "sun" : "moon",
2041
+ b(l(U), {
2042
+ name: l(i).isDark ? "sun" : "moon",
2001
2043
  size: 16
2002
2044
  }, null, 8, ["name"])
2003
2045
  ]),
2004
2046
  e("div", {
2005
2047
  class: "mix-top-menu__user",
2006
2048
  ref_key: "dropdownRef",
2007
- ref: Z
2049
+ ref: ee
2008
2050
  }, [
2009
2051
  e("div", {
2010
2052
  class: "mix-top-menu__user-trigger",
2011
- onClick: Pe(_e, ["stop"])
2053
+ onClick: Te(de, ["stop"])
2012
2054
  }, [
2013
- e("div", va, [
2014
- e("span", null, x(((O = n(h).userName) == null ? void 0 : O.charAt(0)) || "U"), 1)
2055
+ e("div", ha, [
2056
+ e("span", null, x(((O = l(h).userName) == null ? void 0 : O.charAt(0)) || "U"), 1)
2015
2057
  ]),
2016
- e("span", ha, x(n(h).userName), 1),
2058
+ e("span", _a, x(l(h).userName), 1),
2017
2059
  e("span", {
2018
- class: J(["mix-top-menu__user-arrow", { "is-active": H.value }])
2019
- }, "▼", 2)
2060
+ class: Q(["mix-top-menu__user-arrow", { "is-active": G.value }])
2061
+ }, [...p[3] || (p[3] = [
2062
+ e("svg", {
2063
+ viewBox: "0 0 12 12",
2064
+ width: "10",
2065
+ height: "10",
2066
+ fill: "none",
2067
+ stroke: "currentColor",
2068
+ "stroke-width": "1.5",
2069
+ "stroke-linecap": "round",
2070
+ "stroke-linejoin": "round"
2071
+ }, [
2072
+ e("path", { d: "M2.5 4.5 6 8l3.5-3.5" })
2073
+ ], -1)
2074
+ ])], 2)
2020
2075
  ]),
2021
- b(be, { name: "dropdown" }, {
2076
+ b(Ce, { name: "dropdown" }, {
2022
2077
  default: M(() => {
2023
- var $;
2078
+ var L;
2024
2079
  return [
2025
- H.value ? (a(), c("div", _a, [
2026
- e("div", fa, [
2027
- e("div", ga, [
2028
- e("span", null, x((($ = n(h).userName) == null ? void 0 : $.charAt(0)) || "U"), 1)
2029
- ]),
2080
+ G.value ? (a(), c("div", fa, [
2081
+ e("div", ga, [
2030
2082
  e("div", ya, [
2031
- e("div", ba, x(n(h).userName), 1),
2032
- e("div", ka, x(n(h).departmentName), 1)
2083
+ e("span", null, x(((L = l(h).userName) == null ? void 0 : L.charAt(0)) || "U"), 1)
2084
+ ]),
2085
+ e("div", ba, [
2086
+ e("div", ka, x(l(h).userName), 1),
2087
+ e("div", wa, x(l(h).departmentName), 1)
2033
2088
  ])
2034
2089
  ]),
2035
- p[7] || (p[7] = e("div", { class: "mix-top-menu__dropdown-divider" }, null, -1)),
2036
- e("div", wa, [
2090
+ p[8] || (p[8] = e("div", { class: "mix-top-menu__dropdown-divider" }, null, -1)),
2091
+ e("div", xa, [
2037
2092
  e("div", {
2038
2093
  class: "mix-top-menu__dropdown-item",
2039
- onClick: Q
2094
+ onClick: se
2040
2095
  }, [
2041
- b(n(U), {
2096
+ b(l(U), {
2042
2097
  name: "user",
2043
2098
  size: 16
2044
2099
  }),
2045
- p[3] || (p[3] = e("span", null, "个人信息", -1))
2100
+ p[4] || (p[4] = e("span", null, "个人信息", -1))
2046
2101
  ]),
2047
2102
  e("div", {
2048
2103
  class: "mix-top-menu__dropdown-item",
2049
- onClick: C
2104
+ onClick: $
2050
2105
  }, [
2051
- b(n(U), {
2106
+ b(l(U), {
2052
2107
  name: "lock",
2053
2108
  size: 16
2054
2109
  }),
2055
- p[4] || (p[4] = e("span", null, "修改密码", -1))
2110
+ p[5] || (p[5] = e("span", null, "修改密码", -1))
2056
2111
  ]),
2057
- p[6] || (p[6] = e("div", { class: "mix-top-menu__dropdown-divider" }, null, -1)),
2112
+ p[7] || (p[7] = e("div", { class: "mix-top-menu__dropdown-divider" }, null, -1)),
2058
2113
  e("div", {
2059
2114
  class: "mix-top-menu__dropdown-item mix-top-menu__dropdown-item--danger",
2060
2115
  onClick: S
2061
2116
  }, [
2062
- b(n(U), {
2117
+ b(l(U), {
2063
2118
  name: "logout",
2064
2119
  size: 16
2065
2120
  }),
2066
- p[5] || (p[5] = e("span", null, "退出登录", -1))
2121
+ p[6] || (p[6] = e("span", null, "退出登录", -1))
2067
2122
  ])
2068
2123
  ])
2069
- ])) : P("", !0)
2124
+ ])) : T("", !0)
2070
2125
  ];
2071
2126
  }),
2072
2127
  _: 1
2073
2128
  })
2074
2129
  ], 512)
2075
2130
  ]),
2076
- b(n(Xe), {
2131
+ b(l(Xe), {
2077
2132
  modelValue: q.value,
2078
- "onUpdate:modelValue": p[2] || (p[2] = ($) => q.value = $),
2133
+ "onUpdate:modelValue": p[2] || (p[2] = (L) => q.value = L),
2079
2134
  title: "换肤设置",
2080
2135
  direction: "rtl",
2081
2136
  size: "320px"
2082
2137
  }, {
2083
2138
  default: M(() => [
2084
- e("div", xa, [
2085
- e("div", Ca, [
2086
- p[11] || (p[11] = e("div", { class: "settings-title" }, "布局模式", -1)),
2087
- e("div", $a, [
2088
- (a(), c(K, null, X(Me, ($) => e("div", {
2089
- key: $.value,
2090
- class: J(["layout-option", { "is-active": fe.value === $.value }]),
2091
- onClick: (Ze) => ge($.value)
2139
+ e("div", Ca, [
2140
+ e("div", $a, [
2141
+ p[12] || (p[12] = e("div", { class: "settings-title" }, "布局模式", -1)),
2142
+ e("div", La, [
2143
+ (a(), c(K, null, Z(Me, (L) => e("div", {
2144
+ key: L.value,
2145
+ class: Q(["layout-option", { "is-active": ke.value === L.value }]),
2146
+ onClick: (Ze) => we(L.value)
2092
2147
  }, [
2093
- e("div", Ma, [
2094
- $.value === "sidebar" ? (a(), c("div", Sa, [...p[8] || (p[8] = [
2148
+ e("div", Sa, [
2149
+ L.value === "sidebar" ? (a(), c("div", Na, [...p[9] || (p[9] = [
2095
2150
  e("div", { class: "preview-aside" }, null, -1),
2096
2151
  e("div", { class: "preview-main" }, [
2097
2152
  e("div", { class: "preview-header" }),
2098
2153
  e("div", { class: "preview-content" })
2099
2154
  ], -1)
2100
- ])])) : $.value === "top" ? (a(), c("div", Na, [...p[9] || (p[9] = [
2155
+ ])])) : L.value === "top" ? (a(), c("div", Ia, [...p[10] || (p[10] = [
2101
2156
  e("div", { class: "preview-header-full" }, null, -1),
2102
2157
  e("div", { class: "preview-content-full" }, null, -1)
2103
- ])])) : (a(), c("div", Ia, [...p[10] || (p[10] = [
2158
+ ])])) : (a(), c("div", Ea, [...p[11] || (p[11] = [
2104
2159
  e("div", { class: "preview-header-mix" }, [
2105
2160
  e("div", { class: "preview-mix-left" })
2106
2161
  ], -1),
@@ -2110,47 +2165,47 @@ const de = Ee("menu", () => {
2110
2165
  ], -1)
2111
2166
  ])]))
2112
2167
  ]),
2113
- e("span", Ea, x($.label), 1)
2114
- ], 10, La)), 64))
2168
+ e("span", Ua, x(L.label), 1)
2169
+ ], 10, Ma)), 64))
2115
2170
  ])
2116
2171
  ]),
2117
- e("div", Ua, [
2118
- p[12] || (p[12] = e("div", { class: "settings-title" }, "主题色", -1)),
2119
- e("div", za, [
2120
- (a(), c(K, null, X(z, ($) => e("div", {
2121
- key: $.value,
2122
- class: J(["color-option", { "is-active": n(i).primaryColor === $.value }]),
2123
- style: Ne({ backgroundColor: $.value }),
2124
- title: $.label,
2125
- onClick: (Ze) => k($.value)
2172
+ e("div", za, [
2173
+ p[13] || (p[13] = e("div", { class: "settings-title" }, "主题色", -1)),
2174
+ e("div", Pa, [
2175
+ (a(), c(K, null, Z(z, (L) => e("div", {
2176
+ key: L.value,
2177
+ class: Q(["color-option", { "is-active": l(i).primaryColor === L.value }]),
2178
+ style: Ne({ backgroundColor: L.value }),
2179
+ title: L.label,
2180
+ onClick: (Ze) => k(L.value)
2126
2181
  }, [
2127
- n(i).primaryColor === $.value ? (a(), B(n(U), {
2182
+ l(i).primaryColor === L.value ? (a(), B(l(U), {
2128
2183
  key: 0,
2129
2184
  name: "check",
2130
2185
  size: 12,
2131
2186
  color: "#fff"
2132
- })) : P("", !0)
2187
+ })) : T("", !0)
2133
2188
  ], 14, Ta)), 64))
2134
2189
  ])
2135
2190
  ]),
2136
- e("div", Pa, [
2137
- p[17] || (p[17] = e("div", { class: "settings-title" }, "功能设置", -1)),
2191
+ e("div", Fa, [
2192
+ p[18] || (p[18] = e("div", { class: "settings-title" }, "功能设置", -1)),
2138
2193
  e("div", Da, [
2139
2194
  e("div", Aa, [
2140
- p[14] || (p[14] = e("span", null, "灰色模式", -1)),
2195
+ p[15] || (p[15] = e("span", null, "灰色模式", -1)),
2141
2196
  e("div", {
2142
- class: J(["switch-wrapper", { "is-checked": ee.value }]),
2143
- onClick: $e
2144
- }, [...p[13] || (p[13] = [
2197
+ class: Q(["switch-wrapper", { "is-checked": oe.value }]),
2198
+ onClick: ce
2199
+ }, [...p[14] || (p[14] = [
2145
2200
  e("span", { class: "switch-core" }, null, -1)
2146
2201
  ])], 2)
2147
2202
  ]),
2148
- e("div", Fa, [
2149
- p[16] || (p[16] = e("span", null, "暗黑模式", -1)),
2203
+ e("div", Ba, [
2204
+ p[17] || (p[17] = e("span", null, "暗黑模式", -1)),
2150
2205
  e("div", {
2151
- class: J(["switch-wrapper", { "is-checked": n(i).isDark }]),
2152
- onClick: Le
2153
- }, [...p[15] || (p[15] = [
2206
+ class: Q(["switch-wrapper", { "is-checked": l(i).isDark }]),
2207
+ onClick: ge
2208
+ }, [...p[16] || (p[16] = [
2154
2209
  e("span", { class: "switch-core" }, null, -1)
2155
2210
  ])], 2)
2156
2211
  ])
@@ -2163,28 +2218,28 @@ const de = Ee("menu", () => {
2163
2218
  ]);
2164
2219
  };
2165
2220
  }
2166
- }), Va = /* @__PURE__ */ re(Ba, [["__scopeId", "data-v-e1e69bda"]]), Oa = {
2221
+ }), Oa = /* @__PURE__ */ ie(Va, [["__scopeId", "data-v-8f17ad06"]]), Ra = {
2167
2222
  key: 0,
2168
2223
  class: "layout layout--sidebar"
2169
- }, Ra = { class: "layout__main" }, Ka = { class: "layout__header" }, ja = { class: "layout__content" }, Wa = {
2224
+ }, Ka = { class: "layout__main" }, ja = { class: "layout__header" }, Wa = { class: "layout__content" }, qa = {
2170
2225
  key: 1,
2171
2226
  class: "layout layout--top"
2172
- }, qa = { class: "layout__top-menu" }, Ha = { class: "layout__main" }, Ya = { class: "layout__content" }, Ga = {
2227
+ }, Ha = { class: "layout__top-menu" }, Ya = { class: "layout__main" }, Ga = { class: "layout__content" }, Xa = {
2173
2228
  key: 2,
2174
2229
  class: "layout layout--mix"
2175
- }, Xa = { class: "layout__mix-top-menu" }, Ja = { class: "layout__mix-body" }, Za = { class: "layout__content" }, Qa = /* @__PURE__ */ ne({
2230
+ }, Ja = { class: "layout__mix-top-menu" }, Za = { class: "layout__mix-body" }, Qa = { class: "layout__content" }, en = /* @__PURE__ */ le({
2176
2231
  __name: "index",
2177
2232
  props: {
2178
2233
  logoSrc: { default: "/vite.svg" }
2179
2234
  },
2180
2235
  setup(t) {
2181
- const l = t, u = ue(), s = de(), o = w(
2236
+ const n = t, u = pe(), s = ve(), o = w(
2182
2237
  () => u.isCollapsed ? "64px" : "210px"
2183
2238
  ), i = w(() => u.layout), h = w(() => i.value === "mix"), v = w(() => i.value === "sidebar" ? s.menuList : i.value === "mix" ? u.mixSubMenus : []), d = w(() => h.value ? v.value.length > 0 : !1);
2184
2239
  return (g, _) => {
2185
2240
  const f = it("router-view");
2186
2241
  return a(), c(K, null, [
2187
- i.value === "sidebar" ? (a(), c("div", Oa, [
2242
+ i.value === "sidebar" ? (a(), c("div", Ra, [
2188
2243
  e("aside", {
2189
2244
  class: "layout__aside",
2190
2245
  style: Ne({ width: o.value })
@@ -2193,37 +2248,37 @@ const de = Ee("menu", () => {
2193
2248
  "menu-list": v.value,
2194
2249
  "show-logo": !0,
2195
2250
  "show-user": !0,
2196
- "logo-src": l.logoSrc
2251
+ "logo-src": n.logoSrc
2197
2252
  }, null, 8, ["menu-list", "logo-src"])
2198
2253
  ], 4),
2199
- e("div", Ra, [
2200
- e("header", Ka, [
2201
- b(Os)
2254
+ e("div", Ka, [
2255
+ e("header", ja, [
2256
+ b(Rs)
2202
2257
  ]),
2203
- e("main", ja, [
2258
+ e("main", Wa, [
2204
2259
  b(f)
2205
2260
  ])
2206
2261
  ])
2207
- ])) : P("", !0),
2208
- i.value === "top" ? (a(), c("div", Wa, [
2209
- e("div", qa, [
2210
- b(Go, {
2211
- "logo-src": l.logoSrc
2262
+ ])) : T("", !0),
2263
+ i.value === "top" ? (a(), c("div", qa, [
2264
+ e("div", Ha, [
2265
+ b(Xo, {
2266
+ "logo-src": n.logoSrc
2212
2267
  }, null, 8, ["logo-src"])
2213
2268
  ]),
2214
- e("div", Ha, [
2215
- e("main", Ya, [
2269
+ e("div", Ya, [
2270
+ e("main", Ga, [
2216
2271
  b(f)
2217
2272
  ])
2218
2273
  ])
2219
- ])) : P("", !0),
2220
- i.value === "mix" ? (a(), c("div", Ga, [
2221
- e("div", Xa, [
2222
- b(Va, {
2223
- "logo-src": l.logoSrc
2274
+ ])) : T("", !0),
2275
+ i.value === "mix" ? (a(), c("div", Xa, [
2276
+ e("div", Ja, [
2277
+ b(Oa, {
2278
+ "logo-src": n.logoSrc
2224
2279
  }, null, 8, ["logo-src"])
2225
2280
  ]),
2226
- e("div", Ja, [
2281
+ e("div", Za, [
2227
2282
  d.value ? (a(), c("aside", {
2228
2283
  key: 0,
2229
2284
  class: "layout__aside",
@@ -2234,24 +2289,24 @@ const de = Ee("menu", () => {
2234
2289
  "show-logo": !1,
2235
2290
  "show-user": !1
2236
2291
  }, null, 8, ["menu-list"])
2237
- ], 4)) : P("", !0),
2238
- e("main", Za, [
2292
+ ], 4)) : T("", !0),
2293
+ e("main", Qa, [
2239
2294
  b(f)
2240
2295
  ])
2241
2296
  ])
2242
- ])) : P("", !0)
2297
+ ])) : T("", !0)
2243
2298
  ], 64);
2244
2299
  };
2245
2300
  }
2246
- }), ut = /* @__PURE__ */ re(Qa, [["__scopeId", "data-v-f3d5d68c"]]), en = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2301
+ }), ut = /* @__PURE__ */ ie(en, [["__scopeId", "data-v-9382a033"]]), tn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2247
2302
  __proto__: null,
2248
2303
  default: ut
2249
- }, Symbol.toStringTag, { value: "Module" })), tn = { class: "tabs-wrapper" }, sn = { class: "tab-label" }, on = ["onClick"], an = /* @__PURE__ */ ne({
2304
+ }, Symbol.toStringTag, { value: "Module" })), sn = { class: "tabs-wrapper" }, on = { class: "tab-label" }, an = ["onClick"], nn = /* @__PURE__ */ le({
2250
2305
  __name: "Tabs",
2251
2306
  setup(t) {
2252
- const l = we(), u = me(), s = w(() => {
2307
+ const n = Le(), u = he(), s = w(() => {
2253
2308
  const v = [];
2254
- return l.matched.forEach((d) => {
2309
+ return n.matched.forEach((d) => {
2255
2310
  var g;
2256
2311
  (g = d.meta) != null && g.affix && v.push({
2257
2312
  name: d.name,
@@ -2260,7 +2315,7 @@ const de = Ee("menu", () => {
2260
2315
  affix: !0
2261
2316
  });
2262
2317
  }), v;
2263
- }), o = w(() => l.path), i = (v) => {
2318
+ }), o = w(() => n.path), i = (v) => {
2264
2319
  u.push(v);
2265
2320
  }, h = (v) => {
2266
2321
  const d = s.value.find((g) => g.path === v);
@@ -2269,28 +2324,28 @@ const de = Ee("menu", () => {
2269
2324
  _ && u.push(_.path);
2270
2325
  }
2271
2326
  };
2272
- return (v, d) => (a(), c("div", tn, [
2273
- b(n($t), {
2327
+ return (v, d) => (a(), c("div", sn, [
2328
+ b(l($t), {
2274
2329
  modelValue: o.value,
2275
2330
  "onUpdate:modelValue": d[0] || (d[0] = (g) => o.value = g),
2276
2331
  type: "card",
2277
2332
  onTabClick: i
2278
2333
  }, {
2279
2334
  default: M(() => [
2280
- (a(!0), c(K, null, X(s.value, (g) => (a(), B(n(Lt), {
2335
+ (a(!0), c(K, null, Z(s.value, (g) => (a(), B(l(Lt), {
2281
2336
  key: g.path,
2282
2337
  name: g.path,
2283
2338
  label: g.title,
2284
2339
  closable: !g.affix
2285
2340
  }, {
2286
2341
  label: M(() => [
2287
- e("span", sn, [
2288
- he(x(g.title) + " ", 1),
2289
- g.affix ? P("", !0) : (a(), c("span", {
2342
+ e("span", on, [
2343
+ ye(x(g.title) + " ", 1),
2344
+ g.affix ? T("", !0) : (a(), c("span", {
2290
2345
  key: 0,
2291
2346
  class: "tab-close",
2292
- onClick: Pe((_) => h(g.path), ["stop"])
2293
- }, " ✕ ", 8, on))
2347
+ onClick: Te((_) => h(g.path), ["stop"])
2348
+ }, " ✕ ", 8, an))
2294
2349
  ])
2295
2350
  ]),
2296
2351
  _: 2
@@ -2300,16 +2355,16 @@ const de = Ee("menu", () => {
2300
2355
  }, 8, ["modelValue"])
2301
2356
  ]));
2302
2357
  }
2303
- }), Yn = /* @__PURE__ */ re(an, [["__scopeId", "data-v-876cc372"]]), nn = {}, ln = { class: "footer" };
2304
- function rn(t, l) {
2305
- return a(), c("div", ln, [...l[0] || (l[0] = [
2358
+ }), Gn = /* @__PURE__ */ ie(nn, [["__scopeId", "data-v-0a4ca30d"]]), ln = {}, rn = { class: "footer" };
2359
+ function cn(t, n) {
2360
+ return a(), c("div", rn, [...n[0] || (n[0] = [
2306
2361
  e("span", null, "Copyright © 2024 Xto Demo. All Rights Reserved.", -1)
2307
2362
  ])]);
2308
2363
  }
2309
- const Gn = /* @__PURE__ */ re(nn, [["render", rn], ["__scopeId", "data-v-5ef21e94"]]), cn = { class: "login-page" }, un = { class: "login-form-section" }, dn = { class: "form-container" }, mn = { class: "input-wrapper" }, pn = { class: "input-wrapper" }, vn = { class: "form-options" }, hn = { key: 0 }, _n = { key: 1 }, fn = /* @__PURE__ */ ne({
2364
+ const Xn = /* @__PURE__ */ ie(ln, [["render", cn], ["__scopeId", "data-v-ac63e349"]]), un = { class: "login-page" }, dn = { class: "login-form-section" }, mn = { class: "form-container" }, pn = { class: "input-wrapper" }, vn = { class: "input-wrapper" }, hn = { class: "form-options" }, _n = { key: 0 }, fn = { key: 1 }, gn = /* @__PURE__ */ le({
2310
2365
  __name: "index",
2311
2366
  setup(t) {
2312
- const l = me(), u = we(), s = y(!1), o = y(!1), i = qe({
2367
+ const n = he(), u = Le(), s = y(!1), o = y(!1), i = qe({
2313
2368
  uid: "",
2314
2369
  password: ""
2315
2370
  }), h = {
@@ -2333,22 +2388,22 @@ const Gn = /* @__PURE__ */ re(nn, [["render", rn], ["__scopeId", "data-v-5ef21e9
2333
2388
  });
2334
2389
  lt(_), Mt.success("登录成功");
2335
2390
  const f = u.query.redirect;
2336
- f ? l.push(f) : l.push({ name: "Dashboard" });
2391
+ f ? n.push(f) : n.push({ name: "Dashboard" });
2337
2392
  } catch (_) {
2338
2393
  console.error("登录失败:", _);
2339
2394
  } finally {
2340
2395
  s.value = !1;
2341
2396
  }
2342
2397
  };
2343
- return (g, _) => (a(), c("div", cn, [
2344
- _[10] || (_[10] = ze('<div class="login-brand" data-v-4597d7a1><div class="brand-content" data-v-4597d7a1><div class="brand-logo" data-v-4597d7a1><div class="logo-icon" data-v-4597d7a1><svg viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg" data-v-4597d7a1><rect width="48" height="48" rx="12" fill="currentColor" data-v-4597d7a1></rect><path d="M14 24L20 30L34 16" stroke="white" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" data-v-4597d7a1></path></svg></div><span class="logo-text" data-v-4597d7a1>XTO</span></div><div class="brand-slogan" data-v-4597d7a1><h1 data-v-4597d7a1>企业级后台管理解决方案</h1><p data-v-4597d7a1>开箱即用的中后台前端/设计解决方案</p></div><div class="brand-features" data-v-4597d7a1><div class="feature-item" data-v-4597d7a1><div class="feature-icon" data-v-4597d7a1><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" data-v-4597d7a1><path d="M13 2L3 14h9l-1 8 10-12h-9l1-8z" data-v-4597d7a1></path></svg></div><div class="feature-text" data-v-4597d7a1><h4 data-v-4597d7a1>高性能</h4><p data-v-4597d7a1>极致的渲染性能与响应速度</p></div></div><div class="feature-item" data-v-4597d7a1><div class="feature-icon" data-v-4597d7a1><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" data-v-4597d7a1><rect x="3" y="3" width="18" height="18" rx="2" data-v-4597d7a1></rect><path d="M9 9h6M9 12h6M9 15h4" data-v-4597d7a1></path></svg></div><div class="feature-text" data-v-4597d7a1><h4 data-v-4597d7a1>丰富组件</h4><p data-v-4597d7a1>60+ 高质量业务组件</p></div></div><div class="feature-item" data-v-4597d7a1><div class="feature-icon" data-v-4597d7a1><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" data-v-4597d7a1><circle cx="12" cy="12" r="10" data-v-4597d7a1></circle><path d="M12 6v6l4 2" data-v-4597d7a1></path></svg></div><div class="feature-text" data-v-4597d7a1><h4 data-v-4597d7a1>持续更新</h4><p data-v-4597d7a1>活跃的社区与快速迭代</p></div></div></div><div class="brand-decoration" data-v-4597d7a1><div class="decoration-line" data-v-4597d7a1></div><div class="decoration-dots" data-v-4597d7a1><span data-v-4597d7a1></span><span data-v-4597d7a1></span><span data-v-4597d7a1></span></div></div></div><div class="brand-bg" data-v-4597d7a1><div class="bg-grid" data-v-4597d7a1></div><div class="bg-glow" data-v-4597d7a1></div><div class="bg-pattern" data-v-4597d7a1></div></div></div>', 1)),
2345
- e("div", un, [
2346
- e("div", dn, [
2398
+ return (g, _) => (a(), c("div", un, [
2399
+ _[10] || (_[10] = ze('<div class="login-brand" data-v-20b19b53><div class="brand-content" data-v-20b19b53><div class="brand-logo" data-v-20b19b53><div class="logo-icon" data-v-20b19b53><svg viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg" data-v-20b19b53><rect width="48" height="48" rx="12" fill="currentColor" data-v-20b19b53></rect><path d="M14 24L20 30L34 16" stroke="white" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" data-v-20b19b53></path></svg></div><span class="logo-text" data-v-20b19b53>XTO</span></div><div class="brand-slogan" data-v-20b19b53><h1 data-v-20b19b53>企业级后台管理解决方案</h1><p data-v-20b19b53>开箱即用的中后台前端/设计解决方案</p></div><div class="brand-features" data-v-20b19b53><div class="feature-item" data-v-20b19b53><div class="feature-icon" data-v-20b19b53><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" data-v-20b19b53><path d="M13 2L3 14h9l-1 8 10-12h-9l1-8z" data-v-20b19b53></path></svg></div><div class="feature-text" data-v-20b19b53><h4 data-v-20b19b53>高性能</h4><p data-v-20b19b53>极致的渲染性能与响应速度</p></div></div><div class="feature-item" data-v-20b19b53><div class="feature-icon" data-v-20b19b53><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" data-v-20b19b53><rect x="3" y="3" width="18" height="18" rx="2" data-v-20b19b53></rect><path d="M9 9h6M9 12h6M9 15h4" data-v-20b19b53></path></svg></div><div class="feature-text" data-v-20b19b53><h4 data-v-20b19b53>丰富组件</h4><p data-v-20b19b53>60+ 高质量业务组件</p></div></div><div class="feature-item" data-v-20b19b53><div class="feature-icon" data-v-20b19b53><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" data-v-20b19b53><circle cx="12" cy="12" r="10" data-v-20b19b53></circle><path d="M12 6v6l4 2" data-v-20b19b53></path></svg></div><div class="feature-text" data-v-20b19b53><h4 data-v-20b19b53>持续更新</h4><p data-v-20b19b53>活跃的社区与快速迭代</p></div></div></div><div class="brand-decoration" data-v-20b19b53><div class="decoration-line" data-v-20b19b53></div><div class="decoration-dots" data-v-20b19b53><span data-v-20b19b53></span><span data-v-20b19b53></span><span data-v-20b19b53></span></div></div></div><div class="brand-bg" data-v-20b19b53><div class="bg-grid" data-v-20b19b53></div></div></div>', 1)),
2400
+ e("div", dn, [
2401
+ e("div", mn, [
2347
2402
  _[7] || (_[7] = e("div", { class: "form-header" }, [
2348
2403
  e("h2", null, "欢迎登录"),
2349
2404
  e("p", null, "请输入您的账户信息")
2350
2405
  ], -1)),
2351
- b(n(St), {
2406
+ b(l(St), {
2352
2407
  ref_key: "formRef",
2353
2408
  ref: v,
2354
2409
  model: i,
@@ -2357,18 +2412,18 @@ const Gn = /* @__PURE__ */ re(nn, [["render", rn], ["__scopeId", "data-v-5ef21e9
2357
2412
  "label-width": "0"
2358
2413
  }, {
2359
2414
  default: M(() => [
2360
- b(n(De), { prop: "uid" }, {
2415
+ b(l(Fe), { prop: "uid" }, {
2361
2416
  default: M(() => [
2362
- e("div", mn, [
2417
+ e("div", pn, [
2363
2418
  _[3] || (_[3] = e("label", { class: "input-label" }, "用户名", -1)),
2364
- b(n(tt), {
2419
+ b(l(tt), {
2365
2420
  modelValue: i.uid,
2366
2421
  "onUpdate:modelValue": _[0] || (_[0] = (f) => i.uid = f),
2367
2422
  placeholder: "请输入用户名",
2368
2423
  size: "large"
2369
2424
  }, {
2370
2425
  prefix: M(() => [
2371
- b(n(U), {
2426
+ b(l(U), {
2372
2427
  name: "user",
2373
2428
  size: 18
2374
2429
  })
@@ -2379,11 +2434,11 @@ const Gn = /* @__PURE__ */ re(nn, [["render", rn], ["__scopeId", "data-v-5ef21e9
2379
2434
  ]),
2380
2435
  _: 1
2381
2436
  }),
2382
- b(n(De), { prop: "password" }, {
2437
+ b(l(Fe), { prop: "password" }, {
2383
2438
  default: M(() => [
2384
- e("div", pn, [
2439
+ e("div", vn, [
2385
2440
  _[4] || (_[4] = e("label", { class: "input-label" }, "密码", -1)),
2386
- b(n(tt), {
2441
+ b(l(tt), {
2387
2442
  modelValue: i.password,
2388
2443
  "onUpdate:modelValue": _[1] || (_[1] = (f) => i.password = f),
2389
2444
  type: "password",
@@ -2393,7 +2448,7 @@ const Gn = /* @__PURE__ */ re(nn, [["render", rn], ["__scopeId", "data-v-5ef21e9
2393
2448
  onKeyup: xt(d, ["enter"])
2394
2449
  }, {
2395
2450
  prefix: M(() => [
2396
- b(n(U), {
2451
+ b(l(U), {
2397
2452
  name: "lock",
2398
2453
  size: 18
2399
2454
  })
@@ -2404,13 +2459,13 @@ const Gn = /* @__PURE__ */ re(nn, [["render", rn], ["__scopeId", "data-v-5ef21e9
2404
2459
  ]),
2405
2460
  _: 1
2406
2461
  }),
2407
- e("div", vn, [
2408
- b(n(Nt), {
2462
+ e("div", hn, [
2463
+ b(l(Nt), {
2409
2464
  modelValue: o.value,
2410
2465
  "onUpdate:modelValue": _[2] || (_[2] = (f) => o.value = f)
2411
2466
  }, {
2412
2467
  default: M(() => [..._[5] || (_[5] = [
2413
- he("记住我", -1)
2468
+ ye("记住我", -1)
2414
2469
  ])]),
2415
2470
  _: 1
2416
2471
  }, 8, ["modelValue"]),
@@ -2419,9 +2474,9 @@ const Gn = /* @__PURE__ */ re(nn, [["render", rn], ["__scopeId", "data-v-5ef21e9
2419
2474
  class: "forgot-link"
2420
2475
  }, "忘记密码?", -1))
2421
2476
  ]),
2422
- b(n(De), null, {
2477
+ b(l(Fe), null, {
2423
2478
  default: M(() => [
2424
- b(n(ke), {
2479
+ b(l($e), {
2425
2480
  type: "primary",
2426
2481
  size: "large",
2427
2482
  loading: s.value,
@@ -2429,7 +2484,7 @@ const Gn = /* @__PURE__ */ re(nn, [["render", rn], ["__scopeId", "data-v-5ef21e9
2429
2484
  onClick: d
2430
2485
  }, {
2431
2486
  default: M(() => [
2432
- s.value ? (a(), c("span", _n, "登录中...")) : (a(), c("span", hn, "登 录"))
2487
+ s.value ? (a(), c("span", fn, "登录中...")) : (a(), c("span", _n, "登 录"))
2433
2488
  ]),
2434
2489
  _: 1
2435
2490
  }, 8, ["loading"])
@@ -2439,7 +2494,7 @@ const Gn = /* @__PURE__ */ re(nn, [["render", rn], ["__scopeId", "data-v-5ef21e9
2439
2494
  ]),
2440
2495
  _: 1
2441
2496
  }, 8, ["model"]),
2442
- _[8] || (_[8] = ze('<div class="form-footer" data-v-4597d7a1><p data-v-4597d7a1>其他登录方式</p><div class="social-login" data-v-4597d7a1><button class="social-btn" title="企业微信" data-v-4597d7a1><svg viewBox="0 0 24 24" fill="currentColor" data-v-4597d7a1><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 17.93c-3.95-.49-7-3.85-7-7.93 0-.62.08-1.21.21-1.79L9 15v1c0 1.1.9 2 2 2v1.93zm6.9-2.54c-.26-.81-1-1.39-1.9-1.39h-1v-3c0-.55-.45-1-1-1H8v-2h2c.55 0 1-.45 1-1V7h2c1.1 0 2-.9 2-2v-.41c2.93 1.19 5 4.06 5 7.41 0 2.08-.8 3.97-2.1 5.39z" data-v-4597d7a1></path></svg></button><button class="social-btn" title="钉钉" data-v-4597d7a1><svg viewBox="0 0 24 24" fill="currentColor" data-v-4597d7a1><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm4.64 6.8c-.15 1.58-.8 5.42-1.13 7.19-.14.75-.42 1-.68 1.03-.58.05-1.02-.38-1.58-.75-.88-.58-1.38-.94-2.23-1.5-.99-.65-.35-1.01.22-1.59.15-.15 2.71-2.48 2.76-2.69a.2.2 0 00-.05-.18c-.06-.05-.14-.03-.21-.02-.09.02-1.49.95-4.22 2.79-.4.27-.76.41-1.08.4-.36-.01-1.04-.2-1.55-.37-.63-.2-1.12-.31-1.08-.66.02-.18.27-.36.74-.55 2.92-1.27 4.86-2.11 5.83-2.51 2.78-1.16 3.35-1.36 3.73-1.36.08 0 .27.02.39.12.1.08.13.19.14.27-.01.06.01.24 0 .38z" data-v-4597d7a1></path></svg></button><button class="social-btn" title="飞书" data-v-4597d7a1><svg viewBox="0 0 24 24" fill="currentColor" data-v-4597d7a1><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z" data-v-4597d7a1></path></svg></button></div></div>', 1))
2497
+ _[8] || (_[8] = ze('<div class="form-footer" data-v-20b19b53><p data-v-20b19b53>其他登录方式</p><div class="social-login" data-v-20b19b53><button class="social-btn" title="企业微信" data-v-20b19b53><svg viewBox="0 0 24 24" fill="currentColor" data-v-20b19b53><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 17.93c-3.95-.49-7-3.85-7-7.93 0-.62.08-1.21.21-1.79L9 15v1c0 1.1.9 2 2 2v1.93zm6.9-2.54c-.26-.81-1-1.39-1.9-1.39h-1v-3c0-.55-.45-1-1-1H8v-2h2c.55 0 1-.45 1-1V7h2c1.1 0 2-.9 2-2v-.41c2.93 1.19 5 4.06 5 7.41 0 2.08-.8 3.97-2.1 5.39z" data-v-20b19b53></path></svg></button><button class="social-btn" title="钉钉" data-v-20b19b53><svg viewBox="0 0 24 24" fill="currentColor" data-v-20b19b53><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm4.64 6.8c-.15 1.58-.8 5.42-1.13 7.19-.14.75-.42 1-.68 1.03-.58.05-1.02-.38-1.58-.75-.88-.58-1.38-.94-2.23-1.5-.99-.65-.35-1.01.22-1.59.15-.15 2.71-2.48 2.76-2.69a.2.2 0 00-.05-.18c-.06-.05-.14-.03-.21-.02-.09.02-1.49.95-4.22 2.79-.4.27-.76.41-1.08.4-.36-.01-1.04-.2-1.55-.37-.63-.2-1.12-.31-1.08-.66.02-.18.27-.36.74-.55 2.92-1.27 4.86-2.11 5.83-2.51 2.78-1.16 3.35-1.36 3.73-1.36.08 0 .27.02.39.12.1.08.13.19.14.27-.01.06.01.24 0 .38z" data-v-20b19b53></path></svg></button><button class="social-btn" title="飞书" data-v-20b19b53><svg viewBox="0 0 24 24" fill="currentColor" data-v-20b19b53><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z" data-v-20b19b53></path></svg></button></div></div>', 1))
2443
2498
  ]),
2444
2499
  _[9] || (_[9] = e("div", { class: "copyright" }, [
2445
2500
  e("p", null, "© 2024 XTO Team. All rights reserved.")
@@ -2447,26 +2502,26 @@ const Gn = /* @__PURE__ */ re(nn, [["render", rn], ["__scopeId", "data-v-5ef21e9
2447
2502
  ])
2448
2503
  ]));
2449
2504
  }
2450
- }), gn = /* @__PURE__ */ re(fn, [["__scopeId", "data-v-4597d7a1"]]), yn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2505
+ }), yn = /* @__PURE__ */ ie(gn, [["__scopeId", "data-v-20b19b53"]]), bn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2451
2506
  __proto__: null,
2452
- default: gn
2453
- }, Symbol.toStringTag, { value: "Module" })), bn = { class: "error-page" }, kn = { class: "error-container" }, wn = { class: "error-content" }, xn = { class: "error-actions" }, Cn = /* @__PURE__ */ ne({
2507
+ default: yn
2508
+ }, Symbol.toStringTag, { value: "Module" })), kn = { class: "error-page" }, wn = { class: "error-container" }, xn = { class: "error-content" }, Cn = { class: "error-actions" }, $n = /* @__PURE__ */ le({
2454
2509
  __name: "404",
2455
2510
  setup(t) {
2456
- const l = me(), u = () => {
2457
- l.push("/");
2511
+ const n = he(), u = () => {
2512
+ n.push("/");
2458
2513
  };
2459
- return (s, o) => (a(), c("div", bn, [
2460
- e("div", kn, [
2514
+ return (s, o) => (a(), c("div", kn, [
2515
+ e("div", wn, [
2461
2516
  o[7] || (o[7] = e("div", { class: "error-bg" }, [
2462
2517
  e("div", { class: "bg-circle circle-1" }),
2463
2518
  e("div", { class: "bg-circle circle-2" }),
2464
2519
  e("div", { class: "bg-circle circle-3" })
2465
2520
  ], -1)),
2466
- e("div", wn, [
2467
- o[5] || (o[5] = ze('<div class="error-code" data-v-cb725bbc><span class="code-digit" data-v-cb725bbc>4</span><span class="code-zero" data-v-cb725bbc><span class="zero-inner" data-v-cb725bbc>0</span></span><span class="code-digit" data-v-cb725bbc>4</span></div><div class="error-illustration" data-v-cb725bbc><svg viewBox="0 0 200 120" fill="none" xmlns="http://www.w3.org/2000/svg" data-v-cb725bbc><rect x="40" y="20" width="120" height="80" rx="8" fill="var(--xto-fill-color, #F3F4F6)" stroke="var(--xto-border-color, #D1D5DB)" stroke-width="2" data-v-cb725bbc></rect><rect x="50" y="30" width="100" height="60" rx="4" fill="var(--xto-bg-color, #FFFFFF)" data-v-cb725bbc></rect><line x1="60" y1="45" x2="140" y2="45" stroke="var(--xto-border-color-light, #E5E7EB)" stroke-width="2" data-v-cb725bbc></line><line x1="60" y1="55" x2="120" y2="55" stroke="var(--xto-border-color-light, #E5E7EB)" stroke-width="2" data-v-cb725bbc></line><line x1="60" y1="65" x2="100" y2="65" stroke="var(--xto-border-color-light, #E5E7EB)" stroke-width="2" data-v-cb725bbc></line><text x="100" y="75" text-anchor="middle" fill="var(--xto-color-primary, #4F46E5)" font-size="24" font-weight="600" data-v-cb725bbc>?</text><circle cx="150" cy="35" r="12" stroke="var(--xto-color-primary, #4F46E5)" stroke-width="2" fill="none" data-v-cb725bbc></circle><line x1="158" y1="43" x2="168" y2="53" stroke="var(--xto-color-primary, #4F46E5)" stroke-width="2" stroke-linecap="round" data-v-cb725bbc></line></svg></div><h1 class="error-title" data-v-cb725bbc>页面不存在</h1><p class="error-desc" data-v-cb725bbc>抱歉,您访问的页面不存在或已被删除</p>', 4)),
2468
- e("div", xn, [
2469
- b(n(ke), {
2521
+ e("div", xn, [
2522
+ o[5] || (o[5] = ze('<div class="error-code" data-v-c36cc0ad><span class="code-digit" data-v-c36cc0ad>4</span><span class="code-zero" data-v-c36cc0ad><span class="zero-inner" data-v-c36cc0ad>0</span></span><span class="code-digit" data-v-c36cc0ad>4</span></div><div class="error-illustration" data-v-c36cc0ad><svg viewBox="0 0 200 120" fill="none" xmlns="http://www.w3.org/2000/svg" data-v-c36cc0ad><rect x="40" y="20" width="120" height="80" rx="8" fill="var(--xto-fill-color, #F2F3F5)" stroke="var(--xto-border-color, #D9DCE1)" stroke-width="2" data-v-c36cc0ad></rect><rect x="50" y="30" width="100" height="60" rx="4" fill="var(--xto-bg-color, #FFFFFF)" data-v-c36cc0ad></rect><line x1="60" y1="45" x2="140" y2="45" stroke="var(--xto-border-color-light, #E5E6EB)" stroke-width="2" data-v-c36cc0ad></line><line x1="60" y1="55" x2="120" y2="55" stroke="var(--xto-border-color-light, #E5E6EB)" stroke-width="2" data-v-c36cc0ad></line><line x1="60" y1="65" x2="100" y2="65" stroke="var(--xto-border-color-light, #E5E6EB)" stroke-width="2" data-v-c36cc0ad></line><text x="100" y="75" text-anchor="middle" fill="var(--xto-color-primary, #4F46E5)" font-size="24" font-weight="600" data-v-c36cc0ad>?</text><circle cx="150" cy="35" r="12" stroke="var(--xto-color-primary, #4F46E5)" stroke-width="2" fill="none" data-v-c36cc0ad></circle><line x1="158" y1="43" x2="168" y2="53" stroke="var(--xto-color-primary, #4F46E5)" stroke-width="2" stroke-linecap="round" data-v-c36cc0ad></line></svg></div><h1 class="error-title" data-v-c36cc0ad>页面不存在</h1><p class="error-desc" data-v-c36cc0ad>抱歉,您访问的页面不存在或已被删除</p>', 4)),
2523
+ e("div", Cn, [
2524
+ b(l($e), {
2470
2525
  type: "primary",
2471
2526
  size: "large",
2472
2527
  onClick: u
@@ -2483,13 +2538,13 @@ const Gn = /* @__PURE__ */ re(nn, [["render", rn], ["__scopeId", "data-v-5ef21e9
2483
2538
  ], -1)
2484
2539
  ])]),
2485
2540
  default: M(() => [
2486
- o[2] || (o[2] = he(" 返回首页 ", -1))
2541
+ o[2] || (o[2] = ye(" 返回首页 ", -1))
2487
2542
  ]),
2488
2543
  _: 1
2489
2544
  }),
2490
- b(n(ke), {
2545
+ b(l($e), {
2491
2546
  size: "large",
2492
- onClick: o[0] || (o[0] = (i) => n(l).go(-1))
2547
+ onClick: o[0] || (o[0] = (i) => l(n).go(-1))
2493
2548
  }, {
2494
2549
  icon: M(() => [...o[3] || (o[3] = [
2495
2550
  e("svg", {
@@ -2502,7 +2557,7 @@ const Gn = /* @__PURE__ */ re(nn, [["render", rn], ["__scopeId", "data-v-5ef21e9
2502
2557
  ], -1)
2503
2558
  ])]),
2504
2559
  default: M(() => [
2505
- o[4] || (o[4] = he(" 返回上一页 ", -1))
2560
+ o[4] || (o[4] = ye(" 返回上一页 ", -1))
2506
2561
  ]),
2507
2562
  _: 1
2508
2563
  })
@@ -2519,26 +2574,26 @@ const Gn = /* @__PURE__ */ re(nn, [["render", rn], ["__scopeId", "data-v-5ef21e9
2519
2574
  ])
2520
2575
  ]));
2521
2576
  }
2522
- }), $n = /* @__PURE__ */ re(Cn, [["__scopeId", "data-v-cb725bbc"]]), dt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2577
+ }), Ln = /* @__PURE__ */ ie($n, [["__scopeId", "data-v-c36cc0ad"]]), dt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2523
2578
  __proto__: null,
2524
- default: $n
2525
- }, Symbol.toStringTag, { value: "Module" })), Ln = { class: "error-page" }, Mn = { class: "error-container" }, Sn = { class: "error-content" }, Nn = { class: "error-actions" }, In = /* @__PURE__ */ ne({
2579
+ default: Ln
2580
+ }, Symbol.toStringTag, { value: "Module" })), Mn = { class: "error-page" }, Sn = { class: "error-container" }, Nn = { class: "error-content" }, In = { class: "error-actions" }, En = /* @__PURE__ */ le({
2526
2581
  __name: "403",
2527
2582
  setup(t) {
2528
- const l = me(), u = () => {
2529
- l.push("/");
2583
+ const n = he(), u = () => {
2584
+ n.push("/");
2530
2585
  };
2531
- return (s, o) => (a(), c("div", Ln, [
2532
- e("div", Mn, [
2586
+ return (s, o) => (a(), c("div", Mn, [
2587
+ e("div", Sn, [
2533
2588
  o[7] || (o[7] = e("div", { class: "error-bg" }, [
2534
2589
  e("div", { class: "bg-circle circle-1" }),
2535
2590
  e("div", { class: "bg-circle circle-2" }),
2536
2591
  e("div", { class: "bg-circle circle-3" })
2537
2592
  ], -1)),
2538
- e("div", Sn, [
2539
- o[5] || (o[5] = ze('<div class="error-code" data-v-70b865a6><span class="code-digit" data-v-70b865a6>4</span><span class="code-zero warning" data-v-70b865a6><span class="zero-inner" data-v-70b865a6>0</span></span><span class="code-digit" data-v-70b865a6>3</span></div><div class="error-illustration" data-v-70b865a6><svg viewBox="0 0 200 120" fill="none" xmlns="http://www.w3.org/2000/svg" data-v-70b865a6><path d="M100 15 L150 35 L150 70 C150 95 100 110 100 110 C100 110 50 95 50 70 L50 35 Z" fill="var(--xto-color-warning-light-9, #FFFBEB)" stroke="var(--xto-color-warning, #F59E0B)" stroke-width="2" data-v-70b865a6></path><rect x="85" y="55" width="30" height="25" rx="4" fill="var(--xto-color-warning, #F59E0B)" data-v-70b865a6></rect><path d="M92 55 V48 A8 8 0 0 1 108 48 V55" fill="none" stroke="var(--xto-color-warning, #F59E0B)" stroke-width="3" data-v-70b865a6></path><circle cx="100" cy="67" r="6" fill="none" stroke="#fff" stroke-width="2" data-v-70b865a6></circle><line x1="96" y1="63" x2="104" y2="71" stroke="#fff" stroke-width="2" data-v-70b865a6></line></svg></div><h1 class="error-title" data-v-70b865a6>无访问权限</h1><p class="error-desc" data-v-70b865a6>抱歉,您没有权限访问此页面,请联系管理员获取权限</p>', 4)),
2540
- e("div", Nn, [
2541
- b(n(ke), {
2593
+ e("div", Nn, [
2594
+ o[5] || (o[5] = ze('<div class="error-code" data-v-e6e1f7ac><span class="code-digit" data-v-e6e1f7ac>4</span><span class="code-zero warning" data-v-e6e1f7ac><span class="zero-inner" data-v-e6e1f7ac>0</span></span><span class="code-digit" data-v-e6e1f7ac>3</span></div><div class="error-illustration" data-v-e6e1f7ac><svg viewBox="0 0 200 120" fill="none" xmlns="http://www.w3.org/2000/svg" data-v-e6e1f7ac><path d="M100 15 L150 35 L150 70 C150 95 100 110 100 110 C100 110 50 95 50 70 L50 35 Z" fill="var(--xto-color-warning-light-9, #FFF3E8)" stroke="var(--xto-color-warning, #FF7D00)" stroke-width="2" data-v-e6e1f7ac></path><rect x="85" y="55" width="30" height="25" rx="4" fill="var(--xto-color-warning, #FF7D00)" data-v-e6e1f7ac></rect><path d="M92 55 V48 A8 8 0 0 1 108 48 V55" fill="none" stroke="var(--xto-color-warning, #FF7D00)" stroke-width="3" data-v-e6e1f7ac></path><circle cx="100" cy="67" r="6" fill="none" stroke="#fff" stroke-width="2" data-v-e6e1f7ac></circle><line x1="96" y1="63" x2="104" y2="71" stroke="#fff" stroke-width="2" data-v-e6e1f7ac></line></svg></div><h1 class="error-title" data-v-e6e1f7ac>无访问权限</h1><p class="error-desc" data-v-e6e1f7ac>抱歉,您没有权限访问此页面,请联系管理员获取权限</p>', 4)),
2595
+ e("div", In, [
2596
+ b(l($e), {
2542
2597
  type: "primary",
2543
2598
  size: "large",
2544
2599
  onClick: u
@@ -2555,13 +2610,13 @@ const Gn = /* @__PURE__ */ re(nn, [["render", rn], ["__scopeId", "data-v-5ef21e9
2555
2610
  ], -1)
2556
2611
  ])]),
2557
2612
  default: M(() => [
2558
- o[2] || (o[2] = he(" 返回首页 ", -1))
2613
+ o[2] || (o[2] = ye(" 返回首页 ", -1))
2559
2614
  ]),
2560
2615
  _: 1
2561
2616
  }),
2562
- b(n(ke), {
2617
+ b(l($e), {
2563
2618
  size: "large",
2564
- onClick: o[0] || (o[0] = (i) => n(l).go(-1))
2619
+ onClick: o[0] || (o[0] = (i) => l(n).go(-1))
2565
2620
  }, {
2566
2621
  icon: M(() => [...o[3] || (o[3] = [
2567
2622
  e("svg", {
@@ -2574,7 +2629,7 @@ const Gn = /* @__PURE__ */ re(nn, [["render", rn], ["__scopeId", "data-v-5ef21e9
2574
2629
  ], -1)
2575
2630
  ])]),
2576
2631
  default: M(() => [
2577
- o[4] || (o[4] = he(" 返回上一页 ", -1))
2632
+ o[4] || (o[4] = ye(" 返回上一页 ", -1))
2578
2633
  ]),
2579
2634
  _: 1
2580
2635
  })
@@ -2591,9 +2646,9 @@ const Gn = /* @__PURE__ */ re(nn, [["render", rn], ["__scopeId", "data-v-5ef21e9
2591
2646
  ])
2592
2647
  ]));
2593
2648
  }
2594
- }), Xn = /* @__PURE__ */ re(In, [["__scopeId", "data-v-70b865a6"]]);
2595
- function Jn() {
2596
- const t = ue(), l = le(), u = Ue(), s = w(() => l.userName || ""), o = w(() => l.userInfo), i = w(() => t.appName), h = w(() => u.isLoggedIn), v = w(() => t.isDark), d = w(() => t.theme), g = w(() => t.isCollapsed), _ = w(() => t.layout);
2649
+ }), Jn = /* @__PURE__ */ ie(En, [["__scopeId", "data-v-e6e1f7ac"]]);
2650
+ function Zn() {
2651
+ const t = pe(), n = re(), u = Ue(), s = w(() => n.userName || ""), o = w(() => n.userInfo), i = w(() => t.appName), h = w(() => u.isLoggedIn), v = w(() => t.isDark), d = w(() => t.theme), g = w(() => t.isCollapsed), _ = w(() => t.layout);
2597
2652
  return {
2598
2653
  userName: s,
2599
2654
  userInfo: o,
@@ -2611,24 +2666,24 @@ function Jn() {
2611
2666
  }
2612
2667
  };
2613
2668
  }
2614
- function Zn() {
2615
- const t = le();
2669
+ function Qn() {
2670
+ const t = re();
2616
2671
  return {
2617
2672
  isLoggedIn: w(() => t.isLoggedIn)
2618
2673
  };
2619
2674
  }
2620
- function Qn(t, l = {}) {
2621
- const { rules: u, onSubmit: s } = l, o = y(), i = qe({ ...t }), h = y(!1), v = y(!1), d = y(!1), g = () => {
2675
+ function el(t, n = {}) {
2676
+ const { rules: u, onSubmit: s } = n, o = y(), i = qe({ ...t }), h = y(!1), v = y(!1), d = y(!1), g = () => {
2622
2677
  m(), d.value = !1, v.value = !0;
2623
- }, _ = (A) => {
2624
- Object.assign(i, A), d.value = !0, v.value = !0;
2678
+ }, _ = (D) => {
2679
+ Object.assign(i, D), d.value = !0, v.value = !0;
2625
2680
  }, f = () => {
2626
2681
  v.value = !1, m();
2627
2682
  }, m = () => {
2628
- var A;
2683
+ var D;
2629
2684
  Object.keys(t).forEach((W) => {
2630
2685
  i[W] = t[W];
2631
- }), (A = o.value) == null || A.resetFields();
2686
+ }), (D = o.value) == null || D.resetFields();
2632
2687
  };
2633
2688
  return {
2634
2689
  formRef: o,
@@ -2642,9 +2697,9 @@ function Qn(t, l = {}) {
2642
2697
  close: f,
2643
2698
  resetForm: m,
2644
2699
  handleSubmit: async () => {
2645
- var A;
2700
+ var D;
2646
2701
  try {
2647
- await ((A = o.value) == null ? void 0 : A.validate()), h.value = !0, await (s == null ? void 0 : s(i)), f();
2702
+ await ((D = o.value) == null ? void 0 : D.validate()), h.value = !0, await (s == null ? void 0 : s(i)), f();
2648
2703
  } catch (W) {
2649
2704
  console.error(W);
2650
2705
  } finally {
@@ -2653,32 +2708,32 @@ function Qn(t, l = {}) {
2653
2708
  }
2654
2709
  };
2655
2710
  }
2656
- function el(t) {
2657
- const { fetchData: l, defaultPageSize: u = 10 } = t, s = y(!1), o = y([]), i = y(0), h = y(1), v = y(u), d = qe({}), g = async () => {
2711
+ function tl(t) {
2712
+ const { fetchData: n, defaultPageSize: u = 10 } = t, s = y(!1), o = y([]), i = y(0), h = y(1), v = y(u), d = qe({}), g = async () => {
2658
2713
  s.value = !0;
2659
2714
  try {
2660
- const F = {
2715
+ const A = {
2661
2716
  ...d,
2662
2717
  page: h.value,
2663
2718
  pageSize: v.value
2664
- }, V = await l(F);
2719
+ }, V = await n(A);
2665
2720
  o.value = V.list, i.value = V.total;
2666
- } catch (F) {
2667
- console.error(F);
2721
+ } catch (A) {
2722
+ console.error(A);
2668
2723
  } finally {
2669
2724
  s.value = !1;
2670
2725
  }
2671
2726
  }, _ = () => {
2672
2727
  h.value = 1, g();
2673
2728
  }, f = () => {
2674
- Object.keys(d).forEach((F) => {
2675
- d[F] = void 0;
2729
+ Object.keys(d).forEach((A) => {
2730
+ d[A] = void 0;
2676
2731
  }), h.value = 1, g();
2677
- }, m = (F) => {
2678
- h.value = F, g();
2679
- }, j = (F) => {
2680
- v.value = F, h.value = 1, g();
2681
- }, A = () => {
2732
+ }, m = (A) => {
2733
+ h.value = A, g();
2734
+ }, j = (A) => {
2735
+ v.value = A, h.value = 1, g();
2736
+ }, D = () => {
2682
2737
  g();
2683
2738
  }, W = w(() => ({
2684
2739
  current: h.value,
@@ -2698,11 +2753,11 @@ function el(t) {
2698
2753
  handleReset: f,
2699
2754
  handlePageChange: m,
2700
2755
  handleSizeChange: j,
2701
- refresh: A
2756
+ refresh: D
2702
2757
  };
2703
2758
  }
2704
2759
  const Je = Ee("locale", () => {
2705
- const t = I.get("locale") || "zh-CN", l = It(t), u = y(t), s = Et(), { t: o, messages: i, setLocale: h, mergeMessages: v } = Ut(), d = w(() => {
2760
+ const t = E.get("locale") || "zh-CN", n = It(t), u = y(t), s = Et(), { t: o, messages: i, setLocale: h, mergeMessages: v } = Ut(), d = w(() => {
2706
2761
  const m = s.find((j) => j.code === u.value);
2707
2762
  return (m == null ? void 0 : m.name) || u.value;
2708
2763
  });
@@ -2713,7 +2768,7 @@ const Je = Ee("locale", () => {
2713
2768
  messages: i,
2714
2769
  t: o,
2715
2770
  changeLocale: (m) => {
2716
- u.value = m, h(m), I.set("locale", m), l.setLocale(m);
2771
+ u.value = m, h(m), E.set("locale", m), n.setLocale(m);
2717
2772
  },
2718
2773
  addMessages: (m) => {
2719
2774
  v(m);
@@ -2721,13 +2776,13 @@ const Je = Ee("locale", () => {
2721
2776
  initLocale: () => {
2722
2777
  h(t);
2723
2778
  },
2724
- provider: l
2779
+ provider: n
2725
2780
  };
2726
- }), En = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2781
+ }), Un = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2727
2782
  __proto__: null,
2728
2783
  useLocaleStore: Je
2729
2784
  }, Symbol.toStringTag, { value: "Module" }));
2730
- function tl() {
2785
+ function sl() {
2731
2786
  const t = Je();
2732
2787
  return {
2733
2788
  /** 当前语言代码 */
@@ -2746,24 +2801,24 @@ function tl() {
2746
2801
  addMessages: t.addMessages
2747
2802
  };
2748
2803
  }
2749
- function sl() {
2804
+ function ol() {
2750
2805
  return Je().t;
2751
2806
  }
2752
- function ol(t) {
2753
- const l = le(), u = de();
2754
- return l.isLoggedIn ? u.hasPermission(t) : !1;
2755
- }
2756
2807
  function al(t) {
2757
- return le().isLoggedIn;
2808
+ const n = re(), u = ve();
2809
+ return n.isLoggedIn ? u.hasPermission(t) : !1;
2758
2810
  }
2759
- function nl() {
2811
+ function nl(t) {
2812
+ return re().isLoggedIn;
2813
+ }
2814
+ function ll() {
2760
2815
  return !0;
2761
2816
  }
2762
2817
  const mt = [
2763
2818
  {
2764
2819
  path: "/login",
2765
2820
  name: "Login",
2766
- component: () => Promise.resolve().then(() => yn),
2821
+ component: () => Promise.resolve().then(() => bn),
2767
2822
  meta: {
2768
2823
  title: "登录",
2769
2824
  hidden: !0
@@ -2772,13 +2827,13 @@ const mt = [
2772
2827
  ], pt = {
2773
2828
  path: "/",
2774
2829
  name: "Layout",
2775
- component: () => Promise.resolve().then(() => en),
2830
+ component: () => Promise.resolve().then(() => tn),
2776
2831
  redirect: "/dashboard",
2777
2832
  children: [
2778
2833
  {
2779
2834
  path: "/dashboard",
2780
2835
  name: "Dashboard",
2781
- component: () => import("./index-BXHwCe22.js"),
2836
+ component: () => import("./index-DBjV4kzh.js"),
2782
2837
  meta: {
2783
2838
  title: "仪表盘",
2784
2839
  icon: "dashboard",
@@ -2789,7 +2844,7 @@ const mt = [
2789
2844
  {
2790
2845
  path: "/system/user",
2791
2846
  name: "SystemUser",
2792
- component: () => import("./index-DydABgae.js"),
2847
+ component: () => import("./index-D73_-C9m.js"),
2793
2848
  meta: {
2794
2849
  title: "用户管理",
2795
2850
  icon: "user",
@@ -2799,7 +2854,7 @@ const mt = [
2799
2854
  {
2800
2855
  path: "/system/role",
2801
2856
  name: "SystemRole",
2802
- component: () => import("./index-BZSZ3bx2.js"),
2857
+ component: () => import("./index-DauAWAHG.js"),
2803
2858
  meta: {
2804
2859
  title: "角色管理",
2805
2860
  icon: "role",
@@ -2809,7 +2864,7 @@ const mt = [
2809
2864
  {
2810
2865
  path: "/system/menu",
2811
2866
  name: "SystemMenu",
2812
- component: () => import("./index-BKO6Hzba.js"),
2867
+ component: () => import("./index-D_TGEwDg.js"),
2813
2868
  meta: {
2814
2869
  title: "菜单管理",
2815
2870
  icon: "menu",
@@ -2827,11 +2882,11 @@ const mt = [
2827
2882
  }
2828
2883
  }
2829
2884
  ]
2830
- }, ll = [
2885
+ }, rl = [
2831
2886
  {
2832
2887
  path: "/dashboard",
2833
2888
  name: "Dashboard",
2834
- component: () => import("./index-BXHwCe22.js"),
2889
+ component: () => import("./index-DBjV4kzh.js"),
2835
2890
  meta: {
2836
2891
  title: "仪表盘",
2837
2892
  icon: "dashboard",
@@ -2851,7 +2906,7 @@ const mt = [
2851
2906
  {
2852
2907
  path: "user",
2853
2908
  name: "SystemUser",
2854
- component: () => import("./index-DydABgae.js"),
2909
+ component: () => import("./index-D73_-C9m.js"),
2855
2910
  meta: {
2856
2911
  title: "用户管理",
2857
2912
  icon: "user",
@@ -2861,7 +2916,7 @@ const mt = [
2861
2916
  {
2862
2917
  path: "role",
2863
2918
  name: "SystemRole",
2864
- component: () => import("./index-BZSZ3bx2.js"),
2919
+ component: () => import("./index-DauAWAHG.js"),
2865
2920
  meta: {
2866
2921
  title: "角色管理",
2867
2922
  icon: "role",
@@ -2871,7 +2926,7 @@ const mt = [
2871
2926
  {
2872
2927
  path: "menu",
2873
2928
  name: "SystemMenu",
2874
- component: () => import("./index-BKO6Hzba.js"),
2929
+ component: () => import("./index-D_TGEwDg.js"),
2875
2930
  meta: {
2876
2931
  title: "菜单管理",
2877
2932
  icon: "menu",
@@ -2880,7 +2935,7 @@ const mt = [
2880
2935
  }
2881
2936
  ]
2882
2937
  }
2883
- ], Un = [
2938
+ ], zn = [
2884
2939
  {
2885
2940
  menuCode: "dashboard",
2886
2941
  menuName: "仪表盘",
@@ -2932,14 +2987,14 @@ const mt = [
2932
2987
  history: Ye(),
2933
2988
  routes: [...mt, pt],
2934
2989
  scrollBehavior: () => ({ left: 0, top: 0 })
2935
- }), zn = ["/login"];
2936
- vt.beforeEach(async (t, l, u) => {
2937
- const s = ue();
2990
+ }), Pn = ["/login"];
2991
+ vt.beforeEach(async (t, n, u) => {
2992
+ const s = pe();
2938
2993
  if (s.initTheme(), at())
2939
2994
  if (t.path === "/login")
2940
2995
  u({ path: "/" });
2941
2996
  else {
2942
- const o = le();
2997
+ const o = re();
2943
2998
  o.isLoggedIn || (o.setUserInfo({
2944
2999
  appId: Ie(),
2945
3000
  userId: "1",
@@ -2949,20 +3004,20 @@ vt.beforeEach(async (t, l, u) => {
2949
3004
  mobilePhone: "13800138000",
2950
3005
  positionName: "管理员",
2951
3006
  avatar: ""
2952
- }), de().setMenuList(Un)), t.name && t.meta.keepAlive && s.addCachedView(t.name), u();
3007
+ }), ve().setMenuList(zn)), t.name && t.meta.keepAlive && s.addCachedView(t.name), u();
2953
3008
  }
2954
3009
  else
2955
- zn.includes(t.path) ? u() : u("/login");
3010
+ Pn.includes(t.path) ? u() : u("/login");
2956
3011
  });
2957
- function rl() {
3012
+ function il() {
2958
3013
  const t = He({
2959
3014
  history: Ye(),
2960
3015
  routes: [...mt, pt]
2961
3016
  });
2962
3017
  vt.matcher = t.matcher;
2963
3018
  }
2964
- function il(t, l = {}) {
2965
- const u = l.indexPath || "/dashboard", s = l.logoSrc || "/vite.svg", o = {
3019
+ function cl(t, n = {}) {
3020
+ const u = n.indexPath || "/dashboard", s = n.logoSrc || "/vite.svg", o = {
2966
3021
  path: "/:pathMatch(.*)*",
2967
3022
  name: "CatchAll",
2968
3023
  component: () => Promise.resolve().then(() => dt),
@@ -2973,7 +3028,7 @@ function il(t, l = {}) {
2973
3028
  return {
2974
3029
  path: "/",
2975
3030
  name: "Layout",
2976
- component: ne({
3031
+ component: le({
2977
3032
  name: "LayoutWrapper",
2978
3033
  render() {
2979
3034
  return Ct(ut, { logoSrc: s });
@@ -2983,8 +3038,8 @@ function il(t, l = {}) {
2983
3038
  children: [...t, o]
2984
3039
  };
2985
3040
  }
2986
- function cl(t, l = {}) {
2987
- const u = l.base || _t();
3041
+ function ul(t, n = {}) {
3042
+ const u = n.base || _t();
2988
3043
  return He({
2989
3044
  history: Ye(u),
2990
3045
  routes: t,
@@ -2992,22 +3047,22 @@ function cl(t, l = {}) {
2992
3047
  });
2993
3048
  }
2994
3049
  const Tn = ["login", "404", "403", "/login", "/404", "/403"];
2995
- function Pn(t, l) {
2996
- if (l.includes(t)) return !0;
3050
+ function Fn(t, n) {
3051
+ if (n.includes(t)) return !0;
2997
3052
  const u = t.startsWith("/") ? t.slice(1) : t;
2998
- return l.includes(u);
3053
+ return n.includes(u);
2999
3054
  }
3000
- function ul(t, l = {}) {
3001
- const u = l.whiteList || Tn;
3055
+ function dl(t, n = {}) {
3056
+ const u = n.whiteList || Tn;
3002
3057
  t.beforeEach(async (s, o, i) => {
3003
- const h = ue(), v = le(), d = de(), g = h.loginPath || l.loginPath || "/login";
3058
+ const h = pe(), v = re(), d = ve(), g = h.loginPath || n.loginPath || "/login";
3004
3059
  if (h.initTheme(), ot())
3005
3060
  if (s.path === g || s.name === "Login")
3006
3061
  i({ name: "Dashboard" });
3007
3062
  else if (v.isLoggedIn) {
3008
3063
  if (!d.hasMenu)
3009
3064
  try {
3010
- const f = l.fetchMenu ? await l.fetchMenu() : await Qe(l.appId);
3065
+ const f = n.fetchMenu ? await n.fetchMenu() : await Qe(n.appId);
3011
3066
  d.setMenuList(f);
3012
3067
  } catch (f) {
3013
3068
  console.warn("补拉菜单失败:", f);
@@ -3015,42 +3070,42 @@ function ul(t, l = {}) {
3015
3070
  s.name && s.meta.keepAlive && h.addCachedView(s.name), i();
3016
3071
  } else
3017
3072
  try {
3018
- if (l.fetchUserInfo) {
3019
- const f = await l.fetchUserInfo();
3073
+ if (n.fetchUserInfo) {
3074
+ const f = await n.fetchUserInfo();
3020
3075
  v.setUserInfo(f);
3021
3076
  } else {
3022
3077
  const f = await ft();
3023
3078
  v.setUserInfo(f);
3024
3079
  }
3025
- if (l.fetchMenu) {
3026
- const f = await l.fetchMenu();
3080
+ if (n.fetchMenu) {
3081
+ const f = await n.fetchMenu();
3027
3082
  d.setMenuList(f);
3028
3083
  } else {
3029
- const f = await Qe(l.appId);
3084
+ const f = await Qe(n.appId);
3030
3085
  d.setMenuList(f);
3031
3086
  }
3032
- l.onLoginSuccess && l.onLoginSuccess(), s.name && s.meta.keepAlive && h.addCachedView(s.name), i({ ...s, replace: !0 });
3087
+ n.onLoginSuccess && n.onLoginSuccess(), s.name && s.meta.keepAlive && h.addCachedView(s.name), i({ ...s, replace: !0 });
3033
3088
  } catch (f) {
3034
3089
  console.error("获取用户信息失败:", f), v.clearUserInfo(), d.clearMenu(), nt(), i({ name: "Login", query: { redirect: s.fullPath } });
3035
3090
  }
3036
3091
  else
3037
- Pn(s.path, u) || s.name === "Login" || s.name === "NotFound" || s.name === "Forbidden" ? i() : i({ name: "Login", query: { redirect: s.fullPath } });
3092
+ Fn(s.path, u) || s.name === "Login" || s.name === "NotFound" || s.name === "Forbidden" ? i() : i({ name: "Login", query: { redirect: s.fullPath } });
3038
3093
  }), t.afterEach(() => {
3039
3094
  });
3040
3095
  }
3041
- var Dn = /* @__PURE__ */ ((t) => (t[t.ENABLED = 1] = "ENABLED", t[t.DISABLED = 0] = "DISABLED", t))(Dn || {}), An = /* @__PURE__ */ ((t) => (t[t.UNKNOWN = 0] = "UNKNOWN", t[t.MALE = 1] = "MALE", t[t.FEMALE = 2] = "FEMALE", t))(An || {}), Fn = /* @__PURE__ */ ((t) => (t[t.DIRECTORY = 0] = "DIRECTORY", t[t.MENU = 1] = "MENU", t[t.BUTTON = 2] = "BUTTON", t))(Fn || {});
3042
- const dl = {
3096
+ var Dn = /* @__PURE__ */ ((t) => (t[t.ENABLED = 1] = "ENABLED", t[t.DISABLED = 0] = "DISABLED", t))(Dn || {}), An = /* @__PURE__ */ ((t) => (t[t.UNKNOWN = 0] = "UNKNOWN", t[t.MALE = 1] = "MALE", t[t.FEMALE = 2] = "FEMALE", t))(An || {}), Bn = /* @__PURE__ */ ((t) => (t[t.DIRECTORY = 0] = "DIRECTORY", t[t.MENU = 1] = "MENU", t[t.BUTTON = 2] = "BUTTON", t))(Bn || {});
3097
+ const ml = {
3043
3098
  1: "启用",
3044
3099
  0: "禁用"
3045
- }, ml = {
3100
+ }, pl = {
3046
3101
  0: "未知",
3047
3102
  1: "男",
3048
3103
  2: "女"
3049
- }, pl = {
3104
+ }, vl = {
3050
3105
  0: "目录",
3051
3106
  1: "菜单",
3052
3107
  2: "按钮"
3053
- }, vl = [
3108
+ }, hl = [
3054
3109
  {
3055
3110
  label: "启用",
3056
3111
  value: 1
@@ -3061,7 +3116,7 @@ const dl = {
3061
3116
  value: 0
3062
3117
  /* DISABLED */
3063
3118
  }
3064
- ], hl = [
3119
+ ], _l = [
3065
3120
  {
3066
3121
  label: "未知",
3067
3122
  value: 0
@@ -3077,7 +3132,7 @@ const dl = {
3077
3132
  value: 2
3078
3133
  /* FEMALE */
3079
3134
  }
3080
- ], _l = [
3135
+ ], fl = [
3081
3136
  {
3082
3137
  label: "目录",
3083
3138
  value: 0
@@ -3093,30 +3148,30 @@ const dl = {
3093
3148
  value: 2
3094
3149
  /* BUTTON */
3095
3150
  }
3096
- ], fl = {
3097
- mounted(t, l) {
3151
+ ], gl = {
3152
+ mounted(t, n) {
3098
3153
  var h, v;
3099
- const u = le(), s = de();
3154
+ const u = re(), s = ve();
3100
3155
  if (!u.isLoggedIn) {
3101
3156
  (h = t.parentNode) == null || h.removeChild(t);
3102
3157
  return;
3103
3158
  }
3104
- const o = l.value, i = Array.isArray(o) ? o : [o];
3159
+ const o = n.value, i = Array.isArray(o) ? o : [o];
3105
3160
  s.hasPermission(i) || (v = t.parentNode) == null || v.removeChild(t);
3106
3161
  }
3107
3162
  };
3108
- async function gl(t) {
3163
+ async function yl(t) {
3109
3164
  await gt(t.basePath);
3110
- const l = et();
3111
- return l && yt(l), bt({
3165
+ const n = et();
3166
+ return n && yt(n), bt({
3112
3167
  appId: t.appId,
3113
3168
  clientId: t.clientId,
3114
- apiBaseUrl: l || t.apiBaseUrl,
3169
+ apiBaseUrl: n || t.apiBaseUrl,
3115
3170
  basePath: t.basePath
3116
- }), t.basePath && kt(t.basePath), Promise.resolve().then(() => zt).then(({ useAppStore: u }) => {
3171
+ }), t.basePath && kt(t.basePath), Promise.resolve().then(() => Pt).then(({ useAppStore: u }) => {
3117
3172
  const s = u();
3118
3173
  t.appName && s.setAppName(t.appName), t.indexPath && s.setIndexPath(t.indexPath), t.loginPath && s.setLoginPath(t.loginPath);
3119
- }), t.locale && Promise.resolve().then(() => En).then(({ useLocaleStore: u }) => {
3174
+ }), t.locale && Promise.resolve().then(() => Un).then(({ useLocaleStore: u }) => {
3120
3175
  u().changeLocale(t.locale);
3121
3176
  }), {
3122
3177
  config: {
@@ -3132,47 +3187,47 @@ async function gl(t) {
3132
3187
  };
3133
3188
  }
3134
3189
  export {
3135
- ue as A,
3136
- Zn as B,
3190
+ pe as A,
3191
+ Qn as B,
3137
3192
  Ue as C,
3138
- Qn as D,
3139
- tl as E,
3140
- Gn as F,
3193
+ el as D,
3194
+ sl as E,
3195
+ Xn as F,
3141
3196
  An as G,
3142
- Os as H,
3197
+ Rs as H,
3143
3198
  Je as I,
3144
- de as J,
3145
- el as K,
3199
+ ve as J,
3200
+ tl as K,
3146
3201
  ut as L,
3147
- Fn as M,
3148
- le as N,
3202
+ Bn as M,
3203
+ re as N,
3149
3204
  Dn as S,
3150
- Yn as T,
3151
- re as _,
3152
- vl as a,
3153
- _l as b,
3154
- Xn as c,
3155
- hl as d,
3156
- ml as e,
3157
- pl as f,
3158
- $n as g,
3205
+ Gn as T,
3206
+ ie as _,
3207
+ hl as a,
3208
+ fl as b,
3209
+ Jn as c,
3210
+ _l as d,
3211
+ pl as e,
3212
+ vl as f,
3213
+ Ln as g,
3159
3214
  st as h,
3160
- gn as i,
3161
- dl as j,
3162
- il as k,
3163
- cl as l,
3164
- sl as m,
3165
- gl as n,
3166
- ll as o,
3167
- ol as p,
3168
- al as q,
3169
- nl as r,
3215
+ yn as i,
3216
+ ml as j,
3217
+ cl as k,
3218
+ ul as l,
3219
+ ol as m,
3220
+ yl as n,
3221
+ rl as o,
3222
+ al as p,
3223
+ nl as q,
3224
+ ll as r,
3170
3225
  pt as s,
3171
- Un as t,
3172
- fl as u,
3173
- rl as v,
3226
+ zn as t,
3227
+ gl as u,
3228
+ il as v,
3174
3229
  vt as w,
3175
- ul as x,
3230
+ dl as x,
3176
3231
  mt as y,
3177
- Jn as z
3232
+ Zn as z
3178
3233
  };