jmash-core 0.0.2 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/dist/401-DoLCxv3l.mjs +103 -0
  2. package/dist/404-D1KiG-19.mjs +37 -0
  3. package/dist/BarChart-C1VgkGMN.mjs +203 -0
  4. package/dist/FileSaver.min-CbZYb_R2.mjs +77 -0
  5. package/dist/FunnelChart-Czy2TVI1.mjs +106 -0
  6. package/dist/PieChart-D4hXD0SH.mjs +4 -0
  7. package/dist/PieChart.vue_vue_type_script_setup_true_lang-BzbbPmOh.mjs +90 -0
  8. package/dist/RadarChart-BIL7VT1H.mjs +4 -0
  9. package/dist/RadarChart.vue_vue_type_script_setup_true_lang-DcuctIiI.mjs +109 -0
  10. package/dist/_plugin-vue_export-helper-CHgC5LLL.mjs +9 -0
  11. package/dist/caret-bottom-Cm1qBSrY.mjs +59 -0
  12. package/dist/common-DuVBTwAv.mjs +36 -0
  13. package/dist/debounce-C0G0JMal.mjs +81 -0
  14. package/dist/dropdown2-BiRFTrOq.mjs +160 -0
  15. package/dist/edit-Bpt21Eir.mjs +833 -0
  16. package/dist/edit-CYWeo3RE.mjs +4 -0
  17. package/dist/edit-Cde8RIRN.mjs +4 -0
  18. package/dist/edit-D3-EslTs.mjs +4 -0
  19. package/dist/edit-DLx0iRHQ.mjs +469 -0
  20. package/dist/edit-NICINRFG.mjs +4 -0
  21. package/dist/edit-Vk23bJyE.mjs +4 -0
  22. package/dist/edit-sqzPOfBX.mjs +4 -0
  23. package/dist/edit.vue_vue_type_script_setup_true_lang-BYoUZaYJ.mjs +157 -0
  24. package/dist/edit.vue_vue_type_script_setup_true_lang-CFHGaytm.mjs +137 -0
  25. package/dist/edit.vue_vue_type_script_setup_true_lang-C_NNjRjK.mjs +622 -0
  26. package/dist/edit.vue_vue_type_script_setup_true_lang-DBxZMZyS.mjs +222 -0
  27. package/dist/edit.vue_vue_type_script_setup_true_lang-_tHqd9tg.mjs +226 -0
  28. package/dist/edit.vue_vue_type_script_setup_true_lang-mM66jf9N.mjs +288 -0
  29. package/dist/el-card-BIRVdEQY.mjs +61 -0
  30. package/dist/el-checkbox-group-l0sNRNKZ.mjs +1 -0
  31. package/dist/el-checkbox-miY6QbQ8.mjs +548 -0
  32. package/dist/el-col-BOgRUJYE.mjs +135 -0
  33. package/dist/el-date-picker-D9yvdcj2.mjs +3349 -0
  34. package/dist/el-dialog-BSTwker5.mjs +378 -0
  35. package/dist/el-dropdown-item-YDb2-w9y.mjs +675 -0
  36. package/dist/el-form-item-BzKoZc6I.mjs +1489 -0
  37. package/dist/el-icon-l0sNRNKZ.mjs +1 -0
  38. package/dist/el-popover-DuRdut0P.mjs +159 -0
  39. package/dist/el-popper-AjIjI4wK.mjs +1656 -0
  40. package/dist/el-progress-BPv5gfee.mjs +898 -0
  41. package/dist/el-radio-NC-gfUsx.mjs +251 -0
  42. package/dist/el-scrollbar-p0O6uID0.mjs +607 -0
  43. package/dist/el-select-DAMII7lv.mjs +1040 -0
  44. package/dist/el-switch-C2AFgHGW.mjs +254 -0
  45. package/dist/el-table-IQFrP3zv.mjs +3168 -0
  46. package/dist/el-tag-l0sNRNKZ.mjs +1 -0
  47. package/dist/el-tooltip-l0sNRNKZ.mjs +1 -0
  48. package/dist/el-tree-select-CyDKS6nF.mjs +1316 -0
  49. package/dist/importUpload.vue_vue_type_script_setup_true_lang-DWWbxFGH.mjs +117 -0
  50. package/dist/index-A3UILhe-.mjs +279 -0
  51. package/dist/index-Ax_8ZsXK.mjs +3163 -0
  52. package/dist/index-B46NFfoE.mjs +487 -0
  53. package/dist/index-BWx4KWAY.mjs +282 -0
  54. package/dist/index-BWyb1bu2.mjs +505 -0
  55. package/dist/index-BjqMDjBg.mjs +43994 -0
  56. package/dist/index-BnbEfNmI.mjs +134 -0
  57. package/dist/index-BpAihYhN.mjs +280 -0
  58. package/dist/index-Bs3AcT6R.mjs +107 -0
  59. package/dist/index-BvixCbHl.mjs +329 -0
  60. package/dist/index-C0UgbyoZ.mjs +452 -0
  61. package/dist/index-C0vV2_4K.mjs +63 -0
  62. package/dist/index-CBB_r4G5.mjs +965 -0
  63. package/dist/index-CCFtIl_h.mjs +516 -0
  64. package/dist/index-Cd3TOW5i.mjs +93 -0
  65. package/dist/index-CgNPGcHv.mjs +292 -0
  66. package/dist/index-CoOFKDgw.mjs +74 -0
  67. package/dist/index-CrNYgyNm.mjs +8800 -0
  68. package/dist/index-CurzO9C6.mjs +248 -0
  69. package/dist/index-DJ08yxAP.mjs +11 -0
  70. package/dist/index-DjkMA-Wh.mjs +40 -0
  71. package/dist/index-Url6hMpl.mjs +483 -0
  72. package/dist/index-eT2JltVa.mjs +55 -0
  73. package/dist/index-mkT_dTWL.mjs +13 -0
  74. package/dist/index-uykKwY2Z.mjs +12 -0
  75. package/dist/index-xtDIXRPY.mjs +633 -0
  76. package/dist/index.mjs +19 -273
  77. package/dist/index.vue_vue_type_script_setup_true_lang-BoxqootF.mjs +58 -0
  78. package/dist/index.vue_vue_type_script_setup_true_lang-C6yk_vUt.mjs +286 -0
  79. package/dist/isUndefined-CUQZk6oB.mjs +6 -0
  80. package/dist/moment-CMYwqyVT.mjs +2579 -0
  81. package/dist/picture-kPnmHaoS.mjs +599 -0
  82. package/dist/profile-RVQuIwXg.mjs +319 -0
  83. package/dist/refs-S3PYDmaW.mjs +9 -0
  84. package/dist/style.css +1 -1
  85. package/dist/types-CCG3Dvqs.mjs +205 -0
  86. package/dist/updatePwd-2UsTmJa5.mjs +4 -0
  87. package/dist/updatePwd.vue_vue_type_script_setup_true_lang-_Uadc2g3.mjs +151 -0
  88. package/dist/useColumnToggleTable-D_QF8Uy9.mjs +272 -0
  89. package/dist/vue-i18n-CE6tUbcO.mjs +3808 -0
  90. package/dts/tsconfig.tsbuildinfo +1 -1
  91. package/package.json +31 -2
