xto-fronted 0.4.70 → 0.4.72
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.
- package/dist/{index-CzOd0mGb.js → index-48G2-eqi.js} +1 -1
- package/dist/{index-CgbSCzIp.js → index-BhtcPIRK.js} +484 -474
- package/dist/{index-BgbSp2mz.js → index-CZKP8fOP.js} +1 -1
- package/dist/{index-By874kXD.js → index-JouxgO84.js} +1 -1
- package/dist/{index-COz0Cbj7.js → index-qlKXxfT9.js} +1 -1
- package/dist/index.es.js +1 -1
- package/dist/index.umd.js +1 -1
- package/dist/style.css +1 -1
- package/package.json +90 -87
- package/src/components/Layout/Sidebar.vue +29 -10
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { ref as
|
|
2
|
-
import { defineStore as
|
|
1
|
+
import { ref as f, computed as b, watch as Ee, defineComponent as le, resolveComponent as pt, openBlock as l, createBlock as F, unref as r, withCtx as E, createElementBlock as u, Fragment as q, renderList as X, createElementVNode as e, toDisplayString as $, createCommentVNode as N, normalizeClass as W, withDirectives as Ve, vShow as Ct, createVNode as y, createTextVNode as ye, onMounted as He, onUnmounted as Ge, vModelText as Je, Transition as ke, withModifiers as Fe, normalizeStyle as Te, reactive as Qe, withKeys as $t } from "vue";
|
|
2
|
+
import { defineStore as Be } from "pinia";
|
|
3
3
|
import { useRoute as we, useRouter as de, createRouter as Ze, createWebHistory as et } from "vue-router";
|
|
4
4
|
import { SubMenu as ht, MenuItem as Re, Menu as tt, Tabs as Lt, TabPane as Mt } from "@xto/navigation";
|
|
5
|
-
import { Icon as I, Button as
|
|
6
|
-
import { Drawer as st, Message as
|
|
5
|
+
import { Icon as I, Button as Ke } from "@xto/base";
|
|
6
|
+
import { Drawer as st, Message as ae } from "@xto/feedback";
|
|
7
7
|
import { Form as It, FormItem as Ne, Input as ct, Checkbox as St } from "@xto/form";
|
|
8
8
|
import Et from "axios";
|
|
9
|
-
const Pe =
|
|
9
|
+
const Pe = f(""), Ae = f(""), Oe = f("");
|
|
10
10
|
function Tt(t) {
|
|
11
11
|
t.appId && (Pe.value = t.appId), t.clientId && (Ae.value = t.clientId), t.apiBaseUrl && (Oe.value = t.apiBaseUrl);
|
|
12
12
|
}
|
|
13
|
-
function
|
|
13
|
+
function je() {
|
|
14
14
|
if (Pe.value)
|
|
15
15
|
return Pe.value;
|
|
16
16
|
try {
|
|
@@ -28,7 +28,7 @@ function vt() {
|
|
|
28
28
|
return "";
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
|
-
function
|
|
31
|
+
function Ut() {
|
|
32
32
|
if (Oe.value)
|
|
33
33
|
return Oe.value;
|
|
34
34
|
try {
|
|
@@ -37,7 +37,7 @@ function Nt() {
|
|
|
37
37
|
return "";
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
|
-
const
|
|
40
|
+
const Na = {
|
|
41
41
|
appId: Pe,
|
|
42
42
|
clientId: Ae,
|
|
43
43
|
apiBaseUrl: Oe
|
|
@@ -67,53 +67,53 @@ const Ua = {
|
|
|
67
67
|
o.startsWith(Ie) && t.removeItem(o);
|
|
68
68
|
});
|
|
69
69
|
}
|
|
70
|
-
}),
|
|
71
|
-
get:
|
|
72
|
-
set:
|
|
73
|
-
remove:
|
|
74
|
-
clear:
|
|
75
|
-
},
|
|
70
|
+
}), De = _t(window.localStorage), ze = _t(window.sessionStorage), C = {
|
|
71
|
+
get: De.get,
|
|
72
|
+
set: De.set,
|
|
73
|
+
remove: De.remove,
|
|
74
|
+
clear: De.clear
|
|
75
|
+
}, Da = {
|
|
76
76
|
get: ze.get,
|
|
77
77
|
set: ze.set,
|
|
78
78
|
remove: ze.remove,
|
|
79
79
|
clear: ze.clear
|
|
80
|
-
}, me =
|
|
81
|
-
const t =
|
|
80
|
+
}, me = Be("app", () => {
|
|
81
|
+
const t = f(C.get("appName") || "XTO App"), s = f(C.get("indexPath") || "/dashboard"), o = f(C.get("isDark") || !1), i = f(C.get("theme") || "light"), a = f(C.get("layout") || "sidebar"), m = f(C.get("isCollapsed") || !1), M = f(C.get("showTabs") ?? !0), d = f(C.get("showFooter") ?? !0), g = f(C.get("showBreadcrumb") ?? !0), p = f(C.get("primaryColor") || "#409eff"), v = f([]), _ = f([]), L = b(() => o.value ? "dark" : "light"), B = (T) => {
|
|
82
82
|
t.value = T, C.set("appName", T);
|
|
83
83
|
}, R = (T) => {
|
|
84
84
|
s.value = T, C.set("indexPath", T);
|
|
85
|
-
},
|
|
86
|
-
o.value = !o.value, i.value = o.value ? "dark" : "light",
|
|
85
|
+
}, K = () => {
|
|
86
|
+
o.value = !o.value, i.value = o.value ? "dark" : "light", P();
|
|
87
87
|
}, z = (T) => {
|
|
88
|
-
i.value = T, o.value = T === "dark",
|
|
89
|
-
},
|
|
88
|
+
i.value = T, o.value = T === "dark", P();
|
|
89
|
+
}, P = () => {
|
|
90
90
|
const T = document.documentElement;
|
|
91
91
|
o.value ? T.classList.add("dark") : T.classList.remove("dark"), C.set("isDark", o.value), C.set("theme", i.value);
|
|
92
|
-
},
|
|
92
|
+
}, A = () => {
|
|
93
93
|
m.value = !m.value, C.set("isCollapsed", m.value);
|
|
94
|
-
},
|
|
94
|
+
}, U = (T) => {
|
|
95
95
|
a.value = T, C.set("layout", T);
|
|
96
|
-
},
|
|
96
|
+
}, D = () => {
|
|
97
97
|
M.value = !M.value, C.set("showTabs", M.value);
|
|
98
|
-
},
|
|
98
|
+
}, J = () => {
|
|
99
99
|
d.value = !d.value, C.set("showFooter", d.value);
|
|
100
|
-
},
|
|
100
|
+
}, Y = () => {
|
|
101
101
|
g.value = !g.value, C.set("showBreadcrumb", g.value);
|
|
102
|
-
},
|
|
102
|
+
}, V = (T) => {
|
|
103
103
|
p.value = T, document.documentElement.style.setProperty("--color-primary", T), C.set("primaryColor", T);
|
|
104
|
-
},
|
|
104
|
+
}, j = (T) => {
|
|
105
105
|
v.value.includes(T) || v.value.push(T);
|
|
106
|
-
},
|
|
107
|
-
const
|
|
108
|
-
|
|
109
|
-
},
|
|
106
|
+
}, se = (T) => {
|
|
107
|
+
const Q = v.value.indexOf(T);
|
|
108
|
+
Q > -1 && v.value.splice(Q, 1);
|
|
109
|
+
}, oe = () => {
|
|
110
110
|
v.value = [];
|
|
111
111
|
}, ue = (T) => {
|
|
112
|
-
|
|
112
|
+
_.value = T;
|
|
113
113
|
}, re = () => {
|
|
114
|
-
|
|
114
|
+
P(), p.value !== "#409eff" && document.documentElement.style.setProperty("--color-primary", p.value);
|
|
115
115
|
};
|
|
116
|
-
return
|
|
116
|
+
return Ee(o, P), {
|
|
117
117
|
appName: t,
|
|
118
118
|
indexPath: s,
|
|
119
119
|
isDark: o,
|
|
@@ -125,25 +125,25 @@ const Ua = {
|
|
|
125
125
|
showBreadcrumb: g,
|
|
126
126
|
primaryColor: p,
|
|
127
127
|
cachedViews: v,
|
|
128
|
-
mixSubMenus:
|
|
128
|
+
mixSubMenus: _,
|
|
129
129
|
themeClass: L,
|
|
130
|
-
setAppName:
|
|
130
|
+
setAppName: B,
|
|
131
131
|
setIndexPath: R,
|
|
132
|
-
toggleTheme:
|
|
133
|
-
toggleCollapse:
|
|
132
|
+
toggleTheme: K,
|
|
133
|
+
toggleCollapse: A,
|
|
134
134
|
setTheme: z,
|
|
135
|
-
setLayout:
|
|
136
|
-
toggleTabs:
|
|
137
|
-
toggleFooter:
|
|
138
|
-
toggleBreadcrumb:
|
|
139
|
-
setPrimaryColor:
|
|
140
|
-
addCachedView:
|
|
141
|
-
removeCachedView:
|
|
142
|
-
clearCachedViews:
|
|
135
|
+
setLayout: U,
|
|
136
|
+
toggleTabs: D,
|
|
137
|
+
toggleFooter: J,
|
|
138
|
+
toggleBreadcrumb: Y,
|
|
139
|
+
setPrimaryColor: V,
|
|
140
|
+
addCachedView: j,
|
|
141
|
+
removeCachedView: se,
|
|
142
|
+
clearCachedViews: oe,
|
|
143
143
|
setMixSubMenus: ue,
|
|
144
144
|
initTheme: re
|
|
145
145
|
};
|
|
146
|
-
}),
|
|
146
|
+
}), Ye = "menu_list", Nt = {
|
|
147
147
|
menuCode: "home",
|
|
148
148
|
menuName: "首页",
|
|
149
149
|
menuUrl: "/dashboard",
|
|
@@ -151,40 +151,40 @@ const Ua = {
|
|
|
151
151
|
closable: !1,
|
|
152
152
|
isDefault: !1,
|
|
153
153
|
isOut: !1
|
|
154
|
-
}, ve =
|
|
155
|
-
const t =
|
|
154
|
+
}, ve = Be("menu", () => {
|
|
155
|
+
const t = f(C.get(Ye) || []), s = b(() => t.value.length > 0);
|
|
156
156
|
return {
|
|
157
157
|
menuList: t,
|
|
158
158
|
hasMenu: s,
|
|
159
159
|
setMenuList: (a) => {
|
|
160
|
-
t.value = [
|
|
160
|
+
t.value = [Nt, ...a], C.set(Ye, t.value);
|
|
161
161
|
},
|
|
162
162
|
clearMenu: () => {
|
|
163
|
-
t.value = [], C.remove(
|
|
163
|
+
t.value = [], C.remove(Ye);
|
|
164
164
|
}
|
|
165
165
|
};
|
|
166
|
-
}),
|
|
167
|
-
const t =
|
|
168
|
-
var
|
|
169
|
-
return ((
|
|
166
|
+
}), qe = "/vite.svg", Xe = "user_info", ee = Be("user", () => {
|
|
167
|
+
const t = f(C.get(Xe)), s = b(() => !!t.value), o = b(() => {
|
|
168
|
+
var _;
|
|
169
|
+
return ((_ = t.value) == null ? void 0 : _.userId) || "";
|
|
170
170
|
}), i = b(() => {
|
|
171
|
-
var
|
|
172
|
-
return ((
|
|
171
|
+
var _;
|
|
172
|
+
return ((_ = t.value) == null ? void 0 : _.userName) || "";
|
|
173
173
|
}), a = b(() => {
|
|
174
|
-
var
|
|
175
|
-
return ((
|
|
174
|
+
var _;
|
|
175
|
+
return ((_ = t.value) == null ? void 0 : _.departmentName) || "";
|
|
176
176
|
}), m = b(() => {
|
|
177
|
-
var
|
|
178
|
-
return ((
|
|
177
|
+
var _;
|
|
178
|
+
return ((_ = t.value) == null ? void 0 : _.email) || "";
|
|
179
179
|
}), M = b(() => {
|
|
180
|
-
var
|
|
181
|
-
return ((
|
|
180
|
+
var _;
|
|
181
|
+
return ((_ = t.value) == null ? void 0 : _.mobilePhone) || "";
|
|
182
182
|
}), d = b(() => {
|
|
183
|
-
var
|
|
184
|
-
return ((
|
|
183
|
+
var _;
|
|
184
|
+
return ((_ = t.value) == null ? void 0 : _.positionName) || "";
|
|
185
185
|
}), g = b(() => {
|
|
186
|
-
var
|
|
187
|
-
return ((
|
|
186
|
+
var _;
|
|
187
|
+
return ((_ = t.value) == null ? void 0 : _.avatar) || "";
|
|
188
188
|
});
|
|
189
189
|
return {
|
|
190
190
|
userInfo: t,
|
|
@@ -196,18 +196,18 @@ const Ua = {
|
|
|
196
196
|
mobilePhone: M,
|
|
197
197
|
positionName: d,
|
|
198
198
|
avatar: g,
|
|
199
|
-
setUserInfo: (
|
|
200
|
-
t.value =
|
|
199
|
+
setUserInfo: (_) => {
|
|
200
|
+
t.value = _, C.set(Xe, _);
|
|
201
201
|
},
|
|
202
202
|
clearUserInfo: () => {
|
|
203
|
-
t.value = null, C.remove(
|
|
203
|
+
t.value = null, C.remove(Xe);
|
|
204
204
|
}
|
|
205
205
|
};
|
|
206
|
-
}), ot = "token", nt = "token_type", at = "refresh_token", lt = "expires_time", rt = "refresh_time", it = "code",
|
|
206
|
+
}), ot = "token", nt = "token_type", at = "refresh_token", lt = "expires_time", rt = "refresh_time", it = "code", We = () => C.get(ot), Dt = (t) => {
|
|
207
207
|
C.set(ot, t);
|
|
208
|
-
},
|
|
208
|
+
}, zt = () => C.get(nt), Rt = (t) => {
|
|
209
209
|
C.set(nt, t);
|
|
210
|
-
},
|
|
210
|
+
}, za = () => C.get(at), Pt = (t) => {
|
|
211
211
|
C.set(at, t);
|
|
212
212
|
}, At = () => C.get(lt), Ot = (t) => {
|
|
213
213
|
C.set(lt, t);
|
|
@@ -216,14 +216,14 @@ const Ua = {
|
|
|
216
216
|
}, Pa = () => C.get(it), Ft = (t) => {
|
|
217
217
|
C.set(it, t);
|
|
218
218
|
}, ft = (t) => {
|
|
219
|
-
|
|
219
|
+
Dt(t.access_token), Rt(t.token_type || "Bearer"), Pt(t.refresh_token), Ot(t.expires_time), Vt(t.refresh_time), t.code && Ft(t.code);
|
|
220
220
|
}, Se = () => {
|
|
221
221
|
C.remove(ot), C.remove(nt), C.remove(at), C.remove(lt), C.remove(rt), C.remove(it);
|
|
222
222
|
}, Bt = () => {
|
|
223
223
|
const t = At();
|
|
224
224
|
return t ? Date.now() > t : !0;
|
|
225
|
-
}, gt = () => !!
|
|
226
|
-
const t =
|
|
225
|
+
}, gt = () => !!We() && !Bt(), Ue = Be("auth", () => {
|
|
226
|
+
const t = f(We()), s = b(() => gt()), o = f(""), i = f(""), a = f(""), m = f("/login");
|
|
227
227
|
return {
|
|
228
228
|
token: t,
|
|
229
229
|
isLoggedIn: s,
|
|
@@ -259,7 +259,7 @@ const Ua = {
|
|
|
259
259
|
}, Ht = {
|
|
260
260
|
key: 1,
|
|
261
261
|
class: "menu-item__char"
|
|
262
|
-
}, Gt = { class: "menu-item__text" }, Jt = /* @__PURE__ */
|
|
262
|
+
}, Gt = { class: "menu-item__text" }, Jt = /* @__PURE__ */ le({
|
|
263
263
|
__name: "SidebarMenuItem",
|
|
264
264
|
props: {
|
|
265
265
|
menu: {}
|
|
@@ -407,14 +407,14 @@ const Ua = {
|
|
|
407
407
|
}, a = (d) => d ? d.charAt(0) : "", m = (d) => o.has(d), M = b(() => s.menu.children && s.menu.children.length > 0);
|
|
408
408
|
return (d, g) => {
|
|
409
409
|
const p = pt("SidebarMenuItem", !0);
|
|
410
|
-
return M.value ? (l(),
|
|
410
|
+
return M.value ? (l(), F(r(ht), {
|
|
411
411
|
key: 0,
|
|
412
412
|
index: t.menu.menuUrl
|
|
413
413
|
}, {
|
|
414
414
|
title: E(() => [
|
|
415
415
|
e("span", Kt, [
|
|
416
416
|
e("span", jt, [
|
|
417
|
-
m(i(t.menu.icon)) ? (l(),
|
|
417
|
+
m(i(t.menu.icon)) ? (l(), F(r(I), {
|
|
418
418
|
key: 0,
|
|
419
419
|
name: i(t.menu.icon),
|
|
420
420
|
size: 16
|
|
@@ -424,25 +424,25 @@ const Ua = {
|
|
|
424
424
|
])
|
|
425
425
|
]),
|
|
426
426
|
default: E(() => [
|
|
427
|
-
(l(!0), u(
|
|
427
|
+
(l(!0), u(q, null, X(t.menu.children, (v) => (l(), F(p, {
|
|
428
428
|
key: v.menuUrl,
|
|
429
429
|
menu: v
|
|
430
430
|
}, null, 8, ["menu"]))), 128))
|
|
431
431
|
]),
|
|
432
432
|
_: 1
|
|
433
|
-
}, 8, ["index"])) : (l(),
|
|
433
|
+
}, 8, ["index"])) : (l(), F(r(Re), {
|
|
434
434
|
key: 1,
|
|
435
435
|
index: t.menu.menuUrl
|
|
436
436
|
}, {
|
|
437
437
|
default: E(() => [
|
|
438
438
|
e("span", Yt, [
|
|
439
439
|
t.menu.menuName !== "首页" ? (l(), u("span", Xt, [
|
|
440
|
-
m(i(t.menu.icon)) ? (l(),
|
|
440
|
+
m(i(t.menu.icon)) ? (l(), F(r(I), {
|
|
441
441
|
key: 0,
|
|
442
442
|
name: i(t.menu.icon),
|
|
443
443
|
size: 16
|
|
444
444
|
}, null, 8, ["name"])) : (l(), u("span", Ht, $(a(t.menu.menuName)), 1))
|
|
445
|
-
])) :
|
|
445
|
+
])) : N("", !0),
|
|
446
446
|
e("span", Gt, $(t.menu.menuName), 1)
|
|
447
447
|
])
|
|
448
448
|
]),
|
|
@@ -450,18 +450,18 @@ const Ua = {
|
|
|
450
450
|
}, 8, ["index"]));
|
|
451
451
|
};
|
|
452
452
|
}
|
|
453
|
-
}),
|
|
453
|
+
}), te = (t, s) => {
|
|
454
454
|
const o = t.__vccOpts || t;
|
|
455
455
|
for (const [i, a] of s)
|
|
456
456
|
o[i] = a;
|
|
457
457
|
return o;
|
|
458
|
-
}, Qt = /* @__PURE__ */
|
|
458
|
+
}, Qt = /* @__PURE__ */ te(Jt, [["__scopeId", "data-v-d160ae6a"]]), Zt = {
|
|
459
459
|
key: 0,
|
|
460
460
|
class: "sidebar__logo"
|
|
461
461
|
}, es = {
|
|
462
462
|
key: 1,
|
|
463
463
|
class: "sidebar__user"
|
|
464
|
-
}, ts = { class: "sidebar__user-info" }, ss = { class: "sidebar__user-name" }, os = { class: "sidebar__user-role" }, dt = "sidebar_opened_menus", ns = /* @__PURE__ */
|
|
464
|
+
}, ts = { class: "sidebar__user-info" }, ss = { class: "sidebar__user-name" }, os = { class: "sidebar__user-role" }, dt = "sidebar_opened_menus", ns = /* @__PURE__ */ le({
|
|
465
465
|
__name: "Sidebar",
|
|
466
466
|
props: {
|
|
467
467
|
menuList: { default: () => [] },
|
|
@@ -469,49 +469,59 @@ const Ua = {
|
|
|
469
469
|
showUser: { type: Boolean, default: !0 }
|
|
470
470
|
},
|
|
471
471
|
setup(t) {
|
|
472
|
-
const s = t, o = we(), i = de(), a = ve(), m =
|
|
473
|
-
|
|
474
|
-
C.set(dt,
|
|
475
|
-
}, { deep: !0 })
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
for (const
|
|
479
|
-
(
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
472
|
+
const s = t, o = we(), i = de(), a = ve(), m = ee(), M = Ue(), d = me(), g = b(() => s.menuList.length > 0 ? s.menuList : a.menuList), p = b(() => d.isCollapsed), v = b(() => o.path), _ = f(C.get(dt) || []);
|
|
473
|
+
Ee(_, (A) => {
|
|
474
|
+
C.set(dt, A);
|
|
475
|
+
}, { deep: !0 });
|
|
476
|
+
const L = (A, U, D = []) => {
|
|
477
|
+
var J;
|
|
478
|
+
for (const Y of A)
|
|
479
|
+
if ((J = Y.children) != null && J.length) {
|
|
480
|
+
if (Y.children.some((j) => U === j.menuUrl || U.startsWith(j.menuUrl + "/"))) {
|
|
481
|
+
for (const j of D)
|
|
482
|
+
_.value.includes(j) || _.value.push(j);
|
|
483
|
+
_.value.includes(Y.menuUrl) || _.value.push(Y.menuUrl);
|
|
484
|
+
}
|
|
485
|
+
L(Y.children, U, [...D, Y.menuUrl]);
|
|
486
|
+
}
|
|
487
|
+
};
|
|
488
|
+
Ee([() => o.path, g], ([A, U]) => {
|
|
489
|
+
U.length > 0 && L(U, A);
|
|
490
|
+
}, { immediate: !0 });
|
|
491
|
+
const B = b(() => d.isDark ? "#1d1e1f" : "#fff"), R = b(() => d.isDark ? "#cfd3dc" : "#303133"), K = b(() => "#409eff"), z = (A) => {
|
|
492
|
+
A && A !== o.path && i.push(A);
|
|
493
|
+
}, P = () => {
|
|
484
494
|
M.logout(), m.clearUserInfo(), a.clearMenu(), i.push("/login");
|
|
485
495
|
};
|
|
486
|
-
return (
|
|
487
|
-
class:
|
|
496
|
+
return (A, U) => (l(), u("div", {
|
|
497
|
+
class: W(["sidebar", { "sidebar--collapsed": p.value }])
|
|
488
498
|
}, [
|
|
489
499
|
s.showLogo ? (l(), u("div", Zt, [
|
|
490
|
-
|
|
491
|
-
src:
|
|
500
|
+
U[2] || (U[2] = e("img", {
|
|
501
|
+
src: qe,
|
|
492
502
|
alt: "Logo",
|
|
493
503
|
class: "sidebar__logo-img"
|
|
494
504
|
}, null, -1)),
|
|
495
|
-
|
|
505
|
+
Ve(e("span", { class: "sidebar__logo-text" }, $(r(d).appName), 513), [
|
|
496
506
|
[Ct, !p.value]
|
|
497
507
|
])
|
|
498
|
-
])) :
|
|
508
|
+
])) : N("", !0),
|
|
499
509
|
y(r(tt), {
|
|
500
510
|
modelValue: v.value,
|
|
501
|
-
"onUpdate:modelValue":
|
|
502
|
-
openeds:
|
|
503
|
-
"onUpdate:openeds":
|
|
511
|
+
"onUpdate:modelValue": U[0] || (U[0] = (D) => v.value = D),
|
|
512
|
+
openeds: _.value,
|
|
513
|
+
"onUpdate:openeds": U[1] || (U[1] = (D) => _.value = D),
|
|
504
514
|
mode: "vertical",
|
|
505
515
|
collapse: p.value,
|
|
506
516
|
"collapse-transition": !1,
|
|
507
|
-
"background-color":
|
|
508
|
-
"text-color":
|
|
509
|
-
"active-text-color":
|
|
517
|
+
"background-color": B.value,
|
|
518
|
+
"text-color": R.value,
|
|
519
|
+
"active-text-color": K.value,
|
|
510
520
|
class: "sidebar__menu",
|
|
511
|
-
onSelect:
|
|
521
|
+
onSelect: z
|
|
512
522
|
}, {
|
|
513
523
|
default: E(() => [
|
|
514
|
-
(l(!0), u(
|
|
524
|
+
(l(!0), u(q, null, X(g.value, (D) => (l(), F(Qt, {
|
|
515
525
|
key: D.menuUrl,
|
|
516
526
|
menu: D
|
|
517
527
|
}, null, 8, ["menu"]))), 128))
|
|
@@ -523,20 +533,20 @@ const Ua = {
|
|
|
523
533
|
e("span", ss, $(r(m).userName), 1),
|
|
524
534
|
e("span", os, $(r(m).departmentName), 1)
|
|
525
535
|
]),
|
|
526
|
-
y(r(
|
|
536
|
+
y(r(Ke), {
|
|
527
537
|
type: "text",
|
|
528
538
|
size: "small",
|
|
529
|
-
onClick:
|
|
539
|
+
onClick: P
|
|
530
540
|
}, {
|
|
531
|
-
default: E(() => [...
|
|
541
|
+
default: E(() => [...U[3] || (U[3] = [
|
|
532
542
|
ye("退出", -1)
|
|
533
543
|
])]),
|
|
534
544
|
_: 1
|
|
535
545
|
})
|
|
536
|
-
])) :
|
|
546
|
+
])) : N("", !0)
|
|
537
547
|
], 2));
|
|
538
548
|
}
|
|
539
|
-
}), mt = /* @__PURE__ */
|
|
549
|
+
}), mt = /* @__PURE__ */ te(ns, [["__scopeId", "data-v-7a84fcaa"]]), as = { class: "header" }, ls = { class: "header__left" }, rs = {
|
|
540
550
|
key: 0,
|
|
541
551
|
class: "header__breadcrumb"
|
|
542
552
|
}, is = {
|
|
@@ -563,19 +573,19 @@ const Ua = {
|
|
|
563
573
|
}, gs = ["title"], ys = { class: "header__avatar" }, ks = { class: "header__user-name" }, ws = {
|
|
564
574
|
key: 0,
|
|
565
575
|
class: "header__dropdown"
|
|
566
|
-
}, bs = { class: "header__dropdown-header" }, xs = { class: "header__dropdown-avatar" }, Cs = { class: "header__dropdown-info" }, $s = { class: "header__dropdown-name" }, Ls = { class: "header__dropdown-role" }, Ms = { class: "header__dropdown-menu" }, Is = { class: "settings-drawer" }, Ss = { class: "settings-section" }, Es = { class: "settings-layout-options" }, Ts = ["onClick"],
|
|
576
|
+
}, bs = { class: "header__dropdown-header" }, xs = { class: "header__dropdown-avatar" }, Cs = { class: "header__dropdown-info" }, $s = { class: "header__dropdown-name" }, Ls = { class: "header__dropdown-role" }, Ms = { class: "header__dropdown-menu" }, Is = { class: "settings-drawer" }, Ss = { class: "settings-section" }, Es = { class: "settings-layout-options" }, Ts = ["onClick"], Us = { class: "layout-option__preview" }, Ns = {
|
|
567
577
|
key: 0,
|
|
568
578
|
class: "layout-preview-sidebar"
|
|
569
|
-
},
|
|
579
|
+
}, Ds = {
|
|
570
580
|
key: 1,
|
|
571
581
|
class: "layout-preview-top"
|
|
572
|
-
},
|
|
582
|
+
}, zs = {
|
|
573
583
|
key: 2,
|
|
574
584
|
class: "layout-preview-mix"
|
|
575
|
-
}, Rs = { class: "layout-option__label" }, Ps = { class: "settings-section" }, As = { class: "settings-color-options" }, Os = ["title", "onClick"], Vs = { class: "settings-section" }, Fs = { class: "settings-switch-list" }, Bs = { class: "settings-switch-item" }, Ks = { class: "settings-switch-item" }, js = /* @__PURE__ */
|
|
585
|
+
}, Rs = { class: "layout-option__label" }, Ps = { class: "settings-section" }, As = { class: "settings-color-options" }, Os = ["title", "onClick"], Vs = { class: "settings-section" }, Fs = { class: "settings-switch-list" }, Bs = { class: "settings-switch-item" }, Ks = { class: "settings-switch-item" }, js = /* @__PURE__ */ le({
|
|
576
586
|
__name: "Header",
|
|
577
587
|
setup(t) {
|
|
578
|
-
const s = we(), o = de(), i = me(), a =
|
|
588
|
+
const s = we(), o = de(), i = me(), a = ee(), m = Ue(), M = ve(), d = f(!1), g = f(!1), p = f(null), v = f(!1), _ = f(!1), L = f(""), B = f(null), R = f(!1), K = [
|
|
579
589
|
{ value: "sidebar", label: "左侧菜单", icon: "sidebar-left" },
|
|
580
590
|
{ value: "top", label: "顶部菜单", icon: "menu" },
|
|
581
591
|
{ value: "mix", label: "混合菜单", icon: "grid" }
|
|
@@ -586,15 +596,15 @@ const Ua = {
|
|
|
586
596
|
{ value: "#faad14", label: "日落橙" },
|
|
587
597
|
{ value: "#f5222d", label: "薄暮红" },
|
|
588
598
|
{ value: "#722ed1", label: "酱紫" }
|
|
589
|
-
],
|
|
599
|
+
], P = b(() => s.matched.filter((k) => k.meta && k.meta.title).map((k) => ({
|
|
590
600
|
title: k.meta.title,
|
|
591
601
|
path: k.path
|
|
592
|
-
}))),
|
|
593
|
-
const
|
|
602
|
+
}))), A = (S, k = "") => {
|
|
603
|
+
const H = [];
|
|
594
604
|
return S.forEach((c) => {
|
|
595
|
-
c.children && c.children.length > 0 ?
|
|
596
|
-
}),
|
|
597
|
-
},
|
|
605
|
+
c.children && c.children.length > 0 ? H.push(...A(c.children, c.menuName)) : H.push({ ...c, parentTitle: k, title: c.menuName, path: c.menuUrl });
|
|
606
|
+
}), H;
|
|
607
|
+
}, U = /* @__PURE__ */ new Set([
|
|
598
608
|
"arrow-up",
|
|
599
609
|
"arrow-down",
|
|
600
610
|
"arrow-left",
|
|
@@ -696,10 +706,10 @@ const Ua = {
|
|
|
696
706
|
"sun",
|
|
697
707
|
"theme",
|
|
698
708
|
"skin"
|
|
699
|
-
]),
|
|
709
|
+
]), D = (S) => {
|
|
700
710
|
if (!S || S === "") return "";
|
|
701
711
|
if (S.startsWith("tineco-icon-")) {
|
|
702
|
-
const
|
|
712
|
+
const H = S.replace("tineco-icon-", "");
|
|
703
713
|
return {
|
|
704
714
|
home: "home",
|
|
705
715
|
dashboard: "dashboard",
|
|
@@ -713,7 +723,7 @@ const Ua = {
|
|
|
713
723
|
chart: "chart",
|
|
714
724
|
report: "report",
|
|
715
725
|
analytics: "analytics"
|
|
716
|
-
}[
|
|
726
|
+
}[H] || H;
|
|
717
727
|
}
|
|
718
728
|
return {
|
|
719
729
|
dashboard: "dashboard",
|
|
@@ -733,11 +743,11 @@ const Ua = {
|
|
|
733
743
|
list: "list",
|
|
734
744
|
grid: "grid"
|
|
735
745
|
}[S] || S;
|
|
736
|
-
},
|
|
746
|
+
}, J = (S) => S ? S.charAt(0) : "", Y = (S) => U.has(S), V = b(() => L.value.trim() ? A(M.menuList).filter(
|
|
737
747
|
(k) => k.title.toLowerCase().includes(L.value.toLowerCase())
|
|
738
|
-
) : []),
|
|
748
|
+
) : []), j = b(() => i.layout), se = () => {
|
|
739
749
|
i.toggleCollapse();
|
|
740
|
-
},
|
|
750
|
+
}, oe = () => {
|
|
741
751
|
i.toggleTheme();
|
|
742
752
|
}, ue = () => {
|
|
743
753
|
g.value = !0;
|
|
@@ -747,20 +757,20 @@ const Ua = {
|
|
|
747
757
|
R.value = S;
|
|
748
758
|
const k = document.documentElement;
|
|
749
759
|
S ? k.classList.add("grey-mode") : k.classList.remove("grey-mode");
|
|
750
|
-
},
|
|
760
|
+
}, Q = () => {
|
|
751
761
|
T(!R.value), g.value = !1;
|
|
752
762
|
}, ce = () => {
|
|
753
763
|
i.toggleTheme(), g.value = !1;
|
|
754
764
|
}, be = () => {
|
|
755
765
|
document.fullscreenElement ? document.exitFullscreen() : document.documentElement.requestFullscreen();
|
|
756
|
-
},
|
|
766
|
+
}, ne = () => {
|
|
757
767
|
v.value = !!document.fullscreenElement;
|
|
758
768
|
}, pe = () => {
|
|
759
769
|
d.value = !d.value;
|
|
760
770
|
}, ie = () => {
|
|
761
771
|
d.value = !1;
|
|
762
772
|
}, he = () => {
|
|
763
|
-
|
|
773
|
+
_.value = !1, L.value = "";
|
|
764
774
|
}, xe = (S) => {
|
|
765
775
|
o.push(S), he();
|
|
766
776
|
}, Ce = (S) => {
|
|
@@ -772,21 +782,21 @@ const Ua = {
|
|
|
772
782
|
}, Me = () => {
|
|
773
783
|
ie(), m.logout(), a.clearUserInfo(), M.clearMenu(), o.push("/login");
|
|
774
784
|
}, _e = (S) => {
|
|
775
|
-
p.value && !p.value.contains(S.target) && ie(),
|
|
785
|
+
p.value && !p.value.contains(S.target) && ie(), B.value && !B.value.contains(S.target) && he();
|
|
776
786
|
}, fe = (S) => {
|
|
777
787
|
S.key === "Escape" && (he(), ie());
|
|
778
788
|
};
|
|
779
|
-
return
|
|
780
|
-
document.addEventListener("click", _e), document.addEventListener("fullscreenchange",
|
|
789
|
+
return He(() => {
|
|
790
|
+
document.addEventListener("click", _e), document.addEventListener("fullscreenchange", ne), document.addEventListener("keydown", fe), i.initTheme(), R.value = document.documentElement.classList.contains("grey-mode");
|
|
781
791
|
}), Ge(() => {
|
|
782
|
-
document.removeEventListener("click", _e), document.removeEventListener("fullscreenchange",
|
|
792
|
+
document.removeEventListener("click", _e), document.removeEventListener("fullscreenchange", ne), document.removeEventListener("keydown", fe);
|
|
783
793
|
}), (S, k) => {
|
|
784
|
-
var
|
|
794
|
+
var H;
|
|
785
795
|
return l(), u("div", as, [
|
|
786
796
|
e("div", ls, [
|
|
787
797
|
e("div", {
|
|
788
798
|
class: "header__collapse",
|
|
789
|
-
onClick:
|
|
799
|
+
onClick: se
|
|
790
800
|
}, [
|
|
791
801
|
y(r(I), {
|
|
792
802
|
name: r(i).isCollapsed ? "menu-unfold" : "menu-fold",
|
|
@@ -794,57 +804,57 @@ const Ua = {
|
|
|
794
804
|
}, null, 8, ["name"])
|
|
795
805
|
]),
|
|
796
806
|
r(i).showBreadcrumb ? (l(), u("div", rs, [
|
|
797
|
-
(l(!0), u(
|
|
807
|
+
(l(!0), u(q, null, X(P.value, (c, w) => (l(), u("span", {
|
|
798
808
|
key: c.path
|
|
799
809
|
}, [
|
|
800
|
-
w > 0 ? (l(), u("span", is, "/")) :
|
|
810
|
+
w > 0 ? (l(), u("span", is, "/")) : N("", !0),
|
|
801
811
|
e("span", {
|
|
802
|
-
class:
|
|
812
|
+
class: W({ "is-current": w === P.value.length - 1 })
|
|
803
813
|
}, $(c.title), 3)
|
|
804
814
|
]))), 128))
|
|
805
|
-
])) :
|
|
815
|
+
])) : N("", !0)
|
|
806
816
|
]),
|
|
807
817
|
e("div", us, [
|
|
808
818
|
e("div", {
|
|
809
819
|
class: "header__search",
|
|
810
820
|
ref_key: "searchRef",
|
|
811
|
-
ref:
|
|
821
|
+
ref: B
|
|
812
822
|
}, [
|
|
813
823
|
y(r(I), {
|
|
814
824
|
name: "search",
|
|
815
825
|
size: 14,
|
|
816
826
|
class: "header__search-icon"
|
|
817
827
|
}),
|
|
818
|
-
|
|
828
|
+
Ve(e("input", {
|
|
819
829
|
"onUpdate:modelValue": k[0] || (k[0] = (c) => L.value = c),
|
|
820
830
|
type: "text",
|
|
821
831
|
class: "header__search-input",
|
|
822
832
|
placeholder: "搜索菜单...",
|
|
823
|
-
onFocus: k[1] || (k[1] = (c) =>
|
|
833
|
+
onFocus: k[1] || (k[1] = (c) => _.value = !0)
|
|
824
834
|
}, null, 544), [
|
|
825
835
|
[Je, L.value]
|
|
826
836
|
]),
|
|
827
837
|
y(ke, { name: "search-dropdown" }, {
|
|
828
838
|
default: E(() => [
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
(l(!0), u(
|
|
839
|
+
_.value && (V.value.length > 0 || L.value) ? (l(), u("div", cs, [
|
|
840
|
+
V.value.length > 0 ? (l(), u("div", ds, [
|
|
841
|
+
(l(!0), u(q, null, X(V.value, (c) => (l(), u("div", {
|
|
832
842
|
key: c.path,
|
|
833
843
|
class: "header__search-item",
|
|
834
844
|
onClick: (w) => xe(c.path)
|
|
835
845
|
}, [
|
|
836
846
|
c.title !== "首页" ? (l(), u("span", ps, [
|
|
837
|
-
|
|
847
|
+
Y(D(c.icon)) ? (l(), F(r(I), {
|
|
838
848
|
key: 0,
|
|
839
|
-
name:
|
|
849
|
+
name: D(c.icon),
|
|
840
850
|
size: 16
|
|
841
|
-
}, null, 8, ["name"])) : (l(), u("span", hs, $(
|
|
842
|
-
])) :
|
|
851
|
+
}, null, 8, ["name"])) : (l(), u("span", hs, $(J(c.title)), 1))
|
|
852
|
+
])) : N("", !0),
|
|
843
853
|
e("span", vs, $(c.title), 1),
|
|
844
|
-
c.parentTitle ? (l(), u("span", _s, $(c.parentTitle), 1)) :
|
|
854
|
+
c.parentTitle ? (l(), u("span", _s, $(c.parentTitle), 1)) : N("", !0)
|
|
845
855
|
], 8, ms))), 128))
|
|
846
856
|
])) : (l(), u("div", fs, " 未找到匹配的菜单 "))
|
|
847
|
-
])) :
|
|
857
|
+
])) : N("", !0)
|
|
848
858
|
]),
|
|
849
859
|
_: 1
|
|
850
860
|
})
|
|
@@ -871,7 +881,7 @@ const Ua = {
|
|
|
871
881
|
]),
|
|
872
882
|
e("div", {
|
|
873
883
|
class: "header__action",
|
|
874
|
-
onClick:
|
|
884
|
+
onClick: oe,
|
|
875
885
|
title: "切换主题"
|
|
876
886
|
}, [
|
|
877
887
|
y(r(I), {
|
|
@@ -886,14 +896,14 @@ const Ua = {
|
|
|
886
896
|
}, [
|
|
887
897
|
e("div", {
|
|
888
898
|
class: "header__user-trigger",
|
|
889
|
-
onClick:
|
|
899
|
+
onClick: Fe(pe, ["stop"])
|
|
890
900
|
}, [
|
|
891
901
|
e("div", ys, [
|
|
892
|
-
e("span", null, $(((
|
|
902
|
+
e("span", null, $(((H = r(a).userName) == null ? void 0 : H.charAt(0)) || "U"), 1)
|
|
893
903
|
]),
|
|
894
904
|
e("span", ks, $(r(a).userName), 1),
|
|
895
905
|
e("span", {
|
|
896
|
-
class:
|
|
906
|
+
class: W(["header__user-arrow", { "is-active": d.value }])
|
|
897
907
|
}, "▼", 2)
|
|
898
908
|
]),
|
|
899
909
|
y(ke, { name: "dropdown" }, {
|
|
@@ -944,7 +954,7 @@ const Ua = {
|
|
|
944
954
|
k[5] || (k[5] = e("span", null, "退出登录", -1))
|
|
945
955
|
])
|
|
946
956
|
])
|
|
947
|
-
])) :
|
|
957
|
+
])) : N("", !0)
|
|
948
958
|
];
|
|
949
959
|
}),
|
|
950
960
|
_: 1
|
|
@@ -963,22 +973,22 @@ const Ua = {
|
|
|
963
973
|
e("div", Ss, [
|
|
964
974
|
k[11] || (k[11] = e("div", { class: "settings-title" }, "布局模式", -1)),
|
|
965
975
|
e("div", Es, [
|
|
966
|
-
(l(), u(
|
|
976
|
+
(l(), u(q, null, X(K, (c) => e("div", {
|
|
967
977
|
key: c.value,
|
|
968
|
-
class:
|
|
978
|
+
class: W(["layout-option", { "is-active": j.value === c.value }]),
|
|
969
979
|
onClick: (w) => re(c.value)
|
|
970
980
|
}, [
|
|
971
|
-
e("div",
|
|
972
|
-
c.value === "sidebar" ? (l(), u("div",
|
|
981
|
+
e("div", Us, [
|
|
982
|
+
c.value === "sidebar" ? (l(), u("div", Ns, [...k[8] || (k[8] = [
|
|
973
983
|
e("div", { class: "preview-aside" }, null, -1),
|
|
974
984
|
e("div", { class: "preview-main" }, [
|
|
975
985
|
e("div", { class: "preview-header" }),
|
|
976
986
|
e("div", { class: "preview-content" })
|
|
977
987
|
], -1)
|
|
978
|
-
])])) : c.value === "top" ? (l(), u("div",
|
|
988
|
+
])])) : c.value === "top" ? (l(), u("div", Ds, [...k[9] || (k[9] = [
|
|
979
989
|
e("div", { class: "preview-header-full" }, null, -1),
|
|
980
990
|
e("div", { class: "preview-content-full" }, null, -1)
|
|
981
|
-
])])) : (l(), u("div",
|
|
991
|
+
])])) : (l(), u("div", zs, [...k[10] || (k[10] = [
|
|
982
992
|
e("div", { class: "preview-header-mix" }, [
|
|
983
993
|
e("div", { class: "preview-mix-left" })
|
|
984
994
|
], -1),
|
|
@@ -995,19 +1005,19 @@ const Ua = {
|
|
|
995
1005
|
e("div", Ps, [
|
|
996
1006
|
k[12] || (k[12] = e("div", { class: "settings-title" }, "主题色", -1)),
|
|
997
1007
|
e("div", As, [
|
|
998
|
-
(l(), u(
|
|
1008
|
+
(l(), u(q, null, X(z, (c) => e("div", {
|
|
999
1009
|
key: c.value,
|
|
1000
|
-
class:
|
|
1001
|
-
style:
|
|
1010
|
+
class: W(["color-option", { "is-active": r(i).primaryColor === c.value }]),
|
|
1011
|
+
style: Te({ backgroundColor: c.value }),
|
|
1002
1012
|
title: c.label,
|
|
1003
1013
|
onClick: (w) => Ce(c.value)
|
|
1004
1014
|
}, [
|
|
1005
|
-
r(i).primaryColor === c.value ? (l(),
|
|
1015
|
+
r(i).primaryColor === c.value ? (l(), F(r(I), {
|
|
1006
1016
|
key: 0,
|
|
1007
1017
|
name: "check",
|
|
1008
1018
|
size: 12,
|
|
1009
1019
|
color: "#fff"
|
|
1010
|
-
})) :
|
|
1020
|
+
})) : N("", !0)
|
|
1011
1021
|
], 14, Os)), 64))
|
|
1012
1022
|
])
|
|
1013
1023
|
]),
|
|
@@ -1017,8 +1027,8 @@ const Ua = {
|
|
|
1017
1027
|
e("div", Bs, [
|
|
1018
1028
|
k[14] || (k[14] = e("span", null, "灰色模式", -1)),
|
|
1019
1029
|
e("div", {
|
|
1020
|
-
class:
|
|
1021
|
-
onClick:
|
|
1030
|
+
class: W(["switch-wrapper", { "is-checked": R.value }]),
|
|
1031
|
+
onClick: Q
|
|
1022
1032
|
}, [...k[13] || (k[13] = [
|
|
1023
1033
|
e("span", { class: "switch-core" }, null, -1)
|
|
1024
1034
|
])], 2)
|
|
@@ -1026,7 +1036,7 @@ const Ua = {
|
|
|
1026
1036
|
e("div", Ks, [
|
|
1027
1037
|
k[16] || (k[16] = e("span", null, "暗黑模式", -1)),
|
|
1028
1038
|
e("div", {
|
|
1029
|
-
class:
|
|
1039
|
+
class: W(["switch-wrapper", { "is-checked": r(i).isDark }]),
|
|
1030
1040
|
onClick: ce
|
|
1031
1041
|
}, [...k[15] || (k[15] = [
|
|
1032
1042
|
e("span", { class: "switch-core" }, null, -1)
|
|
@@ -1041,7 +1051,7 @@ const Ua = {
|
|
|
1041
1051
|
]);
|
|
1042
1052
|
};
|
|
1043
1053
|
}
|
|
1044
|
-
}), qs = /* @__PURE__ */
|
|
1054
|
+
}), qs = /* @__PURE__ */ te(js, [["__scopeId", "data-v-89179947"]]), Ws = { class: "top-menu" }, Ys = { class: "top-menu__logo" }, Xs = { class: "top-menu__logo-text" }, Hs = { class: "top-menu__menu-content" }, Gs = {
|
|
1045
1055
|
key: 0,
|
|
1046
1056
|
class: "top-menu__menu-icon"
|
|
1047
1057
|
}, Js = {
|
|
@@ -1077,28 +1087,28 @@ const Ua = {
|
|
|
1077
1087
|
}, fo = ["title"], go = { class: "top-menu__avatar" }, yo = { class: "top-menu__user-name" }, ko = {
|
|
1078
1088
|
key: 0,
|
|
1079
1089
|
class: "top-menu__dropdown"
|
|
1080
|
-
}, wo = { class: "top-menu__dropdown-header" }, bo = { class: "top-menu__dropdown-avatar" }, xo = { class: "top-menu__dropdown-info" }, Co = { class: "top-menu__dropdown-name" }, $o = { class: "top-menu__dropdown-role" }, Lo = { class: "top-menu__dropdown-menu" }, Mo = { class: "settings-drawer" }, Io = { class: "settings-section" }, So = { class: "settings-layout-options" }, Eo = ["onClick"], To = { class: "layout-option__preview" },
|
|
1090
|
+
}, wo = { class: "top-menu__dropdown-header" }, bo = { class: "top-menu__dropdown-avatar" }, xo = { class: "top-menu__dropdown-info" }, Co = { class: "top-menu__dropdown-name" }, $o = { class: "top-menu__dropdown-role" }, Lo = { class: "top-menu__dropdown-menu" }, Mo = { class: "settings-drawer" }, Io = { class: "settings-section" }, So = { class: "settings-layout-options" }, Eo = ["onClick"], To = { class: "layout-option__preview" }, Uo = {
|
|
1081
1091
|
key: 0,
|
|
1082
1092
|
class: "layout-preview-sidebar"
|
|
1083
|
-
},
|
|
1093
|
+
}, No = {
|
|
1084
1094
|
key: 1,
|
|
1085
1095
|
class: "layout-preview-top"
|
|
1086
|
-
},
|
|
1096
|
+
}, Do = {
|
|
1087
1097
|
key: 2,
|
|
1088
1098
|
class: "layout-preview-mix"
|
|
1089
|
-
},
|
|
1099
|
+
}, zo = { class: "layout-option__label" }, Ro = { class: "settings-section" }, Po = { class: "settings-color-options" }, Ao = ["title", "onClick"], Oo = { class: "settings-section" }, Vo = { class: "settings-switch-list" }, Fo = { class: "settings-switch-item" }, Bo = { class: "settings-switch-item" }, Ko = /* @__PURE__ */ le({
|
|
1090
1100
|
__name: "TopMenu",
|
|
1091
1101
|
setup(t) {
|
|
1092
|
-
const s = we(), o = de(), i = ve(), a = me(), m =
|
|
1093
|
-
const
|
|
1102
|
+
const s = we(), o = de(), i = ve(), a = me(), m = ee(), M = Ue(), d = b(() => s.path), g = (c, w = "") => {
|
|
1103
|
+
const Z = [];
|
|
1094
1104
|
return c.forEach((n) => {
|
|
1095
|
-
n.children && n.children.length > 0 ?
|
|
1096
|
-
}),
|
|
1097
|
-
}, p = b(() =>
|
|
1098
|
-
(w) => w.title.toLowerCase().includes(
|
|
1099
|
-
) : []), v = b(() => a.isDark ? "#1d1e1f" : "#fff"),
|
|
1105
|
+
n.children && n.children.length > 0 ? Z.push(...g(n.children, n.menuName)) : Z.push({ ...n, parentTitle: w, title: n.menuName, path: n.menuUrl });
|
|
1106
|
+
}), Z;
|
|
1107
|
+
}, p = b(() => U.value.trim() ? g(i.menuList).filter(
|
|
1108
|
+
(w) => w.title.toLowerCase().includes(U.value.toLowerCase())
|
|
1109
|
+
) : []), v = b(() => a.isDark ? "#1d1e1f" : "#fff"), _ = b(() => a.isDark ? "#cfd3dc" : "#303133"), L = b(() => "#409eff"), B = f(!1), R = f(null), K = f(!1), z = f(!1), P = f(!1), A = f(!1), U = f(""), D = f(null), J = (c) => {
|
|
1100
1110
|
c && c !== s.path && o.push(c);
|
|
1101
|
-
},
|
|
1111
|
+
}, Y = /* @__PURE__ */ new Set([
|
|
1102
1112
|
"arrow-up",
|
|
1103
1113
|
"arrow-down",
|
|
1104
1114
|
"arrow-left",
|
|
@@ -1200,10 +1210,10 @@ const Ua = {
|
|
|
1200
1210
|
"sun",
|
|
1201
1211
|
"theme",
|
|
1202
1212
|
"skin"
|
|
1203
|
-
]),
|
|
1213
|
+
]), V = (c) => {
|
|
1204
1214
|
if (!c || c === "") return "";
|
|
1205
1215
|
if (c.startsWith("tineco-icon-")) {
|
|
1206
|
-
const
|
|
1216
|
+
const Z = c.replace("tineco-icon-", "");
|
|
1207
1217
|
return {
|
|
1208
1218
|
home: "home",
|
|
1209
1219
|
dashboard: "dashboard",
|
|
@@ -1217,7 +1227,7 @@ const Ua = {
|
|
|
1217
1227
|
chart: "chart",
|
|
1218
1228
|
report: "report",
|
|
1219
1229
|
analytics: "analytics"
|
|
1220
|
-
}[
|
|
1230
|
+
}[Z] || Z;
|
|
1221
1231
|
}
|
|
1222
1232
|
return {
|
|
1223
1233
|
dashboard: "dashboard",
|
|
@@ -1237,28 +1247,28 @@ const Ua = {
|
|
|
1237
1247
|
list: "list",
|
|
1238
1248
|
grid: "grid"
|
|
1239
1249
|
}[c] || c;
|
|
1240
|
-
},
|
|
1250
|
+
}, j = (c) => c ? c.charAt(0) : "", se = (c) => Y.has(c), oe = () => {
|
|
1241
1251
|
a.toggleTheme(), z.value = !1;
|
|
1242
1252
|
}, ue = () => {
|
|
1243
1253
|
document.fullscreenElement ? document.exitFullscreen() : document.documentElement.requestFullscreen();
|
|
1244
1254
|
}, re = () => {
|
|
1245
|
-
|
|
1255
|
+
K.value = !!document.fullscreenElement;
|
|
1246
1256
|
}, T = () => {
|
|
1247
|
-
|
|
1248
|
-
},
|
|
1249
|
-
|
|
1257
|
+
B.value = !B.value;
|
|
1258
|
+
}, Q = () => {
|
|
1259
|
+
B.value = !1;
|
|
1250
1260
|
}, ce = () => {
|
|
1251
|
-
|
|
1261
|
+
A.value = !1, U.value = "";
|
|
1252
1262
|
}, be = (c) => {
|
|
1253
1263
|
o.push(c), ce();
|
|
1254
|
-
},
|
|
1264
|
+
}, ne = () => {
|
|
1255
1265
|
z.value = !0;
|
|
1256
1266
|
}, pe = (c) => {
|
|
1257
|
-
|
|
1267
|
+
P.value = c;
|
|
1258
1268
|
const w = document.documentElement;
|
|
1259
1269
|
c ? w.classList.add("grey-mode") : w.classList.remove("grey-mode");
|
|
1260
1270
|
}, ie = () => {
|
|
1261
|
-
pe(!
|
|
1271
|
+
pe(!P.value), z.value = !1;
|
|
1262
1272
|
}, he = () => {
|
|
1263
1273
|
a.toggleTheme(), z.value = !1;
|
|
1264
1274
|
}, xe = [
|
|
@@ -1277,26 +1287,26 @@ const Ua = {
|
|
|
1277
1287
|
], Me = (c) => {
|
|
1278
1288
|
a.setPrimaryColor(c), z.value = !1;
|
|
1279
1289
|
}, _e = () => {
|
|
1280
|
-
|
|
1290
|
+
Q(), o.push("/profile");
|
|
1281
1291
|
}, fe = () => {
|
|
1282
|
-
|
|
1292
|
+
Q(), o.push("/change-password");
|
|
1283
1293
|
}, S = () => {
|
|
1284
|
-
|
|
1294
|
+
Q(), M.logout(), m.clearUserInfo(), i.clearMenu(), o.push("/login");
|
|
1285
1295
|
}, k = (c) => {
|
|
1286
|
-
R.value && !R.value.contains(c.target) &&
|
|
1287
|
-
},
|
|
1288
|
-
c.key === "Escape" && (ce(),
|
|
1296
|
+
R.value && !R.value.contains(c.target) && Q(), D.value && !D.value.contains(c.target) && ce();
|
|
1297
|
+
}, H = (c) => {
|
|
1298
|
+
c.key === "Escape" && (ce(), Q());
|
|
1289
1299
|
};
|
|
1290
|
-
return
|
|
1291
|
-
document.addEventListener("click", k), document.addEventListener("fullscreenchange", re), document.addEventListener("keydown",
|
|
1300
|
+
return He(() => {
|
|
1301
|
+
document.addEventListener("click", k), document.addEventListener("fullscreenchange", re), document.addEventListener("keydown", H), P.value = document.documentElement.classList.contains("grey-mode");
|
|
1292
1302
|
}), Ge(() => {
|
|
1293
|
-
document.removeEventListener("click", k), document.removeEventListener("fullscreenchange", re), document.removeEventListener("keydown",
|
|
1303
|
+
document.removeEventListener("click", k), document.removeEventListener("fullscreenchange", re), document.removeEventListener("keydown", H);
|
|
1294
1304
|
}), (c, w) => {
|
|
1295
|
-
var
|
|
1305
|
+
var Z;
|
|
1296
1306
|
return l(), u("div", Ws, [
|
|
1297
1307
|
e("div", Ys, [
|
|
1298
1308
|
w[3] || (w[3] = e("img", {
|
|
1299
|
-
src:
|
|
1309
|
+
src: qe,
|
|
1300
1310
|
alt: "Logo",
|
|
1301
1311
|
class: "top-menu__logo-img"
|
|
1302
1312
|
}, null, -1)),
|
|
@@ -1306,44 +1316,44 @@ const Ua = {
|
|
|
1306
1316
|
"model-value": d.value,
|
|
1307
1317
|
mode: "horizontal",
|
|
1308
1318
|
"background-color": v.value,
|
|
1309
|
-
"text-color":
|
|
1319
|
+
"text-color": _.value,
|
|
1310
1320
|
"active-text-color": L.value,
|
|
1311
1321
|
class: "top-menu__menu",
|
|
1312
|
-
onSelect:
|
|
1322
|
+
onSelect: J
|
|
1313
1323
|
}, {
|
|
1314
1324
|
default: E(() => [
|
|
1315
|
-
(l(!0), u(
|
|
1325
|
+
(l(!0), u(q, null, X(r(i).menuList, (n) => (l(), u(q, {
|
|
1316
1326
|
key: n.menuUrl
|
|
1317
1327
|
}, [
|
|
1318
|
-
n.children && n.children.length > 0 ? (l(),
|
|
1328
|
+
n.children && n.children.length > 0 ? (l(), F(r(ht), {
|
|
1319
1329
|
key: 0,
|
|
1320
1330
|
index: n.menuUrl
|
|
1321
1331
|
}, {
|
|
1322
1332
|
title: E(() => [
|
|
1323
1333
|
e("span", Hs, [
|
|
1324
1334
|
n.menuName !== "首页" ? (l(), u("span", Gs, [
|
|
1325
|
-
|
|
1335
|
+
se(V(n.icon)) ? (l(), F(r(I), {
|
|
1326
1336
|
key: 0,
|
|
1327
|
-
name:
|
|
1337
|
+
name: V(n.icon),
|
|
1328
1338
|
size: 16
|
|
1329
|
-
}, null, 8, ["name"])) : (l(), u("span", Js, $(
|
|
1330
|
-
])) :
|
|
1339
|
+
}, null, 8, ["name"])) : (l(), u("span", Js, $(j(n.menuName)), 1))
|
|
1340
|
+
])) : N("", !0),
|
|
1331
1341
|
e("span", Qs, $(n.menuName), 1)
|
|
1332
1342
|
])
|
|
1333
1343
|
]),
|
|
1334
1344
|
default: E(() => [
|
|
1335
|
-
(l(!0), u(
|
|
1345
|
+
(l(!0), u(q, null, X(n.children, (h) => (l(), F(r(Re), {
|
|
1336
1346
|
key: h.menuUrl,
|
|
1337
1347
|
index: h.menuUrl
|
|
1338
1348
|
}, {
|
|
1339
1349
|
default: E(() => [
|
|
1340
1350
|
e("span", Zs, [
|
|
1341
1351
|
e("span", eo, [
|
|
1342
|
-
|
|
1352
|
+
se(V(h.icon)) ? (l(), F(r(I), {
|
|
1343
1353
|
key: 0,
|
|
1344
|
-
name:
|
|
1354
|
+
name: V(h.icon),
|
|
1345
1355
|
size: 16
|
|
1346
|
-
}, null, 8, ["name"])) : (l(), u("span", to, $(
|
|
1356
|
+
}, null, 8, ["name"])) : (l(), u("span", to, $(j(h.menuName)), 1))
|
|
1347
1357
|
]),
|
|
1348
1358
|
e("span", so, $(h.menuName), 1)
|
|
1349
1359
|
])
|
|
@@ -1352,19 +1362,19 @@ const Ua = {
|
|
|
1352
1362
|
}, 1032, ["index"]))), 128))
|
|
1353
1363
|
]),
|
|
1354
1364
|
_: 2
|
|
1355
|
-
}, 1032, ["index"])) : (l(),
|
|
1365
|
+
}, 1032, ["index"])) : (l(), F(r(Re), {
|
|
1356
1366
|
key: 1,
|
|
1357
1367
|
index: n.menuUrl
|
|
1358
1368
|
}, {
|
|
1359
1369
|
default: E(() => [
|
|
1360
1370
|
e("span", oo, [
|
|
1361
1371
|
n.menuName !== "首页" ? (l(), u("span", no, [
|
|
1362
|
-
|
|
1372
|
+
se(V(n.icon)) ? (l(), F(r(I), {
|
|
1363
1373
|
key: 0,
|
|
1364
|
-
name:
|
|
1374
|
+
name: V(n.icon),
|
|
1365
1375
|
size: 16
|
|
1366
|
-
}, null, 8, ["name"])) : (l(), u("span", ao, $(
|
|
1367
|
-
])) :
|
|
1376
|
+
}, null, 8, ["name"])) : (l(), u("span", ao, $(j(n.menuName)), 1))
|
|
1377
|
+
])) : N("", !0),
|
|
1368
1378
|
e("span", lo, $(n.menuName), 1)
|
|
1369
1379
|
])
|
|
1370
1380
|
]),
|
|
@@ -1378,43 +1388,43 @@ const Ua = {
|
|
|
1378
1388
|
e("div", {
|
|
1379
1389
|
class: "top-menu__search",
|
|
1380
1390
|
ref_key: "searchRef",
|
|
1381
|
-
ref:
|
|
1391
|
+
ref: D
|
|
1382
1392
|
}, [
|
|
1383
1393
|
y(r(I), {
|
|
1384
1394
|
name: "search",
|
|
1385
1395
|
size: 14,
|
|
1386
1396
|
class: "top-menu__search-icon"
|
|
1387
1397
|
}),
|
|
1388
|
-
|
|
1389
|
-
"onUpdate:modelValue": w[0] || (w[0] = (n) =>
|
|
1398
|
+
Ve(e("input", {
|
|
1399
|
+
"onUpdate:modelValue": w[0] || (w[0] = (n) => U.value = n),
|
|
1390
1400
|
type: "text",
|
|
1391
1401
|
class: "top-menu__search-input",
|
|
1392
1402
|
placeholder: "搜索菜单...",
|
|
1393
|
-
onFocus: w[1] || (w[1] = (n) =>
|
|
1403
|
+
onFocus: w[1] || (w[1] = (n) => A.value = !0)
|
|
1394
1404
|
}, null, 544), [
|
|
1395
|
-
[Je,
|
|
1405
|
+
[Je, U.value]
|
|
1396
1406
|
]),
|
|
1397
1407
|
y(ke, { name: "search-dropdown" }, {
|
|
1398
1408
|
default: E(() => [
|
|
1399
|
-
|
|
1409
|
+
A.value && (p.value.length > 0 || U.value) ? (l(), u("div", io, [
|
|
1400
1410
|
p.value.length > 0 ? (l(), u("div", uo, [
|
|
1401
|
-
(l(!0), u(
|
|
1411
|
+
(l(!0), u(q, null, X(p.value, (n) => (l(), u("div", {
|
|
1402
1412
|
key: n.path,
|
|
1403
1413
|
class: "top-menu__search-item",
|
|
1404
1414
|
onClick: (h) => be(n.path)
|
|
1405
1415
|
}, [
|
|
1406
1416
|
n.title !== "首页" ? (l(), u("span", mo, [
|
|
1407
|
-
|
|
1417
|
+
se(V(n.icon)) ? (l(), F(r(I), {
|
|
1408
1418
|
key: 0,
|
|
1409
|
-
name:
|
|
1419
|
+
name: V(n.icon),
|
|
1410
1420
|
size: 16
|
|
1411
|
-
}, null, 8, ["name"])) : (l(), u("span", po, $(
|
|
1412
|
-
])) :
|
|
1421
|
+
}, null, 8, ["name"])) : (l(), u("span", po, $(j(n.title)), 1))
|
|
1422
|
+
])) : N("", !0),
|
|
1413
1423
|
e("span", ho, $(n.title), 1),
|
|
1414
|
-
n.parentTitle ? (l(), u("span", vo, $(n.parentTitle), 1)) :
|
|
1424
|
+
n.parentTitle ? (l(), u("span", vo, $(n.parentTitle), 1)) : N("", !0)
|
|
1415
1425
|
], 8, co))), 128))
|
|
1416
1426
|
])) : (l(), u("div", _o, " 未找到匹配的菜单 "))
|
|
1417
|
-
])) :
|
|
1427
|
+
])) : N("", !0)
|
|
1418
1428
|
]),
|
|
1419
1429
|
_: 1
|
|
1420
1430
|
})
|
|
@@ -1422,16 +1432,16 @@ const Ua = {
|
|
|
1422
1432
|
e("div", {
|
|
1423
1433
|
class: "top-menu__action",
|
|
1424
1434
|
onClick: ue,
|
|
1425
|
-
title:
|
|
1435
|
+
title: K.value ? "退出全屏" : "全屏"
|
|
1426
1436
|
}, [
|
|
1427
1437
|
y(r(I), {
|
|
1428
|
-
name:
|
|
1438
|
+
name: K.value ? "fullscreen-exit" : "fullscreen",
|
|
1429
1439
|
size: 16
|
|
1430
1440
|
}, null, 8, ["name"])
|
|
1431
1441
|
], 8, fo),
|
|
1432
1442
|
e("div", {
|
|
1433
1443
|
class: "top-menu__action",
|
|
1434
|
-
onClick:
|
|
1444
|
+
onClick: ne,
|
|
1435
1445
|
title: "换肤设置"
|
|
1436
1446
|
}, [
|
|
1437
1447
|
y(r(I), {
|
|
@@ -1441,7 +1451,7 @@ const Ua = {
|
|
|
1441
1451
|
]),
|
|
1442
1452
|
e("div", {
|
|
1443
1453
|
class: "top-menu__action",
|
|
1444
|
-
onClick:
|
|
1454
|
+
onClick: oe,
|
|
1445
1455
|
title: "切换主题"
|
|
1446
1456
|
}, [
|
|
1447
1457
|
y(r(I), {
|
|
@@ -1456,21 +1466,21 @@ const Ua = {
|
|
|
1456
1466
|
}, [
|
|
1457
1467
|
e("div", {
|
|
1458
1468
|
class: "top-menu__user-trigger",
|
|
1459
|
-
onClick:
|
|
1469
|
+
onClick: Fe(T, ["stop"])
|
|
1460
1470
|
}, [
|
|
1461
1471
|
e("div", go, [
|
|
1462
|
-
e("span", null, $(((
|
|
1472
|
+
e("span", null, $(((Z = r(m).userName) == null ? void 0 : Z.charAt(0)) || "U"), 1)
|
|
1463
1473
|
]),
|
|
1464
1474
|
e("span", yo, $(r(m).userName), 1),
|
|
1465
1475
|
e("span", {
|
|
1466
|
-
class:
|
|
1476
|
+
class: W(["top-menu__user-arrow", { "is-active": B.value }])
|
|
1467
1477
|
}, "▼", 2)
|
|
1468
1478
|
]),
|
|
1469
1479
|
y(ke, { name: "dropdown" }, {
|
|
1470
1480
|
default: E(() => {
|
|
1471
1481
|
var n;
|
|
1472
1482
|
return [
|
|
1473
|
-
|
|
1483
|
+
B.value ? (l(), u("div", ko, [
|
|
1474
1484
|
e("div", wo, [
|
|
1475
1485
|
e("div", bo, [
|
|
1476
1486
|
e("span", null, $(((n = r(m).userName) == null ? void 0 : n.charAt(0)) || "U"), 1)
|
|
@@ -1514,7 +1524,7 @@ const Ua = {
|
|
|
1514
1524
|
w[6] || (w[6] = e("span", null, "退出登录", -1))
|
|
1515
1525
|
])
|
|
1516
1526
|
])
|
|
1517
|
-
])) :
|
|
1527
|
+
])) : N("", !0)
|
|
1518
1528
|
];
|
|
1519
1529
|
}),
|
|
1520
1530
|
_: 1
|
|
@@ -1533,22 +1543,22 @@ const Ua = {
|
|
|
1533
1543
|
e("div", Io, [
|
|
1534
1544
|
w[12] || (w[12] = e("div", { class: "settings-title" }, "布局模式", -1)),
|
|
1535
1545
|
e("div", So, [
|
|
1536
|
-
(l(), u(
|
|
1546
|
+
(l(), u(q, null, X(xe, (n) => e("div", {
|
|
1537
1547
|
key: n.value,
|
|
1538
|
-
class:
|
|
1548
|
+
class: W(["layout-option", { "is-active": Ce.value === n.value }]),
|
|
1539
1549
|
onClick: (h) => $e(n.value)
|
|
1540
1550
|
}, [
|
|
1541
1551
|
e("div", To, [
|
|
1542
|
-
n.value === "sidebar" ? (l(), u("div",
|
|
1552
|
+
n.value === "sidebar" ? (l(), u("div", Uo, [...w[9] || (w[9] = [
|
|
1543
1553
|
e("div", { class: "preview-aside" }, null, -1),
|
|
1544
1554
|
e("div", { class: "preview-main" }, [
|
|
1545
1555
|
e("div", { class: "preview-header" }),
|
|
1546
1556
|
e("div", { class: "preview-content" })
|
|
1547
1557
|
], -1)
|
|
1548
|
-
])])) : n.value === "top" ? (l(), u("div",
|
|
1558
|
+
])])) : n.value === "top" ? (l(), u("div", No, [...w[10] || (w[10] = [
|
|
1549
1559
|
e("div", { class: "preview-header-full" }, null, -1),
|
|
1550
1560
|
e("div", { class: "preview-content-full" }, null, -1)
|
|
1551
|
-
])])) : (l(), u("div",
|
|
1561
|
+
])])) : (l(), u("div", Do, [...w[11] || (w[11] = [
|
|
1552
1562
|
e("div", { class: "preview-header-mix" }, [
|
|
1553
1563
|
e("div", { class: "preview-mix-left" })
|
|
1554
1564
|
], -1),
|
|
@@ -1558,26 +1568,26 @@ const Ua = {
|
|
|
1558
1568
|
], -1)
|
|
1559
1569
|
])]))
|
|
1560
1570
|
]),
|
|
1561
|
-
e("span",
|
|
1571
|
+
e("span", zo, $(n.label), 1)
|
|
1562
1572
|
], 10, Eo)), 64))
|
|
1563
1573
|
])
|
|
1564
1574
|
]),
|
|
1565
1575
|
e("div", Ro, [
|
|
1566
1576
|
w[13] || (w[13] = e("div", { class: "settings-title" }, "主题色", -1)),
|
|
1567
1577
|
e("div", Po, [
|
|
1568
|
-
(l(), u(
|
|
1578
|
+
(l(), u(q, null, X(Le, (n) => e("div", {
|
|
1569
1579
|
key: n.value,
|
|
1570
|
-
class:
|
|
1571
|
-
style:
|
|
1580
|
+
class: W(["color-option", { "is-active": r(a).primaryColor === n.value }]),
|
|
1581
|
+
style: Te({ backgroundColor: n.value }),
|
|
1572
1582
|
title: n.label,
|
|
1573
1583
|
onClick: (h) => Me(n.value)
|
|
1574
1584
|
}, [
|
|
1575
|
-
r(a).primaryColor === n.value ? (l(),
|
|
1585
|
+
r(a).primaryColor === n.value ? (l(), F(r(I), {
|
|
1576
1586
|
key: 0,
|
|
1577
1587
|
name: "check",
|
|
1578
1588
|
size: 12,
|
|
1579
1589
|
color: "#fff"
|
|
1580
|
-
})) :
|
|
1590
|
+
})) : N("", !0)
|
|
1581
1591
|
], 14, Ao)), 64))
|
|
1582
1592
|
])
|
|
1583
1593
|
]),
|
|
@@ -1587,7 +1597,7 @@ const Ua = {
|
|
|
1587
1597
|
e("div", Fo, [
|
|
1588
1598
|
w[15] || (w[15] = e("span", null, "灰色模式", -1)),
|
|
1589
1599
|
e("div", {
|
|
1590
|
-
class:
|
|
1600
|
+
class: W(["switch-wrapper", { "is-checked": P.value }]),
|
|
1591
1601
|
onClick: ie
|
|
1592
1602
|
}, [...w[14] || (w[14] = [
|
|
1593
1603
|
e("span", { class: "switch-core" }, null, -1)
|
|
@@ -1596,7 +1606,7 @@ const Ua = {
|
|
|
1596
1606
|
e("div", Bo, [
|
|
1597
1607
|
w[17] || (w[17] = e("span", null, "暗黑模式", -1)),
|
|
1598
1608
|
e("div", {
|
|
1599
|
-
class:
|
|
1609
|
+
class: W(["switch-wrapper", { "is-checked": r(a).isDark }]),
|
|
1600
1610
|
onClick: he
|
|
1601
1611
|
}, [...w[16] || (w[16] = [
|
|
1602
1612
|
e("span", { class: "switch-core" }, null, -1)
|
|
@@ -1611,7 +1621,7 @@ const Ua = {
|
|
|
1611
1621
|
]);
|
|
1612
1622
|
};
|
|
1613
1623
|
}
|
|
1614
|
-
}), jo = /* @__PURE__ */
|
|
1624
|
+
}), jo = /* @__PURE__ */ te(Ko, [["__scopeId", "data-v-ff5f8764"]]), qo = { class: "mix-top-menu" }, Wo = { class: "mix-top-menu__logo" }, Yo = { class: "mix-top-menu__logo-text" }, Xo = { class: "mix-top-menu__menu-content" }, Ho = {
|
|
1615
1625
|
key: 0,
|
|
1616
1626
|
class: "mix-top-menu__menu-icon"
|
|
1617
1627
|
}, Go = {
|
|
@@ -1647,37 +1657,37 @@ const Ua = {
|
|
|
1647
1657
|
}, $n = {
|
|
1648
1658
|
key: 2,
|
|
1649
1659
|
class: "layout-preview-mix"
|
|
1650
|
-
}, Ln = { class: "layout-option__label" }, Mn = { class: "settings-section" }, In = { class: "settings-color-options" }, Sn = ["title", "onClick"], En = { class: "settings-section" }, Tn = { class: "settings-switch-list" },
|
|
1660
|
+
}, Ln = { class: "layout-option__label" }, Mn = { class: "settings-section" }, In = { class: "settings-color-options" }, Sn = ["title", "onClick"], En = { class: "settings-section" }, Tn = { class: "settings-switch-list" }, Un = { class: "settings-switch-item" }, Nn = { class: "settings-switch-item" }, Dn = /* @__PURE__ */ le({
|
|
1651
1661
|
__name: "MixTopMenu",
|
|
1652
1662
|
setup(t) {
|
|
1653
|
-
const s = we(), o = de(), i = ve(), a = me(), m =
|
|
1654
|
-
const
|
|
1663
|
+
const s = we(), o = de(), i = ve(), a = me(), m = ee(), M = Ue(), d = f(""), g = (n, h = "") => {
|
|
1664
|
+
const G = [];
|
|
1655
1665
|
return n.forEach((x) => {
|
|
1656
|
-
x.children && x.children.length > 0 ?
|
|
1657
|
-
}),
|
|
1658
|
-
}, p = b(() =>
|
|
1659
|
-
(h) => h.title.toLowerCase().includes(
|
|
1666
|
+
x.children && x.children.length > 0 ? G.push(...g(x.children, x.menuName)) : G.push({ ...x, parentTitle: h, title: x.menuName, path: x.menuUrl });
|
|
1667
|
+
}), G;
|
|
1668
|
+
}, p = b(() => V.value.trim() ? g(i.menuList).filter(
|
|
1669
|
+
(h) => h.title.toLowerCase().includes(V.value.toLowerCase())
|
|
1660
1670
|
) : []), v = b(() => {
|
|
1661
1671
|
const n = i.menuList.find((h) => h.menuUrl === d.value);
|
|
1662
1672
|
return (n == null ? void 0 : n.children) || [];
|
|
1663
|
-
}),
|
|
1664
|
-
|
|
1665
|
-
},
|
|
1673
|
+
}), _ = b(() => i.menuList.find((n) => !!(s.path === n.menuUrl || n.children && n.children.some((h) => s.path.startsWith(h.menuUrl) || s.path === h.menuUrl)))), L = () => {
|
|
1674
|
+
_.value ? d.value = _.value.menuUrl : i.menuList.length > 0 && (d.value = i.menuList[0].menuUrl);
|
|
1675
|
+
}, B = (n) => {
|
|
1666
1676
|
d.value = n;
|
|
1667
|
-
const h = i.menuList.find((
|
|
1677
|
+
const h = i.menuList.find((G) => G.menuUrl === n);
|
|
1668
1678
|
if (h)
|
|
1669
1679
|
if (h.children && h.children.length > 0) {
|
|
1670
|
-
const
|
|
1671
|
-
s.path !==
|
|
1680
|
+
const G = h.children[0].menuUrl;
|
|
1681
|
+
s.path !== G && o.push(G);
|
|
1672
1682
|
} else
|
|
1673
1683
|
s.path !== n && o.push(n);
|
|
1674
|
-
}, R = b(() => a.isDark ? "#1d1e1f" : "#fff"),
|
|
1675
|
-
|
|
1684
|
+
}, R = b(() => a.isDark ? "#1d1e1f" : "#fff"), K = b(() => a.isDark ? "#cfd3dc" : "#303133"), z = b(() => "#409eff"), P = f(!1), A = f(null), U = f(!1), D = f(!1), J = f(!1), Y = f(!1), V = f(""), j = f(null);
|
|
1685
|
+
Ee(() => s.path, () => {
|
|
1676
1686
|
L(), a.setMixSubMenus(v.value);
|
|
1677
|
-
}),
|
|
1687
|
+
}), Ee(() => i.menuList, (n) => {
|
|
1678
1688
|
n && n.length > 0 && (L(), a.setMixSubMenus(v.value));
|
|
1679
1689
|
}, { immediate: !0 });
|
|
1680
|
-
const
|
|
1690
|
+
const se = /* @__PURE__ */ new Set([
|
|
1681
1691
|
"arrow-up",
|
|
1682
1692
|
"arrow-down",
|
|
1683
1693
|
"arrow-left",
|
|
@@ -1779,10 +1789,10 @@ const Ua = {
|
|
|
1779
1789
|
"sun",
|
|
1780
1790
|
"theme",
|
|
1781
1791
|
"skin"
|
|
1782
|
-
]),
|
|
1792
|
+
]), oe = (n) => {
|
|
1783
1793
|
if (!n || n === "") return "";
|
|
1784
1794
|
if (n.startsWith("tineco-icon-")) {
|
|
1785
|
-
const
|
|
1795
|
+
const G = n.replace("tineco-icon-", "");
|
|
1786
1796
|
return {
|
|
1787
1797
|
home: "home",
|
|
1788
1798
|
dashboard: "dashboard",
|
|
@@ -1796,7 +1806,7 @@ const Ua = {
|
|
|
1796
1806
|
chart: "chart",
|
|
1797
1807
|
report: "report",
|
|
1798
1808
|
analytics: "analytics"
|
|
1799
|
-
}[
|
|
1809
|
+
}[G] || G;
|
|
1800
1810
|
}
|
|
1801
1811
|
return {
|
|
1802
1812
|
dashboard: "dashboard",
|
|
@@ -1816,36 +1826,36 @@ const Ua = {
|
|
|
1816
1826
|
list: "list",
|
|
1817
1827
|
grid: "grid"
|
|
1818
1828
|
}[n] || n;
|
|
1819
|
-
}, ue = (n) => n ? n.charAt(0) : "", re = (n) =>
|
|
1820
|
-
a.toggleTheme(),
|
|
1821
|
-
},
|
|
1829
|
+
}, ue = (n) => n ? n.charAt(0) : "", re = (n) => se.has(n), T = () => {
|
|
1830
|
+
a.toggleTheme(), D.value = !1;
|
|
1831
|
+
}, Q = () => {
|
|
1822
1832
|
document.fullscreenElement ? document.exitFullscreen() : document.documentElement.requestFullscreen();
|
|
1823
1833
|
}, ce = () => {
|
|
1824
|
-
|
|
1834
|
+
U.value = !!document.fullscreenElement;
|
|
1825
1835
|
}, be = () => {
|
|
1826
|
-
|
|
1827
|
-
},
|
|
1828
|
-
|
|
1836
|
+
P.value = !P.value;
|
|
1837
|
+
}, ne = () => {
|
|
1838
|
+
P.value = !1;
|
|
1829
1839
|
}, pe = () => {
|
|
1830
|
-
|
|
1840
|
+
Y.value = !1, V.value = "";
|
|
1831
1841
|
}, ie = (n) => {
|
|
1832
1842
|
o.push(n), pe();
|
|
1833
1843
|
}, he = () => {
|
|
1834
|
-
|
|
1844
|
+
D.value = !0;
|
|
1835
1845
|
}, xe = (n) => {
|
|
1836
|
-
|
|
1846
|
+
J.value = n;
|
|
1837
1847
|
const h = document.documentElement;
|
|
1838
1848
|
n ? h.classList.add("grey-mode") : h.classList.remove("grey-mode");
|
|
1839
1849
|
}, Ce = () => {
|
|
1840
|
-
xe(!
|
|
1850
|
+
xe(!J.value), D.value = !1;
|
|
1841
1851
|
}, $e = () => {
|
|
1842
|
-
a.toggleTheme(),
|
|
1852
|
+
a.toggleTheme(), D.value = !1;
|
|
1843
1853
|
}, Le = [
|
|
1844
1854
|
{ value: "sidebar", label: "左侧菜单", icon: "sidebar-left" },
|
|
1845
1855
|
{ value: "top", label: "顶部菜单", icon: "menu" },
|
|
1846
1856
|
{ value: "mix", label: "混合菜单", icon: "grid" }
|
|
1847
1857
|
], Me = b(() => a.layout), _e = (n) => {
|
|
1848
|
-
a.setLayout(n),
|
|
1858
|
+
a.setLayout(n), D.value = !1;
|
|
1849
1859
|
}, fe = [
|
|
1850
1860
|
{ value: "#409eff", label: "默认蓝" },
|
|
1851
1861
|
{ value: "#1890ff", label: "科技蓝" },
|
|
@@ -1854,28 +1864,28 @@ const Ua = {
|
|
|
1854
1864
|
{ value: "#f5222d", label: "薄暮红" },
|
|
1855
1865
|
{ value: "#722ed1", label: "酱紫" }
|
|
1856
1866
|
], S = (n) => {
|
|
1857
|
-
a.setPrimaryColor(n),
|
|
1867
|
+
a.setPrimaryColor(n), D.value = !1;
|
|
1858
1868
|
}, k = () => {
|
|
1859
|
-
|
|
1860
|
-
},
|
|
1861
|
-
|
|
1869
|
+
ne(), o.push("/profile");
|
|
1870
|
+
}, H = () => {
|
|
1871
|
+
ne(), o.push("/change-password");
|
|
1862
1872
|
}, c = () => {
|
|
1863
|
-
|
|
1873
|
+
ne(), M.logout(), m.clearUserInfo(), i.clearMenu(), o.push("/login");
|
|
1864
1874
|
}, w = (n) => {
|
|
1865
|
-
|
|
1866
|
-
},
|
|
1867
|
-
n.key === "Escape" && (pe(),
|
|
1875
|
+
A.value && !A.value.contains(n.target) && ne(), j.value && !j.value.contains(n.target) && pe();
|
|
1876
|
+
}, Z = (n) => {
|
|
1877
|
+
n.key === "Escape" && (pe(), ne());
|
|
1868
1878
|
};
|
|
1869
|
-
return
|
|
1870
|
-
document.addEventListener("click", w), document.addEventListener("fullscreenchange", ce), document.addEventListener("keydown",
|
|
1879
|
+
return He(() => {
|
|
1880
|
+
document.addEventListener("click", w), document.addEventListener("fullscreenchange", ce), document.addEventListener("keydown", Z), J.value = document.documentElement.classList.contains("grey-mode"), L();
|
|
1871
1881
|
}), Ge(() => {
|
|
1872
|
-
document.removeEventListener("click", w), document.removeEventListener("fullscreenchange", ce), document.removeEventListener("keydown",
|
|
1882
|
+
document.removeEventListener("click", w), document.removeEventListener("fullscreenchange", ce), document.removeEventListener("keydown", Z);
|
|
1873
1883
|
}), (n, h) => {
|
|
1874
|
-
var
|
|
1884
|
+
var G;
|
|
1875
1885
|
return l(), u("div", qo, [
|
|
1876
1886
|
e("div", Wo, [
|
|
1877
1887
|
h[3] || (h[3] = e("img", {
|
|
1878
|
-
src:
|
|
1888
|
+
src: qe,
|
|
1879
1889
|
alt: "Logo",
|
|
1880
1890
|
class: "mix-top-menu__logo-img"
|
|
1881
1891
|
}, null, -1)),
|
|
@@ -1885,25 +1895,25 @@ const Ua = {
|
|
|
1885
1895
|
"model-value": d.value,
|
|
1886
1896
|
mode: "horizontal",
|
|
1887
1897
|
"background-color": R.value,
|
|
1888
|
-
"text-color":
|
|
1898
|
+
"text-color": K.value,
|
|
1889
1899
|
"active-text-color": z.value,
|
|
1890
1900
|
class: "mix-top-menu__menu",
|
|
1891
|
-
onSelect:
|
|
1901
|
+
onSelect: B
|
|
1892
1902
|
}, {
|
|
1893
1903
|
default: E(() => [
|
|
1894
|
-
(l(!0), u(
|
|
1904
|
+
(l(!0), u(q, null, X(r(i).menuList, (x) => (l(), F(r(Re), {
|
|
1895
1905
|
key: x.menuUrl,
|
|
1896
1906
|
index: x.menuUrl
|
|
1897
1907
|
}, {
|
|
1898
1908
|
default: E(() => [
|
|
1899
1909
|
e("span", Xo, [
|
|
1900
1910
|
x.menuName !== "首页" ? (l(), u("span", Ho, [
|
|
1901
|
-
re(
|
|
1911
|
+
re(oe(x.icon)) ? (l(), F(r(I), {
|
|
1902
1912
|
key: 0,
|
|
1903
|
-
name:
|
|
1913
|
+
name: oe(x.icon),
|
|
1904
1914
|
size: 16
|
|
1905
1915
|
}, null, 8, ["name"])) : (l(), u("span", Go, $(ue(x.menuName)), 1))
|
|
1906
|
-
])) :
|
|
1916
|
+
])) : N("", !0),
|
|
1907
1917
|
e("span", Jo, $(x.menuName), 1)
|
|
1908
1918
|
])
|
|
1909
1919
|
]),
|
|
@@ -1916,54 +1926,54 @@ const Ua = {
|
|
|
1916
1926
|
e("div", {
|
|
1917
1927
|
class: "mix-top-menu__search",
|
|
1918
1928
|
ref_key: "searchRef",
|
|
1919
|
-
ref:
|
|
1929
|
+
ref: j
|
|
1920
1930
|
}, [
|
|
1921
1931
|
y(r(I), {
|
|
1922
1932
|
name: "search",
|
|
1923
1933
|
size: 14,
|
|
1924
1934
|
class: "mix-top-menu__search-icon"
|
|
1925
1935
|
}),
|
|
1926
|
-
|
|
1927
|
-
"onUpdate:modelValue": h[0] || (h[0] = (x) =>
|
|
1936
|
+
Ve(e("input", {
|
|
1937
|
+
"onUpdate:modelValue": h[0] || (h[0] = (x) => V.value = x),
|
|
1928
1938
|
type: "text",
|
|
1929
1939
|
class: "mix-top-menu__search-input",
|
|
1930
1940
|
placeholder: "搜索菜单...",
|
|
1931
|
-
onFocus: h[1] || (h[1] = (x) =>
|
|
1941
|
+
onFocus: h[1] || (h[1] = (x) => Y.value = !0)
|
|
1932
1942
|
}, null, 544), [
|
|
1933
|
-
[Je,
|
|
1943
|
+
[Je, V.value]
|
|
1934
1944
|
]),
|
|
1935
1945
|
y(ke, { name: "search-dropdown" }, {
|
|
1936
1946
|
default: E(() => [
|
|
1937
|
-
|
|
1947
|
+
Y.value && (p.value.length > 0 || V.value) ? (l(), u("div", Zo, [
|
|
1938
1948
|
p.value.length > 0 ? (l(), u("div", en, [
|
|
1939
|
-
(l(!0), u(
|
|
1949
|
+
(l(!0), u(q, null, X(p.value, (x) => (l(), u("div", {
|
|
1940
1950
|
key: x.path,
|
|
1941
1951
|
class: "mix-top-menu__search-item",
|
|
1942
1952
|
onClick: (ut) => ie(x.path)
|
|
1943
1953
|
}, [
|
|
1944
1954
|
x.title !== "首页" ? (l(), u("span", sn, [
|
|
1945
|
-
re(
|
|
1955
|
+
re(oe(x.icon)) ? (l(), F(r(I), {
|
|
1946
1956
|
key: 0,
|
|
1947
|
-
name:
|
|
1957
|
+
name: oe(x.icon),
|
|
1948
1958
|
size: 16
|
|
1949
1959
|
}, null, 8, ["name"])) : (l(), u("span", on, $(ue(x.title)), 1))
|
|
1950
|
-
])) :
|
|
1960
|
+
])) : N("", !0),
|
|
1951
1961
|
e("span", nn, $(x.title), 1),
|
|
1952
|
-
x.parentTitle ? (l(), u("span", an, $(x.parentTitle), 1)) :
|
|
1962
|
+
x.parentTitle ? (l(), u("span", an, $(x.parentTitle), 1)) : N("", !0)
|
|
1953
1963
|
], 8, tn))), 128))
|
|
1954
1964
|
])) : (l(), u("div", ln, " 未找到匹配的菜单 "))
|
|
1955
|
-
])) :
|
|
1965
|
+
])) : N("", !0)
|
|
1956
1966
|
]),
|
|
1957
1967
|
_: 1
|
|
1958
1968
|
})
|
|
1959
1969
|
], 512),
|
|
1960
1970
|
e("div", {
|
|
1961
1971
|
class: "mix-top-menu__action",
|
|
1962
|
-
onClick:
|
|
1963
|
-
title:
|
|
1972
|
+
onClick: Q,
|
|
1973
|
+
title: U.value ? "退出全屏" : "全屏"
|
|
1964
1974
|
}, [
|
|
1965
1975
|
y(r(I), {
|
|
1966
|
-
name:
|
|
1976
|
+
name: U.value ? "fullscreen-exit" : "fullscreen",
|
|
1967
1977
|
size: 16
|
|
1968
1978
|
}, null, 8, ["name"])
|
|
1969
1979
|
], 8, rn),
|
|
@@ -1990,25 +2000,25 @@ const Ua = {
|
|
|
1990
2000
|
e("div", {
|
|
1991
2001
|
class: "mix-top-menu__user",
|
|
1992
2002
|
ref_key: "dropdownRef",
|
|
1993
|
-
ref:
|
|
2003
|
+
ref: A
|
|
1994
2004
|
}, [
|
|
1995
2005
|
e("div", {
|
|
1996
2006
|
class: "mix-top-menu__user-trigger",
|
|
1997
|
-
onClick:
|
|
2007
|
+
onClick: Fe(be, ["stop"])
|
|
1998
2008
|
}, [
|
|
1999
2009
|
e("div", un, [
|
|
2000
|
-
e("span", null, $(((
|
|
2010
|
+
e("span", null, $(((G = r(m).userName) == null ? void 0 : G.charAt(0)) || "U"), 1)
|
|
2001
2011
|
]),
|
|
2002
2012
|
e("span", cn, $(r(m).userName), 1),
|
|
2003
2013
|
e("span", {
|
|
2004
|
-
class:
|
|
2014
|
+
class: W(["mix-top-menu__user-arrow", { "is-active": P.value }])
|
|
2005
2015
|
}, "▼", 2)
|
|
2006
2016
|
]),
|
|
2007
2017
|
y(ke, { name: "dropdown" }, {
|
|
2008
2018
|
default: E(() => {
|
|
2009
2019
|
var x;
|
|
2010
2020
|
return [
|
|
2011
|
-
|
|
2021
|
+
P.value ? (l(), u("div", dn, [
|
|
2012
2022
|
e("div", mn, [
|
|
2013
2023
|
e("div", pn, [
|
|
2014
2024
|
e("span", null, $(((x = r(m).userName) == null ? void 0 : x.charAt(0)) || "U"), 1)
|
|
@@ -2032,7 +2042,7 @@ const Ua = {
|
|
|
2032
2042
|
]),
|
|
2033
2043
|
e("div", {
|
|
2034
2044
|
class: "mix-top-menu__dropdown-item",
|
|
2035
|
-
onClick:
|
|
2045
|
+
onClick: H
|
|
2036
2046
|
}, [
|
|
2037
2047
|
y(r(I), {
|
|
2038
2048
|
name: "lock",
|
|
@@ -2052,7 +2062,7 @@ const Ua = {
|
|
|
2052
2062
|
h[6] || (h[6] = e("span", null, "退出登录", -1))
|
|
2053
2063
|
])
|
|
2054
2064
|
])
|
|
2055
|
-
])) :
|
|
2065
|
+
])) : N("", !0)
|
|
2056
2066
|
];
|
|
2057
2067
|
}),
|
|
2058
2068
|
_: 1
|
|
@@ -2060,8 +2070,8 @@ const Ua = {
|
|
|
2060
2070
|
], 512)
|
|
2061
2071
|
]),
|
|
2062
2072
|
y(r(st), {
|
|
2063
|
-
modelValue:
|
|
2064
|
-
"onUpdate:modelValue": h[2] || (h[2] = (x) =>
|
|
2073
|
+
modelValue: D.value,
|
|
2074
|
+
"onUpdate:modelValue": h[2] || (h[2] = (x) => D.value = x),
|
|
2065
2075
|
title: "换肤设置",
|
|
2066
2076
|
direction: "rtl",
|
|
2067
2077
|
size: "320px"
|
|
@@ -2071,9 +2081,9 @@ const Ua = {
|
|
|
2071
2081
|
e("div", yn, [
|
|
2072
2082
|
h[12] || (h[12] = e("div", { class: "settings-title" }, "布局模式", -1)),
|
|
2073
2083
|
e("div", kn, [
|
|
2074
|
-
(l(), u(
|
|
2084
|
+
(l(), u(q, null, X(Le, (x) => e("div", {
|
|
2075
2085
|
key: x.value,
|
|
2076
|
-
class:
|
|
2086
|
+
class: W(["layout-option", { "is-active": Me.value === x.value }]),
|
|
2077
2087
|
onClick: (ut) => _e(x.value)
|
|
2078
2088
|
}, [
|
|
2079
2089
|
e("div", bn, [
|
|
@@ -2103,38 +2113,38 @@ const Ua = {
|
|
|
2103
2113
|
e("div", Mn, [
|
|
2104
2114
|
h[13] || (h[13] = e("div", { class: "settings-title" }, "主题色", -1)),
|
|
2105
2115
|
e("div", In, [
|
|
2106
|
-
(l(), u(
|
|
2116
|
+
(l(), u(q, null, X(fe, (x) => e("div", {
|
|
2107
2117
|
key: x.value,
|
|
2108
|
-
class:
|
|
2109
|
-
style:
|
|
2118
|
+
class: W(["color-option", { "is-active": r(a).primaryColor === x.value }]),
|
|
2119
|
+
style: Te({ backgroundColor: x.value }),
|
|
2110
2120
|
title: x.label,
|
|
2111
2121
|
onClick: (ut) => S(x.value)
|
|
2112
2122
|
}, [
|
|
2113
|
-
r(a).primaryColor === x.value ? (l(),
|
|
2123
|
+
r(a).primaryColor === x.value ? (l(), F(r(I), {
|
|
2114
2124
|
key: 0,
|
|
2115
2125
|
name: "check",
|
|
2116
2126
|
size: 12,
|
|
2117
2127
|
color: "#fff"
|
|
2118
|
-
})) :
|
|
2128
|
+
})) : N("", !0)
|
|
2119
2129
|
], 14, Sn)), 64))
|
|
2120
2130
|
])
|
|
2121
2131
|
]),
|
|
2122
2132
|
e("div", En, [
|
|
2123
2133
|
h[18] || (h[18] = e("div", { class: "settings-title" }, "功能设置", -1)),
|
|
2124
2134
|
e("div", Tn, [
|
|
2125
|
-
e("div",
|
|
2135
|
+
e("div", Un, [
|
|
2126
2136
|
h[15] || (h[15] = e("span", null, "灰色模式", -1)),
|
|
2127
2137
|
e("div", {
|
|
2128
|
-
class:
|
|
2138
|
+
class: W(["switch-wrapper", { "is-checked": J.value }]),
|
|
2129
2139
|
onClick: Ce
|
|
2130
2140
|
}, [...h[14] || (h[14] = [
|
|
2131
2141
|
e("span", { class: "switch-core" }, null, -1)
|
|
2132
2142
|
])], 2)
|
|
2133
2143
|
]),
|
|
2134
|
-
e("div",
|
|
2144
|
+
e("div", Nn, [
|
|
2135
2145
|
h[17] || (h[17] = e("span", null, "暗黑模式", -1)),
|
|
2136
2146
|
e("div", {
|
|
2137
|
-
class:
|
|
2147
|
+
class: W(["switch-wrapper", { "is-checked": r(a).isDark }]),
|
|
2138
2148
|
onClick: $e
|
|
2139
2149
|
}, [...h[16] || (h[16] = [
|
|
2140
2150
|
e("span", { class: "switch-core" }, null, -1)
|
|
@@ -2149,7 +2159,7 @@ const Ua = {
|
|
|
2149
2159
|
]);
|
|
2150
2160
|
};
|
|
2151
2161
|
}
|
|
2152
|
-
}),
|
|
2162
|
+
}), zn = /* @__PURE__ */ te(Dn, [["__scopeId", "data-v-25806305"]]), Rn = {
|
|
2153
2163
|
key: 0,
|
|
2154
2164
|
class: "layout layout--sidebar"
|
|
2155
2165
|
}, Pn = { class: "layout__main" }, An = { class: "layout__header" }, On = { class: "layout__content" }, Vn = {
|
|
@@ -2158,7 +2168,7 @@ const Ua = {
|
|
|
2158
2168
|
}, Fn = { class: "layout__top-menu" }, Bn = { class: "layout__main" }, Kn = { class: "layout__content" }, jn = {
|
|
2159
2169
|
key: 2,
|
|
2160
2170
|
class: "layout layout--mix"
|
|
2161
|
-
}, qn = { class: "layout__mix-top-menu" }, Wn = { class: "layout__mix-body" }, Yn = { class: "layout__content" }, Xn = /* @__PURE__ */
|
|
2171
|
+
}, qn = { class: "layout__mix-top-menu" }, Wn = { class: "layout__mix-body" }, Yn = { class: "layout__content" }, Xn = /* @__PURE__ */ le({
|
|
2162
2172
|
__name: "index",
|
|
2163
2173
|
setup(t) {
|
|
2164
2174
|
const s = me(), o = ve(), i = b(
|
|
@@ -2166,11 +2176,11 @@ const Ua = {
|
|
|
2166
2176
|
), a = b(() => s.layout), m = b(() => a.value === "mix"), M = b(() => a.value === "sidebar" ? o.menuList : a.value === "mix" ? s.mixSubMenus : []), d = b(() => m.value ? M.value.length > 0 : !1);
|
|
2167
2177
|
return (g, p) => {
|
|
2168
2178
|
const v = pt("router-view");
|
|
2169
|
-
return l(), u(
|
|
2179
|
+
return l(), u(q, null, [
|
|
2170
2180
|
a.value === "sidebar" ? (l(), u("div", Rn, [
|
|
2171
2181
|
e("aside", {
|
|
2172
2182
|
class: "layout__aside",
|
|
2173
|
-
style:
|
|
2183
|
+
style: Te({ width: i.value })
|
|
2174
2184
|
}, [
|
|
2175
2185
|
y(mt, {
|
|
2176
2186
|
"menu-list": M.value,
|
|
@@ -2186,7 +2196,7 @@ const Ua = {
|
|
|
2186
2196
|
y(v)
|
|
2187
2197
|
])
|
|
2188
2198
|
])
|
|
2189
|
-
])) :
|
|
2199
|
+
])) : N("", !0),
|
|
2190
2200
|
a.value === "top" ? (l(), u("div", Vn, [
|
|
2191
2201
|
e("div", Fn, [
|
|
2192
2202
|
y(jo)
|
|
@@ -2196,35 +2206,35 @@ const Ua = {
|
|
|
2196
2206
|
y(v)
|
|
2197
2207
|
])
|
|
2198
2208
|
])
|
|
2199
|
-
])) :
|
|
2209
|
+
])) : N("", !0),
|
|
2200
2210
|
a.value === "mix" ? (l(), u("div", jn, [
|
|
2201
2211
|
e("div", qn, [
|
|
2202
|
-
y(
|
|
2212
|
+
y(zn)
|
|
2203
2213
|
]),
|
|
2204
2214
|
e("div", Wn, [
|
|
2205
2215
|
d.value ? (l(), u("aside", {
|
|
2206
2216
|
key: 0,
|
|
2207
2217
|
class: "layout__aside",
|
|
2208
|
-
style:
|
|
2218
|
+
style: Te({ width: i.value })
|
|
2209
2219
|
}, [
|
|
2210
2220
|
y(mt, {
|
|
2211
2221
|
"menu-list": M.value,
|
|
2212
2222
|
"show-logo": !1,
|
|
2213
2223
|
"show-user": !1
|
|
2214
2224
|
}, null, 8, ["menu-list"])
|
|
2215
|
-
], 4)) :
|
|
2225
|
+
], 4)) : N("", !0),
|
|
2216
2226
|
e("main", Yn, [
|
|
2217
2227
|
y(v)
|
|
2218
2228
|
])
|
|
2219
2229
|
])
|
|
2220
|
-
])) :
|
|
2230
|
+
])) : N("", !0)
|
|
2221
2231
|
], 64);
|
|
2222
2232
|
};
|
|
2223
2233
|
}
|
|
2224
|
-
}), yt = /* @__PURE__ */
|
|
2234
|
+
}), yt = /* @__PURE__ */ te(Xn, [["__scopeId", "data-v-70b115a5"]]), Hn = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
2225
2235
|
__proto__: null,
|
|
2226
2236
|
default: yt
|
|
2227
|
-
}, Symbol.toStringTag, { value: "Module" })), Gn = { class: "tabs-wrapper" }, Jn = { class: "tab-label" }, Qn = ["onClick"], Zn = /* @__PURE__ */
|
|
2237
|
+
}, Symbol.toStringTag, { value: "Module" })), Gn = { class: "tabs-wrapper" }, Jn = { class: "tab-label" }, Qn = ["onClick"], Zn = /* @__PURE__ */ le({
|
|
2228
2238
|
__name: "Tabs",
|
|
2229
2239
|
setup(t) {
|
|
2230
2240
|
const s = we(), o = de(), i = b(() => {
|
|
@@ -2243,7 +2253,7 @@ const Ua = {
|
|
|
2243
2253
|
}, M = (d) => {
|
|
2244
2254
|
const g = i.value.find((p) => p.path === d);
|
|
2245
2255
|
if (!(g != null && g.affix) && d === a.value) {
|
|
2246
|
-
const p = i.value.findIndex((
|
|
2256
|
+
const p = i.value.findIndex((_) => _.path === d), v = i.value[p - 1] || i.value[p + 1];
|
|
2247
2257
|
v && o.push(v.path);
|
|
2248
2258
|
}
|
|
2249
2259
|
};
|
|
@@ -2255,7 +2265,7 @@ const Ua = {
|
|
|
2255
2265
|
onTabClick: m
|
|
2256
2266
|
}, {
|
|
2257
2267
|
default: E(() => [
|
|
2258
|
-
(l(!0), u(
|
|
2268
|
+
(l(!0), u(q, null, X(i.value, (p) => (l(), F(r(Mt), {
|
|
2259
2269
|
key: p.path,
|
|
2260
2270
|
name: p.path,
|
|
2261
2271
|
label: p.title,
|
|
@@ -2264,10 +2274,10 @@ const Ua = {
|
|
|
2264
2274
|
label: E(() => [
|
|
2265
2275
|
e("span", Jn, [
|
|
2266
2276
|
ye($(p.title) + " ", 1),
|
|
2267
|
-
p.affix ?
|
|
2277
|
+
p.affix ? N("", !0) : (l(), u("span", {
|
|
2268
2278
|
key: 0,
|
|
2269
2279
|
class: "tab-close",
|
|
2270
|
-
onClick:
|
|
2280
|
+
onClick: Fe((v) => M(p.path), ["stop"])
|
|
2271
2281
|
}, " ✕ ", 8, Qn))
|
|
2272
2282
|
])
|
|
2273
2283
|
]),
|
|
@@ -2278,13 +2288,13 @@ const Ua = {
|
|
|
2278
2288
|
}, 8, ["modelValue"])
|
|
2279
2289
|
]));
|
|
2280
2290
|
}
|
|
2281
|
-
}), Aa = /* @__PURE__ */
|
|
2291
|
+
}), Aa = /* @__PURE__ */ te(Zn, [["__scopeId", "data-v-9156d8cd"]]), ea = {}, ta = { class: "footer" };
|
|
2282
2292
|
function sa(t, s) {
|
|
2283
2293
|
return l(), u("div", ta, [...s[0] || (s[0] = [
|
|
2284
2294
|
e("span", null, "Copyright © 2024 Xto Demo. All Rights Reserved.", -1)
|
|
2285
2295
|
])]);
|
|
2286
2296
|
}
|
|
2287
|
-
const Oa = /* @__PURE__ */
|
|
2297
|
+
const Oa = /* @__PURE__ */ te(ea, [["render", sa], ["__scopeId", "data-v-4852826a"]]), oa = () => {
|
|
2288
2298
|
const t = Et.create({
|
|
2289
2299
|
baseURL: void 0,
|
|
2290
2300
|
timeout: 3e4,
|
|
@@ -2294,14 +2304,14 @@ const Oa = /* @__PURE__ */ ee(ea, [["render", sa], ["__scopeId", "data-v-4852826
|
|
|
2294
2304
|
});
|
|
2295
2305
|
return t.interceptors.request.use(
|
|
2296
2306
|
(s) => {
|
|
2297
|
-
const o =
|
|
2307
|
+
const o = We(), i = zt() || "Bearer";
|
|
2298
2308
|
return o && (s.headers.Authorization = `${i} ${o}`), s;
|
|
2299
2309
|
},
|
|
2300
2310
|
(s) => Promise.reject(s)
|
|
2301
2311
|
), t.interceptors.response.use(
|
|
2302
2312
|
(s) => {
|
|
2303
2313
|
const { data: o } = s;
|
|
2304
|
-
return o.code === 200 || o.code === 0 ? o.data : o.code === 9121 ? (
|
|
2314
|
+
return o.code === 200 || o.code === 0 ? o.data : o.code === 9121 ? (ae.error("登录已过期,请重新登录"), Se(), window.location.href = "/login", Promise.reject(new Error(o.message || "EXPIRED OR INVALID TOKEN"))) : (ae.error(o.message || "请求失败"), Promise.reject(new Error(o.message || "请求失败")));
|
|
2305
2315
|
},
|
|
2306
2316
|
(s) => {
|
|
2307
2317
|
var i;
|
|
@@ -2309,29 +2319,29 @@ const Oa = /* @__PURE__ */ ee(ea, [["render", sa], ["__scopeId", "data-v-4852826
|
|
|
2309
2319
|
if (o) {
|
|
2310
2320
|
const { data: a } = o;
|
|
2311
2321
|
if ((a == null ? void 0 : a.code) === 9121)
|
|
2312
|
-
return
|
|
2322
|
+
return ae.error("登录已过期,请重新登录"), Se(), window.location.href = "/login", Promise.reject(s);
|
|
2313
2323
|
switch (o.status) {
|
|
2314
2324
|
case 401:
|
|
2315
|
-
|
|
2325
|
+
ae.error("登录已过期,请重新登录"), Se(), window.location.href = "/login";
|
|
2316
2326
|
break;
|
|
2317
2327
|
case 403:
|
|
2318
|
-
|
|
2328
|
+
ae.error("没有权限访问");
|
|
2319
2329
|
break;
|
|
2320
2330
|
case 404:
|
|
2321
|
-
|
|
2331
|
+
ae.error("请求资源不存在");
|
|
2322
2332
|
break;
|
|
2323
2333
|
case 500:
|
|
2324
|
-
|
|
2334
|
+
ae.error("服务器错误");
|
|
2325
2335
|
break;
|
|
2326
2336
|
default:
|
|
2327
|
-
|
|
2337
|
+
ae.error(((i = o.data) == null ? void 0 : i.message) || "请求失败");
|
|
2328
2338
|
}
|
|
2329
2339
|
} else
|
|
2330
|
-
|
|
2340
|
+
ae.error("网络连接失败");
|
|
2331
2341
|
return Promise.reject(s);
|
|
2332
2342
|
}
|
|
2333
2343
|
), t;
|
|
2334
|
-
}, ge = oa(),
|
|
2344
|
+
}, ge = oa(), O = {
|
|
2335
2345
|
get(t, s) {
|
|
2336
2346
|
return ge.get(t, s);
|
|
2337
2347
|
},
|
|
@@ -2353,21 +2363,21 @@ const Oa = /* @__PURE__ */ ee(ea, [["render", sa], ["__scopeId", "data-v-4852826
|
|
|
2353
2363
|
}
|
|
2354
2364
|
};
|
|
2355
2365
|
function na(t) {
|
|
2356
|
-
return
|
|
2366
|
+
return O.post("/user/v1.0/login/by-domain", t);
|
|
2357
2367
|
}
|
|
2358
2368
|
function Va() {
|
|
2359
|
-
return
|
|
2369
|
+
return O.put("/user/v1.0/user/logout");
|
|
2360
2370
|
}
|
|
2361
2371
|
function aa() {
|
|
2362
|
-
return
|
|
2372
|
+
return O.get("/user/v1.0/user/get-me");
|
|
2363
2373
|
}
|
|
2364
2374
|
function Fa(t) {
|
|
2365
|
-
return
|
|
2375
|
+
return O.post("/user/v1.0/refresh", { refreshToken: t });
|
|
2366
2376
|
}
|
|
2367
|
-
const la = { class: "login" }, ra = { class: "login__container" }, ia = /* @__PURE__ */
|
|
2377
|
+
const la = { class: "login" }, ra = { class: "login__container" }, ia = /* @__PURE__ */ le({
|
|
2368
2378
|
__name: "index",
|
|
2369
2379
|
setup(t) {
|
|
2370
|
-
const s = de(), o = we(), i =
|
|
2380
|
+
const s = de(), o = we(), i = f(!1), a = f(!1), m = Qe({
|
|
2371
2381
|
uid: "",
|
|
2372
2382
|
password: ""
|
|
2373
2383
|
}), M = {
|
|
@@ -2378,20 +2388,20 @@ const la = { class: "login" }, ra = { class: "login__container" }, ia = /* @__PU
|
|
|
2378
2388
|
{ required: !0, message: "请输入密码", trigger: "blur" },
|
|
2379
2389
|
{ min: 6, message: "密码长度至少6位", trigger: "blur" }
|
|
2380
2390
|
]
|
|
2381
|
-
}, d =
|
|
2391
|
+
}, d = f(), g = async () => {
|
|
2382
2392
|
var p;
|
|
2383
2393
|
try {
|
|
2384
2394
|
await ((p = d.value) == null ? void 0 : p.validate()), i.value = !0;
|
|
2385
2395
|
const v = await na({
|
|
2386
|
-
appId:
|
|
2396
|
+
appId: je(),
|
|
2387
2397
|
clientId: vt(),
|
|
2388
2398
|
uid: m.uid,
|
|
2389
2399
|
password: m.password,
|
|
2390
2400
|
code: !0
|
|
2391
2401
|
});
|
|
2392
|
-
ft(v),
|
|
2393
|
-
const
|
|
2394
|
-
s.push(
|
|
2402
|
+
ft(v), ae.success("登录成功");
|
|
2403
|
+
const _ = o.query.redirect || "/";
|
|
2404
|
+
s.push(_);
|
|
2395
2405
|
} catch (v) {
|
|
2396
2406
|
console.error("登录失败:", v);
|
|
2397
2407
|
} finally {
|
|
@@ -2402,7 +2412,7 @@ const la = { class: "login" }, ra = { class: "login__container" }, ia = /* @__PU
|
|
|
2402
2412
|
e("div", ra, [
|
|
2403
2413
|
v[5] || (v[5] = e("div", { class: "login__header" }, [
|
|
2404
2414
|
e("img", {
|
|
2405
|
-
src:
|
|
2415
|
+
src: qe,
|
|
2406
2416
|
alt: "Logo",
|
|
2407
2417
|
class: "login__logo"
|
|
2408
2418
|
}),
|
|
@@ -2422,7 +2432,7 @@ const la = { class: "login" }, ra = { class: "login__container" }, ia = /* @__PU
|
|
|
2422
2432
|
default: E(() => [
|
|
2423
2433
|
y(r(ct), {
|
|
2424
2434
|
modelValue: m.uid,
|
|
2425
|
-
"onUpdate:modelValue": v[0] || (v[0] = (
|
|
2435
|
+
"onUpdate:modelValue": v[0] || (v[0] = (_) => m.uid = _),
|
|
2426
2436
|
placeholder: "用户名",
|
|
2427
2437
|
size: "large"
|
|
2428
2438
|
}, {
|
|
@@ -2441,7 +2451,7 @@ const la = { class: "login" }, ra = { class: "login__container" }, ia = /* @__PU
|
|
|
2441
2451
|
default: E(() => [
|
|
2442
2452
|
y(r(ct), {
|
|
2443
2453
|
modelValue: m.password,
|
|
2444
|
-
"onUpdate:modelValue": v[1] || (v[1] = (
|
|
2454
|
+
"onUpdate:modelValue": v[1] || (v[1] = (_) => m.password = _),
|
|
2445
2455
|
type: "password",
|
|
2446
2456
|
placeholder: "密码",
|
|
2447
2457
|
size: "large",
|
|
@@ -2463,7 +2473,7 @@ const la = { class: "login" }, ra = { class: "login__container" }, ia = /* @__PU
|
|
|
2463
2473
|
default: E(() => [
|
|
2464
2474
|
y(r(St), {
|
|
2465
2475
|
modelValue: a.value,
|
|
2466
|
-
"onUpdate:modelValue": v[2] || (v[2] = (
|
|
2476
|
+
"onUpdate:modelValue": v[2] || (v[2] = (_) => a.value = _)
|
|
2467
2477
|
}, {
|
|
2468
2478
|
default: E(() => [...v[3] || (v[3] = [
|
|
2469
2479
|
ye("记住我", -1)
|
|
@@ -2475,7 +2485,7 @@ const la = { class: "login" }, ra = { class: "login__container" }, ia = /* @__PU
|
|
|
2475
2485
|
}),
|
|
2476
2486
|
y(r(Ne), null, {
|
|
2477
2487
|
default: E(() => [
|
|
2478
|
-
y(r(
|
|
2488
|
+
y(r(Ke), {
|
|
2479
2489
|
type: "primary",
|
|
2480
2490
|
size: "large",
|
|
2481
2491
|
loading: i.value,
|
|
@@ -2499,10 +2509,10 @@ const la = { class: "login" }, ra = { class: "login__container" }, ia = /* @__PU
|
|
|
2499
2509
|
])
|
|
2500
2510
|
]));
|
|
2501
2511
|
}
|
|
2502
|
-
}), ua = /* @__PURE__ */
|
|
2512
|
+
}), ua = /* @__PURE__ */ te(ia, [["__scopeId", "data-v-f3e724b6"]]), ca = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
2503
2513
|
__proto__: null,
|
|
2504
2514
|
default: ua
|
|
2505
|
-
}, Symbol.toStringTag, { value: "Module" })), da = { class: "error-page" }, ma = { class: "error-page__content" }, pa = /* @__PURE__ */
|
|
2515
|
+
}, Symbol.toStringTag, { value: "Module" })), da = { class: "error-page" }, ma = { class: "error-page__content" }, pa = /* @__PURE__ */ le({
|
|
2506
2516
|
__name: "404",
|
|
2507
2517
|
setup(t) {
|
|
2508
2518
|
const s = de(), o = () => {
|
|
@@ -2513,7 +2523,7 @@ const la = { class: "login" }, ra = { class: "login__container" }, ia = /* @__PU
|
|
|
2513
2523
|
a[1] || (a[1] = e("div", { class: "error-page__code" }, "404", -1)),
|
|
2514
2524
|
a[2] || (a[2] = e("div", { class: "error-page__title" }, "页面不存在", -1)),
|
|
2515
2525
|
a[3] || (a[3] = e("div", { class: "error-page__desc" }, "抱歉,您访问的页面不存在或已被删除", -1)),
|
|
2516
|
-
y(r(
|
|
2526
|
+
y(r(Ke), {
|
|
2517
2527
|
type: "primary",
|
|
2518
2528
|
onClick: o
|
|
2519
2529
|
}, {
|
|
@@ -2525,10 +2535,10 @@ const la = { class: "login" }, ra = { class: "login__container" }, ia = /* @__PU
|
|
|
2525
2535
|
])
|
|
2526
2536
|
]));
|
|
2527
2537
|
}
|
|
2528
|
-
}), ha = /* @__PURE__ */
|
|
2538
|
+
}), ha = /* @__PURE__ */ te(pa, [["__scopeId", "data-v-3b47f5bc"]]), kt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
2529
2539
|
__proto__: null,
|
|
2530
2540
|
default: ha
|
|
2531
|
-
}, Symbol.toStringTag, { value: "Module" })), va = { class: "error-page" }, _a = { class: "error-page__content" }, fa = /* @__PURE__ */
|
|
2541
|
+
}, Symbol.toStringTag, { value: "Module" })), va = { class: "error-page" }, _a = { class: "error-page__content" }, fa = /* @__PURE__ */ le({
|
|
2532
2542
|
__name: "403",
|
|
2533
2543
|
setup(t) {
|
|
2534
2544
|
const s = de(), o = () => {
|
|
@@ -2539,7 +2549,7 @@ const la = { class: "login" }, ra = { class: "login__container" }, ia = /* @__PU
|
|
|
2539
2549
|
a[1] || (a[1] = e("div", { class: "error-page__code" }, "403", -1)),
|
|
2540
2550
|
a[2] || (a[2] = e("div", { class: "error-page__title" }, "无访问权限", -1)),
|
|
2541
2551
|
a[3] || (a[3] = e("div", { class: "error-page__desc" }, "抱歉,您没有权限访问此页面", -1)),
|
|
2542
|
-
y(r(
|
|
2552
|
+
y(r(Ke), {
|
|
2543
2553
|
type: "primary",
|
|
2544
2554
|
onClick: o
|
|
2545
2555
|
}, {
|
|
@@ -2551,9 +2561,9 @@ const la = { class: "login" }, ra = { class: "login__container" }, ia = /* @__PU
|
|
|
2551
2561
|
])
|
|
2552
2562
|
]));
|
|
2553
2563
|
}
|
|
2554
|
-
}), Ba = /* @__PURE__ */
|
|
2564
|
+
}), Ba = /* @__PURE__ */ te(fa, [["__scopeId", "data-v-3081df6c"]]);
|
|
2555
2565
|
function Ka() {
|
|
2556
|
-
const t = me(), s =
|
|
2566
|
+
const t = me(), s = ee(), o = Ue(), i = b(() => s.userName || ""), a = b(() => s.userInfo), m = b(() => t.appName), M = b(() => o.isLoggedIn), d = b(() => t.isDark), g = b(() => t.theme), p = b(() => t.isCollapsed), v = b(() => t.layout);
|
|
2557
2567
|
return {
|
|
2558
2568
|
userName: i,
|
|
2559
2569
|
userInfo: a,
|
|
@@ -2572,22 +2582,22 @@ function Ka() {
|
|
|
2572
2582
|
};
|
|
2573
2583
|
}
|
|
2574
2584
|
function ja() {
|
|
2575
|
-
const t =
|
|
2585
|
+
const t = ee();
|
|
2576
2586
|
return {
|
|
2577
2587
|
isLoggedIn: b(() => t.isLoggedIn)
|
|
2578
2588
|
};
|
|
2579
2589
|
}
|
|
2580
2590
|
function qa(t, s = {}) {
|
|
2581
|
-
const { rules: o, onSubmit: i } = s, a =
|
|
2591
|
+
const { rules: o, onSubmit: i } = s, a = f(), m = Qe({ ...t }), M = f(!1), d = f(!1), g = f(!1), p = () => {
|
|
2582
2592
|
L(), g.value = !1, d.value = !0;
|
|
2583
2593
|
}, v = (R) => {
|
|
2584
2594
|
Object.assign(m, R), g.value = !0, d.value = !0;
|
|
2585
|
-
},
|
|
2595
|
+
}, _ = () => {
|
|
2586
2596
|
d.value = !1, L();
|
|
2587
2597
|
}, L = () => {
|
|
2588
2598
|
var R;
|
|
2589
|
-
Object.keys(t).forEach((
|
|
2590
|
-
m[
|
|
2599
|
+
Object.keys(t).forEach((K) => {
|
|
2600
|
+
m[K] = t[K];
|
|
2591
2601
|
}), (R = a.value) == null || R.resetFields();
|
|
2592
2602
|
};
|
|
2593
2603
|
return {
|
|
@@ -2599,14 +2609,14 @@ function qa(t, s = {}) {
|
|
|
2599
2609
|
isEdit: g,
|
|
2600
2610
|
openAdd: p,
|
|
2601
2611
|
openEdit: v,
|
|
2602
|
-
close:
|
|
2612
|
+
close: _,
|
|
2603
2613
|
resetForm: L,
|
|
2604
2614
|
handleSubmit: async () => {
|
|
2605
2615
|
var R;
|
|
2606
2616
|
try {
|
|
2607
|
-
await ((R = a.value) == null ? void 0 : R.validate()), M.value = !0, await (i == null ? void 0 : i(m)),
|
|
2608
|
-
} catch (
|
|
2609
|
-
console.error(
|
|
2617
|
+
await ((R = a.value) == null ? void 0 : R.validate()), M.value = !0, await (i == null ? void 0 : i(m)), _();
|
|
2618
|
+
} catch (K) {
|
|
2619
|
+
console.error(K);
|
|
2610
2620
|
} finally {
|
|
2611
2621
|
M.value = !1;
|
|
2612
2622
|
}
|
|
@@ -2614,15 +2624,15 @@ function qa(t, s = {}) {
|
|
|
2614
2624
|
};
|
|
2615
2625
|
}
|
|
2616
2626
|
function Wa(t) {
|
|
2617
|
-
const { fetchData: s, defaultPageSize: o = 10 } = t, i =
|
|
2627
|
+
const { fetchData: s, defaultPageSize: o = 10 } = t, i = f(!1), a = f([]), m = f(0), M = f(1), d = f(o), g = Qe({}), p = async () => {
|
|
2618
2628
|
i.value = !0;
|
|
2619
2629
|
try {
|
|
2620
2630
|
const z = {
|
|
2621
2631
|
...g,
|
|
2622
2632
|
page: M.value,
|
|
2623
2633
|
pageSize: d.value
|
|
2624
|
-
},
|
|
2625
|
-
a.value =
|
|
2634
|
+
}, P = await s(z);
|
|
2635
|
+
a.value = P.list, m.value = P.total;
|
|
2626
2636
|
} catch (z) {
|
|
2627
2637
|
console.error(z);
|
|
2628
2638
|
} finally {
|
|
@@ -2630,17 +2640,17 @@ function Wa(t) {
|
|
|
2630
2640
|
}
|
|
2631
2641
|
}, v = () => {
|
|
2632
2642
|
M.value = 1, p();
|
|
2633
|
-
},
|
|
2643
|
+
}, _ = () => {
|
|
2634
2644
|
Object.keys(g).forEach((z) => {
|
|
2635
2645
|
g[z] = void 0;
|
|
2636
2646
|
}), M.value = 1, p();
|
|
2637
2647
|
}, L = (z) => {
|
|
2638
2648
|
M.value = z, p();
|
|
2639
|
-
},
|
|
2649
|
+
}, B = (z) => {
|
|
2640
2650
|
d.value = z, M.value = 1, p();
|
|
2641
2651
|
}, R = () => {
|
|
2642
2652
|
p();
|
|
2643
|
-
},
|
|
2653
|
+
}, K = b(() => ({
|
|
2644
2654
|
current: M.value,
|
|
2645
2655
|
pageSize: d.value,
|
|
2646
2656
|
total: m.value
|
|
@@ -2652,20 +2662,20 @@ function Wa(t) {
|
|
|
2652
2662
|
currentPage: M,
|
|
2653
2663
|
pageSize: d,
|
|
2654
2664
|
searchParams: g,
|
|
2655
|
-
pagination:
|
|
2665
|
+
pagination: K,
|
|
2656
2666
|
getData: p,
|
|
2657
2667
|
handleSearch: v,
|
|
2658
|
-
handleReset:
|
|
2668
|
+
handleReset: _,
|
|
2659
2669
|
handlePageChange: L,
|
|
2660
|
-
handleSizeChange:
|
|
2670
|
+
handleSizeChange: B,
|
|
2661
2671
|
refresh: R
|
|
2662
2672
|
};
|
|
2663
2673
|
}
|
|
2664
2674
|
function Ya(t) {
|
|
2665
|
-
return
|
|
2675
|
+
return ee().isLoggedIn;
|
|
2666
2676
|
}
|
|
2667
2677
|
function Xa(t) {
|
|
2668
|
-
return
|
|
2678
|
+
return ee().isLoggedIn;
|
|
2669
2679
|
}
|
|
2670
2680
|
function Ha() {
|
|
2671
2681
|
return !0;
|
|
@@ -2689,7 +2699,7 @@ const wt = [
|
|
|
2689
2699
|
{
|
|
2690
2700
|
path: "/dashboard",
|
|
2691
2701
|
name: "Dashboard",
|
|
2692
|
-
component: () => import("./index-
|
|
2702
|
+
component: () => import("./index-JouxgO84.js"),
|
|
2693
2703
|
meta: {
|
|
2694
2704
|
title: "仪表盘",
|
|
2695
2705
|
icon: "dashboard",
|
|
@@ -2700,7 +2710,7 @@ const wt = [
|
|
|
2700
2710
|
{
|
|
2701
2711
|
path: "/system/user",
|
|
2702
2712
|
name: "SystemUser",
|
|
2703
|
-
component: () => import("./index-
|
|
2713
|
+
component: () => import("./index-CZKP8fOP.js"),
|
|
2704
2714
|
meta: {
|
|
2705
2715
|
title: "用户管理",
|
|
2706
2716
|
icon: "user",
|
|
@@ -2710,7 +2720,7 @@ const wt = [
|
|
|
2710
2720
|
{
|
|
2711
2721
|
path: "/system/role",
|
|
2712
2722
|
name: "SystemRole",
|
|
2713
|
-
component: () => import("./index-
|
|
2723
|
+
component: () => import("./index-qlKXxfT9.js"),
|
|
2714
2724
|
meta: {
|
|
2715
2725
|
title: "角色管理",
|
|
2716
2726
|
icon: "role",
|
|
@@ -2720,7 +2730,7 @@ const wt = [
|
|
|
2720
2730
|
{
|
|
2721
2731
|
path: "/system/menu",
|
|
2722
2732
|
name: "SystemMenu",
|
|
2723
|
-
component: () => import("./index-
|
|
2733
|
+
component: () => import("./index-48G2-eqi.js"),
|
|
2724
2734
|
meta: {
|
|
2725
2735
|
title: "菜单管理",
|
|
2726
2736
|
icon: "menu",
|
|
@@ -2742,7 +2752,7 @@ const wt = [
|
|
|
2742
2752
|
{
|
|
2743
2753
|
path: "/dashboard",
|
|
2744
2754
|
name: "Dashboard",
|
|
2745
|
-
component: () => import("./index-
|
|
2755
|
+
component: () => import("./index-JouxgO84.js"),
|
|
2746
2756
|
meta: {
|
|
2747
2757
|
title: "仪表盘",
|
|
2748
2758
|
icon: "dashboard",
|
|
@@ -2762,7 +2772,7 @@ const wt = [
|
|
|
2762
2772
|
{
|
|
2763
2773
|
path: "user",
|
|
2764
2774
|
name: "SystemUser",
|
|
2765
|
-
component: () => import("./index-
|
|
2775
|
+
component: () => import("./index-CZKP8fOP.js"),
|
|
2766
2776
|
meta: {
|
|
2767
2777
|
title: "用户管理",
|
|
2768
2778
|
icon: "user",
|
|
@@ -2772,7 +2782,7 @@ const wt = [
|
|
|
2772
2782
|
{
|
|
2773
2783
|
path: "role",
|
|
2774
2784
|
name: "SystemRole",
|
|
2775
|
-
component: () => import("./index-
|
|
2785
|
+
component: () => import("./index-qlKXxfT9.js"),
|
|
2776
2786
|
meta: {
|
|
2777
2787
|
title: "角色管理",
|
|
2778
2788
|
icon: "role",
|
|
@@ -2782,7 +2792,7 @@ const wt = [
|
|
|
2782
2792
|
{
|
|
2783
2793
|
path: "menu",
|
|
2784
2794
|
name: "SystemMenu",
|
|
2785
|
-
component: () => import("./index-
|
|
2795
|
+
component: () => import("./index-48G2-eqi.js"),
|
|
2786
2796
|
meta: {
|
|
2787
2797
|
title: "菜单管理",
|
|
2788
2798
|
icon: "menu",
|
|
@@ -2850,9 +2860,9 @@ xt.beforeEach(async (t, s, o) => {
|
|
|
2850
2860
|
if (t.path === "/login")
|
|
2851
2861
|
o({ path: "/" });
|
|
2852
2862
|
else {
|
|
2853
|
-
const a =
|
|
2863
|
+
const a = ee();
|
|
2854
2864
|
a.isLoggedIn || (a.setUserInfo({
|
|
2855
|
-
appId:
|
|
2865
|
+
appId: je(),
|
|
2856
2866
|
userId: "1",
|
|
2857
2867
|
userName: "管理员",
|
|
2858
2868
|
departmentName: "技术部",
|
|
@@ -2897,45 +2907,45 @@ function Za(t) {
|
|
|
2897
2907
|
});
|
|
2898
2908
|
}
|
|
2899
2909
|
function el(t) {
|
|
2900
|
-
return
|
|
2910
|
+
return O.get("/role/list", { params: t });
|
|
2901
2911
|
}
|
|
2902
2912
|
function tl(t) {
|
|
2903
|
-
return
|
|
2913
|
+
return O.get(`/role/${t}`);
|
|
2904
2914
|
}
|
|
2905
2915
|
function sl(t) {
|
|
2906
|
-
return
|
|
2916
|
+
return O.post("/role", t);
|
|
2907
2917
|
}
|
|
2908
2918
|
function ol(t, s) {
|
|
2909
|
-
return
|
|
2919
|
+
return O.put(`/role/${t}`, s);
|
|
2910
2920
|
}
|
|
2911
2921
|
function nl(t) {
|
|
2912
|
-
return
|
|
2922
|
+
return O.delete(`/role/${t}`);
|
|
2913
2923
|
}
|
|
2914
2924
|
function al(t, s) {
|
|
2915
|
-
return
|
|
2925
|
+
return O.patch(`/role/${t}/status`, { status: s });
|
|
2916
2926
|
}
|
|
2917
2927
|
function ll() {
|
|
2918
|
-
return
|
|
2928
|
+
return O.get("/user/v1.0/menu/list");
|
|
2919
2929
|
}
|
|
2920
2930
|
function ka(t) {
|
|
2921
|
-
const s = t ||
|
|
2922
|
-
return
|
|
2931
|
+
const s = t || je();
|
|
2932
|
+
return O.get(`/user/v1.0/menu/get-menu?appId=${s}`);
|
|
2923
2933
|
}
|
|
2924
2934
|
function rl(t) {
|
|
2925
|
-
return
|
|
2935
|
+
return O.post("/menu", t);
|
|
2926
2936
|
}
|
|
2927
2937
|
function il(t, s) {
|
|
2928
|
-
return
|
|
2938
|
+
return O.put(`/menu/${t}`, s);
|
|
2929
2939
|
}
|
|
2930
2940
|
function ul(t) {
|
|
2931
|
-
return
|
|
2941
|
+
return O.delete(`/menu/${t}`);
|
|
2932
2942
|
}
|
|
2933
2943
|
const wa = ["/login", "/404", "/403"];
|
|
2934
2944
|
function cl(t, s = {}) {
|
|
2935
2945
|
const o = s.whiteList || wa, i = s.loginPath || "/login", a = s.homePath || "/";
|
|
2936
2946
|
t.beforeEach(async (m, M, d) => {
|
|
2937
|
-
const g = me(), p =
|
|
2938
|
-
if (g.initTheme(),
|
|
2947
|
+
const g = me(), p = ee(), v = ve();
|
|
2948
|
+
if (g.initTheme(), We())
|
|
2939
2949
|
if (m.path === i)
|
|
2940
2950
|
d({ path: a });
|
|
2941
2951
|
else if (p.isLoggedIn)
|
|
@@ -2966,28 +2976,28 @@ function cl(t, s = {}) {
|
|
|
2966
2976
|
});
|
|
2967
2977
|
}
|
|
2968
2978
|
function dl(t) {
|
|
2969
|
-
return
|
|
2979
|
+
return O.get("/user/list", { params: t });
|
|
2970
2980
|
}
|
|
2971
2981
|
function ml(t) {
|
|
2972
|
-
return
|
|
2982
|
+
return O.get(`/user/${t}`);
|
|
2973
2983
|
}
|
|
2974
2984
|
function pl(t) {
|
|
2975
|
-
return
|
|
2985
|
+
return O.post("/user", t);
|
|
2976
2986
|
}
|
|
2977
2987
|
function hl(t, s) {
|
|
2978
|
-
return
|
|
2988
|
+
return O.put(`/user/${t}`, s);
|
|
2979
2989
|
}
|
|
2980
2990
|
function vl(t) {
|
|
2981
|
-
return
|
|
2991
|
+
return O.delete(`/user/${t}`);
|
|
2982
2992
|
}
|
|
2983
2993
|
function _l(t) {
|
|
2984
|
-
return
|
|
2994
|
+
return O.post("/user/batch-delete", { ids: t });
|
|
2985
2995
|
}
|
|
2986
2996
|
function fl(t, s) {
|
|
2987
|
-
return
|
|
2997
|
+
return O.patch(`/user/${t}/status`, { status: s });
|
|
2988
2998
|
}
|
|
2989
2999
|
function gl(t) {
|
|
2990
|
-
return
|
|
3000
|
+
return O.post(`/user/${t}/reset-password`);
|
|
2991
3001
|
}
|
|
2992
3002
|
var ba = /* @__PURE__ */ ((t) => (t[t.ENABLED = 1] = "ENABLED", t[t.DISABLED = 0] = "DISABLED", t))(ba || {}), xa = /* @__PURE__ */ ((t) => (t[t.UNKNOWN = 0] = "UNKNOWN", t[t.MALE = 1] = "MALE", t[t.FEMALE = 2] = "FEMALE", t))(xa || {}), Ca = /* @__PURE__ */ ((t) => (t[t.DIRECTORY = 0] = "DIRECTORY", t[t.MENU = 1] = "MENU", t[t.BUTTON = 2] = "BUTTON", t))(Ca || {});
|
|
2993
3003
|
const yl = {
|
|
@@ -3047,7 +3057,7 @@ const yl = {
|
|
|
3047
3057
|
], $l = {
|
|
3048
3058
|
mounted(t, s) {
|
|
3049
3059
|
var i;
|
|
3050
|
-
|
|
3060
|
+
ee().isLoggedIn || (i = t.parentNode) == null || i.removeChild(t);
|
|
3051
3061
|
}
|
|
3052
3062
|
};
|
|
3053
3063
|
function Ll(t) {
|
|
@@ -3058,9 +3068,9 @@ function Ll(t) {
|
|
|
3058
3068
|
}), {
|
|
3059
3069
|
config: {
|
|
3060
3070
|
appName: t.appName || "XTO App",
|
|
3061
|
-
appId:
|
|
3071
|
+
appId: je(),
|
|
3062
3072
|
clientId: vt(),
|
|
3063
|
-
apiBaseUrl:
|
|
3073
|
+
apiBaseUrl: Ut(),
|
|
3064
3074
|
indexPath: t.indexPath || "/dashboard",
|
|
3065
3075
|
loginPath: t.loginPath || "/login"
|
|
3066
3076
|
}
|
|
@@ -3072,17 +3082,17 @@ export {
|
|
|
3072
3082
|
ll as B,
|
|
3073
3083
|
ka as C,
|
|
3074
3084
|
Ra as D,
|
|
3075
|
-
|
|
3085
|
+
za as E,
|
|
3076
3086
|
Oa as F,
|
|
3077
3087
|
xa as G,
|
|
3078
3088
|
qs as H,
|
|
3079
3089
|
tl as I,
|
|
3080
3090
|
el as J,
|
|
3081
|
-
|
|
3091
|
+
We as K,
|
|
3082
3092
|
yt as L,
|
|
3083
3093
|
Ca as M,
|
|
3084
3094
|
At as N,
|
|
3085
|
-
|
|
3095
|
+
zt as O,
|
|
3086
3096
|
ml as P,
|
|
3087
3097
|
aa as Q,
|
|
3088
3098
|
dl as R,
|
|
@@ -3091,14 +3101,14 @@ export {
|
|
|
3091
3101
|
Ya as U,
|
|
3092
3102
|
Xa as V,
|
|
3093
3103
|
gt as W,
|
|
3094
|
-
|
|
3104
|
+
O as X,
|
|
3095
3105
|
Tt as Y,
|
|
3096
3106
|
Ha as Z,
|
|
3097
|
-
|
|
3107
|
+
te as _,
|
|
3098
3108
|
bl as a,
|
|
3099
3109
|
bt as a0,
|
|
3100
3110
|
C as a1,
|
|
3101
|
-
|
|
3111
|
+
De as a2,
|
|
3102
3112
|
na as a3,
|
|
3103
3113
|
Va as a4,
|
|
3104
3114
|
ga as a5,
|
|
@@ -3107,12 +3117,12 @@ export {
|
|
|
3107
3117
|
gl as a8,
|
|
3108
3118
|
Ja as a9,
|
|
3109
3119
|
xt as aa,
|
|
3110
|
-
|
|
3120
|
+
Da as ab,
|
|
3111
3121
|
ze as ac,
|
|
3112
3122
|
Ft as ad,
|
|
3113
3123
|
Vt as ae,
|
|
3114
3124
|
Pt as af,
|
|
3115
|
-
|
|
3125
|
+
Dt as ag,
|
|
3116
3126
|
Ot as ah,
|
|
3117
3127
|
ft as ai,
|
|
3118
3128
|
Rt as aj,
|
|
@@ -3126,11 +3136,11 @@ export {
|
|
|
3126
3136
|
Ka as ar,
|
|
3127
3137
|
me as as,
|
|
3128
3138
|
ja as at,
|
|
3129
|
-
|
|
3139
|
+
Ue as au,
|
|
3130
3140
|
qa as av,
|
|
3131
3141
|
ve as aw,
|
|
3132
3142
|
Wa as ax,
|
|
3133
|
-
|
|
3143
|
+
ee as ay,
|
|
3134
3144
|
Cl as b,
|
|
3135
3145
|
Ba as c,
|
|
3136
3146
|
xl as d,
|
|
@@ -3140,7 +3150,7 @@ export {
|
|
|
3140
3150
|
mt as h,
|
|
3141
3151
|
ua as i,
|
|
3142
3152
|
yl as j,
|
|
3143
|
-
|
|
3153
|
+
Na as k,
|
|
3144
3154
|
_l as l,
|
|
3145
3155
|
Se as m,
|
|
3146
3156
|
Qa as n,
|
|
@@ -3153,7 +3163,7 @@ export {
|
|
|
3153
3163
|
ul as u,
|
|
3154
3164
|
nl as v,
|
|
3155
3165
|
vl as w,
|
|
3156
|
-
|
|
3157
|
-
|
|
3166
|
+
Ut as x,
|
|
3167
|
+
je as y,
|
|
3158
3168
|
vt as z
|
|
3159
3169
|
};
|