xto-fronted 0.8.2 → 0.8.4

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