jmash-core 0.1.16 → 0.1.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/dist/{401-KAeiuNjv.mjs → 401-B-xPz9LF.mjs} +9 -9
  2. package/dist/{404-acqFGqEv.mjs → 404-D6qLFrds.mjs} +1 -1
  3. package/dist/{BarChart-wJtn8Ow_.mjs → BarChart-DUGSmZyQ.mjs} +1 -1
  4. package/dist/{index-CMJKWgJS.mjs → index-AwPbizZV.mjs} +2 -2
  5. package/dist/{index-Crx8EUrV.mjs → index-CIsDsOWA.mjs} +39 -36
  6. package/dist/{index-hX78lDCk.mjs → index-CNS2LvqZ.mjs} +1 -1
  7. package/dist/{index-BhlOqpSI.mjs → index-CZJ3UhUM.mjs} +6 -6
  8. package/dist/index-Cb2jBye0.mjs +1817 -0
  9. package/dist/{index-D1KMMIxN.mjs → index-DCziYkYK.mjs} +8 -8
  10. package/dist/index.mjs +45 -44
  11. package/dist/{profile-DrNc9zRG.mjs → profile-GQvC9C8o.mjs} +1 -1
  12. package/dist/{runAs-Bnicmqn-.mjs → runAs-Dwg7Iuqd.mjs} +1 -1
  13. package/dist/{runAs.vue_vue_type_script_setup_true_lang-DCtZwltr.mjs → runAs.vue_vue_type_script_setup_true_lang-BtQpSMZg.mjs} +1 -1
  14. package/dist/style.css +1 -1
  15. package/dist/{types-LJiNV7Za.mjs → types-BuuQJDxb.mjs} +1 -1
  16. package/dist/{updatePwd-C5bezsVR.mjs → updatePwd-5svDyP7G.mjs} +1 -1
  17. package/dist/{updatePwd.vue_vue_type_script_setup_true_lang-B7WfsD0M.mjs → updatePwd.vue_vue_type_script_setup_true_lang-C8rArYsn.mjs} +1 -1
  18. package/dts/src/api/change/index.d.ts +8 -0
  19. package/dts/src/api/change/types.d.ts +20 -0
  20. package/dts/src/components/GraphicVerification/index.vue.d.ts +8 -0
  21. package/dts/src/index.d.ts +2 -2
  22. package/dts/src/lang/package/zh-cn.d.ts +2 -0
  23. package/dts/src/layout/components/NavBar/components/ChangePhoneEmail.vue.d.ts +6 -0
  24. package/dts/src/layout/components/NavBar/components/ChangeWechatBind.vue.d.ts +6 -0
  25. package/package.json +1 -1
  26. package/dist/index-Cag9NoGd.mjs +0 -1633