@@ -0,0 +1,3163 @@
1
+ import { _ as Re } from "./index-DjkMA-Wh.mjs";
2
+ import { defineComponent as O, ref as M, provide as Oe, onMounted as me, openBlock as f, createElementBlock as y, normalizeClass as W, unref as v, renderSlot as ee, getCurrentInstance as Pe, inject as Te, createElementVNode as R, createBlock as A, withCtx as _, resolveDynamicComponent as ht, toDisplayString as de, Transition as Xe, mergeProps as Vt, computed as T, reactive as Ue, watch as ae, onBeforeUnmount as We, h as J, Fragment as K, withDirectives as he, vShow as Ie, watchEffect as et, nextTick as Be, toRef as zt, resolveComponent as xe, createTextVNode as Q, createVNode as b, renderList as ve, resolveDirective as Ut, createCommentVNode as U, onBeforeMount as Wt, TransitionGroup as Yt, withModifiers as ke, KeepAlive as Gt, normalizeStyle as tt, pushScopeId as vt, popScopeId as gt } from "vue";
3
+ import { _ as $ } from "./_plugin-vue_export-helper-CHgC5LLL.mjs";
4
+ import { k as Ae, X as ye, w as se, _ as Ne, m as Ve, y as Ye, K as bt, Y as Ge, I as ie, Z as qe, $ as Le, a0 as Fe, a1 as Zt, a2 as Qt, a3 as ze, a4 as Jt, B as $t, N as _e, a5 as lt, a6 as Ft, a7 as jt, n as Ht, a8 as Kt, a9 as Xt, aa as rt, u as ne, E as yt, ab as Ze, c as be, ac as en, ad as tn, ae as it, af as nn, ag as on, r as ut, a as ge, ah as De, ai as an, b as _t, aj as sn } from "./index-CrNYgyNm.mjs";
5
+ import { E as ln } from "./el-dialog-BSTwker5.mjs";
6
+ import { _ as rn } from "./index.vue_vue_type_script_setup_true_lang-C6yk_vUt.mjs";
7
+ import { E as wt, a as St, b as Rt } from "./el-dropdown-item-YDb2-w9y.mjs";
8
+ import { E as Qe } from "./el-popper-AjIjI4wK.mjs";
9
+ import { C as un, E as nt } from "./el-scrollbar-p0O6uID0.mjs";
10
+ import { _ as cn, E as dn } from "./caret-bottom-Cm1qBSrY.mjs";
11
+ import "./el-tooltip-l0sNRNKZ.mjs";
12
+ import { storeToRefs as ot } from "pinia";
13
+ import { useRouter as Je, useRoute as $e } from "vue-router";
14
+ import { _ as mn } from "./updatePwd.vue_vue_type_script_setup_true_lang-_Uadc2g3.mjs";
15
+ import { c as fn } from "./vue-i18n-CE6tUbcO.mjs";
16
+ import { E as pn } from "./el-switch-C2AFgHGW.mjs";
17
+ import { _ as hn } from "./index-eT2JltVa.mjs";
18
+ import "./el-icon-l0sNRNKZ.mjs";
19
+ const Pt = Symbol("breadcrumbKey"), vn = Ae({
20
+ separator: {
21
+ type: String,
22
+ default: "/"
23
+ },
24
+ separatorIcon: {
25
+ type: ye
26
+ }
27
+ }), gn = O({
28
+ name: "ElBreadcrumb"
29
+ }), bn = /* @__PURE__ */ O({
30
+ ...gn,
31
+ props: vn,
32
+ setup(n) {
33
+ const t = n, e = se("breadcrumb"), o = M();
34
+ return Oe(Pt, t), me(() => {
35
+ const a = o.value.querySelectorAll(`.${e.e("item")}`);
36
+ a.length && a[a.length - 1].setAttribute("aria-current", "page");
37
+ }), (a, r) => (f(), y("div", {
38
+ ref_key: "breadcrumb",
39
+ ref: o,
40
+ class: W(v(e).b()),
41
+ "aria-label": "Breadcrumb",
42
+ role: "navigation"
43
+ }, [
44
+ ee(a.$slots, "default")
45
+ ], 2));
46
+ }
47
+ });
48
+ var yn = /* @__PURE__ */ Ne(bn, [["__file", "breadcrumb.vue"]]);
49
+ const _n = Ae({
50
+ to: {
51
+ type: Ve([String, Object]),
52
+ default: ""
53
+ },
54
+ replace: {
55
+ type: Boolean,
56
+ default: !1
57
+ }
58
+ }), wn = O({
59
+ name: "ElBreadcrumbItem"
60
+ }), Sn = /* @__PURE__ */ O({
61
+ ...wn,
62
+ props: _n,
63
+ setup(n) {
64
+ const t = n, e = Pe(), o = Te(Pt, void 0), a = se("breadcrumb"), r = e.appContext.config.globalProperties.$router, s = M(), i = () => {
65
+ !t.to || !r || (t.replace ? r.replace(t.to) : r.push(t.to));
66
+ };
67
+ return (l, d) => {
68
+ var c, u;
69
+ return f(), y("span", {
70
+ class: W(v(a).e("item"))
71
+ }, [
72
+ R("span", {
73
+ ref_key: "link",
74
+ ref: s,
75
+ class: W([v(a).e("inner"), v(a).is("link", !!l.to)]),
76
+ role: "link",
77
+ onClick: i
78
+ }, [
79
+ ee(l.$slots, "default")
80
+ ], 2),
81
+ (c = v(o)) != null && c.separatorIcon ? (f(), A(v(Ye), {
82
+ key: 0,
83
+ class: W(v(a).e("separator"))
84
+ }, {
85
+ default: _(() => [
86
+ (f(), A(ht(v(o).separatorIcon)))
87
+ ]),
88
+ _: 1
89
+ }, 8, ["class"])) : (f(), y("span", {
90
+ key: 1,
91
+ class: W(v(a).e("separator")),
92
+ role: "presentation"
93
+ }, de((u = v(o)) == null ? void 0 : u.separator), 3))
94
+ ], 2);
95
+ };
96
+ }
97
+ });
98
+ var xt = /* @__PURE__ */ Ne(Sn, [["__file", "breadcrumb-item.vue"]]);
99
+ const Rn = bt(yn, {
100
+ BreadcrumbItem: xt
101
+ }), Pn = Ge(xt);
102
+ let xn = class {
103
+ constructor(t, e) {
104
+ this.parent = t, this.domNode = e, this.subIndex = 0, this.subIndex = 0, this.init();
105
+ }
106
+ init() {
107
+ this.subMenuItems = this.domNode.querySelectorAll("li"), this.addListeners();
108
+ }
109
+ gotoSubIndex(t) {
110
+ t === this.subMenuItems.length ? t = 0 : t < 0 && (t = this.subMenuItems.length - 1), this.subMenuItems[t].focus(), this.subIndex = t;
111
+ }
112
+ addListeners() {
113
+ const t = this.parent.domNode;
114
+ Array.prototype.forEach.call(this.subMenuItems, (e) => {
115
+ e.addEventListener("keydown", (o) => {
116
+ let a = !1;
117
+ switch (o.code) {
118
+ case ie.down: {
119
+ this.gotoSubIndex(this.subIndex + 1), a = !0;
120
+ break;
121
+ }
122
+ case ie.up: {
123
+ this.gotoSubIndex(this.subIndex - 1), a = !0;
124
+ break;
125
+ }
126
+ case ie.tab: {
127
+ qe(t, "mouseleave");
128
+ break;
129
+ }
130
+ case ie.enter:
131
+ case ie.space: {
132
+ a = !0, o.currentTarget.click();
133
+ break;
134
+ }
135
+ }
136
+ return a && (o.preventDefault(), o.stopPropagation()), !1;
137
+ });
138
+ });
139
+ }
140
+ }, Cn = class {
141
+ constructor(t, e) {
142
+ this.domNode = t, this.submenu = null, this.submenu = null, this.init(e);
143
+ }
144
+ init(t) {
145
+ this.domNode.setAttribute("tabindex", "0");
146
+ const e = this.domNode.querySelector(`.${t}-menu`);
147
+ e && (this.submenu = new xn(this, e)), this.addListeners();
148
+ }
149
+ addListeners() {
150
+ this.domNode.addEventListener("keydown", (t) => {
151
+ let e = !1;
152
+ switch (t.code) {
153
+ case ie.down: {
154
+ qe(t.currentTarget, "mouseenter"), this.submenu && this.submenu.gotoSubIndex(0), e = !0;
155
+ break;
156
+ }
157
+ case ie.up: {
158
+ qe(t.currentTarget, "mouseenter"), this.submenu && this.submenu.gotoSubIndex(this.submenu.subMenuItems.length - 1), e = !0;
159
+ break;
160
+ }
161
+ case ie.tab: {
162
+ qe(t.currentTarget, "mouseleave");
163
+ break;
164
+ }
165
+ case ie.enter:
166
+ case ie.space: {
167
+ e = !0, t.currentTarget.click();
168
+ break;
169
+ }
170
+ }
171
+ e && t.preventDefault();
172
+ });
173
+ }
174
+ }, kn = class {
175
+ constructor(t, e) {
176
+ this.domNode = t, this.init(e);
177
+ }
178
+ init(t) {
179
+ const e = this.domNode.childNodes;
180
+ Array.from(e).forEach((o) => {
181
+ o.nodeType === 1 && new Cn(o, t);
182
+ });
183
+ }
184
+ };
185
+ const Tn = O({
186
+ name: "ElMenuCollapseTransition",
187
+ setup() {
188
+ const n = se("menu");
189
+ return {
190
+ listeners: {
191
+ onBeforeEnter: (e) => e.style.opacity = "0.2",
192
+ onEnter(e, o) {
193
+ Le(e, `${n.namespace.value}-opacity-transition`), e.style.opacity = "1", o();
194
+ },
195
+ onAfterEnter(e) {
196
+ Fe(e, `${n.namespace.value}-opacity-transition`), e.style.opacity = "";
197
+ },
198
+ onBeforeLeave(e) {
199
+ e.dataset || (e.dataset = {}), Zt(e, n.m("collapse")) ? (Fe(e, n.m("collapse")), e.dataset.oldOverflow = e.style.overflow, e.dataset.scrollWidth = e.clientWidth.toString(), Le(e, n.m("collapse"))) : (Le(e, n.m("collapse")), e.dataset.oldOverflow = e.style.overflow, e.dataset.scrollWidth = e.clientWidth.toString(), Fe(e, n.m("collapse"))), e.style.width = `${e.scrollWidth}px`, e.style.overflow = "hidden";
200
+ },
201
+ onLeave(e) {
202
+ Le(e, "horizontal-collapse-transition"), e.style.width = `${e.dataset.scrollWidth}px`;
203
+ }
204
+ }
205
+ };
206
+ }
207
+ });
208
+ function In(n, t, e, o, a, r) {
209
+ return f(), A(Xe, Vt({ mode: "out-in" }, n.listeners), {
210
+ default: _(() => [
211
+ ee(n.$slots, "default")
212
+ ]),
213
+ _: 3
214
+ }, 16);
215
+ }
216
+ var En = /* @__PURE__ */ Ne(Tn, [["render", In], ["__file", "menu-collapse-transition.vue"]]);
217
+ function Ct(n, t) {
218
+ const e = T(() => {
219
+ let a = n.parent;
220
+ const r = [t.value];
221
+ for (; a.type.name !== "ElMenu"; )
222
+ a.props.index && r.unshift(a.props.index), a = a.parent;
223
+ return r;
224
+ });
225
+ return {
226
+ parentMenu: T(() => {
227
+ let a = n.parent;
228
+ for (; a && !["ElMenu", "ElSubMenu"].includes(a.type.name); )
229
+ a = a.parent;
230
+ return a;
231
+ }),
232
+ indexPath: e
233
+ };
234
+ }
235
+ function Mn(n) {
236
+ return T(() => {
237
+ const e = n.backgroundColor;
238
+ return e ? new Qt(e).shade(20).toString() : "";
239
+ });
240
+ }
241
+ const kt = (n, t) => {
242
+ const e = se("menu");
243
+ return T(() => e.cssVarBlock({
244
+ "text-color": n.textColor || "",
245
+ "hover-text-color": n.textColor || "",
246
+ "bg-color": n.backgroundColor || "",
247
+ "hover-bg-color": Mn(n).value || "",
248
+ "active-color": n.activeTextColor || "",
249
+ level: `${t}`
250
+ }));
251
+ }, An = Ae({
252
+ index: {
253
+ type: String,
254
+ required: !0
255
+ },
256
+ showTimeout: Number,
257
+ hideTimeout: Number,
258
+ popperClass: String,
259
+ disabled: Boolean,
260
+ teleported: {
261
+ type: Boolean,
262
+ default: void 0
263
+ },
264
+ popperOffset: Number,
265
+ expandCloseIcon: {
266
+ type: ye
267
+ },
268
+ expandOpenIcon: {
269
+ type: ye
270
+ },
271
+ collapseCloseIcon: {
272
+ type: ye
273
+ },
274
+ collapseOpenIcon: {
275
+ type: ye
276
+ }
277
+ }), je = "ElSubMenu";
278
+ var at = O({
279
+ name: je,
280
+ props: An,
281
+ setup(n, { slots: t, expose: e }) {
282
+ const o = Pe(), { indexPath: a, parentMenu: r } = Ct(o, T(() => n.index)), s = se("menu"), i = se("sub-menu"), l = Te("rootMenu");
283
+ l || ze(je, "can not inject root menu");
284
+ const d = Te(`subMenu:${r.value.uid}`);
285
+ d || ze(je, "can not inject sub menu");
286
+ const c = M({}), u = M({});
287
+ let h;
288
+ const P = M(!1), w = M(), D = M(null), x = T(() => F.value === "horizontal" && L.value ? "bottom-start" : "right-start"), C = T(() => F.value === "horizontal" && L.value || F.value === "vertical" && !l.props.collapse ? n.expandCloseIcon && n.expandOpenIcon ? B.value ? n.expandOpenIcon : n.expandCloseIcon : Jt : n.collapseCloseIcon && n.collapseOpenIcon ? B.value ? n.collapseOpenIcon : n.collapseCloseIcon : $t), L = T(() => d.level === 0), G = T(() => {
289
+ const m = n.teleported;
290
+ return m === void 0 ? L.value : m;
291
+ }), Z = T(() => l.props.collapse ? `${s.namespace.value}-zoom-in-left` : `${s.namespace.value}-zoom-in-top`), H = T(() => F.value === "horizontal" && L.value ? [
292
+ "bottom-start",
293
+ "bottom-end",
294
+ "top-start",
295
+ "top-end",
296
+ "right-start",
297
+ "left-start"
298
+ ] : [
299
+ "right-start",
300
+ "right",
301
+ "right-end",
302
+ "left-start",
303
+ "bottom-start",
304
+ "bottom-end",
305
+ "top-start",
306
+ "top-end"
307
+ ]), B = T(() => l.openedMenus.includes(n.index)), q = T(() => {
308
+ let m = !1;
309
+ return Object.values(c.value).forEach((p) => {
310
+ p.active && (m = !0);
311
+ }), Object.values(u.value).forEach((p) => {
312
+ p.active && (m = !0);
313
+ }), m;
314
+ }), F = T(() => l.props.mode), j = Ue({
315
+ index: n.index,
316
+ indexPath: a,
317
+ active: q
318
+ }), X = kt(l.props, d.level + 1), fe = T(() => {
319
+ var m;
320
+ return (m = n.popperOffset) != null ? m : l.props.popperOffset;
321
+ }), le = T(() => {
322
+ var m;
323
+ return (m = n.popperClass) != null ? m : l.props.popperClass;
324
+ }), pe = T(() => {
325
+ var m;
326
+ return (m = n.showTimeout) != null ? m : l.props.showTimeout;
327
+ }), g = T(() => {
328
+ var m;
329
+ return (m = n.hideTimeout) != null ? m : l.props.hideTimeout;
330
+ }), S = () => {
331
+ var m, p, I;
332
+ return (I = (p = (m = D.value) == null ? void 0 : m.popperRef) == null ? void 0 : p.popperInstanceRef) == null ? void 0 : I.destroy();
333
+ }, k = (m) => {
334
+ m || S();
335
+ }, Y = () => {
336
+ l.props.menuTrigger === "hover" && l.props.mode === "horizontal" || l.props.collapse && l.props.mode === "vertical" || n.disabled || l.handleSubMenuClick({
337
+ index: n.index,
338
+ indexPath: a.value,
339
+ active: q.value
340
+ });
341
+ }, z = (m, p = pe.value) => {
342
+ var I;
343
+ if (m.type !== "focus") {
344
+ if (l.props.menuTrigger === "click" && l.props.mode === "horizontal" || !l.props.collapse && l.props.mode === "vertical" || n.disabled) {
345
+ d.mouseInChild.value = !0;
346
+ return;
347
+ }
348
+ d.mouseInChild.value = !0, h == null || h(), { stop: h } = lt(() => {
349
+ l.openMenu(n.index, a.value);
350
+ }, p), G.value && ((I = r.value.vnode.el) == null || I.dispatchEvent(new MouseEvent("mouseenter")));
351
+ }
352
+ }, te = (m = !1) => {
353
+ var p;
354
+ if (l.props.menuTrigger === "click" && l.props.mode === "horizontal" || !l.props.collapse && l.props.mode === "vertical") {
355
+ d.mouseInChild.value = !1;
356
+ return;
357
+ }
358
+ h == null || h(), d.mouseInChild.value = !1, { stop: h } = lt(() => !P.value && l.closeMenu(n.index, a.value), g.value), G.value && m && ((p = d.handleMouseleave) == null || p.call(d, !0));
359
+ };
360
+ ae(() => l.props.collapse, (m) => k(!!m));
361
+ {
362
+ const m = (I) => {
363
+ u.value[I.index] = I;
364
+ }, p = (I) => {
365
+ delete u.value[I.index];
366
+ };
367
+ Oe(`subMenu:${o.uid}`, {
368
+ addSubMenu: m,
369
+ removeSubMenu: p,
370
+ handleMouseleave: te,
371
+ mouseInChild: P,
372
+ level: d.level + 1
373
+ });
374
+ }
375
+ return e({
376
+ opened: B
377
+ }), me(() => {
378
+ l.addSubMenu(j), d.addSubMenu(j);
379
+ }), We(() => {
380
+ d.removeSubMenu(j), l.removeSubMenu(j);
381
+ }), () => {
382
+ var m;
383
+ const p = [
384
+ (m = t.title) == null ? void 0 : m.call(t),
385
+ J(Ye, {
386
+ class: i.e("icon-arrow"),
387
+ style: {
388
+ transform: B.value ? n.expandCloseIcon && n.expandOpenIcon || n.collapseCloseIcon && n.collapseOpenIcon && l.props.collapse ? "none" : "rotateZ(180deg)" : "none"
389
+ }
390
+ }, {
391
+ default: () => _e(C.value) ? J(o.appContext.components[C.value]) : J(C.value)
392
+ })
393
+ ], I = l.isMenuPopup ? J(Qe, {
394
+ ref: D,
395
+ visible: B.value,
396
+ effect: "light",
397
+ pure: !0,
398
+ offset: fe.value,
399
+ showArrow: !1,
400
+ persistent: !0,
401
+ popperClass: le.value,
402
+ placement: x.value,
403
+ teleported: G.value,
404
+ fallbackPlacements: H.value,
405
+ transition: Z.value,
406
+ gpuAcceleration: !1
407
+ }, {
408
+ content: () => {
409
+ var V;
410
+ return J("div", {
411
+ class: [
412
+ s.m(F.value),
413
+ s.m("popup-container"),
414
+ le.value
415
+ ],
416
+ onMouseenter: (E) => z(E, 100),
417
+ onMouseleave: () => te(!0),
418
+ onFocus: (E) => z(E, 100)
419
+ }, [
420
+ J("ul", {
421
+ class: [
422
+ s.b(),
423
+ s.m("popup"),
424
+ s.m(`popup-${x.value}`)
425
+ ],
426
+ style: X.value
427
+ }, [(V = t.default) == null ? void 0 : V.call(t)])
428
+ ]);
429
+ },
430
+ default: () => J("div", {
431
+ class: i.e("title"),
432
+ onClick: Y
433
+ }, p)
434
+ }) : J(K, {}, [
435
+ J("div", {
436
+ class: i.e("title"),
437
+ ref: w,
438
+ onClick: Y
439
+ }, p),
440
+ J(hn, {}, {
441
+ default: () => {
442
+ var V;
443
+ return he(J("ul", {
444
+ role: "menu",
445
+ class: [s.b(), s.m("inline")],
446
+ style: X.value
447
+ }, [(V = t.default) == null ? void 0 : V.call(t)]), [[Ie, B.value]]);
448
+ }
449
+ })
450
+ ]);
451
+ return J("li", {
452
+ class: [
453
+ i.b(),
454
+ i.is("active", q.value),
455
+ i.is("opened", B.value),
456
+ i.is("disabled", n.disabled)
457
+ ],
458
+ role: "menuitem",
459
+ ariaHaspopup: !0,
460
+ ariaExpanded: B.value,
461
+ onMouseenter: z,
462
+ onMouseleave: () => te(),
463
+ onFocus: z
464
+ }, [I]);
465
+ };
466
+ }
467
+ });
468
+ const Nn = Ae({
469
+ mode: {
470
+ type: String,
471
+ values: ["horizontal", "vertical"],
472
+ default: "vertical"
473
+ },
474
+ defaultActive: {
475
+ type: String,
476
+ default: ""
477
+ },
478
+ defaultOpeneds: {
479
+ type: Ve(Array),
480
+ default: () => Ht([])
481
+ },
482
+ uniqueOpened: Boolean,
483
+ router: Boolean,
484
+ menuTrigger: {
485
+ type: String,
486
+ values: ["hover", "click"],
487
+ default: "hover"
488
+ },
489
+ collapse: Boolean,
490
+ backgroundColor: String,
491
+ textColor: String,
492
+ activeTextColor: String,
493
+ closeOnClickOutside: Boolean,
494
+ collapseTransition: {
495
+ type: Boolean,
496
+ default: !0
497
+ },
498
+ ellipsis: {
499
+ type: Boolean,
500
+ default: !0
501
+ },
502
+ popperOffset: {
503
+ type: Number,
504
+ default: 6
505
+ },
506
+ ellipsisIcon: {
507
+ type: ye,
508
+ default: () => Kt
509
+ },
510
+ popperEffect: {
511
+ type: String,
512
+ values: ["dark", "light"],
513
+ default: "dark"
514
+ },
515
+ popperClass: String,
516
+ showTimeout: {
517
+ type: Number,
518
+ default: 300
519
+ },
520
+ hideTimeout: {
521
+ type: Number,
522
+ default: 300
523
+ }
524
+ }), He = (n) => Array.isArray(n) && n.every((t) => _e(t)), Dn = {
525
+ close: (n, t) => _e(n) && He(t),
526
+ open: (n, t) => _e(n) && He(t),
527
+ select: (n, t, e, o) => _e(n) && He(t) && Xt(e) && (o === void 0 || o instanceof Promise)
528
+ };
529
+ var Ln = O({
530
+ name: "ElMenu",
531
+ props: Nn,
532
+ emits: Dn,
533
+ setup(n, { emit: t, slots: e, expose: o }) {
534
+ const a = Pe(), r = a.appContext.config.globalProperties.$router, s = M(), i = se("menu"), l = se("sub-menu"), d = M(-1), c = M(n.defaultOpeneds && !n.collapse ? n.defaultOpeneds.slice(0) : []), u = M(n.defaultActive), h = M({}), P = M({}), w = T(() => n.mode === "horizontal" || n.mode === "vertical" && n.collapse), D = () => {
535
+ const g = u.value && h.value[u.value];
536
+ if (!g || n.mode === "horizontal" || n.collapse)
537
+ return;
538
+ g.indexPath.forEach((k) => {
539
+ const Y = P.value[k];
540
+ Y && x(k, Y.indexPath);
541
+ });
542
+ }, x = (g, S) => {
543
+ c.value.includes(g) || (n.uniqueOpened && (c.value = c.value.filter((k) => S.includes(k))), c.value.push(g), t("open", g, S));
544
+ }, C = (g) => {
545
+ const S = c.value.indexOf(g);
546
+ S !== -1 && c.value.splice(S, 1);
547
+ }, L = (g, S) => {
548
+ C(g), t("close", g, S);
549
+ }, G = ({
550
+ index: g,
551
+ indexPath: S
552
+ }) => {
553
+ c.value.includes(g) ? L(g, S) : x(g, S);
554
+ }, Z = (g) => {
555
+ (n.mode === "horizontal" || n.collapse) && (c.value = []);
556
+ const { index: S, indexPath: k } = g;
557
+ if (!(rt(S) || rt(k)))
558
+ if (n.router && r) {
559
+ const Y = g.route || S, z = r.push(Y).then((te) => (te || (u.value = S), te));
560
+ t("select", S, k, { index: S, indexPath: k, route: Y }, z);
561
+ } else
562
+ u.value = S, t("select", S, k, { index: S, indexPath: k });
563
+ }, H = (g) => {
564
+ const S = h.value, k = S[g] || u.value && S[u.value] || S[n.defaultActive];
565
+ k ? u.value = k.index : u.value = g;
566
+ }, B = (g) => {
567
+ const S = getComputedStyle(g), k = Number.parseInt(S.marginLeft, 10), Y = Number.parseInt(S.marginRight, 10);
568
+ return g.offsetWidth + k + Y || 0;
569
+ }, q = () => {
570
+ var g, S;
571
+ if (!s.value)
572
+ return -1;
573
+ const k = Array.from((S = (g = s.value) == null ? void 0 : g.childNodes) != null ? S : []).filter((E) => E.nodeName !== "#comment" && (E.nodeName !== "#text" || E.nodeValue)), Y = 64, z = getComputedStyle(s.value), te = Number.parseInt(z.paddingLeft, 10), m = Number.parseInt(z.paddingRight, 10), p = s.value.clientWidth - te - m;
574
+ let I = 0, V = 0;
575
+ return k.forEach((E, N) => {
576
+ I += B(E), I <= p - Y && (V = N + 1);
577
+ }), V === k.length ? -1 : V;
578
+ }, F = (g) => P.value[g].indexPath, j = (g, S = 33.34) => {
579
+ let k;
580
+ return () => {
581
+ k && clearTimeout(k), k = setTimeout(() => {
582
+ g();
583
+ }, S);
584
+ };
585
+ };
586
+ let X = !0;
587
+ const fe = () => {
588
+ if (d.value === q())
589
+ return;
590
+ const g = () => {
591
+ d.value = -1, Be(() => {
592
+ d.value = q();
593
+ });
594
+ };
595
+ X ? g() : j(g)(), X = !1;
596
+ };
597
+ ae(() => n.defaultActive, (g) => {
598
+ h.value[g] || (u.value = ""), H(g);
599
+ }), ae(() => n.collapse, (g) => {
600
+ g && (c.value = []);
601
+ }), ae(h.value, D);
602
+ let le;
603
+ et(() => {
604
+ n.mode === "horizontal" && n.ellipsis ? le = Ft(s, fe).stop : le == null || le();
605
+ });
606
+ const pe = M(!1);
607
+ {
608
+ const g = (z) => {
609
+ P.value[z.index] = z;
610
+ }, S = (z) => {
611
+ delete P.value[z.index];
612
+ };
613
+ Oe("rootMenu", Ue({
614
+ props: n,
615
+ openedMenus: c,
616
+ items: h,
617
+ subMenus: P,
618
+ activeIndex: u,
619
+ isMenuPopup: w,
620
+ addMenuItem: (z) => {
621
+ h.value[z.index] = z;
622
+ },
623
+ removeMenuItem: (z) => {
624
+ delete h.value[z.index];
625
+ },
626
+ addSubMenu: g,
627
+ removeSubMenu: S,
628
+ openMenu: x,
629
+ closeMenu: L,
630
+ handleMenuItemClick: Z,
631
+ handleSubMenuClick: G
632
+ })), Oe(`subMenu:${a.uid}`, {
633
+ addSubMenu: g,
634
+ removeSubMenu: S,
635
+ mouseInChild: pe,
636
+ level: 0
637
+ });
638
+ }
639
+ return me(() => {
640
+ n.mode === "horizontal" && new kn(a.vnode.el, i.namespace.value);
641
+ }), o({
642
+ open: (S) => {
643
+ const { indexPath: k } = P.value[S];
644
+ k.forEach((Y) => x(Y, k));
645
+ },
646
+ close: C,
647
+ handleResize: fe
648
+ }), () => {
649
+ var g, S;
650
+ let k = (S = (g = e.default) == null ? void 0 : g.call(e)) != null ? S : [];
651
+ const Y = [];
652
+ if (n.mode === "horizontal" && s.value) {
653
+ const p = jt(k), I = d.value === -1 ? p : p.slice(0, d.value), V = d.value === -1 ? [] : p.slice(d.value);
654
+ V != null && V.length && n.ellipsis && (k = I, Y.push(J(at, {
655
+ index: "sub-menu-more",
656
+ class: l.e("hide-arrow"),
657
+ popperOffset: n.popperOffset
658
+ }, {
659
+ title: () => J(Ye, {
660
+ class: l.e("icon-more")
661
+ }, {
662
+ default: () => J(n.ellipsisIcon)
663
+ }),
664
+ default: () => V
665
+ })));
666
+ }
667
+ const z = kt(n, 0), te = n.closeOnClickOutside ? [
668
+ [
669
+ un,
670
+ () => {
671
+ c.value.length && (pe.value || (c.value.forEach((p) => t("close", p, F(p))), c.value = []));
672
+ }
673
+ ]
674
+ ] : [], m = he(J("ul", {
675
+ key: String(n.collapse),
676
+ role: "menubar",
677
+ ref: s,
678
+ style: z.value,
679
+ class: {
680
+ [i.b()]: !0,
681
+ [i.m(n.mode)]: !0,
682
+ [i.m("collapse")]: n.collapse
683
+ }
684
+ }, [...k, ...Y]), te);
685
+ return n.collapseTransition && n.mode === "vertical" ? J(En, () => m) : m;
686
+ };
687
+ }
688
+ });
689
+ const qn = Ae({
690
+ index: {
691
+ type: Ve([String, null]),
692
+ default: null
693
+ },
694
+ route: {
695
+ type: Ve([String, Object])
696
+ },
697
+ disabled: Boolean
698
+ }), On = {
699
+ click: (n) => _e(n.index) && Array.isArray(n.indexPath)
700
+ }, Ke = "ElMenuItem", Bn = O({
701
+ name: Ke,
702
+ components: {
703
+ ElTooltip: Qe
704
+ },
705
+ props: qn,
706
+ emits: On,
707
+ setup(n, { emit: t }) {
708
+ const e = Pe(), o = Te("rootMenu"), a = se("menu"), r = se("menu-item");
709
+ o || ze(Ke, "can not inject root menu");
710
+ const { parentMenu: s, indexPath: i } = Ct(e, zt(n, "index")), l = Te(`subMenu:${s.value.uid}`);
711
+ l || ze(Ke, "can not inject sub menu");
712
+ const d = T(() => n.index === o.activeIndex), c = Ue({
713
+ index: n.index,
714
+ indexPath: i,
715
+ active: d
716
+ }), u = () => {
717
+ n.disabled || (o.handleMenuItemClick({
718
+ index: n.index,
719
+ indexPath: i.value,
720
+ route: n.route
721
+ }), t("click", c));
722
+ };
723
+ return me(() => {
724
+ l.addSubMenu(c), o.addMenuItem(c);
725
+ }), We(() => {
726
+ l.removeSubMenu(c), o.removeMenuItem(c);
727
+ }), {
728
+ parentMenu: s,
729
+ rootMenu: o,
730
+ active: d,
731
+ nsMenu: a,
732
+ nsMenuItem: r,
733
+ handleClick: u
734
+ };
735
+ }
736
+ });
737
+ function Vn(n, t, e, o, a, r) {
738
+ const s = xe("el-tooltip");
739
+ return f(), y("li", {
740
+ class: W([
741
+ n.nsMenuItem.b(),
742
+ n.nsMenuItem.is("active", n.active),
743
+ n.nsMenuItem.is("disabled", n.disabled)
744
+ ]),
745
+ role: "menuitem",
746
+ tabindex: "-1",
747
+ onClick: t[0] || (t[0] = (...i) => n.handleClick && n.handleClick(...i))
748
+ }, [
749
+ n.parentMenu.type.name === "ElMenu" && n.rootMenu.props.collapse && n.$slots.title ? (f(), A(s, {
750
+ key: 0,
751
+ effect: n.rootMenu.props.popperEffect,
752
+ placement: "right",
753
+ "fallback-placements": ["left"],
754
+ persistent: ""
755
+ }, {
756
+ content: _(() => [
757
+ ee(n.$slots, "title")
758
+ ]),
759
+ default: _(() => [
760
+ R("div", {
761
+ class: W(n.nsMenu.be("tooltip", "trigger"))
762
+ }, [
763
+ ee(n.$slots, "default")
764
+ ], 2)
765
+ ]),
766
+ _: 3
767
+ }, 8, ["effect"])) : (f(), y(K, { key: 1 }, [
768
+ ee(n.$slots, "default"),
769
+ ee(n.$slots, "title")
770
+ ], 64))
771
+ ], 2);
772
+ }
773
+ var Tt = /* @__PURE__ */ Ne(Bn, [["render", Vn], ["__file", "menu-item.vue"]]);
774
+ const zn = {
775
+ title: String
776
+ }, Un = "ElMenuItemGroup", Wn = O({
777
+ name: Un,
778
+ props: zn,
779
+ setup() {
780
+ return {
781
+ ns: se("menu-item-group")
782
+ };
783
+ }
784
+ });
785
+ function Yn(n, t, e, o, a, r) {
786
+ return f(), y("li", {
787
+ class: W(n.ns.b())
788
+ }, [
789
+ R("div", {
790
+ class: W(n.ns.e("title"))
791
+ }, [
792
+ n.$slots.title ? ee(n.$slots, "title", { key: 1 }) : (f(), y(K, { key: 0 }, [
793
+ Q(de(n.title), 1)
794
+ ], 64))
795
+ ], 2),
796
+ R("ul", null, [
797
+ ee(n.$slots, "default")
798
+ ])
799
+ ], 2);
800
+ }
801
+ var It = /* @__PURE__ */ Ne(Wn, [["render", Yn], ["__file", "menu-item-group.vue"]]);
802
+ const Et = bt(Ln, {
803
+ MenuItem: Tt,
804
+ MenuItemGroup: It,
805
+ SubMenu: at
806
+ }), Mt = Ge(Tt);
807
+ Ge(It);
808
+ const Gn = Ge(at), Zn = /* @__PURE__ */ O({
809
+ __name: "index",
810
+ props: {
811
+ isActive: {
812
+ required: !0,
813
+ type: Boolean,
814
+ default: !1
815
+ }
816
+ },
817
+ emits: ["toggleClick"],
818
+ setup(n, { emit: t }) {
819
+ const e = t;
820
+ function o() {
821
+ e("toggleClick");
822
+ }
823
+ return (a, r) => {
824
+ const s = Re;
825
+ return f(), y("div", {
826
+ class: "px-[15px] flex items-center justify-center color-[var(--el-text-color-regular)]",
827
+ onClick: o
828
+ }, [
829
+ b(s, {
830
+ class: W(["hamburger", { "is-active": n.isActive }]),
831
+ "icon-class": "shrink"
832
+ }, null, 8, ["class"])
833
+ ]);
834
+ };
835
+ }
836
+ }), At = /* @__PURE__ */ $(Zn, [["__scopeId", "data-v-49d8a6fe"]]), Qn = /* @__PURE__ */ O({
837
+ __name: "index",
838
+ setup(n) {
839
+ const t = ne(), e = M([
840
+ { label: "默认", value: "default" },
841
+ { label: "大型", value: "large" },
842
+ { label: "小型", value: "small" }
843
+ ]);
844
+ function o(a) {
845
+ t.changeSize(a), yt.success("切换布局大小成功");
846
+ }
847
+ return (a, r) => {
848
+ const s = Re, i = wt, l = St, d = Rt;
849
+ return f(), A(d, {
850
+ trigger: "click",
851
+ onCommand: o
852
+ }, {
853
+ dropdown: _(() => [
854
+ b(l, null, {
855
+ default: _(() => [
856
+ (f(!0), y(K, null, ve(v(e), (c) => (f(), A(i, {
857
+ key: c.value,
858
+ disabled: v(t).size == c.value,
859
+ command: c.value
860
+ }, {
861
+ default: _(() => [
862
+ Q(de(c.label), 1)
863
+ ]),
864
+ _: 2
865
+ }, 1032, ["disabled", "command"]))), 128))
866
+ ]),
867
+ _: 1
868
+ })
869
+ ]),
870
+ default: _(() => [
871
+ R("div", null, [
872
+ b(s, { "icon-class": "size" })
873
+ ])
874
+ ]),
875
+ _: 1
876
+ });
877
+ };
878
+ }
879
+ }), Jn = {
880
+ key: 0,
881
+ class: "setting-container"
882
+ }, $n = { class: "avatar-container" }, Fn = ["src"], jn = ["onClick"], Hn = /* @__PURE__ */ O({
883
+ __name: "NavRight",
884
+ setup(n) {
885
+ const t = ne(), e = Ze(), o = be(), a = Je(), { device: r } = ot(t), s = M(!1), i = M(!1), l = M(!1), d = M([]), c = Ue([
886
+ {
887
+ label: "用户名",
888
+ prop: "loginName",
889
+ width: "100",
890
+ sortable: !0,
891
+ isColumn: !0
892
+ },
893
+ {
894
+ label: "用户昵称",
895
+ prop: "nickName",
896
+ width: "100",
897
+ isColumn: !0
898
+ },
899
+ {
900
+ label: "手机号",
901
+ prop: "mobilePhone",
902
+ width: "180",
903
+ isColumn: !0,
904
+ sortable: !0
905
+ },
906
+ {
907
+ label: "邮箱",
908
+ prop: "email",
909
+ width: "180",
910
+ isColumn: !0,
911
+ sortable: !0
912
+ },
913
+ {
914
+ label: "查看/隐藏",
915
+ width: "100",
916
+ slotName: "encryption",
917
+ columnType: "slot",
918
+ isColumn: !0
919
+ },
920
+ {
921
+ label: "操作",
922
+ width: "100",
923
+ slotName: "operation",
924
+ columnType: "slot",
925
+ fixed: "right",
926
+ isColumn: !0
927
+ }
928
+ ]), { isFullscreen: u, toggle: h } = en();
929
+ function P(C) {
930
+ i.value = C;
931
+ }
932
+ function w() {
933
+ s.value = !0, l.value = !0, tn().then(({ data: C }) => {
934
+ console.log(C), l.value = !1, d.value = C.results;
935
+ });
936
+ }
937
+ function D(C) {
938
+ it.confirm("确定切换用户身份吗?", "提示", {
939
+ confirmButtonText: "确定",
940
+ cancelButtonText: "取消",
941
+ type: "warning"
942
+ }).then(() => {
943
+ console.log(be()), nn(C.userId).then(async (L) => {
944
+ if (L.status === 200) {
945
+ be().user.roleCodes = [], be().user.permCodes = [];
946
+ const { roleCodes: G } = await be().getRoleInfo(), Z = await be().getUserInfo();
947
+ await on().generateRoutes(G, Z), yt({
948
+ message: "切换成功",
949
+ type: "success"
950
+ }), s.value = !1;
951
+ }
952
+ });
953
+ });
954
+ }
955
+ function x() {
956
+ it.confirm("确定注销并退出系统吗?", "提示", {
957
+ confirmButtonText: "确定",
958
+ cancelButtonText: "取消",
959
+ type: "warning"
960
+ }).then(() => {
961
+ o.logout().then(() => {
962
+ e.delAllViews();
963
+ }).then(() => {
964
+ a.push("/login");
965
+ });
966
+ }).catch(() => {
967
+ });
968
+ }
969
+ return (C, L) => {
970
+ const G = Re, Z = Qn, H = Qe, B = cn, q = wt, F = xe("router-link"), j = St, X = Rt, fe = rn, le = ln, pe = Ut("hasPerm");
971
+ return f(), y(K, null, [
972
+ v(r) !== "mobile" ? (f(), y("div", Jn, [
973
+ R("div", {
974
+ class: "setting-item",
975
+ onClick: L[0] || (L[0] = //@ts-ignore
976
+ (...g) => v(h) && v(h)(...g))
977
+ }, [
978
+ b(G, {
979
+ "icon-class": v(u) ? "exit-fullscreen" : "fullscreen"
980
+ }, null, 8, ["icon-class"])
981
+ ]),
982
+ b(H, {
983
+ content: "布局大小",
984
+ effect: "dark",
985
+ placement: "bottom"
986
+ }, {
987
+ default: _(() => [
988
+ b(Z, { class: "setting-item" })
989
+ ]),
990
+ _: 1
991
+ })
992
+ ])) : U("", !0),
993
+ b(X, { trigger: "click" }, {
994
+ dropdown: _(() => [
995
+ b(j, null, {
996
+ default: _(() => [
997
+ b(F, { to: "/" }, {
998
+ default: _(() => [
999
+ b(q, null, {
1000
+ default: _(() => [
1001
+ Q("首页")
1002
+ ]),
1003
+ _: 1
1004
+ })
1005
+ ]),
1006
+ _: 1
1007
+ }),
1008
+ b(q, null, {
1009
+ default: _(() => [
1010
+ b(F, { to: "/my/profile" }, {
1011
+ default: _(() => [
1012
+ Q("个人中心")
1013
+ ]),
1014
+ _: 1
1015
+ })
1016
+ ]),
1017
+ _: 1
1018
+ }),
1019
+ b(q, {
1020
+ onClick: L[1] || (L[1] = (g) => i.value = !0)
1021
+ }, {
1022
+ default: _(() => [
1023
+ Q(" 修改密码 ")
1024
+ ]),
1025
+ _: 1
1026
+ }),
1027
+ b(q, { onClick: w }, {
1028
+ default: _(() => [
1029
+ Q("切换身份")
1030
+ ]),
1031
+ _: 1
1032
+ }),
1033
+ b(q, {
1034
+ divided: "",
1035
+ onClick: x
1036
+ }, {
1037
+ default: _(() => [
1038
+ Q("退出登录")
1039
+ ]),
1040
+ _: 1
1041
+ })
1042
+ ]),
1043
+ _: 1
1044
+ })
1045
+ ]),
1046
+ default: _(() => [
1047
+ R("div", $n, [
1048
+ R("img", {
1049
+ src: v(o).user.avatar
1050
+ }, null, 8, Fn),
1051
+ b(B, { class: "w-3 h-3" })
1052
+ ])
1053
+ ]),
1054
+ _: 1
1055
+ }),
1056
+ b(le, {
1057
+ title: "切换身份",
1058
+ modelValue: s.value,
1059
+ "onUpdate:modelValue": L[2] || (L[2] = (g) => s.value = g),
1060
+ width: "700px"
1061
+ }, {
1062
+ default: _(() => [
1063
+ b(fe, {
1064
+ class: "table-top",
1065
+ ref: "multipleTableRef",
1066
+ "row-keys": "userId",
1067
+ "list-loading": l.value,
1068
+ "table-data": d.value,
1069
+ "table-label": c
1070
+ }, {
1071
+ operation: _((g) => [
1072
+ he((f(), y("span", {
1073
+ class: "el-button-color",
1074
+ onClick: (S) => D(g.data.row)
1075
+ }, [
1076
+ Q(" 切换 ")
1077
+ ], 8, jn)), [
1078
+ [pe, ["rbac:user:switch"]]
1079
+ ])
1080
+ ]),
1081
+ _: 1
1082
+ }, 8, ["list-loading", "table-data", "table-label"])
1083
+ ]),
1084
+ _: 1
1085
+ }, 8, ["modelValue"]),
1086
+ i.value ? (f(), A(mn, {
1087
+ key: 1,
1088
+ "pwd-visible": i.value,
1089
+ onDialogActionChange: P
1090
+ }, null, 8, ["pwd-visible"])) : U("", !0)
1091
+ ], 64);
1092
+ };
1093
+ }
1094
+ }), Nt = /* @__PURE__ */ $(Hn, [["__scopeId", "data-v-0c82d9ad"]]);
1095
+ function Kn(n) {
1096
+ for (var t = [], e = 0; e < n.length; ) {
1097
+ var o = n[e];
1098
+ if (o === "*" || o === "+" || o === "?") {
1099
+ t.push({ type: "MODIFIER", index: e, value: n[e++] });
1100
+ continue;
1101
+ }
1102
+ if (o === "\\") {
1103
+ t.push({ type: "ESCAPED_CHAR", index: e++, value: n[e++] });
1104
+ continue;
1105
+ }
1106
+ if (o === "{") {
1107
+ t.push({ type: "OPEN", index: e, value: n[e++] });
1108
+ continue;
1109
+ }
1110
+ if (o === "}") {
1111
+ t.push({ type: "CLOSE", index: e, value: n[e++] });
1112
+ continue;
1113
+ }
1114
+ if (o === ":") {
1115
+ for (var a = "", r = e + 1; r < n.length; ) {
1116
+ var s = n.charCodeAt(r);
1117
+ if (
1118
+ // `0-9`
1119
+ s >= 48 && s <= 57 || // `A-Z`
1120
+ s >= 65 && s <= 90 || // `a-z`
1121
+ s >= 97 && s <= 122 || // `_`
1122
+ s === 95
1123
+ ) {
1124
+ a += n[r++];
1125
+ continue;
1126
+ }
1127
+ break;
1128
+ }
1129
+ if (!a)
1130
+ throw new TypeError("Missing parameter name at ".concat(e));
1131
+ t.push({ type: "NAME", index: e, value: a }), e = r;
1132
+ continue;
1133
+ }
1134
+ if (o === "(") {
1135
+ var i = 1, l = "", r = e + 1;
1136
+ if (n[r] === "?")
1137
+ throw new TypeError('Pattern cannot start with "?" at '.concat(r));
1138
+ for (; r < n.length; ) {
1139
+ if (n[r] === "\\") {
1140
+ l += n[r++] + n[r++];
1141
+ continue;
1142
+ }
1143
+ if (n[r] === ")") {
1144
+ if (i--, i === 0) {
1145
+ r++;
1146
+ break;
1147
+ }
1148
+ } else if (n[r] === "(" && (i++, n[r + 1] !== "?"))
1149
+ throw new TypeError("Capturing groups are not allowed at ".concat(r));
1150
+ l += n[r++];
1151
+ }
1152
+ if (i)
1153
+ throw new TypeError("Unbalanced pattern at ".concat(e));
1154
+ if (!l)
1155
+ throw new TypeError("Missing pattern at ".concat(e));
1156
+ t.push({ type: "PATTERN", index: e, value: l }), e = r;
1157
+ continue;
1158
+ }
1159
+ t.push({ type: "CHAR", index: e, value: n[e++] });
1160
+ }
1161
+ return t.push({ type: "END", index: e, value: "" }), t;
1162
+ }
1163
+ function Xn(n, t) {
1164
+ t === void 0 && (t = {});
1165
+ for (var e = Kn(n), o = t.prefixes, a = o === void 0 ? "./" : o, r = "[^".concat(no(t.delimiter || "/#?"), "]+?"), s = [], i = 0, l = 0, d = "", c = function(B) {
1166
+ if (l < e.length && e[l].type === B)
1167
+ return e[l++].value;
1168
+ }, u = function(B) {
1169
+ var q = c(B);
1170
+ if (q !== void 0)
1171
+ return q;
1172
+ var F = e[l], j = F.type, X = F.index;
1173
+ throw new TypeError("Unexpected ".concat(j, " at ").concat(X, ", expected ").concat(B));
1174
+ }, h = function() {
1175
+ for (var B = "", q; q = c("CHAR") || c("ESCAPED_CHAR"); )
1176
+ B += q;
1177
+ return B;
1178
+ }; l < e.length; ) {
1179
+ var P = c("CHAR"), w = c("NAME"), D = c("PATTERN");
1180
+ if (w || D) {
1181
+ var x = P || "";
1182
+ a.indexOf(x) === -1 && (d += x, x = ""), d && (s.push(d), d = ""), s.push({
1183
+ name: w || i++,
1184
+ prefix: x,
1185
+ suffix: "",
1186
+ pattern: D || r,
1187
+ modifier: c("MODIFIER") || ""
1188
+ });
1189
+ continue;
1190
+ }
1191
+ var C = P || c("ESCAPED_CHAR");
1192
+ if (C) {
1193
+ d += C;
1194
+ continue;
1195
+ }
1196
+ d && (s.push(d), d = "");
1197
+ var L = c("OPEN");
1198
+ if (L) {
1199
+ var x = h(), G = c("NAME") || "", Z = c("PATTERN") || "", H = h();
1200
+ u("CLOSE"), s.push({
1201
+ name: G || (Z ? i++ : ""),
1202
+ pattern: G && !Z ? r : Z,
1203
+ prefix: x,
1204
+ suffix: H,
1205
+ modifier: c("MODIFIER") || ""
1206
+ });
1207
+ continue;
1208
+ }
1209
+ u("END");
1210
+ }
1211
+ return s;
1212
+ }
1213
+ function eo(n, t) {
1214
+ return to(Xn(n, t), t);
1215
+ }
1216
+ function to(n, t) {
1217
+ t === void 0 && (t = {});
1218
+ var e = oo(t), o = t.encode, a = o === void 0 ? function(l) {
1219
+ return l;
1220
+ } : o, r = t.validate, s = r === void 0 ? !0 : r, i = n.map(function(l) {
1221
+ if (typeof l == "object")
1222
+ return new RegExp("^(?:".concat(l.pattern, ")$"), e);
1223
+ });
1224
+ return function(l) {
1225
+ for (var d = "", c = 0; c < n.length; c++) {
1226
+ var u = n[c];
1227
+ if (typeof u == "string") {
1228
+ d += u;
1229
+ continue;
1230
+ }
1231
+ var h = l ? l[u.name] : void 0, P = u.modifier === "?" || u.modifier === "*", w = u.modifier === "*" || u.modifier === "+";
1232
+ if (Array.isArray(h)) {
1233
+ if (!w)
1234
+ throw new TypeError('Expected "'.concat(u.name, '" to not repeat, but got an array'));
1235
+ if (h.length === 0) {
1236
+ if (P)
1237
+ continue;
1238
+ throw new TypeError('Expected "'.concat(u.name, '" to not be empty'));
1239
+ }
1240
+ for (var D = 0; D < h.length; D++) {
1241
+ var x = a(h[D], u);
1242
+ if (s && !i[c].test(x))
1243
+ throw new TypeError('Expected all "'.concat(u.name, '" to match "').concat(u.pattern, '", but got "').concat(x, '"'));
1244
+ d += u.prefix + x + u.suffix;
1245
+ }
1246
+ continue;
1247
+ }
1248
+ if (typeof h == "string" || typeof h == "number") {
1249
+ var x = a(String(h), u);
1250
+ if (s && !i[c].test(x))
1251
+ throw new TypeError('Expected "'.concat(u.name, '" to match "').concat(u.pattern, '", but got "').concat(x, '"'));
1252
+ d += u.prefix + x + u.suffix;
1253
+ continue;
1254
+ }
1255
+ if (!P) {
1256
+ var C = w ? "an array" : "a string";
1257
+ throw new TypeError('Expected "'.concat(u.name, '" to be ').concat(C));
1258
+ }
1259
+ }
1260
+ return d;
1261
+ };
1262
+ }
1263
+ function no(n) {
1264
+ return n.replace(/([.+*?=^!:${}()[\]|/\\])/g, "\\$1");
1265
+ }
1266
+ function oo(n) {
1267
+ return n && n.sensitive ? "" : "i";
1268
+ }
1269
+ const ao = {
1270
+ // 路由国际化
1271
+ route: {
1272
+ dashboard: "Dashboard",
1273
+ systemManage: "System Management",
1274
+ sysUser: "User Management",
1275
+ sysRole: "Role Management",
1276
+ sysMenu: "Menu Management",
1277
+ sysModule: "Module Management",
1278
+ sysOperation: "Operation Management",
1279
+ sysPerm: "Permission Management",
1280
+ sysDept: "Dept Management",
1281
+ sysJob: "Job Management",
1282
+ sysLog: "Log Management",
1283
+ sysOplog: "Operation Log ",
1284
+ sysUserLog: "Security Log"
1285
+ },
1286
+ // 登录页面国际化
1287
+ login: {
1288
+ username: "Username",
1289
+ password: "Password",
1290
+ login: "Login",
1291
+ captchaCode: "Verify Code"
1292
+ },
1293
+ // 导航栏国际化
1294
+ navbar: {
1295
+ dashboard: "Dashboard",
1296
+ logout: "Logout",
1297
+ document: "Document",
1298
+ gitee: "Gitee"
1299
+ },
1300
+ common: {
1301
+ search: "Query",
1302
+ reset: "Reset",
1303
+ add: "Add",
1304
+ batchDelete: "Batch Delete",
1305
+ enable: "Enable",
1306
+ disable: "Disable",
1307
+ import: "Import",
1308
+ export: "Export",
1309
+ print: "Print",
1310
+ lock: "Lock",
1311
+ edit: "Edit",
1312
+ delete: "Delete",
1313
+ more: "More",
1314
+ resetPwd: "Reset Password",
1315
+ switch: "Switch",
1316
+ operate: "Operate",
1317
+ view: "View",
1318
+ show: "Show",
1319
+ hide: "Hide",
1320
+ confirm: "Confirm",
1321
+ cancel: "Cancel",
1322
+ unbind: "Unbind",
1323
+ uploadFiles: "Upload files",
1324
+ dragFiles: "Drag Files Here, Or",
1325
+ uploadEvent: "Click To Upload",
1326
+ uploadSuccess: "Upload Successful",
1327
+ tableSet: "List Settings",
1328
+ searchField: "Search Fields",
1329
+ chooseDelete: "Please Select The Item That Needs To Be Deleted",
1330
+ confirmBatchDelete: "Are You Sure To Delete The Selection Item?",
1331
+ confirmDelete: "Are you sure to delete this line?",
1332
+ successDelete: "Successfully Deleted",
1333
+ deleteSuccess: "Delete Successful",
1334
+ stripData: "Pieces Of Data",
1335
+ chooseEnable: "Please Select The Item That Needs To Be Enabled",
1336
+ chooseDisable: "Please Select The Item That Needs To Be Disabled",
1337
+ confirmEnable: "Are You Sure To Enable The Selection Option?",
1338
+ confirmDisable: "Are You Sure To Disable The Selection Option?",
1339
+ successEnable: "Successfully Enabled",
1340
+ successDisable: "Successfully Disabled",
1341
+ submitSuccess: "Submitted Successfully",
1342
+ confirmUnbind: "Are You Sure You Want To Unbind It?",
1343
+ successUnbind: "Unbind Successful"
1344
+ },
1345
+ // 用户管理的相关参数
1346
+ sysUser: {
1347
+ directory: "DirectoryID",
1348
+ username: "User Name",
1349
+ password: "Password",
1350
+ nickname: "Nick Name",
1351
+ fullName: "Full Name",
1352
+ gender: "Gender",
1353
+ birthday: "Date Of Birth",
1354
+ phoneNumber: "Phone Number",
1355
+ email: "Email",
1356
+ department: "Department",
1357
+ position: "Position",
1358
+ userAuditStatus: "User Audit Status",
1359
+ role: "Role",
1360
+ state: "State",
1361
+ randomPwd: "Obtain Random Password",
1362
+ type: "Type",
1363
+ reviewed: "Reviewed",
1364
+ notReviewed: "Not Reviewed",
1365
+ unlock: "Unlock",
1366
+ userTemplate: "User Template",
1367
+ templateDownload: "User Import Template Download",
1368
+ directoryRequired: "Please Select The Directory You Belong To",
1369
+ usernameRequired: "Enter One User Name",
1370
+ passwordRequired: "Please Enter Password",
1371
+ nicknameRequired: "Please Enter Your Nickname",
1372
+ fullNameRequired: "Please Enter Your Name ",
1373
+ genderRequired: "Please Select Gender",
1374
+ birthdayRequired: "Please Select A Date Of Birth",
1375
+ phoneNumberRequired: "Please Enter Your Phone Number",
1376
+ emailRequired: "Please Enter Your Email Address",
1377
+ departmentRequired: "Please Select The Department You Belong To",
1378
+ positionRequired: "Please Select The Position You Belong To",
1379
+ roleRequired: "Please Select Role",
1380
+ stateRequired: "Please Select A Status",
1381
+ correctPhone: "Please Enter The Correct Phone Number",
1382
+ correctEmail: "Please Enter The Correct Email Address",
1383
+ exists: "Already Exists"
1384
+ },
1385
+ // 角色管理的相关参数
1386
+ sysRole: {
1387
+ code: "Role Code",
1388
+ name: "Role Name",
1389
+ parent: "Superior Role",
1390
+ module: "Module",
1391
+ mutualType: "Mutually Exclusive Type",
1392
+ mutualRole: "Mutually Exclusion Roles",
1393
+ operatePerm: "Operation Permissions",
1394
+ description: "Role Description",
1395
+ sort: "Sort",
1396
+ checkAll: "Check All",
1397
+ checkNoAll: "Deselect All",
1398
+ codeExist: "Role Code Already Exists",
1399
+ codeRequired: "Please Enter The Role Code",
1400
+ nameRequired: "Please Enter The Role Name",
1401
+ parentRequired: "Please Select A Superior Role",
1402
+ moduleRequired: "Please Select The Module You Belong To",
1403
+ mutualTypeRequired: "Please Select The Mutually Exclusive Type",
1404
+ mutualRoleRequired: "Please Select Mutually Exclusive Roles",
1405
+ descriptionRequired: "Please Enter A Role Description"
1406
+ },
1407
+ // 资源管理的相关参数
1408
+ sysMenu: {
1409
+ module: "Module",
1410
+ parent: "Superior Resources",
1411
+ type: "Resource Type",
1412
+ icon: "Resource Icon",
1413
+ name: "Resource Name",
1414
+ target: "Target",
1415
+ routeName: "Routing Name",
1416
+ url: "Routing Path",
1417
+ status: "Resource Status ",
1418
+ operatePerm: "Operation Permissions",
1419
+ checkAll: "Check All",
1420
+ checkNoAll: "Deselect All",
1421
+ sort: "Sort",
1422
+ templateDownload: "Download Resource Import Template",
1423
+ menuTemplate: "Resource Template",
1424
+ moduleRequired: "Please Select The Module You Belong To",
1425
+ parentRequired: "Please Select Superior Resources",
1426
+ nameRequired: "Please Enter The Resource Name",
1427
+ routeNameRequired: "Please Enter The Routing Name",
1428
+ urlRequired: "Please Enter The Routing Path",
1429
+ statusRequired: "Please Select Resource Status",
1430
+ targetRequired: "Please Enter The Target, So: _blank ",
1431
+ urlExist: "The Component Path Already Exists",
1432
+ urlExistSlash: "The Routing Path Must Start With “/”",
1433
+ selectIcon: "Click On The Selection Icon",
1434
+ searchIcon: "Search Icon "
1435
+ },
1436
+ // 模块管理的相关参数
1437
+ sysModule: {
1438
+ code: "Module code",
1439
+ name: "Module Name",
1440
+ description: "Module Description",
1441
+ sort: "Sort",
1442
+ codeRequired: "Please Enter The Module Code",
1443
+ nameRequired: "Please Enter The Module Name",
1444
+ descriptionRequired: "Please Enter Module Description"
1445
+ },
1446
+ // 操作管理的相关参数
1447
+ sysOperation: {
1448
+ code: "Operation Code",
1449
+ name: "Operation Name",
1450
+ sort: "Sort",
1451
+ codeRequired: "Please Enter The Operation Code",
1452
+ nameRequired: "Please Enter The Operation Name"
1453
+ },
1454
+ // 权限管理的相关参数
1455
+ sysPerm: {
1456
+ code: "Permission Code",
1457
+ name: "Permission Name",
1458
+ codeRequired: "Please Enter The Permission Code",
1459
+ nameRequired: "Please Enter The Permission Name"
1460
+ },
1461
+ // 部门管理的相关参数
1462
+ sysDept: {
1463
+ code: "Department Code",
1464
+ type: "Department Type",
1465
+ name: "Department Name",
1466
+ parent: "Superior Department",
1467
+ description: "Department Description",
1468
+ status: "Department Status",
1469
+ sort: "Sort",
1470
+ deptTemplate: "Department Template",
1471
+ templateDownload: "Download Department Import Template",
1472
+ codeRequired: "Please Enter The Department Code",
1473
+ nameRequired: "Please Enter The Department Name",
1474
+ parentRequired: "Please Select A Superior Department",
1475
+ descriptionRequired: "Please Enter A Department Description",
1476
+ statusRequired: "Please Select Department Status"
1477
+ },
1478
+ // 岗位管理的相关参数
1479
+ sysJob: {
1480
+ code: "Job Code",
1481
+ name: "Position",
1482
+ module: "Module",
1483
+ operatePerm: "Operation Permissions",
1484
+ description: "Job Description",
1485
+ sort: "Sort",
1486
+ checkAll: "Check All",
1487
+ checkNoAll: "Deselect All",
1488
+ codeRequired: "Please Enter The Job Code",
1489
+ nameRequired: "Please Enter The Position Name",
1490
+ moduleRequired: "Please Select The Module You Belong To",
1491
+ descriptionRequired: "Please Enter A Job Description"
1492
+ },
1493
+ // 操作日志的相关参数
1494
+ sysOplog: {
1495
+ name: "Log Name",
1496
+ level: "Log Level",
1497
+ inform: "Log Information",
1498
+ content: "Log Content",
1499
+ userIp: "User IP",
1500
+ proxyIp: "Proxy Ip",
1501
+ operator: "Operator",
1502
+ time: "Time",
1503
+ year: "Year",
1504
+ choose: "Please Select Delete Logs Older Than N Years",
1505
+ nameRequired: "Please Enter The Log Name",
1506
+ levelRequired: "Please Enter The Log Level",
1507
+ informRequired: "Please Enter Log Information",
1508
+ monthRequired: "Please Select The Month",
1509
+ startTimeReuired: "Please Select The Start Time",
1510
+ endTimeRequired: "Please Select The End Time",
1511
+ yearRequired: "Please Select The Year",
1512
+ confirmDelete: "Are You Sure To Delete The Operation Log?"
1513
+ },
1514
+ // 安全日志的相关参数
1515
+ sysUserLog: {
1516
+ name: "Log Name",
1517
+ inform: "Log Information",
1518
+ userIp: "User IP",
1519
+ proxyIp: "Proxy Ip",
1520
+ deviceId: "Device Identification ID",
1521
+ operator: "Operator",
1522
+ time: "Time",
1523
+ year: "Year",
1524
+ choose: "Please Choose",
1525
+ nameRequired: "Please Enter The Log Name",
1526
+ monthRequired: "Please Select The Month",
1527
+ startTimeReuired: "Please Select The Start Time",
1528
+ endTimeRequired: "Please Select The End Time",
1529
+ yearRequired: "Please Select The Year",
1530
+ confirmDelete: "Are You Sure To Delete The Security Log?"
1531
+ },
1532
+ // 密码
1533
+ password: {
1534
+ newPwd: "New Password",
1535
+ confirmPwd: "Confirm Password",
1536
+ newPwdRequired: "Please Enter A New Password ",
1537
+ confirmPwdRequired: "Please Enter A Confirmation Password",
1538
+ pwdRules: "Please Enter A Password Consisting Of 8-20 Digits, Including Numbers, Uppercase And Lowercase Letters, And Special Symbols",
1539
+ comparePwd: "Two Passwords Do Not Match",
1540
+ successResetPwd: "Password Reset Successful"
1541
+ }
1542
+ }, so = {
1543
+ // 路由国际化
1544
+ route: {
1545
+ dashboard: "首页",
1546
+ systemManage: "系统管理",
1547
+ sysUser: "用户管理",
1548
+ sysRole: "角色管理",
1549
+ sysMenu: "资源管理",
1550
+ sysModule: "模块管理",
1551
+ sysOperation: "操作管理",
1552
+ sysPerm: "权限管理",
1553
+ sysDept: "部门管理",
1554
+ sysJob: "岗位管理",
1555
+ sysLog: "日志管理",
1556
+ sysOplog: "操作日志",
1557
+ sysUserLog: "安全日志"
1558
+ },
1559
+ // 登录页面国际化
1560
+ login: {
1561
+ username: "用户名",
1562
+ password: "密码",
1563
+ login: "登 录",
1564
+ captchaCode: "验证码"
1565
+ },
1566
+ common: {
1567
+ search: "查询",
1568
+ reset: "重置",
1569
+ add: "新增",
1570
+ batchDelete: "批量删除",
1571
+ enable: "启用",
1572
+ disable: "禁用",
1573
+ import: "导入",
1574
+ export: "导出",
1575
+ print: "打印",
1576
+ lock: "锁定",
1577
+ edit: "编辑",
1578
+ delete: "删除",
1579
+ more: "更多",
1580
+ resetPwd: "重置密码",
1581
+ switch: "切换",
1582
+ operate: "操作",
1583
+ view: "查看",
1584
+ show: "显示",
1585
+ hide: "隐藏",
1586
+ confirm: "确认",
1587
+ cancel: "取消",
1588
+ unbind: "解绑",
1589
+ uploadFiles: "上传文件",
1590
+ dragFiles: "将文件拖到此处,或",
1591
+ uploadEvent: "点击上传",
1592
+ uploadSuccess: "上传成功",
1593
+ tableSet: "列表设置",
1594
+ searchField: "搜索字段",
1595
+ chooseDelete: "请选择需要删除的项",
1596
+ confirmBatchDelete: "确认删除选择项吗?",
1597
+ confirmDelete: "确认删除此行吗?",
1598
+ successDelete: "成功删除",
1599
+ deleteSuccess: "删除成功",
1600
+ stripData: "条数据",
1601
+ chooseEnable: "请选择需要启用的项",
1602
+ chooseDisable: "请选择需要禁用的项",
1603
+ confirmEnable: "确认启用选择项吗?",
1604
+ confirmDisable: "确认禁用选择项吗?",
1605
+ successEnable: "成功启用",
1606
+ successDisable: "成功禁用",
1607
+ submitSuccess: "提交成功",
1608
+ confirmUnbind: "确认要解绑吗?",
1609
+ successUnbind: "解绑成功"
1610
+ },
1611
+ // 用户管理的相关参数
1612
+ sysUser: {
1613
+ username: "用户名",
1614
+ directory: "目录ID",
1615
+ password: "密码",
1616
+ nickname: "昵称",
1617
+ fullName: "姓名",
1618
+ gender: "性别",
1619
+ birthday: "出生日期",
1620
+ phoneNumber: "手机号",
1621
+ email: "邮箱",
1622
+ department: "所属部门",
1623
+ position: "所属岗位",
1624
+ userAuditStatus: "用户审核状态",
1625
+ role: "角色",
1626
+ state: "状态",
1627
+ isDeleted: "是否显示已删除数据",
1628
+ show: "显示",
1629
+ hide: "不显示",
1630
+ randomPwd: "获取随机密码",
1631
+ type: "类型",
1632
+ userTemplate: "用户模板",
1633
+ reviewed: "已审核",
1634
+ notReviewed: "未审核",
1635
+ unlock: "解锁",
1636
+ templateDownload: "用户导入模板下载",
1637
+ isDeletedRequired: "请选择是否显示已删除数据",
1638
+ directoryRequired: "请选择所属目录",
1639
+ usernameRequired: "请输入用户名",
1640
+ passwordRequired: "请输入密码",
1641
+ nicknameRequired: "请输入用户昵称",
1642
+ fullNameRequired: "请输入姓名",
1643
+ genderRequired: "请选择性别",
1644
+ birthdayRequired: "请选择出生日期",
1645
+ phoneNumberRequired: "请输入手机号",
1646
+ emailRequired: "请输入邮箱",
1647
+ departmentRequired: "请选择所属部门",
1648
+ positionRequired: "请选择所属岗位",
1649
+ roleRequired: "请选择角色",
1650
+ stateRequired: "请选择状态",
1651
+ correctPhone: "请输入正确的手机号",
1652
+ correctEmail: "请输入正确的邮箱",
1653
+ exists: "已存在"
1654
+ },
1655
+ // 角色管理的相关参数
1656
+ sysRole: {
1657
+ code: "角色编码",
1658
+ name: "角色名称",
1659
+ parent: "上级角色",
1660
+ module: "所属模块",
1661
+ mutualType: "互斥类型",
1662
+ mutualRole: "互斥角色",
1663
+ operatePerm: "操作权限",
1664
+ description: "角色描述",
1665
+ sort: "排序",
1666
+ checkAll: "全选",
1667
+ checkNoAll: "全不选",
1668
+ codeExist: "此编码已存在",
1669
+ codeRequired: "请输入角色编码",
1670
+ nameRequired: "请输入角色名称",
1671
+ parentRequired: "请选择上级角色",
1672
+ moduleRequired: "请选择所属模块",
1673
+ mutualTypeRequired: "请选择互斥类型",
1674
+ mutualRoleRequired: "请选择互斥角色",
1675
+ descriptionRequired: "请输入角色描述"
1676
+ },
1677
+ // 资源管理的相关参数
1678
+ sysMenu: {
1679
+ module: "所属模块",
1680
+ parent: "上级资源",
1681
+ type: "资源类型",
1682
+ icon: "资源图标",
1683
+ name: "资源名称",
1684
+ target: "target",
1685
+ routeName: "路由名称",
1686
+ url: "路由路径",
1687
+ status: "资源状态",
1688
+ operatePerm: "操作权限",
1689
+ sort: "排序",
1690
+ checkAll: "全选",
1691
+ checkNoAll: "全不选",
1692
+ templateDownload: "资源导入模板下载",
1693
+ menuTemplate: "资源模板",
1694
+ moduleRequired: "请选择所属模块",
1695
+ parentRequired: "请选择上级资源",
1696
+ nameRequired: "请输入资源名称",
1697
+ routeNameRequired: "请输入路由名称",
1698
+ urlRequired: "请输入路由路径",
1699
+ urlExistSlash: "该路由路径必须以“/”开头",
1700
+ statusRequired: "请选择资源状态",
1701
+ targetRequired: "请输入跳转方式,如:_blank",
1702
+ urlExist: "该组件路径已存在",
1703
+ selectIcon: "点击选择图标",
1704
+ searchIcon: "搜索图标"
1705
+ },
1706
+ // 模块管理的相关参数
1707
+ sysModule: {
1708
+ code: "模块编码",
1709
+ name: "模块名称",
1710
+ description: "模块描述",
1711
+ sort: "排序",
1712
+ codeRequired: "请输入模块编码",
1713
+ nameRequired: "请输入模块名称",
1714
+ descriptionRequired: "请输入模块描述"
1715
+ },
1716
+ // 操作管理的相关参数
1717
+ sysOperation: {
1718
+ code: "操作编码",
1719
+ name: "操作名称",
1720
+ sort: "排序",
1721
+ codeRequired: "请输入操作编码",
1722
+ nameRequired: "请输入操作名称"
1723
+ },
1724
+ // 权限管理的相关参数
1725
+ sysPerm: {
1726
+ code: "权限编码",
1727
+ name: "权限名称",
1728
+ codeRequired: "请输入权限编码",
1729
+ nameRequired: "请输入权限名称"
1730
+ },
1731
+ // 部门管理的相关参数
1732
+ sysDept: {
1733
+ code: "部门编码",
1734
+ type: "部门类型",
1735
+ name: "部门名称",
1736
+ parent: "上级部门",
1737
+ description: "部门描述",
1738
+ status: "部门状态",
1739
+ sort: "排序",
1740
+ deptTemplate: "部门模板",
1741
+ templateDownload: "部门导入模板下载",
1742
+ codeRequired: "请输入部门编码",
1743
+ nameRequired: "请输入部门名称",
1744
+ parentRequired: "请选择上级部门",
1745
+ descriptionRequired: "请输入部门描述",
1746
+ statusRequired: "请选择部门状态"
1747
+ },
1748
+ // 岗位管理的相关参数
1749
+ sysJob: {
1750
+ code: "岗位编码",
1751
+ name: "岗位名称",
1752
+ module: "所属模块",
1753
+ operatePerm: "操作权限",
1754
+ description: "岗位描述",
1755
+ sort: "排序",
1756
+ checkAll: "全选",
1757
+ checkNoAll: "全不选",
1758
+ codeRequired: "请输入岗位编码",
1759
+ nameRequired: "请输入岗位名称",
1760
+ moduleRequired: "请选择所属模块",
1761
+ descriptionRequired: "请输入岗位描述"
1762
+ },
1763
+ // 操作日志的相关参数
1764
+ sysOplog: {
1765
+ name: "日志名称",
1766
+ level: "日志级别",
1767
+ inform: "日志信息",
1768
+ content: "日志内容",
1769
+ userIp: "用户IP",
1770
+ proxyIp: "代理IP",
1771
+ operator: "操作人",
1772
+ time: "操作时间",
1773
+ year: "年",
1774
+ choose: "请选择删除N年之前的日志",
1775
+ nameRequired: "请输入日志名称",
1776
+ levelRequired: "请输入日志级别",
1777
+ informRequired: "请输入日志信息",
1778
+ monthRequired: "请选择月份",
1779
+ startTimeReuired: "请选择开始时间",
1780
+ endTimeRequired: "请选择结束时间",
1781
+ yearRequired: "请选择年",
1782
+ confirmDelete: "确认删除操作日志吗?"
1783
+ },
1784
+ // 安全日志的相关参数
1785
+ sysUserLog: {
1786
+ name: "日志名称",
1787
+ inform: "日志信息",
1788
+ userIp: "用户IP",
1789
+ proxyIp: "代理IP",
1790
+ deviceId: "设备标识ID",
1791
+ operator: "操作人",
1792
+ time: "操作时间",
1793
+ year: "年",
1794
+ choose: "请选择",
1795
+ info: "信息",
1796
+ nickname: "用户昵称",
1797
+ nameRequired: "请输入日志名称",
1798
+ monthRequired: "请选择月份",
1799
+ startTimeReuired: "请选择开始时间",
1800
+ endTimeRequired: "请选择结束时间",
1801
+ yearRequired: "请选择年",
1802
+ confirmDelete: "确认删除安全日志吗?"
1803
+ },
1804
+ // 密码
1805
+ password: {
1806
+ newPwd: "新密码",
1807
+ confirmPwd: "确认密码",
1808
+ newPwdRequired: "请输入新密码",
1809
+ confirmPwdRequired: "请输入确认密码",
1810
+ pwdRules: "请输入8-20位包含数字,大小写字母,特殊符号的密码",
1811
+ comparePwd: "两次密码不一致",
1812
+ successResetPwd: "密码重置成功"
1813
+ },
1814
+ /****
1815
+ * 业务模块
1816
+ * *************** */
1817
+ // 工会组织架构
1818
+ unionOrg: {
1819
+ orgName: "工会名称",
1820
+ orgShortName: "工会简称",
1821
+ status: "状态",
1822
+ chargePerson: "工会负责人",
1823
+ chargePersonMobile: "联系电话",
1824
+ adminAccount: "管理员账号",
1825
+ orgNameRequired: "请输入工会名称",
1826
+ orgShortNameRequired: "请输入工会简称",
1827
+ statusRequired: "请选择状态"
1828
+ }
1829
+ }, lo = ne(), ro = {
1830
+ "zh-cn": {
1831
+ ...so
1832
+ },
1833
+ en: {
1834
+ ...ao
1835
+ }
1836
+ }, io = fn({
1837
+ legacy: !1,
1838
+ locale: lo.language,
1839
+ messages: ro,
1840
+ globalInjection: !0
1841
+ }), ct = io;
1842
+ function Ee(n) {
1843
+ return ct.global.te("route." + n) ? ct.global.t("route." + n) : n;
1844
+ }
1845
+ const uo = {
1846
+ key: 0,
1847
+ class: "text-[var(--el-disabled-text-color)]"
1848
+ }, co = ["onClick"], mo = /* @__PURE__ */ O({
1849
+ __name: "index",
1850
+ setup(n) {
1851
+ const t = $e(), e = (i) => {
1852
+ const { params: l } = t;
1853
+ return eo(i)(l);
1854
+ }, o = M([]);
1855
+ function a() {
1856
+ let i = t.matched.filter(
1857
+ (d) => d.meta && d.meta.title
1858
+ );
1859
+ const l = i[0];
1860
+ r(l) || (i = [
1861
+ { path: "/dashboard", meta: { title: "dashboard" } }
1862
+ ].concat(i)), o.value = i.filter((d) => d.meta && d.meta.title && d.meta.breadcrumb != !1);
1863
+ }
1864
+ function r(i) {
1865
+ const l = i && i.name;
1866
+ return l ? l.toString().trim().toLocaleLowerCase() === "Dashboard".toLocaleLowerCase() : !1;
1867
+ }
1868
+ function s(i) {
1869
+ const { redirect: l, path: d } = i;
1870
+ if (l) {
1871
+ ut.push(l).catch((c) => {
1872
+ console.warn(c);
1873
+ });
1874
+ return;
1875
+ }
1876
+ ut.push(e(d)).catch((c) => {
1877
+ console.warn(c);
1878
+ });
1879
+ }
1880
+ return ae(
1881
+ () => t.path,
1882
+ (i) => {
1883
+ i.startsWith("/redirect/") || a();
1884
+ }
1885
+ ), Wt(() => {
1886
+ a();
1887
+ }), (i, l) => {
1888
+ const d = Pn, c = Rn;
1889
+ return f(), A(c, { class: "h-[50px] flex items-center" }, {
1890
+ default: _(() => [
1891
+ b(Yt, { name: "breadcrumb" }, {
1892
+ default: _(() => [
1893
+ (f(!0), y(K, null, ve(v(o), (u, h) => (f(), A(d, {
1894
+ key: u.path
1895
+ }, {
1896
+ default: _(() => [
1897
+ u.redirect === "noredirect" || h === v(o).length - 1 ? (f(), y("span", uo, de(v(Ee)(u.meta.title)), 1)) : (f(), y("a", {
1898
+ key: 1,
1899
+ onClick: ke((P) => s(u), ["prevent"])
1900
+ }, de(v(Ee)(u.meta.title)), 9, co))
1901
+ ]),
1902
+ _: 2
1903
+ }, 1024))), 128))
1904
+ ]),
1905
+ _: 1
1906
+ })
1907
+ ]),
1908
+ _: 1
1909
+ });
1910
+ };
1911
+ }
1912
+ }), fo = /* @__PURE__ */ $(mo, [["__scopeId", "data-v-762ee6cf"]]), po = { class: "navbar" }, ho = { class: "flex" }, vo = { class: "flex" }, go = /* @__PURE__ */ O({
1913
+ __name: "index",
1914
+ setup(n) {
1915
+ const t = ne();
1916
+ function e() {
1917
+ t.toggleSidebar();
1918
+ }
1919
+ return (o, a) => {
1920
+ const r = At, s = fo, i = Nt;
1921
+ return f(), y("div", po, [
1922
+ R("div", ho, [
1923
+ b(r, {
1924
+ "is-active": v(t).sidebar.opened,
1925
+ onToggleClick: e
1926
+ }, null, 8, ["is-active"]),
1927
+ b(s)
1928
+ ]),
1929
+ R("div", vo, [
1930
+ b(i)
1931
+ ])
1932
+ ]);
1933
+ };
1934
+ }
1935
+ }), bo = /* @__PURE__ */ $(go, [["__scopeId", "data-v-5ef96d24"]]), yo = { class: "app-main" }, _o = /* @__PURE__ */ O({
1936
+ __name: "AppMain",
1937
+ setup(n) {
1938
+ const t = Ze();
1939
+ return (e, o) => {
1940
+ const a = xe("router-view");
1941
+ return f(), y("section", yo, [
1942
+ b(a, null, {
1943
+ default: _(({ Component: r, route: s }) => [
1944
+ b(Xe, {
1945
+ name: "fade-slide",
1946
+ mode: "out-in"
1947
+ }, {
1948
+ default: _(() => [
1949
+ (f(), A(Gt, {
1950
+ include: v(t).cachedViews
1951
+ }, [
1952
+ (f(), A(ht(r), {
1953
+ key: s.fullPath
1954
+ }))
1955
+ ], 1032, ["include"]))
1956
+ ]),
1957
+ _: 2
1958
+ }, 1024)
1959
+ ]),
1960
+ _: 1
1961
+ })
1962
+ ]);
1963
+ };
1964
+ }
1965
+ }), wo = /* @__PURE__ */ $(_o, [["__scopeId", "data-v-efceebb1"]]), So = {
1966
+ viewBox: "0 0 1024 1024",
1967
+ width: "1.2em",
1968
+ height: "1.2em"
1969
+ }, Ro = /* @__PURE__ */ R("path", {
1970
+ fill: "currentColor",
1971
+ d: "M406.656 706.944L195.84 496.256a32 32 0 1 0-45.248 45.248l256 256l512-512a32 32 0 0 0-45.248-45.248L406.592 706.944z"
1972
+ }, null, -1), Po = [
1973
+ Ro
1974
+ ];
1975
+ function xo(n, t) {
1976
+ return f(), y("svg", So, [...Po]);
1977
+ }
1978
+ const Co = { name: "ep-check", render: xo }, ue = (n) => (vt("data-v-96dc8891"), n = n(), gt(), n), ko = { class: "settings-container" }, To = /* @__PURE__ */ ue(() => /* @__PURE__ */ R("h3", { class: "text-base font-bold" }, "项目配置", -1)), Io = { class: "py-[8px] flex justify-between" }, Eo = /* @__PURE__ */ ue(() => /* @__PURE__ */ R("span", { class: "text-xs" }, "开启 Tags-View", -1)), Mo = { class: "py-[8px] flex justify-between" }, Ao = /* @__PURE__ */ ue(() => /* @__PURE__ */ R("span", { class: "text-xs" }, "固定 Header", -1)), No = { class: "py-[8px] flex justify-between" }, Do = /* @__PURE__ */ ue(() => /* @__PURE__ */ R("span", { class: "text-xs" }, "侧边栏 Logo", -1)), Lo = { class: "w-full space-x-2 flex justify-center py-2" }, qo = ["onClick"], Oo = { class: "layout" }, Bo = /* @__PURE__ */ ue(() => /* @__PURE__ */ R("div", null, null, -1)), Vo = /* @__PURE__ */ ue(() => /* @__PURE__ */ R("div", null, null, -1)), zo = [
1979
+ Bo,
1980
+ Vo
1981
+ ], Uo = /* @__PURE__ */ ue(() => /* @__PURE__ */ R("div", null, null, -1)), Wo = /* @__PURE__ */ ue(() => /* @__PURE__ */ R("div", null, null, -1)), Yo = [
1982
+ Uo,
1983
+ Wo
1984
+ ], Go = /* @__PURE__ */ ue(() => /* @__PURE__ */ R("div", null, null, -1)), Zo = /* @__PURE__ */ ue(() => /* @__PURE__ */ R("div", null, null, -1)), Qo = [
1985
+ Go,
1986
+ Zo
1987
+ ], Jo = /* @__PURE__ */ O({
1988
+ __name: "index",
1989
+ setup(n) {
1990
+ const t = $e(), e = ge(), o = De(), a = ne();
1991
+ function r(u, h) {
1992
+ let P = {};
1993
+ function w(x, C) {
1994
+ if (P[x.name] = C, x.children)
1995
+ for (let L = 0; L < x.children.length; L++)
1996
+ w(x.children[L], x);
1997
+ }
1998
+ for (let x = 0; x < u.length; x++)
1999
+ w(u[x], null);
2000
+ let D = P[h];
2001
+ for (; D; ) {
2002
+ if (!P[D.name])
2003
+ return D;
2004
+ D = P[D.name];
2005
+ }
2006
+ return null;
2007
+ }
2008
+ const s = (u) => {
2009
+ const h = r(o.routes, u);
2010
+ a.activeTopMenu !== h.path && a.changeTopActive(h.path);
2011
+ };
2012
+ function i(u) {
2013
+ e.changeSetting({ key: "layout", value: u }), window.document.body.setAttribute("layout", e.layout), u === "mix" && t.name && s(t.name);
2014
+ }
2015
+ const l = M([
2016
+ "#409EFF",
2017
+ "#304156",
2018
+ "#11a983",
2019
+ "#13c2c2",
2020
+ "#6959CD",
2021
+ "#f5222d"
2022
+ ]);
2023
+ function d(u) {
2024
+ document.documentElement.style.setProperty("--el-color-primary", u), e.changeSetting({ key: "themeColor", value: u });
2025
+ }
2026
+ const c = T(() => e.themeColor);
2027
+ return me(() => {
2028
+ window.document.body.setAttribute("layout", e.layout), e.theme == "dark" && document.documentElement.classList.add("dark"), document.documentElement.style.setProperty(
2029
+ "--el-color-primary",
2030
+ e.themeColor
2031
+ );
2032
+ }), (u, h) => {
2033
+ const P = dn, w = pn, D = Co, x = Qe;
2034
+ return f(), y("div", ko, [
2035
+ To,
2036
+ b(P, null, {
2037
+ default: _(() => [
2038
+ Q("界面设置")
2039
+ ]),
2040
+ _: 1
2041
+ }),
2042
+ R("div", Io, [
2043
+ Eo,
2044
+ b(w, {
2045
+ modelValue: v(e).tagsView,
2046
+ "onUpdate:modelValue": h[0] || (h[0] = (C) => v(e).tagsView = C)
2047
+ }, null, 8, ["modelValue"])
2048
+ ]),
2049
+ R("div", Mo, [
2050
+ Ao,
2051
+ b(w, {
2052
+ modelValue: v(e).fixedHeader,
2053
+ "onUpdate:modelValue": h[1] || (h[1] = (C) => v(e).fixedHeader = C)
2054
+ }, null, 8, ["modelValue"])
2055
+ ]),
2056
+ R("div", No, [
2057
+ Do,
2058
+ b(w, {
2059
+ modelValue: v(e).sidebarLogo,
2060
+ "onUpdate:modelValue": h[2] || (h[2] = (C) => v(e).sidebarLogo = C)
2061
+ }, null, 8, ["modelValue"])
2062
+ ]),
2063
+ b(P, null, {
2064
+ default: _(() => [
2065
+ Q("主题颜色")
2066
+ ]),
2067
+ _: 1
2068
+ }),
2069
+ R("ul", Lo, [
2070
+ (f(!0), y(K, null, ve(l.value, (C, L) => (f(), y("li", {
2071
+ key: L,
2072
+ class: "inline-block w-[30px] h-[30px] cursor-pointer theme-wrap",
2073
+ style: tt({ background: C }),
2074
+ onClick: (G) => d(C)
2075
+ }, [
2076
+ he(b(D, null, null, 512), [
2077
+ [Ie, C === c.value]
2078
+ ])
2079
+ ], 12, qo))), 128))
2080
+ ]),
2081
+ b(P, null, {
2082
+ default: _(() => [
2083
+ Q("导航设置")
2084
+ ]),
2085
+ _: 1
2086
+ }),
2087
+ R("ul", Oo, [
2088
+ b(x, {
2089
+ content: "左侧模式",
2090
+ placement: "bottom"
2091
+ }, {
2092
+ default: _(() => [
2093
+ R("li", {
2094
+ class: W(
2095
+ "layout-item layout-left " + (v(e).layout === "left" ? "is-active" : "")
2096
+ ),
2097
+ onClick: h[3] || (h[3] = (C) => i("left"))
2098
+ }, zo, 2)
2099
+ ]),
2100
+ _: 1
2101
+ }),
2102
+ b(x, {
2103
+ content: "顶部模式",
2104
+ placement: "bottom"
2105
+ }, {
2106
+ default: _(() => [
2107
+ R("li", {
2108
+ class: W(
2109
+ "layout-item layout-top " + (v(e).layout === "top" ? "is-active" : "")
2110
+ ),
2111
+ onClick: h[4] || (h[4] = (C) => i("top"))
2112
+ }, Yo, 2)
2113
+ ]),
2114
+ _: 1
2115
+ }),
2116
+ b(x, {
2117
+ content: "混合模式",
2118
+ placement: "bottom"
2119
+ }, {
2120
+ default: _(() => [
2121
+ R("li", {
2122
+ class: W(
2123
+ "layout-item layout-mix " + (v(e).layout === "mix" ? "is-active" : "")
2124
+ ),
2125
+ onClick: h[5] || (h[5] = (C) => i("mix"))
2126
+ }, Qo, 2)
2127
+ ]),
2128
+ _: 1
2129
+ })
2130
+ ])
2131
+ ]);
2132
+ };
2133
+ }
2134
+ }), $o = /* @__PURE__ */ $(Jo, [["__scopeId", "data-v-96dc8891"]]), Fo = {
2135
+ viewBox: "0 0 1024 1024",
2136
+ width: "1.2em",
2137
+ height: "1.2em"
2138
+ }, jo = /* @__PURE__ */ R("path", {
2139
+ fill: "currentColor",
2140
+ 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"
2141
+ }, null, -1), Ho = [
2142
+ jo
2143
+ ];
2144
+ function Ko(n, t) {
2145
+ return f(), y("svg", Fo, [...Ho]);
2146
+ }
2147
+ const Dt = { name: "ep-close", render: Ko };
2148
+ function re(n) {
2149
+ if (typeof n != "string")
2150
+ throw new TypeError("Path must be a string. Received " + JSON.stringify(n));
2151
+ }
2152
+ function dt(n, t) {
2153
+ for (var e = "", o = 0, a = -1, r = 0, s, i = 0; i <= n.length; ++i) {
2154
+ if (i < n.length)
2155
+ s = n.charCodeAt(i);
2156
+ else {
2157
+ if (s === 47)
2158
+ break;
2159
+ s = 47;
2160
+ }
2161
+ if (s === 47) {
2162
+ if (!(a === i - 1 || r === 1))
2163
+ if (a !== i - 1 && r === 2) {
2164
+ if (e.length < 2 || o !== 2 || e.charCodeAt(e.length - 1) !== 46 || e.charCodeAt(e.length - 2) !== 46) {
2165
+ if (e.length > 2) {
2166
+ var l = e.lastIndexOf("/");
2167
+ if (l !== e.length - 1) {
2168
+ l === -1 ? (e = "", o = 0) : (e = e.slice(0, l), o = e.length - 1 - e.lastIndexOf("/")), a = i, r = 0;
2169
+ continue;
2170
+ }
2171
+ } else if (e.length === 2 || e.length === 1) {
2172
+ e = "", o = 0, a = i, r = 0;
2173
+ continue;
2174
+ }
2175
+ }
2176
+ t && (e.length > 0 ? e += "/.." : e = "..", o = 2);
2177
+ } else
2178
+ e.length > 0 ? e += "/" + n.slice(a + 1, i) : e = n.slice(a + 1, i), o = i - a - 1;
2179
+ a = i, r = 0;
2180
+ } else
2181
+ s === 46 && r !== -1 ? ++r : r = -1;
2182
+ }
2183
+ return e;
2184
+ }
2185
+ function Xo(n, t) {
2186
+ var e = t.dir || t.root, o = t.base || (t.name || "") + (t.ext || "");
2187
+ return e ? e === t.root ? e + o : e + n + o : o;
2188
+ }
2189
+ var we = {
2190
+ // path.resolve([from ...], to)
2191
+ resolve: function() {
2192
+ for (var t = "", e = !1, o, a = arguments.length - 1; a >= -1 && !e; a--) {
2193
+ var r;
2194
+ a >= 0 ? r = arguments[a] : (o === void 0 && (o = process.cwd()), r = o), re(r), r.length !== 0 && (t = r + "/" + t, e = r.charCodeAt(0) === 47);
2195
+ }
2196
+ return t = dt(t, !e), e ? t.length > 0 ? "/" + t : "/" : t.length > 0 ? t : ".";
2197
+ },
2198
+ normalize: function(t) {
2199
+ if (re(t), t.length === 0)
2200
+ return ".";
2201
+ var e = t.charCodeAt(0) === 47, o = t.charCodeAt(t.length - 1) === 47;
2202
+ return t = dt(t, !e), t.length === 0 && !e && (t = "."), t.length > 0 && o && (t += "/"), e ? "/" + t : t;
2203
+ },
2204
+ isAbsolute: function(t) {
2205
+ return re(t), t.length > 0 && t.charCodeAt(0) === 47;
2206
+ },
2207
+ join: function() {
2208
+ if (arguments.length === 0)
2209
+ return ".";
2210
+ for (var t, e = 0; e < arguments.length; ++e) {
2211
+ var o = arguments[e];
2212
+ re(o), o.length > 0 && (t === void 0 ? t = o : t += "/" + o);
2213
+ }
2214
+ return t === void 0 ? "." : we.normalize(t);
2215
+ },
2216
+ relative: function(t, e) {
2217
+ if (re(t), re(e), t === e || (t = we.resolve(t), e = we.resolve(e), t === e))
2218
+ return "";
2219
+ for (var o = 1; o < t.length && t.charCodeAt(o) === 47; ++o)
2220
+ ;
2221
+ for (var a = t.length, r = a - o, s = 1; s < e.length && e.charCodeAt(s) === 47; ++s)
2222
+ ;
2223
+ for (var i = e.length, l = i - s, d = r < l ? r : l, c = -1, u = 0; u <= d; ++u) {
2224
+ if (u === d) {
2225
+ if (l > d) {
2226
+ if (e.charCodeAt(s + u) === 47)
2227
+ return e.slice(s + u + 1);
2228
+ if (u === 0)
2229
+ return e.slice(s + u);
2230
+ } else
2231
+ r > d && (t.charCodeAt(o + u) === 47 ? c = u : u === 0 && (c = 0));
2232
+ break;
2233
+ }
2234
+ var h = t.charCodeAt(o + u), P = e.charCodeAt(s + u);
2235
+ if (h !== P)
2236
+ break;
2237
+ h === 47 && (c = u);
2238
+ }
2239
+ var w = "";
2240
+ for (u = o + c + 1; u <= a; ++u)
2241
+ (u === a || t.charCodeAt(u) === 47) && (w.length === 0 ? w += ".." : w += "/..");
2242
+ return w.length > 0 ? w + e.slice(s + c) : (s += c, e.charCodeAt(s) === 47 && ++s, e.slice(s));
2243
+ },
2244
+ _makeLong: function(t) {
2245
+ return t;
2246
+ },
2247
+ dirname: function(t) {
2248
+ if (re(t), t.length === 0)
2249
+ return ".";
2250
+ for (var e = t.charCodeAt(0), o = e === 47, a = -1, r = !0, s = t.length - 1; s >= 1; --s)
2251
+ if (e = t.charCodeAt(s), e === 47) {
2252
+ if (!r) {
2253
+ a = s;
2254
+ break;
2255
+ }
2256
+ } else
2257
+ r = !1;
2258
+ return a === -1 ? o ? "/" : "." : o && a === 1 ? "//" : t.slice(0, a);
2259
+ },
2260
+ basename: function(t, e) {
2261
+ if (e !== void 0 && typeof e != "string")
2262
+ throw new TypeError('"ext" argument must be a string');
2263
+ re(t);
2264
+ var o = 0, a = -1, r = !0, s;
2265
+ if (e !== void 0 && e.length > 0 && e.length <= t.length) {
2266
+ if (e.length === t.length && e === t)
2267
+ return "";
2268
+ var i = e.length - 1, l = -1;
2269
+ for (s = t.length - 1; s >= 0; --s) {
2270
+ var d = t.charCodeAt(s);
2271
+ if (d === 47) {
2272
+ if (!r) {
2273
+ o = s + 1;
2274
+ break;
2275
+ }
2276
+ } else
2277
+ l === -1 && (r = !1, l = s + 1), i >= 0 && (d === e.charCodeAt(i) ? --i === -1 && (a = s) : (i = -1, a = l));
2278
+ }
2279
+ return o === a ? a = l : a === -1 && (a = t.length), t.slice(o, a);
2280
+ } else {
2281
+ for (s = t.length - 1; s >= 0; --s)
2282
+ if (t.charCodeAt(s) === 47) {
2283
+ if (!r) {
2284
+ o = s + 1;
2285
+ break;
2286
+ }
2287
+ } else
2288
+ a === -1 && (r = !1, a = s + 1);
2289
+ return a === -1 ? "" : t.slice(o, a);
2290
+ }
2291
+ },
2292
+ extname: function(t) {
2293
+ re(t);
2294
+ for (var e = -1, o = 0, a = -1, r = !0, s = 0, i = t.length - 1; i >= 0; --i) {
2295
+ var l = t.charCodeAt(i);
2296
+ if (l === 47) {
2297
+ if (!r) {
2298
+ o = i + 1;
2299
+ break;
2300
+ }
2301
+ continue;
2302
+ }
2303
+ a === -1 && (r = !1, a = i + 1), l === 46 ? e === -1 ? e = i : s !== 1 && (s = 1) : e !== -1 && (s = -1);
2304
+ }
2305
+ return e === -1 || a === -1 || // We saw a non-dot character immediately before the dot
2306
+ s === 0 || // The (right-most) trimmed path component is exactly '..'
2307
+ s === 1 && e === a - 1 && e === o + 1 ? "" : t.slice(e, a);
2308
+ },
2309
+ format: function(t) {
2310
+ if (t === null || typeof t != "object")
2311
+ throw new TypeError('The "pathObject" argument must be of type Object. Received type ' + typeof t);
2312
+ return Xo("/", t);
2313
+ },
2314
+ parse: function(t) {
2315
+ re(t);
2316
+ var e = { root: "", dir: "", base: "", ext: "", name: "" };
2317
+ if (t.length === 0)
2318
+ return e;
2319
+ var o = t.charCodeAt(0), a = o === 47, r;
2320
+ a ? (e.root = "/", r = 1) : r = 0;
2321
+ for (var s = -1, i = 0, l = -1, d = !0, c = t.length - 1, u = 0; c >= r; --c) {
2322
+ if (o = t.charCodeAt(c), o === 47) {
2323
+ if (!d) {
2324
+ i = c + 1;
2325
+ break;
2326
+ }
2327
+ continue;
2328
+ }
2329
+ l === -1 && (d = !1, l = c + 1), o === 46 ? s === -1 ? s = c : u !== 1 && (u = 1) : s !== -1 && (u = -1);
2330
+ }
2331
+ return s === -1 || l === -1 || // We saw a non-dot character immediately before the dot
2332
+ u === 0 || // The (right-most) trimmed path component is exactly '..'
2333
+ u === 1 && s === l - 1 && s === i + 1 ? l !== -1 && (i === 0 && a ? e.base = e.name = t.slice(1, l) : e.base = e.name = t.slice(i, l)) : (i === 0 && a ? (e.name = t.slice(1, s), e.base = t.slice(1, l)) : (e.name = t.slice(i, s), e.base = t.slice(i, l)), e.ext = t.slice(s, l)), i > 0 ? e.dir = t.slice(0, i - 1) : a && (e.dir = "/"), e;
2334
+ },
2335
+ sep: "/",
2336
+ delimiter: ":",
2337
+ win32: null,
2338
+ posix: null
2339
+ };
2340
+ we.posix = we;
2341
+ var Lt = we;
2342
+ const qt = /* @__PURE__ */ an(Lt), ea = /* @__PURE__ */ O({
2343
+ __name: "ScrollPane",
2344
+ emits: ["scroll"],
2345
+ setup(n, { expose: t, emit: e }) {
2346
+ const o = M(4), { proxy: a } = Pe(), r = e, s = () => {
2347
+ r("scroll");
2348
+ }, i = Ze(), l = T(
2349
+ () => a == null ? void 0 : a.$refs.scrollContainer.$refs.wrapRef
2350
+ );
2351
+ me(() => {
2352
+ l.value.addEventListener("scroll", s, !0);
2353
+ }), We(() => {
2354
+ l.value.removeEventListener("scroll", s);
2355
+ });
2356
+ function d(u) {
2357
+ const h = u.wheelDelta || -u.deltaY * 40;
2358
+ l.value.scrollLeft = l.value.scrollLeft + h / 4;
2359
+ }
2360
+ function c(u) {
2361
+ const P = a.$refs.scrollContainer.$el.offsetWidth, w = l.value;
2362
+ let D = null, x = null;
2363
+ if (i.visitedViews.length > 0 && (D = i.visitedViews[0], x = i.visitedViews[i.visitedViews.length - 1]), D === u)
2364
+ w.scrollLeft = 0;
2365
+ else if (x === u)
2366
+ w.scrollLeft = w.scrollWidth - P;
2367
+ else {
2368
+ const C = document.getElementsByClassName("tags-item"), L = i.visitedViews.findIndex(
2369
+ (q) => q === u
2370
+ );
2371
+ let G = null, Z = null;
2372
+ for (const q in C)
2373
+ q !== "length" && Object.hasOwnProperty.call(C, q) && (C[q].dataset.path === i.visitedViews[L - 1].path && (G = C[q]), C[q].dataset.path === i.visitedViews[L + 1].path && (Z = C[q]));
2374
+ const H = Z.offsetLeft + Z.offsetWidth + o.value, B = G.offsetLeft - o.value;
2375
+ H > w.scrollLeft + P ? w.scrollLeft = H - P : B < w.scrollLeft && (w.scrollLeft = B);
2376
+ }
2377
+ }
2378
+ return t({
2379
+ moveToTarget: c
2380
+ }), (u, h) => {
2381
+ const P = nt;
2382
+ return f(), A(P, {
2383
+ ref: "scrollContainer",
2384
+ class: "scroll-container",
2385
+ vertical: !1,
2386
+ onWheel: ke(d, ["prevent"])
2387
+ }, {
2388
+ default: _(() => [
2389
+ ee(u.$slots, "default", {}, void 0, !0)
2390
+ ]),
2391
+ _: 3
2392
+ }, 512);
2393
+ };
2394
+ }
2395
+ }), ta = /* @__PURE__ */ $(ea, [["__scopeId", "data-v-b2694f45"]]), na = { class: "tags-container" }, oa = ["onClick"], aa = /* @__PURE__ */ O({
2396
+ __name: "index",
2397
+ setup(n) {
2398
+ const t = Pe(), e = Je(), o = $e(), a = De(), r = Ze(), s = ne(), { visitedViews: i } = ot(r), l = ge(), d = T(() => l.layout), c = M({
2399
+ path: "",
2400
+ fullPath: "",
2401
+ name: "",
2402
+ title: "",
2403
+ affix: !1,
2404
+ keepAlive: !1
2405
+ }), u = M([]), h = M(), P = M(0), w = M(0);
2406
+ ae(
2407
+ o,
2408
+ () => {
2409
+ L(), G();
2410
+ },
2411
+ {
2412
+ immediate: !0
2413
+ //初始化立即执行
2414
+ }
2415
+ );
2416
+ const D = M(!1);
2417
+ ae(D, (m) => {
2418
+ m ? document.body.addEventListener("click", k) : document.body.removeEventListener("click", k);
2419
+ });
2420
+ function x(m, p = "/") {
2421
+ const I = (E) => {
2422
+ var ce, Ce, st;
2423
+ const N = Lt.resolve(p, E.path), oe = {
2424
+ path: E.path,
2425
+ fullPath: N,
2426
+ name: String(E.name),
2427
+ title: ((ce = E.meta) == null ? void 0 : ce.title) || "no-name",
2428
+ affix: (Ce = E.meta) == null ? void 0 : Ce.affix,
2429
+ keepAlive: (st = E.meta) == null ? void 0 : st.keepAlive
2430
+ };
2431
+ oe.affix && V.push(oe), E.children && E.children.forEach(I);
2432
+ };
2433
+ let V = [];
2434
+ return m.forEach(I), V;
2435
+ }
2436
+ function C() {
2437
+ const m = x(a.routes);
2438
+ u.value = m;
2439
+ for (const p of m)
2440
+ p.name && r.addVisitedView(p);
2441
+ }
2442
+ function L() {
2443
+ var m, p;
2444
+ o.meta.title && r.addView({
2445
+ name: o.name,
2446
+ title: o.meta.title,
2447
+ path: o.path,
2448
+ fullPath: o.fullPath,
2449
+ affix: (m = o.meta) == null ? void 0 : m.affix,
2450
+ keepAlive: (p = o.meta) == null ? void 0 : p.keepAlive
2451
+ });
2452
+ }
2453
+ function G() {
2454
+ Be(() => {
2455
+ var m, p;
2456
+ for (const I of i.value)
2457
+ I.path === o.path && (h.value.moveToTarget(I), I.fullPath !== o.fullPath && r.updateVisitedView({
2458
+ name: o.name,
2459
+ title: o.meta.title || "",
2460
+ path: o.path,
2461
+ fullPath: o.fullPath,
2462
+ affix: (m = o.meta) == null ? void 0 : m.affix,
2463
+ keepAlive: (p = o.meta) == null ? void 0 : p.keepAlive
2464
+ }));
2465
+ });
2466
+ }
2467
+ function Z(m) {
2468
+ return m.fullPath === o.fullPath;
2469
+ }
2470
+ function H(m) {
2471
+ return m == null ? void 0 : m.affix;
2472
+ }
2473
+ function B() {
2474
+ try {
2475
+ return c.value.fullPath === "/dashboard" || c.value.fullPath === r.visitedViews[1].fullPath;
2476
+ } catch {
2477
+ return !1;
2478
+ }
2479
+ }
2480
+ function q() {
2481
+ try {
2482
+ return c.value.fullPath === r.visitedViews[r.visitedViews.length - 1].fullPath;
2483
+ } catch {
2484
+ return !1;
2485
+ }
2486
+ }
2487
+ function F(m) {
2488
+ r.delCachedView(m);
2489
+ const { fullPath: p } = m;
2490
+ Be(() => {
2491
+ e.replace({ path: "/redirect" + p });
2492
+ });
2493
+ }
2494
+ function j(m, p) {
2495
+ const I = m.slice(-1)[0];
2496
+ I && I.fullPath ? e.push(I.fullPath) : (p == null ? void 0 : p.name) === "Dashboard" ? e.replace({ path: "/redirect" + p.fullPath }) : e.push("/");
2497
+ }
2498
+ function X(m) {
2499
+ r.delView(m).then((p) => {
2500
+ Z(m) && j(p.visitedViews, m);
2501
+ });
2502
+ }
2503
+ function fe() {
2504
+ r.delLeftViews(c.value).then((m) => {
2505
+ m.visitedViews.find((p) => p.fullPath === o.fullPath) || j(m.visitedViews);
2506
+ });
2507
+ }
2508
+ function le() {
2509
+ r.delRightViews(c.value).then((m) => {
2510
+ m.visitedViews.find((p) => p.fullPath === o.fullPath) || j(m.visitedViews);
2511
+ });
2512
+ }
2513
+ function pe() {
2514
+ e.push(c.value), r.delOtherViews(c.value).then(() => {
2515
+ G();
2516
+ });
2517
+ }
2518
+ function g(m) {
2519
+ r.delAllViews().then((p) => {
2520
+ j(p.visitedViews, m);
2521
+ });
2522
+ }
2523
+ function S(m, p) {
2524
+ var ce, Ce;
2525
+ let V, E;
2526
+ (t == null ? void 0 : t.proxy) != null && (V = (ce = t == null ? void 0 : t.proxy) == null ? void 0 : ce.$el.getBoundingClientRect().left, E = (Ce = t == null ? void 0 : t.proxy) == null ? void 0 : Ce.$el.offsetWidth);
2527
+ const N = E - 105, oe = p.clientX - V + 15;
2528
+ oe > N ? P.value = N : P.value = oe, d.value === "mix" ? w.value = p.clientY - 50 : w.value = p.clientY, D.value = !0, c.value = m;
2529
+ }
2530
+ function k() {
2531
+ D.value = !1;
2532
+ }
2533
+ function Y() {
2534
+ k();
2535
+ }
2536
+ function z(m, p) {
2537
+ let I = {};
2538
+ function V(N, oe) {
2539
+ if (I[N.name] = oe, N.children)
2540
+ for (let ce = 0; ce < N.children.length; ce++)
2541
+ V(N.children[ce], N);
2542
+ }
2543
+ for (let N = 0; N < m.length; N++)
2544
+ V(m[N], null);
2545
+ let E = I[p];
2546
+ for (; E; ) {
2547
+ if (!I[E.name])
2548
+ return E;
2549
+ E = I[E.name];
2550
+ }
2551
+ return null;
2552
+ }
2553
+ const te = (m) => {
2554
+ if (d.value !== "mix")
2555
+ return;
2556
+ const p = z(a.routes, m);
2557
+ s.activeTopMenu !== p.path && s.changeTopActive(p.path);
2558
+ };
2559
+ return ae(
2560
+ () => o.name,
2561
+ (m) => {
2562
+ m && te(m);
2563
+ },
2564
+ {
2565
+ deep: !0
2566
+ }
2567
+ ), me(() => {
2568
+ C();
2569
+ }), (m, p) => {
2570
+ const I = Dt, V = xe("router-link"), E = Re;
2571
+ return f(), y("div", na, [
2572
+ b(ta, {
2573
+ ref_key: "scrollPaneRef",
2574
+ ref: h,
2575
+ onScroll: Y
2576
+ }, {
2577
+ default: _(() => [
2578
+ (f(!0), y(K, null, ve(v(i), (N) => (f(), A(V, {
2579
+ ref_for: !0,
2580
+ ref: "tagRef",
2581
+ key: N.path,
2582
+ class: W("tags-item " + (Z(N) ? "active" : "")),
2583
+ "data-path": N.path,
2584
+ to: { path: N.path, query: N.query },
2585
+ onMouseup: ke((oe) => H(N) ? "" : X(N), ["middle"]),
2586
+ onContextmenu: ke((oe) => S(N, oe), ["prevent"])
2587
+ }, {
2588
+ default: _(() => [
2589
+ Q(de(v(Ee)(N.title)) + " ", 1),
2590
+ H(N) ? U("", !0) : (f(), y("span", {
2591
+ key: 0,
2592
+ class: "tags-item-close",
2593
+ onClick: ke((oe) => X(N), ["prevent", "stop"])
2594
+ }, [
2595
+ b(I, { size: "10px" })
2596
+ ], 8, oa))
2597
+ ]),
2598
+ _: 2
2599
+ }, 1032, ["class", "data-path", "to", "onMouseup", "onContextmenu"]))), 128))
2600
+ ]),
2601
+ _: 1
2602
+ }, 512),
2603
+ he(R("ul", {
2604
+ class: "tag-menu",
2605
+ style: tt({ left: P.value + "px", top: w.value + "px" })
2606
+ }, [
2607
+ R("li", {
2608
+ onClick: p[0] || (p[0] = (N) => F(c.value))
2609
+ }, [
2610
+ b(E, { "icon-class": "refresh" }),
2611
+ Q(" 刷新 ")
2612
+ ]),
2613
+ H(c.value) ? U("", !0) : (f(), y("li", {
2614
+ key: 0,
2615
+ onClick: p[1] || (p[1] = (N) => X(c.value))
2616
+ }, [
2617
+ b(E, { "icon-class": "close" }),
2618
+ Q(" 关闭 ")
2619
+ ])),
2620
+ R("li", { onClick: pe }, [
2621
+ b(E, { "icon-class": "close_other" }),
2622
+ Q(" 关闭其它 ")
2623
+ ]),
2624
+ B() ? U("", !0) : (f(), y("li", {
2625
+ key: 1,
2626
+ onClick: fe
2627
+ }, [
2628
+ b(E, { "icon-class": "close_left" }),
2629
+ Q(" 关闭左侧 ")
2630
+ ])),
2631
+ q() ? U("", !0) : (f(), y("li", {
2632
+ key: 2,
2633
+ onClick: le
2634
+ }, [
2635
+ b(E, { "icon-class": "close_right" }),
2636
+ Q(" 关闭右侧 ")
2637
+ ])),
2638
+ R("li", {
2639
+ onClick: p[2] || (p[2] = (N) => g(c.value))
2640
+ }, [
2641
+ b(E, { "icon-class": "close_all" }),
2642
+ Q(" 关闭所有 ")
2643
+ ])
2644
+ ], 4), [
2645
+ [Ie, D.value]
2646
+ ])
2647
+ ]);
2648
+ };
2649
+ }
2650
+ }), sa = /* @__PURE__ */ $(aa, [["__scopeId", "data-v-54ba5761"]]), la = {
2651
+ viewBox: "0 0 1024 1024",
2652
+ width: "1.2em",
2653
+ height: "1.2em"
2654
+ }, ra = /* @__PURE__ */ R("path", {
2655
+ fill: "currentColor",
2656
+ d: "M600.704 64a32 32 0 0 1 30.464 22.208l35.2 109.376c14.784 7.232 28.928 15.36 42.432 24.512l112.384-24.192a32 32 0 0 1 34.432 15.36L944.32 364.8a32 32 0 0 1-4.032 37.504l-77.12 85.12a357 357 0 0 1 0 49.024l77.12 85.248a32 32 0 0 1 4.032 37.504l-88.704 153.6a32 32 0 0 1-34.432 15.296L708.8 803.904c-13.44 9.088-27.648 17.28-42.368 24.512l-35.264 109.376A32 32 0 0 1 600.704 960H423.296a32 32 0 0 1-30.464-22.208L357.696 828.48a352 352 0 0 1-42.56-24.64l-112.32 24.256a32 32 0 0 1-34.432-15.36L79.68 659.2a32 32 0 0 1 4.032-37.504l77.12-85.248a357 357 0 0 1 0-48.896l-77.12-85.248A32 32 0 0 1 79.68 364.8l88.704-153.6a32 32 0 0 1 34.432-15.296l112.32 24.256c13.568-9.152 27.776-17.408 42.56-24.64l35.2-109.312A32 32 0 0 1 423.232 64H600.64zm-23.424 64H446.72l-36.352 113.088l-24.512 11.968a294 294 0 0 0-34.816 20.096l-22.656 15.36l-116.224-25.088l-65.28 113.152l79.68 88.192l-1.92 27.136a293 293 0 0 0 0 40.192l1.92 27.136l-79.808 88.192l65.344 113.152l116.224-25.024l22.656 15.296a294 294 0 0 0 34.816 20.096l24.512 11.968L446.72 896h130.688l36.48-113.152l24.448-11.904a288 288 0 0 0 34.752-20.096l22.592-15.296l116.288 25.024l65.28-113.152l-79.744-88.192l1.92-27.136a293 293 0 0 0 0-40.256l-1.92-27.136l79.808-88.128l-65.344-113.152l-116.288 24.96l-22.592-15.232a288 288 0 0 0-34.752-20.096l-24.448-11.904L577.344 128zM512 320a192 192 0 1 1 0 384a192 192 0 0 1 0-384m0 64a128 128 0 1 0 0 256a128 128 0 0 0 0-256"
2657
+ }, null, -1), ia = [
2658
+ ra
2659
+ ];
2660
+ function ua(n, t) {
2661
+ return f(), y("svg", la, [...ia]);
2662
+ }
2663
+ const ca = { name: "ep-setting", render: ua };
2664
+ function Ot(n, t) {
2665
+ return !!n.className.match(new RegExp("(\\s|^)" + t + "(\\s|$)"));
2666
+ }
2667
+ function da(n, t) {
2668
+ Ot(n, t) || (n.className += " " + t);
2669
+ }
2670
+ function ma(n, t) {
2671
+ if (Ot(n, t)) {
2672
+ const e = new RegExp("(\\s|^)" + t + "(\\s|$)");
2673
+ n.className = n.className.replace(e, " ");
2674
+ }
2675
+ }
2676
+ function Me(n) {
2677
+ return /^(https?:|http?:|mailto:|tel:)/.test(n);
2678
+ }
2679
+ const fa = (n) => (vt("data-v-b6b011c4"), n = n(), gt(), n), pa = /* @__PURE__ */ fa(() => /* @__PURE__ */ R("div", { class: "right-panel-overlay" }, null, -1)), ha = { class: "right-panel-container" }, va = /* @__PURE__ */ O({
2680
+ __name: "index",
2681
+ props: {
2682
+ buttonTop: {
2683
+ default: 250,
2684
+ type: Number
2685
+ }
2686
+ },
2687
+ setup(n) {
2688
+ const t = M(!1);
2689
+ ae(t, (s) => {
2690
+ s && e(), s ? da(document.body, "showRightPanel") : ma(document.body, "showRightPanel");
2691
+ });
2692
+ function e() {
2693
+ window.addEventListener("click", o, { passive: !0 });
2694
+ }
2695
+ function o(s) {
2696
+ s.target.closest(".right-panel-container") || (t.value = !1, window.removeEventListener("click", o));
2697
+ }
2698
+ const a = M();
2699
+ function r() {
2700
+ const s = document.querySelector("body");
2701
+ s.insertBefore(a.value, s.firstChild);
2702
+ }
2703
+ return me(() => {
2704
+ r();
2705
+ }), We(() => {
2706
+ a.value.remove();
2707
+ }), (s, i) => {
2708
+ const l = Dt, d = ca;
2709
+ return f(), y("div", {
2710
+ ref_key: "rightPanel",
2711
+ ref: a,
2712
+ class: W({ show: t.value })
2713
+ }, [
2714
+ pa,
2715
+ R("div", ha, [
2716
+ R("div", {
2717
+ class: "right-panel-btn",
2718
+ style: tt({
2719
+ top: n.buttonTop + "px"
2720
+ }),
2721
+ onClick: i[0] || (i[0] = (c) => t.value = !t.value)
2722
+ }, [
2723
+ he(b(l, null, null, 512), [
2724
+ [Ie, t.value]
2725
+ ]),
2726
+ he(b(d, null, null, 512), [
2727
+ [Ie, !t.value]
2728
+ ])
2729
+ ], 4),
2730
+ R("div", null, [
2731
+ ee(s.$slots, "default", {}, void 0, !0)
2732
+ ])
2733
+ ])
2734
+ ], 2);
2735
+ };
2736
+ }
2737
+ }), ga = /* @__PURE__ */ $(va, [["__scopeId", "data-v-b6b011c4"]]), ba = 992, ya = /* @__PURE__ */ O({
2738
+ __name: "main",
2739
+ setup(n) {
2740
+ const { width: t } = _t(), e = ne(), o = ge(), a = T(() => o.fixedHeader), r = T(() => o.tagsView), s = T(() => o.showSettings), i = T(() => o.layout), l = T(() => e.device);
2741
+ return et(() => {
2742
+ t.value < ba ? (e.toggleDevice("mobile"), e.closeSideBar(!0)) : (e.toggleDevice("desktop"), t.value >= 1200 ? e.openSideBar(!0) : e.closeSideBar(!0));
2743
+ }), (d, c) => (f(), y("div", {
2744
+ class: W([{ hasTagsView: r.value }, "main-container"])
2745
+ }, [
2746
+ R("div", {
2747
+ class: W({ "fixed-header": a.value, device: l.value })
2748
+ }, [
2749
+ i.value === "left" ? (f(), A(v(bo), { key: 0 })) : U("", !0),
2750
+ r.value ? (f(), A(v(sa), { key: 1 })) : U("", !0)
2751
+ ], 2),
2752
+ b(v(wo)),
2753
+ s.value ? (f(), A(ga, { key: 0 }, {
2754
+ default: _(() => [
2755
+ b(v($o))
2756
+ ]),
2757
+ _: 1
2758
+ })) : U("", !0)
2759
+ ], 2));
2760
+ }
2761
+ }), mt = /* @__PURE__ */ $(ya, [["__scopeId", "data-v-d384a7fe"]]), _a = "var(--menuBg)", wa = "var(--menuText)", Sa = "var(--menuActiveText)", Se = {
2762
+ menuBg: _a,
2763
+ menuText: wa,
2764
+ menuActiveText: Sa
2765
+ }, Ra = { key: 1 }, Pa = { key: 0 }, xa = /* @__PURE__ */ O({
2766
+ __name: "TopMenu",
2767
+ setup(n) {
2768
+ const t = ne(), e = T(() => t.activeTopMenu), o = Je(), a = (l) => {
2769
+ if (!l.length)
2770
+ return;
2771
+ const [d] = l;
2772
+ d.children ? a(d.children) : o.push({
2773
+ name: d.name
2774
+ });
2775
+ }, r = (l) => {
2776
+ t.changeTopActive(l), s.getMixLeftMenu(l);
2777
+ const { mixLeftMenu: d } = s;
2778
+ a(d);
2779
+ }, s = De(), i = M([]);
2780
+ return me(() => {
2781
+ i.value = s.routes.filter(
2782
+ (l) => !l.meta || !l.meta.hidden
2783
+ );
2784
+ }), (l, d) => {
2785
+ const c = Re, u = Mt, h = Et, P = nt;
2786
+ return f(), A(P, null, {
2787
+ default: _(() => [
2788
+ b(h, {
2789
+ mode: "horizontal",
2790
+ "default-active": e.value,
2791
+ "background-color": v(Se).menuBg,
2792
+ "text-color": v(Se).menuText,
2793
+ "active-text-color": v(Se).menuActiveText,
2794
+ onSelect: r
2795
+ }, {
2796
+ default: _(() => [
2797
+ (f(!0), y(K, null, ve(i.value, (w) => (f(), A(u, {
2798
+ key: w.path,
2799
+ index: w.path
2800
+ }, {
2801
+ title: _(() => [
2802
+ w.meta && w.meta.icon ? (f(), A(c, {
2803
+ key: 0,
2804
+ "icon-class": w.meta.icon
2805
+ }, null, 8, ["icon-class"])) : U("", !0),
2806
+ w.path === "/" ? (f(), y("span", Ra, " 首页 ")) : (f(), y(K, { key: 2 }, [
2807
+ w.meta && w.meta.title ? (f(), y("span", Pa, de(v(Ee)(w.meta.title)), 1)) : U("", !0)
2808
+ ], 64))
2809
+ ]),
2810
+ _: 2
2811
+ }, 1032, ["index"]))), 128))
2812
+ ]),
2813
+ _: 1
2814
+ }, 8, ["default-active", "background-color", "text-color", "active-text-color"])
2815
+ ]),
2816
+ _: 1
2817
+ });
2818
+ };
2819
+ }
2820
+ }), Ca = /* @__PURE__ */ $(xa, [["__scopeId", "data-v-5631fe31"]]), ka = ["href"], Ta = /* @__PURE__ */ O({
2821
+ __name: "Link",
2822
+ props: {
2823
+ to: {
2824
+ type: String,
2825
+ required: !0
2826
+ }
2827
+ },
2828
+ setup(n) {
2829
+ const t = ne(), e = T(() => t.sidebar), o = T(() => t.device), a = n, r = Je();
2830
+ function s() {
2831
+ o.value === "mobile" && e.value.opened == !0 && t.closeSideBar(!1), r.push(a.to).catch((i) => {
2832
+ console.error(i);
2833
+ });
2834
+ }
2835
+ return (i, l) => v(Me)(n.to) ? (f(), y("a", {
2836
+ key: 0,
2837
+ href: n.to,
2838
+ target: "_blank",
2839
+ rel: "noopener"
2840
+ }, [
2841
+ ee(i.$slots, "default")
2842
+ ], 8, ka)) : (f(), y("div", {
2843
+ key: 1,
2844
+ onClick: s
2845
+ }, [
2846
+ ee(i.$slots, "default")
2847
+ ]));
2848
+ }
2849
+ }), Ia = { key: 2 }, Ea = /* @__PURE__ */ O({
2850
+ __name: "Item",
2851
+ props: {
2852
+ icon: {
2853
+ type: String,
2854
+ default: ""
2855
+ },
2856
+ title: {
2857
+ type: String,
2858
+ default: ""
2859
+ }
2860
+ },
2861
+ setup(n) {
2862
+ return (t, e) => {
2863
+ const o = Ye, a = Re;
2864
+ return f(), y(K, null, [
2865
+ n.icon && n.icon.includes("el-icon") ? (f(), A(o, {
2866
+ key: 0,
2867
+ class: "sub-el-icon"
2868
+ })) : n.icon ? (f(), A(a, {
2869
+ key: 1,
2870
+ "icon-class": n.icon
2871
+ }, null, 8, ["icon-class"])) : U("", !0),
2872
+ n.title ? (f(), y("span", Ia, de(v(Ee)(n.title)), 1)) : U("", !0)
2873
+ ], 64);
2874
+ };
2875
+ }
2876
+ }), ft = /* @__PURE__ */ $(Ea, [["__scopeId", "data-v-b1fbe86d"]]), Ma = { key: 0 }, Aa = /* @__PURE__ */ O({
2877
+ __name: "SidebarItem",
2878
+ props: {
2879
+ /**
2880
+ * 路由(eg:user)
2881
+ */
2882
+ item: {
2883
+ type: Object,
2884
+ required: !0
2885
+ },
2886
+ /**
2887
+ * 父层级完整路由路径(eg:/system)
2888
+ */
2889
+ basePath: {
2890
+ type: String,
2891
+ required: !0
2892
+ },
2893
+ isNest: {
2894
+ type: Boolean,
2895
+ default: !1
2896
+ }
2897
+ },
2898
+ setup(n) {
2899
+ const t = n, e = M();
2900
+ function o(r = [], s) {
2901
+ const i = r.filter((l) => {
2902
+ var d;
2903
+ return (d = l.meta) != null && d.hidden ? !1 : (l.meta !== void 0 && (l.meta.hidden = !1), e.value = l, !0);
2904
+ });
2905
+ return i.length === 1 ? !0 : i.length === 0 ? (e.value = { ...s, path: "", noShowingChildren: !0 }, !0) : !1;
2906
+ }
2907
+ function a(r) {
2908
+ return Me(r) ? r : Me(t.basePath) ? t.basePath : qt.resolve(t.basePath, r);
2909
+ }
2910
+ return (r, s) => {
2911
+ var c;
2912
+ const i = Mt, l = xe("sidebar-item", !0), d = Gn;
2913
+ return !n.item.meta || !n.item.meta.hidden ? (f(), y("div", Ma, [
2914
+ o(n.item.children, n.item) && (!e.value.children || e.value.noShowingChildren) && !((c = n.item.meta) != null && c.alwaysShow) ? (f(), y(K, { key: 0 }, [
2915
+ e.value.meta ? (f(), A(Ta, {
2916
+ key: 0,
2917
+ to: a(e.value.path)
2918
+ }, {
2919
+ default: _(() => [
2920
+ b(i, {
2921
+ index: a(e.value.path),
2922
+ class: W({ "submenu-title-noDropdown": !n.isNest })
2923
+ }, {
2924
+ default: _(() => [
2925
+ b(ft, {
2926
+ icon: e.value.meta.icon || n.item.meta && n.item.meta.icon,
2927
+ title: e.value.meta.title
2928
+ }, null, 8, ["icon", "title"])
2929
+ ]),
2930
+ _: 1
2931
+ }, 8, ["index", "class"])
2932
+ ]),
2933
+ _: 1
2934
+ }, 8, ["to"])) : U("", !0)
2935
+ ], 64)) : (f(), A(d, {
2936
+ key: 1,
2937
+ index: a(n.item.path),
2938
+ teleported: ""
2939
+ }, {
2940
+ title: _(() => [
2941
+ n.item.meta ? (f(), A(ft, {
2942
+ key: 0,
2943
+ icon: n.item.meta && n.item.meta.icon,
2944
+ title: n.item.meta.title
2945
+ }, null, 8, ["icon", "title"])) : U("", !0)
2946
+ ]),
2947
+ default: _(() => [
2948
+ (f(!0), y(K, null, ve(n.item.children, (u) => (f(), A(l, {
2949
+ key: u.path,
2950
+ "is-nest": !0,
2951
+ item: u,
2952
+ "base-path": a(u.path)
2953
+ }, null, 8, ["item", "base-path"]))), 128))
2954
+ ]),
2955
+ _: 1
2956
+ }, 8, ["index"]))
2957
+ ])) : U("", !0);
2958
+ };
2959
+ }
2960
+ }), Na = /* @__PURE__ */ $(Aa, [["__scopeId", "data-v-da083b59"]]), Bt = /* @__PURE__ */ O({
2961
+ __name: "LeftMenu",
2962
+ props: {
2963
+ menuList: {
2964
+ required: !0,
2965
+ default: () => [],
2966
+ type: Array
2967
+ },
2968
+ basePath: {
2969
+ type: String,
2970
+ required: !0
2971
+ }
2972
+ },
2973
+ setup(n) {
2974
+ const t = ge(), e = ne(), o = $e(), a = T(() => t.layout), r = n;
2975
+ function s(i) {
2976
+ return Me(i) ? i : Me(r.basePath) ? r.basePath : qt.resolve(r.basePath, i);
2977
+ }
2978
+ return (i, l) => {
2979
+ const d = Et;
2980
+ return f(), A(d, {
2981
+ "default-active": a.value === "top" ? "-" : v(o).path,
2982
+ collapse: !v(e).sidebar.opened,
2983
+ "background-color": v(Se).menuBg,
2984
+ "text-color": v(Se).menuText,
2985
+ "active-text-color": v(Se).menuActiveText,
2986
+ "unique-opened": !1,
2987
+ "collapse-transition": !1,
2988
+ mode: a.value === "top" ? "horizontal" : "vertical"
2989
+ }, {
2990
+ default: _(() => [
2991
+ (f(!0), y(K, null, ve(n.menuList, (c) => (f(), A(Na, {
2992
+ key: c.path,
2993
+ item: c,
2994
+ "base-path": s(c.path),
2995
+ "is-collapse": !v(e).sidebar.opened
2996
+ }, null, 8, ["item", "base-path", "is-collapse"]))), 128))
2997
+ ]),
2998
+ _: 1
2999
+ }, 8, ["default-active", "collapse", "background-color", "text-color", "active-text-color", "mode"]);
3000
+ };
3001
+ }
3002
+ }), Da = { class: "w-full h-[50px] bg-gray-800 dark:bg-[var(--el-bg-color-overlay)] logo-wrap" }, La = ["src"], qa = ["src"], Oa = { class: "ml-3 text-white text-sm font-bold" }, Ba = /* @__PURE__ */ O({
3003
+ __name: "Logo",
3004
+ props: {
3005
+ collapse: {
3006
+ type: Boolean,
3007
+ required: !0
3008
+ }
3009
+ },
3010
+ setup(n) {
3011
+ const t = ge(), e = M(new URL("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDE0IDc5LjE1Njc5NywgMjAxNC8wOC8yMC0wOTo1MzowMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OTk2QkI4RkE3NjE2MTFFNUE4NEU4RkIxNjQ5MTYyRDgiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OTk2QkI4Rjk3NjE2MTFFNUE4NEU4RkIxNjQ5MTYyRDgiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NjU2QTEyNzk3NjkyMTFFMzkxODk4RDkwQkY4Q0U0NzYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NjU2QTEyN0E3NjkyMTFFMzkxODk4RDkwQkY4Q0U0NzYiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5WHowqAAAXNElEQVR42uxda4xd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", import.meta.url).href);
3012
+ return (o, a) => {
3013
+ const r = xe("router-link");
3014
+ return f(), y("div", Da, [
3015
+ b(Xe, { name: "sidebarLogoFade" }, {
3016
+ default: _(() => [
3017
+ n.collapse ? (f(), A(r, {
3018
+ key: "collapse",
3019
+ class: "h-full w-full flex items-center justify-center",
3020
+ to: "/"
3021
+ }, {
3022
+ default: _(() => [
3023
+ v(t).sidebarLogo ? (f(), y("img", {
3024
+ key: 0,
3025
+ src: e.value,
3026
+ class: "w-5 h-5"
3027
+ }, null, 8, La)) : U("", !0)
3028
+ ]),
3029
+ _: 1
3030
+ })) : (f(), A(r, {
3031
+ key: "expand",
3032
+ class: "h-full w-full flex items-center justify-center",
3033
+ to: "/"
3034
+ }, {
3035
+ default: _(() => [
3036
+ v(t).sidebarLogo ? (f(), y("img", {
3037
+ key: 0,
3038
+ src: e.value,
3039
+ class: "w-5 h-5"
3040
+ }, null, 8, qa)) : U("", !0),
3041
+ R("span", Oa, de(v(sn).title), 1)
3042
+ ]),
3043
+ _: 1
3044
+ }))
3045
+ ]),
3046
+ _: 1
3047
+ })
3048
+ ]);
3049
+ };
3050
+ }
3051
+ }), pt = /* @__PURE__ */ $(Ba, [["__scopeId", "data-v-a57666ab"]]), Va = { class: "header" }, za = /* @__PURE__ */ O({
3052
+ __name: "index",
3053
+ setup(n) {
3054
+ const t = ge(), e = De(), o = ne(), { sidebarLogo: a } = ot(t), r = T(() => t.layout), s = M(!0);
3055
+ return ae(
3056
+ () => r.value,
3057
+ () => {
3058
+ s.value = !1, Be(() => {
3059
+ s.value = !0;
3060
+ });
3061
+ }
3062
+ ), (i, l) => {
3063
+ const d = nt, c = Nt;
3064
+ return r.value !== "mix" ? (f(), y("div", {
3065
+ key: 0,
3066
+ class: W([{ "has-logo": v(a) }, "menu-wrap"])
3067
+ }, [
3068
+ v(a) ? (f(), A(pt, {
3069
+ key: 0,
3070
+ collapse: !v(o).sidebar.opened
3071
+ }, null, 8, ["collapse"])) : U("", !0),
3072
+ s.value ? (f(), A(d, { key: 1 }, {
3073
+ default: _(() => [
3074
+ b(Bt, {
3075
+ "menu-list": v(e).routes,
3076
+ "base-path": ""
3077
+ }, null, 8, ["menu-list"])
3078
+ ]),
3079
+ _: 1
3080
+ })) : U("", !0),
3081
+ r.value === "top" ? (f(), A(c, { key: 2 })) : U("", !0)
3082
+ ], 2)) : (f(), y("div", {
3083
+ key: 1,
3084
+ class: W([{ "has-logo": v(a) }, "menu-wrap"])
3085
+ }, [
3086
+ R("div", Va, [
3087
+ v(a) ? (f(), A(pt, {
3088
+ key: 0,
3089
+ collapse: !v(o).sidebar.opened
3090
+ }, null, 8, ["collapse"])) : U("", !0),
3091
+ b(Ca),
3092
+ b(c)
3093
+ ])
3094
+ ], 2));
3095
+ };
3096
+ }
3097
+ }), Ua = /* @__PURE__ */ $(za, [["__scopeId", "data-v-a7cbf656"]]), Wa = {
3098
+ key: 1,
3099
+ class: "mix-wrapper"
3100
+ }, Ya = { class: "mix-wrapper__left" }, Ga = { class: "toggle-sidebar" }, Za = 992, Qa = /* @__PURE__ */ O({
3101
+ __name: "index",
3102
+ setup(n) {
3103
+ const t = De(), { width: e } = _t(), o = ne(), a = ge(), r = T(() => o.activeTopMenu), s = T(() => t.mixLeftMenu), i = T(() => a.layout);
3104
+ ae(
3105
+ () => r.value,
3106
+ (u) => {
3107
+ i.value === "mix" && t.getMixLeftMenu(u);
3108
+ },
3109
+ {
3110
+ deep: !0,
3111
+ immediate: !0
3112
+ }
3113
+ );
3114
+ const l = T(() => ({
3115
+ hideSidebar: !o.sidebar.opened,
3116
+ openSidebar: o.sidebar.opened,
3117
+ withoutAnimation: o.sidebar.withoutAnimation,
3118
+ mobile: o.device === "mobile",
3119
+ isTop: i.value === "top",
3120
+ isMix: i.value === "mix"
3121
+ }));
3122
+ et(() => {
3123
+ e.value < Za ? (o.toggleDevice("mobile"), o.closeSideBar(!0)) : (o.toggleDevice("desktop"), e.value >= 1200 ? o.openSideBar(!0) : o.closeSideBar(!0));
3124
+ });
3125
+ function d() {
3126
+ o.closeSideBar(!1);
3127
+ }
3128
+ function c() {
3129
+ o.toggleSidebar();
3130
+ }
3131
+ return (u, h) => {
3132
+ const P = At;
3133
+ return f(), y("div", {
3134
+ class: W([l.value, "app-wrapper"])
3135
+ }, [
3136
+ l.value.mobile && l.value.openSidebar ? (f(), y("div", {
3137
+ key: 0,
3138
+ class: "drawer__background",
3139
+ onClick: d
3140
+ })) : U("", !0),
3141
+ b(Ua, { class: "sidebar-container" }),
3142
+ i.value === "mix" ? (f(), y("div", Wa, [
3143
+ R("div", Ya, [
3144
+ b(Bt, {
3145
+ "menu-list": s.value,
3146
+ "base-path": r.value
3147
+ }, null, 8, ["menu-list", "base-path"]),
3148
+ R("div", Ga, [
3149
+ b(P, {
3150
+ "is-active": v(o).sidebar.opened,
3151
+ onToggleClick: c
3152
+ }, null, 8, ["is-active"])
3153
+ ])
3154
+ ]),
3155
+ b(mt)
3156
+ ])) : (f(), A(mt, { key: 2 }))
3157
+ ], 2);
3158
+ };
3159
+ }
3160
+ }), ps = /* @__PURE__ */ $(Qa, [["__scopeId", "data-v-bb0d901c"]]);
3161
+ export {
3162
+ ps as default
3163
+ };