xto-fronted 0.9.0 → 0.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,115 +1,117 @@
1
- import { y as T, z as bt, A as Ne, B as it, C as ct, D as ut, E as dt, F as ze, p as wt, G as mt, H as kt, j as at, n as xt, I as Ct, J as nt, K as $t, L as Lt, M as Mt, h as St, N as Nt } from "./user-B0q24FmO.js";
2
- import { ref as g, computed as w, watch as Se, defineComponent as ie, resolveComponent as pt, openBlock as a, createBlock as D, unref as l, withCtx as S, createElementBlock as c, Fragment as H, renderList as J, createElementVNode as e, toDisplayString as x, createCommentVNode as P, normalizeClass as Z, withDirectives as Be, vShow as Et, createVNode as y, createTextVNode as Ce, onMounted as Ye, onUnmounted as Ge, vModelText as Xe, Transition as Ee, withModifiers as Ve, normalizeStyle as Pe, reactive as Je, createStaticVNode as Ae, withKeys as It, h as Ut } from "vue";
3
- import { defineStore as Fe } from "pinia";
4
- import { useRoute as Ue, useRouter as be, createRouter as Ze, createWebHistory as Qe } from "vue-router";
5
- import { SubMenu as He, MenuItem as Te, Menu as et, Tabs as Tt, TabPane as Pt } from "@xto/navigation";
6
- import { Icon as I, Button as Ie } from "@xto/base";
7
- import { Drawer as tt, Message as zt } from "@xto/feedback";
8
- import { Form as Ft, FormItem as Oe, Input as lt, Checkbox as Dt } from "@xto/form";
9
- import { createLocaleProvider as At, getSupportedLocales as Bt, useLocale as Vt } from "@xto/core/locale";
10
- function Ot(t) {
1
+ import { y as T, z as st, A as Me, B as rt, C as it, D as ct, E as ut, F as Te, p as yt, G as dt, H as bt, j as ot, n as wt, I as kt, J as at, K as xt, L as Ct, M as $t, h as Lt, N as Mt } from "./user-B0q24FmO.js";
2
+ import { ref as y, computed as k, watch as Le, defineComponent as ce, resolveComponent as mt, openBlock as o, createBlock as A, unref as l, withCtx as S, createElementBlock as c, Fragment as j, renderList as J, createElementVNode as e, toDisplayString as x, createCommentVNode as z, normalizeClass as Z, withDirectives as De, vShow as St, createVNode as w, createTextVNode as Ce, onMounted as qe, onUnmounted as He, vModelText as Ye, Transition as Se, withModifiers as Ae, normalizeStyle as Ue, reactive as Ge, createStaticVNode as Fe, withKeys as Nt, h as Et } from "vue";
3
+ import { defineStore as Pe } from "pinia";
4
+ import { useRoute as Ee, useRouter as be, createRouter as Xe, createWebHistory as Je } from "vue-router";
5
+ import { SubMenu as We, MenuItem as Ie, Menu as Ze, Tabs as It, TabPane as Ut } from "@xto/navigation";
6
+ import { Icon as U, Button as Ne } from "@xto/base";
7
+ import { Drawer as Qe, Message as Tt } from "@xto/feedback";
8
+ import { Form as Pt, FormItem as Be, Input as nt, Checkbox as zt } from "@xto/form";
9
+ import { createLocaleProvider as Ft, getSupportedLocales as Dt, useLocale as At } from "@xto/core/locale";
10
+ function Bt(t) {
11
11
  const n = /^#?([0-9a-f]{6})$/i.exec(t.trim());
12
12
  if (!n) return null;
13
13
  const m = parseInt(n[1], 16);
14
14
  return [m >> 16 & 255, m >> 8 & 255, m & 255];
15
15
  }
16
- function Le(t) {
16
+ function $e(t) {
17
17
  const n = T.get(t);
18
18
  return n === null || n === "" ? void 0 : n;
19
19
  }
20
- const ye = bt(), Me = ye.features || {}, Rt = ["layout", "primaryColor", "theme", "isDark", "showTabs", "showBreadcrumb", "showFooter"], he = Fe("app", () => {
21
- const t = g(T.get("appName") || "XTO App"), n = g(T.get("indexPath") || "/dashboard"), m = g(T.get("loginPath") || "/login"), o = g(Le("theme") ?? ye.theme ?? "light"), s = g(o.value === "dark"), h = g(Le("layout") ?? ye.layout ?? "sidebar"), i = g(T.get("isCollapsed") || !1), v = g(Le("showTabs") ?? Me.showTabs ?? !0), d = g(Le("showFooter") ?? Me.showFooter ?? !0), f = g(Le("showBreadcrumb") ?? Me.showBreadcrumb ?? !0), _ = g(Le("primaryColor") ?? ye.primaryColor ?? "#4F46E5"), k = g(ye.allowUserOverride !== !1), u = g([]), K = g([]), A = w(() => s.value ? "dark" : "light"), j = (M) => {
22
- t.value = M, T.set("appName", M);
23
- }, B = (M) => {
24
- n.value = M, T.set("indexPath", M);
25
- }, W = (M) => {
26
- m.value = M, T.set("loginPath", M);
27
- }, V = () => {
28
- const M = document.documentElement;
29
- s.value ? M.classList.add("dark") : M.classList.remove("dark");
30
- }, Q = () => {
31
- s.value = !s.value, o.value = s.value ? "dark" : "light", X();
32
- }, ee = (M) => {
33
- o.value = M, s.value = M === "dark", X();
34
- }, X = () => {
35
- V(), T.set("isDark", s.value), T.set("theme", o.value);
20
+ const Vt = ["layout", "primaryColor", "theme", "isDark", "showTabs", "showBreadcrumb", "showFooter"], _e = Pe("app", () => {
21
+ const t = st(), n = t.features || {}, m = y(T.get("appName") || "XTO App"), a = y(T.get("indexPath") || "/dashboard"), s = y(T.get("loginPath") || "/login"), p = y($e("theme") ?? t.theme ?? "light"), i = y(p.value === "dark"), h = y($e("layout") ?? t.layout ?? "sidebar"), d = y(T.get("isCollapsed") || !1), f = y($e("showTabs") ?? n.showTabs ?? !0), _ = y($e("showFooter") ?? n.showFooter ?? !0), g = y($e("showBreadcrumb") ?? n.showBreadcrumb ?? !0), u = y($e("primaryColor") ?? t.primaryColor ?? "#4F46E5"), W = y(t.allowUserOverride !== !1), P = y([]), B = y([]), V = k(() => i.value ? "dark" : "light"), R = (M) => {
22
+ m.value = M, T.set("appName", M);
23
+ }, H = (M) => {
24
+ a.value = M, T.set("indexPath", M);
25
+ }, Q = (M) => {
26
+ s.value = M, T.set("loginPath", M);
36
27
  }, G = () => {
37
- i.value = !i.value, T.set("isCollapsed", i.value);
38
- }, te = (M) => {
28
+ const M = document.documentElement;
29
+ i.value ? M.classList.add("dark") : M.classList.remove("dark");
30
+ }, ee = () => {
31
+ i.value = !i.value, p.value = i.value ? "dark" : "light", te();
32
+ }, Y = (M) => {
33
+ p.value = M, i.value = M === "dark", te();
34
+ }, te = () => {
35
+ G(), T.set("isDark", i.value), T.set("theme", p.value);
36
+ }, D = () => {
37
+ d.value = !d.value, T.set("isCollapsed", d.value);
38
+ }, E = (M) => {
39
39
  h.value = M, T.set("layout", M);
40
40
  }, F = () => {
41
- v.value = !v.value, T.set("showTabs", v.value);
42
- }, E = () => {
43
- d.value = !d.value, T.set("showFooter", d.value);
44
- }, z = () => {
45
- f.value = !f.value, T.set("showBreadcrumb", f.value);
46
- }, Y = (M) => {
47
- const O = document.documentElement;
48
- O.style.setProperty("--xto-color-primary", M);
49
- const me = Ot(M);
50
- if (me) {
51
- const pe = (oe, ke) => {
52
- const xe = ke ? [255, 255, 255] : [0, 0, 0];
53
- return `#${me.map((re, ge) => Math.round(re + (xe[ge] - re) * oe)).map((re) => re.toString(16).padStart(2, "0")).join("")}`;
41
+ f.value = !f.value, T.set("showTabs", f.value);
42
+ }, X = () => {
43
+ _.value = !_.value, T.set("showFooter", _.value);
44
+ }, K = () => {
45
+ g.value = !g.value, T.set("showBreadcrumb", g.value);
46
+ }, oe = (M) => {
47
+ const q = document.documentElement;
48
+ q.style.setProperty("--xto-color-primary", M);
49
+ const pe = Bt(M);
50
+ if (pe) {
51
+ const ve = (ne, ke) => {
52
+ const ye = ke ? [255, 255, 255] : [0, 0, 0];
53
+ return `#${pe.map((I, b) => Math.round(I + (ye[b] - I) * ne)).map((I) => I.toString(16).padStart(2, "0")).join("")}`;
54
54
  };
55
- for (let oe = 1; oe <= 9; oe++)
56
- O.style.setProperty(`--xto-color-primary-light-${oe}`, pe(oe * 0.1, !0));
57
- O.style.setProperty("--xto-color-primary-dark-1", pe(0.12, !1)), O.style.setProperty("--xto-color-primary-dark-2", pe(0.28, !1)), O.style.setProperty("--xto-color-primary-dark-3", pe(0.45, !1)), O.style.setProperty("--xto-color-ring", M);
55
+ for (let ne = 1; ne <= 9; ne++)
56
+ q.style.setProperty(`--xto-color-primary-light-${ne}`, ve(ne * 0.1, !0));
57
+ q.style.setProperty("--xto-color-primary-dark-1", ve(0.12, !1)), q.style.setProperty("--xto-color-primary-dark-2", ve(0.28, !1)), q.style.setProperty("--xto-color-primary-dark-3", ve(0.45, !1)), q.style.setProperty("--xto-color-ring", M);
58
58
  }
59
- }, q = (M) => {
60
- _.value = M, Y(M), T.set("primaryColor", M);
61
- }, ne = () => {
62
- Rt.forEach((M) => T.remove(M)), h.value = ye.layout ?? "sidebar", _.value = ye.primaryColor ?? "#4F46E5", o.value = ye.theme ?? "light", s.value = o.value === "dark", v.value = Me.showTabs ?? !0, d.value = Me.showFooter ?? !0, f.value = Me.showBreadcrumb ?? !0, V(), Y(_.value);
63
- }, ve = (M) => {
64
- u.value.includes(M) || u.value.push(M);
65
- }, we = (M) => {
66
- const O = u.value.indexOf(M);
67
- O > -1 && u.value.splice(O, 1);
68
- }, le = () => {
69
- u.value = [];
70
- }, de = (M) => {
71
- K.value = M;
72
- }, fe = () => {
73
- V(), Y(_.value);
59
+ }, he = (M) => {
60
+ u.value = M, oe(M), T.set("primaryColor", M);
61
+ }, we = () => {
62
+ Vt.forEach((pe) => T.remove(pe));
63
+ const M = st(), q = M.features || {};
64
+ h.value = M.layout ?? "sidebar", u.value = M.primaryColor ?? "#4F46E5", p.value = M.theme ?? "light", i.value = p.value === "dark", f.value = q.showTabs ?? !0, _.value = q.showFooter ?? !0, g.value = q.showBreadcrumb ?? !0, G(), oe(u.value);
65
+ }, re = (M) => {
66
+ P.value.includes(M) || P.value.push(M);
67
+ }, me = (M) => {
68
+ const q = P.value.indexOf(M);
69
+ q > -1 && P.value.splice(q, 1);
70
+ }, ge = () => {
71
+ P.value = [];
72
+ }, ie = (M) => {
73
+ B.value = M;
74
+ }, ae = () => {
75
+ G(), oe(u.value);
74
76
  };
75
- return Se(s, V), {
76
- appName: t,
77
- indexPath: n,
78
- loginPath: m,
79
- isDark: s,
80
- theme: o,
77
+ return Le(i, G), {
78
+ appName: m,
79
+ indexPath: a,
80
+ loginPath: s,
81
+ isDark: i,
82
+ theme: p,
81
83
  layout: h,
82
- isCollapsed: i,
83
- showTabs: v,
84
- showFooter: d,
85
- showBreadcrumb: f,
86
- primaryColor: _,
87
- allowUserOverride: k,
88
- cachedViews: u,
89
- mixSubMenus: K,
90
- themeClass: A,
91
- setAppName: j,
92
- setIndexPath: B,
93
- setLoginPath: W,
94
- toggleTheme: Q,
95
- toggleCollapse: G,
96
- setTheme: ee,
97
- setLayout: te,
84
+ isCollapsed: d,
85
+ showTabs: f,
86
+ showFooter: _,
87
+ showBreadcrumb: g,
88
+ primaryColor: u,
89
+ allowUserOverride: W,
90
+ cachedViews: P,
91
+ mixSubMenus: B,
92
+ themeClass: V,
93
+ setAppName: R,
94
+ setIndexPath: H,
95
+ setLoginPath: Q,
96
+ toggleTheme: ee,
97
+ toggleCollapse: D,
98
+ setTheme: Y,
99
+ setLayout: E,
98
100
  toggleTabs: F,
99
- toggleFooter: E,
100
- toggleBreadcrumb: z,
101
- setPrimaryColor: q,
102
- resetToServerDefaults: ne,
103
- addCachedView: ve,
104
- removeCachedView: we,
105
- clearCachedViews: le,
106
- setMixSubMenus: de,
107
- initTheme: fe
101
+ toggleFooter: X,
102
+ toggleBreadcrumb: K,
103
+ setPrimaryColor: he,
104
+ resetToServerDefaults: we,
105
+ addCachedView: re,
106
+ removeCachedView: me,
107
+ clearCachedViews: ge,
108
+ setMixSubMenus: ie,
109
+ initTheme: ae
108
110
  };
109
- }), Kt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
111
+ }), Ot = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
110
112
  __proto__: null,
111
- useAppStore: he
112
- }, Symbol.toStringTag, { value: "Module" })), jt = "menu_list", Wt = "permission_list", Re = () => `${jt}_${Ne()}`, Ke = () => `${Wt}_${Ne()}`, qt = {
113
+ useAppStore: _e
114
+ }, Symbol.toStringTag, { value: "Module" })), Rt = "menu_list", Kt = "permission_list", Ve = () => `${Rt}_${Me()}`, Oe = () => `${Kt}_${Me()}`, jt = {
113
115
  menuCode: "home",
114
116
  menuName: "首页",
115
117
  menuUrl: "/dashboard",
@@ -118,60 +120,60 @@ const ye = bt(), Me = ye.features || {}, Rt = ["layout", "primaryColor", "theme"
118
120
  isDefault: !1,
119
121
  isOut: !1
120
122
  };
121
- function vt(t) {
123
+ function pt(t) {
122
124
  return t.filter((n) => n.type !== 1).map((n) => ({
123
125
  ...n,
124
- children: n.children ? vt(n.children) : void 0
126
+ children: n.children ? pt(n.children) : void 0
125
127
  }));
126
128
  }
127
- function Ht(t) {
129
+ function Wt(t) {
128
130
  const n = [];
129
- function m(o) {
130
- o.forEach((s) => {
131
+ function m(a) {
132
+ a.forEach((s) => {
131
133
  s.type === 1 && s.menuCode && n.push(s.menuCode), s.children && m(s.children);
132
134
  });
133
135
  }
134
136
  return m(t), n;
135
137
  }
136
- const _e = Fe("menu", () => {
137
- const t = g(T.get(Re()) || []), n = g(T.get(Ke()) || []), m = w(() => t.value.length > 0);
138
+ const fe = Pe("menu", () => {
139
+ const t = y(T.get(Ve()) || []), n = y(T.get(Oe()) || []), m = k(() => t.value.length > 0);
138
140
  return {
139
141
  menuList: t,
140
142
  permissions: n,
141
143
  hasMenu: m,
142
144
  setMenuList: (i) => {
143
- n.value = Ht(i), T.set(Ke(), n.value);
144
- const v = vt(i);
145
- t.value = [qt, ...v], T.set(Re(), t.value);
145
+ n.value = Wt(i), T.set(Oe(), n.value);
146
+ const h = pt(i);
147
+ t.value = [jt, ...h], T.set(Ve(), t.value);
146
148
  },
147
149
  clearMenu: () => {
148
- t.value = [], n.value = [], T.remove(Re()), T.remove(Ke());
150
+ t.value = [], n.value = [], T.remove(Ve()), T.remove(Oe());
149
151
  },
150
- hasPermission: (i) => Array.isArray(i) ? i.some((v) => n.value.includes(v)) : n.value.includes(i)
152
+ hasPermission: (i) => Array.isArray(i) ? i.some((h) => n.value.includes(h)) : n.value.includes(i)
151
153
  };
152
- }), je = "user_info", ce = Fe("user", () => {
153
- const t = g(T.get(je)), n = w(() => !!t.value), m = w(() => {
154
+ }), Re = "user_info", ue = Pe("user", () => {
155
+ const t = y(T.get(Re)), n = k(() => !!t.value), m = k(() => {
154
156
  var u;
155
157
  return ((u = t.value) == null ? void 0 : u.userId) || "";
156
- }), o = w(() => {
158
+ }), a = k(() => {
157
159
  var u;
158
160
  return ((u = t.value) == null ? void 0 : u.userName) || "";
159
- }), s = w(() => {
161
+ }), s = k(() => {
160
162
  var u;
161
163
  return ((u = t.value) == null ? void 0 : u.departmentName) || "";
162
- }), h = w(() => {
164
+ }), p = k(() => {
163
165
  var u;
164
166
  return ((u = t.value) == null ? void 0 : u.roleName) || "";
165
- }), i = w(() => {
167
+ }), i = k(() => {
166
168
  var u;
167
169
  return ((u = t.value) == null ? void 0 : u.email) || "";
168
- }), v = w(() => {
170
+ }), h = k(() => {
169
171
  var u;
170
172
  return ((u = t.value) == null ? void 0 : u.mobilePhone) || "";
171
- }), d = w(() => {
173
+ }), d = k(() => {
172
174
  var u;
173
175
  return ((u = t.value) == null ? void 0 : u.positionName) || "";
174
- }), f = w(() => {
176
+ }), f = k(() => {
175
177
  var u;
176
178
  return ((u = t.value) == null ? void 0 : u.avatar) || "";
177
179
  });
@@ -179,58 +181,58 @@ const _e = Fe("menu", () => {
179
181
  userInfo: t,
180
182
  isLoggedIn: n,
181
183
  userId: m,
182
- userName: o,
184
+ userName: a,
183
185
  departmentName: s,
184
- roleName: h,
186
+ roleName: p,
185
187
  email: i,
186
- mobilePhone: v,
188
+ mobilePhone: h,
187
189
  positionName: d,
188
190
  avatar: f,
189
191
  setUserInfo: (u) => {
190
- t.value = u, T.set(je, u);
192
+ t.value = u, T.set(Re, u);
191
193
  },
192
194
  clearUserInfo: () => {
193
- t.value = null, T.remove(je);
195
+ t.value = null, T.remove(Re);
194
196
  }
195
197
  };
196
- }), De = Fe("auth", () => {
197
- const t = g(it()), n = w(() => ct()), m = g(""), o = g(""), s = g(""), h = g("/login");
198
+ }), ze = Pe("auth", () => {
199
+ const t = y(rt()), n = k(() => it()), m = y(""), a = y(""), s = y(""), p = y("/login");
198
200
  return {
199
201
  token: t,
200
202
  isLoggedIn: n,
201
203
  baseUrl: m,
202
- appId: o,
204
+ appId: a,
203
205
  clientId: s,
204
- loginPath: h,
206
+ loginPath: p,
205
207
  login: (u) => {
206
- t.value = u.access_token, dt(u);
208
+ t.value = u.access_token, ut(u);
207
209
  },
208
210
  logout: () => {
209
- t.value = null, ut();
211
+ t.value = null, ct();
210
212
  },
211
213
  setBaseUrl: (u) => {
212
214
  m.value = u;
213
215
  },
214
216
  setAppId: (u) => {
215
- o.value = u;
217
+ a.value = u;
216
218
  },
217
219
  setClientId: (u) => {
218
220
  s.value = u;
219
221
  },
220
222
  setLoginPath: (u) => {
221
- h.value = u;
223
+ p.value = u;
222
224
  }
223
225
  };
224
- }), Yt = { class: "menu-item__content" }, Gt = { class: "menu-item__icon" }, Xt = {
226
+ }), qt = { class: "menu-item__content" }, Ht = { class: "menu-item__icon" }, Yt = {
225
227
  key: 1,
226
228
  class: "menu-item__char"
227
- }, Jt = { class: "menu-item__text" }, Zt = { class: "menu-item__content" }, Qt = {
229
+ }, Gt = { class: "menu-item__text" }, Xt = { class: "menu-item__content" }, Jt = {
228
230
  key: 0,
229
231
  class: "menu-item__icon"
230
- }, es = {
232
+ }, Zt = {
231
233
  key: 1,
232
234
  class: "menu-item__char"
233
- }, ts = { class: "menu-item__text" }, ss = /* @__PURE__ */ ie({
235
+ }, Qt = { class: "menu-item__text" }, es = /* @__PURE__ */ ce({
234
236
  __name: "SidebarMenuItem",
235
237
  props: {
236
238
  menu: {}
@@ -338,7 +340,7 @@ const _e = Fe("menu", () => {
338
340
  "sun",
339
341
  "theme",
340
342
  "skin"
341
- ]), o = (d) => {
343
+ ]), a = (d) => {
342
344
  if (!d || d === "") return "";
343
345
  if (d.startsWith("tineco-icon-")) {
344
346
  const _ = d.replace("tineco-icon-", "");
@@ -375,64 +377,64 @@ const _e = Fe("menu", () => {
375
377
  list: "list",
376
378
  grid: "grid"
377
379
  }[d] || d;
378
- }, s = (d) => d ? d.charAt(0) : "", h = (d) => m.has(d), i = w(() => n.menu.menuId || n.menu.menuCode || n.menu.menuUrl || ""), v = w(() => n.menu.children && n.menu.children.length > 0);
380
+ }, s = (d) => d ? d.charAt(0) : "", p = (d) => m.has(d), i = k(() => n.menu.menuId || n.menu.menuCode || n.menu.menuUrl || ""), h = k(() => n.menu.children && n.menu.children.length > 0);
379
381
  return (d, f) => {
380
- const _ = pt("SidebarMenuItem", !0);
381
- return v.value ? (a(), D(l(He), {
382
+ const _ = mt("SidebarMenuItem", !0);
383
+ return h.value ? (o(), A(l(We), {
382
384
  key: 0,
383
385
  index: i.value
384
386
  }, {
385
387
  title: S(() => [
386
- e("span", Yt, [
387
- e("span", Gt, [
388
- h(o(t.menu.icon)) ? (a(), D(l(I), {
388
+ e("span", qt, [
389
+ e("span", Ht, [
390
+ p(a(t.menu.icon)) ? (o(), A(l(U), {
389
391
  key: 0,
390
- name: o(t.menu.icon),
392
+ name: a(t.menu.icon),
391
393
  size: 16
392
- }, null, 8, ["name"])) : (a(), c("span", Xt, x(s(t.menu.menuName)), 1))
394
+ }, null, 8, ["name"])) : (o(), c("span", Yt, x(s(t.menu.menuName)), 1))
393
395
  ]),
394
- e("span", Jt, x(t.menu.menuName), 1)
396
+ e("span", Gt, x(t.menu.menuName), 1)
395
397
  ])
396
398
  ]),
397
399
  default: S(() => [
398
- (a(!0), c(H, null, J(t.menu.children, (k) => (a(), D(_, {
399
- key: k.menuId || k.menuCode || k.menuUrl,
400
- menu: k
400
+ (o(!0), c(j, null, J(t.menu.children, (g) => (o(), A(_, {
401
+ key: g.menuId || g.menuCode || g.menuUrl,
402
+ menu: g
401
403
  }, null, 8, ["menu"]))), 128))
402
404
  ]),
403
405
  _: 1
404
- }, 8, ["index"])) : (a(), D(l(Te), {
406
+ }, 8, ["index"])) : (o(), A(l(Ie), {
405
407
  key: 1,
406
408
  index: t.menu.menuUrl || i.value
407
409
  }, {
408
410
  default: S(() => [
409
- e("span", Zt, [
410
- t.menu.menuName !== "首页" ? (a(), c("span", Qt, [
411
- h(o(t.menu.icon)) ? (a(), D(l(I), {
411
+ e("span", Xt, [
412
+ t.menu.menuName !== "首页" ? (o(), c("span", Jt, [
413
+ p(a(t.menu.icon)) ? (o(), A(l(U), {
412
414
  key: 0,
413
- name: o(t.menu.icon),
415
+ name: a(t.menu.icon),
414
416
  size: 16
415
- }, null, 8, ["name"])) : (a(), c("span", es, x(s(t.menu.menuName)), 1))
416
- ])) : P("", !0),
417
- e("span", ts, x(t.menu.menuName), 1)
417
+ }, null, 8, ["name"])) : (o(), c("span", Zt, x(s(t.menu.menuName)), 1))
418
+ ])) : z("", !0),
419
+ e("span", Qt, x(t.menu.menuName), 1)
418
420
  ])
419
421
  ]),
420
422
  _: 1
421
423
  }, 8, ["index"]));
422
424
  };
423
425
  }
424
- }), ue = (t, n) => {
426
+ }), de = (t, n) => {
425
427
  const m = t.__vccOpts || t;
426
- for (const [o, s] of n)
427
- m[o] = s;
428
+ for (const [a, s] of n)
429
+ m[a] = s;
428
430
  return m;
429
- }, os = /* @__PURE__ */ ue(ss, [["__scopeId", "data-v-03a4d35c"]]), as = {
431
+ }, ts = /* @__PURE__ */ de(es, [["__scopeId", "data-v-03a4d35c"]]), ss = {
430
432
  key: 0,
431
433
  class: "sidebar__logo"
432
- }, ns = ["src"], ls = {
434
+ }, os = ["src"], as = {
433
435
  key: 1,
434
436
  class: "sidebar__user"
435
- }, rs = { class: "sidebar__user-info" }, is = { class: "sidebar__user-name" }, cs = { class: "sidebar__user-role" }, We = "sidebar_opened_menus", qe = "sidebar_menu_list_key", us = /* @__PURE__ */ ie({
437
+ }, ns = { class: "sidebar__user-info" }, ls = { class: "sidebar__user-name" }, rs = { class: "sidebar__user-role" }, Ke = "sidebar_opened_menus", je = "sidebar_menu_list_key", is = /* @__PURE__ */ ce({
436
438
  __name: "Sidebar",
437
439
  props: {
438
440
  menuList: { default: () => [] },
@@ -441,79 +443,79 @@ const _e = Fe("menu", () => {
441
443
  logoSrc: {}
442
444
  },
443
445
  setup(t) {
444
- const n = t, m = w(() => n.logoSrc || ze("/vite.svg")), o = Ue(), s = be(), h = _e(), i = ce(), v = De(), d = he(), f = w(() => n.menuList.length > 0 ? n.menuList : h.menuList), _ = w(() => d.isCollapsed), k = w(() => o.path), u = (F) => F.menuId || F.menuCode || F.menuUrl || "", K = () => f.value.map(u).join(","), A = T.get(qe) || "", j = K(), B = A === j ? T.get(We) || [] : [], W = g(B);
445
- Se(W, (F) => {
446
- T.set(We, F), T.set(qe, K());
446
+ const n = t, m = k(() => n.logoSrc || Te("/vite.svg")), a = Ee(), s = be(), p = fe(), i = ue(), h = ze(), d = _e(), f = k(() => n.menuList.length > 0 ? n.menuList : p.menuList), _ = k(() => d.isCollapsed), g = k(() => a.path), u = (D) => D.menuId || D.menuCode || D.menuUrl || "", W = () => f.value.map(u).join(","), P = T.get(je) || "", B = W(), V = P === B ? T.get(Ke) || [] : [], R = y(V);
447
+ Le(R, (D) => {
448
+ T.set(Ke, D), T.set(je, W());
447
449
  }, { deep: !0 });
448
- const V = (F, E, z = []) => {
449
- var Y;
450
- for (const q of F) {
451
- if (q.menuUrl && (E === q.menuUrl || E.startsWith(q.menuUrl + "/")))
452
- return [...z, u(q)];
453
- if ((Y = q.children) != null && Y.length) {
454
- const ne = V(q.children, E, [...z, u(q)]);
455
- if (ne) return ne;
450
+ const H = (D, E, F = []) => {
451
+ var X;
452
+ for (const K of D) {
453
+ if (K.menuUrl && (E === K.menuUrl || E.startsWith(K.menuUrl + "/")))
454
+ return [...F, u(K)];
455
+ if ((X = K.children) != null && X.length) {
456
+ const oe = H(K.children, E, [...F, u(K)]);
457
+ if (oe) return oe;
456
458
  }
457
459
  }
458
460
  return null;
459
461
  };
460
- Se([() => o.path, f], ([F, E]) => {
462
+ Le([() => a.path, f], ([D, E]) => {
461
463
  if (E.length > 0) {
462
- const z = V(E, F);
463
- if (z) {
464
- const Y = z.slice(0, -1), q = /* @__PURE__ */ new Set([...W.value, ...Y]);
465
- W.value = Array.from(q);
464
+ const F = H(E, D);
465
+ if (F) {
466
+ const X = F.slice(0, -1), K = /* @__PURE__ */ new Set([...R.value, ...X]);
467
+ R.value = Array.from(K);
466
468
  }
467
469
  }
468
- }, { immediate: !0 }), Se(f, (F, E) => {
469
- F !== E && (W.value = [], T.set(We, []), T.set(qe, K()));
470
+ }, { immediate: !0 }), Le(f, (D, E) => {
471
+ D !== E && (R.value = [], T.set(Ke, []), T.set(je, W()));
470
472
  }, { immediate: !1 });
471
- const Q = w(() => d.isDark ? "#161B21" : "#fff"), ee = w(() => d.isDark ? "#D9DCE1" : "#4E5566"), X = w(() => d.isDark ? "#818CF8" : "#4F46E5"), G = (F) => {
472
- F && F !== o.path && s.push(F);
473
+ const Q = k(() => d.isDark ? "#161B21" : "#fff"), G = k(() => d.isDark ? "#D9DCE1" : "#4E5566"), ee = k(() => d.isDark ? "#818CF8" : "#4F46E5"), Y = (D) => {
474
+ D && D !== a.path && s.push(D);
473
475
  }, te = () => {
474
- v.logout(), i.clearUserInfo(), h.clearMenu(), s.push(d.loginPath);
476
+ h.logout(), i.clearUserInfo(), p.clearMenu(), s.push(d.loginPath);
475
477
  };
476
- return (F, E) => (a(), c("div", {
478
+ return (D, E) => (o(), c("div", {
477
479
  class: Z(["sidebar", { "sidebar--collapsed": _.value }])
478
480
  }, [
479
- n.showLogo ? (a(), c("div", as, [
481
+ n.showLogo ? (o(), c("div", ss, [
480
482
  e("img", {
481
483
  src: m.value,
482
484
  alt: "Logo",
483
485
  class: "sidebar__logo-img"
484
- }, null, 8, ns),
485
- Be(e("span", { class: "sidebar__logo-text" }, x(l(d).appName), 513), [
486
- [Et, !_.value]
486
+ }, null, 8, os),
487
+ De(e("span", { class: "sidebar__logo-text" }, x(l(d).appName), 513), [
488
+ [St, !_.value]
487
489
  ])
488
- ])) : P("", !0),
489
- y(l(et), {
490
- modelValue: k.value,
491
- "onUpdate:modelValue": E[0] || (E[0] = (z) => k.value = z),
492
- openeds: W.value,
493
- "onUpdate:openeds": E[1] || (E[1] = (z) => W.value = z),
490
+ ])) : z("", !0),
491
+ w(l(Ze), {
492
+ modelValue: g.value,
493
+ "onUpdate:modelValue": E[0] || (E[0] = (F) => g.value = F),
494
+ openeds: R.value,
495
+ "onUpdate:openeds": E[1] || (E[1] = (F) => R.value = F),
494
496
  mode: "vertical",
495
497
  collapse: _.value,
496
498
  "collapse-transition": !1,
497
499
  "background-color": Q.value,
498
- "text-color": ee.value,
499
- "active-text-color": X.value,
500
+ "text-color": G.value,
501
+ "active-text-color": ee.value,
500
502
  class: "sidebar__menu",
501
- onSelect: G
503
+ onSelect: Y
502
504
  }, {
503
505
  default: S(() => [
504
- (a(!0), c(H, null, J(f.value, (z) => (a(), D(os, {
505
- key: u(z),
506
- menu: z
506
+ (o(!0), c(j, null, J(f.value, (F) => (o(), A(ts, {
507
+ key: u(F),
508
+ menu: F
507
509
  }, null, 8, ["menu"]))), 128))
508
510
  ]),
509
511
  _: 1
510
512
  }, 8, ["modelValue", "openeds", "collapse", "background-color", "text-color", "active-text-color"]),
511
- n.showUser && !_.value ? (a(), c("div", ls, [
512
- e("div", rs, [
513
- e("span", is, x(l(i).userName), 1),
514
- e("span", cs, x(l(i).departmentName), 1)
513
+ n.showUser && !_.value ? (o(), c("div", as, [
514
+ e("div", ns, [
515
+ e("span", ls, x(l(i).userName), 1),
516
+ e("span", rs, x(l(i).departmentName), 1)
515
517
  ]),
516
- y(l(Ie), {
518
+ w(l(Ne), {
517
519
  type: "text",
518
520
  size: "small",
519
521
  onClick: te
@@ -523,65 +525,65 @@ const _e = Fe("menu", () => {
523
525
  ])]),
524
526
  _: 1
525
527
  })
526
- ])) : P("", !0)
528
+ ])) : z("", !0)
527
529
  ], 2));
528
530
  }
529
- }), rt = /* @__PURE__ */ ue(us, [["__scopeId", "data-v-3145ea3a"]]), ds = { class: "header" }, ms = { class: "header__left" }, ps = {
531
+ }), lt = /* @__PURE__ */ de(is, [["__scopeId", "data-v-3145ea3a"]]), cs = { class: "header" }, us = { class: "header__left" }, ds = {
530
532
  key: 0,
531
533
  class: "header__breadcrumb"
532
- }, vs = {
534
+ }, ms = {
533
535
  key: 0,
534
536
  class: "breadcrumb-separator"
535
- }, hs = { class: "header__right" }, _s = {
537
+ }, ps = { class: "header__right" }, vs = {
536
538
  key: 0,
537
539
  class: "header__search-dropdown"
538
- }, fs = {
540
+ }, hs = {
539
541
  key: 0,
540
542
  class: "header__search-results"
541
- }, gs = ["onClick"], ys = {
543
+ }, _s = ["onClick"], fs = {
542
544
  key: 0,
543
545
  class: "header__search-icon"
544
- }, bs = {
546
+ }, gs = {
545
547
  key: 1,
546
548
  class: "header__search-char"
547
- }, ws = { class: "header__search-item-title" }, ks = {
549
+ }, ys = { class: "header__search-item-title" }, bs = {
548
550
  key: 1,
549
551
  class: "header__search-item-parent"
550
- }, xs = {
552
+ }, ws = {
551
553
  key: 1,
552
554
  class: "header__search-empty"
553
- }, Cs = ["title"], $s = { class: "header__avatar" }, Ls = { class: "header__user-name" }, Ms = {
555
+ }, ks = ["title"], xs = { class: "header__avatar" }, Cs = { class: "header__user-name" }, $s = {
554
556
  key: 0,
555
557
  class: "header__dropdown"
556
- }, Ss = { class: "header__dropdown-header" }, Ns = { class: "header__dropdown-avatar" }, Es = { class: "header__dropdown-info" }, Is = { class: "header__dropdown-name" }, Us = { class: "header__dropdown-role" }, Ts = { class: "header__dropdown-menu" }, Ps = { class: "settings-drawer" }, zs = { class: "settings-section" }, Fs = { class: "settings-layout-options" }, Ds = ["onClick"], As = { class: "layout-option__preview" }, Bs = {
558
+ }, Ls = { class: "header__dropdown-header" }, Ms = { class: "header__dropdown-avatar" }, Ss = { class: "header__dropdown-info" }, Ns = { class: "header__dropdown-name" }, Es = { class: "header__dropdown-role" }, Is = { class: "header__dropdown-menu" }, Us = { class: "settings-drawer" }, Ts = { class: "settings-section" }, Ps = { class: "settings-layout-options" }, zs = ["onClick"], Fs = { class: "layout-option__preview" }, Ds = {
557
559
  key: 0,
558
560
  class: "layout-preview-sidebar"
559
- }, Vs = {
561
+ }, As = {
560
562
  key: 1,
561
563
  class: "layout-preview-top"
562
- }, Os = {
564
+ }, Bs = {
563
565
  key: 2,
564
566
  class: "layout-preview-mix"
565
- }, Rs = { class: "layout-option__label" }, Ks = { class: "settings-section" }, js = { class: "settings-color-options" }, Ws = ["title", "onClick"], qs = { class: "settings-section" }, Hs = { class: "settings-switch-list" }, Ys = { class: "settings-switch-item" }, Gs = { class: "settings-switch-item" }, Xs = { class: "settings-section" }, Js = /* @__PURE__ */ ie({
567
+ }, Vs = { class: "layout-option__label" }, Os = { class: "settings-section" }, Rs = { class: "settings-color-options" }, Ks = ["title", "onClick"], js = { class: "settings-section" }, Ws = { class: "settings-switch-list" }, qs = { class: "settings-switch-item" }, Hs = { class: "settings-switch-item" }, Ys = { class: "settings-section" }, Gs = /* @__PURE__ */ ce({
566
568
  __name: "Header",
567
569
  setup(t) {
568
- const n = Ue(), m = be(), o = he(), s = ce(), h = De(), i = _e(), v = g(!1), d = g(!1), f = g(null), _ = g(!1), k = g(!1), u = g(""), K = g(null), A = g(!1), j = [
570
+ const n = Ee(), m = be(), a = _e(), s = ue(), p = ze(), i = fe(), h = y(!1), d = y(!1), f = y(null), _ = y(!1), g = y(!1), u = y(""), W = y(null), P = y(!1), B = [
569
571
  { value: "sidebar", label: "左侧菜单", icon: "sidebar-left" },
570
572
  { value: "top", label: "顶部菜单", icon: "menu" },
571
573
  { value: "mix", label: "混合菜单", icon: "grid" }
572
- ], B = [
574
+ ], V = [
573
575
  { value: "#4F46E5", label: "品牌蓝" },
574
576
  { value: "#0F6FDE", label: "企业蓝" },
575
577
  { value: "#00A870", label: "翡翠绿" },
576
578
  { value: "#D46B08", label: "琥珀橙" },
577
579
  { value: "#1F2329", label: "石墨黑" }
578
- ], W = w(() => n.matched.filter((b) => b.meta && b.meta.title).map((b) => ({
580
+ ], R = k(() => n.matched.filter((b) => b.meta && b.meta.title).map((b) => ({
579
581
  title: b.meta.title,
580
582
  path: b.path
581
- }))), V = (U, b = "") => {
583
+ }))), H = (I, b = "") => {
582
584
  const se = [];
583
- return U.forEach(($) => {
584
- $.children && $.children.length > 0 ? se.push(...V($.children, $.menuName)) : se.push({ ...$, parentTitle: b, title: $.menuName, path: $.menuUrl });
585
+ return I.forEach(($) => {
586
+ $.children && $.children.length > 0 ? se.push(...H($.children, $.menuName)) : se.push({ ...$, parentTitle: b, title: $.menuName, path: $.menuUrl });
585
587
  }), se;
586
588
  }, Q = /* @__PURE__ */ new Set([
587
589
  "arrow-up",
@@ -685,10 +687,10 @@ const _e = Fe("menu", () => {
685
687
  "sun",
686
688
  "theme",
687
689
  "skin"
688
- ]), ee = (U) => {
689
- if (!U || U === "") return "";
690
- if (U.startsWith("tineco-icon-")) {
691
- const se = U.replace("tineco-icon-", "");
690
+ ]), G = (I) => {
691
+ if (!I || I === "") return "";
692
+ if (I.startsWith("tineco-icon-")) {
693
+ const se = I.replace("tineco-icon-", "");
692
694
  return {
693
695
  home: "home",
694
696
  dashboard: "dashboard",
@@ -721,153 +723,153 @@ const _e = Fe("menu", () => {
721
723
  app: "app",
722
724
  list: "list",
723
725
  grid: "grid"
724
- }[U] || U;
725
- }, X = (U) => U ? U.charAt(0) : "", G = (U) => Q.has(U), te = w(() => u.value.trim() ? V(i.menuList).filter(
726
+ }[I] || I;
727
+ }, ee = (I) => I ? I.charAt(0) : "", Y = (I) => Q.has(I), te = k(() => u.value.trim() ? H(i.menuList).filter(
726
728
  (b) => b.title.toLowerCase().includes(u.value.toLowerCase())
727
- ) : []), F = w(() => o.layout), E = () => {
728
- o.toggleCollapse();
729
- }, z = () => {
730
- o.toggleTheme();
731
- }, Y = () => {
729
+ ) : []), D = k(() => a.layout), E = () => {
730
+ a.toggleCollapse();
731
+ }, F = () => {
732
+ a.toggleTheme();
733
+ }, X = () => {
732
734
  d.value = !0;
733
- }, q = (U) => {
734
- o.setLayout(U), d.value = !1;
735
- }, ne = (U) => {
736
- A.value = U;
735
+ }, K = (I) => {
736
+ a.setLayout(I), d.value = !1;
737
+ }, oe = (I) => {
738
+ P.value = I;
737
739
  const b = document.documentElement;
738
- U ? b.classList.add("grey-mode") : b.classList.remove("grey-mode");
739
- }, ve = () => {
740
- ne(!A.value), d.value = !1;
740
+ I ? b.classList.add("grey-mode") : b.classList.remove("grey-mode");
741
+ }, he = () => {
742
+ oe(!P.value), d.value = !1;
741
743
  }, we = () => {
742
- o.toggleTheme(), d.value = !1;
743
- }, le = () => {
744
- o.resetToServerDefaults(), d.value = !1;
745
- }, de = () => {
744
+ a.toggleTheme(), d.value = !1;
745
+ }, re = () => {
746
+ a.resetToServerDefaults(), d.value = !1;
747
+ }, me = () => {
746
748
  document.fullscreenElement ? document.exitFullscreen() : document.documentElement.requestFullscreen();
747
- }, fe = () => {
749
+ }, ge = () => {
748
750
  _.value = !!document.fullscreenElement;
751
+ }, ie = () => {
752
+ h.value = !h.value;
753
+ }, ae = () => {
754
+ h.value = !1;
749
755
  }, M = () => {
750
- v.value = !v.value;
751
- }, O = () => {
752
- v.value = !1;
753
- }, me = () => {
754
- k.value = !1, u.value = "";
755
- }, pe = (U) => {
756
- m.push(U), me();
757
- }, oe = (U) => {
758
- o.setPrimaryColor(U), d.value = !1;
756
+ g.value = !1, u.value = "";
757
+ }, q = (I) => {
758
+ m.push(I), M();
759
+ }, pe = (I) => {
760
+ a.setPrimaryColor(I), d.value = !1;
761
+ }, ve = () => {
762
+ ae(), m.push("/profile");
763
+ }, ne = () => {
764
+ ae(), m.push("/change-password");
759
765
  }, ke = () => {
760
- O(), m.push("/profile");
761
- }, xe = () => {
762
- O(), m.push("/change-password");
763
- }, $e = () => {
764
- O(), h.logout(), s.clearUserInfo(), i.clearMenu(), m.push(o.loginPath);
765
- }, re = (U) => {
766
- f.value && !f.value.contains(U.target) && O(), K.value && !K.value.contains(U.target) && me();
767
- }, ge = (U) => {
768
- U.key === "Escape" && (me(), O());
766
+ ae(), p.logout(), s.clearUserInfo(), i.clearMenu(), m.push(a.loginPath);
767
+ }, ye = (I) => {
768
+ f.value && !f.value.contains(I.target) && ae(), W.value && !W.value.contains(I.target) && M();
769
+ }, xe = (I) => {
770
+ I.key === "Escape" && (M(), ae());
769
771
  };
770
- return Ye(() => {
771
- document.addEventListener("click", re), document.addEventListener("fullscreenchange", fe), document.addEventListener("keydown", ge), o.initTheme(), A.value = document.documentElement.classList.contains("grey-mode");
772
- }), Ge(() => {
773
- document.removeEventListener("click", re), document.removeEventListener("fullscreenchange", fe), document.removeEventListener("keydown", ge);
774
- }), (U, b) => {
772
+ return qe(() => {
773
+ document.addEventListener("click", ye), document.addEventListener("fullscreenchange", ge), document.addEventListener("keydown", xe), a.initTheme(), P.value = document.documentElement.classList.contains("grey-mode");
774
+ }), He(() => {
775
+ document.removeEventListener("click", ye), document.removeEventListener("fullscreenchange", ge), document.removeEventListener("keydown", xe);
776
+ }), (I, b) => {
775
777
  var se;
776
- return a(), c("div", ds, [
777
- e("div", ms, [
778
+ return o(), c("div", cs, [
779
+ e("div", us, [
778
780
  e("div", {
779
781
  class: "header__collapse",
780
782
  onClick: E
781
783
  }, [
782
- y(l(I), {
783
- name: l(o).isCollapsed ? "menu-unfold" : "menu-fold",
784
+ w(l(U), {
785
+ name: l(a).isCollapsed ? "menu-unfold" : "menu-fold",
784
786
  size: 18
785
787
  }, null, 8, ["name"])
786
788
  ]),
787
- l(o).showBreadcrumb ? (a(), c("div", ps, [
788
- (a(!0), c(H, null, J(W.value, ($, N) => (a(), c("span", {
789
+ l(a).showBreadcrumb ? (o(), c("div", ds, [
790
+ (o(!0), c(j, null, J(R.value, ($, N) => (o(), c("span", {
789
791
  key: $.path
790
792
  }, [
791
- N > 0 ? (a(), c("span", vs, "/")) : P("", !0),
793
+ N > 0 ? (o(), c("span", ms, "/")) : z("", !0),
792
794
  e("span", {
793
- class: Z({ "is-current": N === W.value.length - 1 })
795
+ class: Z({ "is-current": N === R.value.length - 1 })
794
796
  }, x($.title), 3)
795
797
  ]))), 128))
796
- ])) : P("", !0)
798
+ ])) : z("", !0)
797
799
  ]),
798
- e("div", hs, [
800
+ e("div", ps, [
799
801
  e("div", {
800
802
  class: "header__search",
801
803
  ref_key: "searchRef",
802
- ref: K
804
+ ref: W
803
805
  }, [
804
- y(l(I), {
806
+ w(l(U), {
805
807
  name: "search",
806
808
  size: 14,
807
809
  class: "header__search-icon"
808
810
  }),
809
- Be(e("input", {
811
+ De(e("input", {
810
812
  "onUpdate:modelValue": b[0] || (b[0] = ($) => u.value = $),
811
813
  type: "text",
812
814
  class: "header__search-input",
813
815
  placeholder: "搜索菜单...",
814
- onFocus: b[1] || (b[1] = ($) => k.value = !0)
816
+ onFocus: b[1] || (b[1] = ($) => g.value = !0)
815
817
  }, null, 544), [
816
- [Xe, u.value]
818
+ [Ye, u.value]
817
819
  ]),
818
- y(Ee, { name: "search-dropdown" }, {
820
+ w(Se, { name: "search-dropdown" }, {
819
821
  default: S(() => [
820
- k.value && (te.value.length > 0 || u.value) ? (a(), c("div", _s, [
821
- te.value.length > 0 ? (a(), c("div", fs, [
822
- (a(!0), c(H, null, J(te.value, ($) => (a(), c("div", {
822
+ g.value && (te.value.length > 0 || u.value) ? (o(), c("div", vs, [
823
+ te.value.length > 0 ? (o(), c("div", hs, [
824
+ (o(!0), c(j, null, J(te.value, ($) => (o(), c("div", {
823
825
  key: $.path,
824
826
  class: "header__search-item",
825
- onClick: (N) => pe($.path)
827
+ onClick: (N) => q($.path)
826
828
  }, [
827
- $.title !== "首页" ? (a(), c("span", ys, [
828
- G(ee($.icon)) ? (a(), D(l(I), {
829
+ $.title !== "首页" ? (o(), c("span", fs, [
830
+ Y(G($.icon)) ? (o(), A(l(U), {
829
831
  key: 0,
830
- name: ee($.icon),
832
+ name: G($.icon),
831
833
  size: 16
832
- }, null, 8, ["name"])) : (a(), c("span", bs, x(X($.title)), 1))
833
- ])) : P("", !0),
834
- e("span", ws, x($.title), 1),
835
- $.parentTitle ? (a(), c("span", ks, x($.parentTitle), 1)) : P("", !0)
836
- ], 8, gs))), 128))
837
- ])) : (a(), c("div", xs, " 未找到匹配的菜单 "))
838
- ])) : P("", !0)
834
+ }, null, 8, ["name"])) : (o(), c("span", gs, x(ee($.title)), 1))
835
+ ])) : z("", !0),
836
+ e("span", ys, x($.title), 1),
837
+ $.parentTitle ? (o(), c("span", bs, x($.parentTitle), 1)) : z("", !0)
838
+ ], 8, _s))), 128))
839
+ ])) : (o(), c("div", ws, " 未找到匹配的菜单 "))
840
+ ])) : z("", !0)
839
841
  ]),
840
842
  _: 1
841
843
  })
842
844
  ], 512),
843
845
  e("div", {
844
846
  class: "header__action",
845
- onClick: de,
847
+ onClick: me,
846
848
  title: _.value ? "退出全屏" : "全屏"
847
849
  }, [
848
- y(l(I), {
850
+ w(l(U), {
849
851
  name: _.value ? "fullscreen-exit" : "fullscreen",
850
852
  size: 16
851
853
  }, null, 8, ["name"])
852
- ], 8, Cs),
853
- l(o).allowUserOverride ? (a(), c("div", {
854
+ ], 8, ks),
855
+ l(a).allowUserOverride ? (o(), c("div", {
854
856
  key: 0,
855
857
  class: "header__action",
856
- onClick: Y,
858
+ onClick: X,
857
859
  title: "换肤设置"
858
860
  }, [
859
- y(l(I), {
861
+ w(l(U), {
860
862
  name: "skin",
861
863
  size: 16
862
864
  })
863
- ])) : P("", !0),
865
+ ])) : z("", !0),
864
866
  e("div", {
865
867
  class: "header__action",
866
- onClick: z,
868
+ onClick: F,
867
869
  title: "切换主题"
868
870
  }, [
869
- y(l(I), {
870
- name: l(o).isDark ? "sun" : "moon",
871
+ w(l(U), {
872
+ name: l(a).isDark ? "sun" : "moon",
871
873
  size: 16
872
874
  }, null, 8, ["name"])
873
875
  ]),
@@ -878,14 +880,14 @@ const _e = Fe("menu", () => {
878
880
  }, [
879
881
  e("div", {
880
882
  class: "header__user-trigger",
881
- onClick: Ve(M, ["stop"])
883
+ onClick: Ae(ie, ["stop"])
882
884
  }, [
883
- e("div", $s, [
885
+ e("div", xs, [
884
886
  e("span", null, x(((se = l(s).userName) == null ? void 0 : se.charAt(0)) || "U"), 1)
885
887
  ]),
886
- e("span", Ls, x(l(s).userName), 1),
888
+ e("span", Cs, x(l(s).userName), 1),
887
889
  e("span", {
888
- class: Z(["header__user-arrow", { "is-active": v.value }])
890
+ class: Z(["header__user-arrow", { "is-active": h.value }])
889
891
  }, [...b[3] || (b[3] = [
890
892
  e("svg", {
891
893
  viewBox: "0 0 12 12",
@@ -901,27 +903,27 @@ const _e = Fe("menu", () => {
901
903
  ], -1)
902
904
  ])], 2)
903
905
  ]),
904
- y(Ee, { name: "dropdown" }, {
906
+ w(Se, { name: "dropdown" }, {
905
907
  default: S(() => {
906
908
  var $;
907
909
  return [
908
- v.value ? (a(), c("div", Ms, [
909
- e("div", Ss, [
910
- e("div", Ns, [
910
+ h.value ? (o(), c("div", $s, [
911
+ e("div", Ls, [
912
+ e("div", Ms, [
911
913
  e("span", null, x((($ = l(s).userName) == null ? void 0 : $.charAt(0)) || "U"), 1)
912
914
  ]),
913
- e("div", Es, [
914
- e("div", Is, x(l(s).userName), 1),
915
- e("div", Us, x(l(s).roleName || l(s).departmentName), 1)
915
+ e("div", Ss, [
916
+ e("div", Ns, x(l(s).userName), 1),
917
+ e("div", Es, x(l(s).roleName || l(s).departmentName), 1)
916
918
  ])
917
919
  ]),
918
920
  b[8] || (b[8] = e("div", { class: "header__dropdown-divider" }, null, -1)),
919
- e("div", Ts, [
921
+ e("div", Is, [
920
922
  e("div", {
921
923
  class: "header__dropdown-item",
922
- onClick: ke
924
+ onClick: ve
923
925
  }, [
924
- y(l(I), {
926
+ w(l(U), {
925
927
  name: "user",
926
928
  size: 16
927
929
  }),
@@ -929,9 +931,9 @@ const _e = Fe("menu", () => {
929
931
  ]),
930
932
  e("div", {
931
933
  class: "header__dropdown-item",
932
- onClick: xe
934
+ onClick: ne
933
935
  }, [
934
- y(l(I), {
936
+ w(l(U), {
935
937
  name: "lock",
936
938
  size: 16
937
939
  }),
@@ -940,23 +942,23 @@ const _e = Fe("menu", () => {
940
942
  b[7] || (b[7] = e("div", { class: "header__dropdown-divider" }, null, -1)),
941
943
  e("div", {
942
944
  class: "header__dropdown-item header__dropdown-item--danger",
943
- onClick: $e
945
+ onClick: ke
944
946
  }, [
945
- y(l(I), {
947
+ w(l(U), {
946
948
  name: "logout",
947
949
  size: 16
948
950
  }),
949
951
  b[6] || (b[6] = e("span", null, "退出登录", -1))
950
952
  ])
951
953
  ])
952
- ])) : P("", !0)
954
+ ])) : z("", !0)
953
955
  ];
954
956
  }),
955
957
  _: 1
956
958
  })
957
959
  ], 512)
958
960
  ]),
959
- y(l(tt), {
961
+ w(l(Qe), {
960
962
  modelValue: d.value,
961
963
  "onUpdate:modelValue": b[2] || (b[2] = ($) => d.value = $),
962
964
  title: "换肤设置",
@@ -964,26 +966,26 @@ const _e = Fe("menu", () => {
964
966
  size: "320px"
965
967
  }, {
966
968
  default: S(() => [
967
- e("div", Ps, [
968
- e("div", zs, [
969
+ e("div", Us, [
970
+ e("div", Ts, [
969
971
  b[12] || (b[12] = e("div", { class: "settings-title" }, "布局模式", -1)),
970
- e("div", Fs, [
971
- (a(), c(H, null, J(j, ($) => e("div", {
972
+ e("div", Ps, [
973
+ (o(), c(j, null, J(B, ($) => e("div", {
972
974
  key: $.value,
973
- class: Z(["layout-option", { "is-active": F.value === $.value }]),
974
- onClick: (N) => q($.value)
975
+ class: Z(["layout-option", { "is-active": D.value === $.value }]),
976
+ onClick: (N) => K($.value)
975
977
  }, [
976
- e("div", As, [
977
- $.value === "sidebar" ? (a(), c("div", Bs, [...b[9] || (b[9] = [
978
+ e("div", Fs, [
979
+ $.value === "sidebar" ? (o(), c("div", Ds, [...b[9] || (b[9] = [
978
980
  e("div", { class: "preview-aside" }, null, -1),
979
981
  e("div", { class: "preview-main" }, [
980
982
  e("div", { class: "preview-header" }),
981
983
  e("div", { class: "preview-content" })
982
984
  ], -1)
983
- ])])) : $.value === "top" ? (a(), c("div", Vs, [...b[10] || (b[10] = [
985
+ ])])) : $.value === "top" ? (o(), c("div", As, [...b[10] || (b[10] = [
984
986
  e("div", { class: "preview-header-full" }, null, -1),
985
987
  e("div", { class: "preview-content-full" }, null, -1)
986
- ])])) : (a(), c("div", Os, [...b[11] || (b[11] = [
988
+ ])])) : (o(), c("div", Bs, [...b[11] || (b[11] = [
987
989
  e("div", { class: "preview-header-mix" }, [
988
990
  e("div", { class: "preview-mix-left" })
989
991
  ], -1),
@@ -993,45 +995,45 @@ const _e = Fe("menu", () => {
993
995
  ], -1)
994
996
  ])]))
995
997
  ]),
996
- e("span", Rs, x($.label), 1)
997
- ], 10, Ds)), 64))
998
+ e("span", Vs, x($.label), 1)
999
+ ], 10, zs)), 64))
998
1000
  ])
999
1001
  ]),
1000
- e("div", Ks, [
1002
+ e("div", Os, [
1001
1003
  b[13] || (b[13] = e("div", { class: "settings-title" }, "主题色", -1)),
1002
- e("div", js, [
1003
- (a(), c(H, null, J(B, ($) => e("div", {
1004
+ e("div", Rs, [
1005
+ (o(), c(j, null, J(V, ($) => e("div", {
1004
1006
  key: $.value,
1005
- class: Z(["color-option", { "is-active": l(o).primaryColor === $.value }]),
1006
- style: Pe({ backgroundColor: $.value }),
1007
+ class: Z(["color-option", { "is-active": l(a).primaryColor === $.value }]),
1008
+ style: Ue({ backgroundColor: $.value }),
1007
1009
  title: $.label,
1008
- onClick: (N) => oe($.value)
1010
+ onClick: (N) => pe($.value)
1009
1011
  }, [
1010
- l(o).primaryColor === $.value ? (a(), D(l(I), {
1012
+ l(a).primaryColor === $.value ? (o(), A(l(U), {
1011
1013
  key: 0,
1012
1014
  name: "check",
1013
1015
  size: 12,
1014
1016
  color: "#fff"
1015
- })) : P("", !0)
1016
- ], 14, Ws)), 64))
1017
+ })) : z("", !0)
1018
+ ], 14, Ks)), 64))
1017
1019
  ])
1018
1020
  ]),
1019
- e("div", qs, [
1021
+ e("div", js, [
1020
1022
  b[18] || (b[18] = e("div", { class: "settings-title" }, "功能设置", -1)),
1021
- e("div", Hs, [
1022
- e("div", Ys, [
1023
+ e("div", Ws, [
1024
+ e("div", qs, [
1023
1025
  b[15] || (b[15] = e("span", null, "灰色模式", -1)),
1024
1026
  e("div", {
1025
- class: Z(["switch-wrapper", { "is-checked": A.value }]),
1026
- onClick: ve
1027
+ class: Z(["switch-wrapper", { "is-checked": P.value }]),
1028
+ onClick: he
1027
1029
  }, [...b[14] || (b[14] = [
1028
1030
  e("span", { class: "switch-core" }, null, -1)
1029
1031
  ])], 2)
1030
1032
  ]),
1031
- e("div", Gs, [
1033
+ e("div", Hs, [
1032
1034
  b[17] || (b[17] = e("span", null, "暗黑模式", -1)),
1033
1035
  e("div", {
1034
- class: Z(["switch-wrapper", { "is-checked": l(o).isDark }]),
1036
+ class: Z(["switch-wrapper", { "is-checked": l(a).isDark }]),
1035
1037
  onClick: we
1036
1038
  }, [...b[16] || (b[16] = [
1037
1039
  e("span", { class: "switch-core" }, null, -1)
@@ -1039,12 +1041,12 @@ const _e = Fe("menu", () => {
1039
1041
  ])
1040
1042
  ])
1041
1043
  ]),
1042
- e("div", Xs, [
1044
+ e("div", Ys, [
1043
1045
  e("div", {
1044
1046
  class: "settings-reset",
1045
- onClick: le
1047
+ onClick: re
1046
1048
  }, [
1047
- y(l(I), {
1049
+ w(l(U), {
1048
1050
  name: "refresh",
1049
1051
  size: 14
1050
1052
  }),
@@ -1058,73 +1060,73 @@ const _e = Fe("menu", () => {
1058
1060
  ]);
1059
1061
  };
1060
1062
  }
1061
- }), Zs = /* @__PURE__ */ ue(Js, [["__scopeId", "data-v-21769fe5"]]), Qs = { class: "top-menu" }, eo = { class: "top-menu__logo" }, to = ["src"], so = { class: "top-menu__logo-text" }, oo = { class: "top-menu__menu-content" }, ao = {
1063
+ }), Xs = /* @__PURE__ */ de(Gs, [["__scopeId", "data-v-21769fe5"]]), Js = { class: "top-menu" }, Zs = { class: "top-menu__logo" }, Qs = ["src"], eo = { class: "top-menu__logo-text" }, to = { class: "top-menu__menu-content" }, so = {
1062
1064
  key: 0,
1063
1065
  class: "top-menu__menu-icon"
1064
- }, no = {
1066
+ }, oo = {
1065
1067
  key: 1,
1066
1068
  class: "top-menu__menu-char"
1067
- }, lo = { class: "top-menu__menu-text" }, ro = { class: "top-menu__menu-content" }, io = { class: "top-menu__menu-icon" }, co = {
1069
+ }, ao = { class: "top-menu__menu-text" }, no = { class: "top-menu__menu-content" }, lo = { class: "top-menu__menu-icon" }, ro = {
1068
1070
  key: 1,
1069
1071
  class: "top-menu__menu-char"
1070
- }, uo = { class: "top-menu__menu-text" }, mo = { class: "top-menu__menu-content" }, po = { class: "top-menu__menu-icon" }, vo = {
1072
+ }, io = { class: "top-menu__menu-text" }, co = { class: "top-menu__menu-content" }, uo = { class: "top-menu__menu-icon" }, mo = {
1071
1073
  key: 1,
1072
1074
  class: "top-menu__menu-char"
1073
- }, ho = { class: "top-menu__menu-text" }, _o = { class: "top-menu__menu-content" }, fo = { class: "top-menu__menu-icon" }, go = {
1075
+ }, po = { class: "top-menu__menu-text" }, vo = { class: "top-menu__menu-content" }, ho = { class: "top-menu__menu-icon" }, _o = {
1074
1076
  key: 1,
1075
1077
  class: "top-menu__menu-char"
1076
- }, yo = { class: "top-menu__menu-text" }, bo = { class: "top-menu__menu-content" }, wo = {
1078
+ }, fo = { class: "top-menu__menu-text" }, go = { class: "top-menu__menu-content" }, yo = {
1077
1079
  key: 0,
1078
1080
  class: "top-menu__menu-icon"
1079
- }, ko = {
1081
+ }, bo = {
1080
1082
  key: 1,
1081
1083
  class: "top-menu__menu-char"
1082
- }, xo = { class: "top-menu__menu-text" }, Co = { class: "top-menu__actions" }, $o = {
1084
+ }, wo = { class: "top-menu__menu-text" }, ko = { class: "top-menu__actions" }, xo = {
1083
1085
  key: 0,
1084
1086
  class: "top-menu__search-dropdown"
1085
- }, Lo = {
1087
+ }, Co = {
1086
1088
  key: 0,
1087
1089
  class: "top-menu__search-results"
1088
- }, Mo = ["onClick"], So = {
1090
+ }, $o = ["onClick"], Lo = {
1089
1091
  key: 0,
1090
1092
  class: "top-menu__search-icon-item"
1091
- }, No = {
1093
+ }, Mo = {
1092
1094
  key: 1,
1093
1095
  class: "top-menu__search-char"
1094
- }, Eo = { class: "top-menu__search-item-title" }, Io = {
1096
+ }, So = { class: "top-menu__search-item-title" }, No = {
1095
1097
  key: 1,
1096
1098
  class: "top-menu__search-item-parent"
1097
- }, Uo = {
1099
+ }, Eo = {
1098
1100
  key: 1,
1099
1101
  class: "top-menu__search-empty"
1100
- }, To = ["title"], Po = { class: "top-menu__avatar" }, zo = { class: "top-menu__user-name" }, Fo = {
1102
+ }, Io = ["title"], Uo = { class: "top-menu__avatar" }, To = { class: "top-menu__user-name" }, Po = {
1101
1103
  key: 0,
1102
1104
  class: "top-menu__dropdown"
1103
- }, Do = { class: "top-menu__dropdown-header" }, Ao = { class: "top-menu__dropdown-avatar" }, Bo = { class: "top-menu__dropdown-info" }, Vo = { class: "top-menu__dropdown-name" }, Oo = { class: "top-menu__dropdown-role" }, Ro = { class: "top-menu__dropdown-menu" }, Ko = { class: "settings-drawer" }, jo = { class: "settings-section" }, Wo = { class: "settings-layout-options" }, qo = ["onClick"], Ho = { class: "layout-option__preview" }, Yo = {
1105
+ }, zo = { class: "top-menu__dropdown-header" }, Fo = { class: "top-menu__dropdown-avatar" }, Do = { class: "top-menu__dropdown-info" }, Ao = { class: "top-menu__dropdown-name" }, Bo = { class: "top-menu__dropdown-role" }, Vo = { class: "top-menu__dropdown-menu" }, Oo = { class: "settings-drawer" }, Ro = { class: "settings-section" }, Ko = { class: "settings-layout-options" }, jo = ["onClick"], Wo = { class: "layout-option__preview" }, qo = {
1104
1106
  key: 0,
1105
1107
  class: "layout-preview-sidebar"
1106
- }, Go = {
1108
+ }, Ho = {
1107
1109
  key: 1,
1108
1110
  class: "layout-preview-top"
1109
- }, Xo = {
1111
+ }, Yo = {
1110
1112
  key: 2,
1111
1113
  class: "layout-preview-mix"
1112
- }, Jo = { class: "layout-option__label" }, Zo = { class: "settings-section" }, Qo = { class: "settings-color-options" }, ea = ["title", "onClick"], ta = { class: "settings-section" }, sa = { class: "settings-switch-list" }, oa = { class: "settings-switch-item" }, aa = { class: "settings-switch-item" }, na = /* @__PURE__ */ ie({
1114
+ }, Go = { class: "layout-option__label" }, Xo = { class: "settings-section" }, Jo = { class: "settings-color-options" }, Zo = ["title", "onClick"], Qo = { class: "settings-section" }, ea = { class: "settings-switch-list" }, ta = { class: "settings-switch-item" }, sa = { class: "settings-switch-item" }, oa = /* @__PURE__ */ ce({
1113
1115
  __name: "TopMenu",
1114
1116
  props: {
1115
1117
  logoSrc: {}
1116
1118
  },
1117
1119
  setup(t) {
1118
- const n = t, m = w(() => n.logoSrc || ze("/vite.svg")), o = Ue(), s = be(), h = _e(), i = he(), v = ce(), d = De(), f = w(() => o.path), _ = (N, C = "") => {
1119
- const ae = [];
1120
+ const n = t, m = k(() => n.logoSrc || Te("/vite.svg")), a = Ee(), s = be(), p = fe(), i = _e(), h = ue(), d = ze(), f = k(() => a.path), _ = (N, C = "") => {
1121
+ const le = [];
1120
1122
  return N.forEach((r) => {
1121
- r.children && r.children.length > 0 ? ae.push(..._(r.children, r.menuName)) : ae.push({ ...r, parentTitle: C, title: r.menuName, path: r.menuUrl });
1122
- }), ae;
1123
- }, k = w(() => X.value.trim() ? _(h.menuList).filter(
1124
- (C) => C.title.toLowerCase().includes(X.value.toLowerCase())
1125
- ) : []), u = w(() => i.isDark ? "#1d1e1f" : "#fff"), K = w(() => i.isDark ? "#cfd3dc" : "#303133"), A = w(() => "#409eff"), j = g(!1), B = g(null), W = g(!1), V = g(!1), Q = g(!1), ee = g(!1), X = g(""), G = g(null), te = (N) => {
1126
- N && N !== o.path && s.push(N);
1127
- }, F = /* @__PURE__ */ new Set([
1123
+ r.children && r.children.length > 0 ? le.push(..._(r.children, r.menuName)) : le.push({ ...r, parentTitle: C, title: r.menuName, path: r.menuUrl });
1124
+ }), le;
1125
+ }, g = k(() => ee.value.trim() ? _(p.menuList).filter(
1126
+ (C) => C.title.toLowerCase().includes(ee.value.toLowerCase())
1127
+ ) : []), u = k(() => i.isDark ? "#1d1e1f" : "#fff"), W = k(() => i.isDark ? "#cfd3dc" : "#303133"), P = k(() => "#409eff"), B = y(!1), V = y(null), R = y(!1), H = y(!1), Q = y(!1), G = y(!1), ee = y(""), Y = y(null), te = (N) => {
1128
+ N && N !== a.path && s.push(N);
1129
+ }, D = /* @__PURE__ */ new Set([
1128
1130
  "arrow-up",
1129
1131
  "arrow-down",
1130
1132
  "arrow-left",
@@ -1229,7 +1231,7 @@ const _e = Fe("menu", () => {
1229
1231
  ]), E = (N) => {
1230
1232
  if (!N || N === "") return "";
1231
1233
  if (N.startsWith("tineco-icon-")) {
1232
- const ae = N.replace("tineco-icon-", "");
1234
+ const le = N.replace("tineco-icon-", "");
1233
1235
  return {
1234
1236
  home: "home",
1235
1237
  dashboard: "dashboard",
@@ -1243,7 +1245,7 @@ const _e = Fe("menu", () => {
1243
1245
  chart: "chart",
1244
1246
  report: "report",
1245
1247
  analytics: "analytics"
1246
- }[ae] || ae;
1248
+ }[le] || le;
1247
1249
  }
1248
1250
  return {
1249
1251
  dashboard: "dashboard",
@@ -1263,154 +1265,154 @@ const _e = Fe("menu", () => {
1263
1265
  list: "list",
1264
1266
  grid: "grid"
1265
1267
  }[N] || N;
1266
- }, z = (N) => N ? N.charAt(0) : "", Y = (N) => F.has(N), q = () => {
1267
- i.toggleTheme(), V.value = !1;
1268
- }, ne = () => {
1268
+ }, F = (N) => N ? N.charAt(0) : "", X = (N) => D.has(N), K = () => {
1269
+ i.toggleTheme(), H.value = !1;
1270
+ }, oe = () => {
1269
1271
  document.fullscreenElement ? document.exitFullscreen() : document.documentElement.requestFullscreen();
1270
- }, ve = () => {
1271
- W.value = !!document.fullscreenElement;
1272
+ }, he = () => {
1273
+ R.value = !!document.fullscreenElement;
1272
1274
  }, we = () => {
1273
- j.value = !j.value;
1274
- }, le = () => {
1275
- j.value = !1;
1276
- }, de = () => {
1277
- ee.value = !1, X.value = "";
1278
- }, fe = (N) => {
1279
- s.push(N), de();
1280
- }, M = () => {
1281
- V.value = !0;
1282
- }, O = (N) => {
1275
+ B.value = !B.value;
1276
+ }, re = () => {
1277
+ B.value = !1;
1278
+ }, me = () => {
1279
+ G.value = !1, ee.value = "";
1280
+ }, ge = (N) => {
1281
+ s.push(N), me();
1282
+ }, ie = () => {
1283
+ H.value = !0;
1284
+ }, ae = (N) => {
1283
1285
  Q.value = N;
1284
1286
  const C = document.documentElement;
1285
1287
  N ? C.classList.add("grey-mode") : C.classList.remove("grey-mode");
1286
- }, me = () => {
1287
- O(!Q.value), V.value = !1;
1288
- }, pe = () => {
1289
- i.toggleTheme(), V.value = !1;
1290
- }, oe = [
1288
+ }, M = () => {
1289
+ ae(!Q.value), H.value = !1;
1290
+ }, q = () => {
1291
+ i.toggleTheme(), H.value = !1;
1292
+ }, pe = [
1291
1293
  { value: "sidebar", label: "左侧菜单", icon: "sidebar-left" },
1292
1294
  { value: "top", label: "顶部菜单", icon: "menu" },
1293
1295
  { value: "mix", label: "混合菜单", icon: "grid" }
1294
- ], ke = w(() => i.layout), xe = (N) => {
1295
- i.setLayout(N), V.value = !1;
1296
- }, $e = [
1296
+ ], ve = k(() => i.layout), ne = (N) => {
1297
+ i.setLayout(N), H.value = !1;
1298
+ }, ke = [
1297
1299
  { value: "#409eff", label: "默认蓝" },
1298
1300
  { value: "#0F6FDE", label: "企业蓝" },
1299
1301
  { value: "#00A870", label: "翡翠绿" },
1300
1302
  { value: "#D46B08", label: "琥珀橙" },
1301
1303
  { value: "#1F2329", label: "石墨黑" }
1302
- ], re = (N) => {
1303
- i.setPrimaryColor(N), V.value = !1;
1304
- }, ge = () => {
1305
- le(), s.push("/profile");
1306
- }, U = () => {
1307
- le(), s.push("/change-password");
1304
+ ], ye = (N) => {
1305
+ i.setPrimaryColor(N), H.value = !1;
1306
+ }, xe = () => {
1307
+ re(), s.push("/profile");
1308
+ }, I = () => {
1309
+ re(), s.push("/change-password");
1308
1310
  }, b = () => {
1309
- le(), d.logout(), v.clearUserInfo(), h.clearMenu(), s.push(i.loginPath);
1311
+ re(), d.logout(), h.clearUserInfo(), p.clearMenu(), s.push(i.loginPath);
1310
1312
  }, se = (N) => {
1311
- B.value && !B.value.contains(N.target) && le(), G.value && !G.value.contains(N.target) && de();
1313
+ V.value && !V.value.contains(N.target) && re(), Y.value && !Y.value.contains(N.target) && me();
1312
1314
  }, $ = (N) => {
1313
- N.key === "Escape" && (de(), le());
1315
+ N.key === "Escape" && (me(), re());
1314
1316
  };
1315
- return Ye(() => {
1316
- document.addEventListener("click", se), document.addEventListener("fullscreenchange", ve), document.addEventListener("keydown", $), Q.value = document.documentElement.classList.contains("grey-mode");
1317
- }), Ge(() => {
1318
- document.removeEventListener("click", se), document.removeEventListener("fullscreenchange", ve), document.removeEventListener("keydown", $);
1317
+ return qe(() => {
1318
+ document.addEventListener("click", se), document.addEventListener("fullscreenchange", he), document.addEventListener("keydown", $), Q.value = document.documentElement.classList.contains("grey-mode");
1319
+ }), He(() => {
1320
+ document.removeEventListener("click", se), document.removeEventListener("fullscreenchange", he), document.removeEventListener("keydown", $);
1319
1321
  }), (N, C) => {
1320
- var ae;
1321
- return a(), c("div", Qs, [
1322
- e("div", eo, [
1322
+ var le;
1323
+ return o(), c("div", Js, [
1324
+ e("div", Zs, [
1323
1325
  e("img", {
1324
1326
  src: m.value,
1325
1327
  alt: "Logo",
1326
1328
  class: "top-menu__logo-img"
1327
- }, null, 8, to),
1328
- e("span", so, x(l(i).appName), 1)
1329
+ }, null, 8, Qs),
1330
+ e("span", eo, x(l(i).appName), 1)
1329
1331
  ]),
1330
- y(l(et), {
1332
+ w(l(Ze), {
1331
1333
  "model-value": f.value,
1332
1334
  mode: "horizontal",
1333
1335
  "background-color": u.value,
1334
- "text-color": K.value,
1335
- "active-text-color": A.value,
1336
+ "text-color": W.value,
1337
+ "active-text-color": P.value,
1336
1338
  class: "top-menu__menu",
1337
1339
  onSelect: te
1338
1340
  }, {
1339
1341
  default: S(() => [
1340
- (a(!0), c(H, null, J(l(h).menuList, (r) => (a(), c(H, {
1342
+ (o(!0), c(j, null, J(l(p).menuList, (r) => (o(), c(j, {
1341
1343
  key: r.menuUrl
1342
1344
  }, [
1343
- r.children && r.children.length > 0 ? (a(), D(l(He), {
1345
+ r.children && r.children.length > 0 ? (o(), A(l(We), {
1344
1346
  key: 0,
1345
1347
  index: r.menuUrl
1346
1348
  }, {
1347
1349
  title: S(() => [
1348
- e("span", oo, [
1349
- r.menuName !== "首页" ? (a(), c("span", ao, [
1350
- Y(E(r.icon)) ? (a(), D(l(I), {
1350
+ e("span", to, [
1351
+ r.menuName !== "首页" ? (o(), c("span", so, [
1352
+ X(E(r.icon)) ? (o(), A(l(U), {
1351
1353
  key: 0,
1352
1354
  name: E(r.icon),
1353
1355
  size: 16
1354
- }, null, 8, ["name"])) : (a(), c("span", no, x(z(r.menuName)), 1))
1355
- ])) : P("", !0),
1356
- e("span", lo, x(r.menuName), 1)
1356
+ }, null, 8, ["name"])) : (o(), c("span", oo, x(F(r.menuName)), 1))
1357
+ ])) : z("", !0),
1358
+ e("span", ao, x(r.menuName), 1)
1357
1359
  ])
1358
1360
  ]),
1359
1361
  default: S(() => [
1360
- (a(!0), c(H, null, J(r.children, (p) => (a(), c(H, {
1361
- key: p.menuUrl
1362
+ (o(!0), c(j, null, J(r.children, (v) => (o(), c(j, {
1363
+ key: v.menuUrl
1362
1364
  }, [
1363
- p.children && p.children.length > 0 ? (a(), D(l(He), {
1365
+ v.children && v.children.length > 0 ? (o(), A(l(We), {
1364
1366
  key: 0,
1365
- index: p.menuUrl
1367
+ index: v.menuUrl
1366
1368
  }, {
1367
1369
  title: S(() => [
1368
- e("span", ro, [
1369
- e("span", io, [
1370
- Y(E(p.icon)) ? (a(), D(l(I), {
1370
+ e("span", no, [
1371
+ e("span", lo, [
1372
+ X(E(v.icon)) ? (o(), A(l(U), {
1371
1373
  key: 0,
1372
- name: E(p.icon),
1374
+ name: E(v.icon),
1373
1375
  size: 16
1374
- }, null, 8, ["name"])) : (a(), c("span", co, x(z(p.menuName)), 1))
1376
+ }, null, 8, ["name"])) : (o(), c("span", ro, x(F(v.menuName)), 1))
1375
1377
  ]),
1376
- e("span", uo, x(p.menuName), 1)
1378
+ e("span", io, x(v.menuName), 1)
1377
1379
  ])
1378
1380
  ]),
1379
1381
  default: S(() => [
1380
- (a(!0), c(H, null, J(p.children, (R) => (a(), D(l(Te), {
1381
- key: R.menuUrl,
1382
- index: R.menuUrl
1382
+ (o(!0), c(j, null, J(v.children, (O) => (o(), A(l(Ie), {
1383
+ key: O.menuUrl,
1384
+ index: O.menuUrl
1383
1385
  }, {
1384
1386
  default: S(() => [
1385
- e("span", mo, [
1386
- e("span", po, [
1387
- Y(E(R.icon)) ? (a(), D(l(I), {
1387
+ e("span", co, [
1388
+ e("span", uo, [
1389
+ X(E(O.icon)) ? (o(), A(l(U), {
1388
1390
  key: 0,
1389
- name: E(R.icon),
1391
+ name: E(O.icon),
1390
1392
  size: 16
1391
- }, null, 8, ["name"])) : (a(), c("span", vo, x(z(R.menuName)), 1))
1393
+ }, null, 8, ["name"])) : (o(), c("span", mo, x(F(O.menuName)), 1))
1392
1394
  ]),
1393
- e("span", ho, x(R.menuName), 1)
1395
+ e("span", po, x(O.menuName), 1)
1394
1396
  ])
1395
1397
  ]),
1396
1398
  _: 2
1397
1399
  }, 1032, ["index"]))), 128))
1398
1400
  ]),
1399
1401
  _: 2
1400
- }, 1032, ["index"])) : (a(), D(l(Te), {
1402
+ }, 1032, ["index"])) : (o(), A(l(Ie), {
1401
1403
  key: 1,
1402
- index: p.menuUrl
1404
+ index: v.menuUrl
1403
1405
  }, {
1404
1406
  default: S(() => [
1405
- e("span", _o, [
1406
- e("span", fo, [
1407
- Y(E(p.icon)) ? (a(), D(l(I), {
1407
+ e("span", vo, [
1408
+ e("span", ho, [
1409
+ X(E(v.icon)) ? (o(), A(l(U), {
1408
1410
  key: 0,
1409
- name: E(p.icon),
1411
+ name: E(v.icon),
1410
1412
  size: 16
1411
- }, null, 8, ["name"])) : (a(), c("span", go, x(z(p.menuName)), 1))
1413
+ }, null, 8, ["name"])) : (o(), c("span", _o, x(F(v.menuName)), 1))
1412
1414
  ]),
1413
- e("span", yo, x(p.menuName), 1)
1415
+ e("span", fo, x(v.menuName), 1)
1414
1416
  ])
1415
1417
  ]),
1416
1418
  _: 2
@@ -1418,20 +1420,20 @@ const _e = Fe("menu", () => {
1418
1420
  ], 64))), 128))
1419
1421
  ]),
1420
1422
  _: 2
1421
- }, 1032, ["index"])) : (a(), D(l(Te), {
1423
+ }, 1032, ["index"])) : (o(), A(l(Ie), {
1422
1424
  key: 1,
1423
1425
  index: r.menuUrl
1424
1426
  }, {
1425
1427
  default: S(() => [
1426
- e("span", bo, [
1427
- r.menuName !== "首页" ? (a(), c("span", wo, [
1428
- Y(E(r.icon)) ? (a(), D(l(I), {
1428
+ e("span", go, [
1429
+ r.menuName !== "首页" ? (o(), c("span", yo, [
1430
+ X(E(r.icon)) ? (o(), A(l(U), {
1429
1431
  key: 0,
1430
1432
  name: E(r.icon),
1431
1433
  size: 16
1432
- }, null, 8, ["name"])) : (a(), c("span", ko, x(z(r.menuName)), 1))
1433
- ])) : P("", !0),
1434
- e("span", xo, x(r.menuName), 1)
1434
+ }, null, 8, ["name"])) : (o(), c("span", bo, x(F(r.menuName)), 1))
1435
+ ])) : z("", !0),
1436
+ e("span", wo, x(r.menuName), 1)
1435
1437
  ])
1436
1438
  ]),
1437
1439
  _: 2
@@ -1440,77 +1442,77 @@ const _e = Fe("menu", () => {
1440
1442
  ]),
1441
1443
  _: 1
1442
1444
  }, 8, ["model-value", "background-color", "text-color", "active-text-color"]),
1443
- e("div", Co, [
1445
+ e("div", ko, [
1444
1446
  e("div", {
1445
1447
  class: "top-menu__search",
1446
1448
  ref_key: "searchRef",
1447
- ref: G
1449
+ ref: Y
1448
1450
  }, [
1449
- y(l(I), {
1451
+ w(l(U), {
1450
1452
  name: "search",
1451
1453
  size: 14,
1452
1454
  class: "top-menu__search-icon"
1453
1455
  }),
1454
- Be(e("input", {
1455
- "onUpdate:modelValue": C[0] || (C[0] = (r) => X.value = r),
1456
+ De(e("input", {
1457
+ "onUpdate:modelValue": C[0] || (C[0] = (r) => ee.value = r),
1456
1458
  type: "text",
1457
1459
  class: "top-menu__search-input",
1458
1460
  placeholder: "搜索菜单...",
1459
- onFocus: C[1] || (C[1] = (r) => ee.value = !0)
1461
+ onFocus: C[1] || (C[1] = (r) => G.value = !0)
1460
1462
  }, null, 544), [
1461
- [Xe, X.value]
1463
+ [Ye, ee.value]
1462
1464
  ]),
1463
- y(Ee, { name: "search-dropdown" }, {
1465
+ w(Se, { name: "search-dropdown" }, {
1464
1466
  default: S(() => [
1465
- ee.value && (k.value.length > 0 || X.value) ? (a(), c("div", $o, [
1466
- k.value.length > 0 ? (a(), c("div", Lo, [
1467
- (a(!0), c(H, null, J(k.value, (r) => (a(), c("div", {
1467
+ G.value && (g.value.length > 0 || ee.value) ? (o(), c("div", xo, [
1468
+ g.value.length > 0 ? (o(), c("div", Co, [
1469
+ (o(!0), c(j, null, J(g.value, (r) => (o(), c("div", {
1468
1470
  key: r.path,
1469
1471
  class: "top-menu__search-item",
1470
- onClick: (p) => fe(r.path)
1472
+ onClick: (v) => ge(r.path)
1471
1473
  }, [
1472
- r.title !== "首页" ? (a(), c("span", So, [
1473
- Y(E(r.icon)) ? (a(), D(l(I), {
1474
+ r.title !== "首页" ? (o(), c("span", Lo, [
1475
+ X(E(r.icon)) ? (o(), A(l(U), {
1474
1476
  key: 0,
1475
1477
  name: E(r.icon),
1476
1478
  size: 16
1477
- }, null, 8, ["name"])) : (a(), c("span", No, x(z(r.title)), 1))
1478
- ])) : P("", !0),
1479
- e("span", Eo, x(r.title), 1),
1480
- r.parentTitle ? (a(), c("span", Io, x(r.parentTitle), 1)) : P("", !0)
1481
- ], 8, Mo))), 128))
1482
- ])) : (a(), c("div", Uo, " 未找到匹配的菜单 "))
1483
- ])) : P("", !0)
1479
+ }, null, 8, ["name"])) : (o(), c("span", Mo, x(F(r.title)), 1))
1480
+ ])) : z("", !0),
1481
+ e("span", So, x(r.title), 1),
1482
+ r.parentTitle ? (o(), c("span", No, x(r.parentTitle), 1)) : z("", !0)
1483
+ ], 8, $o))), 128))
1484
+ ])) : (o(), c("div", Eo, " 未找到匹配的菜单 "))
1485
+ ])) : z("", !0)
1484
1486
  ]),
1485
1487
  _: 1
1486
1488
  })
1487
1489
  ], 512),
1488
1490
  e("div", {
1489
1491
  class: "top-menu__action",
1490
- onClick: ne,
1491
- title: W.value ? "退出全屏" : "全屏"
1492
+ onClick: oe,
1493
+ title: R.value ? "退出全屏" : "全屏"
1492
1494
  }, [
1493
- y(l(I), {
1494
- name: W.value ? "fullscreen-exit" : "fullscreen",
1495
+ w(l(U), {
1496
+ name: R.value ? "fullscreen-exit" : "fullscreen",
1495
1497
  size: 16
1496
1498
  }, null, 8, ["name"])
1497
- ], 8, To),
1499
+ ], 8, Io),
1498
1500
  e("div", {
1499
1501
  class: "top-menu__action",
1500
- onClick: M,
1502
+ onClick: ie,
1501
1503
  title: "换肤设置"
1502
1504
  }, [
1503
- y(l(I), {
1505
+ w(l(U), {
1504
1506
  name: "skin",
1505
1507
  size: 16
1506
1508
  })
1507
1509
  ]),
1508
1510
  e("div", {
1509
1511
  class: "top-menu__action",
1510
- onClick: q,
1512
+ onClick: K,
1511
1513
  title: "切换主题"
1512
1514
  }, [
1513
- y(l(I), {
1515
+ w(l(U), {
1514
1516
  name: l(i).isDark ? "sun" : "moon",
1515
1517
  size: 16
1516
1518
  }, null, 8, ["name"])
@@ -1518,18 +1520,18 @@ const _e = Fe("menu", () => {
1518
1520
  e("div", {
1519
1521
  class: "top-menu__user",
1520
1522
  ref_key: "dropdownRef",
1521
- ref: B
1523
+ ref: V
1522
1524
  }, [
1523
1525
  e("div", {
1524
1526
  class: "top-menu__user-trigger",
1525
- onClick: Ve(we, ["stop"])
1527
+ onClick: Ae(we, ["stop"])
1526
1528
  }, [
1527
- e("div", Po, [
1528
- e("span", null, x(((ae = l(v).userName) == null ? void 0 : ae.charAt(0)) || "U"), 1)
1529
+ e("div", Uo, [
1530
+ e("span", null, x(((le = l(h).userName) == null ? void 0 : le.charAt(0)) || "U"), 1)
1529
1531
  ]),
1530
- e("span", zo, x(l(v).userName), 1),
1532
+ e("span", To, x(l(h).userName), 1),
1531
1533
  e("span", {
1532
- class: Z(["top-menu__user-arrow", { "is-active": j.value }])
1534
+ class: Z(["top-menu__user-arrow", { "is-active": B.value }])
1533
1535
  }, [...C[3] || (C[3] = [
1534
1536
  e("svg", {
1535
1537
  viewBox: "0 0 12 12",
@@ -1545,27 +1547,27 @@ const _e = Fe("menu", () => {
1545
1547
  ], -1)
1546
1548
  ])], 2)
1547
1549
  ]),
1548
- y(Ee, { name: "dropdown" }, {
1550
+ w(Se, { name: "dropdown" }, {
1549
1551
  default: S(() => {
1550
1552
  var r;
1551
1553
  return [
1552
- j.value ? (a(), c("div", Fo, [
1553
- e("div", Do, [
1554
- e("div", Ao, [
1555
- e("span", null, x(((r = l(v).userName) == null ? void 0 : r.charAt(0)) || "U"), 1)
1554
+ B.value ? (o(), c("div", Po, [
1555
+ e("div", zo, [
1556
+ e("div", Fo, [
1557
+ e("span", null, x(((r = l(h).userName) == null ? void 0 : r.charAt(0)) || "U"), 1)
1556
1558
  ]),
1557
- e("div", Bo, [
1558
- e("div", Vo, x(l(v).userName), 1),
1559
- e("div", Oo, x(l(v).departmentName), 1)
1559
+ e("div", Do, [
1560
+ e("div", Ao, x(l(h).userName), 1),
1561
+ e("div", Bo, x(l(h).departmentName), 1)
1560
1562
  ])
1561
1563
  ]),
1562
1564
  C[8] || (C[8] = e("div", { class: "top-menu__dropdown-divider" }, null, -1)),
1563
- e("div", Ro, [
1565
+ e("div", Vo, [
1564
1566
  e("div", {
1565
1567
  class: "top-menu__dropdown-item",
1566
- onClick: ge
1568
+ onClick: xe
1567
1569
  }, [
1568
- y(l(I), {
1570
+ w(l(U), {
1569
1571
  name: "user",
1570
1572
  size: 16
1571
1573
  }),
@@ -1573,9 +1575,9 @@ const _e = Fe("menu", () => {
1573
1575
  ]),
1574
1576
  e("div", {
1575
1577
  class: "top-menu__dropdown-item",
1576
- onClick: U
1578
+ onClick: I
1577
1579
  }, [
1578
- y(l(I), {
1580
+ w(l(U), {
1579
1581
  name: "lock",
1580
1582
  size: 16
1581
1583
  }),
@@ -1586,48 +1588,48 @@ const _e = Fe("menu", () => {
1586
1588
  class: "top-menu__dropdown-item top-menu__dropdown-item--danger",
1587
1589
  onClick: b
1588
1590
  }, [
1589
- y(l(I), {
1591
+ w(l(U), {
1590
1592
  name: "logout",
1591
1593
  size: 16
1592
1594
  }),
1593
1595
  C[6] || (C[6] = e("span", null, "退出登录", -1))
1594
1596
  ])
1595
1597
  ])
1596
- ])) : P("", !0)
1598
+ ])) : z("", !0)
1597
1599
  ];
1598
1600
  }),
1599
1601
  _: 1
1600
1602
  })
1601
1603
  ], 512)
1602
1604
  ]),
1603
- y(l(tt), {
1604
- modelValue: V.value,
1605
- "onUpdate:modelValue": C[2] || (C[2] = (r) => V.value = r),
1605
+ w(l(Qe), {
1606
+ modelValue: H.value,
1607
+ "onUpdate:modelValue": C[2] || (C[2] = (r) => H.value = r),
1606
1608
  title: "换肤设置",
1607
1609
  direction: "rtl",
1608
1610
  size: "320px"
1609
1611
  }, {
1610
1612
  default: S(() => [
1611
- e("div", Ko, [
1612
- e("div", jo, [
1613
+ e("div", Oo, [
1614
+ e("div", Ro, [
1613
1615
  C[12] || (C[12] = e("div", { class: "settings-title" }, "布局模式", -1)),
1614
- e("div", Wo, [
1615
- (a(), c(H, null, J(oe, (r) => e("div", {
1616
+ e("div", Ko, [
1617
+ (o(), c(j, null, J(pe, (r) => e("div", {
1616
1618
  key: r.value,
1617
- class: Z(["layout-option", { "is-active": ke.value === r.value }]),
1618
- onClick: (p) => xe(r.value)
1619
+ class: Z(["layout-option", { "is-active": ve.value === r.value }]),
1620
+ onClick: (v) => ne(r.value)
1619
1621
  }, [
1620
- e("div", Ho, [
1621
- r.value === "sidebar" ? (a(), c("div", Yo, [...C[9] || (C[9] = [
1622
+ e("div", Wo, [
1623
+ r.value === "sidebar" ? (o(), c("div", qo, [...C[9] || (C[9] = [
1622
1624
  e("div", { class: "preview-aside" }, null, -1),
1623
1625
  e("div", { class: "preview-main" }, [
1624
1626
  e("div", { class: "preview-header" }),
1625
1627
  e("div", { class: "preview-content" })
1626
1628
  ], -1)
1627
- ])])) : r.value === "top" ? (a(), c("div", Go, [...C[10] || (C[10] = [
1629
+ ])])) : r.value === "top" ? (o(), c("div", Ho, [...C[10] || (C[10] = [
1628
1630
  e("div", { class: "preview-header-full" }, null, -1),
1629
1631
  e("div", { class: "preview-content-full" }, null, -1)
1630
- ])])) : (a(), c("div", Xo, [...C[11] || (C[11] = [
1632
+ ])])) : (o(), c("div", Yo, [...C[11] || (C[11] = [
1631
1633
  e("div", { class: "preview-header-mix" }, [
1632
1634
  e("div", { class: "preview-mix-left" })
1633
1635
  ], -1),
@@ -1637,46 +1639,46 @@ const _e = Fe("menu", () => {
1637
1639
  ], -1)
1638
1640
  ])]))
1639
1641
  ]),
1640
- e("span", Jo, x(r.label), 1)
1641
- ], 10, qo)), 64))
1642
+ e("span", Go, x(r.label), 1)
1643
+ ], 10, jo)), 64))
1642
1644
  ])
1643
1645
  ]),
1644
- e("div", Zo, [
1646
+ e("div", Xo, [
1645
1647
  C[13] || (C[13] = e("div", { class: "settings-title" }, "主题色", -1)),
1646
- e("div", Qo, [
1647
- (a(), c(H, null, J($e, (r) => e("div", {
1648
+ e("div", Jo, [
1649
+ (o(), c(j, null, J(ke, (r) => e("div", {
1648
1650
  key: r.value,
1649
1651
  class: Z(["color-option", { "is-active": l(i).primaryColor === r.value }]),
1650
- style: Pe({ backgroundColor: r.value }),
1652
+ style: Ue({ backgroundColor: r.value }),
1651
1653
  title: r.label,
1652
- onClick: (p) => re(r.value)
1654
+ onClick: (v) => ye(r.value)
1653
1655
  }, [
1654
- l(i).primaryColor === r.value ? (a(), D(l(I), {
1656
+ l(i).primaryColor === r.value ? (o(), A(l(U), {
1655
1657
  key: 0,
1656
1658
  name: "check",
1657
1659
  size: 12,
1658
1660
  color: "#fff"
1659
- })) : P("", !0)
1660
- ], 14, ea)), 64))
1661
+ })) : z("", !0)
1662
+ ], 14, Zo)), 64))
1661
1663
  ])
1662
1664
  ]),
1663
- e("div", ta, [
1665
+ e("div", Qo, [
1664
1666
  C[18] || (C[18] = e("div", { class: "settings-title" }, "功能设置", -1)),
1665
- e("div", sa, [
1666
- e("div", oa, [
1667
+ e("div", ea, [
1668
+ e("div", ta, [
1667
1669
  C[15] || (C[15] = e("span", null, "灰色模式", -1)),
1668
1670
  e("div", {
1669
1671
  class: Z(["switch-wrapper", { "is-checked": Q.value }]),
1670
- onClick: me
1672
+ onClick: M
1671
1673
  }, [...C[14] || (C[14] = [
1672
1674
  e("span", { class: "switch-core" }, null, -1)
1673
1675
  ])], 2)
1674
1676
  ]),
1675
- e("div", aa, [
1677
+ e("div", sa, [
1676
1678
  C[17] || (C[17] = e("span", null, "暗黑模式", -1)),
1677
1679
  e("div", {
1678
1680
  class: Z(["switch-wrapper", { "is-checked": l(i).isDark }]),
1679
- onClick: pe
1681
+ onClick: q
1680
1682
  }, [...C[16] || (C[16] = [
1681
1683
  e("span", { class: "switch-core" }, null, -1)
1682
1684
  ])], 2)
@@ -1690,76 +1692,76 @@ const _e = Fe("menu", () => {
1690
1692
  ]);
1691
1693
  };
1692
1694
  }
1693
- }), la = /* @__PURE__ */ ue(na, [["__scopeId", "data-v-711d5b8d"]]), ra = { class: "mix-top-menu" }, ia = { class: "mix-top-menu__logo" }, ca = ["src"], ua = { class: "mix-top-menu__logo-text" }, da = { class: "mix-top-menu__menu-content" }, ma = {
1695
+ }), aa = /* @__PURE__ */ de(oa, [["__scopeId", "data-v-711d5b8d"]]), na = { class: "mix-top-menu" }, la = { class: "mix-top-menu__logo" }, ra = ["src"], ia = { class: "mix-top-menu__logo-text" }, ca = { class: "mix-top-menu__menu-content" }, ua = {
1694
1696
  key: 0,
1695
1697
  class: "mix-top-menu__menu-icon"
1696
- }, pa = {
1698
+ }, da = {
1697
1699
  key: 1,
1698
1700
  class: "mix-top-menu__menu-char"
1699
- }, va = { class: "mix-top-menu__menu-text" }, ha = { class: "mix-top-menu__actions" }, _a = {
1701
+ }, ma = { class: "mix-top-menu__menu-text" }, pa = { class: "mix-top-menu__actions" }, va = {
1700
1702
  key: 0,
1701
1703
  class: "mix-top-menu__search-dropdown"
1702
- }, fa = {
1704
+ }, ha = {
1703
1705
  key: 0,
1704
1706
  class: "mix-top-menu__search-results"
1705
- }, ga = ["onClick"], ya = {
1707
+ }, _a = ["onClick"], fa = {
1706
1708
  key: 0,
1707
1709
  class: "mix-top-menu__search-icon-item"
1708
- }, ba = {
1710
+ }, ga = {
1709
1711
  key: 1,
1710
1712
  class: "mix-top-menu__search-char"
1711
- }, wa = { class: "mix-top-menu__search-item-title" }, ka = {
1713
+ }, ya = { class: "mix-top-menu__search-item-title" }, ba = {
1712
1714
  key: 1,
1713
1715
  class: "mix-top-menu__search-item-parent"
1714
- }, xa = {
1716
+ }, wa = {
1715
1717
  key: 1,
1716
1718
  class: "mix-top-menu__search-empty"
1717
- }, Ca = ["title"], $a = { class: "mix-top-menu__avatar" }, La = { class: "mix-top-menu__user-name" }, Ma = {
1719
+ }, ka = ["title"], xa = { class: "mix-top-menu__avatar" }, Ca = { class: "mix-top-menu__user-name" }, $a = {
1718
1720
  key: 0,
1719
1721
  class: "mix-top-menu__dropdown"
1720
- }, Sa = { class: "mix-top-menu__dropdown-header" }, Na = { class: "mix-top-menu__dropdown-avatar" }, Ea = { class: "mix-top-menu__dropdown-info" }, Ia = { class: "mix-top-menu__dropdown-name" }, Ua = { class: "mix-top-menu__dropdown-role" }, Ta = { class: "mix-top-menu__dropdown-menu" }, Pa = { class: "settings-drawer" }, za = { class: "settings-section" }, Fa = { class: "settings-layout-options" }, Da = ["onClick"], Aa = { class: "layout-option__preview" }, Ba = {
1722
+ }, La = { class: "mix-top-menu__dropdown-header" }, Ma = { class: "mix-top-menu__dropdown-avatar" }, Sa = { class: "mix-top-menu__dropdown-info" }, Na = { class: "mix-top-menu__dropdown-name" }, Ea = { class: "mix-top-menu__dropdown-role" }, Ia = { class: "mix-top-menu__dropdown-menu" }, Ua = { class: "settings-drawer" }, Ta = { class: "settings-section" }, Pa = { class: "settings-layout-options" }, za = ["onClick"], Fa = { class: "layout-option__preview" }, Da = {
1721
1723
  key: 0,
1722
1724
  class: "layout-preview-sidebar"
1723
- }, Va = {
1725
+ }, Aa = {
1724
1726
  key: 1,
1725
1727
  class: "layout-preview-top"
1726
- }, Oa = {
1728
+ }, Ba = {
1727
1729
  key: 2,
1728
1730
  class: "layout-preview-mix"
1729
- }, Ra = { class: "layout-option__label" }, Ka = { class: "settings-section" }, ja = { class: "settings-color-options" }, Wa = ["title", "onClick"], qa = { class: "settings-section" }, Ha = { class: "settings-switch-list" }, Ya = { class: "settings-switch-item" }, Ga = { class: "settings-switch-item" }, Xa = /* @__PURE__ */ ie({
1731
+ }, Va = { class: "layout-option__label" }, Oa = { class: "settings-section" }, Ra = { class: "settings-color-options" }, Ka = ["title", "onClick"], ja = { class: "settings-section" }, Wa = { class: "settings-switch-list" }, qa = { class: "settings-switch-item" }, Ha = { class: "settings-switch-item" }, Ya = /* @__PURE__ */ ce({
1730
1732
  __name: "MixTopMenu",
1731
1733
  props: {
1732
1734
  logoSrc: {}
1733
1735
  },
1734
1736
  setup(t) {
1735
- const n = t, m = w(() => n.logoSrc || ze("/vite.svg")), o = Ue(), s = be(), h = _e(), i = he(), v = ce(), d = De(), f = g(""), _ = (r, p = "") => {
1736
- const R = [];
1737
+ const n = t, m = k(() => n.logoSrc || Te("/vite.svg")), a = Ee(), s = be(), p = fe(), i = _e(), h = ue(), d = ze(), f = y(""), _ = (r, v = "") => {
1738
+ const O = [];
1737
1739
  return r.forEach((L) => {
1738
- L.children && L.children.length > 0 ? R.push(..._(L.children, L.menuName)) : R.push({ ...L, parentTitle: p, title: L.menuName, path: L.menuUrl });
1739
- }), R;
1740
- }, k = w(() => E.value.trim() ? _(h.menuList).filter(
1741
- (p) => p.title.toLowerCase().includes(E.value.toLowerCase())
1742
- ) : []), u = w(() => {
1743
- const r = h.menuList.find((p) => p.menuUrl === f.value);
1740
+ L.children && L.children.length > 0 ? O.push(..._(L.children, L.menuName)) : O.push({ ...L, parentTitle: v, title: L.menuName, path: L.menuUrl });
1741
+ }), O;
1742
+ }, g = k(() => E.value.trim() ? _(p.menuList).filter(
1743
+ (v) => v.title.toLowerCase().includes(E.value.toLowerCase())
1744
+ ) : []), u = k(() => {
1745
+ const r = p.menuList.find((v) => v.menuUrl === f.value);
1744
1746
  return (r == null ? void 0 : r.children) || [];
1745
- }), K = w(() => h.menuList.find((r) => !!(o.path === r.menuUrl || r.children && r.children.some((p) => o.path.startsWith(p.menuUrl) || o.path === p.menuUrl)))), A = () => {
1746
- K.value ? f.value = K.value.menuUrl : h.menuList.length > 0 && (f.value = h.menuList[0].menuUrl);
1747
- }, j = (r) => {
1747
+ }), W = k(() => p.menuList.find((r) => !!(a.path === r.menuUrl || r.children && r.children.some((v) => a.path.startsWith(v.menuUrl) || a.path === v.menuUrl)))), P = () => {
1748
+ W.value ? f.value = W.value.menuUrl : p.menuList.length > 0 && (f.value = p.menuList[0].menuUrl);
1749
+ }, B = (r) => {
1748
1750
  f.value = r;
1749
- const p = h.menuList.find((R) => R.menuUrl === r);
1750
- if (p)
1751
- if (p.children && p.children.length > 0) {
1752
- const R = p.children[0].menuUrl;
1753
- o.path !== R && s.push(R);
1751
+ const v = p.menuList.find((O) => O.menuUrl === r);
1752
+ if (v)
1753
+ if (v.children && v.children.length > 0) {
1754
+ const O = v.children[0].menuUrl;
1755
+ a.path !== O && s.push(O);
1754
1756
  } else
1755
- o.path !== r && s.push(r);
1756
- }, B = w(() => i.isDark ? "#1d1e1f" : "#fff"), W = w(() => i.isDark ? "#cfd3dc" : "#303133"), V = w(() => "#409eff"), Q = g(!1), ee = g(null), X = g(!1), G = g(!1), te = g(!1), F = g(!1), E = g(""), z = g(null);
1757
- Se(() => o.path, () => {
1758
- A(), i.setMixSubMenus(u.value);
1759
- }), Se(() => h.menuList, (r) => {
1760
- r && r.length > 0 && (A(), i.setMixSubMenus(u.value));
1757
+ a.path !== r && s.push(r);
1758
+ }, V = k(() => i.isDark ? "#1d1e1f" : "#fff"), R = k(() => i.isDark ? "#cfd3dc" : "#303133"), H = k(() => "#409eff"), Q = y(!1), G = y(null), ee = y(!1), Y = y(!1), te = y(!1), D = y(!1), E = y(""), F = y(null);
1759
+ Le(() => a.path, () => {
1760
+ P(), i.setMixSubMenus(u.value);
1761
+ }), Le(() => p.menuList, (r) => {
1762
+ r && r.length > 0 && (P(), i.setMixSubMenus(u.value));
1761
1763
  }, { immediate: !0 });
1762
- const Y = /* @__PURE__ */ new Set([
1764
+ const X = /* @__PURE__ */ new Set([
1763
1765
  "arrow-up",
1764
1766
  "arrow-down",
1765
1767
  "arrow-left",
@@ -1861,10 +1863,10 @@ const _e = Fe("menu", () => {
1861
1863
  "sun",
1862
1864
  "theme",
1863
1865
  "skin"
1864
- ]), q = (r) => {
1866
+ ]), K = (r) => {
1865
1867
  if (!r || r === "") return "";
1866
1868
  if (r.startsWith("tineco-icon-")) {
1867
- const R = r.replace("tineco-icon-", "");
1869
+ const O = r.replace("tineco-icon-", "");
1868
1870
  return {
1869
1871
  home: "home",
1870
1872
  dashboard: "dashboard",
@@ -1878,7 +1880,7 @@ const _e = Fe("menu", () => {
1878
1880
  chart: "chart",
1879
1881
  report: "report",
1880
1882
  analytics: "analytics"
1881
- }[R] || R;
1883
+ }[O] || O;
1882
1884
  }
1883
1885
  return {
1884
1886
  dashboard: "dashboard",
@@ -1898,94 +1900,94 @@ const _e = Fe("menu", () => {
1898
1900
  list: "list",
1899
1901
  grid: "grid"
1900
1902
  }[r] || r;
1901
- }, ne = (r) => r ? r.charAt(0) : "", ve = (r) => Y.has(r), we = () => {
1902
- i.toggleTheme(), G.value = !1;
1903
- }, le = () => {
1903
+ }, oe = (r) => r ? r.charAt(0) : "", he = (r) => X.has(r), we = () => {
1904
+ i.toggleTheme(), Y.value = !1;
1905
+ }, re = () => {
1904
1906
  document.fullscreenElement ? document.exitFullscreen() : document.documentElement.requestFullscreen();
1905
- }, de = () => {
1906
- X.value = !!document.fullscreenElement;
1907
- }, fe = () => {
1907
+ }, me = () => {
1908
+ ee.value = !!document.fullscreenElement;
1909
+ }, ge = () => {
1908
1910
  Q.value = !Q.value;
1909
- }, M = () => {
1911
+ }, ie = () => {
1910
1912
  Q.value = !1;
1911
- }, O = () => {
1912
- F.value = !1, E.value = "";
1913
- }, me = (r) => {
1914
- s.push(r), O();
1915
- }, pe = () => {
1916
- G.value = !0;
1917
- }, oe = (r) => {
1913
+ }, ae = () => {
1914
+ D.value = !1, E.value = "";
1915
+ }, M = (r) => {
1916
+ s.push(r), ae();
1917
+ }, q = () => {
1918
+ Y.value = !0;
1919
+ }, pe = (r) => {
1918
1920
  te.value = r;
1919
- const p = document.documentElement;
1920
- r ? p.classList.add("grey-mode") : p.classList.remove("grey-mode");
1921
- }, ke = () => {
1922
- oe(!te.value), G.value = !1;
1923
- }, xe = () => {
1924
- i.toggleTheme(), G.value = !1;
1925
- }, $e = [
1921
+ const v = document.documentElement;
1922
+ r ? v.classList.add("grey-mode") : v.classList.remove("grey-mode");
1923
+ }, ve = () => {
1924
+ pe(!te.value), Y.value = !1;
1925
+ }, ne = () => {
1926
+ i.toggleTheme(), Y.value = !1;
1927
+ }, ke = [
1926
1928
  { value: "sidebar", label: "左侧菜单", icon: "sidebar-left" },
1927
1929
  { value: "top", label: "顶部菜单", icon: "menu" },
1928
1930
  { value: "mix", label: "混合菜单", icon: "grid" }
1929
- ], re = w(() => i.layout), ge = (r) => {
1930
- i.setLayout(r), G.value = !1;
1931
- }, U = [
1931
+ ], ye = k(() => i.layout), xe = (r) => {
1932
+ i.setLayout(r), Y.value = !1;
1933
+ }, I = [
1932
1934
  { value: "#409eff", label: "默认蓝" },
1933
1935
  { value: "#0F6FDE", label: "企业蓝" },
1934
1936
  { value: "#00A870", label: "翡翠绿" },
1935
1937
  { value: "#D46B08", label: "琥珀橙" },
1936
1938
  { value: "#1F2329", label: "石墨黑" }
1937
1939
  ], b = (r) => {
1938
- i.setPrimaryColor(r), G.value = !1;
1940
+ i.setPrimaryColor(r), Y.value = !1;
1939
1941
  }, se = () => {
1940
- M(), s.push("/profile");
1942
+ ie(), s.push("/profile");
1941
1943
  }, $ = () => {
1942
- M(), s.push("/change-password");
1944
+ ie(), s.push("/change-password");
1943
1945
  }, N = () => {
1944
- M(), d.logout(), v.clearUserInfo(), h.clearMenu(), s.push(i.loginPath);
1946
+ ie(), d.logout(), h.clearUserInfo(), p.clearMenu(), s.push(i.loginPath);
1945
1947
  }, C = (r) => {
1946
- ee.value && !ee.value.contains(r.target) && M(), z.value && !z.value.contains(r.target) && O();
1947
- }, ae = (r) => {
1948
- r.key === "Escape" && (O(), M());
1948
+ G.value && !G.value.contains(r.target) && ie(), F.value && !F.value.contains(r.target) && ae();
1949
+ }, le = (r) => {
1950
+ r.key === "Escape" && (ae(), ie());
1949
1951
  };
1950
- return Ye(() => {
1951
- document.addEventListener("click", C), document.addEventListener("fullscreenchange", de), document.addEventListener("keydown", ae), te.value = document.documentElement.classList.contains("grey-mode"), A();
1952
- }), Ge(() => {
1953
- document.removeEventListener("click", C), document.removeEventListener("fullscreenchange", de), document.removeEventListener("keydown", ae);
1954
- }), (r, p) => {
1955
- var R;
1956
- return a(), c("div", ra, [
1957
- e("div", ia, [
1952
+ return qe(() => {
1953
+ document.addEventListener("click", C), document.addEventListener("fullscreenchange", me), document.addEventListener("keydown", le), te.value = document.documentElement.classList.contains("grey-mode"), P();
1954
+ }), He(() => {
1955
+ document.removeEventListener("click", C), document.removeEventListener("fullscreenchange", me), document.removeEventListener("keydown", le);
1956
+ }), (r, v) => {
1957
+ var O;
1958
+ return o(), c("div", na, [
1959
+ e("div", la, [
1958
1960
  e("img", {
1959
1961
  src: m.value,
1960
1962
  alt: "Logo",
1961
1963
  class: "mix-top-menu__logo-img"
1962
- }, null, 8, ca),
1963
- e("span", ua, x(l(i).appName), 1)
1964
+ }, null, 8, ra),
1965
+ e("span", ia, x(l(i).appName), 1)
1964
1966
  ]),
1965
- y(l(et), {
1967
+ w(l(Ze), {
1966
1968
  "model-value": f.value,
1967
1969
  mode: "horizontal",
1968
- "background-color": B.value,
1969
- "text-color": W.value,
1970
- "active-text-color": V.value,
1970
+ "background-color": V.value,
1971
+ "text-color": R.value,
1972
+ "active-text-color": H.value,
1971
1973
  class: "mix-top-menu__menu",
1972
- onSelect: j
1974
+ onSelect: B
1973
1975
  }, {
1974
1976
  default: S(() => [
1975
- (a(!0), c(H, null, J(l(h).menuList, (L) => (a(), D(l(Te), {
1977
+ (o(!0), c(j, null, J(l(p).menuList, (L) => (o(), A(l(Ie), {
1976
1978
  key: L.menuUrl,
1977
1979
  index: L.menuUrl
1978
1980
  }, {
1979
1981
  default: S(() => [
1980
- e("span", da, [
1981
- L.menuName !== "首页" ? (a(), c("span", ma, [
1982
- ve(q(L.icon)) ? (a(), D(l(I), {
1982
+ e("span", ca, [
1983
+ L.menuName !== "首页" ? (o(), c("span", ua, [
1984
+ he(K(L.icon)) ? (o(), A(l(U), {
1983
1985
  key: 0,
1984
- name: q(L.icon),
1986
+ name: K(L.icon),
1985
1987
  size: 16
1986
- }, null, 8, ["name"])) : (a(), c("span", pa, x(ne(L.menuName)), 1))
1987
- ])) : P("", !0),
1988
- e("span", va, x(L.menuName), 1)
1988
+ }, null, 8, ["name"])) : (o(), c("span", da, x(oe(L.menuName)), 1))
1989
+ ])) : z("", !0),
1990
+ e("span", ma, x(L.menuName), 1)
1989
1991
  ])
1990
1992
  ]),
1991
1993
  _: 2
@@ -1993,67 +1995,67 @@ const _e = Fe("menu", () => {
1993
1995
  ]),
1994
1996
  _: 1
1995
1997
  }, 8, ["model-value", "background-color", "text-color", "active-text-color"]),
1996
- e("div", ha, [
1998
+ e("div", pa, [
1997
1999
  e("div", {
1998
2000
  class: "mix-top-menu__search",
1999
2001
  ref_key: "searchRef",
2000
- ref: z
2002
+ ref: F
2001
2003
  }, [
2002
- y(l(I), {
2004
+ w(l(U), {
2003
2005
  name: "search",
2004
2006
  size: 14,
2005
2007
  class: "mix-top-menu__search-icon"
2006
2008
  }),
2007
- Be(e("input", {
2008
- "onUpdate:modelValue": p[0] || (p[0] = (L) => E.value = L),
2009
+ De(e("input", {
2010
+ "onUpdate:modelValue": v[0] || (v[0] = (L) => E.value = L),
2009
2011
  type: "text",
2010
2012
  class: "mix-top-menu__search-input",
2011
2013
  placeholder: "搜索菜单...",
2012
- onFocus: p[1] || (p[1] = (L) => F.value = !0)
2014
+ onFocus: v[1] || (v[1] = (L) => D.value = !0)
2013
2015
  }, null, 544), [
2014
- [Xe, E.value]
2016
+ [Ye, E.value]
2015
2017
  ]),
2016
- y(Ee, { name: "search-dropdown" }, {
2018
+ w(Se, { name: "search-dropdown" }, {
2017
2019
  default: S(() => [
2018
- F.value && (k.value.length > 0 || E.value) ? (a(), c("div", _a, [
2019
- k.value.length > 0 ? (a(), c("div", fa, [
2020
- (a(!0), c(H, null, J(k.value, (L) => (a(), c("div", {
2020
+ D.value && (g.value.length > 0 || E.value) ? (o(), c("div", va, [
2021
+ g.value.length > 0 ? (o(), c("div", ha, [
2022
+ (o(!0), c(j, null, J(g.value, (L) => (o(), c("div", {
2021
2023
  key: L.path,
2022
2024
  class: "mix-top-menu__search-item",
2023
- onClick: (ot) => me(L.path)
2025
+ onClick: (tt) => M(L.path)
2024
2026
  }, [
2025
- L.title !== "首页" ? (a(), c("span", ya, [
2026
- ve(q(L.icon)) ? (a(), D(l(I), {
2027
+ L.title !== "首页" ? (o(), c("span", fa, [
2028
+ he(K(L.icon)) ? (o(), A(l(U), {
2027
2029
  key: 0,
2028
- name: q(L.icon),
2030
+ name: K(L.icon),
2029
2031
  size: 16
2030
- }, null, 8, ["name"])) : (a(), c("span", ba, x(ne(L.title)), 1))
2031
- ])) : P("", !0),
2032
- e("span", wa, x(L.title), 1),
2033
- L.parentTitle ? (a(), c("span", ka, x(L.parentTitle), 1)) : P("", !0)
2034
- ], 8, ga))), 128))
2035
- ])) : (a(), c("div", xa, " 未找到匹配的菜单 "))
2036
- ])) : P("", !0)
2032
+ }, null, 8, ["name"])) : (o(), c("span", ga, x(oe(L.title)), 1))
2033
+ ])) : z("", !0),
2034
+ e("span", ya, x(L.title), 1),
2035
+ L.parentTitle ? (o(), c("span", ba, x(L.parentTitle), 1)) : z("", !0)
2036
+ ], 8, _a))), 128))
2037
+ ])) : (o(), c("div", wa, " 未找到匹配的菜单 "))
2038
+ ])) : z("", !0)
2037
2039
  ]),
2038
2040
  _: 1
2039
2041
  })
2040
2042
  ], 512),
2041
2043
  e("div", {
2042
2044
  class: "mix-top-menu__action",
2043
- onClick: le,
2044
- title: X.value ? "退出全屏" : "全屏"
2045
+ onClick: re,
2046
+ title: ee.value ? "退出全屏" : "全屏"
2045
2047
  }, [
2046
- y(l(I), {
2047
- name: X.value ? "fullscreen-exit" : "fullscreen",
2048
+ w(l(U), {
2049
+ name: ee.value ? "fullscreen-exit" : "fullscreen",
2048
2050
  size: 16
2049
2051
  }, null, 8, ["name"])
2050
- ], 8, Ca),
2052
+ ], 8, ka),
2051
2053
  e("div", {
2052
2054
  class: "mix-top-menu__action",
2053
- onClick: pe,
2055
+ onClick: q,
2054
2056
  title: "换肤设置"
2055
2057
  }, [
2056
- y(l(I), {
2058
+ w(l(U), {
2057
2059
  name: "skin",
2058
2060
  size: 16
2059
2061
  })
@@ -2063,7 +2065,7 @@ const _e = Fe("menu", () => {
2063
2065
  onClick: we,
2064
2066
  title: "切换主题"
2065
2067
  }, [
2066
- y(l(I), {
2068
+ w(l(U), {
2067
2069
  name: l(i).isDark ? "sun" : "moon",
2068
2070
  size: 16
2069
2071
  }, null, 8, ["name"])
@@ -2071,19 +2073,19 @@ const _e = Fe("menu", () => {
2071
2073
  e("div", {
2072
2074
  class: "mix-top-menu__user",
2073
2075
  ref_key: "dropdownRef",
2074
- ref: ee
2076
+ ref: G
2075
2077
  }, [
2076
2078
  e("div", {
2077
2079
  class: "mix-top-menu__user-trigger",
2078
- onClick: Ve(fe, ["stop"])
2080
+ onClick: Ae(ge, ["stop"])
2079
2081
  }, [
2080
- e("div", $a, [
2081
- e("span", null, x(((R = l(v).userName) == null ? void 0 : R.charAt(0)) || "U"), 1)
2082
+ e("div", xa, [
2083
+ e("span", null, x(((O = l(h).userName) == null ? void 0 : O.charAt(0)) || "U"), 1)
2082
2084
  ]),
2083
- e("span", La, x(l(v).userName), 1),
2085
+ e("span", Ca, x(l(h).userName), 1),
2084
2086
  e("span", {
2085
2087
  class: Z(["mix-top-menu__user-arrow", { "is-active": Q.value }])
2086
- }, [...p[3] || (p[3] = [
2088
+ }, [...v[3] || (v[3] = [
2087
2089
  e("svg", {
2088
2090
  viewBox: "0 0 12 12",
2089
2091
  width: "10",
@@ -2098,89 +2100,89 @@ const _e = Fe("menu", () => {
2098
2100
  ], -1)
2099
2101
  ])], 2)
2100
2102
  ]),
2101
- y(Ee, { name: "dropdown" }, {
2103
+ w(Se, { name: "dropdown" }, {
2102
2104
  default: S(() => {
2103
2105
  var L;
2104
2106
  return [
2105
- Q.value ? (a(), c("div", Ma, [
2106
- e("div", Sa, [
2107
- e("div", Na, [
2108
- e("span", null, x(((L = l(v).userName) == null ? void 0 : L.charAt(0)) || "U"), 1)
2107
+ Q.value ? (o(), c("div", $a, [
2108
+ e("div", La, [
2109
+ e("div", Ma, [
2110
+ e("span", null, x(((L = l(h).userName) == null ? void 0 : L.charAt(0)) || "U"), 1)
2109
2111
  ]),
2110
- e("div", Ea, [
2111
- e("div", Ia, x(l(v).userName), 1),
2112
- e("div", Ua, x(l(v).departmentName), 1)
2112
+ e("div", Sa, [
2113
+ e("div", Na, x(l(h).userName), 1),
2114
+ e("div", Ea, x(l(h).departmentName), 1)
2113
2115
  ])
2114
2116
  ]),
2115
- p[8] || (p[8] = e("div", { class: "mix-top-menu__dropdown-divider" }, null, -1)),
2116
- e("div", Ta, [
2117
+ v[8] || (v[8] = e("div", { class: "mix-top-menu__dropdown-divider" }, null, -1)),
2118
+ e("div", Ia, [
2117
2119
  e("div", {
2118
2120
  class: "mix-top-menu__dropdown-item",
2119
2121
  onClick: se
2120
2122
  }, [
2121
- y(l(I), {
2123
+ w(l(U), {
2122
2124
  name: "user",
2123
2125
  size: 16
2124
2126
  }),
2125
- p[4] || (p[4] = e("span", null, "个人信息", -1))
2127
+ v[4] || (v[4] = e("span", null, "个人信息", -1))
2126
2128
  ]),
2127
2129
  e("div", {
2128
2130
  class: "mix-top-menu__dropdown-item",
2129
2131
  onClick: $
2130
2132
  }, [
2131
- y(l(I), {
2133
+ w(l(U), {
2132
2134
  name: "lock",
2133
2135
  size: 16
2134
2136
  }),
2135
- p[5] || (p[5] = e("span", null, "修改密码", -1))
2137
+ v[5] || (v[5] = e("span", null, "修改密码", -1))
2136
2138
  ]),
2137
- p[7] || (p[7] = e("div", { class: "mix-top-menu__dropdown-divider" }, null, -1)),
2139
+ v[7] || (v[7] = e("div", { class: "mix-top-menu__dropdown-divider" }, null, -1)),
2138
2140
  e("div", {
2139
2141
  class: "mix-top-menu__dropdown-item mix-top-menu__dropdown-item--danger",
2140
2142
  onClick: N
2141
2143
  }, [
2142
- y(l(I), {
2144
+ w(l(U), {
2143
2145
  name: "logout",
2144
2146
  size: 16
2145
2147
  }),
2146
- p[6] || (p[6] = e("span", null, "退出登录", -1))
2148
+ v[6] || (v[6] = e("span", null, "退出登录", -1))
2147
2149
  ])
2148
2150
  ])
2149
- ])) : P("", !0)
2151
+ ])) : z("", !0)
2150
2152
  ];
2151
2153
  }),
2152
2154
  _: 1
2153
2155
  })
2154
2156
  ], 512)
2155
2157
  ]),
2156
- y(l(tt), {
2157
- modelValue: G.value,
2158
- "onUpdate:modelValue": p[2] || (p[2] = (L) => G.value = L),
2158
+ w(l(Qe), {
2159
+ modelValue: Y.value,
2160
+ "onUpdate:modelValue": v[2] || (v[2] = (L) => Y.value = L),
2159
2161
  title: "换肤设置",
2160
2162
  direction: "rtl",
2161
2163
  size: "320px"
2162
2164
  }, {
2163
2165
  default: S(() => [
2164
- e("div", Pa, [
2165
- e("div", za, [
2166
- p[12] || (p[12] = e("div", { class: "settings-title" }, "布局模式", -1)),
2167
- e("div", Fa, [
2168
- (a(), c(H, null, J($e, (L) => e("div", {
2166
+ e("div", Ua, [
2167
+ e("div", Ta, [
2168
+ v[12] || (v[12] = e("div", { class: "settings-title" }, "布局模式", -1)),
2169
+ e("div", Pa, [
2170
+ (o(), c(j, null, J(ke, (L) => e("div", {
2169
2171
  key: L.value,
2170
- class: Z(["layout-option", { "is-active": re.value === L.value }]),
2171
- onClick: (ot) => ge(L.value)
2172
+ class: Z(["layout-option", { "is-active": ye.value === L.value }]),
2173
+ onClick: (tt) => xe(L.value)
2172
2174
  }, [
2173
- e("div", Aa, [
2174
- L.value === "sidebar" ? (a(), c("div", Ba, [...p[9] || (p[9] = [
2175
+ e("div", Fa, [
2176
+ L.value === "sidebar" ? (o(), c("div", Da, [...v[9] || (v[9] = [
2175
2177
  e("div", { class: "preview-aside" }, null, -1),
2176
2178
  e("div", { class: "preview-main" }, [
2177
2179
  e("div", { class: "preview-header" }),
2178
2180
  e("div", { class: "preview-content" })
2179
2181
  ], -1)
2180
- ])])) : L.value === "top" ? (a(), c("div", Va, [...p[10] || (p[10] = [
2182
+ ])])) : L.value === "top" ? (o(), c("div", Aa, [...v[10] || (v[10] = [
2181
2183
  e("div", { class: "preview-header-full" }, null, -1),
2182
2184
  e("div", { class: "preview-content-full" }, null, -1)
2183
- ])])) : (a(), c("div", Oa, [...p[11] || (p[11] = [
2185
+ ])])) : (o(), c("div", Ba, [...v[11] || (v[11] = [
2184
2186
  e("div", { class: "preview-header-mix" }, [
2185
2187
  e("div", { class: "preview-mix-left" })
2186
2188
  ], -1),
@@ -2190,47 +2192,47 @@ const _e = Fe("menu", () => {
2190
2192
  ], -1)
2191
2193
  ])]))
2192
2194
  ]),
2193
- e("span", Ra, x(L.label), 1)
2194
- ], 10, Da)), 64))
2195
+ e("span", Va, x(L.label), 1)
2196
+ ], 10, za)), 64))
2195
2197
  ])
2196
2198
  ]),
2197
- e("div", Ka, [
2198
- p[13] || (p[13] = e("div", { class: "settings-title" }, "主题色", -1)),
2199
- e("div", ja, [
2200
- (a(), c(H, null, J(U, (L) => e("div", {
2199
+ e("div", Oa, [
2200
+ v[13] || (v[13] = e("div", { class: "settings-title" }, "主题色", -1)),
2201
+ e("div", Ra, [
2202
+ (o(), c(j, null, J(I, (L) => e("div", {
2201
2203
  key: L.value,
2202
2204
  class: Z(["color-option", { "is-active": l(i).primaryColor === L.value }]),
2203
- style: Pe({ backgroundColor: L.value }),
2205
+ style: Ue({ backgroundColor: L.value }),
2204
2206
  title: L.label,
2205
- onClick: (ot) => b(L.value)
2207
+ onClick: (tt) => b(L.value)
2206
2208
  }, [
2207
- l(i).primaryColor === L.value ? (a(), D(l(I), {
2209
+ l(i).primaryColor === L.value ? (o(), A(l(U), {
2208
2210
  key: 0,
2209
2211
  name: "check",
2210
2212
  size: 12,
2211
2213
  color: "#fff"
2212
- })) : P("", !0)
2213
- ], 14, Wa)), 64))
2214
+ })) : z("", !0)
2215
+ ], 14, Ka)), 64))
2214
2216
  ])
2215
2217
  ]),
2216
- e("div", qa, [
2217
- p[18] || (p[18] = e("div", { class: "settings-title" }, "功能设置", -1)),
2218
- e("div", Ha, [
2219
- e("div", Ya, [
2220
- p[15] || (p[15] = e("span", null, "灰色模式", -1)),
2218
+ e("div", ja, [
2219
+ v[18] || (v[18] = e("div", { class: "settings-title" }, "功能设置", -1)),
2220
+ e("div", Wa, [
2221
+ e("div", qa, [
2222
+ v[15] || (v[15] = e("span", null, "灰色模式", -1)),
2221
2223
  e("div", {
2222
2224
  class: Z(["switch-wrapper", { "is-checked": te.value }]),
2223
- onClick: ke
2224
- }, [...p[14] || (p[14] = [
2225
+ onClick: ve
2226
+ }, [...v[14] || (v[14] = [
2225
2227
  e("span", { class: "switch-core" }, null, -1)
2226
2228
  ])], 2)
2227
2229
  ]),
2228
- e("div", Ga, [
2229
- p[17] || (p[17] = e("span", null, "暗黑模式", -1)),
2230
+ e("div", Ha, [
2231
+ v[17] || (v[17] = e("span", null, "暗黑模式", -1)),
2230
2232
  e("div", {
2231
2233
  class: Z(["switch-wrapper", { "is-checked": l(i).isDark }]),
2232
- onClick: xe
2233
- }, [...p[16] || (p[16] = [
2234
+ onClick: ne
2235
+ }, [...v[16] || (v[16] = [
2234
2236
  e("span", { class: "switch-core" }, null, -1)
2235
2237
  ])], 2)
2236
2238
  ])
@@ -2243,130 +2245,130 @@ const _e = Fe("menu", () => {
2243
2245
  ]);
2244
2246
  };
2245
2247
  }
2246
- }), Ja = /* @__PURE__ */ ue(Xa, [["__scopeId", "data-v-ec17777f"]]), Za = {
2248
+ }), Ga = /* @__PURE__ */ de(Ya, [["__scopeId", "data-v-ec17777f"]]), Xa = {
2247
2249
  key: 0,
2248
2250
  class: "layout layout--sidebar"
2249
- }, Qa = { class: "layout__main" }, en = { class: "layout__header" }, tn = { class: "layout__content" }, sn = {
2251
+ }, Ja = { class: "layout__main" }, Za = { class: "layout__header" }, Qa = { class: "layout__content" }, en = {
2250
2252
  key: 1,
2251
2253
  class: "layout layout--top"
2252
- }, on = { class: "layout__top-menu" }, an = { class: "layout__main" }, nn = { class: "layout__content" }, ln = {
2254
+ }, tn = { class: "layout__top-menu" }, sn = { class: "layout__main" }, on = { class: "layout__content" }, an = {
2253
2255
  key: 2,
2254
2256
  class: "layout layout--mix"
2255
- }, rn = { class: "layout__mix-top-menu" }, cn = { class: "layout__mix-body" }, un = { class: "layout__content" }, dn = /* @__PURE__ */ ie({
2257
+ }, nn = { class: "layout__mix-top-menu" }, ln = { class: "layout__mix-body" }, rn = { class: "layout__content" }, cn = /* @__PURE__ */ ce({
2256
2258
  __name: "index",
2257
2259
  props: {
2258
2260
  logoSrc: {}
2259
2261
  },
2260
2262
  setup(t) {
2261
- const n = t, m = w(() => n.logoSrc || ze("/vite.svg")), o = he(), s = _e(), h = w(
2262
- () => o.isCollapsed ? "64px" : "210px"
2263
- ), i = w(() => o.layout), v = w(() => i.value === "mix"), d = w(() => i.value === "sidebar" ? s.menuList : i.value === "mix" ? o.mixSubMenus : []), f = w(() => v.value ? d.value.length > 0 : !1);
2264
- return (_, k) => {
2265
- const u = pt("router-view");
2266
- return a(), c(H, null, [
2267
- i.value === "sidebar" ? (a(), c("div", Za, [
2263
+ const n = t, m = k(() => n.logoSrc || Te("/vite.svg")), a = _e(), s = fe(), p = k(
2264
+ () => a.isCollapsed ? "64px" : "210px"
2265
+ ), i = k(() => a.layout), h = k(() => i.value === "mix"), d = k(() => i.value === "sidebar" ? s.menuList : i.value === "mix" ? a.mixSubMenus : []), f = k(() => h.value ? d.value.length > 0 : !1);
2266
+ return (_, g) => {
2267
+ const u = mt("router-view");
2268
+ return o(), c(j, null, [
2269
+ i.value === "sidebar" ? (o(), c("div", Xa, [
2268
2270
  e("aside", {
2269
2271
  class: "layout__aside",
2270
- style: Pe({ width: h.value })
2272
+ style: Ue({ width: p.value })
2271
2273
  }, [
2272
- y(rt, {
2274
+ w(lt, {
2273
2275
  "menu-list": d.value,
2274
2276
  "show-logo": !0,
2275
2277
  "show-user": !0,
2276
2278
  "logo-src": m.value
2277
2279
  }, null, 8, ["menu-list", "logo-src"])
2278
2280
  ], 4),
2279
- e("div", Qa, [
2280
- e("header", en, [
2281
- y(Zs)
2281
+ e("div", Ja, [
2282
+ e("header", Za, [
2283
+ w(Xs)
2282
2284
  ]),
2283
- e("main", tn, [
2284
- y(u)
2285
+ e("main", Qa, [
2286
+ w(u)
2285
2287
  ])
2286
2288
  ])
2287
- ])) : P("", !0),
2288
- i.value === "top" ? (a(), c("div", sn, [
2289
- e("div", on, [
2290
- y(la, { "logo-src": m.value }, null, 8, ["logo-src"])
2289
+ ])) : z("", !0),
2290
+ i.value === "top" ? (o(), c("div", en, [
2291
+ e("div", tn, [
2292
+ w(aa, { "logo-src": m.value }, null, 8, ["logo-src"])
2291
2293
  ]),
2292
- e("div", an, [
2293
- e("main", nn, [
2294
- y(u)
2294
+ e("div", sn, [
2295
+ e("main", on, [
2296
+ w(u)
2295
2297
  ])
2296
2298
  ])
2297
- ])) : P("", !0),
2298
- i.value === "mix" ? (a(), c("div", ln, [
2299
- e("div", rn, [
2300
- y(Ja, { "logo-src": m.value }, null, 8, ["logo-src"])
2299
+ ])) : z("", !0),
2300
+ i.value === "mix" ? (o(), c("div", an, [
2301
+ e("div", nn, [
2302
+ w(Ga, { "logo-src": m.value }, null, 8, ["logo-src"])
2301
2303
  ]),
2302
- e("div", cn, [
2303
- f.value ? (a(), c("aside", {
2304
+ e("div", ln, [
2305
+ f.value ? (o(), c("aside", {
2304
2306
  key: 0,
2305
2307
  class: "layout__aside",
2306
- style: Pe({ width: h.value })
2308
+ style: Ue({ width: p.value })
2307
2309
  }, [
2308
- y(rt, {
2310
+ w(lt, {
2309
2311
  "menu-list": d.value,
2310
2312
  "show-logo": !1,
2311
2313
  "show-user": !1
2312
2314
  }, null, 8, ["menu-list"])
2313
- ], 4)) : P("", !0),
2314
- e("main", un, [
2315
- y(u)
2315
+ ], 4)) : z("", !0),
2316
+ e("main", rn, [
2317
+ w(u)
2316
2318
  ])
2317
2319
  ])
2318
- ])) : P("", !0)
2320
+ ])) : z("", !0)
2319
2321
  ], 64);
2320
2322
  };
2321
2323
  }
2322
- }), ht = /* @__PURE__ */ ue(dn, [["__scopeId", "data-v-4e5f3bf5"]]), mn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2324
+ }), vt = /* @__PURE__ */ de(cn, [["__scopeId", "data-v-4e5f3bf5"]]), un = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2323
2325
  __proto__: null,
2324
- default: ht
2325
- }, Symbol.toStringTag, { value: "Module" })), pn = { class: "tabs-wrapper" }, vn = { class: "tab-label" }, hn = ["onClick"], _n = /* @__PURE__ */ ie({
2326
+ default: vt
2327
+ }, Symbol.toStringTag, { value: "Module" })), dn = { class: "tabs-wrapper" }, mn = { class: "tab-label" }, pn = ["onClick"], vn = /* @__PURE__ */ ce({
2326
2328
  __name: "Tabs",
2327
2329
  setup(t) {
2328
- const n = Ue(), m = be(), o = w(() => {
2329
- const v = [];
2330
+ const n = Ee(), m = be(), a = k(() => {
2331
+ const h = [];
2330
2332
  return n.matched.forEach((d) => {
2331
2333
  var f;
2332
- (f = d.meta) != null && f.affix && v.push({
2334
+ (f = d.meta) != null && f.affix && h.push({
2333
2335
  name: d.name,
2334
2336
  title: d.meta.title,
2335
2337
  path: d.path,
2336
2338
  affix: !0
2337
2339
  });
2338
- }), v;
2339
- }), s = w(() => n.path), h = (v) => {
2340
- m.push(v);
2341
- }, i = (v) => {
2342
- const d = o.value.find((f) => f.path === v);
2343
- if (!(d != null && d.affix) && v === s.value) {
2344
- const f = o.value.findIndex((k) => k.path === v), _ = o.value[f - 1] || o.value[f + 1];
2340
+ }), h;
2341
+ }), s = k(() => n.path), p = (h) => {
2342
+ m.push(h);
2343
+ }, i = (h) => {
2344
+ const d = a.value.find((f) => f.path === h);
2345
+ if (!(d != null && d.affix) && h === s.value) {
2346
+ const f = a.value.findIndex((g) => g.path === h), _ = a.value[f - 1] || a.value[f + 1];
2345
2347
  _ && m.push(_.path);
2346
2348
  }
2347
2349
  };
2348
- return (v, d) => (a(), c("div", pn, [
2349
- y(l(Tt), {
2350
+ return (h, d) => (o(), c("div", dn, [
2351
+ w(l(It), {
2350
2352
  modelValue: s.value,
2351
2353
  "onUpdate:modelValue": d[0] || (d[0] = (f) => s.value = f),
2352
2354
  type: "card",
2353
- onTabClick: h
2355
+ onTabClick: p
2354
2356
  }, {
2355
2357
  default: S(() => [
2356
- (a(!0), c(H, null, J(o.value, (f) => (a(), D(l(Pt), {
2358
+ (o(!0), c(j, null, J(a.value, (f) => (o(), A(l(Ut), {
2357
2359
  key: f.path,
2358
2360
  name: f.path,
2359
2361
  label: f.title,
2360
2362
  closable: !f.affix
2361
2363
  }, {
2362
2364
  label: S(() => [
2363
- e("span", vn, [
2365
+ e("span", mn, [
2364
2366
  Ce(x(f.title) + " ", 1),
2365
- f.affix ? P("", !0) : (a(), c("span", {
2367
+ f.affix ? z("", !0) : (o(), c("span", {
2366
2368
  key: 0,
2367
2369
  class: "tab-close",
2368
- onClick: Ve((_) => i(f.path), ["stop"])
2369
- }, " ✕ ", 8, hn))
2370
+ onClick: Ae((_) => i(f.path), ["stop"])
2371
+ }, " ✕ ", 8, pn))
2370
2372
  ])
2371
2373
  ]),
2372
2374
  _: 2
@@ -2376,16 +2378,16 @@ const _e = Fe("menu", () => {
2376
2378
  }, 8, ["modelValue"])
2377
2379
  ]));
2378
2380
  }
2379
- }), nl = /* @__PURE__ */ ue(_n, [["__scopeId", "data-v-0a4ca30d"]]), fn = {}, gn = { class: "footer" };
2380
- function yn(t, n) {
2381
- return a(), c("div", gn, [...n[0] || (n[0] = [
2381
+ }), ol = /* @__PURE__ */ de(vn, [["__scopeId", "data-v-0a4ca30d"]]), hn = {}, _n = { class: "footer" };
2382
+ function fn(t, n) {
2383
+ return o(), c("div", _n, [...n[0] || (n[0] = [
2382
2384
  e("span", null, "Copyright © 2024 Xto Demo. All Rights Reserved.", -1)
2383
2385
  ])]);
2384
2386
  }
2385
- const ll = /* @__PURE__ */ ue(fn, [["render", yn], ["__scopeId", "data-v-ac63e349"]]), bn = { class: "login-page" }, wn = { class: "login-form-section" }, kn = { class: "form-container" }, xn = { class: "input-wrapper" }, Cn = { class: "input-wrapper" }, $n = { class: "form-options" }, Ln = { key: 0 }, Mn = { key: 1 }, Sn = /* @__PURE__ */ ie({
2387
+ const al = /* @__PURE__ */ de(hn, [["render", fn], ["__scopeId", "data-v-ac63e349"]]), gn = { class: "login-page" }, yn = { class: "login-form-section" }, bn = { class: "form-container" }, wn = { class: "input-wrapper" }, kn = { class: "input-wrapper" }, xn = { class: "form-options" }, Cn = { key: 0 }, $n = { key: 1 }, Ln = /* @__PURE__ */ ce({
2386
2388
  __name: "index",
2387
2389
  setup(t) {
2388
- const n = be(), m = Ue(), o = g(!1), s = g(!1), h = Je({
2390
+ const n = be(), m = Ee(), a = y(!1), s = y(!1), p = Ge({
2389
2391
  uid: "",
2390
2392
  password: ""
2391
2393
  }), i = {
@@ -2396,55 +2398,55 @@ const ll = /* @__PURE__ */ ue(fn, [["render", yn], ["__scopeId", "data-v-ac63e34
2396
2398
  { required: !0, message: "请输入密码", trigger: "blur" },
2397
2399
  { min: 6, message: "密码长度至少6位", trigger: "blur" }
2398
2400
  ]
2399
- }, v = g(), d = async () => {
2401
+ }, h = y(), d = async () => {
2400
2402
  var f;
2401
2403
  try {
2402
- await ((f = v.value) == null ? void 0 : f.validate()), o.value = !0;
2403
- const _ = await wt({
2404
- appId: Ne(),
2405
- clientId: mt(),
2406
- uid: h.uid,
2407
- password: h.password,
2404
+ await ((f = h.value) == null ? void 0 : f.validate()), a.value = !0;
2405
+ const _ = await yt({
2406
+ appId: Me(),
2407
+ clientId: dt(),
2408
+ uid: p.uid,
2409
+ password: p.password,
2408
2410
  code: !0
2409
2411
  });
2410
- dt(_), zt.success("登录成功");
2411
- const k = m.query.redirect;
2412
- k ? n.push(k) : n.push({ name: "Dashboard" });
2412
+ ut(_), Tt.success("登录成功");
2413
+ const g = m.query.redirect;
2414
+ g ? n.push(g) : n.push({ name: "Dashboard" });
2413
2415
  } catch (_) {
2414
2416
  console.error("登录失败:", _);
2415
2417
  } finally {
2416
- o.value = !1;
2418
+ a.value = !1;
2417
2419
  }
2418
2420
  };
2419
- return (f, _) => (a(), c("div", bn, [
2420
- _[10] || (_[10] = Ae('<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)),
2421
- e("div", wn, [
2422
- e("div", kn, [
2421
+ return (f, _) => (o(), c("div", gn, [
2422
+ _[10] || (_[10] = Fe('<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)),
2423
+ e("div", yn, [
2424
+ e("div", bn, [
2423
2425
  _[7] || (_[7] = e("div", { class: "form-header" }, [
2424
2426
  e("h2", null, "欢迎登录"),
2425
2427
  e("p", null, "请输入您的账户信息")
2426
2428
  ], -1)),
2427
- y(l(Ft), {
2429
+ w(l(Pt), {
2428
2430
  ref_key: "formRef",
2429
- ref: v,
2430
- model: h,
2431
+ ref: h,
2432
+ model: p,
2431
2433
  rules: i,
2432
2434
  class: "login-form",
2433
2435
  "label-width": "0"
2434
2436
  }, {
2435
2437
  default: S(() => [
2436
- y(l(Oe), { prop: "uid" }, {
2438
+ w(l(Be), { prop: "uid" }, {
2437
2439
  default: S(() => [
2438
- e("div", xn, [
2440
+ e("div", wn, [
2439
2441
  _[3] || (_[3] = e("label", { class: "input-label" }, "用户名", -1)),
2440
- y(l(lt), {
2441
- modelValue: h.uid,
2442
- "onUpdate:modelValue": _[0] || (_[0] = (k) => h.uid = k),
2442
+ w(l(nt), {
2443
+ modelValue: p.uid,
2444
+ "onUpdate:modelValue": _[0] || (_[0] = (g) => p.uid = g),
2443
2445
  placeholder: "请输入用户名",
2444
2446
  size: "large"
2445
2447
  }, {
2446
2448
  prefix: S(() => [
2447
- y(l(I), {
2449
+ w(l(U), {
2448
2450
  name: "user",
2449
2451
  size: 18
2450
2452
  })
@@ -2455,21 +2457,21 @@ const ll = /* @__PURE__ */ ue(fn, [["render", yn], ["__scopeId", "data-v-ac63e34
2455
2457
  ]),
2456
2458
  _: 1
2457
2459
  }),
2458
- y(l(Oe), { prop: "password" }, {
2460
+ w(l(Be), { prop: "password" }, {
2459
2461
  default: S(() => [
2460
- e("div", Cn, [
2462
+ e("div", kn, [
2461
2463
  _[4] || (_[4] = e("label", { class: "input-label" }, "密码", -1)),
2462
- y(l(lt), {
2463
- modelValue: h.password,
2464
- "onUpdate:modelValue": _[1] || (_[1] = (k) => h.password = k),
2464
+ w(l(nt), {
2465
+ modelValue: p.password,
2466
+ "onUpdate:modelValue": _[1] || (_[1] = (g) => p.password = g),
2465
2467
  type: "password",
2466
2468
  placeholder: "请输入密码",
2467
2469
  size: "large",
2468
2470
  "show-password": "",
2469
- onKeyup: It(d, ["enter"])
2471
+ onKeyup: Nt(d, ["enter"])
2470
2472
  }, {
2471
2473
  prefix: S(() => [
2472
- y(l(I), {
2474
+ w(l(U), {
2473
2475
  name: "lock",
2474
2476
  size: 18
2475
2477
  })
@@ -2480,10 +2482,10 @@ const ll = /* @__PURE__ */ ue(fn, [["render", yn], ["__scopeId", "data-v-ac63e34
2480
2482
  ]),
2481
2483
  _: 1
2482
2484
  }),
2483
- e("div", $n, [
2484
- y(l(Dt), {
2485
+ e("div", xn, [
2486
+ w(l(zt), {
2485
2487
  modelValue: s.value,
2486
- "onUpdate:modelValue": _[2] || (_[2] = (k) => s.value = k)
2488
+ "onUpdate:modelValue": _[2] || (_[2] = (g) => s.value = g)
2487
2489
  }, {
2488
2490
  default: S(() => [..._[5] || (_[5] = [
2489
2491
  Ce("记住我", -1)
@@ -2495,17 +2497,17 @@ const ll = /* @__PURE__ */ ue(fn, [["render", yn], ["__scopeId", "data-v-ac63e34
2495
2497
  class: "forgot-link"
2496
2498
  }, "忘记密码?", -1))
2497
2499
  ]),
2498
- y(l(Oe), null, {
2500
+ w(l(Be), null, {
2499
2501
  default: S(() => [
2500
- y(l(Ie), {
2502
+ w(l(Ne), {
2501
2503
  type: "primary",
2502
2504
  size: "large",
2503
- loading: o.value,
2505
+ loading: a.value,
2504
2506
  class: "login-btn",
2505
2507
  onClick: d
2506
2508
  }, {
2507
2509
  default: S(() => [
2508
- o.value ? (a(), c("span", Mn, "登录中...")) : (a(), c("span", Ln, "登 录"))
2510
+ a.value ? (o(), c("span", $n, "登录中...")) : (o(), c("span", Cn, "登 录"))
2509
2511
  ]),
2510
2512
  _: 1
2511
2513
  }, 8, ["loading"])
@@ -2515,7 +2517,7 @@ const ll = /* @__PURE__ */ ue(fn, [["render", yn], ["__scopeId", "data-v-ac63e34
2515
2517
  ]),
2516
2518
  _: 1
2517
2519
  }, 8, ["model"]),
2518
- _[8] || (_[8] = Ae('<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))
2520
+ _[8] || (_[8] = Fe('<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))
2519
2521
  ]),
2520
2522
  _[9] || (_[9] = e("div", { class: "copyright" }, [
2521
2523
  e("p", null, "© 2024 XTO Team. All rights reserved.")
@@ -2523,26 +2525,26 @@ const ll = /* @__PURE__ */ ue(fn, [["render", yn], ["__scopeId", "data-v-ac63e34
2523
2525
  ])
2524
2526
  ]));
2525
2527
  }
2526
- }), Nn = /* @__PURE__ */ ue(Sn, [["__scopeId", "data-v-20b19b53"]]), En = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2528
+ }), Mn = /* @__PURE__ */ de(Ln, [["__scopeId", "data-v-20b19b53"]]), Sn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2527
2529
  __proto__: null,
2528
- default: Nn
2529
- }, Symbol.toStringTag, { value: "Module" })), In = { class: "error-page" }, Un = { class: "error-container" }, Tn = { class: "error-content" }, Pn = { class: "error-actions" }, zn = /* @__PURE__ */ ie({
2530
+ default: Mn
2531
+ }, Symbol.toStringTag, { value: "Module" })), Nn = { class: "error-page" }, En = { class: "error-container" }, In = { class: "error-content" }, Un = { class: "error-actions" }, Tn = /* @__PURE__ */ ce({
2530
2532
  __name: "404",
2531
2533
  setup(t) {
2532
2534
  const n = be(), m = () => {
2533
2535
  n.push("/");
2534
2536
  };
2535
- return (o, s) => (a(), c("div", In, [
2536
- e("div", Un, [
2537
+ return (a, s) => (o(), c("div", Nn, [
2538
+ e("div", En, [
2537
2539
  s[7] || (s[7] = e("div", { class: "error-bg" }, [
2538
2540
  e("div", { class: "bg-circle circle-1" }),
2539
2541
  e("div", { class: "bg-circle circle-2" }),
2540
2542
  e("div", { class: "bg-circle circle-3" })
2541
2543
  ], -1)),
2542
- e("div", Tn, [
2543
- s[5] || (s[5] = Ae('<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)),
2544
- e("div", Pn, [
2545
- y(l(Ie), {
2544
+ e("div", In, [
2545
+ s[5] || (s[5] = Fe('<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)),
2546
+ e("div", Un, [
2547
+ w(l(Ne), {
2546
2548
  type: "primary",
2547
2549
  size: "large",
2548
2550
  onClick: m
@@ -2563,9 +2565,9 @@ const ll = /* @__PURE__ */ ue(fn, [["render", yn], ["__scopeId", "data-v-ac63e34
2563
2565
  ]),
2564
2566
  _: 1
2565
2567
  }),
2566
- y(l(Ie), {
2568
+ w(l(Ne), {
2567
2569
  size: "large",
2568
- onClick: s[0] || (s[0] = (h) => l(n).go(-1))
2570
+ onClick: s[0] || (s[0] = (p) => l(n).go(-1))
2569
2571
  }, {
2570
2572
  icon: S(() => [...s[3] || (s[3] = [
2571
2573
  e("svg", {
@@ -2595,26 +2597,26 @@ const ll = /* @__PURE__ */ ue(fn, [["render", yn], ["__scopeId", "data-v-ac63e34
2595
2597
  ])
2596
2598
  ]));
2597
2599
  }
2598
- }), Fn = /* @__PURE__ */ ue(zn, [["__scopeId", "data-v-c36cc0ad"]]), _t = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2600
+ }), Pn = /* @__PURE__ */ de(Tn, [["__scopeId", "data-v-c36cc0ad"]]), ht = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2599
2601
  __proto__: null,
2600
- default: Fn
2601
- }, Symbol.toStringTag, { value: "Module" })), Dn = { class: "error-page" }, An = { class: "error-container" }, Bn = { class: "error-content" }, Vn = { class: "error-actions" }, On = /* @__PURE__ */ ie({
2602
+ default: Pn
2603
+ }, Symbol.toStringTag, { value: "Module" })), zn = { class: "error-page" }, Fn = { class: "error-container" }, Dn = { class: "error-content" }, An = { class: "error-actions" }, Bn = /* @__PURE__ */ ce({
2602
2604
  __name: "403",
2603
2605
  setup(t) {
2604
2606
  const n = be(), m = () => {
2605
2607
  n.push("/");
2606
2608
  };
2607
- return (o, s) => (a(), c("div", Dn, [
2608
- e("div", An, [
2609
+ return (a, s) => (o(), c("div", zn, [
2610
+ e("div", Fn, [
2609
2611
  s[7] || (s[7] = e("div", { class: "error-bg" }, [
2610
2612
  e("div", { class: "bg-circle circle-1" }),
2611
2613
  e("div", { class: "bg-circle circle-2" }),
2612
2614
  e("div", { class: "bg-circle circle-3" })
2613
2615
  ], -1)),
2614
- e("div", Bn, [
2615
- s[5] || (s[5] = Ae('<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)),
2616
- e("div", Vn, [
2617
- y(l(Ie), {
2616
+ e("div", Dn, [
2617
+ s[5] || (s[5] = Fe('<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)),
2618
+ e("div", An, [
2619
+ w(l(Ne), {
2618
2620
  type: "primary",
2619
2621
  size: "large",
2620
2622
  onClick: m
@@ -2635,9 +2637,9 @@ const ll = /* @__PURE__ */ ue(fn, [["render", yn], ["__scopeId", "data-v-ac63e34
2635
2637
  ]),
2636
2638
  _: 1
2637
2639
  }),
2638
- y(l(Ie), {
2640
+ w(l(Ne), {
2639
2641
  size: "large",
2640
- onClick: s[0] || (s[0] = (h) => l(n).go(-1))
2642
+ onClick: s[0] || (s[0] = (p) => l(n).go(-1))
2641
2643
  }, {
2642
2644
  icon: S(() => [...s[3] || (s[3] = [
2643
2645
  e("svg", {
@@ -2667,15 +2669,15 @@ const ll = /* @__PURE__ */ ue(fn, [["render", yn], ["__scopeId", "data-v-ac63e34
2667
2669
  ])
2668
2670
  ]));
2669
2671
  }
2670
- }), rl = /* @__PURE__ */ ue(On, [["__scopeId", "data-v-e6e1f7ac"]]);
2671
- function il() {
2672
- const t = he(), n = ce(), m = De(), o = w(() => n.userName || ""), s = w(() => n.userInfo), h = w(() => t.appName), i = w(() => m.isLoggedIn), v = w(() => t.isDark), d = w(() => t.theme), f = w(() => t.isCollapsed), _ = w(() => t.layout);
2672
+ }), nl = /* @__PURE__ */ de(Bn, [["__scopeId", "data-v-e6e1f7ac"]]);
2673
+ function ll() {
2674
+ const t = _e(), n = ue(), m = ze(), a = k(() => n.userName || ""), s = k(() => n.userInfo), p = k(() => t.appName), i = k(() => m.isLoggedIn), h = k(() => t.isDark), d = k(() => t.theme), f = k(() => t.isCollapsed), _ = k(() => t.layout);
2673
2675
  return {
2674
- userName: o,
2676
+ userName: a,
2675
2677
  userInfo: s,
2676
- appName: h,
2678
+ appName: p,
2677
2679
  isLoggedIn: i,
2678
- isDark: v,
2680
+ isDark: h,
2679
2681
  theme: d,
2680
2682
  isCollapsed: f,
2681
2683
  layout: _,
@@ -2687,124 +2689,124 @@ function il() {
2687
2689
  }
2688
2690
  };
2689
2691
  }
2690
- function cl() {
2691
- const t = ce();
2692
+ function rl() {
2693
+ const t = ue();
2692
2694
  return {
2693
- isLoggedIn: w(() => t.isLoggedIn)
2695
+ isLoggedIn: k(() => t.isLoggedIn)
2694
2696
  };
2695
2697
  }
2696
- function ul(t, n = {}) {
2697
- const { rules: m, onSubmit: o } = n, s = g(), h = Je({ ...t }), i = g(!1), v = g(!1), d = g(!1), f = () => {
2698
- u(), d.value = !1, v.value = !0;
2699
- }, _ = (A) => {
2700
- Object.assign(h, A), d.value = !0, v.value = !0;
2701
- }, k = () => {
2702
- v.value = !1, u();
2698
+ function il(t, n = {}) {
2699
+ const { rules: m, onSubmit: a } = n, s = y(), p = Ge({ ...t }), i = y(!1), h = y(!1), d = y(!1), f = () => {
2700
+ u(), d.value = !1, h.value = !0;
2701
+ }, _ = (P) => {
2702
+ Object.assign(p, P), d.value = !0, h.value = !0;
2703
+ }, g = () => {
2704
+ h.value = !1, u();
2703
2705
  }, u = () => {
2704
- var A;
2705
- Object.keys(t).forEach((j) => {
2706
- h[j] = t[j];
2707
- }), (A = s.value) == null || A.resetFields();
2706
+ var P;
2707
+ Object.keys(t).forEach((B) => {
2708
+ p[B] = t[B];
2709
+ }), (P = s.value) == null || P.resetFields();
2708
2710
  };
2709
2711
  return {
2710
2712
  formRef: s,
2711
- formData: h,
2713
+ formData: p,
2712
2714
  rules: m,
2713
2715
  loading: i,
2714
- visible: v,
2716
+ visible: h,
2715
2717
  isEdit: d,
2716
2718
  openAdd: f,
2717
2719
  openEdit: _,
2718
- close: k,
2720
+ close: g,
2719
2721
  resetForm: u,
2720
2722
  handleSubmit: async () => {
2721
- var A;
2723
+ var P;
2722
2724
  try {
2723
- await ((A = s.value) == null ? void 0 : A.validate()), i.value = !0, await (o == null ? void 0 : o(h)), k();
2724
- } catch (j) {
2725
- console.error(j);
2725
+ await ((P = s.value) == null ? void 0 : P.validate()), i.value = !0, await (a == null ? void 0 : a(p)), g();
2726
+ } catch (B) {
2727
+ console.error(B);
2726
2728
  } finally {
2727
2729
  i.value = !1;
2728
2730
  }
2729
2731
  }
2730
2732
  };
2731
2733
  }
2732
- function dl(t) {
2733
- const { fetchData: n, defaultPageSize: m = 10 } = t, o = g(!1), s = g([]), h = g(0), i = g(1), v = g(m), d = Je({}), f = async () => {
2734
- o.value = !0;
2734
+ function cl(t) {
2735
+ const { fetchData: n, defaultPageSize: m = 10 } = t, a = y(!1), s = y([]), p = y(0), i = y(1), h = y(m), d = Ge({}), f = async () => {
2736
+ a.value = !0;
2735
2737
  try {
2736
- const B = {
2738
+ const V = {
2737
2739
  ...d,
2738
2740
  page: i.value,
2739
- pageSize: v.value
2740
- }, W = await n(B);
2741
- s.value = W.list, h.value = W.total;
2742
- } catch (B) {
2743
- console.error(B);
2741
+ pageSize: h.value
2742
+ }, R = await n(V);
2743
+ s.value = R.list, p.value = R.total;
2744
+ } catch (V) {
2745
+ console.error(V);
2744
2746
  } finally {
2745
- o.value = !1;
2747
+ a.value = !1;
2746
2748
  }
2747
2749
  }, _ = () => {
2748
2750
  i.value = 1, f();
2749
- }, k = () => {
2750
- Object.keys(d).forEach((B) => {
2751
- d[B] = void 0;
2751
+ }, g = () => {
2752
+ Object.keys(d).forEach((V) => {
2753
+ d[V] = void 0;
2752
2754
  }), i.value = 1, f();
2753
- }, u = (B) => {
2754
- i.value = B, f();
2755
- }, K = (B) => {
2756
- v.value = B, i.value = 1, f();
2757
- }, A = () => {
2755
+ }, u = (V) => {
2756
+ i.value = V, f();
2757
+ }, W = (V) => {
2758
+ h.value = V, i.value = 1, f();
2759
+ }, P = () => {
2758
2760
  f();
2759
- }, j = w(() => ({
2761
+ }, B = k(() => ({
2760
2762
  current: i.value,
2761
- pageSize: v.value,
2762
- total: h.value
2763
+ pageSize: h.value,
2764
+ total: p.value
2763
2765
  }));
2764
2766
  return {
2765
- loading: o,
2767
+ loading: a,
2766
2768
  data: s,
2767
- total: h,
2769
+ total: p,
2768
2770
  currentPage: i,
2769
- pageSize: v,
2771
+ pageSize: h,
2770
2772
  searchParams: d,
2771
- pagination: j,
2773
+ pagination: B,
2772
2774
  getData: f,
2773
2775
  handleSearch: _,
2774
- handleReset: k,
2776
+ handleReset: g,
2775
2777
  handlePageChange: u,
2776
- handleSizeChange: K,
2777
- refresh: A
2778
+ handleSizeChange: W,
2779
+ refresh: P
2778
2780
  };
2779
2781
  }
2780
- const st = Fe("locale", () => {
2781
- const t = T.get("locale") || "zh-CN", n = At(t), m = g(t), o = Bt(), { t: s, messages: h, setLocale: i, mergeMessages: v } = Vt(), d = w(() => {
2782
- const u = o.find((K) => K.code === m.value);
2782
+ const et = Pe("locale", () => {
2783
+ const t = T.get("locale") || "zh-CN", n = Ft(t), m = y(t), a = Dt(), { t: s, messages: p, setLocale: i, mergeMessages: h } = At(), d = k(() => {
2784
+ const u = a.find((W) => W.code === m.value);
2783
2785
  return (u == null ? void 0 : u.name) || m.value;
2784
2786
  });
2785
2787
  return {
2786
2788
  locale: m,
2787
2789
  localeName: d,
2788
- locales: o,
2789
- messages: h,
2790
+ locales: a,
2791
+ messages: p,
2790
2792
  t: s,
2791
2793
  changeLocale: (u) => {
2792
2794
  m.value = u, i(u), T.set("locale", u), n.setLocale(u);
2793
2795
  },
2794
2796
  addMessages: (u) => {
2795
- v(u);
2797
+ h(u);
2796
2798
  },
2797
2799
  initLocale: () => {
2798
2800
  i(t);
2799
2801
  },
2800
2802
  provider: n
2801
2803
  };
2802
- }), Rn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2804
+ }), Vn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
2803
2805
  __proto__: null,
2804
- useLocaleStore: st
2806
+ useLocaleStore: et
2805
2807
  }, Symbol.toStringTag, { value: "Module" }));
2806
- function ml() {
2807
- const t = st();
2808
+ function ul() {
2809
+ const t = et();
2808
2810
  return {
2809
2811
  /** 当前语言代码 */
2810
2812
  locale: t.locale,
@@ -2822,39 +2824,39 @@ function ml() {
2822
2824
  addMessages: t.addMessages
2823
2825
  };
2824
2826
  }
2825
- function pl() {
2826
- return st().t;
2827
+ function dl() {
2828
+ return et().t;
2827
2829
  }
2828
- function vl(t) {
2829
- const n = ce(), m = _e();
2830
+ function ml(t) {
2831
+ const n = ue(), m = fe();
2830
2832
  return n.isLoggedIn ? m.hasPermission(t) : !1;
2831
2833
  }
2832
- function hl(t) {
2833
- return ce().isLoggedIn;
2834
+ function pl(t) {
2835
+ return ue().isLoggedIn;
2834
2836
  }
2835
- function _l() {
2837
+ function vl() {
2836
2838
  return !0;
2837
2839
  }
2838
- const ft = [
2840
+ const _t = [
2839
2841
  {
2840
2842
  path: "/login",
2841
2843
  name: "Login",
2842
- component: () => Promise.resolve().then(() => En),
2844
+ component: () => Promise.resolve().then(() => Sn),
2843
2845
  meta: {
2844
2846
  title: "登录",
2845
2847
  hidden: !0
2846
2848
  }
2847
2849
  }
2848
- ], gt = {
2850
+ ], ft = {
2849
2851
  path: "/",
2850
2852
  name: "Layout",
2851
- component: () => Promise.resolve().then(() => mn),
2853
+ component: () => Promise.resolve().then(() => un),
2852
2854
  redirect: "/dashboard",
2853
2855
  children: [
2854
2856
  {
2855
2857
  path: "/dashboard",
2856
2858
  name: "Dashboard",
2857
- component: () => import("./index-Biperpfs.js"),
2859
+ component: () => import("./index-cytRUeAK.js"),
2858
2860
  meta: {
2859
2861
  title: "仪表盘",
2860
2862
  icon: "dashboard",
@@ -2865,7 +2867,7 @@ const ft = [
2865
2867
  {
2866
2868
  path: "/system/user",
2867
2869
  name: "SystemUser",
2868
- component: () => import("./index-BL_15V_t.js"),
2870
+ component: () => import("./index-CsQthEv2.js"),
2869
2871
  meta: {
2870
2872
  title: "用户管理",
2871
2873
  icon: "user",
@@ -2875,7 +2877,7 @@ const ft = [
2875
2877
  {
2876
2878
  path: "/system/role",
2877
2879
  name: "SystemRole",
2878
- component: () => import("./index-Bv0RBhQX.js"),
2880
+ component: () => import("./index-C4x3PSxY.js"),
2879
2881
  meta: {
2880
2882
  title: "角色管理",
2881
2883
  icon: "role",
@@ -2885,7 +2887,7 @@ const ft = [
2885
2887
  {
2886
2888
  path: "/system/menu",
2887
2889
  name: "SystemMenu",
2888
- component: () => import("./index-BTlDtwrl.js"),
2890
+ component: () => import("./index-BYChodrz.js"),
2889
2891
  meta: {
2890
2892
  title: "菜单管理",
2891
2893
  icon: "menu",
@@ -2896,18 +2898,18 @@ const ft = [
2896
2898
  {
2897
2899
  path: "/:pathMatch(.*)*",
2898
2900
  name: "CatchAll",
2899
- component: () => Promise.resolve().then(() => _t),
2901
+ component: () => Promise.resolve().then(() => ht),
2900
2902
  meta: {
2901
2903
  title: "404",
2902
2904
  hidden: !0
2903
2905
  }
2904
2906
  }
2905
2907
  ]
2906
- }, fl = [
2908
+ }, hl = [
2907
2909
  {
2908
2910
  path: "/dashboard",
2909
2911
  name: "Dashboard",
2910
- component: () => import("./index-Biperpfs.js"),
2912
+ component: () => import("./index-cytRUeAK.js"),
2911
2913
  meta: {
2912
2914
  title: "仪表盘",
2913
2915
  icon: "dashboard",
@@ -2927,7 +2929,7 @@ const ft = [
2927
2929
  {
2928
2930
  path: "user",
2929
2931
  name: "SystemUser",
2930
- component: () => import("./index-BL_15V_t.js"),
2932
+ component: () => import("./index-CsQthEv2.js"),
2931
2933
  meta: {
2932
2934
  title: "用户管理",
2933
2935
  icon: "user",
@@ -2937,7 +2939,7 @@ const ft = [
2937
2939
  {
2938
2940
  path: "role",
2939
2941
  name: "SystemRole",
2940
- component: () => import("./index-Bv0RBhQX.js"),
2942
+ component: () => import("./index-C4x3PSxY.js"),
2941
2943
  meta: {
2942
2944
  title: "角色管理",
2943
2945
  icon: "role",
@@ -2947,7 +2949,7 @@ const ft = [
2947
2949
  {
2948
2950
  path: "menu",
2949
2951
  name: "SystemMenu",
2950
- component: () => import("./index-BTlDtwrl.js"),
2952
+ component: () => import("./index-BYChodrz.js"),
2951
2953
  meta: {
2952
2954
  title: "菜单管理",
2953
2955
  icon: "menu",
@@ -2956,7 +2958,7 @@ const ft = [
2956
2958
  }
2957
2959
  ]
2958
2960
  }
2959
- ], Kn = [
2961
+ ], On = [
2960
2962
  {
2961
2963
  menuCode: "dashboard",
2962
2964
  menuName: "仪表盘",
@@ -3004,20 +3006,20 @@ const ft = [
3004
3006
  }
3005
3007
  ]
3006
3008
  }
3007
- ], yt = Ze({
3008
- history: Qe(),
3009
- routes: [...ft, gt],
3009
+ ], gt = Xe({
3010
+ history: Je(),
3011
+ routes: [..._t, ft],
3010
3012
  scrollBehavior: () => ({ left: 0, top: 0 })
3011
- }), jn = ["/login"];
3012
- yt.beforeEach(async (t, n, m) => {
3013
- const o = he();
3014
- if (o.initTheme(), ct())
3013
+ }), Rn = ["/login"];
3014
+ gt.beforeEach(async (t, n, m) => {
3015
+ const a = _e();
3016
+ if (a.initTheme(), it())
3015
3017
  if (t.path === "/login")
3016
3018
  m({ path: "/" });
3017
3019
  else {
3018
- const s = ce();
3020
+ const s = ue();
3019
3021
  s.isLoggedIn || (s.setUserInfo({
3020
- appId: Ne(),
3022
+ appId: Me(),
3021
3023
  userId: "1",
3022
3024
  userName: "管理员",
3023
3025
  departmentName: "技术部",
@@ -3025,23 +3027,23 @@ yt.beforeEach(async (t, n, m) => {
3025
3027
  mobilePhone: "13800138000",
3026
3028
  positionName: "管理员",
3027
3029
  avatar: ""
3028
- }), _e().setMenuList(Kn)), t.name && t.meta.keepAlive && o.addCachedView(t.name), m();
3030
+ }), fe().setMenuList(On)), t.name && t.meta.keepAlive && a.addCachedView(t.name), m();
3029
3031
  }
3030
3032
  else
3031
- jn.includes(t.path) ? m() : m("/login");
3033
+ Rn.includes(t.path) ? m() : m("/login");
3032
3034
  });
3033
- function gl() {
3034
- const t = Ze({
3035
- history: Qe(),
3036
- routes: [...ft, gt]
3035
+ function _l() {
3036
+ const t = Xe({
3037
+ history: Je(),
3038
+ routes: [..._t, ft]
3037
3039
  });
3038
- yt.matcher = t.matcher;
3040
+ gt.matcher = t.matcher;
3039
3041
  }
3040
- function yl(t, n = {}) {
3041
- const m = n.indexPath || "/dashboard", o = n.logoSrc, s = {
3042
+ function fl(t, n = {}) {
3043
+ const m = n.indexPath || "/dashboard", a = n.logoSrc, s = {
3042
3044
  path: "/:pathMatch(.*)*",
3043
3045
  name: "CatchAll",
3044
- component: () => Promise.resolve().then(() => _t),
3046
+ component: () => Promise.resolve().then(() => ht),
3045
3047
  meta: {
3046
3048
  title: "404"
3047
3049
  }
@@ -3049,84 +3051,84 @@ function yl(t, n = {}) {
3049
3051
  return {
3050
3052
  path: "/",
3051
3053
  name: "Layout",
3052
- component: ie({
3054
+ component: ce({
3053
3055
  name: "LayoutWrapper",
3054
3056
  render() {
3055
- return Ut(ht, { logoSrc: o || ze("/vite.svg") });
3057
+ return Et(vt, { logoSrc: a || Te("/vite.svg") });
3056
3058
  }
3057
3059
  }),
3058
3060
  redirect: m,
3059
3061
  children: [...t, s]
3060
3062
  };
3061
3063
  }
3062
- function bl(t, n = {}) {
3063
- const m = n.base || kt();
3064
- return Ze({
3065
- history: Qe(m),
3064
+ function gl(t, n = {}) {
3065
+ const m = n.base || bt();
3066
+ return Xe({
3067
+ history: Je(m),
3066
3068
  routes: t,
3067
3069
  scrollBehavior: () => ({ left: 0, top: 0 })
3068
3070
  });
3069
3071
  }
3070
- const Wn = ["login", "404", "403", "/login", "/404", "/403"];
3071
- function qn(t, n) {
3072
+ const Kn = ["login", "404", "403", "/login", "/404", "/403"];
3073
+ function jn(t, n) {
3072
3074
  if (n.includes(t)) return !0;
3073
3075
  const m = t.startsWith("/") ? t.slice(1) : t;
3074
3076
  return n.includes(m);
3075
3077
  }
3076
- function wl(t, n = {}) {
3077
- const m = n.whiteList || Wn;
3078
- t.beforeEach(async (o, s, h) => {
3079
- const i = he(), v = ce(), d = _e(), f = i.loginPath || n.loginPath || "/login";
3080
- if (i.initTheme(), it())
3081
- if (o.path === f || o.name === "Login")
3082
- h({ name: "Dashboard" });
3083
- else if (v.isLoggedIn) {
3078
+ function yl(t, n = {}) {
3079
+ const m = n.whiteList || Kn;
3080
+ t.beforeEach(async (a, s, p) => {
3081
+ const i = _e(), h = ue(), d = fe(), f = i.loginPath || n.loginPath || "/login";
3082
+ if (i.initTheme(), rt())
3083
+ if (a.path === f || a.name === "Login")
3084
+ p({ name: "Dashboard" });
3085
+ else if (h.isLoggedIn) {
3084
3086
  if (!d.hasMenu)
3085
3087
  try {
3086
- const k = n.fetchMenu ? await n.fetchMenu() : await at(n.appId);
3087
- d.setMenuList(k);
3088
- } catch (k) {
3089
- console.warn("补拉菜单失败:", k);
3088
+ const g = n.fetchMenu ? await n.fetchMenu() : await ot(n.appId);
3089
+ d.setMenuList(g);
3090
+ } catch (g) {
3091
+ console.warn("补拉菜单失败:", g);
3090
3092
  }
3091
- o.name && o.meta.keepAlive && i.addCachedView(o.name), h();
3093
+ a.name && a.meta.keepAlive && i.addCachedView(a.name), p();
3092
3094
  } else
3093
3095
  try {
3094
3096
  if (n.fetchUserInfo) {
3095
- const k = await n.fetchUserInfo();
3096
- v.setUserInfo(k);
3097
+ const g = await n.fetchUserInfo();
3098
+ h.setUserInfo(g);
3097
3099
  } else {
3098
- const k = await xt();
3099
- v.setUserInfo(k);
3100
+ const g = await wt();
3101
+ h.setUserInfo(g);
3100
3102
  }
3101
3103
  if (n.fetchMenu) {
3102
- const k = await n.fetchMenu();
3103
- d.setMenuList(k);
3104
+ const g = await n.fetchMenu();
3105
+ d.setMenuList(g);
3104
3106
  } else {
3105
- const k = await at(n.appId);
3106
- d.setMenuList(k);
3107
+ const g = await ot(n.appId);
3108
+ d.setMenuList(g);
3107
3109
  }
3108
- n.onLoginSuccess && n.onLoginSuccess(), o.name && o.meta.keepAlive && i.addCachedView(o.name), h({ ...o, replace: !0 });
3109
- } catch (k) {
3110
- console.error("获取用户信息失败:", k), v.clearUserInfo(), d.clearMenu(), ut(), h({ name: "Login", query: { redirect: o.fullPath } });
3110
+ n.onLoginSuccess && n.onLoginSuccess(), a.name && a.meta.keepAlive && i.addCachedView(a.name), p({ ...a, replace: !0 });
3111
+ } catch (g) {
3112
+ console.error("获取用户信息失败:", g), h.clearUserInfo(), d.clearMenu(), ct(), p({ name: "Login", query: { redirect: a.fullPath } });
3111
3113
  }
3112
3114
  else
3113
- qn(o.path, m) || o.name === "Login" || o.name === "NotFound" || o.name === "Forbidden" ? h() : h({ name: "Login", query: { redirect: o.fullPath } });
3115
+ jn(a.path, m) || a.name === "Login" || a.name === "NotFound" || a.name === "Forbidden" ? p() : p({ name: "Login", query: { redirect: a.fullPath } });
3114
3116
  }), t.afterEach(() => {
3115
3117
  });
3116
3118
  }
3117
- var Hn = /* @__PURE__ */ ((t) => (t[t.ENABLED = 1] = "ENABLED", t[t.DISABLED = 0] = "DISABLED", t))(Hn || {}), Yn = /* @__PURE__ */ ((t) => (t[t.UNKNOWN = 0] = "UNKNOWN", t[t.MALE = 1] = "MALE", t[t.FEMALE = 2] = "FEMALE", t))(Yn || {}), Gn = /* @__PURE__ */ ((t) => (t[t.DIRECTORY = 0] = "DIRECTORY", t[t.MENU = 1] = "MENU", t[t.BUTTON = 2] = "BUTTON", t))(Gn || {});
3118
- const kl = {
3119
+ var Wn = /* @__PURE__ */ ((t) => (t[t.ENABLED = 1] = "ENABLED", t[t.DISABLED = 0] = "DISABLED", t))(Wn || {}), qn = /* @__PURE__ */ ((t) => (t[t.UNKNOWN = 0] = "UNKNOWN", t[t.MALE = 1] = "MALE", t[t.FEMALE = 2] = "FEMALE", t))(qn || {}), Hn = /* @__PURE__ */ ((t) => (t[t.DIRECTORY = 0] = "DIRECTORY", t[t.MENU = 1] = "MENU", t[t.BUTTON = 2] = "BUTTON", t))(Hn || {});
3120
+ const bl = {
3119
3121
  1: "启用",
3120
3122
  0: "禁用"
3121
- }, xl = {
3123
+ }, wl = {
3122
3124
  0: "未知",
3123
3125
  1: "男",
3124
3126
  2: "女"
3125
- }, Cl = {
3127
+ }, kl = {
3126
3128
  0: "目录",
3127
3129
  1: "菜单",
3128
3130
  2: "按钮"
3129
- }, $l = [
3131
+ }, xl = [
3130
3132
  {
3131
3133
  label: "启用",
3132
3134
  value: 1
@@ -3137,7 +3139,7 @@ const kl = {
3137
3139
  value: 0
3138
3140
  /* DISABLED */
3139
3141
  }
3140
- ], Ll = [
3142
+ ], Cl = [
3141
3143
  {
3142
3144
  label: "未知",
3143
3145
  value: 0
@@ -3153,7 +3155,7 @@ const kl = {
3153
3155
  value: 2
3154
3156
  /* FEMALE */
3155
3157
  }
3156
- ], Ml = [
3158
+ ], $l = [
3157
3159
  {
3158
3160
  label: "目录",
3159
3161
  value: 0
@@ -3169,49 +3171,49 @@ const kl = {
3169
3171
  value: 2
3170
3172
  /* BUTTON */
3171
3173
  }
3172
- ], Sl = {
3174
+ ], Ll = {
3173
3175
  mounted(t, n) {
3174
- var i, v;
3175
- const m = ce(), o = _e();
3176
+ var i, h;
3177
+ const m = ue(), a = fe();
3176
3178
  if (!m.isLoggedIn) {
3177
3179
  (i = t.parentNode) == null || i.removeChild(t);
3178
3180
  return;
3179
3181
  }
3180
- const s = n.value, h = Array.isArray(s) ? s : [s];
3181
- o.hasPermission(h) || (v = t.parentNode) == null || v.removeChild(t);
3182
+ const s = n.value, p = Array.isArray(s) ? s : [s];
3183
+ a.hasPermission(p) || (h = t.parentNode) == null || h.removeChild(t);
3182
3184
  }
3183
3185
  };
3184
- async function Nl(t) {
3185
- await Ct(t.basePath);
3186
- const n = nt();
3187
- n && $t(n), Lt({
3186
+ async function Ml(t) {
3187
+ await kt(t.basePath);
3188
+ const n = at();
3189
+ n && xt(n), Ct({
3188
3190
  appId: t.appId,
3189
3191
  clientId: t.clientId,
3190
3192
  apiBaseUrl: n || t.apiBaseUrl,
3191
3193
  basePath: t.basePath
3192
- }), t.basePath && Mt(t.basePath);
3193
- const m = t.appId || Ne();
3194
+ }), t.basePath && $t(t.basePath);
3195
+ const m = t.appId || Me();
3194
3196
  if (m)
3195
3197
  try {
3196
- const o = await Promise.race([
3197
- St(m),
3198
+ const a = await Promise.race([
3199
+ Lt(m),
3198
3200
  new Promise((s) => setTimeout(() => s(null), 2e3))
3199
3201
  ]);
3200
- o && typeof o == "object" && Nt(o);
3201
- } catch (o) {
3202
- console.warn("加载应用界面配置失败,使用内置默认", o);
3202
+ a && typeof a == "object" && Mt(a);
3203
+ } catch (a) {
3204
+ console.warn("加载应用界面配置失败,使用内置默认", a);
3203
3205
  }
3204
- return Promise.resolve().then(() => Kt).then(({ useAppStore: o }) => {
3205
- const s = o();
3206
+ return Promise.resolve().then(() => Ot).then(({ useAppStore: a }) => {
3207
+ const s = a();
3206
3208
  t.appName && s.setAppName(t.appName), t.indexPath && s.setIndexPath(t.indexPath), t.loginPath && s.setLoginPath(t.loginPath);
3207
- }), t.locale && Promise.resolve().then(() => Rn).then(({ useLocaleStore: o }) => {
3208
- o().changeLocale(t.locale);
3209
+ }), t.locale && Promise.resolve().then(() => Vn).then(({ useLocaleStore: a }) => {
3210
+ a().changeLocale(t.locale);
3209
3211
  }), {
3210
3212
  config: {
3211
3213
  appName: t.appName || "XTO App",
3212
- appId: Ne(),
3213
- clientId: mt(),
3214
- apiBaseUrl: nt(),
3214
+ appId: Me(),
3215
+ clientId: dt(),
3216
+ apiBaseUrl: at(),
3215
3217
  basePath: t.basePath || "/",
3216
3218
  indexPath: t.indexPath || "/dashboard",
3217
3219
  loginPath: t.loginPath || "/login",
@@ -3220,47 +3222,47 @@ async function Nl(t) {
3220
3222
  };
3221
3223
  }
3222
3224
  export {
3223
- he as A,
3224
- cl as B,
3225
- De as C,
3226
- ul as D,
3227
- ml as E,
3228
- ll as F,
3229
- Yn as G,
3230
- Zs as H,
3231
- st as I,
3232
- _e as J,
3233
- dl as K,
3234
- ht as L,
3235
- Gn as M,
3236
- ce as N,
3237
- Hn as S,
3238
- nl as T,
3239
- ue as _,
3240
- $l as a,
3241
- Ml as b,
3242
- rl as c,
3243
- Ll as d,
3244
- xl as e,
3245
- Cl as f,
3246
- Fn as g,
3247
- rt as h,
3248
- Nn as i,
3249
- kl as j,
3250
- yl as k,
3251
- bl as l,
3252
- pl as m,
3253
- Nl as n,
3254
- fl as o,
3255
- vl as p,
3256
- hl as q,
3257
- _l as r,
3258
- gt as s,
3259
- Kn as t,
3260
- Sl as u,
3261
- gl as v,
3262
- yt as w,
3263
- wl as x,
3264
- ft as y,
3265
- il as z
3225
+ _e as A,
3226
+ rl as B,
3227
+ ze as C,
3228
+ il as D,
3229
+ ul as E,
3230
+ al as F,
3231
+ qn as G,
3232
+ Xs as H,
3233
+ et as I,
3234
+ fe as J,
3235
+ cl as K,
3236
+ vt as L,
3237
+ Hn as M,
3238
+ ue as N,
3239
+ Wn as S,
3240
+ ol as T,
3241
+ de as _,
3242
+ xl as a,
3243
+ $l as b,
3244
+ nl as c,
3245
+ Cl as d,
3246
+ wl as e,
3247
+ kl as f,
3248
+ Pn as g,
3249
+ lt as h,
3250
+ Mn as i,
3251
+ bl as j,
3252
+ fl as k,
3253
+ gl as l,
3254
+ dl as m,
3255
+ Ml as n,
3256
+ hl as o,
3257
+ ml as p,
3258
+ pl as q,
3259
+ vl as r,
3260
+ ft as s,
3261
+ On as t,
3262
+ Ll as u,
3263
+ _l as v,
3264
+ gt as w,
3265
+ yl as x,
3266
+ _t as y,
3267
+ ll as z
3266
3268
  };