xto-fronted 0.4.14 → 0.4.16
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/components/Layout/MixTopMenu.vue.d.ts +2 -0
- package/dist/{index-D8DWh2wV.js → index-8tKP-ZZr.js} +1 -1
- package/dist/{index-CrJYCWl-.js → index-BDELIN6f.js} +1 -1
- package/dist/index-Bqx7oYvi.js +2303 -0
- package/dist/{index-BCv8lkNK.js → index-BvGKg7pX.js} +1 -1
- package/dist/{index-CGq_kOCw.js → index-CWqQlqFn.js} +1 -1
- package/dist/index-CXru1UAh.js +345 -0
- package/dist/index-Cp8sP57V.js +475 -0
- package/dist/{index-TvEBauqV.js → index-DYFNnzjr.js} +444 -449
- package/dist/index-DYjM-bJ4.js +142 -0
- package/dist/index-U9HXi5z6.js +372 -0
- package/dist/index.es.js +1 -1
- package/dist/index.umd.js +1 -1
- package/dist/style.css +1 -1
- package/package.json +1 -1
- package/src/components/Layout/index.vue +5 -21
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { ref as g, computed as y, watch as nt, defineComponent as H, openBlock as u, createElementBlock as _, normalizeClass as F, createElementVNode as t, withDirectives as Ae, toDisplayString as L, unref as r, vShow as rt, createVNode as S, withCtx as
|
|
1
|
+
import { ref as g, computed as y, watch as nt, defineComponent as H, openBlock as u, createElementBlock as _, normalizeClass as F, createElementVNode as t, withDirectives as Ae, toDisplayString as L, unref as r, vShow as rt, createVNode as S, withCtx as I, Fragment as A, renderList as K, createBlock as R, createTextVNode as G, createCommentVNode as O, onMounted as lt, onUnmounted as it, withModifiers as Be, Transition as ze, withKeys as Ve, vModelText as ut, normalizeStyle as Fe, resolveComponent as ct, reactive as we } from "vue";
|
|
2
2
|
import { defineStore as pe } from "pinia";
|
|
3
3
|
import { useRoute as ae, useRouter as X, createRouter as Ce, createWebHistory as Se } from "vue-router";
|
|
4
4
|
import { Menu as Ke, SubMenu as je, MenuItem as ue, Tabs as dt, TabPane as mt } from "@xto/navigation";
|
|
5
|
-
import { Icon as
|
|
5
|
+
import { Icon as M, Button as he } from "@xto/base";
|
|
6
6
|
import { Drawer as pt, Message as W } from "@xto/feedback";
|
|
7
|
-
import { Form as ht, FormItem as re, Input as Oe, Checkbox as
|
|
8
|
-
import
|
|
7
|
+
import { Form as ht, FormItem as re, Input as Oe, Checkbox as ft } from "@xto/form";
|
|
8
|
+
import vt from "axios";
|
|
9
9
|
const se = "xto_", qe = (e) => ({
|
|
10
10
|
get(s) {
|
|
11
11
|
const o = e.getItem(se + s);
|
|
@@ -32,44 +32,44 @@ const se = "xto_", qe = (e) => ({
|
|
|
32
32
|
o.startsWith(se) && e.removeItem(o);
|
|
33
33
|
});
|
|
34
34
|
}
|
|
35
|
-
}), le = qe(window.localStorage), ie = qe(window.sessionStorage),
|
|
35
|
+
}), le = qe(window.localStorage), ie = qe(window.sessionStorage), f = {
|
|
36
36
|
get: le.get,
|
|
37
37
|
set: le.set,
|
|
38
38
|
remove: le.remove,
|
|
39
39
|
clear: le.clear
|
|
40
|
-
},
|
|
40
|
+
}, No = {
|
|
41
41
|
get: ie.get,
|
|
42
42
|
set: ie.set,
|
|
43
43
|
remove: ie.remove,
|
|
44
44
|
clear: ie.clear
|
|
45
45
|
}, J = pe("app", () => {
|
|
46
|
-
const e = g(
|
|
47
|
-
e.value =
|
|
48
|
-
},
|
|
49
|
-
s.value =
|
|
46
|
+
const e = g(f.get("appName") || "XTO App"), s = g(f.get("indexPath") || "/dashboard"), o = g(f.get("isDark") || !1), a = g(f.get("theme") || "light"), n = g(f.get("layout") || "sidebar"), c = g(f.get("isCollapsed") || !1), w = g(f.get("showTabs") ?? !0), d = g(f.get("showFooter") ?? !0), h = g(f.get("showBreadcrumb") ?? !0), l = g(f.get("primaryColor") || "#409eff"), p = g([]), i = y(() => o.value ? "dark" : "light"), v = (x) => {
|
|
47
|
+
e.value = x, f.set("appName", x);
|
|
48
|
+
}, D = (x) => {
|
|
49
|
+
s.value = x, f.set("indexPath", x);
|
|
50
50
|
}, C = () => {
|
|
51
51
|
o.value = !o.value, a.value = o.value ? "dark" : "light", b();
|
|
52
|
-
},
|
|
53
|
-
a.value =
|
|
52
|
+
}, P = (x) => {
|
|
53
|
+
a.value = x, o.value = x === "dark", b();
|
|
54
54
|
}, b = () => {
|
|
55
|
-
const
|
|
56
|
-
o.value ?
|
|
55
|
+
const x = document.documentElement;
|
|
56
|
+
o.value ? x.classList.add("dark") : x.classList.remove("dark"), f.set("isDark", o.value), f.set("theme", a.value);
|
|
57
57
|
}, E = () => {
|
|
58
|
-
|
|
59
|
-
}, Y = (
|
|
60
|
-
n.value =
|
|
58
|
+
c.value = !c.value, f.set("isCollapsed", c.value);
|
|
59
|
+
}, Y = (x) => {
|
|
60
|
+
n.value = x, f.set("layout", x);
|
|
61
61
|
}, B = () => {
|
|
62
|
-
w.value = !w.value,
|
|
63
|
-
},
|
|
64
|
-
|
|
62
|
+
w.value = !w.value, f.set("showTabs", w.value);
|
|
63
|
+
}, $ = () => {
|
|
64
|
+
d.value = !d.value, f.set("showFooter", d.value);
|
|
65
65
|
}, V = () => {
|
|
66
|
-
h.value = !h.value,
|
|
67
|
-
}, N = (
|
|
68
|
-
l.value =
|
|
69
|
-
}, z = (
|
|
70
|
-
p.value.includes(
|
|
71
|
-
},
|
|
72
|
-
const ne = p.value.indexOf(
|
|
66
|
+
h.value = !h.value, f.set("showBreadcrumb", h.value);
|
|
67
|
+
}, N = (x) => {
|
|
68
|
+
l.value = x, document.documentElement.style.setProperty("--color-primary", x), f.set("primaryColor", x);
|
|
69
|
+
}, z = (x) => {
|
|
70
|
+
p.value.includes(x) || p.value.push(x);
|
|
71
|
+
}, ve = (x) => {
|
|
72
|
+
const ne = p.value.indexOf(x);
|
|
73
73
|
ne > -1 && p.value.splice(ne, 1);
|
|
74
74
|
}, _e = () => {
|
|
75
75
|
p.value = [];
|
|
@@ -82,25 +82,25 @@ const se = "xto_", qe = (e) => ({
|
|
|
82
82
|
isDark: o,
|
|
83
83
|
theme: a,
|
|
84
84
|
layout: n,
|
|
85
|
-
isCollapsed:
|
|
85
|
+
isCollapsed: c,
|
|
86
86
|
showTabs: w,
|
|
87
|
-
showFooter:
|
|
87
|
+
showFooter: d,
|
|
88
88
|
showBreadcrumb: h,
|
|
89
89
|
primaryColor: l,
|
|
90
90
|
cachedViews: p,
|
|
91
91
|
themeClass: i,
|
|
92
|
-
setAppName:
|
|
93
|
-
setIndexPath:
|
|
92
|
+
setAppName: v,
|
|
93
|
+
setIndexPath: D,
|
|
94
94
|
toggleTheme: C,
|
|
95
95
|
toggleCollapse: E,
|
|
96
|
-
setTheme:
|
|
96
|
+
setTheme: P,
|
|
97
97
|
setLayout: Y,
|
|
98
98
|
toggleTabs: B,
|
|
99
|
-
toggleFooter:
|
|
99
|
+
toggleFooter: $,
|
|
100
100
|
toggleBreadcrumb: V,
|
|
101
101
|
setPrimaryColor: N,
|
|
102
102
|
addCachedView: z,
|
|
103
|
-
removeCachedView:
|
|
103
|
+
removeCachedView: ve,
|
|
104
104
|
clearCachedViews: _e,
|
|
105
105
|
initTheme: ge
|
|
106
106
|
};
|
|
@@ -113,19 +113,19 @@ const se = "xto_", qe = (e) => ({
|
|
|
113
113
|
isDefault: !1,
|
|
114
114
|
isOut: !1
|
|
115
115
|
}, ee = pe("menu", () => {
|
|
116
|
-
const e = g(
|
|
116
|
+
const e = g(f.get(ke) || []), s = y(() => e.value.length > 0);
|
|
117
117
|
return {
|
|
118
118
|
menuList: e,
|
|
119
119
|
hasMenu: s,
|
|
120
120
|
setMenuList: (n) => {
|
|
121
|
-
e.value = [_t, ...n],
|
|
121
|
+
e.value = [_t, ...n], f.set(ke, e.value);
|
|
122
122
|
},
|
|
123
123
|
clearMenu: () => {
|
|
124
|
-
e.value = [],
|
|
124
|
+
e.value = [], f.remove(ke);
|
|
125
125
|
}
|
|
126
126
|
};
|
|
127
127
|
}), Ye = "/vite.svg", be = "user_info", j = pe("user", () => {
|
|
128
|
-
const e = g(
|
|
128
|
+
const e = g(f.get(be)), s = y(() => !!e.value), o = y(() => {
|
|
129
129
|
var i;
|
|
130
130
|
return ((i = e.value) == null ? void 0 : i.userId) || "";
|
|
131
131
|
}), a = y(() => {
|
|
@@ -134,13 +134,13 @@ const se = "xto_", qe = (e) => ({
|
|
|
134
134
|
}), n = y(() => {
|
|
135
135
|
var i;
|
|
136
136
|
return ((i = e.value) == null ? void 0 : i.departmentName) || "";
|
|
137
|
-
}),
|
|
137
|
+
}), c = y(() => {
|
|
138
138
|
var i;
|
|
139
139
|
return ((i = e.value) == null ? void 0 : i.email) || "";
|
|
140
140
|
}), w = y(() => {
|
|
141
141
|
var i;
|
|
142
142
|
return ((i = e.value) == null ? void 0 : i.mobilePhone) || "";
|
|
143
|
-
}),
|
|
143
|
+
}), d = y(() => {
|
|
144
144
|
var i;
|
|
145
145
|
return ((i = e.value) == null ? void 0 : i.positionName) || "";
|
|
146
146
|
}), h = y(() => {
|
|
@@ -153,71 +153,71 @@ const se = "xto_", qe = (e) => ({
|
|
|
153
153
|
userId: o,
|
|
154
154
|
userName: a,
|
|
155
155
|
departmentName: n,
|
|
156
|
-
email:
|
|
156
|
+
email: c,
|
|
157
157
|
mobilePhone: w,
|
|
158
|
-
positionName:
|
|
158
|
+
positionName: d,
|
|
159
159
|
avatar: h,
|
|
160
160
|
setUserInfo: (i) => {
|
|
161
|
-
e.value = i,
|
|
161
|
+
e.value = i, f.set(be, i);
|
|
162
162
|
},
|
|
163
163
|
clearUserInfo: () => {
|
|
164
|
-
e.value = null,
|
|
164
|
+
e.value = null, f.remove(be);
|
|
165
165
|
}
|
|
166
166
|
};
|
|
167
|
-
}),
|
|
168
|
-
|
|
169
|
-
}, yt = () =>
|
|
170
|
-
|
|
171
|
-
},
|
|
172
|
-
|
|
173
|
-
}, wt = () =>
|
|
174
|
-
|
|
175
|
-
},
|
|
176
|
-
|
|
177
|
-
},
|
|
178
|
-
|
|
167
|
+
}), Ie = "token", xe = "token_type", Le = "refresh_token", Te = "expires_time", Ee = "refresh_time", Ne = "code", fe = () => f.get(Ie), gt = (e) => {
|
|
168
|
+
f.set(Ie, e);
|
|
169
|
+
}, yt = () => f.get(xe), kt = (e) => {
|
|
170
|
+
f.set(xe, e);
|
|
171
|
+
}, Uo = () => f.get(Le), bt = (e) => {
|
|
172
|
+
f.set(Le, e);
|
|
173
|
+
}, wt = () => f.get(Te), Ct = (e) => {
|
|
174
|
+
f.set(Te, e);
|
|
175
|
+
}, $o = () => f.get(Ee), St = (e) => {
|
|
176
|
+
f.set(Ee, e);
|
|
177
|
+
}, Mo = () => f.get(Ne), It = (e) => {
|
|
178
|
+
f.set(Ne, e);
|
|
179
179
|
}, We = (e) => {
|
|
180
|
-
gt(e.access_token), kt(e.token_type || "Bearer"), bt(e.refresh_token), Ct(e.expires_time), St(e.refresh_time), e.code &&
|
|
180
|
+
gt(e.access_token), kt(e.token_type || "Bearer"), bt(e.refresh_token), Ct(e.expires_time), St(e.refresh_time), e.code && It(e.code);
|
|
181
181
|
}, He = () => {
|
|
182
|
-
|
|
183
|
-
},
|
|
182
|
+
f.remove(Ie), f.remove(xe), f.remove(Le), f.remove(Te), f.remove(Ee), f.remove(Ne);
|
|
183
|
+
}, xt = () => {
|
|
184
184
|
const e = wt();
|
|
185
185
|
return e ? Date.now() > e : !0;
|
|
186
|
-
}, Xe = () => !!
|
|
187
|
-
const e = g(
|
|
186
|
+
}, Xe = () => !!fe() && !xt(), Ue = pe("auth", () => {
|
|
187
|
+
const e = g(fe()), s = y(() => Xe()), o = g(""), a = g(""), n = g(""), c = g("/login");
|
|
188
188
|
return {
|
|
189
189
|
token: e,
|
|
190
190
|
isLoggedIn: s,
|
|
191
191
|
baseUrl: o,
|
|
192
192
|
appId: a,
|
|
193
193
|
clientId: n,
|
|
194
|
-
loginPath:
|
|
195
|
-
login: (
|
|
196
|
-
e.value =
|
|
194
|
+
loginPath: c,
|
|
195
|
+
login: (v) => {
|
|
196
|
+
e.value = v.access_token, We(v);
|
|
197
197
|
},
|
|
198
198
|
logout: () => {
|
|
199
199
|
e.value = null, He();
|
|
200
200
|
},
|
|
201
|
-
setBaseUrl: (
|
|
202
|
-
o.value =
|
|
201
|
+
setBaseUrl: (v) => {
|
|
202
|
+
o.value = v;
|
|
203
203
|
},
|
|
204
|
-
setAppId: (
|
|
205
|
-
a.value =
|
|
204
|
+
setAppId: (v) => {
|
|
205
|
+
a.value = v;
|
|
206
206
|
},
|
|
207
|
-
setClientId: (
|
|
208
|
-
n.value =
|
|
207
|
+
setClientId: (v) => {
|
|
208
|
+
n.value = v;
|
|
209
209
|
},
|
|
210
|
-
setLoginPath: (
|
|
211
|
-
|
|
210
|
+
setLoginPath: (v) => {
|
|
211
|
+
c.value = v;
|
|
212
212
|
}
|
|
213
213
|
};
|
|
214
214
|
}), Lt = { class: "sidebar__logo" }, Tt = { class: "sidebar__menu-icon" }, Et = {
|
|
215
215
|
key: 1,
|
|
216
216
|
class: "sidebar__menu-char"
|
|
217
|
-
}, Nt = { class: "sidebar__menu-icon" },
|
|
217
|
+
}, Nt = { class: "sidebar__menu-icon" }, Ut = {
|
|
218
218
|
key: 1,
|
|
219
219
|
class: "sidebar__menu-char"
|
|
220
|
-
},
|
|
220
|
+
}, $t = { class: "sidebar__menu-icon" }, Mt = {
|
|
221
221
|
key: 1,
|
|
222
222
|
class: "sidebar__menu-char"
|
|
223
223
|
}, Rt = {
|
|
@@ -229,10 +229,10 @@ const se = "xto_", qe = (e) => ({
|
|
|
229
229
|
menuList: { default: () => [] }
|
|
230
230
|
},
|
|
231
231
|
setup(e) {
|
|
232
|
-
const s = e, o = ae(), a = X(), n = ee(),
|
|
233
|
-
|
|
234
|
-
},
|
|
235
|
-
w.logout(),
|
|
232
|
+
const s = e, o = ae(), a = X(), n = ee(), c = j(), w = Ue(), d = J(), h = y(() => s.menuList.length > 0 ? s.menuList : n.menuList), l = y(() => d.isCollapsed), p = y(() => o.path), i = y(() => d.isDark ? "#1d1e1f" : "#fff"), v = y(() => d.isDark ? "#cfd3dc" : "#303133"), D = y(() => "#409eff"), C = ($) => {
|
|
233
|
+
$ && $ !== o.path && a.push($);
|
|
234
|
+
}, P = () => {
|
|
235
|
+
w.logout(), c.clearUserInfo(), n.clearMenu(), a.push("/login");
|
|
236
236
|
}, b = /* @__PURE__ */ new Set([
|
|
237
237
|
"arrow-up",
|
|
238
238
|
"arrow-down",
|
|
@@ -335,10 +335,10 @@ const se = "xto_", qe = (e) => ({
|
|
|
335
335
|
"sun",
|
|
336
336
|
"theme",
|
|
337
337
|
"skin"
|
|
338
|
-
]), E = (
|
|
339
|
-
if (
|
|
340
|
-
if (
|
|
341
|
-
const N =
|
|
338
|
+
]), E = ($) => {
|
|
339
|
+
if (!$ || $ === "") return "";
|
|
340
|
+
if ($.startsWith("tineco-icon-")) {
|
|
341
|
+
const N = $.replace("tineco-icon-", "");
|
|
342
342
|
return {
|
|
343
343
|
home: "home",
|
|
344
344
|
dashboard: "dashboard",
|
|
@@ -371,9 +371,9 @@ const se = "xto_", qe = (e) => ({
|
|
|
371
371
|
app: "app",
|
|
372
372
|
list: "list",
|
|
373
373
|
grid: "grid"
|
|
374
|
-
}[
|
|
375
|
-
}, Y = (
|
|
376
|
-
return (
|
|
374
|
+
}[$] || $;
|
|
375
|
+
}, Y = ($) => $ ? $.charAt(0) : "", B = ($) => b.has($);
|
|
376
|
+
return ($, V) => (u(), _("div", {
|
|
377
377
|
class: F(["sidebar", { "sidebar--collapsed": l.value }])
|
|
378
378
|
}, [
|
|
379
379
|
t("div", Lt, [
|
|
@@ -382,7 +382,7 @@ const se = "xto_", qe = (e) => ({
|
|
|
382
382
|
alt: "Logo",
|
|
383
383
|
class: "sidebar__logo-img"
|
|
384
384
|
}, null, -1)),
|
|
385
|
-
Ae(t("span", { class: "sidebar__logo-text" }, L(r(
|
|
385
|
+
Ae(t("span", { class: "sidebar__logo-text" }, L(r(d).appName), 513), [
|
|
386
386
|
[rt, !l.value]
|
|
387
387
|
])
|
|
388
388
|
]),
|
|
@@ -392,22 +392,22 @@ const se = "xto_", qe = (e) => ({
|
|
|
392
392
|
collapse: l.value,
|
|
393
393
|
"collapse-transition": !1,
|
|
394
394
|
"background-color": i.value,
|
|
395
|
-
"text-color":
|
|
396
|
-
"active-text-color":
|
|
395
|
+
"text-color": v.value,
|
|
396
|
+
"active-text-color": D.value,
|
|
397
397
|
class: "sidebar__menu",
|
|
398
398
|
onSelect: C
|
|
399
399
|
}, {
|
|
400
|
-
default:
|
|
400
|
+
default: I(() => [
|
|
401
401
|
(u(!0), _(A, null, K(h.value, (N) => (u(), _(A, {
|
|
402
402
|
key: N.menuUrl
|
|
403
403
|
}, [
|
|
404
|
-
N.children && N.children.length > 0 ? (u(),
|
|
404
|
+
N.children && N.children.length > 0 ? (u(), R(r(je), {
|
|
405
405
|
key: 0,
|
|
406
406
|
index: N.menuUrl
|
|
407
407
|
}, {
|
|
408
|
-
title:
|
|
408
|
+
title: I(() => [
|
|
409
409
|
t("span", Tt, [
|
|
410
|
-
B(E(N.icon)) ? (u(),
|
|
410
|
+
B(E(N.icon)) ? (u(), R(r(M), {
|
|
411
411
|
key: 0,
|
|
412
412
|
name: E(N.icon),
|
|
413
413
|
size: 16
|
|
@@ -415,18 +415,18 @@ const se = "xto_", qe = (e) => ({
|
|
|
415
415
|
]),
|
|
416
416
|
t("span", null, L(N.menuName), 1)
|
|
417
417
|
]),
|
|
418
|
-
default:
|
|
419
|
-
(u(!0), _(A, null, K(N.children, (z) => (u(),
|
|
418
|
+
default: I(() => [
|
|
419
|
+
(u(!0), _(A, null, K(N.children, (z) => (u(), R(r(ue), {
|
|
420
420
|
key: z.menuUrl,
|
|
421
421
|
index: z.menuUrl
|
|
422
422
|
}, {
|
|
423
|
-
default:
|
|
423
|
+
default: I(() => [
|
|
424
424
|
t("span", Nt, [
|
|
425
|
-
B(E(z.icon)) ? (u(),
|
|
425
|
+
B(E(z.icon)) ? (u(), R(r(M), {
|
|
426
426
|
key: 0,
|
|
427
427
|
name: E(z.icon),
|
|
428
428
|
size: 16
|
|
429
|
-
}, null, 8, ["name"])) : (u(), _("span",
|
|
429
|
+
}, null, 8, ["name"])) : (u(), _("span", Ut, L(Y(z.menuName)), 1))
|
|
430
430
|
]),
|
|
431
431
|
t("span", null, L(z.menuName), 1)
|
|
432
432
|
]),
|
|
@@ -434,17 +434,17 @@ const se = "xto_", qe = (e) => ({
|
|
|
434
434
|
}, 1032, ["index"]))), 128))
|
|
435
435
|
]),
|
|
436
436
|
_: 2
|
|
437
|
-
}, 1032, ["index"])) : (u(),
|
|
437
|
+
}, 1032, ["index"])) : (u(), R(r(ue), {
|
|
438
438
|
key: 1,
|
|
439
439
|
index: N.menuUrl
|
|
440
440
|
}, {
|
|
441
|
-
default:
|
|
442
|
-
t("span",
|
|
443
|
-
B(E(N.icon)) ? (u(),
|
|
441
|
+
default: I(() => [
|
|
442
|
+
t("span", $t, [
|
|
443
|
+
B(E(N.icon)) ? (u(), R(r(M), {
|
|
444
444
|
key: 0,
|
|
445
445
|
name: E(N.icon),
|
|
446
446
|
size: 16
|
|
447
|
-
}, null, 8, ["name"])) : (u(), _("span",
|
|
447
|
+
}, null, 8, ["name"])) : (u(), _("span", Mt, L(Y(N.menuName)), 1))
|
|
448
448
|
]),
|
|
449
449
|
t("span", null, L(N.menuName), 1)
|
|
450
450
|
]),
|
|
@@ -456,15 +456,15 @@ const se = "xto_", qe = (e) => ({
|
|
|
456
456
|
}, 8, ["default-active", "collapse", "background-color", "text-color", "active-text-color"]),
|
|
457
457
|
l.value ? O("", !0) : (u(), _("div", Rt, [
|
|
458
458
|
t("div", Dt, [
|
|
459
|
-
t("span", Pt, L(r(
|
|
460
|
-
t("span", zt, L(r(
|
|
459
|
+
t("span", Pt, L(r(c).userName), 1),
|
|
460
|
+
t("span", zt, L(r(c).departmentName), 1)
|
|
461
461
|
]),
|
|
462
462
|
S(r(he), {
|
|
463
463
|
type: "text",
|
|
464
464
|
size: "small",
|
|
465
|
-
onClick:
|
|
465
|
+
onClick: P
|
|
466
466
|
}, {
|
|
467
|
-
default:
|
|
467
|
+
default: I(() => [...V[1] || (V[1] = [
|
|
468
468
|
G("退出", -1)
|
|
469
469
|
])]),
|
|
470
470
|
_: 1
|
|
@@ -498,16 +498,16 @@ const se = "xto_", qe = (e) => ({
|
|
|
498
498
|
}, us = { class: "settings-drawer" }, cs = { class: "settings-section" }, ds = { class: "settings-layout-options" }, ms = ["onClick"], ps = { class: "layout-option__preview" }, hs = {
|
|
499
499
|
key: 0,
|
|
500
500
|
class: "layout-preview-sidebar"
|
|
501
|
-
},
|
|
501
|
+
}, fs = {
|
|
502
502
|
key: 1,
|
|
503
503
|
class: "layout-preview-top"
|
|
504
|
-
},
|
|
504
|
+
}, vs = {
|
|
505
505
|
key: 2,
|
|
506
506
|
class: "layout-preview-mix"
|
|
507
|
-
}, _s = { class: "layout-option__label" }, gs = { class: "settings-section" }, ys = { class: "settings-color-options" }, ks = ["title", "onClick"], bs = { class: "settings-section" }, ws = { class: "settings-switch-list" }, Cs = { class: "settings-switch-item" }, Ss = { class: "settings-switch-item" },
|
|
507
|
+
}, _s = { class: "layout-option__label" }, gs = { class: "settings-section" }, ys = { class: "settings-color-options" }, ks = ["title", "onClick"], bs = { class: "settings-section" }, ws = { class: "settings-switch-list" }, Cs = { class: "settings-switch-item" }, Ss = { class: "settings-switch-item" }, Is = /* @__PURE__ */ H({
|
|
508
508
|
__name: "Header",
|
|
509
509
|
setup(e) {
|
|
510
|
-
const s = ae(), o = X(), a = J(), n = j(),
|
|
510
|
+
const s = ae(), o = X(), a = J(), n = j(), c = Ue(), w = ee(), d = g(!1), h = g(!1), l = g(null), p = g(!1), i = g(!1), v = g(""), D = g(null), C = g(!1), P = [
|
|
511
511
|
{ value: "sidebar", label: "左侧菜单", icon: "sidebar-left" },
|
|
512
512
|
{ value: "top", label: "顶部菜单", icon: "menu" },
|
|
513
513
|
{ value: "mix", label: "混合菜单", icon: "grid" }
|
|
@@ -521,57 +521,57 @@ const se = "xto_", qe = (e) => ({
|
|
|
521
521
|
], E = y(() => s.matched.filter((m) => m.meta && m.meta.title).map((m) => ({
|
|
522
522
|
title: m.meta.title,
|
|
523
523
|
path: m.path
|
|
524
|
-
}))), Y = (
|
|
524
|
+
}))), Y = (U, m = "") => {
|
|
525
525
|
const Q = [];
|
|
526
|
-
return
|
|
526
|
+
return U.forEach((k) => {
|
|
527
527
|
k.children && k.children.length > 0 ? Q.push(...Y(k.children, k.title)) : Q.push({ ...k, parentTitle: m });
|
|
528
528
|
}), Q;
|
|
529
|
-
}, B = y(() =>
|
|
530
|
-
(m) => m.title.toLowerCase().includes(
|
|
531
|
-
) : []),
|
|
529
|
+
}, B = y(() => v.value.trim() ? Y(w.menuList).filter(
|
|
530
|
+
(m) => m.title.toLowerCase().includes(v.value.toLowerCase())
|
|
531
|
+
) : []), $ = y(() => a.layout), V = () => {
|
|
532
532
|
a.toggleCollapse();
|
|
533
533
|
}, N = () => {
|
|
534
534
|
a.toggleTheme();
|
|
535
535
|
}, z = () => {
|
|
536
536
|
h.value = !0;
|
|
537
|
-
},
|
|
538
|
-
a.setLayout(
|
|
539
|
-
}, _e = (
|
|
540
|
-
C.value =
|
|
537
|
+
}, ve = (U) => {
|
|
538
|
+
a.setLayout(U);
|
|
539
|
+
}, _e = (U) => {
|
|
540
|
+
C.value = U;
|
|
541
541
|
const m = document.documentElement;
|
|
542
|
-
|
|
542
|
+
U ? m.classList.add("grey-mode") : m.classList.remove("grey-mode");
|
|
543
543
|
}, ge = () => {
|
|
544
544
|
document.fullscreenElement ? document.exitFullscreen() : document.documentElement.requestFullscreen();
|
|
545
|
-
},
|
|
545
|
+
}, x = () => {
|
|
546
546
|
p.value = !!document.fullscreenElement;
|
|
547
547
|
}, ne = () => {
|
|
548
|
-
|
|
548
|
+
d.value = !d.value;
|
|
549
549
|
}, te = () => {
|
|
550
|
-
|
|
551
|
-
},
|
|
550
|
+
d.value = !1;
|
|
551
|
+
}, Me = () => {
|
|
552
552
|
i.value = !0;
|
|
553
553
|
}, ye = () => {
|
|
554
|
-
i.value = !1,
|
|
555
|
-
}, Re = (
|
|
556
|
-
o.push(
|
|
557
|
-
}, tt = (
|
|
558
|
-
a.setPrimaryColor(
|
|
554
|
+
i.value = !1, v.value = "";
|
|
555
|
+
}, Re = (U) => {
|
|
556
|
+
o.push(U), ye();
|
|
557
|
+
}, tt = (U) => {
|
|
558
|
+
a.setPrimaryColor(U);
|
|
559
559
|
}, st = () => {
|
|
560
560
|
te(), o.push("/profile");
|
|
561
561
|
}, ot = () => {
|
|
562
562
|
te(), o.push("/change-password");
|
|
563
563
|
}, at = () => {
|
|
564
|
-
te(),
|
|
565
|
-
}, De = (
|
|
566
|
-
l.value && !l.value.contains(
|
|
567
|
-
}, Pe = (
|
|
568
|
-
|
|
564
|
+
te(), c.logout(), n.clearUserInfo(), w.clearMenu(), o.push("/login");
|
|
565
|
+
}, De = (U) => {
|
|
566
|
+
l.value && !l.value.contains(U.target) && te(), D.value && !D.value.contains(U.target) && ye();
|
|
567
|
+
}, Pe = (U) => {
|
|
568
|
+
U.key === "Escape" && (ye(), te()), (U.ctrlKey || U.metaKey) && U.key === "k" && (U.preventDefault(), Me());
|
|
569
569
|
};
|
|
570
570
|
return lt(() => {
|
|
571
|
-
document.addEventListener("click", De), document.addEventListener("fullscreenchange",
|
|
571
|
+
document.addEventListener("click", De), document.addEventListener("fullscreenchange", x), document.addEventListener("keydown", Pe), a.initTheme(), C.value = document.documentElement.classList.contains("grey-mode");
|
|
572
572
|
}), it(() => {
|
|
573
|
-
document.removeEventListener("click", De), document.removeEventListener("fullscreenchange",
|
|
574
|
-
}), (
|
|
573
|
+
document.removeEventListener("click", De), document.removeEventListener("fullscreenchange", x), document.removeEventListener("keydown", Pe);
|
|
574
|
+
}), (U, m) => {
|
|
575
575
|
var Q;
|
|
576
576
|
return u(), _("div", Bt, [
|
|
577
577
|
t("div", Vt, [
|
|
@@ -579,7 +579,7 @@ const se = "xto_", qe = (e) => ({
|
|
|
579
579
|
class: "header__collapse",
|
|
580
580
|
onClick: V
|
|
581
581
|
}, [
|
|
582
|
-
S(r(
|
|
582
|
+
S(r(M), {
|
|
583
583
|
name: r(a).isCollapsed ? "menu-unfold" : "menu-fold",
|
|
584
584
|
size: 18
|
|
585
585
|
}, null, 8, ["name"])
|
|
@@ -598,10 +598,10 @@ const se = "xto_", qe = (e) => ({
|
|
|
598
598
|
t("div", jt, [
|
|
599
599
|
t("div", {
|
|
600
600
|
class: "header__action",
|
|
601
|
-
onClick:
|
|
601
|
+
onClick: Me,
|
|
602
602
|
title: "搜索 (Ctrl+K)"
|
|
603
603
|
}, [
|
|
604
|
-
S(r(
|
|
604
|
+
S(r(M), {
|
|
605
605
|
name: "search",
|
|
606
606
|
size: 16
|
|
607
607
|
})
|
|
@@ -611,7 +611,7 @@ const se = "xto_", qe = (e) => ({
|
|
|
611
611
|
onClick: ge,
|
|
612
612
|
title: p.value ? "退出全屏" : "全屏"
|
|
613
613
|
}, [
|
|
614
|
-
S(r(
|
|
614
|
+
S(r(M), {
|
|
615
615
|
name: p.value ? "fullscreen-exit" : "fullscreen",
|
|
616
616
|
size: 16
|
|
617
617
|
}, null, 8, ["name"])
|
|
@@ -621,7 +621,7 @@ const se = "xto_", qe = (e) => ({
|
|
|
621
621
|
onClick: z,
|
|
622
622
|
title: "换肤设置"
|
|
623
623
|
}, [
|
|
624
|
-
S(r(
|
|
624
|
+
S(r(M), {
|
|
625
625
|
name: "skin",
|
|
626
626
|
size: 16
|
|
627
627
|
})
|
|
@@ -631,7 +631,7 @@ const se = "xto_", qe = (e) => ({
|
|
|
631
631
|
onClick: N,
|
|
632
632
|
title: "切换主题"
|
|
633
633
|
}, [
|
|
634
|
-
S(r(
|
|
634
|
+
S(r(M), {
|
|
635
635
|
name: r(a).isDark ? "sun" : "moon",
|
|
636
636
|
size: 16
|
|
637
637
|
}, null, 8, ["name"])
|
|
@@ -650,14 +650,14 @@ const se = "xto_", qe = (e) => ({
|
|
|
650
650
|
]),
|
|
651
651
|
t("span", Wt, L(r(n).userName), 1),
|
|
652
652
|
t("span", {
|
|
653
|
-
class: F(["header__user-arrow", { "is-active":
|
|
653
|
+
class: F(["header__user-arrow", { "is-active": d.value }])
|
|
654
654
|
}, "▼", 2)
|
|
655
655
|
]),
|
|
656
656
|
S(ze, { name: "dropdown" }, {
|
|
657
|
-
default:
|
|
657
|
+
default: I(() => {
|
|
658
658
|
var k;
|
|
659
659
|
return [
|
|
660
|
-
|
|
660
|
+
d.value ? (u(), _("div", Ht, [
|
|
661
661
|
t("div", Xt, [
|
|
662
662
|
t("div", Jt, [
|
|
663
663
|
t("span", null, L(((k = r(n).userName) == null ? void 0 : k.charAt(0)) || "U"), 1)
|
|
@@ -673,7 +673,7 @@ const se = "xto_", qe = (e) => ({
|
|
|
673
673
|
class: "header__dropdown-item",
|
|
674
674
|
onClick: st
|
|
675
675
|
}, [
|
|
676
|
-
S(r(
|
|
676
|
+
S(r(M), {
|
|
677
677
|
name: "user",
|
|
678
678
|
size: 16
|
|
679
679
|
}),
|
|
@@ -683,7 +683,7 @@ const se = "xto_", qe = (e) => ({
|
|
|
683
683
|
class: "header__dropdown-item",
|
|
684
684
|
onClick: ot
|
|
685
685
|
}, [
|
|
686
|
-
S(r(
|
|
686
|
+
S(r(M), {
|
|
687
687
|
name: "lock",
|
|
688
688
|
size: 16
|
|
689
689
|
}),
|
|
@@ -694,7 +694,7 @@ const se = "xto_", qe = (e) => ({
|
|
|
694
694
|
class: "header__dropdown-item header__dropdown-item--danger",
|
|
695
695
|
onClick: at
|
|
696
696
|
}, [
|
|
697
|
-
S(r(
|
|
697
|
+
S(r(M), {
|
|
698
698
|
name: "logout",
|
|
699
699
|
size: 16
|
|
700
700
|
}),
|
|
@@ -709,29 +709,29 @@ const se = "xto_", qe = (e) => ({
|
|
|
709
709
|
], 512)
|
|
710
710
|
]),
|
|
711
711
|
S(ze, { name: "search" }, {
|
|
712
|
-
default:
|
|
712
|
+
default: I(() => [
|
|
713
713
|
i.value ? (u(), _("div", {
|
|
714
714
|
key: 0,
|
|
715
715
|
class: "header__search-modal",
|
|
716
716
|
ref_key: "searchRef",
|
|
717
|
-
ref:
|
|
717
|
+
ref: D
|
|
718
718
|
}, [
|
|
719
719
|
t("div", ts, [
|
|
720
720
|
t("div", ss, [
|
|
721
|
-
S(r(
|
|
721
|
+
S(r(M), {
|
|
722
722
|
class: "search-icon",
|
|
723
723
|
name: "search",
|
|
724
724
|
size: 20
|
|
725
725
|
}),
|
|
726
726
|
Ae(t("input", {
|
|
727
|
-
"onUpdate:modelValue": m[0] || (m[0] = (k) =>
|
|
727
|
+
"onUpdate:modelValue": m[0] || (m[0] = (k) => v.value = k),
|
|
728
728
|
type: "text",
|
|
729
729
|
class: "search-input",
|
|
730
730
|
placeholder: "搜索菜单...",
|
|
731
731
|
autofocus: "",
|
|
732
732
|
onKeyup: m[1] || (m[1] = Ve((k) => B.value[0] && Re(B.value[0].path), ["enter"]))
|
|
733
733
|
}, null, 544), [
|
|
734
|
-
[ut,
|
|
734
|
+
[ut, v.value]
|
|
735
735
|
]),
|
|
736
736
|
m[9] || (m[9] = t("span", { class: "search-shortcut" }, "ESC 关闭", -1))
|
|
737
737
|
]),
|
|
@@ -739,9 +739,9 @@ const se = "xto_", qe = (e) => ({
|
|
|
739
739
|
(u(!0), _(A, null, K(B.value, (k, Z) => (u(), _("div", {
|
|
740
740
|
key: k.path,
|
|
741
741
|
class: F(["search-result-item", { "is-first": Z === 0 }]),
|
|
742
|
-
onClick: (
|
|
742
|
+
onClick: (bo) => Re(k.path)
|
|
743
743
|
}, [
|
|
744
|
-
S(r(
|
|
744
|
+
S(r(M), {
|
|
745
745
|
class: "search-result-icon",
|
|
746
746
|
name: k.icon || "file",
|
|
747
747
|
size: 20
|
|
@@ -751,7 +751,7 @@ const se = "xto_", qe = (e) => ({
|
|
|
751
751
|
k.parentTitle ? (u(), _("span", ls, L(k.parentTitle), 1)) : O("", !0)
|
|
752
752
|
])
|
|
753
753
|
], 10, as))), 128))
|
|
754
|
-
])) :
|
|
754
|
+
])) : v.value ? (u(), _("div", is, " 未找到匹配的菜单 ")) : O("", !0)
|
|
755
755
|
])
|
|
756
756
|
], 512)) : O("", !0)
|
|
757
757
|
]),
|
|
@@ -764,15 +764,15 @@ const se = "xto_", qe = (e) => ({
|
|
|
764
764
|
direction: "rtl",
|
|
765
765
|
size: "320px"
|
|
766
766
|
}, {
|
|
767
|
-
default:
|
|
767
|
+
default: I(() => [
|
|
768
768
|
t("div", us, [
|
|
769
769
|
t("div", cs, [
|
|
770
770
|
m[13] || (m[13] = t("div", { class: "settings-title" }, "布局模式", -1)),
|
|
771
771
|
t("div", ds, [
|
|
772
|
-
(u(), _(A, null, K(
|
|
772
|
+
(u(), _(A, null, K(P, (k) => t("div", {
|
|
773
773
|
key: k.value,
|
|
774
|
-
class: F(["layout-option", { "is-active":
|
|
775
|
-
onClick: (Z) =>
|
|
774
|
+
class: F(["layout-option", { "is-active": $.value === k.value }]),
|
|
775
|
+
onClick: (Z) => ve(k.value)
|
|
776
776
|
}, [
|
|
777
777
|
t("div", ps, [
|
|
778
778
|
k.value === "sidebar" ? (u(), _("div", hs, [...m[10] || (m[10] = [
|
|
@@ -781,10 +781,10 @@ const se = "xto_", qe = (e) => ({
|
|
|
781
781
|
t("div", { class: "preview-header" }),
|
|
782
782
|
t("div", { class: "preview-content" })
|
|
783
783
|
], -1)
|
|
784
|
-
])])) : k.value === "top" ? (u(), _("div",
|
|
784
|
+
])])) : k.value === "top" ? (u(), _("div", fs, [...m[11] || (m[11] = [
|
|
785
785
|
t("div", { class: "preview-header-full" }, null, -1),
|
|
786
786
|
t("div", { class: "preview-content-full" }, null, -1)
|
|
787
|
-
])])) : (u(), _("div",
|
|
787
|
+
])])) : (u(), _("div", vs, [...m[12] || (m[12] = [
|
|
788
788
|
t("div", { class: "preview-header-mix" }, [
|
|
789
789
|
t("div", { class: "preview-mix-left" })
|
|
790
790
|
], -1),
|
|
@@ -808,7 +808,7 @@ const se = "xto_", qe = (e) => ({
|
|
|
808
808
|
title: k.label,
|
|
809
809
|
onClick: (Z) => tt(k.value)
|
|
810
810
|
}, [
|
|
811
|
-
r(a).primaryColor === k.value ? (u(),
|
|
811
|
+
r(a).primaryColor === k.value ? (u(), R(r(M), {
|
|
812
812
|
key: 0,
|
|
813
813
|
name: "check",
|
|
814
814
|
size: 12,
|
|
@@ -847,19 +847,19 @@ const se = "xto_", qe = (e) => ({
|
|
|
847
847
|
]);
|
|
848
848
|
};
|
|
849
849
|
}
|
|
850
|
-
}),
|
|
850
|
+
}), xs = /* @__PURE__ */ q(Is, [["__scopeId", "data-v-9da60fc6"]]), Ls = { class: "top-menu" }, Ts = { class: "top-menu__menu-icon" }, Es = {
|
|
851
851
|
key: 1,
|
|
852
852
|
class: "top-menu__menu-char"
|
|
853
|
-
}, Ns = { class: "top-menu__menu-icon" },
|
|
853
|
+
}, Ns = { class: "top-menu__menu-icon" }, Us = {
|
|
854
854
|
key: 1,
|
|
855
855
|
class: "top-menu__menu-char"
|
|
856
|
-
},
|
|
856
|
+
}, $s = { class: "top-menu__menu-icon" }, Ms = {
|
|
857
857
|
key: 1,
|
|
858
858
|
class: "top-menu__menu-char"
|
|
859
859
|
}, Rs = /* @__PURE__ */ H({
|
|
860
860
|
__name: "TopMenu",
|
|
861
861
|
setup(e) {
|
|
862
|
-
const s = ae(), o = X(), a = ee(), n = J(),
|
|
862
|
+
const s = ae(), o = X(), a = ee(), n = J(), c = y(() => s.path), w = y(() => n.isDark ? "#1d1e1f" : "#fff"), d = y(() => n.isDark ? "#cfd3dc" : "#303133"), h = y(() => "#409eff"), l = (C) => {
|
|
863
863
|
C && C !== s.path && o.push(C);
|
|
864
864
|
}, p = /* @__PURE__ */ new Set([
|
|
865
865
|
"arrow-up",
|
|
@@ -1000,47 +1000,47 @@ const se = "xto_", qe = (e) => ({
|
|
|
1000
1000
|
list: "list",
|
|
1001
1001
|
grid: "grid"
|
|
1002
1002
|
}[C] || C;
|
|
1003
|
-
},
|
|
1004
|
-
return (C,
|
|
1003
|
+
}, v = (C) => C ? C.charAt(0) : "", D = (C) => p.has(C);
|
|
1004
|
+
return (C, P) => (u(), _("div", Ls, [
|
|
1005
1005
|
S(r(Ke), {
|
|
1006
|
-
"default-active":
|
|
1006
|
+
"default-active": c.value,
|
|
1007
1007
|
mode: "horizontal",
|
|
1008
1008
|
"background-color": w.value,
|
|
1009
|
-
"text-color":
|
|
1009
|
+
"text-color": d.value,
|
|
1010
1010
|
"active-text-color": h.value,
|
|
1011
1011
|
class: "top-menu__menu",
|
|
1012
1012
|
onSelect: l
|
|
1013
1013
|
}, {
|
|
1014
|
-
default:
|
|
1014
|
+
default: I(() => [
|
|
1015
1015
|
(u(!0), _(A, null, K(r(a).menuList, (b) => (u(), _(A, {
|
|
1016
1016
|
key: b.menuUrl
|
|
1017
1017
|
}, [
|
|
1018
|
-
b.children && b.children.length > 0 ? (u(),
|
|
1018
|
+
b.children && b.children.length > 0 ? (u(), R(r(je), {
|
|
1019
1019
|
key: 0,
|
|
1020
1020
|
index: b.menuUrl
|
|
1021
1021
|
}, {
|
|
1022
|
-
title:
|
|
1022
|
+
title: I(() => [
|
|
1023
1023
|
t("span", Ts, [
|
|
1024
|
-
|
|
1024
|
+
D(i(b.icon)) ? (u(), R(r(M), {
|
|
1025
1025
|
key: 0,
|
|
1026
1026
|
name: i(b.icon),
|
|
1027
1027
|
size: 16
|
|
1028
|
-
}, null, 8, ["name"])) : (u(), _("span", Es, L(
|
|
1028
|
+
}, null, 8, ["name"])) : (u(), _("span", Es, L(v(b.menuName)), 1))
|
|
1029
1029
|
]),
|
|
1030
1030
|
t("span", null, L(b.menuName), 1)
|
|
1031
1031
|
]),
|
|
1032
|
-
default:
|
|
1033
|
-
(u(!0), _(A, null, K(b.children, (E) => (u(),
|
|
1032
|
+
default: I(() => [
|
|
1033
|
+
(u(!0), _(A, null, K(b.children, (E) => (u(), R(r(ue), {
|
|
1034
1034
|
key: E.menuUrl,
|
|
1035
1035
|
index: E.menuUrl
|
|
1036
1036
|
}, {
|
|
1037
|
-
default:
|
|
1037
|
+
default: I(() => [
|
|
1038
1038
|
t("span", Ns, [
|
|
1039
|
-
|
|
1039
|
+
D(i(E.icon)) ? (u(), R(r(M), {
|
|
1040
1040
|
key: 0,
|
|
1041
1041
|
name: i(E.icon),
|
|
1042
1042
|
size: 16
|
|
1043
|
-
}, null, 8, ["name"])) : (u(), _("span",
|
|
1043
|
+
}, null, 8, ["name"])) : (u(), _("span", Us, L(v(E.menuName)), 1))
|
|
1044
1044
|
]),
|
|
1045
1045
|
t("span", null, L(E.menuName), 1)
|
|
1046
1046
|
]),
|
|
@@ -1048,17 +1048,17 @@ const se = "xto_", qe = (e) => ({
|
|
|
1048
1048
|
}, 1032, ["index"]))), 128))
|
|
1049
1049
|
]),
|
|
1050
1050
|
_: 2
|
|
1051
|
-
}, 1032, ["index"])) : (u(),
|
|
1051
|
+
}, 1032, ["index"])) : (u(), R(r(ue), {
|
|
1052
1052
|
key: 1,
|
|
1053
1053
|
index: b.menuUrl
|
|
1054
1054
|
}, {
|
|
1055
|
-
default:
|
|
1056
|
-
t("span",
|
|
1057
|
-
|
|
1055
|
+
default: I(() => [
|
|
1056
|
+
t("span", $s, [
|
|
1057
|
+
D(i(b.icon)) ? (u(), R(r(M), {
|
|
1058
1058
|
key: 0,
|
|
1059
1059
|
name: i(b.icon),
|
|
1060
1060
|
size: 16
|
|
1061
|
-
}, null, 8, ["name"])) : (u(), _("span",
|
|
1061
|
+
}, null, 8, ["name"])) : (u(), _("span", Ms, L(v(b.menuName)), 1))
|
|
1062
1062
|
]),
|
|
1063
1063
|
t("span", null, L(b.menuName), 1)
|
|
1064
1064
|
]),
|
|
@@ -1070,91 +1070,86 @@ const se = "xto_", qe = (e) => ({
|
|
|
1070
1070
|
}, 8, ["default-active", "background-color", "text-color", "active-text-color"])
|
|
1071
1071
|
]));
|
|
1072
1072
|
}
|
|
1073
|
-
}), Ds = /* @__PURE__ */ q(Rs, [["__scopeId", "data-v-8b571a75"]]), Ps = {
|
|
1074
|
-
key: 1,
|
|
1075
|
-
class: "layout__top-menu"
|
|
1076
|
-
}, zs = { class: "layout__main" }, Os = { class: "layout__header" }, As = { class: "layout__content" }, Bs = /* @__PURE__ */ H({
|
|
1073
|
+
}), Ds = /* @__PURE__ */ q(Rs, [["__scopeId", "data-v-8b571a75"]]), Ps = { class: "layout__main" }, zs = { class: "layout__header" }, Os = { class: "layout__content" }, As = /* @__PURE__ */ H({
|
|
1077
1074
|
__name: "index",
|
|
1078
1075
|
setup(e) {
|
|
1079
1076
|
const s = J(), o = ee(), a = y(
|
|
1080
1077
|
() => s.isCollapsed ? "64px" : "210px"
|
|
1081
|
-
), n = y(() => s.layout),
|
|
1082
|
-
return (
|
|
1083
|
-
const
|
|
1078
|
+
), n = y(() => s.layout), c = y(() => n.value === "sidebar"), w = y(() => n.value === "top");
|
|
1079
|
+
return (d, h) => {
|
|
1080
|
+
const l = ct("router-view");
|
|
1084
1081
|
return u(), _("div", {
|
|
1085
1082
|
class: F(["layout", `layout--${n.value}`])
|
|
1086
1083
|
}, [
|
|
1087
|
-
|
|
1084
|
+
c.value ? (u(), _("aside", {
|
|
1088
1085
|
key: 0,
|
|
1089
1086
|
class: "layout__aside",
|
|
1090
1087
|
style: Fe({ width: a.value })
|
|
1091
1088
|
}, [
|
|
1092
1089
|
S(At, {
|
|
1093
|
-
"menu-list":
|
|
1090
|
+
"menu-list": r(o).menuList
|
|
1094
1091
|
}, null, 8, ["menu-list"])
|
|
1095
1092
|
], 4)) : O("", !0),
|
|
1096
|
-
w.value ? (u(),
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
t("header", Os, [
|
|
1101
|
-
S(Is)
|
|
1093
|
+
w.value ? (u(), R(Ds, { key: 1 })) : O("", !0),
|
|
1094
|
+
t("div", Ps, [
|
|
1095
|
+
t("header", zs, [
|
|
1096
|
+
S(xs)
|
|
1102
1097
|
]),
|
|
1103
|
-
t("main",
|
|
1104
|
-
S(
|
|
1098
|
+
t("main", Os, [
|
|
1099
|
+
S(l)
|
|
1105
1100
|
])
|
|
1106
1101
|
])
|
|
1107
1102
|
], 2);
|
|
1108
1103
|
};
|
|
1109
1104
|
}
|
|
1110
|
-
}), Je = /* @__PURE__ */ q(
|
|
1105
|
+
}), Je = /* @__PURE__ */ q(As, [["__scopeId", "data-v-c45071f5"]]), Bs = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1111
1106
|
__proto__: null,
|
|
1112
1107
|
default: Je
|
|
1113
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
1108
|
+
}, Symbol.toStringTag, { value: "Module" })), Vs = { class: "tabs-wrapper" }, Fs = { class: "tab-label" }, Ks = ["onClick"], js = /* @__PURE__ */ H({
|
|
1114
1109
|
__name: "Tabs",
|
|
1115
1110
|
setup(e) {
|
|
1116
1111
|
const s = ae(), o = X(), a = y(() => {
|
|
1117
|
-
const
|
|
1112
|
+
const d = [];
|
|
1118
1113
|
return s.matched.forEach((h) => {
|
|
1119
1114
|
var l;
|
|
1120
|
-
(l = h.meta) != null && l.affix &&
|
|
1115
|
+
(l = h.meta) != null && l.affix && d.push({
|
|
1121
1116
|
name: h.name,
|
|
1122
1117
|
title: h.meta.title,
|
|
1123
1118
|
path: h.path,
|
|
1124
1119
|
affix: !0
|
|
1125
1120
|
});
|
|
1126
|
-
}),
|
|
1127
|
-
}), n = y(() => s.path),
|
|
1128
|
-
o.push(
|
|
1129
|
-
}, w = (
|
|
1130
|
-
const h = a.value.find((l) => l.path ===
|
|
1131
|
-
if (!(h != null && h.affix) &&
|
|
1132
|
-
const l = a.value.findIndex((i) => i.path ===
|
|
1121
|
+
}), d;
|
|
1122
|
+
}), n = y(() => s.path), c = (d) => {
|
|
1123
|
+
o.push(d);
|
|
1124
|
+
}, w = (d) => {
|
|
1125
|
+
const h = a.value.find((l) => l.path === d);
|
|
1126
|
+
if (!(h != null && h.affix) && d === n.value) {
|
|
1127
|
+
const l = a.value.findIndex((i) => i.path === d), p = a.value[l - 1] || a.value[l + 1];
|
|
1133
1128
|
p && o.push(p.path);
|
|
1134
1129
|
}
|
|
1135
1130
|
};
|
|
1136
|
-
return (
|
|
1131
|
+
return (d, h) => (u(), _("div", Vs, [
|
|
1137
1132
|
S(r(dt), {
|
|
1138
1133
|
modelValue: n.value,
|
|
1139
1134
|
"onUpdate:modelValue": h[0] || (h[0] = (l) => n.value = l),
|
|
1140
1135
|
type: "card",
|
|
1141
|
-
onTabClick:
|
|
1136
|
+
onTabClick: c
|
|
1142
1137
|
}, {
|
|
1143
|
-
default:
|
|
1144
|
-
(u(!0), _(A, null, K(a.value, (l) => (u(),
|
|
1138
|
+
default: I(() => [
|
|
1139
|
+
(u(!0), _(A, null, K(a.value, (l) => (u(), R(r(mt), {
|
|
1145
1140
|
key: l.path,
|
|
1146
1141
|
name: l.path,
|
|
1147
1142
|
label: l.title,
|
|
1148
1143
|
closable: !l.affix
|
|
1149
1144
|
}, {
|
|
1150
|
-
label:
|
|
1151
|
-
t("span",
|
|
1145
|
+
label: I(() => [
|
|
1146
|
+
t("span", Fs, [
|
|
1152
1147
|
G(L(l.title) + " ", 1),
|
|
1153
1148
|
l.affix ? O("", !0) : (u(), _("span", {
|
|
1154
1149
|
key: 0,
|
|
1155
1150
|
class: "tab-close",
|
|
1156
1151
|
onClick: Be((p) => w(l.path), ["stop"])
|
|
1157
|
-
}, " ✕ ", 8,
|
|
1152
|
+
}, " ✕ ", 8, Ks))
|
|
1158
1153
|
])
|
|
1159
1154
|
]),
|
|
1160
1155
|
_: 2
|
|
@@ -1164,14 +1159,14 @@ const se = "xto_", qe = (e) => ({
|
|
|
1164
1159
|
}, 8, ["modelValue"])
|
|
1165
1160
|
]));
|
|
1166
1161
|
}
|
|
1167
|
-
}),
|
|
1168
|
-
function
|
|
1169
|
-
return u(), _("div",
|
|
1162
|
+
}), Ro = /* @__PURE__ */ q(js, [["__scopeId", "data-v-9156d8cd"]]), qs = {}, Ys = { class: "footer" };
|
|
1163
|
+
function Ws(e, s) {
|
|
1164
|
+
return u(), _("div", Ys, [...s[0] || (s[0] = [
|
|
1170
1165
|
t("span", null, "Copyright © 2024 Xto Demo. All Rights Reserved.", -1)
|
|
1171
1166
|
])]);
|
|
1172
1167
|
}
|
|
1173
|
-
const
|
|
1174
|
-
const e =
|
|
1168
|
+
const Do = /* @__PURE__ */ q(qs, [["render", Ws], ["__scopeId", "data-v-4852826a"]]), Hs = () => {
|
|
1169
|
+
const e = vt.create({
|
|
1175
1170
|
baseURL: void 0,
|
|
1176
1171
|
timeout: 3e4,
|
|
1177
1172
|
headers: {
|
|
@@ -1180,7 +1175,7 @@ const Po = /* @__PURE__ */ q(Ys, [["render", Hs], ["__scopeId", "data-v-4852826a
|
|
|
1180
1175
|
});
|
|
1181
1176
|
return e.interceptors.request.use(
|
|
1182
1177
|
(s) => {
|
|
1183
|
-
const o =
|
|
1178
|
+
const o = fe(), a = yt() || "Bearer";
|
|
1184
1179
|
return o && (s.headers.Authorization = `${a} ${o}`), s;
|
|
1185
1180
|
},
|
|
1186
1181
|
(s) => Promise.reject(s)
|
|
@@ -1214,7 +1209,7 @@ const Po = /* @__PURE__ */ q(Ys, [["render", Hs], ["__scopeId", "data-v-4852826a
|
|
|
1214
1209
|
return Promise.reject(s);
|
|
1215
1210
|
}
|
|
1216
1211
|
), e;
|
|
1217
|
-
}, oe =
|
|
1212
|
+
}, oe = Hs(), T = {
|
|
1218
1213
|
get(e, s) {
|
|
1219
1214
|
return oe.get(e, s);
|
|
1220
1215
|
},
|
|
@@ -1231,23 +1226,23 @@ const Po = /* @__PURE__ */ q(Ys, [["render", Hs], ["__scopeId", "data-v-4852826a
|
|
|
1231
1226
|
return oe.delete(e, s);
|
|
1232
1227
|
}
|
|
1233
1228
|
};
|
|
1234
|
-
function
|
|
1229
|
+
function Xs(e) {
|
|
1235
1230
|
return T.post("/user/v1.0/login/by-domain", e);
|
|
1236
1231
|
}
|
|
1237
|
-
function
|
|
1232
|
+
function Po() {
|
|
1238
1233
|
return T.put("/user/v1.0/user/logout");
|
|
1239
1234
|
}
|
|
1240
|
-
function
|
|
1235
|
+
function Js() {
|
|
1241
1236
|
return T.get("/user/v1.0/user/get-me");
|
|
1242
1237
|
}
|
|
1243
|
-
function
|
|
1238
|
+
function zo(e) {
|
|
1244
1239
|
return T.post("/user/v1.0/refresh", { refreshToken: e });
|
|
1245
1240
|
}
|
|
1246
1241
|
const ce = g(""), de = g(""), me = g("");
|
|
1247
|
-
function
|
|
1242
|
+
function Oo(e) {
|
|
1248
1243
|
e.appId && (ce.value = e.appId), e.clientId && (de.value = e.clientId), e.apiBaseUrl && (me.value = e.apiBaseUrl);
|
|
1249
1244
|
}
|
|
1250
|
-
function
|
|
1245
|
+
function $e() {
|
|
1251
1246
|
if (ce.value)
|
|
1252
1247
|
return ce.value;
|
|
1253
1248
|
try {
|
|
@@ -1256,7 +1251,7 @@ function Me() {
|
|
|
1256
1251
|
return "";
|
|
1257
1252
|
}
|
|
1258
1253
|
}
|
|
1259
|
-
function
|
|
1254
|
+
function Qs() {
|
|
1260
1255
|
if (de.value)
|
|
1261
1256
|
return de.value;
|
|
1262
1257
|
try {
|
|
@@ -1265,7 +1260,7 @@ function Zs() {
|
|
|
1265
1260
|
return "";
|
|
1266
1261
|
}
|
|
1267
1262
|
}
|
|
1268
|
-
function
|
|
1263
|
+
function Ao() {
|
|
1269
1264
|
if (me.value)
|
|
1270
1265
|
return me.value;
|
|
1271
1266
|
try {
|
|
@@ -1274,14 +1269,14 @@ function Bo() {
|
|
|
1274
1269
|
return "";
|
|
1275
1270
|
}
|
|
1276
1271
|
}
|
|
1277
|
-
const
|
|
1272
|
+
const Bo = {
|
|
1278
1273
|
appId: ce,
|
|
1279
1274
|
clientId: de,
|
|
1280
1275
|
apiBaseUrl: me
|
|
1281
|
-
},
|
|
1276
|
+
}, Zs = { class: "login" }, Gs = { class: "login__container" }, eo = /* @__PURE__ */ H({
|
|
1282
1277
|
__name: "index",
|
|
1283
1278
|
setup(e) {
|
|
1284
|
-
const s = X(), o = ae(), a = g(!1), n = g(!1),
|
|
1279
|
+
const s = X(), o = ae(), a = g(!1), n = g(!1), c = we({
|
|
1285
1280
|
uid: "",
|
|
1286
1281
|
password: ""
|
|
1287
1282
|
}), w = {
|
|
@@ -1292,15 +1287,15 @@ const Vo = {
|
|
|
1292
1287
|
{ required: !0, message: "请输入密码", trigger: "blur" },
|
|
1293
1288
|
{ min: 6, message: "密码长度至少6位", trigger: "blur" }
|
|
1294
1289
|
]
|
|
1295
|
-
},
|
|
1290
|
+
}, d = g(), h = async () => {
|
|
1296
1291
|
var l;
|
|
1297
1292
|
try {
|
|
1298
|
-
await ((l =
|
|
1299
|
-
const p = await
|
|
1300
|
-
appId:
|
|
1301
|
-
clientId:
|
|
1302
|
-
uid:
|
|
1303
|
-
password:
|
|
1293
|
+
await ((l = d.value) == null ? void 0 : l.validate()), a.value = !0;
|
|
1294
|
+
const p = await Xs({
|
|
1295
|
+
appId: $e(),
|
|
1296
|
+
clientId: Qs(),
|
|
1297
|
+
uid: c.uid,
|
|
1298
|
+
password: c.password,
|
|
1304
1299
|
code: !0
|
|
1305
1300
|
});
|
|
1306
1301
|
We(p), W.success("登录成功");
|
|
@@ -1312,8 +1307,8 @@ const Vo = {
|
|
|
1312
1307
|
a.value = !1;
|
|
1313
1308
|
}
|
|
1314
1309
|
};
|
|
1315
|
-
return (l, p) => (u(), _("div",
|
|
1316
|
-
t("div",
|
|
1310
|
+
return (l, p) => (u(), _("div", Zs, [
|
|
1311
|
+
t("div", Gs, [
|
|
1317
1312
|
p[5] || (p[5] = t("div", { class: "login__header" }, [
|
|
1318
1313
|
t("img", {
|
|
1319
1314
|
src: Ye,
|
|
@@ -1325,23 +1320,23 @@ const Vo = {
|
|
|
1325
1320
|
], -1)),
|
|
1326
1321
|
S(r(ht), {
|
|
1327
1322
|
ref_key: "formRef",
|
|
1328
|
-
ref:
|
|
1329
|
-
model:
|
|
1323
|
+
ref: d,
|
|
1324
|
+
model: c,
|
|
1330
1325
|
rules: w,
|
|
1331
1326
|
class: "login__form",
|
|
1332
1327
|
"label-width": "0"
|
|
1333
1328
|
}, {
|
|
1334
|
-
default:
|
|
1329
|
+
default: I(() => [
|
|
1335
1330
|
S(r(re), { prop: "uid" }, {
|
|
1336
|
-
default:
|
|
1331
|
+
default: I(() => [
|
|
1337
1332
|
S(r(Oe), {
|
|
1338
|
-
modelValue:
|
|
1339
|
-
"onUpdate:modelValue": p[0] || (p[0] = (i) =>
|
|
1333
|
+
modelValue: c.uid,
|
|
1334
|
+
"onUpdate:modelValue": p[0] || (p[0] = (i) => c.uid = i),
|
|
1340
1335
|
placeholder: "用户名",
|
|
1341
1336
|
size: "large"
|
|
1342
1337
|
}, {
|
|
1343
|
-
prefix:
|
|
1344
|
-
S(r(
|
|
1338
|
+
prefix: I(() => [
|
|
1339
|
+
S(r(M), {
|
|
1345
1340
|
name: "user",
|
|
1346
1341
|
size: 18
|
|
1347
1342
|
})
|
|
@@ -1352,18 +1347,18 @@ const Vo = {
|
|
|
1352
1347
|
_: 1
|
|
1353
1348
|
}),
|
|
1354
1349
|
S(r(re), { prop: "password" }, {
|
|
1355
|
-
default:
|
|
1350
|
+
default: I(() => [
|
|
1356
1351
|
S(r(Oe), {
|
|
1357
|
-
modelValue:
|
|
1358
|
-
"onUpdate:modelValue": p[1] || (p[1] = (i) =>
|
|
1352
|
+
modelValue: c.password,
|
|
1353
|
+
"onUpdate:modelValue": p[1] || (p[1] = (i) => c.password = i),
|
|
1359
1354
|
type: "password",
|
|
1360
1355
|
placeholder: "密码",
|
|
1361
1356
|
size: "large",
|
|
1362
1357
|
"show-password": "",
|
|
1363
1358
|
onKeyup: Ve(h, ["enter"])
|
|
1364
1359
|
}, {
|
|
1365
|
-
prefix:
|
|
1366
|
-
S(r(
|
|
1360
|
+
prefix: I(() => [
|
|
1361
|
+
S(r(M), {
|
|
1367
1362
|
name: "lock",
|
|
1368
1363
|
size: 18
|
|
1369
1364
|
})
|
|
@@ -1374,12 +1369,12 @@ const Vo = {
|
|
|
1374
1369
|
_: 1
|
|
1375
1370
|
}),
|
|
1376
1371
|
S(r(re), null, {
|
|
1377
|
-
default:
|
|
1378
|
-
S(r(
|
|
1372
|
+
default: I(() => [
|
|
1373
|
+
S(r(ft), {
|
|
1379
1374
|
modelValue: n.value,
|
|
1380
1375
|
"onUpdate:modelValue": p[2] || (p[2] = (i) => n.value = i)
|
|
1381
1376
|
}, {
|
|
1382
|
-
default:
|
|
1377
|
+
default: I(() => [...p[3] || (p[3] = [
|
|
1383
1378
|
G("记住我", -1)
|
|
1384
1379
|
])]),
|
|
1385
1380
|
_: 1
|
|
@@ -1388,7 +1383,7 @@ const Vo = {
|
|
|
1388
1383
|
_: 1
|
|
1389
1384
|
}),
|
|
1390
1385
|
S(r(re), null, {
|
|
1391
|
-
default:
|
|
1386
|
+
default: I(() => [
|
|
1392
1387
|
S(r(he), {
|
|
1393
1388
|
type: "primary",
|
|
1394
1389
|
size: "large",
|
|
@@ -1396,7 +1391,7 @@ const Vo = {
|
|
|
1396
1391
|
class: "login__submit",
|
|
1397
1392
|
onClick: h
|
|
1398
1393
|
}, {
|
|
1399
|
-
default:
|
|
1394
|
+
default: I(() => [...p[4] || (p[4] = [
|
|
1400
1395
|
G(" 登录 ", -1)
|
|
1401
1396
|
])]),
|
|
1402
1397
|
_: 1
|
|
@@ -1413,17 +1408,17 @@ const Vo = {
|
|
|
1413
1408
|
])
|
|
1414
1409
|
]));
|
|
1415
1410
|
}
|
|
1416
|
-
}),
|
|
1411
|
+
}), to = /* @__PURE__ */ q(eo, [["__scopeId", "data-v-f3e724b6"]]), so = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1417
1412
|
__proto__: null,
|
|
1418
|
-
default:
|
|
1419
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
1413
|
+
default: to
|
|
1414
|
+
}, Symbol.toStringTag, { value: "Module" })), oo = { class: "error-page" }, ao = { class: "error-page__content" }, no = /* @__PURE__ */ H({
|
|
1420
1415
|
__name: "404",
|
|
1421
1416
|
setup(e) {
|
|
1422
1417
|
const s = X(), o = () => {
|
|
1423
1418
|
s.push("/");
|
|
1424
1419
|
};
|
|
1425
|
-
return (a, n) => (u(), _("div",
|
|
1426
|
-
t("div",
|
|
1420
|
+
return (a, n) => (u(), _("div", oo, [
|
|
1421
|
+
t("div", ao, [
|
|
1427
1422
|
n[1] || (n[1] = t("div", { class: "error-page__code" }, "404", -1)),
|
|
1428
1423
|
n[2] || (n[2] = t("div", { class: "error-page__title" }, "页面不存在", -1)),
|
|
1429
1424
|
n[3] || (n[3] = t("div", { class: "error-page__desc" }, "抱歉,您访问的页面不存在或已被删除", -1)),
|
|
@@ -1431,7 +1426,7 @@ const Vo = {
|
|
|
1431
1426
|
type: "primary",
|
|
1432
1427
|
onClick: o
|
|
1433
1428
|
}, {
|
|
1434
|
-
default:
|
|
1429
|
+
default: I(() => [...n[0] || (n[0] = [
|
|
1435
1430
|
G("返回首页", -1)
|
|
1436
1431
|
])]),
|
|
1437
1432
|
_: 1
|
|
@@ -1439,17 +1434,17 @@ const Vo = {
|
|
|
1439
1434
|
])
|
|
1440
1435
|
]));
|
|
1441
1436
|
}
|
|
1442
|
-
}),
|
|
1437
|
+
}), ro = /* @__PURE__ */ q(no, [["__scopeId", "data-v-c3c12c24"]]), lo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1443
1438
|
__proto__: null,
|
|
1444
|
-
default:
|
|
1445
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
1439
|
+
default: ro
|
|
1440
|
+
}, Symbol.toStringTag, { value: "Module" })), io = { class: "error-page" }, uo = { class: "error-page__content" }, co = /* @__PURE__ */ H({
|
|
1446
1441
|
__name: "403",
|
|
1447
1442
|
setup(e) {
|
|
1448
1443
|
const s = X(), o = () => {
|
|
1449
1444
|
s.push("/");
|
|
1450
1445
|
};
|
|
1451
|
-
return (a, n) => (u(), _("div",
|
|
1452
|
-
t("div",
|
|
1446
|
+
return (a, n) => (u(), _("div", io, [
|
|
1447
|
+
t("div", uo, [
|
|
1453
1448
|
n[1] || (n[1] = t("div", { class: "error-page__code" }, "403", -1)),
|
|
1454
1449
|
n[2] || (n[2] = t("div", { class: "error-page__title" }, "无访问权限", -1)),
|
|
1455
1450
|
n[3] || (n[3] = t("div", { class: "error-page__desc" }, "抱歉,您没有权限访问此页面", -1)),
|
|
@@ -1457,7 +1452,7 @@ const Vo = {
|
|
|
1457
1452
|
type: "primary",
|
|
1458
1453
|
onClick: o
|
|
1459
1454
|
}, {
|
|
1460
|
-
default:
|
|
1455
|
+
default: I(() => [...n[0] || (n[0] = [
|
|
1461
1456
|
G("返回首页", -1)
|
|
1462
1457
|
])]),
|
|
1463
1458
|
_: 1
|
|
@@ -1465,18 +1460,18 @@ const Vo = {
|
|
|
1465
1460
|
])
|
|
1466
1461
|
]));
|
|
1467
1462
|
}
|
|
1468
|
-
}),
|
|
1463
|
+
}), mo = /* @__PURE__ */ q(co, [["__scopeId", "data-v-dd5f2795"]]), po = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1469
1464
|
__proto__: null,
|
|
1470
|
-
default:
|
|
1465
|
+
default: mo
|
|
1471
1466
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
1472
|
-
function
|
|
1473
|
-
const e = J(), s = j(), o =
|
|
1467
|
+
function Vo() {
|
|
1468
|
+
const e = J(), s = j(), o = Ue(), a = y(() => s.userName || ""), n = y(() => s.userInfo), c = y(() => e.appName), w = y(() => o.isLoggedIn), d = y(() => e.isDark), h = y(() => e.theme), l = y(() => e.isCollapsed), p = y(() => e.layout);
|
|
1474
1469
|
return {
|
|
1475
1470
|
userName: a,
|
|
1476
1471
|
userInfo: n,
|
|
1477
|
-
appName:
|
|
1472
|
+
appName: c,
|
|
1478
1473
|
isLoggedIn: w,
|
|
1479
|
-
isDark:
|
|
1474
|
+
isDark: d,
|
|
1480
1475
|
theme: h,
|
|
1481
1476
|
isCollapsed: l,
|
|
1482
1477
|
layout: p,
|
|
@@ -1488,58 +1483,58 @@ function Fo() {
|
|
|
1488
1483
|
}
|
|
1489
1484
|
};
|
|
1490
1485
|
}
|
|
1491
|
-
function
|
|
1486
|
+
function Fo() {
|
|
1492
1487
|
const e = j();
|
|
1493
1488
|
return {
|
|
1494
1489
|
isLoggedIn: y(() => e.isLoggedIn)
|
|
1495
1490
|
};
|
|
1496
1491
|
}
|
|
1497
|
-
function
|
|
1498
|
-
const { rules: o, onSubmit: a } = s, n = g(),
|
|
1499
|
-
|
|
1492
|
+
function Ko(e, s = {}) {
|
|
1493
|
+
const { rules: o, onSubmit: a } = s, n = g(), c = we({ ...e }), w = g(!1), d = g(!1), h = g(!1), l = () => {
|
|
1494
|
+
v(), h.value = !1, d.value = !0;
|
|
1500
1495
|
}, p = (C) => {
|
|
1501
|
-
Object.assign(
|
|
1496
|
+
Object.assign(c, C), h.value = !0, d.value = !0;
|
|
1502
1497
|
}, i = () => {
|
|
1503
|
-
|
|
1504
|
-
},
|
|
1498
|
+
d.value = !1, v();
|
|
1499
|
+
}, v = () => {
|
|
1505
1500
|
var C;
|
|
1506
|
-
Object.keys(e).forEach((
|
|
1507
|
-
|
|
1501
|
+
Object.keys(e).forEach((P) => {
|
|
1502
|
+
c[P] = e[P];
|
|
1508
1503
|
}), (C = n.value) == null || C.resetFields();
|
|
1509
1504
|
};
|
|
1510
1505
|
return {
|
|
1511
1506
|
formRef: n,
|
|
1512
|
-
formData:
|
|
1507
|
+
formData: c,
|
|
1513
1508
|
rules: o,
|
|
1514
1509
|
loading: w,
|
|
1515
|
-
visible:
|
|
1510
|
+
visible: d,
|
|
1516
1511
|
isEdit: h,
|
|
1517
1512
|
openAdd: l,
|
|
1518
1513
|
openEdit: p,
|
|
1519
1514
|
close: i,
|
|
1520
|
-
resetForm:
|
|
1515
|
+
resetForm: v,
|
|
1521
1516
|
handleSubmit: async () => {
|
|
1522
1517
|
var C;
|
|
1523
1518
|
try {
|
|
1524
|
-
await ((C = n.value) == null ? void 0 : C.validate()), w.value = !0, await (a == null ? void 0 : a(
|
|
1525
|
-
} catch (
|
|
1526
|
-
console.error(
|
|
1519
|
+
await ((C = n.value) == null ? void 0 : C.validate()), w.value = !0, await (a == null ? void 0 : a(c)), i();
|
|
1520
|
+
} catch (P) {
|
|
1521
|
+
console.error(P);
|
|
1527
1522
|
} finally {
|
|
1528
1523
|
w.value = !1;
|
|
1529
1524
|
}
|
|
1530
1525
|
}
|
|
1531
1526
|
};
|
|
1532
1527
|
}
|
|
1533
|
-
function
|
|
1534
|
-
const { fetchData: s, defaultPageSize: o = 10 } = e, a = g(!1), n = g([]),
|
|
1528
|
+
function jo(e) {
|
|
1529
|
+
const { fetchData: s, defaultPageSize: o = 10 } = e, a = g(!1), n = g([]), c = g(0), w = g(1), d = g(o), h = we({}), l = async () => {
|
|
1535
1530
|
a.value = !0;
|
|
1536
1531
|
try {
|
|
1537
1532
|
const b = {
|
|
1538
1533
|
...h,
|
|
1539
1534
|
page: w.value,
|
|
1540
|
-
pageSize:
|
|
1535
|
+
pageSize: d.value
|
|
1541
1536
|
}, E = await s(b);
|
|
1542
|
-
n.value = E.list,
|
|
1537
|
+
n.value = E.list, c.value = E.total;
|
|
1543
1538
|
} catch (b) {
|
|
1544
1539
|
console.error(b);
|
|
1545
1540
|
} finally {
|
|
@@ -1551,47 +1546,47 @@ function qo(e) {
|
|
|
1551
1546
|
Object.keys(h).forEach((b) => {
|
|
1552
1547
|
h[b] = void 0;
|
|
1553
1548
|
}), w.value = 1, l();
|
|
1554
|
-
},
|
|
1549
|
+
}, v = (b) => {
|
|
1555
1550
|
w.value = b, l();
|
|
1556
|
-
},
|
|
1557
|
-
|
|
1551
|
+
}, D = (b) => {
|
|
1552
|
+
d.value = b, w.value = 1, l();
|
|
1558
1553
|
}, C = () => {
|
|
1559
1554
|
l();
|
|
1560
|
-
},
|
|
1555
|
+
}, P = y(() => ({
|
|
1561
1556
|
current: w.value,
|
|
1562
|
-
pageSize:
|
|
1563
|
-
total:
|
|
1557
|
+
pageSize: d.value,
|
|
1558
|
+
total: c.value
|
|
1564
1559
|
}));
|
|
1565
1560
|
return {
|
|
1566
1561
|
loading: a,
|
|
1567
1562
|
data: n,
|
|
1568
|
-
total:
|
|
1563
|
+
total: c,
|
|
1569
1564
|
currentPage: w,
|
|
1570
|
-
pageSize:
|
|
1565
|
+
pageSize: d,
|
|
1571
1566
|
searchParams: h,
|
|
1572
|
-
pagination:
|
|
1567
|
+
pagination: P,
|
|
1573
1568
|
getData: l,
|
|
1574
1569
|
handleSearch: p,
|
|
1575
1570
|
handleReset: i,
|
|
1576
|
-
handlePageChange:
|
|
1577
|
-
handleSizeChange:
|
|
1571
|
+
handlePageChange: v,
|
|
1572
|
+
handleSizeChange: D,
|
|
1578
1573
|
refresh: C
|
|
1579
1574
|
};
|
|
1580
1575
|
}
|
|
1581
|
-
function
|
|
1576
|
+
function qo(e) {
|
|
1582
1577
|
return j().isLoggedIn;
|
|
1583
1578
|
}
|
|
1584
|
-
function
|
|
1579
|
+
function Yo(e) {
|
|
1585
1580
|
return j().isLoggedIn;
|
|
1586
1581
|
}
|
|
1587
|
-
function
|
|
1582
|
+
function Wo() {
|
|
1588
1583
|
return !0;
|
|
1589
1584
|
}
|
|
1590
1585
|
const Qe = [
|
|
1591
1586
|
{
|
|
1592
1587
|
path: "/login",
|
|
1593
1588
|
name: "Login",
|
|
1594
|
-
component: () => Promise.resolve().then(() =>
|
|
1589
|
+
component: () => Promise.resolve().then(() => so),
|
|
1595
1590
|
meta: {
|
|
1596
1591
|
title: "登录",
|
|
1597
1592
|
hidden: !0
|
|
@@ -1600,7 +1595,7 @@ const Qe = [
|
|
|
1600
1595
|
{
|
|
1601
1596
|
path: "/404",
|
|
1602
1597
|
name: "NotFound",
|
|
1603
|
-
component: () => Promise.resolve().then(() =>
|
|
1598
|
+
component: () => Promise.resolve().then(() => lo),
|
|
1604
1599
|
meta: {
|
|
1605
1600
|
title: "404",
|
|
1606
1601
|
hidden: !0
|
|
@@ -1609,7 +1604,7 @@ const Qe = [
|
|
|
1609
1604
|
{
|
|
1610
1605
|
path: "/403",
|
|
1611
1606
|
name: "Forbidden",
|
|
1612
|
-
component: () => Promise.resolve().then(() =>
|
|
1607
|
+
component: () => Promise.resolve().then(() => po),
|
|
1613
1608
|
meta: {
|
|
1614
1609
|
title: "403",
|
|
1615
1610
|
hidden: !0
|
|
@@ -1624,13 +1619,13 @@ const Qe = [
|
|
|
1624
1619
|
}, Ge = {
|
|
1625
1620
|
path: "/",
|
|
1626
1621
|
name: "Layout",
|
|
1627
|
-
component: () => Promise.resolve().then(() =>
|
|
1622
|
+
component: () => Promise.resolve().then(() => Bs),
|
|
1628
1623
|
redirect: "/dashboard",
|
|
1629
1624
|
children: [
|
|
1630
1625
|
{
|
|
1631
1626
|
path: "/dashboard",
|
|
1632
1627
|
name: "Dashboard",
|
|
1633
|
-
component: () => import("./index-
|
|
1628
|
+
component: () => import("./index-BvGKg7pX.js"),
|
|
1634
1629
|
meta: {
|
|
1635
1630
|
title: "仪表盘",
|
|
1636
1631
|
icon: "dashboard",
|
|
@@ -1641,7 +1636,7 @@ const Qe = [
|
|
|
1641
1636
|
{
|
|
1642
1637
|
path: "/system/user",
|
|
1643
1638
|
name: "SystemUser",
|
|
1644
|
-
component: () => import("./index-
|
|
1639
|
+
component: () => import("./index-CWqQlqFn.js"),
|
|
1645
1640
|
meta: {
|
|
1646
1641
|
title: "用户管理",
|
|
1647
1642
|
icon: "user",
|
|
@@ -1651,7 +1646,7 @@ const Qe = [
|
|
|
1651
1646
|
{
|
|
1652
1647
|
path: "/system/role",
|
|
1653
1648
|
name: "SystemRole",
|
|
1654
|
-
component: () => import("./index-
|
|
1649
|
+
component: () => import("./index-BDELIN6f.js"),
|
|
1655
1650
|
meta: {
|
|
1656
1651
|
title: "角色管理",
|
|
1657
1652
|
icon: "role",
|
|
@@ -1661,7 +1656,7 @@ const Qe = [
|
|
|
1661
1656
|
{
|
|
1662
1657
|
path: "/system/menu",
|
|
1663
1658
|
name: "SystemMenu",
|
|
1664
|
-
component: () => import("./index-
|
|
1659
|
+
component: () => import("./index-8tKP-ZZr.js"),
|
|
1665
1660
|
meta: {
|
|
1666
1661
|
title: "菜单管理",
|
|
1667
1662
|
icon: "menu",
|
|
@@ -1669,11 +1664,11 @@ const Qe = [
|
|
|
1669
1664
|
}
|
|
1670
1665
|
}
|
|
1671
1666
|
]
|
|
1672
|
-
},
|
|
1667
|
+
}, Ho = [
|
|
1673
1668
|
{
|
|
1674
1669
|
path: "/dashboard",
|
|
1675
1670
|
name: "Dashboard",
|
|
1676
|
-
component: () => import("./index-
|
|
1671
|
+
component: () => import("./index-BvGKg7pX.js"),
|
|
1677
1672
|
meta: {
|
|
1678
1673
|
title: "仪表盘",
|
|
1679
1674
|
icon: "dashboard",
|
|
@@ -1693,7 +1688,7 @@ const Qe = [
|
|
|
1693
1688
|
{
|
|
1694
1689
|
path: "user",
|
|
1695
1690
|
name: "SystemUser",
|
|
1696
|
-
component: () => import("./index-
|
|
1691
|
+
component: () => import("./index-CWqQlqFn.js"),
|
|
1697
1692
|
meta: {
|
|
1698
1693
|
title: "用户管理",
|
|
1699
1694
|
icon: "user",
|
|
@@ -1703,7 +1698,7 @@ const Qe = [
|
|
|
1703
1698
|
{
|
|
1704
1699
|
path: "role",
|
|
1705
1700
|
name: "SystemRole",
|
|
1706
|
-
component: () => import("./index-
|
|
1701
|
+
component: () => import("./index-BDELIN6f.js"),
|
|
1707
1702
|
meta: {
|
|
1708
1703
|
title: "角色管理",
|
|
1709
1704
|
icon: "role",
|
|
@@ -1713,7 +1708,7 @@ const Qe = [
|
|
|
1713
1708
|
{
|
|
1714
1709
|
path: "menu",
|
|
1715
1710
|
name: "SystemMenu",
|
|
1716
|
-
component: () => import("./index-
|
|
1711
|
+
component: () => import("./index-8tKP-ZZr.js"),
|
|
1717
1712
|
meta: {
|
|
1718
1713
|
title: "菜单管理",
|
|
1719
1714
|
icon: "menu",
|
|
@@ -1722,7 +1717,7 @@ const Qe = [
|
|
|
1722
1717
|
}
|
|
1723
1718
|
]
|
|
1724
1719
|
}
|
|
1725
|
-
],
|
|
1720
|
+
], ho = [
|
|
1726
1721
|
{
|
|
1727
1722
|
menuCode: "dashboard",
|
|
1728
1723
|
menuName: "仪表盘",
|
|
@@ -1783,7 +1778,7 @@ et.beforeEach(async (e, s, o) => {
|
|
|
1783
1778
|
else {
|
|
1784
1779
|
const n = j();
|
|
1785
1780
|
n.isLoggedIn || (n.setUserInfo({
|
|
1786
|
-
appId:
|
|
1781
|
+
appId: $e(),
|
|
1787
1782
|
userId: "1",
|
|
1788
1783
|
userName: "管理员",
|
|
1789
1784
|
departmentName: "技术部",
|
|
@@ -1791,19 +1786,19 @@ et.beforeEach(async (e, s, o) => {
|
|
|
1791
1786
|
mobilePhone: "13800138000",
|
|
1792
1787
|
positionName: "管理员",
|
|
1793
1788
|
avatar: ""
|
|
1794
|
-
}), ee().setMenuList(
|
|
1789
|
+
}), ee().setMenuList(ho)), e.name && e.meta.keepAlive && a.addCachedView(e.name), o();
|
|
1795
1790
|
}
|
|
1796
1791
|
else
|
|
1797
1792
|
fo.includes(e.path) ? o() : o("/login");
|
|
1798
1793
|
});
|
|
1799
|
-
function
|
|
1794
|
+
function Xo() {
|
|
1800
1795
|
const e = Ce({
|
|
1801
1796
|
history: Se(),
|
|
1802
1797
|
routes: [...Qe, Ge, Ze]
|
|
1803
1798
|
});
|
|
1804
1799
|
et.matcher = e.matcher;
|
|
1805
1800
|
}
|
|
1806
|
-
function
|
|
1801
|
+
function Jo(e, s = {}) {
|
|
1807
1802
|
const o = s.indexPath || "/dashboard";
|
|
1808
1803
|
return {
|
|
1809
1804
|
path: "/",
|
|
@@ -1813,119 +1808,119 @@ function Qo(e, s = {}) {
|
|
|
1813
1808
|
children: e
|
|
1814
1809
|
};
|
|
1815
1810
|
}
|
|
1816
|
-
function
|
|
1811
|
+
function Qo(e) {
|
|
1817
1812
|
return Ce({
|
|
1818
1813
|
history: Se(),
|
|
1819
1814
|
routes: e,
|
|
1820
1815
|
scrollBehavior: () => ({ left: 0, top: 0 })
|
|
1821
1816
|
});
|
|
1822
1817
|
}
|
|
1823
|
-
function
|
|
1818
|
+
function Zo(e) {
|
|
1824
1819
|
return T.get("/role/list", { params: e });
|
|
1825
1820
|
}
|
|
1826
|
-
function
|
|
1821
|
+
function Go(e) {
|
|
1827
1822
|
return T.get(`/role/${e}`);
|
|
1828
1823
|
}
|
|
1829
|
-
function
|
|
1824
|
+
function ea(e) {
|
|
1830
1825
|
return T.post("/role", e);
|
|
1831
1826
|
}
|
|
1832
|
-
function
|
|
1827
|
+
function ta(e, s) {
|
|
1833
1828
|
return T.put(`/role/${e}`, s);
|
|
1834
1829
|
}
|
|
1835
|
-
function
|
|
1830
|
+
function sa(e) {
|
|
1836
1831
|
return T.delete(`/role/${e}`);
|
|
1837
1832
|
}
|
|
1838
|
-
function
|
|
1833
|
+
function oa(e, s) {
|
|
1839
1834
|
return T.patch(`/role/${e}/status`, { status: s });
|
|
1840
1835
|
}
|
|
1841
|
-
function
|
|
1836
|
+
function aa() {
|
|
1842
1837
|
return T.get("/user/v1.0/menu/list");
|
|
1843
1838
|
}
|
|
1844
|
-
function
|
|
1845
|
-
const s = e ||
|
|
1839
|
+
function vo(e) {
|
|
1840
|
+
const s = e || $e();
|
|
1846
1841
|
return T.get(`/user/v1.0/menu/get-menu?appId=${s}`);
|
|
1847
1842
|
}
|
|
1848
|
-
function
|
|
1843
|
+
function na(e) {
|
|
1849
1844
|
return T.post("/menu", e);
|
|
1850
1845
|
}
|
|
1851
|
-
function
|
|
1846
|
+
function ra(e, s) {
|
|
1852
1847
|
return T.put(`/menu/${e}`, s);
|
|
1853
1848
|
}
|
|
1854
|
-
function
|
|
1849
|
+
function la(e) {
|
|
1855
1850
|
return T.delete(`/menu/${e}`);
|
|
1856
1851
|
}
|
|
1857
|
-
const
|
|
1858
|
-
function
|
|
1859
|
-
const o = s.whiteList ||
|
|
1860
|
-
e.beforeEach(async (
|
|
1852
|
+
const _o = ["/login", "/404", "/403"];
|
|
1853
|
+
function ia(e, s = {}) {
|
|
1854
|
+
const o = s.whiteList || _o, a = s.loginPath || "/login", n = s.homePath || "/";
|
|
1855
|
+
e.beforeEach(async (c, w, d) => {
|
|
1861
1856
|
const h = J(), l = j(), p = ee();
|
|
1862
|
-
if (h.initTheme(),
|
|
1863
|
-
if (
|
|
1864
|
-
|
|
1857
|
+
if (h.initTheme(), fe())
|
|
1858
|
+
if (c.path === a)
|
|
1859
|
+
d({ path: n });
|
|
1865
1860
|
else if (l.isLoggedIn)
|
|
1866
|
-
|
|
1861
|
+
c.name && c.meta.keepAlive && h.addCachedView(c.name), d();
|
|
1867
1862
|
else
|
|
1868
1863
|
try {
|
|
1869
1864
|
if (s.fetchUserInfo) {
|
|
1870
|
-
const
|
|
1871
|
-
l.setUserInfo(
|
|
1865
|
+
const v = await s.fetchUserInfo();
|
|
1866
|
+
l.setUserInfo(v);
|
|
1872
1867
|
} else {
|
|
1873
|
-
const
|
|
1874
|
-
l.setUserInfo(
|
|
1868
|
+
const v = await Js();
|
|
1869
|
+
l.setUserInfo(v);
|
|
1875
1870
|
}
|
|
1876
1871
|
if (s.fetchMenu) {
|
|
1877
|
-
const
|
|
1878
|
-
p.setMenuList(
|
|
1872
|
+
const v = await s.fetchMenu();
|
|
1873
|
+
p.setMenuList(v);
|
|
1879
1874
|
} else {
|
|
1880
|
-
const
|
|
1881
|
-
p.setMenuList(
|
|
1875
|
+
const v = await vo(s.appId);
|
|
1876
|
+
p.setMenuList(v);
|
|
1882
1877
|
}
|
|
1883
|
-
s.onLoginSuccess && s.onLoginSuccess(),
|
|
1884
|
-
} catch (
|
|
1885
|
-
console.error("获取用户信息失败:",
|
|
1878
|
+
s.onLoginSuccess && s.onLoginSuccess(), c.name && c.meta.keepAlive && h.addCachedView(c.name), d({ ...c, replace: !0 });
|
|
1879
|
+
} catch (v) {
|
|
1880
|
+
console.error("获取用户信息失败:", v), l.clearUserInfo(), p.clearMenu(), localStorage.removeItem("token"), localStorage.removeItem("token_type"), localStorage.removeItem("refresh_token"), d({ path: a, query: { redirect: c.fullPath } });
|
|
1886
1881
|
}
|
|
1887
1882
|
else
|
|
1888
|
-
o.includes(
|
|
1883
|
+
o.includes(c.path) ? d() : d({ path: a, query: { redirect: c.fullPath } });
|
|
1889
1884
|
}), e.afterEach(() => {
|
|
1890
1885
|
});
|
|
1891
1886
|
}
|
|
1892
|
-
function
|
|
1887
|
+
function ua(e) {
|
|
1893
1888
|
return T.get("/user/list", { params: e });
|
|
1894
1889
|
}
|
|
1895
|
-
function
|
|
1890
|
+
function ca(e) {
|
|
1896
1891
|
return T.get(`/user/${e}`);
|
|
1897
1892
|
}
|
|
1898
|
-
function
|
|
1893
|
+
function da(e) {
|
|
1899
1894
|
return T.post("/user", e);
|
|
1900
1895
|
}
|
|
1901
|
-
function
|
|
1896
|
+
function ma(e, s) {
|
|
1902
1897
|
return T.put(`/user/${e}`, s);
|
|
1903
1898
|
}
|
|
1904
|
-
function
|
|
1899
|
+
function pa(e) {
|
|
1905
1900
|
return T.delete(`/user/${e}`);
|
|
1906
1901
|
}
|
|
1907
|
-
function
|
|
1902
|
+
function ha(e) {
|
|
1908
1903
|
return T.post("/user/batch-delete", { ids: e });
|
|
1909
1904
|
}
|
|
1910
1905
|
function fa(e, s) {
|
|
1911
1906
|
return T.patch(`/user/${e}/status`, { status: s });
|
|
1912
1907
|
}
|
|
1913
|
-
function
|
|
1908
|
+
function va(e) {
|
|
1914
1909
|
return T.post(`/user/${e}/reset-password`);
|
|
1915
1910
|
}
|
|
1916
|
-
var
|
|
1917
|
-
const
|
|
1911
|
+
var go = /* @__PURE__ */ ((e) => (e[e.ENABLED = 1] = "ENABLED", e[e.DISABLED = 0] = "DISABLED", e))(go || {}), yo = /* @__PURE__ */ ((e) => (e[e.UNKNOWN = 0] = "UNKNOWN", e[e.MALE = 1] = "MALE", e[e.FEMALE = 2] = "FEMALE", e))(yo || {}), ko = /* @__PURE__ */ ((e) => (e[e.DIRECTORY = 0] = "DIRECTORY", e[e.MENU = 1] = "MENU", e[e.BUTTON = 2] = "BUTTON", e))(ko || {});
|
|
1912
|
+
const _a = {
|
|
1918
1913
|
1: "启用",
|
|
1919
1914
|
0: "禁用"
|
|
1920
|
-
},
|
|
1915
|
+
}, ga = {
|
|
1921
1916
|
0: "未知",
|
|
1922
1917
|
1: "男",
|
|
1923
1918
|
2: "女"
|
|
1924
|
-
},
|
|
1919
|
+
}, ya = {
|
|
1925
1920
|
0: "目录",
|
|
1926
1921
|
1: "菜单",
|
|
1927
1922
|
2: "按钮"
|
|
1928
|
-
},
|
|
1923
|
+
}, ka = [
|
|
1929
1924
|
{
|
|
1930
1925
|
label: "启用",
|
|
1931
1926
|
value: 1
|
|
@@ -1936,7 +1931,7 @@ const ga = {
|
|
|
1936
1931
|
value: 0
|
|
1937
1932
|
/* DISABLED */
|
|
1938
1933
|
}
|
|
1939
|
-
],
|
|
1934
|
+
], ba = [
|
|
1940
1935
|
{
|
|
1941
1936
|
label: "未知",
|
|
1942
1937
|
value: 0
|
|
@@ -1952,7 +1947,7 @@ const ga = {
|
|
|
1952
1947
|
value: 2
|
|
1953
1948
|
/* FEMALE */
|
|
1954
1949
|
}
|
|
1955
|
-
],
|
|
1950
|
+
], wa = [
|
|
1956
1951
|
{
|
|
1957
1952
|
label: "目录",
|
|
1958
1953
|
value: 0
|
|
@@ -1968,100 +1963,100 @@ const ga = {
|
|
|
1968
1963
|
value: 2
|
|
1969
1964
|
/* BUTTON */
|
|
1970
1965
|
}
|
|
1971
|
-
],
|
|
1966
|
+
], Ca = {
|
|
1972
1967
|
mounted(e, s) {
|
|
1973
1968
|
var a;
|
|
1974
1969
|
j().isLoggedIn || (a = e.parentNode) == null || a.removeChild(e);
|
|
1975
1970
|
}
|
|
1976
1971
|
};
|
|
1977
1972
|
export {
|
|
1978
|
-
|
|
1979
|
-
|
|
1980
|
-
|
|
1981
|
-
|
|
1982
|
-
|
|
1983
|
-
|
|
1984
|
-
|
|
1985
|
-
|
|
1986
|
-
|
|
1987
|
-
|
|
1988
|
-
|
|
1989
|
-
|
|
1973
|
+
xt as $,
|
|
1974
|
+
Mo as A,
|
|
1975
|
+
aa as B,
|
|
1976
|
+
vo as C,
|
|
1977
|
+
$o as D,
|
|
1978
|
+
Uo as E,
|
|
1979
|
+
Do as F,
|
|
1980
|
+
yo as G,
|
|
1981
|
+
xs as H,
|
|
1982
|
+
Go as I,
|
|
1983
|
+
Zo as J,
|
|
1984
|
+
fe as K,
|
|
1990
1985
|
Je as L,
|
|
1991
|
-
|
|
1986
|
+
ko as M,
|
|
1992
1987
|
wt as N,
|
|
1993
1988
|
yt as O,
|
|
1994
|
-
|
|
1995
|
-
|
|
1996
|
-
|
|
1997
|
-
|
|
1998
|
-
|
|
1999
|
-
|
|
2000
|
-
|
|
1989
|
+
ca as P,
|
|
1990
|
+
Js as Q,
|
|
1991
|
+
ua as R,
|
|
1992
|
+
go as S,
|
|
1993
|
+
Ro as T,
|
|
1994
|
+
qo as U,
|
|
1995
|
+
Yo as V,
|
|
2001
1996
|
Xe as W,
|
|
2002
1997
|
T as X,
|
|
2003
|
-
|
|
2004
|
-
|
|
1998
|
+
Oo as Y,
|
|
1999
|
+
Wo as Z,
|
|
2005
2000
|
q as _,
|
|
2006
|
-
|
|
2001
|
+
ka as a,
|
|
2007
2002
|
Ge as a0,
|
|
2008
|
-
|
|
2003
|
+
f as a1,
|
|
2009
2004
|
le as a2,
|
|
2010
|
-
|
|
2011
|
-
|
|
2012
|
-
|
|
2013
|
-
|
|
2014
|
-
|
|
2015
|
-
|
|
2016
|
-
|
|
2005
|
+
Xs as a3,
|
|
2006
|
+
Po as a4,
|
|
2007
|
+
ho as a5,
|
|
2008
|
+
Ca as a6,
|
|
2009
|
+
zo as a7,
|
|
2010
|
+
va as a8,
|
|
2011
|
+
Xo as a9,
|
|
2017
2012
|
et as aa,
|
|
2018
|
-
|
|
2013
|
+
No as ab,
|
|
2019
2014
|
ie as ac,
|
|
2020
|
-
|
|
2015
|
+
It as ad,
|
|
2021
2016
|
St as ae,
|
|
2022
2017
|
bt as af,
|
|
2023
2018
|
gt as ag,
|
|
2024
2019
|
Ct as ah,
|
|
2025
2020
|
We as ai,
|
|
2026
2021
|
kt as aj,
|
|
2027
|
-
|
|
2022
|
+
ia as ak,
|
|
2028
2023
|
Qe as al,
|
|
2029
|
-
|
|
2030
|
-
|
|
2031
|
-
|
|
2032
|
-
|
|
2024
|
+
ra as am,
|
|
2025
|
+
ta as an,
|
|
2026
|
+
oa as ao,
|
|
2027
|
+
ma as ap,
|
|
2033
2028
|
fa as aq,
|
|
2034
|
-
|
|
2029
|
+
Vo as ar,
|
|
2035
2030
|
J as as,
|
|
2036
|
-
|
|
2037
|
-
|
|
2038
|
-
|
|
2031
|
+
Fo as at,
|
|
2032
|
+
Ue as au,
|
|
2033
|
+
Ko as av,
|
|
2039
2034
|
ee as aw,
|
|
2040
|
-
|
|
2035
|
+
jo as ax,
|
|
2041
2036
|
j as ay,
|
|
2042
|
-
|
|
2043
|
-
|
|
2044
|
-
|
|
2045
|
-
|
|
2046
|
-
|
|
2047
|
-
|
|
2037
|
+
wa as b,
|
|
2038
|
+
mo as c,
|
|
2039
|
+
ba as d,
|
|
2040
|
+
ga as e,
|
|
2041
|
+
ya as f,
|
|
2042
|
+
ro as g,
|
|
2048
2043
|
At as h,
|
|
2049
|
-
|
|
2050
|
-
|
|
2051
|
-
|
|
2052
|
-
|
|
2044
|
+
to as i,
|
|
2045
|
+
_a as j,
|
|
2046
|
+
Bo as k,
|
|
2047
|
+
ha as l,
|
|
2053
2048
|
He as m,
|
|
2054
|
-
|
|
2055
|
-
|
|
2056
|
-
|
|
2057
|
-
|
|
2058
|
-
|
|
2059
|
-
|
|
2060
|
-
|
|
2061
|
-
|
|
2062
|
-
|
|
2049
|
+
Jo as n,
|
|
2050
|
+
na as o,
|
|
2051
|
+
ea as p,
|
|
2052
|
+
Qo as q,
|
|
2053
|
+
da as r,
|
|
2054
|
+
Ho as s,
|
|
2055
|
+
la as t,
|
|
2056
|
+
sa as u,
|
|
2057
|
+
pa as v,
|
|
2063
2058
|
Ze as w,
|
|
2064
|
-
|
|
2065
|
-
|
|
2066
|
-
|
|
2059
|
+
Ao as x,
|
|
2060
|
+
$e as y,
|
|
2061
|
+
Qs as z
|
|
2067
2062
|
};
|