@@ -0,0 +1,1817 @@
1
+ import { u as Z, _ as re, E as Fe, g as qe, S as We, a as xe, b as He, c as ne, D as ve, d as Ke, f as Xe, e as je, h as fe, i as H, j as $e, r as Te, k as pe, T as be, s as Ge, m as Ye, l as Je, n as me, o as Qe } from "./index-CIsDsOWA.mjs";
2
+ import { defineComponent as R, ref as B, resolveComponent as V, createBlock as x, openBlock as d, withCtx as v, createElementVNode as C, createVNode as p, createElementBlock as k, Fragment as j, renderList as ce, unref as i, createTextVNode as D, toDisplayString as A, useModel as he, watchEffect as Ee, computed as O, createCommentVNode as $, isRef as ae, watch as le, onBeforeMount as Ze, TransitionGroup as et, withModifiers as de, normalizeClass as K, Transition as Pe, KeepAlive as tt, resolveDynamicComponent as ke, getCurrentInstance as nt, nextTick as Ae, onMounted as Le, withDirectives as ot, normalizeStyle as at, vShow as lt, normalizeProps as it, guardReactiveProps as st, renderSlot as rt } from "vue";
3
+ import { useRoute as _e, useRouter as Ce } from "vue-router";
4
+ import { _ as ct } from "./updatePwd.vue_vue_type_script_setup_true_lang-C8rArYsn.mjs";
5
+ import { useI18n as ut } from "vue-i18n";
6
+ import { _ as dt, E as ft } from "./runAs.vue_vue_type_script_setup_true_lang-BtQpSMZg.mjs";
7
+ import { storeToRefs as mt } from "pinia";
8
+ const pt = /* @__PURE__ */ R({
9
+ __name: "index",
10
+ setup(a) {
11
+ const e = Z(), t = B([
12
+ { label: "默认", value: "default" },
13
+ { label: "大型", value: "large" },
14
+ { label: "小型", value: "small" }
15
+ ]);
16
+ function o(s) {
17
+ e.changeSize(s), Fe.success("切换布局大小成功");
18
+ }
19
+ return (s, n) => {
20
+ const l = re, r = V("el-dropdown-item"), c = V("el-dropdown-menu"), f = V("el-dropdown");
21
+ return d(), x(f, {
22
+ trigger: "click",
23
+ onCommand: o
24
+ }, {
25
+ dropdown: v(() => [
26
+ p(c, null, {
27
+ default: v(() => [
28
+ (d(!0), k(j, null, ce(i(t), (m) => (d(), x(r, {
29
+ key: m.value,
30
+ disabled: i(e).size == m.value,
31
+ command: m.value
32
+ }, {
33
+ default: v(() => [
34
+ D(A(m.label), 1)
35
+ ]),
36
+ _: 2
37
+ }, 1032, ["disabled", "command"]))), 128))
38
+ ]),
39
+ _: 1
40
+ })
41
+ ]),
42
+ default: v(() => [
43
+ C("div", null, [
44
+ p(l, { "icon-class": "size" })
45
+ ])
46
+ ]),
47
+ _: 1
48
+ });
49
+ };
50
+ }
51
+ }), _t = { class: "flex justify-between items-center w-full" }, vt = ["src"], ht = /* @__PURE__ */ R({
52
+ __name: "index",
53
+ props: {
54
+ captchaId: {},
55
+ captchaIdModifiers: {},
56
+ captchaCode: {},
57
+ captchaCodeModifiers: {}
58
+ },
59
+ emits: ["update:captchaId", "update:captchaCode"],
60
+ setup(a) {
61
+ const e = B(""), t = he(a, "captchaId"), o = he(a, "captchaCode"), s = () => {
62
+ qe().then(({ data: n }) => {
63
+ t.value = n.captchaId, e.value = n.base64Image;
64
+ });
65
+ };
66
+ return s(), (n, l) => {
67
+ const r = V("el-input");
68
+ return d(), k("div", _t, [
69
+ p(r, {
70
+ style: { width: "65%" },
71
+ modelValue: o.value,
72
+ "onUpdate:modelValue": l[0] || (l[0] = (c) => o.value = c),
73
+ placeholder: n.$t("register.captchaCode")
74
+ }, null, 8, ["modelValue", "placeholder"]),
75
+ C("img", {
76
+ class: "flex-1 h-[40px] cursor-pointer",
77
+ src: e.value,
78
+ onClick: s,
79
+ alt: "验证码"
80
+ }, null, 8, vt)
81
+ ]);
82
+ };
83
+ }
84
+ }), gt = { class: "dialog-footer" }, bt = /* @__PURE__ */ R({
85
+ __name: "ChangePhoneEmail",
86
+ props: {
87
+ modelValue: { type: Boolean },
88
+ modelModifiers: {}
89
+ },
90
+ emits: ["update:modelValue"],
91
+ setup(a) {
92
+ const { t: e } = ut(), t = he(a, "modelValue");
93
+ function o() {
94
+ t.value && (t.value = !1);
95
+ }
96
+ const s = B(), n = B({
97
+ newName: "",
98
+ newValidCode: "",
99
+ oldValidCode: "",
100
+ requestId: Math.random() * 10 + "",
101
+ captchaId: "",
102
+ captchaCode: ""
103
+ }), l = B({
104
+ captchaCode: [
105
+ { required: !0, message: e("register.captchaCode"), trigger: "blur" }
106
+ ]
107
+ });
108
+ Ee(() => {
109
+ console.log(n.value.captchaCode, "=> captchaCode"), console.log(n.value.captchaId, "=> captchaId");
110
+ });
111
+ function r() {
112
+ var c;
113
+ (c = s.value) == null || c.validate((f) => {
114
+ });
115
+ }
116
+ return (c, f) => {
117
+ const m = V("el-form-item"), u = V("el-col"), _ = V("el-row"), b = V("el-form"), y = V("el-button"), E = V("el-dialog");
118
+ return d(), x(E, {
119
+ modelValue: t.value,
120
+ "onUpdate:modelValue": f[2] || (f[2] = (S) => t.value = S),
121
+ onClose: o
122
+ }, {
123
+ footer: v(() => [
124
+ C("div", gt, [
125
+ p(y, { onClick: o }, {
126
+ default: v(() => [
127
+ D(A(c.$t("common.cancel")), 1)
128
+ ]),
129
+ _: 1
130
+ }),
131
+ p(y, {
132
+ type: "primary",
133
+ onClick: r
134
+ }, {
135
+ default: v(() => [
136
+ D(A(c.$t("common.confirm")), 1)
137
+ ]),
138
+ _: 1
139
+ })
140
+ ])
141
+ ]),
142
+ default: v(() => [
143
+ p(b, {
144
+ ref_key: "formRef",
145
+ ref: s,
146
+ model: n.value,
147
+ rules: l.value,
148
+ size: "large"
149
+ }, {
150
+ default: v(() => [
151
+ p(_, null, {
152
+ default: v(() => [
153
+ p(u, { span: 24 }, {
154
+ default: v(() => [
155
+ p(m, { prop: "captchaCode" }, {
156
+ default: v(() => [
157
+ p(ht, {
158
+ "captcha-id": n.value.captchaId,
159
+ "onUpdate:captchaId": f[0] || (f[0] = (S) => n.value.captchaId = S),
160
+ "captcha-code": n.value.captchaCode,
161
+ "onUpdate:captchaCode": f[1] || (f[1] = (S) => n.value.captchaCode = S)
162
+ }, null, 8, ["captcha-id", "captcha-code"])
163
+ ]),
164
+ _: 1
165
+ })
166
+ ]),
167
+ _: 1
168
+ })
169
+ ]),
170
+ _: 1
171
+ })
172
+ ]),
173
+ _: 1
174
+ }, 8, ["model", "rules"])
175
+ ]),
176
+ _: 1
177
+ }, 8, ["modelValue"]);
178
+ };
179
+ }
180
+ }), wt = /* @__PURE__ */ R({
181
+ __name: "ChangeWechatBind",
182
+ props: {
183
+ modelValue: { type: Boolean },
184
+ modelModifiers: {}
185
+ },
186
+ emits: ["update:modelValue"],
187
+ setup(a) {
188
+ const e = he(a, "modelValue");
189
+ function t() {
190
+ e.value && (e.value = !1);
191
+ }
192
+ return (o, s) => {
193
+ const n = V("el-dialog");
194
+ return d(), x(n, {
195
+ modelValue: e.value,
196
+ "onUpdate:modelValue": s[0] || (s[0] = (l) => e.value = l),
197
+ onClose: t
198
+ }, null, 8, ["modelValue"]);
199
+ };
200
+ }
201
+ }), yt = { class: "flex" }, xt = { class: "flex-center h100% p10px" }, kt = ["src"], Ct = { key: 0 }, Vt = /* @__PURE__ */ R({
202
+ __name: "NavbarRight",
203
+ setup(a) {
204
+ const e = new We(), t = Z(), o = xe(), s = He(), n = ne();
205
+ _e();
206
+ const l = Ce(), r = O(() => t.device === ve.MOBILE), c = B(!1), f = B(!1), { isFullscreen: m, toggle: u } = Ke(), _ = O(
207
+ () => Xe.imageUrl(s.user.avatar, 48, 48)
208
+ ), b = (h) => {
209
+ h.target.src = "https://gh.sooyie.cn/v1/file/path/wxapp/images/user/avatar.png";
210
+ };
211
+ function y() {
212
+ f.value = !0;
213
+ }
214
+ function E() {
215
+ ft.confirm("确定注销并退出系统吗?", "提示", {
216
+ confirmButtonText: "确定",
217
+ cancelButtonText: "取消",
218
+ type: "warning",
219
+ lockScroll: !1
220
+ }).then(() => {
221
+ s.logout().then(() => {
222
+ o.delAllViews();
223
+ }).then(() => {
224
+ l.push("/login");
225
+ });
226
+ });
227
+ }
228
+ const S = B(!1), T = B(!1);
229
+ function q(h) {
230
+ c.value = h;
231
+ }
232
+ return (h, P) => {
233
+ const ee = re, oe = pt, J = V("el-tooltip"), ue = je, U = V("router-link"), M = V("el-dropdown-item"), W = V("el-dropdown-menu"), te = V("el-dropdown");
234
+ return d(), k("div", yt, [
235
+ i(r) ? $("", !0) : (d(), k(j, { key: 0 }, [
236
+ C("div", {
237
+ class: "setting-item",
238
+ onClick: P[0] || (P[0] = //@ts-ignore
239
+ (...N) => i(u) && i(u)(...N))
240
+ }, [
241
+ p(ee, {
242
+ "icon-class": i(m) ? "fullscreen-exit" : "fullscreen"
243
+ }, null, 8, ["icon-class"])
244
+ ]),
245
+ p(J, {
246
+ content: h.$t("sizeSelect.tooltip"),
247
+ effect: "dark",
248
+ placement: "bottom"
249
+ }, {
250
+ default: v(() => [
251
+ p(oe, { class: "setting-item" })
252
+ ]),
253
+ _: 1
254
+ }, 8, ["content"]),
255
+ p(ue, { class: "setting-item" })
256
+ ], 64)),
257
+ p(te, {
258
+ class: "setting-item",
259
+ trigger: "click"
260
+ }, {
261
+ dropdown: v(() => [
262
+ p(W, null, {
263
+ default: v(() => [
264
+ p(M, null, {
265
+ default: v(() => [
266
+ p(U, { to: "/" }, {
267
+ default: v(() => [
268
+ D(A(h.$t("navbar.Dashboard")), 1)
269
+ ]),
270
+ _: 1
271
+ })
272
+ ]),
273
+ _: 1
274
+ }),
275
+ p(M, null, {
276
+ default: v(() => [
277
+ p(U, { to: "/my/profile" }, {
278
+ default: v(() => [
279
+ D(A(h.$t("navbar.profile")), 1)
280
+ ]),
281
+ _: 1
282
+ })
283
+ ]),
284
+ _: 1
285
+ }),
286
+ p(M, {
287
+ onClick: P[1] || (P[1] = (N) => c.value = !0)
288
+ }, {
289
+ default: v(() => [
290
+ D(A(h.$t("navbar.changePwd")), 1)
291
+ ]),
292
+ _: 1
293
+ }),
294
+ p(M, {
295
+ onClick: P[2] || (P[2] = (N) => S.value = !0)
296
+ }, {
297
+ default: v(() => [
298
+ D(A(h.$t("navbar.changePhoneEmail")), 1)
299
+ ]),
300
+ _: 1
301
+ }),
302
+ p(M, {
303
+ onClick: P[3] || (P[3] = (N) => T.value = !0)
304
+ }, {
305
+ default: v(() => [
306
+ D(A(h.$t("navbar.changeWechatBind")), 1)
307
+ ]),
308
+ _: 1
309
+ }),
310
+ i(e).hasRole("tester") || i(e).userInfo().runAs ? (d(), k("div", Ct, [
311
+ p(M, { onClick: y }, {
312
+ default: v(() => [
313
+ D(A(h.$t("navbar.runAs")), 1)
314
+ ]),
315
+ _: 1
316
+ })
317
+ ])) : $("", !0),
318
+ p(M, {
319
+ divided: "",
320
+ onClick: E
321
+ }, {
322
+ default: v(() => [
323
+ D(A(h.$t("navbar.logout")), 1)
324
+ ]),
325
+ _: 1
326
+ })
327
+ ]),
328
+ _: 1
329
+ })
330
+ ]),
331
+ default: v(() => [
332
+ C("div", xt, [
333
+ C("img", {
334
+ src: i(_),
335
+ class: "rounded-full mr-10px w24px w24px",
336
+ onError: b
337
+ }, null, 40, kt),
338
+ C("span", null, A(i(s).user.nickName), 1)
339
+ ])
340
+ ]),
341
+ _: 1
342
+ }),
343
+ i(fe).showSettings ? (d(), k("div", {
344
+ key: 1,
345
+ class: "setting-item",
346
+ onClick: P[4] || (P[4] = (N) => i(n).settingsVisible = !0)
347
+ }, [
348
+ p(ee, { "icon-class": "setting" })
349
+ ])) : $("", !0),
350
+ i(c) ? (d(), x(ct, {
351
+ key: 2,
352
+ "pwd-visible": i(c),
353
+ onDialogActionChange: q
354
+ }, null, 8, ["pwd-visible"])) : $("", !0),
355
+ i(f) ? (d(), x(dt, {
356
+ key: 3,
357
+ modelValue: i(f),
358
+ "onUpdate:modelValue": P[5] || (P[5] = (N) => ae(f) ? f.value = N : null)
359
+ }, null, 8, ["modelValue"])) : $("", !0),
360
+ i(S) ? (d(), x(bt, {
361
+ key: 4,
362
+ width: "600",
363
+ modelValue: i(S),
364
+ "onUpdate:modelValue": P[6] || (P[6] = (N) => ae(S) ? S.value = N : null),
365
+ title: h.$t("navbar.changePhoneEmail")
366
+ }, null, 8, ["modelValue", "title"])) : $("", !0),
367
+ i(T) ? (d(), x(wt, {
368
+ key: 5,
369
+ width: "600",
370
+ modelValue: i(T),
371
+ "onUpdate:modelValue": P[7] || (P[7] = (N) => ae(T) ? T.value = N : null),
372
+ title: h.$t("navbar.changeWechatBind")
373
+ }, null, 8, ["modelValue", "title"])) : $("", !0)
374
+ ]);
375
+ };
376
+ }
377
+ }), Ie = /* @__PURE__ */ H(Vt, [["__scopeId", "data-v-c4deca02"]]);
378
+ function St(a) {
379
+ for (var e = [], t = 0; t < a.length; ) {
380
+ var o = a[t];
381
+ if (o === "*" || o === "+" || o === "?") {
382
+ e.push({ type: "MODIFIER", index: t, value: a[t++] });
383
+ continue;
384
+ }
385
+ if (o === "\\") {
386
+ e.push({ type: "ESCAPED_CHAR", index: t++, value: a[t++] });
387
+ continue;
388
+ }
389
+ if (o === "{") {
390
+ e.push({ type: "OPEN", index: t, value: a[t++] });
391
+ continue;
392
+ }
393
+ if (o === "}") {
394
+ e.push({ type: "CLOSE", index: t, value: a[t++] });
395
+ continue;
396
+ }
397
+ if (o === ":") {
398
+ for (var s = "", n = t + 1; n < a.length; ) {
399
+ var l = a.charCodeAt(n);
400
+ if (
401
+ // `0-9`
402
+ l >= 48 && l <= 57 || // `A-Z`
403
+ l >= 65 && l <= 90 || // `a-z`
404
+ l >= 97 && l <= 122 || // `_`
405
+ l === 95
406
+ ) {
407
+ s += a[n++];
408
+ continue;
409
+ }
410
+ break;
411
+ }
412
+ if (!s)
413
+ throw new TypeError("Missing parameter name at ".concat(t));
414
+ e.push({ type: "NAME", index: t, value: s }), t = n;
415
+ continue;
416
+ }
417
+ if (o === "(") {
418
+ var r = 1, c = "", n = t + 1;
419
+ if (a[n] === "?")
420
+ throw new TypeError('Pattern cannot start with "?" at '.concat(n));
421
+ for (; n < a.length; ) {
422
+ if (a[n] === "\\") {
423
+ c += a[n++] + a[n++];
424
+ continue;
425
+ }
426
+ if (a[n] === ")") {
427
+ if (r--, r === 0) {
428
+ n++;
429
+ break;
430
+ }
431
+ } else if (a[n] === "(" && (r++, a[n + 1] !== "?"))
432
+ throw new TypeError("Capturing groups are not allowed at ".concat(n));
433
+ c += a[n++];
434
+ }
435
+ if (r)
436
+ throw new TypeError("Unbalanced pattern at ".concat(t));
437
+ if (!c)
438
+ throw new TypeError("Missing pattern at ".concat(t));
439
+ e.push({ type: "PATTERN", index: t, value: c }), t = n;
440
+ continue;
441
+ }
442
+ e.push({ type: "CHAR", index: t, value: a[t++] });
443
+ }
444
+ return e.push({ type: "END", index: t, value: "" }), e;
445
+ }
446
+ function $t(a, e) {
447
+ e === void 0 && (e = {});
448
+ for (var t = St(a), o = e.prefixes, s = o === void 0 ? "./" : o, n = e.delimiter, l = n === void 0 ? "/#?" : n, r = [], c = 0, f = 0, m = "", u = function(U) {
449
+ if (f < t.length && t[f].type === U)
450
+ return t[f++].value;
451
+ }, _ = function(U) {
452
+ var M = u(U);
453
+ if (M !== void 0)
454
+ return M;
455
+ var W = t[f], te = W.type, N = W.index;
456
+ throw new TypeError("Unexpected ".concat(te, " at ").concat(N, ", expected ").concat(U));
457
+ }, b = function() {
458
+ for (var U = "", M; M = u("CHAR") || u("ESCAPED_CHAR"); )
459
+ U += M;
460
+ return U;
461
+ }, y = function(U) {
462
+ for (var M = 0, W = l; M < W.length; M++) {
463
+ var te = W[M];
464
+ if (U.indexOf(te) > -1)
465
+ return !0;
466
+ }
467
+ return !1;
468
+ }, E = function(U) {
469
+ var M = r[r.length - 1], W = U || (M && typeof M == "string" ? M : "");
470
+ if (M && !W)
471
+ throw new TypeError('Must have text between two parameters, missing text after "'.concat(M.name, '"'));
472
+ return !W || y(W) ? "[^".concat(we(l), "]+?") : "(?:(?!".concat(we(W), ")[^").concat(we(l), "])+?");
473
+ }; f < t.length; ) {
474
+ var S = u("CHAR"), T = u("NAME"), q = u("PATTERN");
475
+ if (T || q) {
476
+ var h = S || "";
477
+ s.indexOf(h) === -1 && (m += h, h = ""), m && (r.push(m), m = ""), r.push({
478
+ name: T || c++,
479
+ prefix: h,
480
+ suffix: "",
481
+ pattern: q || E(h),
482
+ modifier: u("MODIFIER") || ""
483
+ });
484
+ continue;
485
+ }
486
+ var P = S || u("ESCAPED_CHAR");
487
+ if (P) {
488
+ m += P;
489
+ continue;
490
+ }
491
+ m && (r.push(m), m = "");
492
+ var ee = u("OPEN");
493
+ if (ee) {
494
+ var h = b(), oe = u("NAME") || "", J = u("PATTERN") || "", ue = b();
495
+ _("CLOSE"), r.push({
496
+ name: oe || (J ? c++ : ""),
497
+ pattern: oe && !J ? E(h) : J,
498
+ prefix: h,
499
+ suffix: ue,
500
+ modifier: u("MODIFIER") || ""
501
+ });
502
+ continue;
503
+ }
504
+ _("END");
505
+ }
506
+ return r;
507
+ }
508
+ function Tt(a, e) {
509
+ return At($t(a, e), e);
510
+ }
511
+ function At(a, e) {
512
+ e === void 0 && (e = {});
513
+ var t = Mt(e), o = e.encode, s = o === void 0 ? function(c) {
514
+ return c;
515
+ } : o, n = e.validate, l = n === void 0 ? !0 : n, r = a.map(function(c) {
516
+ if (typeof c == "object")
517
+ return new RegExp("^(?:".concat(c.pattern, ")$"), t);
518
+ });
519
+ return function(c) {
520
+ for (var f = "", m = 0; m < a.length; m++) {
521
+ var u = a[m];
522
+ if (typeof u == "string") {
523
+ f += u;
524
+ continue;
525
+ }
526
+ var _ = c ? c[u.name] : void 0, b = u.modifier === "?" || u.modifier === "*", y = u.modifier === "*" || u.modifier === "+";
527
+ if (Array.isArray(_)) {
528
+ if (!y)
529
+ throw new TypeError('Expected "'.concat(u.name, '" to not repeat, but got an array'));
530
+ if (_.length === 0) {
531
+ if (b)
532
+ continue;
533
+ throw new TypeError('Expected "'.concat(u.name, '" to not be empty'));
534
+ }
535
+ for (var E = 0; E < _.length; E++) {
536
+ var S = s(_[E], u);
537
+ if (l && !r[m].test(S))
538
+ throw new TypeError('Expected all "'.concat(u.name, '" to match "').concat(u.pattern, '", but got "').concat(S, '"'));
539
+ f += u.prefix + S + u.suffix;
540
+ }
541
+ continue;
542
+ }
543
+ if (typeof _ == "string" || typeof _ == "number") {
544
+ var S = s(String(_), u);
545
+ if (l && !r[m].test(S))
546
+ throw new TypeError('Expected "'.concat(u.name, '" to match "').concat(u.pattern, '", but got "').concat(S, '"'));
547
+ f += u.prefix + S + u.suffix;
548
+ continue;
549
+ }
550
+ if (!b) {
551
+ var T = y ? "an array" : "a string";
552
+ throw new TypeError('Expected "'.concat(u.name, '" to be ').concat(T));
553
+ }
554
+ }
555
+ return f;
556
+ };
557
+ }
558
+ function we(a) {
559
+ return a.replace(/([.+*?=^!:${}()[\]|/\\])/g, "\\$1");
560
+ }
561
+ function Mt(a) {
562
+ return a && a.sensitive ? "" : "i";
563
+ }
564
+ function ye(a) {
565
+ var e, t;
566
+ return ge((e = a.name) == null ? void 0 : e.toString(), (t = a.meta) == null ? void 0 : t.title);
567
+ }
568
+ function Et(a) {
569
+ return ge(a.name, a.title);
570
+ }
571
+ function ge(a, e) {
572
+ let t = a && a != "" ? a : e;
573
+ return $e.global.te("route." + t) ? $e.global.t("route." + t) : e || a;
574
+ }
575
+ const Pt = {
576
+ key: 0,
577
+ class: "color-gray-400"
578
+ }, Lt = ["onClick"], It = /* @__PURE__ */ R({
579
+ __name: "index",
580
+ setup(a) {
581
+ const e = _e(), t = (r) => {
582
+ const { params: c } = e;
583
+ return Tt(r)(c);
584
+ }, o = B([]);
585
+ function s() {
586
+ let r = e.matched.filter(
587
+ (f) => f.meta && f.meta.title
588
+ );
589
+ const c = r[0];
590
+ n(c) || (r = [
591
+ { path: "/dashboard", meta: { title: "Dashboard" } }
592
+ ].concat(r)), o.value = r.filter((f) => f.meta && f.meta.title && f.meta.breadcrumb !== !1);
593
+ }
594
+ function n(r) {
595
+ const c = r && r.name;
596
+ return c ? c.toString().trim().toLocaleLowerCase() === "Dashboard".toLocaleLowerCase() : !1;
597
+ }
598
+ function l(r) {
599
+ const { redirect: c, path: f } = r;
600
+ if (c) {
601
+ Te.value.push(c).catch((m) => {
602
+ console.warn(m);
603
+ });
604
+ return;
605
+ }
606
+ Te.value.push(t(f)).catch((m) => {
607
+ console.warn(m);
608
+ });
609
+ }
610
+ return le(
611
+ () => e.path,
612
+ (r) => {
613
+ r.startsWith("/redirect/") || s();
614
+ }
615
+ ), Ze(() => {
616
+ s();
617
+ }), (r, c) => {
618
+ const f = V("el-breadcrumb-item"), m = V("el-breadcrumb");
619
+ return d(), x(m, { class: "flex-y-center" }, {
620
+ default: v(() => [
621
+ p(et, { "enter-active-class": "animate__animated animate__fadeInRight" }, {
622
+ default: v(() => [
623
+ (d(!0), k(j, null, ce(i(o), (u, _) => (d(), x(f, {
624
+ key: u.path
625
+ }, {
626
+ default: v(() => [
627
+ u.redirect === "noredirect" || _ === i(o).length - 1 ? (d(), k("span", Pt, A(i(ye)(u)), 1)) : (d(), k("a", {
628
+ key: 1,
629
+ onClick: de((b) => l(u), ["prevent"])
630
+ }, A(i(ye)(u)), 9, Lt))
631
+ ]),
632
+ _: 2
633
+ }, 1024))), 128))
634
+ ]),
635
+ _: 1
636
+ })
637
+ ]),
638
+ _: 1
639
+ });
640
+ };
641
+ }
642
+ }), Rt = /* @__PURE__ */ H(It, [["__scopeId", "data-v-6109c28e"]]), Dt = /* @__PURE__ */ R({
643
+ __name: "index",
644
+ props: {
645
+ isActive: {
646
+ required: !0,
647
+ type: Boolean,
648
+ default: !1
649
+ }
650
+ },
651
+ emits: ["toggleClick"],
652
+ setup(a, { emit: e }) {
653
+ const t = e;
654
+ function o() {
655
+ t("toggleClick");
656
+ }
657
+ return (s, n) => {
658
+ const l = re;
659
+ return d(), k("div", {
660
+ class: "px-[15px] flex items-center justify-center color-[var(--el-text-color-regular)]",
661
+ onClick: o
662
+ }, [
663
+ p(l, {
664
+ class: K(["hamburger", { "is-active": a.isActive }]),
665
+ "icon-class": "indent-decrease"
666
+ }, null, 8, ["class"])
667
+ ]);
668
+ };
669
+ }
670
+ }), Re = /* @__PURE__ */ H(Dt, [["__scopeId", "data-v-42e37629"]]), Bt = { class: "flex" }, Nt = /* @__PURE__ */ R({
671
+ __name: "NavbarLeft",
672
+ setup(a) {
673
+ const e = Z();
674
+ function t() {
675
+ e.toggleSidebar();
676
+ }
677
+ return (o, s) => {
678
+ const n = Re, l = Rt;
679
+ return d(), k("div", Bt, [
680
+ p(n, {
681
+ "is-active": i(e).sidebar.opened,
682
+ onToggleClick: t
683
+ }, null, 8, ["is-active"]),
684
+ p(l)
685
+ ]);
686
+ };
687
+ }
688
+ }), Ot = {}, Ut = { class: "navbar-container" };
689
+ function zt(a, e) {
690
+ const t = Nt, o = Ie;
691
+ return d(), k("div", Ut, [
692
+ p(t),
693
+ p(o)
694
+ ]);
695
+ }
696
+ const Ft = /* @__PURE__ */ H(Ot, [["render", zt], ["__scopeId", "data-v-b1624593"]]);
697
+ var Q = /* @__PURE__ */ ((a) => (a.LEFT = "left", a.TOP = "top", a.MIX = "mix", a))(Q || {});
698
+ const qt = { class: "flex flex-wrap justify-around w-full h-12" }, Wt = /* @__PURE__ */ R({
699
+ __name: "LayoutSelect",
700
+ props: {
701
+ modelValue: String
702
+ },
703
+ emits: ["update:modelValue"],
704
+ setup(a, { emit: e }) {
705
+ const t = e;
706
+ function o(s) {
707
+ t("update:modelValue", s);
708
+ }
709
+ return (s, n) => {
710
+ const l = V("el-tooltip");
711
+ return d(), k("div", qt, [
712
+ p(l, {
713
+ content: "左侧模式",
714
+ placement: "bottom"
715
+ }, {
716
+ default: v(() => [
717
+ C("div", {
718
+ class: K(["layout-item left", { "is-active": a.modelValue === i(Q).LEFT }]),
719
+ onClick: n[0] || (n[0] = (r) => o(i(Q).LEFT))
720
+ }, n[3] || (n[3] = [
721
+ C("div", null, null, -1),
722
+ C("div", null, null, -1)
723
+ ]), 2)
724
+ ]),
725
+ _: 1
726
+ }),
727
+ p(l, {
728
+ content: "顶部模式",
729
+ placement: "bottom"
730
+ }, {
731
+ default: v(() => [
732
+ C("div", {
733
+ class: K(["layout-item top", { "is-active": a.modelValue === i(Q).TOP }]),
734
+ onClick: n[1] || (n[1] = (r) => o(i(Q).TOP))
735
+ }, n[4] || (n[4] = [
736
+ C("div", null, null, -1),
737
+ C("div", null, null, -1)
738
+ ]), 2)
739
+ ]),
740
+ _: 1
741
+ }),
742
+ p(l, {
743
+ content: "混合模式",
744
+ placement: "bottom"
745
+ }, {
746
+ default: v(() => [
747
+ C("div", {
748
+ class: K(["layout-item mix", { "is-active": a.modelValue === i(Q).MIX }]),
749
+ onClick: n[2] || (n[2] = (r) => o(i(Q).MIX))
750
+ }, n[5] || (n[5] = [
751
+ C("div", null, null, -1),
752
+ C("div", null, null, -1)
753
+ ]), 2)
754
+ ]),
755
+ _: 1
756
+ })
757
+ ]);
758
+ };
759
+ }
760
+ }), Ht = /* @__PURE__ */ H(Wt, [["__scopeId", "data-v-2bdf1403"]]), Kt = /* @__PURE__ */ R({
761
+ __name: "ThemeColorPicker",
762
+ props: {
763
+ modelValue: String
764
+ },
765
+ emits: ["update:modelValue"],
766
+ setup(a, { emit: e }) {
767
+ const t = a, o = e, s = [
768
+ "#409EFF",
769
+ "#ff4500",
770
+ "#ff8c00",
771
+ "#90ee90",
772
+ "#00ced1",
773
+ "#1e90ff",
774
+ "#c71585",
775
+ "rgba(255, 69, 0, 0.68)",
776
+ "rgb(255, 120, 0)",
777
+ "hsva(120, 40, 94)"
778
+ ], n = B(t.modelValue);
779
+ return le(n, (l) => {
780
+ o("update:modelValue", l);
781
+ }), (l, r) => {
782
+ const c = V("el-color-picker");
783
+ return d(), x(c, {
784
+ modelValue: i(n),
785
+ "onUpdate:modelValue": r[0] || (r[0] = (f) => ae(n) ? n.value = f : null),
786
+ predefine: s,
787
+ "popper-class": "theme-picker-dropdown"
788
+ }, null, 8, ["modelValue"]);
789
+ };
790
+ }
791
+ }), Xt = /* @__PURE__ */ H(Kt, [["__scopeId", "data-v-92c1fd79"]]), jt = { class: "flex-center" }, Gt = { class: "settings-option" }, Yt = { class: "text-xs" }, Jt = { class: "settings-option" }, Qt = { class: "text-xs" }, Zt = { class: "settings-option" }, en = { class: "text-xs" }, tn = { class: "settings-option" }, nn = { class: "text-xs" }, on = { class: "settings-option" }, an = { class: "text-xs" }, ln = /* @__PURE__ */ R({
792
+ __name: "index",
793
+ setup(a) {
794
+ const e = _e(), t = Z(), o = ne(), s = pe(), n = O({
795
+ get() {
796
+ return o.settingsVisible;
797
+ },
798
+ set() {
799
+ o.settingsVisible = !1;
800
+ }
801
+ });
802
+ function l(_) {
803
+ o.changeThemeColor(_);
804
+ }
805
+ const r = B(o.theme === be.DARK), c = (_) => {
806
+ r.value = _, o.changeTheme(r.value ? be.DARK : be.LIGHT);
807
+ };
808
+ function f(_) {
809
+ o.changeLayout(_), _ === Q.MIX ? e.name && m(e.name) : _ === Q.TOP && t.openSideBar();
810
+ }
811
+ function m(_) {
812
+ const b = u(s.routes, _);
813
+ t.activeTopMenu !== b.path && t.activeTopMenu(b.path);
814
+ }
815
+ function u(_, b) {
816
+ let y = {};
817
+ function E(T, q) {
818
+ if (y[T.name] = q, T.children)
819
+ for (let h = 0; h < T.children.length; h++)
820
+ E(T.children[h], T);
821
+ }
822
+ for (let T = 0; T < _.length; T++)
823
+ E(_[T], null);
824
+ let S = y[b];
825
+ for (; S; ) {
826
+ if (!y[S.name])
827
+ return S;
828
+ S = y[S.name];
829
+ }
830
+ return null;
831
+ }
832
+ return (_, b) => {
833
+ const y = V("el-divider"), E = V("el-switch"), S = Xt, T = Ht, q = V("el-drawer");
834
+ return d(), x(q, {
835
+ modelValue: i(n),
836
+ "onUpdate:modelValue": b[7] || (b[7] = (h) => ae(n) ? n.value = h : null),
837
+ size: "300",
838
+ title: _.$t("settings.project")
839
+ }, {
840
+ default: v(() => [
841
+ p(y, null, {
842
+ default: v(() => [
843
+ D(A(_.$t("settings.theme")), 1)
844
+ ]),
845
+ _: 1
846
+ }),
847
+ C("div", jt, [
848
+ p(E, {
849
+ modelValue: i(r),
850
+ "onUpdate:modelValue": b[0] || (b[0] = (h) => ae(r) ? r.value = h : null),
851
+ "active-icon": i(Ye),
852
+ "inactive-icon": i(Ge),
853
+ onChange: c
854
+ }, null, 8, ["modelValue", "active-icon", "inactive-icon"])
855
+ ]),
856
+ p(y, null, {
857
+ default: v(() => [
858
+ D(A(_.$t("settings.interface")), 1)
859
+ ]),
860
+ _: 1
861
+ }),
862
+ C("div", Gt, [
863
+ C("span", Yt, A(_.$t("settings.themeColor")), 1),
864
+ p(S, {
865
+ modelValue: i(o).themeColor,
866
+ "onUpdate:modelValue": [
867
+ b[1] || (b[1] = (h) => i(o).themeColor = h),
868
+ l
869
+ ]
870
+ }, null, 8, ["modelValue"])
871
+ ]),
872
+ C("div", Jt, [
873
+ C("span", Qt, A(_.$t("settings.tagsView")), 1),
874
+ p(E, {
875
+ modelValue: i(o).tagsView,
876
+ "onUpdate:modelValue": b[2] || (b[2] = (h) => i(o).tagsView = h)
877
+ }, null, 8, ["modelValue"])
878
+ ]),
879
+ C("div", Zt, [
880
+ C("span", en, A(_.$t("settings.fixedHeader")), 1),
881
+ p(E, {
882
+ modelValue: i(o).fixedHeader,
883
+ "onUpdate:modelValue": b[3] || (b[3] = (h) => i(o).fixedHeader = h)
884
+ }, null, 8, ["modelValue"])
885
+ ]),
886
+ C("div", tn, [
887
+ C("span", nn, A(_.$t("settings.sidebarLogo")), 1),
888
+ p(E, {
889
+ modelValue: i(o).sidebarLogo,
890
+ "onUpdate:modelValue": b[4] || (b[4] = (h) => i(o).sidebarLogo = h)
891
+ }, null, 8, ["modelValue"])
892
+ ]),
893
+ C("div", on, [
894
+ C("span", an, A(_.$t("settings.watermark")), 1),
895
+ p(E, {
896
+ modelValue: i(o).watermarkEnabled,
897
+ "onUpdate:modelValue": b[5] || (b[5] = (h) => i(o).watermarkEnabled = h)
898
+ }, null, 8, ["modelValue"])
899
+ ]),
900
+ p(y, null, {
901
+ default: v(() => [
902
+ D(A(_.$t("settings.navigation")), 1)
903
+ ]),
904
+ _: 1
905
+ }),
906
+ p(T, {
907
+ modelValue: i(o).layout,
908
+ "onUpdate:modelValue": [
909
+ b[6] || (b[6] = (h) => i(o).layout = h),
910
+ f
911
+ ]
912
+ }, null, 8, ["modelValue"])
913
+ ]),
914
+ _: 1
915
+ }, 8, ["modelValue", "title"]);
916
+ };
917
+ }
918
+ }), sn = /* @__PURE__ */ H(ln, [["__scopeId", "data-v-70f5bf10"]]), rn = { class: "app-main" }, cn = /* @__PURE__ */ R({
919
+ __name: "index",
920
+ setup(a) {
921
+ const e = O(() => xe().cachedViews);
922
+ return (t, o) => {
923
+ const s = V("router-view");
924
+ return d(), k("section", rn, [
925
+ p(s, null, {
926
+ default: v(({ Component: n, route: l }) => [
927
+ p(Pe, {
928
+ "enter-active-class": "animate__animated animate__fadeIn",
929
+ mode: "out-in"
930
+ }, {
931
+ default: v(() => [
932
+ (d(), x(tt, {
933
+ include: i(e),
934
+ max: 9
935
+ }, [
936
+ (d(), x(ke(n), {
937
+ key: l.path
938
+ }))
939
+ ], 1032, ["include"]))
940
+ ]),
941
+ _: 2
942
+ }, 1024)
943
+ ]),
944
+ _: 1
945
+ })
946
+ ]);
947
+ };
948
+ }
949
+ }), un = /* @__PURE__ */ H(cn, [["__scopeId", "data-v-f32946ce"]]), dn = {
950
+ viewBox: "0 0 1024 1024",
951
+ width: "1.2em",
952
+ height: "1.2em"
953
+ };
954
+ function fn(a, e) {
955
+ return d(), k("svg", dn, e[0] || (e[0] = [
956
+ C("path", {
957
+ fill: "currentColor",
958
+ d: "M764.288 214.592L512 466.88L259.712 214.592a31.936 31.936 0 0 0-45.12 45.12L466.752 512L214.528 764.224a31.936 31.936 0 1 0 45.12 45.184L512 557.184l252.288 252.288a31.936 31.936 0 0 0 45.12-45.12L557.12 512.064l252.288-252.352a31.936 31.936 0 1 0-45.12-45.184z"
959
+ }, null, -1)
960
+ ]));
961
+ }
962
+ const mn = { name: "ep-close", render: fn };
963
+ function Y(a) {
964
+ if (typeof a != "string")
965
+ throw new TypeError("Path must be a string. Received " + JSON.stringify(a));
966
+ }
967
+ function Me(a, e) {
968
+ for (var t = "", o = 0, s = -1, n = 0, l, r = 0; r <= a.length; ++r) {
969
+ if (r < a.length)
970
+ l = a.charCodeAt(r);
971
+ else {
972
+ if (l === 47)
973
+ break;
974
+ l = 47;
975
+ }
976
+ if (l === 47) {
977
+ if (!(s === r - 1 || n === 1)) if (s !== r - 1 && n === 2) {
978
+ if (t.length < 2 || o !== 2 || t.charCodeAt(t.length - 1) !== 46 || t.charCodeAt(t.length - 2) !== 46) {
979
+ if (t.length > 2) {
980
+ var c = t.lastIndexOf("/");
981
+ if (c !== t.length - 1) {
982
+ c === -1 ? (t = "", o = 0) : (t = t.slice(0, c), o = t.length - 1 - t.lastIndexOf("/")), s = r, n = 0;
983
+ continue;
984
+ }
985
+ } else if (t.length === 2 || t.length === 1) {
986
+ t = "", o = 0, s = r, n = 0;
987
+ continue;
988
+ }
989
+ }
990
+ e && (t.length > 0 ? t += "/.." : t = "..", o = 2);
991
+ } else
992
+ t.length > 0 ? t += "/" + a.slice(s + 1, r) : t = a.slice(s + 1, r), o = r - s - 1;
993
+ s = r, n = 0;
994
+ } else l === 46 && n !== -1 ? ++n : n = -1;
995
+ }
996
+ return t;
997
+ }
998
+ function pn(a, e) {
999
+ var t = e.dir || e.root, o = e.base || (e.name || "") + (e.ext || "");
1000
+ return t ? t === e.root ? t + o : t + a + o : o;
1001
+ }
1002
+ var ie = {
1003
+ // path.resolve([from ...], to)
1004
+ resolve: function() {
1005
+ for (var e = "", t = !1, o, s = arguments.length - 1; s >= -1 && !t; s--) {
1006
+ var n;
1007
+ s >= 0 ? n = arguments[s] : (o === void 0 && (o = process.cwd()), n = o), Y(n), n.length !== 0 && (e = n + "/" + e, t = n.charCodeAt(0) === 47);
1008
+ }
1009
+ return e = Me(e, !t), t ? e.length > 0 ? "/" + e : "/" : e.length > 0 ? e : ".";
1010
+ },
1011
+ normalize: function(e) {
1012
+ if (Y(e), e.length === 0) return ".";
1013
+ var t = e.charCodeAt(0) === 47, o = e.charCodeAt(e.length - 1) === 47;
1014
+ return e = Me(e, !t), e.length === 0 && !t && (e = "."), e.length > 0 && o && (e += "/"), t ? "/" + e : e;
1015
+ },
1016
+ isAbsolute: function(e) {
1017
+ return Y(e), e.length > 0 && e.charCodeAt(0) === 47;
1018
+ },
1019
+ join: function() {
1020
+ if (arguments.length === 0)
1021
+ return ".";
1022
+ for (var e, t = 0; t < arguments.length; ++t) {
1023
+ var o = arguments[t];
1024
+ Y(o), o.length > 0 && (e === void 0 ? e = o : e += "/" + o);
1025
+ }
1026
+ return e === void 0 ? "." : ie.normalize(e);
1027
+ },
1028
+ relative: function(e, t) {
1029
+ if (Y(e), Y(t), e === t || (e = ie.resolve(e), t = ie.resolve(t), e === t)) return "";
1030
+ for (var o = 1; o < e.length && e.charCodeAt(o) === 47; ++o)
1031
+ ;
1032
+ for (var s = e.length, n = s - o, l = 1; l < t.length && t.charCodeAt(l) === 47; ++l)
1033
+ ;
1034
+ for (var r = t.length, c = r - l, f = n < c ? n : c, m = -1, u = 0; u <= f; ++u) {
1035
+ if (u === f) {
1036
+ if (c > f) {
1037
+ if (t.charCodeAt(l + u) === 47)
1038
+ return t.slice(l + u + 1);
1039
+ if (u === 0)
1040
+ return t.slice(l + u);
1041
+ } else n > f && (e.charCodeAt(o + u) === 47 ? m = u : u === 0 && (m = 0));
1042
+ break;
1043
+ }
1044
+ var _ = e.charCodeAt(o + u), b = t.charCodeAt(l + u);
1045
+ if (_ !== b)
1046
+ break;
1047
+ _ === 47 && (m = u);
1048
+ }
1049
+ var y = "";
1050
+ for (u = o + m + 1; u <= s; ++u)
1051
+ (u === s || e.charCodeAt(u) === 47) && (y.length === 0 ? y += ".." : y += "/..");
1052
+ return y.length > 0 ? y + t.slice(l + m) : (l += m, t.charCodeAt(l) === 47 && ++l, t.slice(l));
1053
+ },
1054
+ _makeLong: function(e) {
1055
+ return e;
1056
+ },
1057
+ dirname: function(e) {
1058
+ if (Y(e), e.length === 0) return ".";
1059
+ for (var t = e.charCodeAt(0), o = t === 47, s = -1, n = !0, l = e.length - 1; l >= 1; --l)
1060
+ if (t = e.charCodeAt(l), t === 47) {
1061
+ if (!n) {
1062
+ s = l;
1063
+ break;
1064
+ }
1065
+ } else
1066
+ n = !1;
1067
+ return s === -1 ? o ? "/" : "." : o && s === 1 ? "//" : e.slice(0, s);
1068
+ },
1069
+ basename: function(e, t) {
1070
+ if (t !== void 0 && typeof t != "string") throw new TypeError('"ext" argument must be a string');
1071
+ Y(e);
1072
+ var o = 0, s = -1, n = !0, l;
1073
+ if (t !== void 0 && t.length > 0 && t.length <= e.length) {
1074
+ if (t.length === e.length && t === e) return "";
1075
+ var r = t.length - 1, c = -1;
1076
+ for (l = e.length - 1; l >= 0; --l) {
1077
+ var f = e.charCodeAt(l);
1078
+ if (f === 47) {
1079
+ if (!n) {
1080
+ o = l + 1;
1081
+ break;
1082
+ }
1083
+ } else
1084
+ c === -1 && (n = !1, c = l + 1), r >= 0 && (f === t.charCodeAt(r) ? --r === -1 && (s = l) : (r = -1, s = c));
1085
+ }
1086
+ return o === s ? s = c : s === -1 && (s = e.length), e.slice(o, s);
1087
+ } else {
1088
+ for (l = e.length - 1; l >= 0; --l)
1089
+ if (e.charCodeAt(l) === 47) {
1090
+ if (!n) {
1091
+ o = l + 1;
1092
+ break;
1093
+ }
1094
+ } else s === -1 && (n = !1, s = l + 1);
1095
+ return s === -1 ? "" : e.slice(o, s);
1096
+ }
1097
+ },
1098
+ extname: function(e) {
1099
+ Y(e);
1100
+ for (var t = -1, o = 0, s = -1, n = !0, l = 0, r = e.length - 1; r >= 0; --r) {
1101
+ var c = e.charCodeAt(r);
1102
+ if (c === 47) {
1103
+ if (!n) {
1104
+ o = r + 1;
1105
+ break;
1106
+ }
1107
+ continue;
1108
+ }
1109
+ s === -1 && (n = !1, s = r + 1), c === 46 ? t === -1 ? t = r : l !== 1 && (l = 1) : t !== -1 && (l = -1);
1110
+ }
1111
+ return t === -1 || s === -1 || // We saw a non-dot character immediately before the dot
1112
+ l === 0 || // The (right-most) trimmed path component is exactly '..'
1113
+ l === 1 && t === s - 1 && t === o + 1 ? "" : e.slice(t, s);
1114
+ },
1115
+ format: function(e) {
1116
+ if (e === null || typeof e != "object")
1117
+ throw new TypeError('The "pathObject" argument must be of type Object. Received type ' + typeof e);
1118
+ return pn("/", e);
1119
+ },
1120
+ parse: function(e) {
1121
+ Y(e);
1122
+ var t = { root: "", dir: "", base: "", ext: "", name: "" };
1123
+ if (e.length === 0) return t;
1124
+ var o = e.charCodeAt(0), s = o === 47, n;
1125
+ s ? (t.root = "/", n = 1) : n = 0;
1126
+ for (var l = -1, r = 0, c = -1, f = !0, m = e.length - 1, u = 0; m >= n; --m) {
1127
+ if (o = e.charCodeAt(m), o === 47) {
1128
+ if (!f) {
1129
+ r = m + 1;
1130
+ break;
1131
+ }
1132
+ continue;
1133
+ }
1134
+ c === -1 && (f = !1, c = m + 1), o === 46 ? l === -1 ? l = m : u !== 1 && (u = 1) : l !== -1 && (u = -1);
1135
+ }
1136
+ return l === -1 || c === -1 || // We saw a non-dot character immediately before the dot
1137
+ u === 0 || // The (right-most) trimmed path component is exactly '..'
1138
+ u === 1 && l === c - 1 && l === r + 1 ? c !== -1 && (r === 0 && s ? t.base = t.name = e.slice(1, c) : t.base = t.name = e.slice(r, c)) : (r === 0 && s ? (t.name = e.slice(1, l), t.base = e.slice(1, c)) : (t.name = e.slice(r, l), t.base = e.slice(r, c)), t.ext = e.slice(l, c)), r > 0 ? t.dir = e.slice(0, r - 1) : s && (t.dir = "/"), t;
1139
+ },
1140
+ sep: "/",
1141
+ delimiter: ":",
1142
+ win32: null,
1143
+ posix: null
1144
+ };
1145
+ ie.posix = ie;
1146
+ var De = ie;
1147
+ const Be = /* @__PURE__ */ Je(De), _n = { class: "tags-container" }, vn = /* @__PURE__ */ R({
1148
+ __name: "index",
1149
+ setup(a) {
1150
+ const { proxy: e } = nt(), t = Ce(), o = _e(), s = pe(), n = xe(), l = Z(), { visitedViews: r } = mt(n), c = ne(), f = O(() => c.layout), m = B({
1151
+ path: "",
1152
+ query: "",
1153
+ fullPath: "",
1154
+ name: "",
1155
+ title: "",
1156
+ affix: !1,
1157
+ keepAlive: !1
1158
+ }), u = B([]), _ = B(0), b = B(0);
1159
+ le(
1160
+ o,
1161
+ () => {
1162
+ T(), q();
1163
+ },
1164
+ {
1165
+ immediate: !0
1166
+ //初始化立即执行
1167
+ }
1168
+ );
1169
+ const y = B(!1);
1170
+ le(y, (w) => {
1171
+ w ? document.body.addEventListener("click", N) : document.body.removeEventListener("click", N);
1172
+ });
1173
+ function E(w, g = "/") {
1174
+ let F = [];
1175
+ return w.forEach((z) => {
1176
+ var L, I, G, Ve;
1177
+ const X = De.resolve(g, z.path);
1178
+ if ((L = z.meta) != null && L.affix && F.push({
1179
+ path: X,
1180
+ fullPath: X,
1181
+ name: String(z.name),
1182
+ title: ((I = z.meta) == null ? void 0 : I.title) || "no-name",
1183
+ affix: (G = z.meta) == null ? void 0 : G.affix,
1184
+ keepAlive: (Ve = z.meta) == null ? void 0 : Ve.keepAlive
1185
+ }), z.children) {
1186
+ const Se = E(z.children, g + z.path);
1187
+ Se.length >= 1 && (F = [...F, ...Se]);
1188
+ }
1189
+ }), F;
1190
+ }
1191
+ function S() {
1192
+ const w = E(s.routes);
1193
+ u.value = w;
1194
+ for (const g of w)
1195
+ g.name && n.addVisitedView(g);
1196
+ }
1197
+ function T() {
1198
+ var w, g;
1199
+ o.meta.title && n.addView({
1200
+ name: o.name,
1201
+ title: o.meta.title,
1202
+ path: o.path,
1203
+ fullPath: o.fullPath,
1204
+ affix: (w = o.meta) == null ? void 0 : w.affix,
1205
+ keepAlive: (g = o.meta) == null ? void 0 : g.keepAlive,
1206
+ query: o.query
1207
+ });
1208
+ }
1209
+ function q() {
1210
+ Ae(() => {
1211
+ var w, g;
1212
+ for (const F of r.value)
1213
+ F.path === o.path && F.fullPath !== o.fullPath && n.updateVisitedView({
1214
+ name: o.name,
1215
+ title: o.meta.title || "",
1216
+ path: o.path,
1217
+ fullPath: o.fullPath,
1218
+ affix: (w = o.meta) == null ? void 0 : w.affix,
1219
+ keepAlive: (g = o.meta) == null ? void 0 : g.keepAlive,
1220
+ query: o.query
1221
+ });
1222
+ });
1223
+ }
1224
+ function h(w) {
1225
+ return w == null ? void 0 : w.affix;
1226
+ }
1227
+ function P() {
1228
+ return n.visitedViews.length <= 1 ? !1 : m.value.path === "/dashboard" || m.value.fullPath === n.visitedViews[1].fullPath;
1229
+ }
1230
+ function ee() {
1231
+ return n.visitedViews.length <= 1 ? !1 : m.value.fullPath === n.visitedViews[n.visitedViews.length - 1].fullPath;
1232
+ }
1233
+ function oe(w) {
1234
+ n.delCachedView(w);
1235
+ const { fullPath: g } = w;
1236
+ Ae(() => {
1237
+ t.replace({ path: "/redirect" + g });
1238
+ });
1239
+ }
1240
+ function J(w) {
1241
+ n.delView(w).then((g) => {
1242
+ n.isActive(w) && n.toLastView(g.visitedViews, w);
1243
+ });
1244
+ }
1245
+ function ue() {
1246
+ n.delLeftViews(m.value).then((w) => {
1247
+ w.visitedViews.find((g) => g.path === o.path) || n.toLastView(w.visitedViews);
1248
+ });
1249
+ }
1250
+ function U() {
1251
+ n.delRightViews(m.value).then((w) => {
1252
+ w.visitedViews.find((g) => g.path === o.path) || n.toLastView(w.visitedViews);
1253
+ });
1254
+ }
1255
+ function M() {
1256
+ t.push(m.value), n.delOtherViews(m.value).then(() => {
1257
+ q();
1258
+ });
1259
+ }
1260
+ function W(w) {
1261
+ n.delAllViews().then((g) => {
1262
+ n.toLastView(g.visitedViews, w);
1263
+ });
1264
+ }
1265
+ function te(w, g) {
1266
+ const z = e == null ? void 0 : e.$el.getBoundingClientRect().left, L = (e == null ? void 0 : e.$el.offsetWidth) - 105, I = g.clientX - z + 15;
1267
+ I > L ? _.value = L : _.value = I, f.value === "mix" ? b.value = g.clientY - 50 : b.value = g.clientY, y.value = !0, m.value = w;
1268
+ }
1269
+ function N() {
1270
+ y.value = !1;
1271
+ }
1272
+ function Oe() {
1273
+ N();
1274
+ }
1275
+ function Ue(w, g) {
1276
+ let F = {};
1277
+ function z(L, I) {
1278
+ if (F[L.name] = I, L.children)
1279
+ for (let G = 0; G < L.children.length; G++)
1280
+ z(L.children[G], L);
1281
+ }
1282
+ for (let L = 0; L < w.length; L++)
1283
+ z(w[L], null);
1284
+ let X = F[g];
1285
+ for (; X; ) {
1286
+ if (!F[X.name])
1287
+ return X;
1288
+ X = F[X.name];
1289
+ }
1290
+ return null;
1291
+ }
1292
+ const ze = (w) => {
1293
+ if (f.value !== "mix") return;
1294
+ const g = Ue(s.routes, w);
1295
+ l.activeTopMenu !== g.path && l.activeTopMenu(g.path);
1296
+ };
1297
+ return le(
1298
+ () => o.name,
1299
+ (w) => {
1300
+ w && ze(w);
1301
+ },
1302
+ {
1303
+ deep: !0
1304
+ }
1305
+ ), Le(() => {
1306
+ S();
1307
+ }), (w, g) => {
1308
+ const F = mn, z = V("router-link"), X = V("el-scrollbar"), L = re;
1309
+ return d(), k("div", _n, [
1310
+ p(X, {
1311
+ class: "scroll-container",
1312
+ vertical: !1,
1313
+ onWheel: de(Oe, ["prevent"])
1314
+ }, {
1315
+ default: v(() => [
1316
+ (d(!0), k(j, null, ce(i(r), (I) => (d(), x(z, {
1317
+ ref_for: !0,
1318
+ ref: "tagRef",
1319
+ key: I.fullPath,
1320
+ class: K("tags-item " + (i(n).isActive(I) ? "active" : "")),
1321
+ to: { path: I.path, query: I.query },
1322
+ onMouseup: de((G) => h(I) ? "" : J(I), ["middle"]),
1323
+ onContextmenu: de((G) => te(I, G), ["prevent"])
1324
+ }, {
1325
+ default: v(() => [
1326
+ D(A(i(Et)(I)) + " ", 1),
1327
+ h(I) ? $("", !0) : (d(), x(F, {
1328
+ key: 0,
1329
+ class: "close-icon",
1330
+ size: "12px",
1331
+ onClick: de((G) => J(I), ["prevent", "stop"])
1332
+ }, null, 8, ["onClick"]))
1333
+ ]),
1334
+ _: 2
1335
+ }, 1032, ["class", "to", "onMouseup", "onContextmenu"]))), 128))
1336
+ ]),
1337
+ _: 1
1338
+ }),
1339
+ ot(C("ul", {
1340
+ class: "contextmenu",
1341
+ style: at({ left: i(_) + "px", top: i(b) + "px" })
1342
+ }, [
1343
+ C("li", {
1344
+ onClick: g[0] || (g[0] = (I) => oe(i(m)))
1345
+ }, [
1346
+ p(L, { "icon-class": "refresh" }),
1347
+ g[3] || (g[3] = D(" 刷新 "))
1348
+ ]),
1349
+ h(i(m)) ? $("", !0) : (d(), k("li", {
1350
+ key: 0,
1351
+ onClick: g[1] || (g[1] = (I) => J(i(m)))
1352
+ }, [
1353
+ p(L, { "icon-class": "close" }),
1354
+ g[4] || (g[4] = D(" 关闭 "))
1355
+ ])),
1356
+ C("li", { onClick: M }, [
1357
+ p(L, { "icon-class": "close_other" }),
1358
+ g[5] || (g[5] = D(" 关闭其它 "))
1359
+ ]),
1360
+ P() ? $("", !0) : (d(), k("li", {
1361
+ key: 1,
1362
+ onClick: ue
1363
+ }, [
1364
+ p(L, { "icon-class": "close_left" }),
1365
+ g[6] || (g[6] = D(" 关闭左侧 "))
1366
+ ])),
1367
+ ee() ? $("", !0) : (d(), k("li", {
1368
+ key: 2,
1369
+ onClick: U
1370
+ }, [
1371
+ p(L, { "icon-class": "close_right" }),
1372
+ g[7] || (g[7] = D(" 关闭右侧 "))
1373
+ ])),
1374
+ C("li", {
1375
+ onClick: g[2] || (g[2] = (I) => W(i(m)))
1376
+ }, [
1377
+ p(L, { "icon-class": "close_all" }),
1378
+ g[8] || (g[8] = D(" 关闭所有 "))
1379
+ ])
1380
+ ], 4), [
1381
+ [lt, i(y)]
1382
+ ])
1383
+ ]);
1384
+ };
1385
+ }
1386
+ }), hn = /* @__PURE__ */ H(vn, [["__scopeId", "data-v-77bfe9a5"]]), gn = /* @__PURE__ */ R({
1387
+ name: "AppLink",
1388
+ inheritAttrs: !1,
1389
+ __name: "index",
1390
+ props: {
1391
+ to: {
1392
+ type: String,
1393
+ required: !0
1394
+ }
1395
+ },
1396
+ setup(a) {
1397
+ const e = a, t = O(() => me(e.to)), o = O(() => t.value ? "a" : "router-link"), s = (n) => t.value ? { href: n, target: "_blank", rel: "noopener noreferrer" } : { to: n };
1398
+ return (n, l) => (d(), x(ke(i(o)), it(st(s(a.to))), {
1399
+ default: v(() => [
1400
+ rt(n.$slots, "default")
1401
+ ]),
1402
+ _: 3
1403
+ }, 16));
1404
+ }
1405
+ }), bn = {
1406
+ key: 3,
1407
+ class: "ml-1"
1408
+ }, wn = /* @__PURE__ */ R({
1409
+ __name: "SidebarMenuItemTitle",
1410
+ props: {
1411
+ icon: {
1412
+ type: String,
1413
+ default: ""
1414
+ },
1415
+ name: {
1416
+ type: String,
1417
+ default: ""
1418
+ },
1419
+ title: {
1420
+ type: String,
1421
+ default: ""
1422
+ }
1423
+ },
1424
+ setup(a) {
1425
+ return (e, t) => {
1426
+ const o = V("el-icon"), s = re;
1427
+ return d(), k(j, null, [
1428
+ a.icon && a.icon.startsWith("el-icon") ? (d(), x(o, {
1429
+ key: 0,
1430
+ class: "sub-el-icon"
1431
+ }, {
1432
+ default: v(() => [
1433
+ (d(), x(ke(a.icon.replace("el-icon-", ""))))
1434
+ ]),
1435
+ _: 1
1436
+ })) : a.icon ? (d(), x(s, {
1437
+ key: 1,
1438
+ "icon-class": a.icon
1439
+ }, null, 8, ["icon-class"])) : (d(), x(s, {
1440
+ key: 2,
1441
+ "icon-class": "menu"
1442
+ })),
1443
+ a.title ? (d(), k("span", bn, A(i(ge)(a.name, a.title)), 1)) : $("", !0)
1444
+ ], 64);
1445
+ };
1446
+ }
1447
+ }), yn = /* @__PURE__ */ H(wn, [["__scopeId", "data-v-992a058f"]]), xn = { key: 0 }, kn = /* @__PURE__ */ R({
1448
+ name: "SidebarMenuItem",
1449
+ inheritAttrs: !1,
1450
+ __name: "SidebarMenuItem",
1451
+ props: {
1452
+ /**
1453
+ * 路由(eg:user)
1454
+ */
1455
+ item: {
1456
+ type: Object,
1457
+ required: !0
1458
+ },
1459
+ /**
1460
+ * 父层级完整路由路径(eg:/system)
1461
+ */
1462
+ basePath: {
1463
+ type: String,
1464
+ required: !0
1465
+ },
1466
+ isNest: {
1467
+ type: Boolean,
1468
+ default: !1
1469
+ }
1470
+ },
1471
+ setup(a) {
1472
+ const e = a, t = B();
1473
+ function o(n = [], l) {
1474
+ const r = n.filter((c) => {
1475
+ var f;
1476
+ return (f = c.meta) != null && f.hidden ? !1 : (c.meta.hidden = !1, t.value = c, !0);
1477
+ });
1478
+ return r.length === 1 ? !0 : r.length === 0 ? (t.value = { ...l, path: "", noShowingChildren: !0 }, !0) : !1;
1479
+ }
1480
+ function s(n) {
1481
+ return me(n) ? n : me(e.basePath) ? e.basePath : Be.resolve(e.basePath, n);
1482
+ }
1483
+ return (n, l) => {
1484
+ var _;
1485
+ const r = yn, c = V("el-menu-item"), f = gn, m = V("SidebarMenuItem", !0), u = V("el-sub-menu");
1486
+ return !a.item.meta || !a.item.meta.hidden ? (d(), k("div", xn, [
1487
+ o(a.item.children, a.item) && (!i(t).children || i(t).noShowingChildren) && !((_ = a.item.meta) != null && _.alwaysShow) ? (d(), k(j, { key: 0 }, [
1488
+ i(t).meta ? (d(), x(f, {
1489
+ key: 0,
1490
+ to: s(i(t).path)
1491
+ }, {
1492
+ default: v(() => [
1493
+ p(c, {
1494
+ index: s(i(t).path),
1495
+ class: K({ "submenu-title-noDropdown": !a.isNest })
1496
+ }, {
1497
+ default: v(() => [
1498
+ p(r, {
1499
+ icon: i(t).meta.icon || a.item.meta && a.item.meta.icon,
1500
+ title: i(t).meta.title,
1501
+ name: i(t).name
1502
+ }, null, 8, ["icon", "title", "name"])
1503
+ ]),
1504
+ _: 1
1505
+ }, 8, ["index", "class"])
1506
+ ]),
1507
+ _: 1
1508
+ }, 8, ["to"])) : $("", !0)
1509
+ ], 64)) : (d(), x(u, {
1510
+ key: 1,
1511
+ index: s(a.item.path),
1512
+ teleported: ""
1513
+ }, {
1514
+ title: v(() => [
1515
+ a.item.meta ? (d(), x(r, {
1516
+ key: 0,
1517
+ icon: a.item.meta && a.item.meta.icon,
1518
+ title: a.item.meta.title,
1519
+ name: a.item.name
1520
+ }, null, 8, ["icon", "title", "name"])) : $("", !0)
1521
+ ]),
1522
+ default: v(() => [
1523
+ (d(!0), k(j, null, ce(a.item.children, (b) => (d(), x(m, {
1524
+ key: b.path,
1525
+ "is-nest": !0,
1526
+ item: b,
1527
+ "base-path": s(b.path)
1528
+ }, null, 8, ["item", "base-path"]))), 128))
1529
+ ]),
1530
+ _: 1
1531
+ }, 8, ["index"]))
1532
+ ])) : $("", !0);
1533
+ };
1534
+ }
1535
+ }), Cn = "_dark_1sua6_13", se = {
1536
+ "sidebar-width": "210px",
1537
+ "navbar-height": "50px",
1538
+ "menu-background": "var(--menu-background)",
1539
+ "menu-text": "var(--menu-text)",
1540
+ "menu-active-text": "var(--menu-active-text)",
1541
+ "menu-hover": "var(--menu-hover)",
1542
+ dark: Cn
1543
+ }, Ne = /* @__PURE__ */ R({
1544
+ __name: "SidebarMenu",
1545
+ props: {
1546
+ menuList: {
1547
+ required: !0,
1548
+ default: () => [],
1549
+ type: Array
1550
+ },
1551
+ basePath: {
1552
+ type: String,
1553
+ required: !0
1554
+ }
1555
+ },
1556
+ setup(a) {
1557
+ const e = ne(), t = Z(), o = _e(), s = O(() => e.layout), n = a;
1558
+ function l(r) {
1559
+ return me(r) ? r : me(n.basePath) ? n.basePath : Be.resolve(n.basePath, r);
1560
+ }
1561
+ return (r, c) => {
1562
+ const f = kn, m = V("el-menu");
1563
+ return d(), x(m, {
1564
+ "default-active": i(o).path,
1565
+ collapse: !i(t).sidebar.opened,
1566
+ "background-color": i(se)["menu-background"],
1567
+ "text-color": i(se)["menu-text"],
1568
+ "active-text-color": i(se)["menu-active-text"],
1569
+ "unique-opened": !1,
1570
+ "collapse-transition": !1,
1571
+ mode: i(s) === "top" ? "horizontal" : "vertical"
1572
+ }, {
1573
+ default: v(() => [
1574
+ (d(!0), k(j, null, ce(a.menuList, (u) => (d(), x(f, {
1575
+ key: u.path,
1576
+ item: u,
1577
+ "base-path": l(u.path),
1578
+ "is-collapse": !i(t).sidebar.opened
1579
+ }, null, 8, ["item", "base-path", "is-collapse"]))), 128))
1580
+ ]),
1581
+ _: 1
1582
+ }, 8, ["default-active", "collapse", "background-color", "text-color", "active-text-color", "mode"]);
1583
+ };
1584
+ }
1585
+ }), Vn = { key: 1 }, Sn = {
1586
+ key: 0,
1587
+ class: "ml-1"
1588
+ }, $n = /* @__PURE__ */ R({
1589
+ __name: "SidebarMixTopMenu",
1590
+ setup(a) {
1591
+ const e = Z(), t = pe(), o = Ce(), s = O(() => e.activeTopMenuPath), n = B([]), l = (c) => {
1592
+ e.activeTopMenu(c), t.setMixLeftMenus(c);
1593
+ const f = t.mixLeftMenus;
1594
+ r(f);
1595
+ }, r = (c) => {
1596
+ if (c.length === 0) return;
1597
+ const [f] = c;
1598
+ f.children && f.children.length > 0 ? r(f.children) : f.name && o.push({
1599
+ name: f.name
1600
+ });
1601
+ };
1602
+ return Le(() => {
1603
+ n.value = t.routes.filter(
1604
+ (c) => !c.meta || !c.meta.hidden
1605
+ );
1606
+ }), (c, f) => {
1607
+ const m = re, u = V("el-menu-item"), _ = V("el-menu"), b = V("el-scrollbar");
1608
+ return d(), x(b, null, {
1609
+ default: v(() => [
1610
+ p(_, {
1611
+ mode: "horizontal",
1612
+ "default-active": i(s),
1613
+ "background-color": i(se)["menu-background"],
1614
+ "text-color": i(se)["menu-text"],
1615
+ "active-text-color": i(se)["menu-active-text"],
1616
+ onSelect: l
1617
+ }, {
1618
+ default: v(() => [
1619
+ (d(!0), k(j, null, ce(i(n), (y) => (d(), x(u, {
1620
+ key: y.path,
1621
+ index: y.path
1622
+ }, {
1623
+ title: v(() => [
1624
+ y.meta && y.meta.icon ? (d(), x(m, {
1625
+ key: 0,
1626
+ "icon-class": y.meta.icon
1627
+ }, null, 8, ["icon-class"])) : $("", !0),
1628
+ y.path === "/" ? (d(), k("span", Vn, A(i(ge)("Dashboard", "首页")), 1)) : (d(), k(j, { key: 2 }, [
1629
+ y.meta && y.meta.title ? (d(), k("span", Sn, A(i(ye)(y)), 1)) : $("", !0)
1630
+ ], 64))
1631
+ ]),
1632
+ _: 2
1633
+ }, 1032, ["index"]))), 128))
1634
+ ]),
1635
+ _: 1
1636
+ }, 8, ["default-active", "background-color", "text-color", "active-text-color"])
1637
+ ]),
1638
+ _: 1
1639
+ });
1640
+ };
1641
+ }
1642
+ }), Tn = { class: "logo-container" }, An = ["src"], Mn = ["src"], En = { class: "logo-title" }, Pn = /* @__PURE__ */ R({
1643
+ __name: "SidebarLogo",
1644
+ props: {
1645
+ collapse: {
1646
+ type: Boolean,
1647
+ required: !0
1648
+ }
1649
+ },
1650
+ setup(a) {
1651
+ const e = ne(), t = fe.logo;
1652
+ return (o, s) => {
1653
+ const n = V("router-link");
1654
+ return d(), k("div", Tn, [
1655
+ p(Pe, { "enter-active-class": "animate__animated animate__fadeInLeft" }, {
1656
+ default: v(() => [
1657
+ a.collapse ? (d(), x(n, {
1658
+ key: 0,
1659
+ class: "wh-full flex-center",
1660
+ to: "/"
1661
+ }, {
1662
+ default: v(() => [
1663
+ i(e).sidebarLogo ? (d(), k("img", {
1664
+ key: 0,
1665
+ src: i(t),
1666
+ class: "logo-image"
1667
+ }, null, 8, An)) : $("", !0)
1668
+ ]),
1669
+ _: 1
1670
+ })) : (d(), x(n, {
1671
+ key: 1,
1672
+ class: "wh-full flex-center",
1673
+ to: "/"
1674
+ }, {
1675
+ default: v(() => [
1676
+ i(e).sidebarLogo ? (d(), k("img", {
1677
+ key: 0,
1678
+ src: i(t),
1679
+ class: "logo-image"
1680
+ }, null, 8, Mn)) : $("", !0),
1681
+ C("span", En, A(i(fe).title), 1)
1682
+ ]),
1683
+ _: 1
1684
+ }))
1685
+ ]),
1686
+ _: 1
1687
+ })
1688
+ ]);
1689
+ };
1690
+ }
1691
+ }), Ln = /* @__PURE__ */ H(Pn, [["__scopeId", "data-v-210c85a9"]]), In = {
1692
+ key: 0,
1693
+ class: "flex w-full"
1694
+ }, Rn = /* @__PURE__ */ R({
1695
+ __name: "index",
1696
+ setup(a) {
1697
+ const e = Z(), t = ne(), o = pe(), s = O(() => t.sidebarLogo), n = O(() => t.layout);
1698
+ return (l, r) => {
1699
+ const c = Ln, f = $n, m = Ie, u = Ne, _ = V("el-scrollbar");
1700
+ return d(), k("div", {
1701
+ class: K({ "has-logo": i(s) })
1702
+ }, [
1703
+ i(n) == "mix" ? (d(), k("div", In, [
1704
+ i(s) ? (d(), x(c, {
1705
+ key: 0,
1706
+ collapse: !i(e).sidebar.opened
1707
+ }, null, 8, ["collapse"])) : $("", !0),
1708
+ p(f, { class: "flex-1" }),
1709
+ p(m)
1710
+ ])) : (d(), k(j, { key: 1 }, [
1711
+ i(s) ? (d(), x(c, {
1712
+ key: 0,
1713
+ collapse: !i(e).sidebar.opened
1714
+ }, null, 8, ["collapse"])) : $("", !0),
1715
+ p(_, null, {
1716
+ default: v(() => [
1717
+ p(u, {
1718
+ "menu-list": i(o).routes,
1719
+ "base-path": ""
1720
+ }, null, 8, ["menu-list"])
1721
+ ]),
1722
+ _: 1
1723
+ }),
1724
+ i(n) === "top" ? (d(), x(m, { key: 1 })) : $("", !0)
1725
+ ], 64))
1726
+ ], 2);
1727
+ };
1728
+ }
1729
+ }), Dn = /* @__PURE__ */ H(Rn, [["__scopeId", "data-v-a6d3f8e9"]]), Bn = {
1730
+ key: 1,
1731
+ class: "mix-container"
1732
+ }, Nn = { class: "mix-container__left" }, On = { class: "sidebar-toggle" }, Un = 992, zn = /* @__PURE__ */ R({
1733
+ __name: "index",
1734
+ setup(a) {
1735
+ const e = Z(), t = ne(), o = pe(), s = O(() => t.fixedHeader), n = O(() => t.tagsView), l = O(() => t.layout), r = O(() => e.activeTopMenuPath), c = O(() => o.mixLeftMenus);
1736
+ le(
1737
+ () => r.value,
1738
+ (b) => {
1739
+ o.setMixLeftMenus(b);
1740
+ },
1741
+ {
1742
+ deep: !0,
1743
+ immediate: !0
1744
+ }
1745
+ );
1746
+ const f = O(() => ({
1747
+ hideSidebar: !e.sidebar.opened,
1748
+ openSidebar: e.sidebar.opened,
1749
+ mobile: e.device === ve.MOBILE,
1750
+ "layout-left": l.value === "left",
1751
+ "layout-top": l.value === "top",
1752
+ "layout-mix": l.value === "mix"
1753
+ })), m = Qe().width;
1754
+ Ee(() => {
1755
+ m.value < Un ? (e.toggleDevice(ve.MOBILE), e.closeSideBar()) : (e.toggleDevice(ve.DESKTOP), m.value >= 1200 ? e.openSideBar() : e.closeSideBar());
1756
+ });
1757
+ function u() {
1758
+ e.closeSideBar();
1759
+ }
1760
+ function _() {
1761
+ e.toggleSidebar();
1762
+ }
1763
+ return (b, y) => {
1764
+ const E = Dn, S = Ne, T = Re, q = hn, h = un, P = sn, ee = Ft;
1765
+ return d(), k("div", {
1766
+ class: K(["wh-full", i(f)])
1767
+ }, [
1768
+ i(f).mobile && i(f).openSidebar ? (d(), k("div", {
1769
+ key: 0,
1770
+ class: "wh-full fixed-lt z-999 bg-black bg-opacity-30",
1771
+ onClick: u
1772
+ })) : $("", !0),
1773
+ p(E, { class: "sidebar-container" }),
1774
+ i(l) === "mix" ? (d(), k("div", Bn, [
1775
+ C("div", Nn, [
1776
+ p(S, {
1777
+ "menu-list": i(c),
1778
+ "base-path": i(r)
1779
+ }, null, 8, ["menu-list", "base-path"]),
1780
+ C("div", On, [
1781
+ p(T, {
1782
+ "is-active": i(e).sidebar.opened,
1783
+ onToggleClick: _
1784
+ }, null, 8, ["is-active"])
1785
+ ])
1786
+ ]),
1787
+ C("div", {
1788
+ class: K([{ hasTagsView: i(n) }, "main-container"])
1789
+ }, [
1790
+ C("div", {
1791
+ class: K({ "fixed-header": i(s) })
1792
+ }, [
1793
+ i(n) ? (d(), x(q, { key: 0 })) : $("", !0)
1794
+ ], 2),
1795
+ p(h),
1796
+ i(fe).showSettings ? (d(), x(P, { key: 0 })) : $("", !0)
1797
+ ], 2)
1798
+ ])) : (d(), k("div", {
1799
+ key: 2,
1800
+ class: K([{ hasTagsView: i(n) }, "main-container"])
1801
+ }, [
1802
+ C("div", {
1803
+ class: K({ "fixed-header": i(s) })
1804
+ }, [
1805
+ i(l) === "left" ? (d(), x(ee, { key: 0 })) : $("", !0),
1806
+ i(n) ? (d(), x(q, { key: 1 })) : $("", !0)
1807
+ ], 2),
1808
+ p(h),
1809
+ i(fe).showSettings ? (d(), x(P, { key: 0 })) : $("", !0)
1810
+ ], 2))
1811
+ ], 2);
1812
+ };
1813
+ }
1814
+ }), Gn = /* @__PURE__ */ H(zn, [["__scopeId", "data-v-71891bc2"]]);
1815
+ export {
1816
+ Gn as default
1817
+ };