mamba-layout 0.19.0 → 0.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
- import { ref as R, readonly as lt, computed as S, unref as g, onActivated as it, onMounted as Je, onUnmounted as Oe, watch as ue, defineComponent as D, openBlock as l, createElementBlock as v, normalizeClass as F, resolveComponent as L, Fragment as K, createBlock as k, resolveDynamicComponent as Se, mergeProps as Fe, withCtx as _, createCommentVNode as I, createElementVNode as d, toDisplayString as E, renderList as H, withDirectives as ct, vShow as ut, createVNode as A, renderSlot as q, watchEffect as He, Transition as De } from "vue";
2
- import { Fold as Qe, ArrowDown as we, Moon as dt, Sunny as pt, Expand as mt, User as ht, ArrowLeft as gt, ArrowRight as _e, Clock as ft } from "@element-plus/icons-vue";
3
- import { useRoute as ie, useRouter as ze } from "vue-router";
4
- import { createI18n as vt } from "vue-i18n";
5
- const yt = 3600 * 24 * 7, Pe = "UTC", Ze = "timezone", bt = [
1
+ import { ref as F, readonly as et, computed as y, unref as p, onMounted as Pe, onUnmounted as Te, defineComponent as M, openBlock as r, createElementBlock as g, normalizeClass as R, resolveComponent as L, Fragment as N, createBlock as T, resolveDynamicComponent as ie, mergeProps as ke, withCtx as C, createCommentVNode as I, createElementVNode as u, toDisplayString as E, renderList as K, withDirectives as tt, vShow as nt, createVNode as b, renderSlot as z, watchEffect as Ie, watch as Le, Transition as Ae } from "vue";
2
+ import { Fold as xe, ArrowDown as ce, Moon as ot, Sunny as at, Expand as st, User as rt, ArrowLeft as lt, ArrowRight as se, Clock as it } from "@element-plus/icons-vue";
3
+ import { useRouter as Ee, useRoute as ct } from "vue-router";
4
+ import { createI18n as ut } from "vue-i18n";
5
+ const dt = 3600 * 24 * 7, ue = "UTC", Me = "timezone", pt = [
6
6
  "UTC",
7
7
  "Asia/Shanghai",
8
8
  "Asia/Hong_Kong",
@@ -12,99 +12,83 @@ const yt = 3600 * 24 * 7, Pe = "UTC", Ze = "timezone", bt = [
12
12
  "Europe/Berlin",
13
13
  "America/New_York",
14
14
  "America/Los_Angeles"
15
- ], Ne = /* @__PURE__ */ new Map(), ve = () => {
15
+ ], _e = /* @__PURE__ */ new Map(), ae = () => {
16
16
  try {
17
17
  return globalThis.localStorage;
18
18
  } catch {
19
19
  return;
20
20
  }
21
- }, $ = {
22
- get(a, e = null) {
23
- const t = ve(), n = t == null ? void 0 : t.getItem(a.toUpperCase());
21
+ }, X = {
22
+ get(o, e = null) {
23
+ const t = ae(), n = t == null ? void 0 : t.getItem(o.toUpperCase());
24
24
  if (!n) return e;
25
25
  try {
26
- const s = JSON.parse(n);
27
- if (s.expire === null || s.expire >= Date.now())
28
- return s.value;
29
- t == null || t.removeItem(a.toUpperCase());
26
+ const a = JSON.parse(n);
27
+ if (a.expire === null || a.expire >= Date.now())
28
+ return a.value;
29
+ t == null || t.removeItem(o.toUpperCase());
30
30
  } catch {
31
31
  return e;
32
32
  }
33
33
  return e;
34
34
  },
35
- set(a, e, t = yt) {
36
- const n = ve(), s = {
35
+ set(o, e, t = dt) {
36
+ const n = ae(), a = {
37
37
  value: e,
38
38
  expire: t === null ? null : Date.now() + t * 1e3
39
39
  };
40
- n == null || n.setItem(a.toUpperCase(), JSON.stringify(s));
40
+ n == null || n.setItem(o.toUpperCase(), JSON.stringify(a));
41
41
  },
42
42
  clear() {
43
- var a;
44
- (a = ve()) == null || a.clear();
43
+ var o;
44
+ (o = ae()) == null || o.clear();
45
45
  }
46
- }, At = (a) => typeof a == "object" && a !== null, Be = (a) => {
47
- if (!At(a) || Object.prototype.toString.call(a) !== "[object Object]") return !1;
48
- const e = Object.getPrototypeOf(a);
46
+ }, mt = (o) => typeof o == "object" && o !== null, Ce = (o) => {
47
+ if (!mt(o) || Object.prototype.toString.call(o) !== "[object Object]") return !1;
48
+ const e = Object.getPrototypeOf(o);
49
49
  return e === null || e === Object.prototype;
50
50
  };
51
- function je(a, e) {
52
- if (!Be(a)) return e;
53
- if (!Be(e)) return a;
54
- const t = a;
51
+ function De(o, e) {
52
+ if (!Ce(o)) return e;
53
+ if (!Ce(e)) return o;
54
+ const t = o;
55
55
  return Object.keys(e).concat(Object.getOwnPropertySymbols(e)).forEach((n) => {
56
- t[n] = je(
56
+ t[n] = De(
57
57
  t[n],
58
58
  e[n]
59
59
  );
60
60
  }), t;
61
61
  }
62
- function qe() {
63
- const a = typeof navigator > "u" ? "en-US" : navigator.language;
64
- return String($.get("locale", a)).includes("zh") ? "zh-CN" : "en-US";
62
+ function Ne() {
63
+ const o = typeof navigator > "u" ? "en-US" : navigator.language;
64
+ return String(X.get("locale", o)).includes("zh") ? "zh-CN" : "en-US";
65
65
  }
66
- const Ue = (a, e, t) => {
66
+ const Se = (o, e, t) => {
67
67
  var n;
68
- return ((n = e == null ? void 0 : e[t]) == null ? void 0 : n[a]) || "";
69
- }, se = (a, e, t = "") => {
70
- const n = a;
71
- return Ue(e, n, qe()) || t || Ue(e, n, "en-US");
72
- }, de = (a = "") => a.replace(/【.*】/, ""), Ye = (a, e, t) => {
73
- var n, s, r, o, c;
74
- for (const p of e) {
75
- const i = ((n = p.path) == null ? void 0 : n.replace(/\/:(\w+)/g, "/([^/]+)")) || "", m = new RegExp(`^${i}$`);
76
- if (((s = p.path) == null ? void 0 : s.toLowerCase()) === a || m.test(a))
77
- return ((r = p.meta) == null ? void 0 : r.visible) === "0" && (t == null ? void 0 : t.path) || "";
78
- if ((o = p.children) != null && o.length) {
79
- const f = Ye(
80
- a,
81
- p.children,
82
- ((c = p.meta) == null ? void 0 : c.visible) === "1" ? p : t
83
- );
84
- if (f) return f;
85
- }
86
- }
87
- return "";
88
- }, _t = (a, e) => {
89
- const t = a.resolve(e);
68
+ return ((n = e == null ? void 0 : e[t]) == null ? void 0 : n[o]) || "";
69
+ }, de = (o, e, t = "") => {
70
+ const n = o;
71
+ return Se(e, n, Ne()) || t || Se(e, n, "en-US");
72
+ }, Be = (o = "") => o.replace(/【.*】/, ""), gt = (o, e) => {
73
+ const t = o.resolve(e);
90
74
  if (!(t != null && t.name)) return !1;
91
- const n = String(t.name).split("-").filter((r) => !!r && r !== "index"), s = t.path.split("-").join("/").split("/").filter(Boolean);
92
- return n.length === s.length && n.every((r, o) => r === s[o]);
93
- }, re = (a) => typeof a == "string" && We(a) ? a : "", We = (a) => {
75
+ const n = String(t.name).split("-").filter((s) => !!s && s !== "index"), a = t.path.split("-").join("/").split("/").filter(Boolean);
76
+ return n.length === a.length && n.every((s, l) => s === a[l]);
77
+ }, V = (o) => typeof o == "string" && Ue(o) ? o : "", Ue = (o) => {
94
78
  try {
95
- return new Intl.DateTimeFormat("en-US", { timeZone: a }).format(/* @__PURE__ */ new Date()), !0;
79
+ return new Intl.DateTimeFormat("en-US", { timeZone: o }).format(/* @__PURE__ */ new Date()), !0;
96
80
  } catch {
97
81
  return !1;
98
82
  }
99
- }, Xe = () => re(Intl.DateTimeFormat().resolvedOptions().timeZone) || Pe, Te = R(
100
- re($.get(Ze)) || Xe()
101
- ), Ct = () => lt(Te);
102
- function St(a) {
103
- const e = re(a);
104
- e && (Te.value = e, $.set(Ze, e, null));
83
+ }, Re = () => V(Intl.DateTimeFormat().resolvedOptions().timeZone) || ue, pe = F(
84
+ V(X.get(Me)) || Re()
85
+ ), ht = () => et(pe);
86
+ function ft(o) {
87
+ const e = V(o);
88
+ e && (pe.value = e, X.set(Me, e, null));
105
89
  }
106
- const wt = (a) => {
107
- const e = re(a) || Pe, t = Ne.get(e);
90
+ const vt = (o) => {
91
+ const e = V(o) || ue, t = _e.get(e);
108
92
  if (t) return t;
109
93
  const n = new Intl.DateTimeFormat("en-US", {
110
94
  timeZone: e,
@@ -116,9 +100,9 @@ const wt = (a) => {
116
100
  second: "2-digit",
117
101
  hourCycle: "h23"
118
102
  });
119
- return Ne.set(e, n), n;
120
- }, Pt = (a, e) => wt(e).formatToParts(a).reduce((n, s) => (s.type !== "literal" && (n[s.type] = Number(s.value)), n), {}), Tt = (a, e = /* @__PURE__ */ new Date()) => {
121
- const t = re(a) || Pe, n = Pt(e, t), s = Date.UTC(
103
+ return _e.set(e, n), n;
104
+ }, yt = (o, e) => vt(e).formatToParts(o).reduce((n, a) => (a.type !== "literal" && (n[a.type] = Number(a.value)), n), {}), bt = (o, e = /* @__PURE__ */ new Date()) => {
105
+ const t = V(o) || ue, n = yt(e, t), a = Date.UTC(
122
106
  n.year || 0,
123
107
  (n.month || 1) - 1,
124
108
  n.day || 1,
@@ -127,106 +111,106 @@ const wt = (a) => {
127
111
  n.second || 0,
128
112
  e.getMilliseconds()
129
113
  );
130
- return Math.round((s - e.getTime()) / 6e4);
131
- }, Ge = (a, e = /* @__PURE__ */ new Date()) => {
132
- const t = Tt(a, e), n = t >= 0 ? "+" : "-", s = Math.abs(t), r = Math.floor(s / 60), o = s % 60;
133
- return `UTC${n}${String(r).padStart(2, "0")}:${String(
134
- o
114
+ return Math.round((a - e.getTime()) / 6e4);
115
+ }, Ke = (o, e = /* @__PURE__ */ new Date()) => {
116
+ const t = bt(o, e), n = t >= 0 ? "+" : "-", a = Math.abs(t), s = Math.floor(a / 60), l = a % 60;
117
+ return `UTC${n}${String(s).padStart(2, "0")}:${String(
118
+ l
135
119
  ).padStart(2, "0")}`;
136
- }, kt = (a, e = /* @__PURE__ */ new Date()) => `${a} (${Ge(a, e)})`, It = (a = /* @__PURE__ */ new Date()) => {
120
+ }, At = (o, e = /* @__PURE__ */ new Date()) => `${o} (${Ke(o, e)})`, _t = (o = /* @__PURE__ */ new Date()) => {
137
121
  const e = new Set(
138
- [Xe(), ...bt, Te.value].filter(
139
- We
122
+ [Re(), ...pt, pe.value].filter(
123
+ Ue
140
124
  )
141
125
  );
142
126
  return Array.from(e).map((t) => {
143
- const n = Ge(t, a);
127
+ const n = Ke(t, o);
144
128
  return {
145
129
  value: t,
146
130
  label: `${t} (${n})`,
147
131
  offset: n
148
132
  };
149
133
  });
150
- }, te = R("light");
151
- function Ve() {
152
- const a = "theme", e = "(prefers-color-scheme: dark)", t = R(!1);
134
+ }, G = F("light");
135
+ function Je() {
136
+ const o = "theme", e = "(prefers-color-scheme: dark)", t = F(!1);
153
137
  let n = !1;
154
- const s = (y) => y === "dark" || y === "light" ? y : null, r = () => typeof window > "u" || typeof window.matchMedia != "function" ? "light" : window.matchMedia(e).matches ? "dark" : "light", o = (y) => {
155
- const C = s($.get(a, null));
156
- return C ? (t.value = !0, C) : y || r();
157
- }, c = (y) => {
158
- typeof document > "u" || document.documentElement.classList.toggle("dark", y === "dark");
159
- }, p = (y) => {
160
- const C = o(y);
161
- return te.value = C, c(C), n = !0, C;
162
- }, i = (y, C) => {
163
- te.value = y, c(y), (C == null ? void 0 : C.persist) !== !1 && ($.set(a, y, null), t.value = !0);
164
- }, m = () => {
165
- i(te.value === "dark" ? "light" : "dark");
166
- }, h = (y) => {
138
+ const a = (_) => _ === "dark" || _ === "light" ? _ : null, s = () => typeof window > "u" || typeof window.matchMedia != "function" ? "light" : window.matchMedia(e).matches ? "dark" : "light", l = (_) => {
139
+ const w = a(X.get(o, null));
140
+ return w ? (t.value = !0, w) : _ || s();
141
+ }, d = (_) => {
142
+ typeof document > "u" || document.documentElement.classList.toggle("dark", _ === "dark");
143
+ }, A = (_) => {
144
+ const w = l(_);
145
+ return G.value = w, d(w), n = !0, w;
146
+ }, i = (_, w) => {
147
+ G.value = _, d(_), (w == null ? void 0 : w.persist) !== !1 && (X.set(o, _, null), t.value = !0);
148
+ }, h = () => {
149
+ i(G.value === "dark" ? "light" : "dark");
150
+ }, m = (_) => {
167
151
  if (!n) {
168
- p(y);
152
+ A(_);
169
153
  return;
170
154
  }
171
- !t.value && y && i(y, { persist: !1 });
172
- }, f = S(() => te.value === "dark");
155
+ !t.value && _ && i(_, { persist: !1 });
156
+ }, f = y(() => G.value === "dark");
173
157
  return {
174
- theme: te,
158
+ theme: G,
175
159
  isDark: f,
176
- initTheme: p,
160
+ initTheme: A,
177
161
  setTheme: i,
178
- toggleTheme: m,
179
- syncThemeFromSetting: h
162
+ toggleTheme: h,
163
+ syncThemeFromSetting: m
180
164
  };
181
165
  }
182
- const Lt = () => typeof location > "u" ? "" : location.href, $e = (a) => (a == null ? void 0 : a.loginPath) || `/login?redirect=${encodeURIComponent(Lt())}`, pe = (a) => {
183
- typeof location > "u" || (location.href = $e(a));
184
- }, xt = (a) => (a == null ? void 0 : a.userCenterPath) || "/usercenter/home", Et = (a) => {
185
- var r;
186
- const e = a.themeColor, t = {};
166
+ const Ct = () => typeof location > "u" ? "" : location.href, Oe = (o) => (o == null ? void 0 : o.loginPath) || `/login?redirect=${encodeURIComponent(Ct())}`, ee = (o) => {
167
+ typeof location > "u" || (location.href = Oe(o));
168
+ }, St = (o) => (o == null ? void 0 : o.userCenterPath) || "/usercenter/home", wt = (o) => {
169
+ var s;
170
+ const e = o.themeColor, t = {};
187
171
  if (e)
188
- for (const o in e) {
189
- if (!e[o]) continue;
190
- const c = "--layout-" + o.replace(/([A-Z])/g, "-$1").toLocaleLowerCase();
191
- t[c] = e[o], o == "colorPrimary" && Mt(e[o]);
172
+ for (const l in e) {
173
+ if (!e[l]) continue;
174
+ const d = "--layout-" + l.replace(/([A-Z])/g, "-$1").toLocaleLowerCase();
175
+ t[d] = e[l], l == "colorPrimary" && Pt(e[l]);
192
176
  }
193
177
  let n = document.getElementById("layout-style");
194
- n && ((r = n.parentNode) == null || r.removeChild(n)), n = document.createElement("style"), n.id = "layout-style", document.head.appendChild(n);
195
- const s = Object.keys(t).map((o) => o + ":" + t[o]).join(";");
196
- n.innerHTML = `html:root{${s}}`;
178
+ n && ((s = n.parentNode) == null || s.removeChild(n)), n = document.createElement("style"), n.id = "layout-style", document.head.appendChild(n);
179
+ const a = Object.keys(t).map((l) => l + ":" + t[l]).join(";");
180
+ n.innerHTML = `html:root{${a}}`;
197
181
  };
198
- function Mt(a) {
199
- var s;
182
+ function Pt(o) {
183
+ var a;
200
184
  let e = document.getElementById("primary-style");
201
- if (a == "theme-default" && e) {
202
- (s = e.parentNode) == null || s.removeChild(e);
185
+ if (o == "theme-default" && e) {
186
+ (a = e.parentNode) == null || a.removeChild(e);
203
187
  return;
204
188
  }
205
- const t = Dt(a);
189
+ const t = Tt(o);
206
190
  e || (e = document.createElement("style"), e.id = "primary-style", document.head.appendChild(e));
207
- const n = Object.keys(t).map((r) => r + ":" + t[r]).join(";");
191
+ const n = Object.keys(t).map((s) => s + ":" + t[s]).join(";");
208
192
  e.innerHTML = `html:root{${n}}`;
209
193
  }
210
- function Dt(a) {
211
- var p;
212
- const e = ((p = a.match(/\d+/g)) == null ? void 0 : p.map(Number)) || [], [t, n, s] = e, r = `rgb(${t}, ${n}, ${s})`, o = (i) => {
213
- const m = i / 100, h = Math.min(255, t + (255 - t) * m), f = Math.min(255, n + (255 - n) * m), y = Math.min(255, s + (255 - s) * m);
214
- return `rgb(${h.toFixed(1)}, ${f.toFixed(1)}, ${y.toFixed(1)})`;
215
- }, c = (i) => {
216
- const m = 1 - i / 100;
217
- return `rgb(${Math.round(t * m)} ${Math.round(n * m)} ${Math.round(s * m)})`;
194
+ function Tt(o) {
195
+ var A;
196
+ const e = ((A = o.match(/\d+/g)) == null ? void 0 : A.map(Number)) || [], [t, n, a] = e, s = `rgb(${t}, ${n}, ${a})`, l = (i) => {
197
+ const h = i / 100, m = Math.min(255, t + (255 - t) * h), f = Math.min(255, n + (255 - n) * h), _ = Math.min(255, a + (255 - a) * h);
198
+ return `rgb(${m.toFixed(1)}, ${f.toFixed(1)}, ${_.toFixed(1)})`;
199
+ }, d = (i) => {
200
+ const h = 1 - i / 100;
201
+ return `rgb(${Math.round(t * h)} ${Math.round(n * h)} ${Math.round(a * h)})`;
218
202
  };
219
203
  return {
220
- "--el-color-primary": r,
221
- "--el-color-primary-light-3": o(30),
222
- "--el-color-primary-light-5": o(50),
223
- "--el-color-primary-light-7": o(70),
224
- "--el-color-primary-light-8": o(80),
225
- "--el-color-primary-light-9": o(90),
226
- "--el-color-primary-dark-2": c(20)
204
+ "--el-color-primary": s,
205
+ "--el-color-primary-light-3": l(30),
206
+ "--el-color-primary-light-5": l(50),
207
+ "--el-color-primary-light-7": l(70),
208
+ "--el-color-primary-light-8": l(80),
209
+ "--el-color-primary-light-9": l(90),
210
+ "--el-color-primary-dark-2": d(20)
227
211
  };
228
212
  }
229
- const Ce = R({
213
+ const re = F({
230
214
  menus: [],
231
215
  layout: "classic",
232
216
  title: "",
@@ -234,118 +218,66 @@ const Ce = R({
234
218
  tabs: "tab",
235
219
  pageType: "common"
236
220
  });
237
- function Q() {
238
- return Ce;
221
+ function J() {
222
+ return re;
239
223
  }
240
- const Nt = (a) => {
241
- const e = Q(), t = a && g(a) || {};
224
+ const kt = (o) => {
225
+ const e = J(), t = o && p(o) || {};
242
226
  if (!(e != null && e.value)) return t;
243
- Ce.value = je(e.value, t);
244
- const { syncThemeFromSetting: n } = Ve();
245
- n(), Et(Ce.value);
246
- }, Bt = 1024, Re = R(), le = R([]), V = R(), ne = R(""), ae = R(""), ye = R(""), oe = Q(), be = R(!0), Ae = R(!1), Ut = R();
247
- function z() {
248
- const a = ie(), e = () => {
249
- var o;
250
- return ((o = oe.value.menus) == null ? void 0 : o.filter((c) => {
251
- var p;
252
- return ((p = c.meta) == null ? void 0 : p.appId) == ae.value;
253
- })) || [];
254
- }, t = (o, c, p = 0, i) => {
255
- var T, N, U, Z;
256
- const m = ie(), h = i ? [...i] : [], f = [], y = [];
257
- for (const M in o) {
258
- [...h], o[M];
259
- const J = ((T = m.meta) == null ? void 0 : T.parent) || m.path, Y = ((N = o[M].path) == null ? void 0 : N.replace(/\/:(\w+)/g, "/([^/]+)")) || "", he = new RegExp(`^${Y}$`);
260
- J == o[M].path ? f.push({ index: M, item: o[M] }) : he.test(J) && y.push({ index: M, item: o[M] });
261
- }
262
- const C = f.length > 0 ? f : y;
263
- if (C.length > 0) {
264
- const M = C[0], J = [...h];
265
- J[p] = M.item, V.value = {
266
- ...M.item,
267
- paths: J.slice(0, p + 1)
268
- }, ae.value = ((U = M.item.meta) == null ? void 0 : U.appId) || "", Re.value = c;
269
- }
270
- for (const M in o)
271
- if (o[M].children && ((Z = o[M].children) != null && Z.length)) {
272
- const J = o[M].children || [], Y = [...h];
273
- Y[p] = o[M], t(J, o[M], p + 1, Y);
274
- }
275
- ye.value = m.meta.parentPath || Ye(
276
- m.path.toLowerCase(),
277
- oe.value.menus || []
278
- ) || m.path;
279
- }, n = () => {
280
- var i, m, h, f, y, C, T, N, U, Z;
281
- t(oe.value.menus || []), ae.value || (ae.value = ((h = (m = (i = oe.value.menus) == null ? void 0 : i.find(
282
- (M) => {
283
- var J;
284
- return (J = M.path) == null ? void 0 : J.startsWith(ne.value);
285
- }
286
- )) == null ? void 0 : m.meta) == null ? void 0 : h.appId) || "");
287
- const o = ((f = V.value) == null ? void 0 : f.paths) || [], c = de(
288
- se(((C = (y = V.value) == null ? void 0 : y.meta) == null ? void 0 : C.translations) || {}, "name")
289
- ), p = ((T = V.value) == null ? void 0 : T.path) == ((N = o[1]) == null ? void 0 : N.path) ? "" : de(se(((Z = (U = o[1]) == null ? void 0 : U.meta) == null ? void 0 : Z.translations) || {}, "name"));
290
- document.title = c + (p ? ` - ${p}` : "");
291
- }, s = () => {
292
- const o = ie();
293
- ne.value = "/" + (o.path.split("/").filter(Boolean).shift() || ""), n(), le.value = e();
294
- }, r = () => {
295
- const o = window.innerWidth < Bt;
296
- Ae.value = o, be.value = !o;
297
- };
298
- return r(), s(), it(() => {
299
- s();
300
- }), Je(() => {
301
- window.addEventListener("resize", r);
302
- }), Oe(() => {
303
- window.removeEventListener("resize", r);
304
- }), ue(
305
- () => ne.value,
306
- () => void (le.value = e())
307
- ), ue(
308
- () => [a.path, oe.value.menus],
309
- () => {
310
- ye.value = "", V.value = void 0, ne.value = "/" + (a.path.split("/").filter(Boolean).shift() || ""), n(), le.value = e(), Ae.value && (be.value = !1);
311
- }
312
- ), {
313
- menus: le,
314
- currentEndRoute: V,
315
- currentTabPath: ne,
316
- currentAppId: ae,
317
- defaultParentActive: ye,
318
- sideOpen: be,
319
- isMobile: Ae,
320
- getMenus: e,
321
- currentEndParentRoute: Re,
322
- leftScrollRef: Ut
227
+ re.value = De(e.value, t);
228
+ const { syncThemeFromSetting: n } = Je();
229
+ n(), wt(re.value);
230
+ }, It = 1024, Y = J(), Fe = F(!0), He = F(!1), Lt = F(), le = () => {
231
+ const o = window.innerWidth < It;
232
+ He.value = o, Fe.value = !o;
233
+ };
234
+ le();
235
+ function H() {
236
+ const o = y(() => Y.value.menus || []);
237
+ Pe(() => {
238
+ window.addEventListener("resize", le);
239
+ }), Te(() => {
240
+ window.removeEventListener("resize", le);
241
+ });
242
+ const e = y(
243
+ () => Y.value.currentEndParentRoute
244
+ ), t = y(() => Y.value.defaultParentActive), n = y(() => Y.value.currentTabPath), a = y(() => Y.value.currentAppId), s = y(() => Y.value.currentEndRoute);
245
+ return {
246
+ menus: o,
247
+ sideOpen: Fe,
248
+ isMobile: He,
249
+ currentEndParentRoute: e,
250
+ defaultParentActive: t,
251
+ currentTabPath: n,
252
+ currentEndRoute: s,
253
+ currentAppId: a,
254
+ leftScrollRef: Lt
323
255
  };
324
256
  }
325
- const Rt = { class: "menu-item-icon" }, Kt = ["innerHTML"], Jt = /* @__PURE__ */ D({
257
+ const xt = { class: "menu-item-icon" }, Et = ["innerHTML"], Mt = /* @__PURE__ */ M({
326
258
  __name: "MenuItemIcon",
327
259
  props: {
328
260
  icon: { default: "metisicon-yingyong" }
329
261
  },
330
- setup(a) {
331
- const e = a, t = S(() => e.icon || "metisicon-yingyong"), n = /^\s*<svg[\s>]/i, s = /\son[a-z]+\s*=\s*("[^"]*"|'[^']*'|[^\s>]+)/gi, r = /<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi, o = /\s(?:href|xlink:href)\s*=\s*("\s*javascript:[^"]*"|'\s*javascript:[^']*')/gi, c = (m) => !!m && n.test(m), p = (m) => !m || !c(m) ? "" : m.replace(r, "").replace(s, "").replace(o, ""), i = S(() => p(t.value));
332
- return (m, h) => (l(), v("div", Rt, [
333
- c(t.value) ? (l(), v("span", {
262
+ setup(o) {
263
+ const e = o, t = y(() => e.icon || "metisicon-yingyong"), n = /^\s*<svg[\s>]/i, a = /\son[a-z]+\s*=\s*("[^"]*"|'[^']*'|[^\s>]+)/gi, s = /<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi, l = /\s(?:href|xlink:href)\s*=\s*("\s*javascript:[^"]*"|'\s*javascript:[^']*')/gi, d = (h) => !!h && n.test(h), A = (h) => !h || !d(h) ? "" : h.replace(s, "").replace(a, "").replace(l, ""), i = y(() => A(t.value));
264
+ return (h, m) => (r(), g("div", xt, [
265
+ d(t.value) ? (r(), g("span", {
334
266
  key: 0,
335
267
  class: "menu-item-icon__svg",
336
268
  innerHTML: i.value
337
- }, null, 8, Kt)) : (l(), v("i", {
269
+ }, null, 8, Et)) : (r(), g("i", {
338
270
  key: 1,
339
- class: F(t.value)
271
+ class: R(t.value)
340
272
  }, null, 2))
341
273
  ]));
342
274
  }
343
- }), B = (a, e) => {
344
- const t = a.__vccOpts || a;
345
- for (const [n, s] of e)
346
- t[n] = s;
275
+ }), D = (o, e) => {
276
+ const t = o.__vccOpts || o;
277
+ for (const [n, a] of e)
278
+ t[n] = a;
347
279
  return t;
348
- }, et = /* @__PURE__ */ B(Jt, [["__scopeId", "data-v-ed060390"]]), Ot = { key: 0 }, Ft = /* @__PURE__ */ D({
280
+ }, Qe = /* @__PURE__ */ D(Mt, [["__scopeId", "data-v-ed060390"]]), Dt = { key: 0 }, Nt = /* @__PURE__ */ M({
349
281
  __name: "AsideSubMenuItem",
350
282
  props: {
351
283
  menu: {
@@ -357,73 +289,73 @@ const Rt = { class: "menu-item-icon" }, Kt = ["innerHTML"], Jt = /* @__PURE__ */
357
289
  default: 1
358
290
  }
359
291
  },
360
- setup(a) {
361
- const e = a, t = S(
292
+ setup(o) {
293
+ const e = o, t = y(
362
294
  () => {
363
295
  var i;
364
- return (i = e.menu.children) == null ? void 0 : i.filter((m) => {
365
- var h;
366
- return ((h = m.meta) == null ? void 0 : h.visible) != "0";
296
+ return (i = e.menu.children) == null ? void 0 : i.filter((h) => {
297
+ var m;
298
+ return ((m = h.meta) == null ? void 0 : m.visible) != "0";
367
299
  });
368
300
  }
369
- ), { defaultParentActive: n, currentTabPath: s } = z(), r = ze(), o = S(() => {
301
+ ), { defaultParentActive: n, currentTabPath: a } = H(), s = Ee(), l = y(() => {
370
302
  var i;
371
- return e.level == 1 && !_t(r, e.menu.path || "") ? "div" : /^http/.test(e.menu.path || "") || !((i = e.menu.path) != null && i.startsWith(s.value)) ? "a" : "router-link";
372
- }), c = S(() => {
303
+ return e.level == 1 && !gt(s, e.menu.path || "") ? "div" : /^http/.test(e.menu.path || "") || !((i = e.menu.path) != null && i.startsWith(a.value)) ? "a" : "router-link";
304
+ }), d = y(() => {
373
305
  var i;
374
- return /^http/.test(e.menu.path || "") || !((i = e.menu.path) != null && i.startsWith(s.value)) ? {
306
+ return /^http/.test(e.menu.path || "") || !((i = e.menu.path) != null && i.startsWith(a.value)) ? {
375
307
  href: e.menu.path || ""
376
308
  } : {
377
309
  to: e.menu.path || ""
378
310
  };
379
- }), p = S(
311
+ }), A = y(
380
312
  () => {
381
313
  var i;
382
314
  return String(e.menu.icon || ((i = e.menu.meta) == null ? void 0 : i.icon) || "metisicon-yingyong");
383
315
  }
384
316
  );
385
- return (i, m) => {
386
- var f, y;
387
- const h = L("AsideSubMenuItem", !0);
388
- return l(), v(K, null, [
389
- (l(), k(Se(o.value), Fe({
317
+ return (i, h) => {
318
+ var f, _;
319
+ const m = L("AsideSubMenuItem", !0);
320
+ return r(), g(N, null, [
321
+ (r(), T(ie(l.value), ke({
390
322
  class: ["pt-1 pb-1 pl-3 pr-3 flex items-center gap-2 rounded-md", [
391
- e.menu.path == g(n) ? "bg-[var(--ui-sidebar-active-bg,var(--el-fill-color))] text-[var(--ui-sidebar-active-fg)] font-medium" : "text-[var(--ui-sidebar-foreground)]",
323
+ e.menu.path == p(n) ? "bg-[var(--ui-sidebar-active-bg,var(--el-fill-color))] text-[var(--ui-sidebar-active-fg)] font-medium" : "text-[var(--ui-sidebar-foreground)]",
392
324
  (f = t.value) != null && f.length ? " h-7" : " h-9.5 cursor-pointer hover:bg-[var(--ui-sidebar-hover-bg)]"
393
325
  ]],
394
326
  style: { paddingLeft: "calc(var(--spacing) * 3)" }
395
- }, c.value), {
396
- default: _(() => {
397
- var C, T, N, U;
327
+ }, d.value), {
328
+ default: C(() => {
329
+ var w, k, B, O;
398
330
  return [
399
- (C = t.value) != null && C.length ? I("", !0) : (l(), k(et, {
331
+ (w = t.value) != null && w.length ? I("", !0) : (r(), T(Qe, {
400
332
  key: 0,
401
- icon: p.value,
402
- class: F(["text-md", [
403
- e.menu.path == g(n) ? "opacity-100" : "opacity-60"
333
+ icon: A.value,
334
+ class: R(["text-md", [
335
+ e.menu.path == p(n) ? "opacity-100" : "opacity-60"
404
336
  ]])
405
337
  }, null, 8, ["icon", "class"])),
406
- d("div", {
407
- class: F(["truncate", (T = t.value) != null && T.length ? "text-xs text-gray-400" : ""])
408
- }, E(g(de)(g(se)(((U = (N = e.menu) == null ? void 0 : N.meta) == null ? void 0 : U.translations) || {}, "name"))), 3)
338
+ u("div", {
339
+ class: R(["truncate", (k = t.value) != null && k.length ? "text-xs text-gray-400" : ""])
340
+ }, E(p(Be)(p(de)(((O = (B = e.menu) == null ? void 0 : B.meta) == null ? void 0 : O.translations) || {}, "name"))), 3)
409
341
  ];
410
342
  }),
411
343
  _: 1
412
344
  }, 16, ["class"])),
413
- (y = t.value) != null && y.length ? (l(), v("div", Ot, [
414
- (l(!0), v(K, null, H(t.value, (C, T) => (l(), k(h, {
415
- menu: C,
416
- key: T,
345
+ (_ = t.value) != null && _.length ? (r(), g("div", Dt, [
346
+ (r(!0), g(N, null, K(t.value, (w, k) => (r(), T(m, {
347
+ menu: w,
348
+ key: k,
417
349
  level: e.level + 1
418
350
  }, null, 8, ["menu", "level"]))), 128))
419
351
  ])) : I("", !0)
420
352
  ], 64);
421
353
  };
422
354
  }
423
- }), Ht = { class: "h-full" }, Qt = {
355
+ }), Bt = { class: "h-full" }, Ut = {
424
356
  key: 0,
425
357
  class: ""
426
- }, tt = /* @__PURE__ */ D({
358
+ }, ze = /* @__PURE__ */ M({
427
359
  __name: "AsideSubMenus",
428
360
  props: {
429
361
  menus: {
@@ -431,173 +363,173 @@ const Rt = { class: "menu-item-icon" }, Kt = ["innerHTML"], Jt = /* @__PURE__ */
431
363
  default: () => []
432
364
  }
433
365
  },
434
- setup(a) {
435
- const e = a;
366
+ setup(o) {
367
+ const e = o;
436
368
  return (t, n) => {
437
- var s;
438
- return ct((l(), v("div", Ht, [
439
- (s = e.menus) != null && s.length ? (l(), v("div", Qt, [
440
- (l(!0), v(K, null, H(e.menus.filter((r) => {
441
- var o;
442
- return ((o = r.meta) == null ? void 0 : o.visible) != "0";
443
- }), (r, o) => (l(), k(Ft, {
444
- key: o,
445
- menu: r
369
+ var a;
370
+ return tt((r(), g("div", Bt, [
371
+ (a = e.menus) != null && a.length ? (r(), g("div", Ut, [
372
+ (r(!0), g(N, null, K(e.menus.filter((s) => {
373
+ var l;
374
+ return ((l = s.meta) == null ? void 0 : l.visible) != "0";
375
+ }), (s, l) => (r(), T(Nt, {
376
+ key: l,
377
+ menu: s
446
378
  }, null, 8, ["menu"]))), 128))
447
379
  ])) : I("", !0)
448
380
  ], 512)), [
449
- [ut, e.menus.length]
381
+ [nt, e.menus.length]
450
382
  ]);
451
383
  };
452
384
  }
453
- }), zt = {
385
+ }), Rt = {
454
386
  key: 0,
455
387
  class: "aside-bar__mobile-head flex justify-between items-center pt-4 pb-4 px-4"
456
- }, Zt = { class: "p-3" }, jt = /* @__PURE__ */ D({
388
+ }, Kt = { class: "p-3" }, Jt = /* @__PURE__ */ M({
457
389
  __name: "AsideBar",
458
- setup(a) {
459
- const { menus: e, isMobile: t, sideOpen: n } = z(), s = () => void (n.value = !n.value);
460
- return (r, o) => {
461
- const c = L("el-icon"), p = L("el-scrollbar");
462
- return g(e).length && !r.$route.meta.hideSidebar ? (l(), v("div", {
390
+ setup(o) {
391
+ const { menus: e, isMobile: t, sideOpen: n } = H(), a = () => void (n.value = !n.value);
392
+ return (s, l) => {
393
+ const d = L("el-icon"), A = L("el-scrollbar");
394
+ return p(e).length && !s.$route.meta.hideSidebar ? (r(), g("div", {
463
395
  key: 0,
464
- class: F(["aside-bar flex flex-col h-full min-h-0 w-64 min-width-50", [
465
- g(t) ? "fixed top-0 left-0 z-200 transition-all" : "",
466
- g(n) ? "translate-x-[0px]" : "translate-x-[-100%]"
396
+ class: R(["aside-bar flex flex-col h-full min-h-0 w-64 min-width-50", [
397
+ p(t) ? "fixed top-0 left-0 z-200 transition-all" : "",
398
+ p(n) ? "translate-x-[0px]" : "translate-x-[-100%]"
467
399
  ]])
468
400
  }, [
469
- g(t) ? (l(), v("div", zt, [
470
- d("div", {
401
+ p(t) ? (r(), g("div", Rt, [
402
+ u("div", {
471
403
  class: "aside-bar__close text-lg cursor-pointer p-2 leading-4",
472
- onClick: s
404
+ onClick: a
473
405
  }, [
474
- A(c, null, {
475
- default: _(() => [
476
- A(g(Qe))
406
+ b(d, null, {
407
+ default: C(() => [
408
+ b(p(xe))
477
409
  ]),
478
410
  _: 1
479
411
  })
480
412
  ])
481
413
  ])) : I("", !0),
482
- A(p, { ref: "leftScrollRef" }, {
483
- default: _(() => [
484
- d("div", Zt, [
485
- A(tt, { menus: g(e) }, null, 8, ["menus"])
414
+ b(A, { ref: "leftScrollRef" }, {
415
+ default: C(() => [
416
+ u("div", Kt, [
417
+ b(ze, { menus: p(e) }, null, 8, ["menus"])
486
418
  ])
487
419
  ]),
488
420
  _: 1
489
421
  }, 512),
490
- q(r.$slots, "sidebar-foot", {}, void 0, !0)
422
+ z(s.$slots, "sidebar-foot", {}, void 0, !0)
491
423
  ], 2)) : I("", !0);
492
424
  };
493
425
  }
494
- }), qt = /* @__PURE__ */ B(jt, [["__scopeId", "data-v-ff960d0f"]]);
495
- function nt() {
496
- const a = Q(), e = S(() => a.value.appList || []);
426
+ }), Ot = /* @__PURE__ */ D(Jt, [["__scopeId", "data-v-ff960d0f"]]);
427
+ function Ze() {
428
+ const o = J(), e = y(() => o.value.appList || []);
497
429
  return {
498
430
  appList: e,
499
- getAppPath: (s) => (s == null ? void 0 : s.path) || "",
500
- findAppById: (s) => {
501
- if (s)
502
- return at(e.value, s);
431
+ getAppPath: (a) => (a == null ? void 0 : a.path) || "",
432
+ findAppById: (a) => {
433
+ if (a)
434
+ return je(e.value, a);
503
435
  }
504
436
  };
505
437
  }
506
- const at = (a, e) => a.reduce(
507
- (t, n) => t || (n.appId === e ? n : at(n.children || [], e)),
438
+ const je = (o, e) => o.reduce(
439
+ (t, n) => t || (n.appId === e ? n : je(n.children || [], e)),
508
440
  void 0
509
- ), Yt = {
441
+ ), Ft = {
510
442
  key: 0,
511
443
  class: "app-select"
512
- }, Wt = ["href"], Xt = {
444
+ }, Ht = ["href"], Qt = {
513
445
  key: 0,
514
446
  class: "app-select__dropdown"
515
- }, Gt = ["href"], Vt = { class: "app-select__dropdown-icon text-xl" }, $t = { class: "app-select__dropdown-desc" }, en = /* @__PURE__ */ D({
447
+ }, zt = ["href"], Zt = { class: "app-select__dropdown-icon text-xl" }, jt = { class: "app-select__dropdown-desc" }, qt = /* @__PURE__ */ M({
516
448
  __name: "AppSelect",
517
- setup(a) {
518
- const { currentAppId: e } = z(), { appList: t, getAppPath: n } = nt(), s = (r) => {
519
- var o;
520
- return e.value === r.appId || !!((o = r.children) != null && o.some((c) => c.appId === e.value));
449
+ setup(o) {
450
+ const { currentAppId: e } = H(), { appList: t, getAppPath: n } = Ze(), a = (s) => {
451
+ var l;
452
+ return e.value === s.appId || !!((l = s.children) != null && l.some((d) => d.appId === e.value));
521
453
  };
522
- return (r, o) => {
523
- var p;
524
- const c = L("el-icon");
525
- return (p = g(t)) != null && p.length ? (l(), v("div", Yt, [
526
- (l(!0), v(K, null, H(g(t), (i) => {
527
- var m, h;
528
- return l(), v("div", {
454
+ return (s, l) => {
455
+ var A;
456
+ const d = L("el-icon");
457
+ return (A = p(t)) != null && A.length ? (r(), g("div", Ft, [
458
+ (r(!0), g(N, null, K(p(t), (i) => {
459
+ var h, m;
460
+ return r(), g("div", {
529
461
  key: i.appId,
530
462
  class: "app-select__group"
531
463
  }, [
532
- d("a", {
533
- class: F(["app-select__link", {
534
- "app-select__link--active": s(i)
464
+ u("a", {
465
+ class: R(["app-select__link", {
466
+ "app-select__link--active": a(i)
535
467
  }]),
536
- href: g(n)(i) || void 0
468
+ href: p(n)(i) || void 0
537
469
  }, [
538
- d("span", null, E(i.name), 1),
539
- (m = i.children) != null && m.length ? (l(), k(c, { key: 0 }, {
540
- default: _(() => [
541
- A(g(we))
470
+ u("span", null, E(i.name), 1),
471
+ (h = i.children) != null && h.length ? (r(), T(d, { key: 0 }, {
472
+ default: C(() => [
473
+ b(p(ce))
542
474
  ]),
543
475
  _: 1
544
476
  })) : I("", !0)
545
- ], 10, Wt),
546
- (h = i.children) != null && h.length ? (l(), v("div", Xt, [
547
- (l(!0), v(K, null, H(i.children, (f) => (l(), v("a", {
477
+ ], 10, Ht),
478
+ (m = i.children) != null && m.length ? (r(), g("div", Qt, [
479
+ (r(!0), g(N, null, K(i.children, (f) => (r(), g("a", {
548
480
  key: f.appId,
549
- class: F(["app-select__dropdown-item", {
550
- "app-select__dropdown-item--active": s(f)
481
+ class: R(["app-select__dropdown-item", {
482
+ "app-select__dropdown-item--active": a(f)
551
483
  }]),
552
- href: g(n)(f) || void 0
484
+ href: p(n)(f) || void 0
553
485
  }, [
554
- d("span", Vt, [
555
- d("i", {
556
- class: F(f.icon || "metisicon-moxingku")
486
+ u("span", Zt, [
487
+ u("i", {
488
+ class: R(f.icon || "metisicon-moxingku")
557
489
  }, null, 2)
558
490
  ]),
559
- d("div", null, [
560
- d("div", null, E(f.name), 1),
561
- d("div", $t, E(f.desc), 1)
491
+ u("div", null, [
492
+ u("div", null, E(f.name), 1),
493
+ u("div", jt, E(f.desc), 1)
562
494
  ])
563
- ], 10, Gt))), 128))
495
+ ], 10, zt))), 128))
564
496
  ])) : I("", !0)
565
497
  ]);
566
498
  }), 128))
567
499
  ])) : I("", !0);
568
500
  };
569
501
  }
570
- }), tn = /* @__PURE__ */ B(en, [["__scopeId", "data-v-e2f5efb7"]]), nn = /* @__PURE__ */ D({
502
+ }), Yt = /* @__PURE__ */ D(qt, [["__scopeId", "data-v-e2f5efb7"]]), Xt = /* @__PURE__ */ M({
571
503
  __name: "NavIconBtn",
572
504
  props: {
573
505
  tag: { default: "button" },
574
506
  type: { default: "button" },
575
507
  iconOnly: { type: Boolean, default: !0 }
576
508
  },
577
- setup(a) {
578
- return (e, t) => (l(), k(Se(a.tag), {
579
- type: a.tag === "button" ? a.type : void 0,
580
- class: F(["nav-icon-btn", { "nav-icon-btn--icon-only": a.iconOnly }])
509
+ setup(o) {
510
+ return (e, t) => (r(), T(ie(o.tag), {
511
+ type: o.tag === "button" ? o.type : void 0,
512
+ class: R(["nav-icon-btn", { "nav-icon-btn--icon-only": o.iconOnly }])
581
513
  }, {
582
- default: _(() => [
583
- q(e.$slots, "default", {}, void 0, !0)
514
+ default: C(() => [
515
+ z(e.$slots, "default", {}, void 0, !0)
584
516
  ]),
585
517
  _: 3
586
518
  }, 8, ["type", "class"]));
587
519
  }
588
- }), ee = /* @__PURE__ */ B(nn, [["__scopeId", "data-v-824bbddc"]]), an = /* @__PURE__ */ D({
520
+ }), W = /* @__PURE__ */ D(Xt, [["__scopeId", "data-v-824bbddc"]]), Wt = /* @__PURE__ */ M({
589
521
  __name: "ThemeToggle",
590
- setup(a) {
591
- const e = Q(), { theme: t, isDark: n, toggleTheme: s } = Ve();
592
- return He(() => {
522
+ setup(o) {
523
+ const e = J(), { theme: t, isDark: n, toggleTheme: a } = Je();
524
+ return Ie(() => {
593
525
  e.value.theme = t.value;
594
- }), (r, o) => {
595
- const c = L("el-icon");
596
- return l(), k(ee, { onClick: g(s) }, {
597
- default: _(() => [
598
- A(c, null, {
599
- default: _(() => [
600
- g(n) ? (l(), k(g(pt), { key: 1 })) : (l(), k(g(dt), { key: 0 }))
526
+ }), (s, l) => {
527
+ const d = L("el-icon");
528
+ return r(), T(W, { onClick: p(a) }, {
529
+ default: C(() => [
530
+ b(d, null, {
531
+ default: C(() => [
532
+ p(n) ? (r(), T(p(at), { key: 1 })) : (r(), T(p(ot), { key: 0 }))
601
533
  ]),
602
534
  _: 1
603
535
  })
@@ -606,7 +538,7 @@ const at = (a, e) => a.reduce(
606
538
  }, 8, ["onClick"]);
607
539
  };
608
540
  }
609
- }), ot = /* @__PURE__ */ B(an, [["__scopeId", "data-v-e6ea60b7"]]), on = {
541
+ }), qe = /* @__PURE__ */ D(Wt, [["__scopeId", "data-v-e6ea60b7"]]), Gt = {
610
542
  label: {
611
543
  clickToChangeImage: "Click to change image"
612
544
  },
@@ -614,7 +546,7 @@ const at = (a, e) => a.reduce(
614
546
  uploadIng: "Uploading...",
615
547
  agreementTip1: "Terms of Service and Privacy Policy"
616
548
  }
617
- }, sn = {
549
+ }, Vt = {
618
550
  label: {
619
551
  agreement: "I agree to",
620
552
  and: "and",
@@ -819,7 +751,7 @@ const at = (a, e) => a.reduce(
819
751
  loginHeroTitle: "Enterprise AI Platform for Model Services & Compute",
820
752
  loginHeroDesc: "Unified API access to multi-model routing, compute orchestration, and AI service operations, built for enterprise."
821
753
  }
822
- }, rn = {
754
+ }, $t = {
823
755
  btn: {
824
756
  agree: "Agree",
825
757
  disagree: "Disagree",
@@ -857,7 +789,7 @@ const at = (a, e) => a.reduce(
857
789
  },
858
790
  pleaseSelect: "Please select {0}",
859
791
  seeMore: "See More"
860
- }, ln = {
792
+ }, en = {
861
793
  notFound: {
862
794
  title: "Coming Soon!",
863
795
  description: "This page is under development. Please refresh the page or click the button below to return to the homepage.",
@@ -892,7 +824,7 @@ const at = (a, e) => a.reduce(
892
824
  folder: "folder",
893
825
  file: "file"
894
826
  }
895
- }, cn = {
827
+ }, tn = {
896
828
  label: {
897
829
  languageModel: "Language Model"
898
830
  },
@@ -1041,7 +973,7 @@ const at = (a, e) => a.reduce(
1041
973
  CNY: "Chinese Yuan",
1042
974
  USD: "US Dollar"
1043
975
  }
1044
- }, un = {
976
+ }, nn = {
1045
977
  label: {},
1046
978
  btn: {
1047
979
  search: "Search",
@@ -1050,7 +982,7 @@ const at = (a, e) => a.reduce(
1050
982
  expand: "Expand"
1051
983
  },
1052
984
  msg: {}
1053
- }, dn = {
985
+ }, on = {
1054
986
  label: {
1055
987
  otherConfig: "Other Settings"
1056
988
  },
@@ -1065,7 +997,7 @@ const at = (a, e) => a.reduce(
1065
997
  StaticPrefixInput: {
1066
998
  notEmpty: "Cannot be empty"
1067
999
  }
1068
- }, pn = {
1000
+ }, an = {
1069
1001
  label: {},
1070
1002
  btn: {},
1071
1003
  msg: {
@@ -1081,17 +1013,17 @@ const at = (a, e) => a.reduce(
1081
1013
  charError: "Passwords must contain letters, numbers, and special symbols",
1082
1014
  charTypeError: "The password must contain at least three types: uppercase letters, lowercase letters, numbers, and special symbols"
1083
1015
  }
1084
- }, mn = {
1016
+ }, sn = {
1085
1017
  name: "English",
1086
- common: rn,
1087
- account: on,
1088
- admin: sn,
1089
- components: ln,
1090
- constant: cn,
1091
- filterBox: un,
1092
- password: pn,
1093
- instanceForm: dn
1094
- }, hn = {
1018
+ common: $t,
1019
+ account: Gt,
1020
+ admin: Vt,
1021
+ components: en,
1022
+ constant: tn,
1023
+ filterBox: nn,
1024
+ password: an,
1025
+ instanceForm: on
1026
+ }, rn = {
1095
1027
  label: {
1096
1028
  clickToChangeImage: "点击更换图像"
1097
1029
  },
@@ -1099,7 +1031,7 @@ const at = (a, e) => a.reduce(
1099
1031
  uploadIng: "上传中...",
1100
1032
  agreementTip1: "服务协议及隐私保护"
1101
1033
  }
1102
- }, gn = {
1034
+ }, ln = {
1103
1035
  label: {
1104
1036
  agreement: "我已同意",
1105
1037
  and: "和",
@@ -1302,7 +1234,7 @@ const at = (a, e) => a.reduce(
1302
1234
  loginHeroTitle: "泛 AI 聚合与分发服务",
1303
1235
  loginHeroDesc: "通过 API 调度,实现模型调用、AI 应用构建、数据与工具服务的在线分发与使用。"
1304
1236
  }
1305
- }, fn = {
1237
+ }, cn = {
1306
1238
  btn: {
1307
1239
  agree: "同意",
1308
1240
  disagree: "不同意",
@@ -1340,7 +1272,7 @@ const at = (a, e) => a.reduce(
1340
1272
  },
1341
1273
  pleaseSelect: "请选择{0}",
1342
1274
  seeMore: "查看更多"
1343
- }, vn = {
1275
+ }, un = {
1344
1276
  notFound: {
1345
1277
  title: "开发中,敬请期待!",
1346
1278
  description: "页面开发中,请刷新页面,或者点击下面的按钮返回主页.",
@@ -1375,7 +1307,7 @@ const at = (a, e) => a.reduce(
1375
1307
  folder: "文件夹",
1376
1308
  file: "文件"
1377
1309
  }
1378
- }, yn = {
1310
+ }, dn = {
1379
1311
  label: {
1380
1312
  languageModel: "语言模型"
1381
1313
  },
@@ -1524,7 +1456,7 @@ const at = (a, e) => a.reduce(
1524
1456
  CNY: "人民币",
1525
1457
  USD: "美元"
1526
1458
  }
1527
- }, bn = {
1459
+ }, pn = {
1528
1460
  label: {},
1529
1461
  btn: {
1530
1462
  search: "搜索",
@@ -1533,7 +1465,7 @@ const at = (a, e) => a.reduce(
1533
1465
  expand: "展开"
1534
1466
  },
1535
1467
  msg: {}
1536
- }, An = {
1468
+ }, mn = {
1537
1469
  label: {
1538
1470
  otherConfig: "其他配置"
1539
1471
  },
@@ -1548,7 +1480,7 @@ const at = (a, e) => a.reduce(
1548
1480
  StaticPrefixInput: {
1549
1481
  notEmpty: "不能为空"
1550
1482
  }
1551
- }, _n = {
1483
+ }, gn = {
1552
1484
  label: {},
1553
1485
  btn: {},
1554
1486
  msg: {
@@ -1564,63 +1496,63 @@ const at = (a, e) => a.reduce(
1564
1496
  charError: "密码必须包含字母、数字、特殊符号",
1565
1497
  charTypeError: "密码必须包含至少以下三种(大写字母、小写字母、数字、特殊符号)"
1566
1498
  }
1567
- }, Cn = {
1499
+ }, hn = {
1568
1500
  name: "中文简体",
1569
- common: fn,
1570
- account: hn,
1571
- admin: gn,
1572
- components: vn,
1573
- constant: yn,
1574
- filterBox: bn,
1575
- password: _n,
1576
- instanceForm: An
1577
- }, ce = {
1578
- "en-US": mn,
1579
- "zh-CN": Cn
1580
- }, me = vt({
1581
- locale: qe(),
1501
+ common: cn,
1502
+ account: rn,
1503
+ admin: ln,
1504
+ components: un,
1505
+ constant: dn,
1506
+ filterBox: pn,
1507
+ password: gn,
1508
+ instanceForm: mn
1509
+ }, $ = {
1510
+ "en-US": sn,
1511
+ "zh-CN": hn
1512
+ }, te = ut({
1513
+ locale: Ne(),
1582
1514
  fallbackLocale: "en-US",
1583
- messages: ce,
1515
+ messages: $,
1584
1516
  legacy: !1
1585
- }), Sn = {
1517
+ }), fn = {
1586
1518
  key: 0,
1587
1519
  class: "language-select__current"
1588
- }, wn = { class: "language-select__panel" }, Pn = ["onClick"], Tn = /* @__PURE__ */ D({
1520
+ }, vn = { class: "language-select__panel" }, yn = ["onClick"], bn = /* @__PURE__ */ M({
1589
1521
  __name: "LanguageSelect",
1590
1522
  props: {
1591
1523
  showLabel: { type: Boolean, default: !1 }
1592
1524
  },
1593
- setup(a) {
1594
- const { locale: e } = me.global, t = S(
1595
- () => ce[e.value].name
1596
- ), n = Object.keys(ce).map((r) => ({
1597
- label: ce[r].name,
1598
- value: r
1599
- })), s = (r) => {
1600
- $.set("locale", r), location.reload();
1525
+ setup(o) {
1526
+ const { locale: e } = te.global, t = y(
1527
+ () => $[e.value].name
1528
+ ), n = Object.keys($).map((s) => ({
1529
+ label: $[s].name,
1530
+ value: s
1531
+ })), a = (s) => {
1532
+ X.set("locale", s), location.reload();
1601
1533
  };
1602
- return (r, o) => {
1603
- const c = L("el-icon"), p = L("el-popover");
1604
- return l(), k(p, {
1534
+ return (s, l) => {
1535
+ const d = L("el-icon"), A = L("el-popover");
1536
+ return r(), T(A, {
1605
1537
  placement: "bottom",
1606
1538
  width: 180,
1607
1539
  trigger: "hover",
1608
1540
  "popper-class": "top-language-popover"
1609
1541
  }, {
1610
- reference: _(() => [
1611
- A(ee, {
1542
+ reference: C(() => [
1543
+ b(W, {
1612
1544
  "langselect-toggle": "",
1613
1545
  tag: "div",
1614
1546
  class: "language-select",
1615
- "icon-only": !a.showLabel,
1547
+ "icon-only": !o.showLabel,
1616
1548
  title: t.value,
1617
1549
  "aria-label": t.value
1618
1550
  }, {
1619
- default: _(() => [
1620
- q(r.$slots, "prefix", {}, void 0, !0),
1621
- A(c, null, {
1622
- default: _(() => [...o[0] || (o[0] = [
1623
- d("svg", {
1551
+ default: C(() => [
1552
+ z(s.$slots, "prefix", {}, void 0, !0),
1553
+ b(d, null, {
1554
+ default: C(() => [...l[0] || (l[0] = [
1555
+ u("svg", {
1624
1556
  xmlns: "http://www.w3.org/2000/svg",
1625
1557
  width: "24",
1626
1558
  height: "24",
@@ -1634,24 +1566,24 @@ const at = (a, e) => a.reduce(
1634
1566
  "aria-hidden": "true",
1635
1567
  class: "lucide lucide-globe"
1636
1568
  }, [
1637
- d("circle", {
1569
+ u("circle", {
1638
1570
  cx: "12",
1639
1571
  cy: "12",
1640
1572
  r: "10"
1641
1573
  }),
1642
- d("path", { d: "M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20" }),
1643
- d("path", { d: "M2 12h20" })
1574
+ u("path", { d: "M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20" }),
1575
+ u("path", { d: "M2 12h20" })
1644
1576
  ], -1)
1645
1577
  ])]),
1646
1578
  _: 1
1647
1579
  }),
1648
- a.showLabel ? (l(), v("span", Sn, E(t.value), 1)) : I("", !0),
1649
- a.showLabel ? (l(), k(c, {
1580
+ o.showLabel ? (r(), g("span", fn, E(t.value), 1)) : I("", !0),
1581
+ o.showLabel ? (r(), T(d, {
1650
1582
  key: 1,
1651
1583
  class: "language-select__caret"
1652
1584
  }, {
1653
- default: _(() => [
1654
- A(g(we))
1585
+ default: C(() => [
1586
+ b(p(ce))
1655
1587
  ]),
1656
1588
  _: 1
1657
1589
  })) : I("", !0)
@@ -1659,55 +1591,55 @@ const at = (a, e) => a.reduce(
1659
1591
  _: 3
1660
1592
  }, 8, ["icon-only", "title", "aria-label"])
1661
1593
  ]),
1662
- default: _(() => [
1663
- d("div", wn, [
1664
- (l(!0), v(K, null, H(g(n), (i) => (l(), v("div", {
1594
+ default: C(() => [
1595
+ u("div", vn, [
1596
+ (r(!0), g(N, null, K(p(n), (i) => (r(), g("div", {
1665
1597
  key: i.value,
1666
- class: F(["language-select__option", { "language-select__option--active": i.value === g(e) }]),
1667
- onClick: (m) => s(i.value)
1668
- }, E(i.label), 11, Pn))), 128))
1598
+ class: R(["language-select__option", { "language-select__option--active": i.value === p(e) }]),
1599
+ onClick: (h) => a(i.value)
1600
+ }, E(i.label), 11, yn))), 128))
1669
1601
  ])
1670
1602
  ]),
1671
1603
  _: 3
1672
1604
  });
1673
1605
  };
1674
1606
  }
1675
- }), st = /* @__PURE__ */ B(Tn, [["__scopeId", "data-v-48306ad1"]]), kn = { class: "mobile-user-popover" }, In = ["href"], Ln = /* @__PURE__ */ D({
1607
+ }), Ye = /* @__PURE__ */ D(bn, [["__scopeId", "data-v-48306ad1"]]), An = { class: "mobile-user-popover" }, _n = ["href"], Cn = /* @__PURE__ */ M({
1676
1608
  __name: "AsideUserMobilePopover",
1677
- setup(a) {
1678
- const { t: e } = me.global, t = Q(), n = S(() => xt(t.value)), s = () => {
1679
- var r, o;
1680
- Promise.resolve((o = (r = t.value).onLogout) == null ? void 0 : o.call(r)).finally(() => {
1681
- t.value.onLogout || pe(t.value);
1609
+ setup(o) {
1610
+ const { t: e } = te.global, t = J(), n = y(() => St(t.value)), a = () => {
1611
+ var s, l;
1612
+ Promise.resolve((l = (s = t.value).onLogout) == null ? void 0 : l.call(s)).finally(() => {
1613
+ t.value.onLogout || ee(t.value);
1682
1614
  });
1683
1615
  };
1684
- return (r, o) => {
1685
- const c = L("el-popover");
1686
- return l(), k(c, {
1616
+ return (s, l) => {
1617
+ const d = L("el-popover");
1618
+ return r(), T(d, {
1687
1619
  width: 220,
1688
1620
  trigger: "click",
1689
1621
  "popper-class": "top-userinfo-popover"
1690
1622
  }, {
1691
- reference: _(() => [
1692
- q(r.$slots, "reference", {}, void 0, !0)
1623
+ reference: C(() => [
1624
+ z(s.$slots, "reference", {}, void 0, !0)
1693
1625
  ]),
1694
- default: _(() => [
1695
- d("div", kn, [
1696
- d("a", {
1626
+ default: C(() => [
1627
+ u("div", An, [
1628
+ u("a", {
1697
1629
  href: n.value,
1698
1630
  class: "mobile-user-popover__item"
1699
1631
  }, [
1700
- o[0] || (o[0] = d("i", { class: "metisicon-yonghu1" }, null, -1)),
1701
- d("span", null, E(g(e)("admin.label.profile")), 1)
1702
- ], 8, In),
1703
- A(st),
1704
- o[2] || (o[2] = d("div", { class: "mobile-user-popover__divider" }, null, -1)),
1705
- d("div", {
1632
+ l[0] || (l[0] = u("i", { class: "metisicon-yonghu1" }, null, -1)),
1633
+ u("span", null, E(p(e)("admin.label.profile")), 1)
1634
+ ], 8, _n),
1635
+ b(Ye),
1636
+ l[2] || (l[2] = u("div", { class: "mobile-user-popover__divider" }, null, -1)),
1637
+ u("div", {
1706
1638
  class: "mobile-user-popover__item mobile-user-popover__item--danger",
1707
- onClick: s
1639
+ onClick: a
1708
1640
  }, [
1709
- o[1] || (o[1] = d("i", { class: "metisicon-exit-full" }, null, -1)),
1710
- d("span", null, E(g(e)("common.btn.logout")), 1)
1641
+ l[1] || (l[1] = u("i", { class: "metisicon-exit-full" }, null, -1)),
1642
+ u("span", null, E(p(e)("common.btn.logout")), 1)
1711
1643
  ])
1712
1644
  ])
1713
1645
  ]),
@@ -1715,115 +1647,115 @@ const at = (a, e) => a.reduce(
1715
1647
  });
1716
1648
  };
1717
1649
  }
1718
- }), rt = /* @__PURE__ */ B(Ln, [["__scopeId", "data-v-87e082b1"]]), xn = { class: "header-right-mobile" }, En = /* @__PURE__ */ D({
1650
+ }), Xe = /* @__PURE__ */ D(Cn, [["__scopeId", "data-v-87e082b1"]]), Sn = { class: "header-right-mobile" }, wn = /* @__PURE__ */ M({
1719
1651
  __name: "HeaderRightMobile",
1720
- setup(a) {
1721
- const e = Q(), t = S(
1652
+ setup(o) {
1653
+ const e = J(), t = y(
1722
1654
  () => {
1723
- var s, r;
1724
- return !!((s = e.value.user) != null && s.id || (r = e.value.user) != null && r.userId);
1655
+ var a, s;
1656
+ return !!((a = e.value.user) != null && a.id || (s = e.value.user) != null && s.userId);
1725
1657
  }
1726
1658
  ), n = () => {
1727
- var s, r;
1728
- (r = (s = e.value).onLogin) != null && r.call(s) || pe(e.value);
1659
+ var a, s;
1660
+ (s = (a = e.value).onLogin) != null && s.call(a) || ee(e.value);
1729
1661
  };
1730
- return (s, r) => (l(), v("div", xn, [
1731
- A(ot),
1732
- t.value ? (l(), k(rt, { key: 0 }, {
1733
- reference: _(() => [
1734
- A(ee, { class: "header-right-mobile__action" }, {
1735
- default: _(() => [...r[0] || (r[0] = [
1736
- d("i", { class: "metisicon-yonghu1" }, null, -1)
1662
+ return (a, s) => (r(), g("div", Sn, [
1663
+ b(qe),
1664
+ t.value ? (r(), T(Xe, { key: 0 }, {
1665
+ reference: C(() => [
1666
+ b(W, { class: "header-right-mobile__action" }, {
1667
+ default: C(() => [...s[0] || (s[0] = [
1668
+ u("i", { class: "metisicon-yonghu1" }, null, -1)
1737
1669
  ])]),
1738
1670
  _: 1
1739
1671
  })
1740
1672
  ]),
1741
1673
  _: 1
1742
- })) : (l(), k(ee, {
1674
+ })) : (r(), T(W, {
1743
1675
  key: 1,
1744
1676
  class: "header-right-mobile__action",
1745
1677
  onClick: n
1746
1678
  }, {
1747
- default: _(() => [...r[1] || (r[1] = [
1748
- d("i", { class: "metisicon-yonghu1" }, null, -1)
1679
+ default: C(() => [...s[1] || (s[1] = [
1680
+ u("i", { class: "metisicon-yonghu1" }, null, -1)
1749
1681
  ])]),
1750
1682
  _: 1
1751
1683
  }))
1752
1684
  ]));
1753
1685
  }
1754
- }), Mn = /* @__PURE__ */ B(En, [["__scopeId", "data-v-48792b0a"]]), Dn = ["aria-label", "aria-expanded"], Nn = { class: "mobile-menu-toggle__icon" }, Bn = /* @__PURE__ */ D({
1686
+ }), Pn = /* @__PURE__ */ D(wn, [["__scopeId", "data-v-48792b0a"]]), Tn = ["aria-label", "aria-expanded"], kn = { class: "mobile-menu-toggle__icon" }, In = /* @__PURE__ */ M({
1755
1687
  __name: "MobileMenuToggle",
1756
- setup(a) {
1757
- const { sideOpen: e } = z(), t = () => {
1688
+ setup(o) {
1689
+ const { sideOpen: e } = H(), t = () => {
1758
1690
  e.value = !e.value;
1759
1691
  };
1760
- return (n, s) => {
1761
- const r = L("el-icon");
1762
- return l(), v("button", {
1692
+ return (n, a) => {
1693
+ const s = L("el-icon");
1694
+ return r(), g("button", {
1763
1695
  type: "button",
1764
1696
  class: "mobile-menu-toggle",
1765
- "aria-label": g(e) ? "Close menu" : "Open menu",
1766
- "aria-expanded": g(e),
1697
+ "aria-label": p(e) ? "Close menu" : "Open menu",
1698
+ "aria-expanded": p(e),
1767
1699
  onClick: t
1768
1700
  }, [
1769
- d("div", Nn, [
1770
- A(r, null, {
1771
- default: _(() => [
1772
- A(g(mt))
1701
+ u("div", kn, [
1702
+ b(s, null, {
1703
+ default: C(() => [
1704
+ b(p(st))
1773
1705
  ]),
1774
1706
  _: 1
1775
1707
  })
1776
1708
  ])
1777
- ], 8, Dn);
1709
+ ], 8, Tn);
1778
1710
  };
1779
1711
  }
1780
- }), Un = /* @__PURE__ */ B(Bn, [["__scopeId", "data-v-b1a4f38a"]]), Rn = {
1712
+ }), Ln = /* @__PURE__ */ D(In, [["__scopeId", "data-v-b1a4f38a"]]), xn = {
1781
1713
  key: 0,
1782
1714
  class: "user-avatar__fallback"
1783
- }, Kn = /* @__PURE__ */ D({
1715
+ }, En = /* @__PURE__ */ M({
1784
1716
  __name: "UserAvatar",
1785
1717
  props: {
1786
1718
  src: { default: "" },
1787
1719
  name: { default: "" }
1788
1720
  },
1789
- setup(a) {
1790
- const e = a, t = R(!1), n = S(() => e.name.trim()), s = S(
1721
+ setup(o) {
1722
+ const e = o, t = F(!1), n = y(() => e.name.trim()), a = y(
1791
1723
  () => n.value.charAt(0).toUpperCase() || "U"
1792
- ), r = S(() => n.value || "User avatar"), o = S(() => e.src.trim()), c = S(
1793
- () => !o.value || t.value
1794
- ), p = S(
1795
- () => c.value && !!n.value
1796
- ), i = S(
1797
- () => c.value && !n.value
1798
- ), m = S(
1799
- () => o.value && !t.value ? o.value : void 0
1724
+ ), s = y(() => n.value || "User avatar"), l = y(() => e.src.trim()), d = y(
1725
+ () => !l.value || t.value
1726
+ ), A = y(
1727
+ () => d.value && !!n.value
1728
+ ), i = y(
1729
+ () => d.value && !n.value
1730
+ ), h = y(
1731
+ () => l.value && !t.value ? l.value : void 0
1800
1732
  );
1801
- ue(
1733
+ Le(
1802
1734
  () => e.src,
1803
1735
  () => {
1804
1736
  t.value = !1;
1805
1737
  }
1806
1738
  );
1807
- const h = () => {
1739
+ const m = () => {
1808
1740
  t.value = !0;
1809
1741
  };
1810
- return (f, y) => {
1811
- const C = L("el-icon"), T = L("el-avatar");
1812
- return l(), k(T, Fe(f.$attrs, {
1813
- src: m.value,
1814
- "data-src": m.value,
1815
- alt: r.value,
1816
- class: ["user-avatar", { "user-avatar--fallback": c.value }],
1817
- onError: h
1742
+ return (f, _) => {
1743
+ const w = L("el-icon"), k = L("el-avatar");
1744
+ return r(), T(k, ke(f.$attrs, {
1745
+ src: h.value,
1746
+ "data-src": h.value,
1747
+ alt: s.value,
1748
+ class: ["user-avatar", { "user-avatar--fallback": d.value }],
1749
+ onError: m
1818
1750
  }), {
1819
- default: _(() => [
1820
- p.value ? (l(), v("span", Rn, E(s.value), 1)) : i.value ? (l(), k(C, {
1751
+ default: C(() => [
1752
+ A.value ? (r(), g("span", xn, E(a.value), 1)) : i.value ? (r(), T(w, {
1821
1753
  key: 1,
1822
1754
  class: "user-avatar__icon",
1823
1755
  "aria-hidden": "true"
1824
1756
  }, {
1825
- default: _(() => [
1826
- A(g(ht))
1757
+ default: C(() => [
1758
+ b(p(rt))
1827
1759
  ]),
1828
1760
  _: 1
1829
1761
  })) : I("", !0)
@@ -1832,17 +1764,17 @@ const at = (a, e) => a.reduce(
1832
1764
  }, 16, ["src", "data-src", "alt", "class"]);
1833
1765
  };
1834
1766
  }
1835
- }), Ke = /* @__PURE__ */ B(Kn, [["__scopeId", "data-v-50be58a7"]]), Jn = {
1767
+ }), we = /* @__PURE__ */ D(En, [["__scopeId", "data-v-50be58a7"]]), Mn = {
1836
1768
  key: 0,
1837
1769
  class: "layout-breadcrumb text-xs",
1838
1770
  "aria-label": "Breadcrumb"
1839
- }, On = ["aria-label", "title"], Fn = {
1771
+ }, Dn = ["aria-label", "title"], Nn = {
1840
1772
  key: 1,
1841
1773
  class: "flex min-w-0 items-center gap-1"
1842
- }, Hn = ["href"], Qn = ["onClick"], zn = {
1774
+ }, Bn = ["href"], Un = ["onClick"], Rn = {
1843
1775
  key: 3,
1844
1776
  class: "layout-breadcrumb__current"
1845
- }, Zn = /* @__PURE__ */ D({
1777
+ }, Kn = /* @__PURE__ */ M({
1846
1778
  __name: "LayoutBreadcrumb",
1847
1779
  props: {
1848
1780
  items: { default: void 0 },
@@ -1854,207 +1786,207 @@ const at = (a, e) => a.reduce(
1854
1786
  backTo: { default: void 0 },
1855
1787
  backLabel: { default: "返回" }
1856
1788
  },
1857
- setup(a) {
1858
- const e = a, t = ie(), n = ze(), s = Q(), r = z(), o = S(() => {
1859
- var ke, Ie, Le, xe, Ee, Me;
1860
- if ((ke = e.items) != null && ke.length)
1861
- return e.items.filter((G) => G.title);
1862
- const u = T(t.path), b = T(
1863
- ((Ie = t.meta) == null ? void 0 : Ie.parent) || ((Le = t.meta) == null ? void 0 : Le.parentPath) || t.path
1864
- ), w = c(), P = (Ee = (xe = r == null ? void 0 : r.currentEndRoute) == null ? void 0 : xe.value) == null ? void 0 : Ee.paths, x = p(P || []);
1865
- let O = x.length ? x : f(w, b);
1866
- const fe = T(
1867
- e.parentPath || ((Me = t.meta) == null ? void 0 : Me.parentPath) || ""
1789
+ setup(o) {
1790
+ const e = o, t = ct(), n = Ee(), a = J(), s = H(), l = y(() => {
1791
+ var ge, he, fe, ve, ye, be;
1792
+ if ((ge = e.items) != null && ge.length)
1793
+ return e.items.filter((q) => q.title);
1794
+ const c = k(t.path), v = k(
1795
+ ((he = t.meta) == null ? void 0 : he.parent) || ((fe = t.meta) == null ? void 0 : fe.parentPath) || t.path
1796
+ ), S = d(), P = (ye = (ve = s == null ? void 0 : s.currentEndRoute) == null ? void 0 : ve.value) == null ? void 0 : ye.paths, x = A(P || []);
1797
+ let U = x.length ? x : f(S, v);
1798
+ const oe = k(
1799
+ e.parentPath || ((be = t.meta) == null ? void 0 : be.parentPath) || ""
1868
1800
  );
1869
- if (!O.length && fe && (O = f(w, fe)), !O.length) {
1870
- const G = fe || y(u, w);
1871
- O = G ? f(w, G) : [];
1801
+ if (!U.length && oe && (U = f(S, oe)), !U.length) {
1802
+ const q = oe || _(c, S);
1803
+ U = q ? f(S, q) : [];
1872
1804
  }
1873
- const W = O.map(i).filter((G) => G.title), j = W[W.length - 1], X = h();
1874
- return e.showCurrent && X && N(j == null ? void 0 : j.path) !== N(u) ? W.push({
1875
- title: X,
1876
- path: u,
1805
+ const Z = U.map(i).filter((q) => q.title), Q = Z[Z.length - 1], j = m();
1806
+ return e.showCurrent && j && B(Q == null ? void 0 : Q.path) !== B(c) ? Z.push({
1807
+ title: j,
1808
+ path: c,
1877
1809
  disabled: !0
1878
- }) : X && j && N(j.path) === N(u) && (j.title = X, j.disabled = !0), !W.length && X && W.push({
1879
- title: X,
1880
- path: u,
1810
+ }) : j && Q && B(Q.path) === B(c) && (Q.title = j, Q.disabled = !0), !Z.length && j && Z.push({
1811
+ title: j,
1812
+ path: c,
1881
1813
  disabled: !0
1882
- }), W;
1883
- }), c = () => {
1884
- const u = [], b = /* @__PURE__ */ new Set();
1885
- return (s.value.menus || []).forEach((w) => {
1814
+ }), Z;
1815
+ }), d = () => {
1816
+ const c = [], v = /* @__PURE__ */ new Set();
1817
+ return (a.value.menus || []).forEach((S) => {
1886
1818
  var x;
1887
- const P = w.path || w.name || JSON.stringify(((x = w.meta) == null ? void 0 : x.translations) || {});
1888
- !P || b.has(P) || (b.add(P), u.push(w));
1889
- }), u;
1890
- }, p = (u) => u.filter((b) => {
1891
- var w;
1892
- return b && ((w = b.meta) == null ? void 0 : w.visible) !== "0";
1893
- }), i = (u) => {
1894
- var b;
1819
+ const P = S.path || S.name || JSON.stringify(((x = S.meta) == null ? void 0 : x.translations) || {});
1820
+ !P || v.has(P) || (v.add(P), c.push(S));
1821
+ }), c;
1822
+ }, A = (c) => c.filter((v) => {
1823
+ var S;
1824
+ return v && ((S = v.meta) == null ? void 0 : S.visible) !== "0";
1825
+ }), i = (c) => {
1826
+ var v;
1895
1827
  return {
1896
- title: m(u),
1897
- path: u.path,
1898
- disabled: ((b = u.meta) == null ? void 0 : b.visible) === "0",
1899
- children: u.children
1828
+ title: h(c),
1829
+ path: c.path,
1830
+ disabled: ((v = c.meta) == null ? void 0 : v.visible) === "0",
1831
+ children: c.children
1900
1832
  };
1901
- }, m = (u) => {
1902
- var w;
1903
- return ((w = u == null ? void 0 : u.meta) != null && w.translations ? de(se(u.meta.translations, "name", u.name)) : "") || (u == null ? void 0 : u.title) || (u == null ? void 0 : u.name) || "";
1904
- }, h = () => {
1905
- var u;
1906
- return e.currentTitle ? e.currentTitle : typeof ((u = t.meta) == null ? void 0 : u.title) == "string" ? t.meta.title : String(t.params.id || t.params.tenantId || "");
1907
- }, f = (u, b, w = []) => {
1908
- if (!b) return [];
1909
- for (const P of u) {
1910
- const x = [...w, P];
1911
- if (C(P.path, b))
1912
- return p(x);
1913
- const O = f(P.children || [], b, x);
1914
- if (O.length) return O;
1833
+ }, h = (c) => {
1834
+ var S;
1835
+ return ((S = c == null ? void 0 : c.meta) != null && S.translations ? Be(de(c.meta.translations, "name", c.name)) : "") || (c == null ? void 0 : c.title) || (c == null ? void 0 : c.name) || "";
1836
+ }, m = () => {
1837
+ var c;
1838
+ return e.currentTitle ? e.currentTitle : typeof ((c = t.meta) == null ? void 0 : c.title) == "string" ? t.meta.title : String(t.params.id || t.params.tenantId || "");
1839
+ }, f = (c, v, S = []) => {
1840
+ if (!v) return [];
1841
+ for (const P of c) {
1842
+ const x = [...S, P];
1843
+ if (w(P.path, v))
1844
+ return A(x);
1845
+ const U = f(P.children || [], v, x);
1846
+ if (U.length) return U;
1915
1847
  }
1916
1848
  return [];
1917
- }, y = (u, b) => {
1918
- const w = u.split("/").filter(Boolean);
1919
- for (let P = w.length - 1; P > 0; P -= 1) {
1920
- const x = `/${w.slice(0, P).join("/")}`;
1921
- if (f(b, x).length) return x;
1849
+ }, _ = (c, v) => {
1850
+ const S = c.split("/").filter(Boolean);
1851
+ for (let P = S.length - 1; P > 0; P -= 1) {
1852
+ const x = `/${S.slice(0, P).join("/")}`;
1853
+ if (f(v, x).length) return x;
1922
1854
  }
1923
1855
  return "";
1924
- }, C = (u = "", b = "") => {
1925
- const w = N(u), P = N(b);
1926
- if (!w || !P) return !1;
1927
- if (w === P) return !0;
1928
- const x = w.replace(/\/:(\w+)/g, "/([^/]+)");
1856
+ }, w = (c = "", v = "") => {
1857
+ const S = B(c), P = B(v);
1858
+ if (!S || !P) return !1;
1859
+ if (S === P) return !0;
1860
+ const x = S.replace(/\/:(\w+)/g, "/([^/]+)");
1929
1861
  return new RegExp(`^${x}$`, "i").test(P);
1930
- }, T = (u = "") => u ? u.split("?")[0].split("#")[0] : "", N = (u = "") => (T(u).replace(/\/+$/, "") || "/").toLowerCase(), U = (u) => /^https?:\/\//.test(u.path || ""), Z = (u) => {
1931
- var b;
1932
- return !!((b = u.children) != null && b.some((w) => !w.disabled));
1933
- }, M = (u, b) => u.disabled || b === o.value.length - 1 || !u.path ? !1 : U(u) || !Z(u), J = (u) => {
1934
- const b = u.to || ge(u);
1935
- b && n.push(b);
1936
- }, Y = () => {
1937
- var b;
1862
+ }, k = (c = "") => c ? c.split("?")[0].split("#")[0] : "", B = (c = "") => (k(c).replace(/\/+$/, "") || "/").toLowerCase(), O = (c) => /^https?:\/\//.test(c.path || ""), We = (c) => {
1863
+ var v;
1864
+ return !!((v = c.children) != null && v.some((S) => !S.disabled));
1865
+ }, me = (c, v) => c.disabled || v === l.value.length - 1 || !c.path ? !1 : O(c) || !We(c), Ge = (c) => {
1866
+ const v = c.to || ne(c);
1867
+ v && n.push(v);
1868
+ }, Ve = () => {
1869
+ var v;
1938
1870
  if (e.backTo) {
1939
1871
  n.push(e.backTo);
1940
1872
  return;
1941
1873
  }
1942
- if ((b = n.options.history.state) != null && b.back && window.history.length > 1) {
1874
+ if ((v = n.options.history.state) != null && v.back && window.history.length > 1) {
1943
1875
  n.back();
1944
1876
  return;
1945
1877
  }
1946
- const u = he();
1947
- u && n.push(u);
1948
- }, he = () => {
1949
- var w, P;
1950
- const u = e.parentPath || ((w = t.meta) == null ? void 0 : w.parentPath) || ((P = t.meta) == null ? void 0 : P.parent) || "";
1951
- if (u)
1952
- return ge({ path: u });
1953
- const b = o.value[o.value.length - 2];
1954
- if (b != null && b.to) return b.to;
1955
- if (b != null && b.path && !U(b))
1956
- return ge(b);
1957
- }, ge = (u) => {
1958
- if (!u.path) return;
1959
- const b = e.preserveQueryKeys.reduce((w, P) => {
1878
+ const c = $e();
1879
+ c && n.push(c);
1880
+ }, $e = () => {
1881
+ var S, P;
1882
+ const c = e.parentPath || ((S = t.meta) == null ? void 0 : S.parentPath) || ((P = t.meta) == null ? void 0 : P.parent) || "";
1883
+ if (c)
1884
+ return ne({ path: c });
1885
+ const v = l.value[l.value.length - 2];
1886
+ if (v != null && v.to) return v.to;
1887
+ if (v != null && v.path && !O(v))
1888
+ return ne(v);
1889
+ }, ne = (c) => {
1890
+ if (!c.path) return;
1891
+ const v = e.preserveQueryKeys.reduce((S, P) => {
1960
1892
  const x = t.query[P];
1961
- return typeof x == "string" && (w[P] = x), Array.isArray(x) && (w[P] = x.filter(
1962
- (O) => typeof O == "string"
1963
- )), w;
1893
+ return typeof x == "string" && (S[P] = x), Array.isArray(x) && (S[P] = x.filter(
1894
+ (U) => typeof U == "string"
1895
+ )), S;
1964
1896
  }, {});
1965
- return Object.keys(b).length ? { path: u.path, query: b } : { path: u.path };
1897
+ return Object.keys(v).length ? { path: c.path, query: v } : { path: c.path };
1966
1898
  };
1967
- return (u, b) => {
1968
- const w = L("el-icon");
1969
- return e.showBack || o.value.length ? (l(), v("nav", Jn, [
1970
- e.showBack ? (l(), v("button", {
1899
+ return (c, v) => {
1900
+ const S = L("el-icon");
1901
+ return e.showBack || l.value.length ? (r(), g("nav", Mn, [
1902
+ e.showBack ? (r(), g("button", {
1971
1903
  key: 0,
1972
1904
  class: "layout-breadcrumb__back",
1973
1905
  type: "button",
1974
1906
  "aria-label": e.backLabel,
1975
1907
  title: e.backLabel,
1976
- onClick: Y
1908
+ onClick: Ve
1977
1909
  }, [
1978
- A(w, null, {
1979
- default: _(() => [
1980
- A(g(gt))
1910
+ b(S, null, {
1911
+ default: C(() => [
1912
+ b(p(lt))
1981
1913
  ]),
1982
1914
  _: 1
1983
1915
  })
1984
- ], 8, On)) : I("", !0),
1985
- o.value.length ? (l(), v("ol", Fn, [
1986
- (l(!0), v(K, null, H(o.value, (P, x) => (l(), v("li", {
1916
+ ], 8, Dn)) : I("", !0),
1917
+ l.value.length ? (r(), g("ol", Nn, [
1918
+ (r(!0), g(N, null, K(l.value, (P, x) => (r(), g("li", {
1987
1919
  key: `${P.path || P.title}-${x}`,
1988
1920
  class: "flex min-w-0 items-center gap-1"
1989
1921
  }, [
1990
- x > 0 ? (l(), k(w, {
1922
+ x > 0 ? (r(), T(S, {
1991
1923
  key: 0,
1992
1924
  class: "layout-breadcrumb__separator"
1993
1925
  }, {
1994
- default: _(() => [
1995
- A(g(_e))
1926
+ default: C(() => [
1927
+ b(p(se))
1996
1928
  ]),
1997
1929
  _: 1
1998
1930
  })) : I("", !0),
1999
- U(P) && M(P, x) ? (l(), v("a", {
1931
+ O(P) && me(P, x) ? (r(), g("a", {
2000
1932
  key: 1,
2001
1933
  class: "layout-breadcrumb__link",
2002
1934
  href: P.path
2003
- }, E(P.title), 9, Hn)) : M(P, x) ? (l(), v("button", {
1935
+ }, E(P.title), 9, Bn)) : me(P, x) ? (r(), g("button", {
2004
1936
  key: 2,
2005
1937
  class: "layout-breadcrumb__link",
2006
1938
  type: "button",
2007
- onClick: (O) => J(P)
2008
- }, E(P.title), 9, Qn)) : (l(), v("span", zn, E(P.title), 1))
1939
+ onClick: (U) => Ge(P)
1940
+ }, E(P.title), 9, Un)) : (r(), g("span", Rn, E(P.title), 1))
2009
1941
  ]))), 128))
2010
1942
  ])) : I("", !0)
2011
1943
  ])) : I("", !0);
2012
1944
  };
2013
1945
  }
2014
- }), za = /* @__PURE__ */ B(Zn, [["__scopeId", "data-v-f7586477"]]), jn = {
1946
+ }), Ko = /* @__PURE__ */ D(Kn, [["__scopeId", "data-v-f7586477"]]), Jn = {
2015
1947
  key: 0,
2016
1948
  class: "timezone-select__current"
2017
- }, qn = { class: "timezone-select__panel" }, Yn = ["onClick"], Wn = { class: "timezone-select__name" }, Xn = { class: "timezone-select__offset" }, Gn = /* @__PURE__ */ D({
1949
+ }, On = { class: "timezone-select__panel" }, Fn = ["onClick"], Hn = { class: "timezone-select__name" }, Qn = { class: "timezone-select__offset" }, zn = /* @__PURE__ */ M({
2018
1950
  __name: "TimezoneSelect",
2019
1951
  props: {
2020
1952
  showLabel: { type: Boolean, default: !1 }
2021
1953
  },
2022
- setup(a) {
2023
- const e = Ct(), t = R(!1), n = S(() => e.value), s = S(() => It()), r = S(() => kt(n.value)), o = (c) => {
2024
- St(c), t.value = !1;
1954
+ setup(o) {
1955
+ const e = ht(), t = F(!1), n = y(() => e.value), a = y(() => _t()), s = y(() => At(n.value)), l = (d) => {
1956
+ ft(d), t.value = !1;
2025
1957
  };
2026
- return (c, p) => {
2027
- const i = L("el-icon"), m = L("el-popover");
2028
- return l(), k(m, {
1958
+ return (d, A) => {
1959
+ const i = L("el-icon"), h = L("el-popover");
1960
+ return r(), T(h, {
2029
1961
  visible: t.value,
2030
- "onUpdate:visible": p[0] || (p[0] = (h) => t.value = h),
1962
+ "onUpdate:visible": A[0] || (A[0] = (m) => t.value = m),
2031
1963
  placement: "bottom",
2032
1964
  width: 280,
2033
1965
  trigger: "hover",
2034
1966
  "popper-class": "top-timezone-popover"
2035
1967
  }, {
2036
- reference: _(() => [
2037
- A(ee, {
1968
+ reference: C(() => [
1969
+ b(W, {
2038
1970
  tag: "div",
2039
1971
  class: "timezone-select",
2040
- "icon-only": !a.showLabel,
2041
- title: r.value,
2042
- "aria-label": r.value
1972
+ "icon-only": !o.showLabel,
1973
+ title: s.value,
1974
+ "aria-label": s.value
2043
1975
  }, {
2044
- default: _(() => [
2045
- A(i, null, {
2046
- default: _(() => [
2047
- A(g(ft))
1976
+ default: C(() => [
1977
+ b(i, null, {
1978
+ default: C(() => [
1979
+ b(p(it))
2048
1980
  ]),
2049
1981
  _: 1
2050
1982
  }),
2051
- a.showLabel ? (l(), v("span", jn, E(n.value), 1)) : I("", !0),
2052
- a.showLabel ? (l(), k(i, {
1983
+ o.showLabel ? (r(), g("span", Jn, E(n.value), 1)) : I("", !0),
1984
+ o.showLabel ? (r(), T(i, {
2053
1985
  key: 1,
2054
1986
  class: "timezone-select__caret"
2055
1987
  }, {
2056
- default: _(() => [
2057
- A(g(we))
1988
+ default: C(() => [
1989
+ b(p(ce))
2058
1990
  ]),
2059
1991
  _: 1
2060
1992
  })) : I("", !0)
@@ -2062,117 +1994,117 @@ const at = (a, e) => a.reduce(
2062
1994
  _: 1
2063
1995
  }, 8, ["icon-only", "title", "aria-label"])
2064
1996
  ]),
2065
- default: _(() => [
2066
- d("div", qn, [
2067
- (l(!0), v(K, null, H(s.value, (h) => (l(), v("button", {
2068
- key: h.value,
1997
+ default: C(() => [
1998
+ u("div", On, [
1999
+ (r(!0), g(N, null, K(a.value, (m) => (r(), g("button", {
2000
+ key: m.value,
2069
2001
  type: "button",
2070
- class: F(["timezone-select__option", {
2071
- "timezone-select__option--active": h.value === n.value
2002
+ class: R(["timezone-select__option", {
2003
+ "timezone-select__option--active": m.value === n.value
2072
2004
  }]),
2073
- onClick: (f) => o(h.value)
2005
+ onClick: (f) => l(m.value)
2074
2006
  }, [
2075
- d("span", Wn, E(h.value), 1),
2076
- d("span", Xn, E(h.offset), 1)
2077
- ], 10, Yn))), 128))
2007
+ u("span", Hn, E(m.value), 1),
2008
+ u("span", Qn, E(m.offset), 1)
2009
+ ], 10, Fn))), 128))
2078
2010
  ])
2079
2011
  ]),
2080
2012
  _: 1
2081
2013
  }, 8, ["visible"]);
2082
2014
  };
2083
2015
  }
2084
- }), Za = /* @__PURE__ */ B(Gn, [["__scopeId", "data-v-e62f5f2d"]]), Vn = { class: "user-info__panel" }, $n = { class: "user-info__profile" }, ea = { class: "user-info__profile-main" }, ta = ["title"], na = ["title"], aa = { class: "user-info__meta" }, oa = { class: "user-info__meta-label" }, sa = ["title"], ra = ["href"], la = /* @__PURE__ */ D({
2016
+ }), Jo = /* @__PURE__ */ D(zn, [["__scopeId", "data-v-e62f5f2d"]]), Zn = { class: "user-info__panel" }, jn = { class: "user-info__profile" }, qn = { class: "user-info__profile-main" }, Yn = ["title"], Xn = ["title"], Wn = { class: "user-info__meta" }, Gn = { class: "user-info__meta-label" }, Vn = ["title"], $n = ["href"], eo = /* @__PURE__ */ M({
2085
2017
  __name: "UserInfo",
2086
- setup(a) {
2087
- const { t: e } = me.global, t = Q(), n = S(() => t.value.user || {}), s = S(() => t.value.accountMenu || []), r = S(
2018
+ setup(o) {
2019
+ const { t: e } = te.global, t = J(), n = y(() => t.value.user || {}), a = y(() => t.value.accountMenu || []), s = y(
2088
2020
  () => {
2089
- var p, i, m, h;
2090
- return ((p = n.value) == null ? void 0 : p.name) || ((i = n.value) == null ? void 0 : i.username) || ((m = n.value) == null ? void 0 : m.email) || ((h = n.value) == null ? void 0 : h.userId) || "User";
2021
+ var A, i, h, m;
2022
+ return ((A = n.value) == null ? void 0 : A.name) || ((i = n.value) == null ? void 0 : i.username) || ((h = n.value) == null ? void 0 : h.email) || ((m = n.value) == null ? void 0 : m.userId) || "User";
2091
2023
  }
2092
- ), o = S(
2024
+ ), l = y(
2093
2025
  () => {
2094
- var p, i, m;
2026
+ var A, i, h;
2095
2027
  return [
2096
- { label: e("admin.label.userName"), value: (p = n.value) == null ? void 0 : p.username },
2028
+ { label: e("admin.label.userName"), value: (A = n.value) == null ? void 0 : A.username },
2097
2029
  { label: e("admin.label.email"), value: (i = n.value) == null ? void 0 : i.email },
2098
- { label: e("admin.label.userId"), value: (m = n.value) == null ? void 0 : m.userId }
2099
- ].filter((h) => !!h.value);
2030
+ { label: e("admin.label.userId"), value: (h = n.value) == null ? void 0 : h.userId }
2031
+ ].filter((m) => !!m.value);
2100
2032
  }
2101
- ), c = () => {
2102
- var p, i;
2103
- Promise.resolve((i = (p = t.value).onLogout) == null ? void 0 : i.call(p)).finally(() => {
2104
- t.value.onLogout || pe(t.value);
2033
+ ), d = () => {
2034
+ var A, i;
2035
+ Promise.resolve((i = (A = t.value).onLogout) == null ? void 0 : i.call(A)).finally(() => {
2036
+ t.value.onLogout || ee(t.value);
2105
2037
  });
2106
2038
  };
2107
- return (p, i) => {
2108
- const m = L("el-popover");
2109
- return l(), k(m, {
2039
+ return (A, i) => {
2040
+ const h = L("el-popover");
2041
+ return r(), T(h, {
2110
2042
  width: 280,
2111
2043
  trigger: "hover",
2112
2044
  "popper-class": "top-userinfo-popover"
2113
2045
  }, {
2114
- reference: _(() => [
2115
- A(g(Ke), {
2046
+ reference: C(() => [
2047
+ b(p(we), {
2116
2048
  class: "user-info__trigger ml-2",
2117
2049
  src: n.value.avatar,
2118
- name: r.value
2050
+ name: s.value
2119
2051
  }, null, 8, ["src", "name"])
2120
2052
  ]),
2121
- default: _(() => {
2122
- var h;
2053
+ default: C(() => {
2054
+ var m;
2123
2055
  return [
2124
- d("div", Vn, [
2125
- d("div", $n, [
2126
- A(g(Ke), {
2056
+ u("div", Zn, [
2057
+ u("div", jn, [
2058
+ b(p(we), {
2127
2059
  class: "user-info__profile-avatar",
2128
2060
  src: n.value.avatar,
2129
- name: r.value
2061
+ name: s.value
2130
2062
  }, null, 8, ["src", "name"]),
2131
- d("div", ea, [
2132
- d("div", {
2063
+ u("div", qn, [
2064
+ u("div", {
2133
2065
  class: "user-info__display-name",
2134
- title: r.value
2135
- }, E(r.value), 9, ta),
2136
- (h = n.value) != null && h.username ? (l(), v("div", {
2066
+ title: s.value
2067
+ }, E(s.value), 9, Yn),
2068
+ (m = n.value) != null && m.username ? (r(), g("div", {
2137
2069
  key: 0,
2138
2070
  class: "user-info__username",
2139
2071
  title: n.value.username
2140
- }, " @" + E(n.value.username), 9, na)) : I("", !0)
2072
+ }, " @" + E(n.value.username), 9, Xn)) : I("", !0)
2141
2073
  ])
2142
2074
  ]),
2143
- d("div", aa, [
2144
- (l(!0), v(K, null, H(o.value, (f) => (l(), v("div", {
2075
+ u("div", Wn, [
2076
+ (r(!0), g(N, null, K(l.value, (f) => (r(), g("div", {
2145
2077
  key: f.label,
2146
2078
  class: "user-info__meta-row"
2147
2079
  }, [
2148
- d("span", oa, E(f.label), 1),
2149
- d("span", {
2080
+ u("span", Gn, E(f.label), 1),
2081
+ u("span", {
2150
2082
  class: "user-info__meta-value",
2151
2083
  title: f.value
2152
- }, E(f.value), 9, sa)
2084
+ }, E(f.value), 9, Vn)
2153
2085
  ]))), 128))
2154
2086
  ]),
2155
- i[1] || (i[1] = d("div", { class: "user-info__divider" }, null, -1)),
2156
- (l(!0), v(K, null, H(s.value, (f, y) => {
2157
- var C, T;
2158
- return l(), v("a", {
2159
- key: y,
2087
+ i[1] || (i[1] = u("div", { class: "user-info__divider" }, null, -1)),
2088
+ (r(!0), g(N, null, K(a.value, (f, _) => {
2089
+ var w, k;
2090
+ return r(), g("a", {
2091
+ key: _,
2160
2092
  href: f.path,
2161
2093
  class: "user-info__item"
2162
2094
  }, [
2163
- A(et, {
2164
- icon: f.icon || ((C = f.meta) == null ? void 0 : C.icon)
2095
+ b(Qe, {
2096
+ icon: f.icon || ((w = f.meta) == null ? void 0 : w.icon)
2165
2097
  }, null, 8, ["icon"]),
2166
- d("span", null, E(g(se)(((T = f.meta) == null ? void 0 : T.translations) || {}, "name", f.name)), 1)
2167
- ], 8, ra);
2098
+ u("span", null, E(p(de)(((k = f.meta) == null ? void 0 : k.translations) || {}, "name", f.name)), 1)
2099
+ ], 8, $n);
2168
2100
  }), 128)),
2169
- i[2] || (i[2] = d("div", { class: "user-info__divider" }, null, -1)),
2170
- d("div", {
2101
+ i[2] || (i[2] = u("div", { class: "user-info__divider" }, null, -1)),
2102
+ u("div", {
2171
2103
  class: "user-info__item user-info__item--danger",
2172
- onClick: c
2104
+ onClick: d
2173
2105
  }, [
2174
- i[0] || (i[0] = d("i", { class: "metisicon-exit-full" }, null, -1)),
2175
- d("span", null, E(g(e)("common.btn.logout")), 1)
2106
+ i[0] || (i[0] = u("i", { class: "metisicon-exit-full" }, null, -1)),
2107
+ u("span", null, E(p(e)("common.btn.logout")), 1)
2176
2108
  ])
2177
2109
  ])
2178
2110
  ];
@@ -2181,29 +2113,29 @@ const at = (a, e) => a.reduce(
2181
2113
  });
2182
2114
  };
2183
2115
  }
2184
- }), ia = /* @__PURE__ */ B(la, [["__scopeId", "data-v-ac052463"]]), ca = { class: "header-right" }, ua = ["href"], da = /* @__PURE__ */ D({
2116
+ }), to = /* @__PURE__ */ D(eo, [["__scopeId", "data-v-ac052463"]]), no = { class: "header-right" }, oo = ["href"], ao = /* @__PURE__ */ M({
2185
2117
  __name: "SHeaderRight",
2186
- setup(a) {
2187
- const { t: e } = me.global, t = Q(), n = S(() => t.value.hideDoc ?? !1), s = S(() => $e(t.value)), r = S(() => t.value.user), o = S(() => {
2188
- var i, m;
2189
- return !!((i = r.value) != null && i.id || (m = r.value) != null && m.userId);
2190
- }), c = (i) => {
2118
+ setup(o) {
2119
+ const { t: e } = te.global, t = J(), n = y(() => t.value.hideDoc ?? !1), a = y(() => Oe(t.value)), s = y(() => t.value.user), l = y(() => {
2120
+ var i, h;
2121
+ return !!((i = s.value) != null && i.id || (h = s.value) != null && h.userId);
2122
+ }), d = (i) => {
2191
2123
  t.value.onLogin && (i.preventDefault(), t.value.onLogin());
2192
- }, p = S(() => t.value.docsPath || "");
2193
- return (i, m) => {
2194
- const h = L("el-icon");
2195
- return l(), v("div", ca, [
2196
- !n.value && p.value ? (l(), k(ee, {
2124
+ }, A = y(() => t.value.docsPath || "");
2125
+ return (i, h) => {
2126
+ const m = L("el-icon");
2127
+ return r(), g("div", no, [
2128
+ !n.value && A.value ? (r(), T(W, {
2197
2129
  key: 0,
2198
2130
  tag: "a",
2199
2131
  class: "whitespace-nowrap",
2200
- href: p.value,
2132
+ href: A.value,
2201
2133
  target: "_blank"
2202
2134
  }, {
2203
- default: _(() => [
2204
- A(h, null, {
2205
- default: _(() => [...m[0] || (m[0] = [
2206
- d("svg", {
2135
+ default: C(() => [
2136
+ b(m, null, {
2137
+ default: C(() => [...h[0] || (h[0] = [
2138
+ u("svg", {
2207
2139
  xmlns: "http://www.w3.org/2000/svg",
2208
2140
  width: "24",
2209
2141
  height: "24",
@@ -2217,8 +2149,8 @@ const at = (a, e) => a.reduce(
2217
2149
  "aria-hidden": "true",
2218
2150
  class: "lucide lucide-book-open"
2219
2151
  }, [
2220
- d("path", { d: "M12 7v14" }),
2221
- d("path", { d: "M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z" })
2152
+ u("path", { d: "M12 7v14" }),
2153
+ u("path", { d: "M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z" })
2222
2154
  ], -1)
2223
2155
  ])]),
2224
2156
  _: 1
@@ -2226,105 +2158,105 @@ const at = (a, e) => a.reduce(
2226
2158
  ]),
2227
2159
  _: 1
2228
2160
  }, 8, ["href"])) : I("", !0),
2229
- A(st),
2230
- A(ot),
2231
- o.value ? (l(), k(ia, { key: 1 })) : (l(), v("a", {
2161
+ b(Ye),
2162
+ b(qe),
2163
+ l.value ? (r(), T(to, { key: 1 })) : (r(), g("a", {
2232
2164
  key: 2,
2233
2165
  class: "header-right__login",
2234
- href: s.value,
2235
- onClick: c
2236
- }, E(g(e)("common.btn.login")), 9, ua))
2166
+ href: a.value,
2167
+ onClick: d
2168
+ }, E(p(e)("common.btn.login")), 9, oo))
2237
2169
  ]);
2238
2170
  };
2239
2171
  }
2240
- }), pa = /* @__PURE__ */ B(da, [["__scopeId", "data-v-3c5e16a6"]]), ma = {
2172
+ }), so = /* @__PURE__ */ D(ao, [["__scopeId", "data-v-3c5e16a6"]]), ro = {
2241
2173
  "header-bar": "",
2242
2174
  class: "header-bar sticky top-0 z-200"
2243
- }, ha = { class: "header-bar__left" }, ga = { class: "header-bar__logo-wrap" }, fa = {
2175
+ }, lo = { class: "header-bar__left" }, io = { class: "header-bar__logo-wrap" }, co = {
2244
2176
  href: "/",
2245
2177
  target: "_self",
2246
2178
  rel: "noopener",
2247
2179
  class: "header-bar__logo-link"
2248
- }, va = {
2180
+ }, uo = {
2249
2181
  key: 1,
2250
2182
  class: "header-bar__divider"
2251
- }, ya = { class: "header-bar__right" }, ba = /* @__PURE__ */ D({
2183
+ }, po = { class: "header-bar__right" }, mo = /* @__PURE__ */ M({
2252
2184
  __name: "HeaderBar",
2253
- setup(a) {
2254
- const e = Q(), { isMobile: t } = z(), n = S(
2185
+ setup(o) {
2186
+ const e = J(), { isMobile: t } = H(), n = y(
2255
2187
  () => {
2256
- var s, r;
2257
- return !!((s = e.value.user) != null && s.id || (r = e.value.user) != null && r.userId);
2188
+ var a, s;
2189
+ return !!((a = e.value.user) != null && a.id || (s = e.value.user) != null && s.userId);
2258
2190
  }
2259
2191
  );
2260
- return (s, r) => {
2261
- const o = L("el-image");
2262
- return l(), v("div", ma, [
2263
- d("div", ha, [
2264
- g(t) ? (l(), k(Un, { key: 0 })) : I("", !0),
2265
- d("div", ga, [
2266
- d("a", fa, [
2267
- A(o, {
2268
- src: g(e).logo,
2192
+ return (a, s) => {
2193
+ const l = L("el-image");
2194
+ return r(), g("div", ro, [
2195
+ u("div", lo, [
2196
+ p(t) ? (r(), T(Ln, { key: 0 })) : I("", !0),
2197
+ u("div", io, [
2198
+ u("a", co, [
2199
+ b(l, {
2200
+ src: p(e).logo,
2269
2201
  class: "h-7"
2270
2202
  }, null, 8, ["src"])
2271
2203
  ])
2272
2204
  ]),
2273
- n.value && !g(t) ? (l(), v("div", va)) : I("", !0),
2274
- n.value && !g(t) ? (l(), k(tn, { key: 2 })) : I("", !0)
2205
+ n.value && !p(t) ? (r(), g("div", uo)) : I("", !0),
2206
+ n.value && !p(t) ? (r(), T(Yt, { key: 2 })) : I("", !0)
2275
2207
  ]),
2276
- d("div", ya, [
2277
- q(s.$slots, "default", {}, void 0, !0),
2278
- g(t) ? I("", !0) : (l(), k(pa, { key: 0 })),
2279
- g(t) ? (l(), k(Mn, { key: 1 })) : I("", !0)
2208
+ u("div", po, [
2209
+ z(a.$slots, "default", {}, void 0, !0),
2210
+ p(t) ? I("", !0) : (r(), T(so, { key: 0 })),
2211
+ p(t) ? (r(), T(Pn, { key: 1 })) : I("", !0)
2280
2212
  ])
2281
2213
  ]);
2282
2214
  };
2283
2215
  }
2284
- }), Aa = /* @__PURE__ */ B(ba, [["__scopeId", "data-v-0ce1ab70"]]), _a = {
2216
+ }), go = /* @__PURE__ */ D(mo, [["__scopeId", "data-v-0ce1ab70"]]), ho = {
2285
2217
  key: 0,
2286
2218
  class: "min-w-0 flex-1"
2287
- }, Ca = /* @__PURE__ */ D({
2219
+ }, fo = /* @__PURE__ */ M({
2288
2220
  __name: "AppSelectMobile",
2289
- setup(a) {
2290
- const { currentAppId: e } = z(), { appList: t, getAppPath: n, findAppById: s } = nt(), r = S(() => {
2291
- const c = s(e.value);
2292
- return c ? n(c) : "";
2293
- }), o = (c) => {
2294
- c && (location.href = c);
2221
+ setup(o) {
2222
+ const { currentAppId: e } = H(), { appList: t, getAppPath: n, findAppById: a } = Ze(), s = y(() => {
2223
+ const d = a(e.value);
2224
+ return d ? n(d) : "";
2225
+ }), l = (d) => {
2226
+ d && (location.href = d);
2295
2227
  };
2296
- return (c, p) => {
2228
+ return (d, A) => {
2297
2229
  var f;
2298
- const i = L("el-option"), m = L("el-option-group"), h = L("el-select");
2299
- return (f = g(t)) != null && f.length ? (l(), v("div", _a, [
2300
- A(h, {
2301
- "model-value": r.value,
2230
+ const i = L("el-option"), h = L("el-option-group"), m = L("el-select");
2231
+ return (f = p(t)) != null && f.length ? (r(), g("div", ho, [
2232
+ b(m, {
2233
+ "model-value": s.value,
2302
2234
  class: "w-full",
2303
- onChange: o
2235
+ onChange: l
2304
2236
  }, {
2305
- default: _(() => [
2306
- (l(!0), v(K, null, H(g(t), (y) => {
2307
- var C;
2308
- return l(), v(K, {
2309
- key: y.appId
2237
+ default: C(() => [
2238
+ (r(!0), g(N, null, K(p(t), (_) => {
2239
+ var w;
2240
+ return r(), g(N, {
2241
+ key: _.appId
2310
2242
  }, [
2311
- (C = y.children) != null && C.length ? (l(), k(m, {
2243
+ (w = _.children) != null && w.length ? (r(), T(h, {
2312
2244
  key: 0,
2313
- label: y.name
2245
+ label: _.name
2314
2246
  }, {
2315
- default: _(() => [
2316
- (l(!0), v(K, null, H(y.children, (T) => (l(), k(i, {
2317
- key: T.appId,
2318
- label: T.name,
2319
- value: g(n)(T),
2247
+ default: C(() => [
2248
+ (r(!0), g(N, null, K(_.children, (k) => (r(), T(i, {
2249
+ key: k.appId,
2250
+ label: k.name,
2251
+ value: p(n)(k),
2320
2252
  style: { "padding-left": "30px" }
2321
2253
  }, null, 8, ["label", "value"]))), 128))
2322
2254
  ]),
2323
2255
  _: 2
2324
- }, 1032, ["label"])) : (l(), k(i, {
2256
+ }, 1032, ["label"])) : (r(), T(i, {
2325
2257
  key: 1,
2326
- label: y.name,
2327
- value: g(n)(y)
2258
+ label: _.name,
2259
+ value: p(n)(_)
2328
2260
  }, null, 8, ["label", "value"]))
2329
2261
  ], 64);
2330
2262
  }), 128))
@@ -2334,26 +2266,26 @@ const at = (a, e) => a.reduce(
2334
2266
  ])) : I("", !0);
2335
2267
  };
2336
2268
  }
2337
- }), Sa = { class: "aside-user-mobile" }, wa = { class: "flex-1" }, Pa = { class: "absolute right-4 top-1/2 -translate-y-1/2" }, Ta = { class: "absolute right-4 top-1/2 -translate-y-1/2" }, ka = /* @__PURE__ */ D({
2269
+ }), vo = { class: "aside-user-mobile" }, yo = { class: "flex-1" }, bo = { class: "absolute right-4 top-1/2 -translate-y-1/2" }, Ao = { class: "absolute right-4 top-1/2 -translate-y-1/2" }, _o = /* @__PURE__ */ M({
2338
2270
  __name: "AsideUserMobile",
2339
- setup(a) {
2340
- const e = Q(), t = S(() => e.value.user || {}), n = S(() => !!(t.value.id || t.value.userId)), s = S(() => t.value.name || t.value.username), r = () => {
2341
- var o, c;
2342
- (c = (o = e.value).onLogin) != null && c.call(o) || pe(e.value);
2271
+ setup(o) {
2272
+ const e = J(), t = y(() => e.value.user || {}), n = y(() => !!(t.value.id || t.value.userId)), a = y(() => t.value.name || t.value.username), s = () => {
2273
+ var l, d;
2274
+ (d = (l = e.value).onLogin) != null && d.call(l) || ee(e.value);
2343
2275
  };
2344
- return (o, c) => {
2345
- const p = L("el-icon");
2346
- return n.value ? (l(), k(rt, { key: 0 }, {
2347
- reference: _(() => [
2348
- d("div", Sa, [
2349
- c[0] || (c[0] = d("div", { class: "aside-user-mobile__icon text-lg" }, [
2350
- d("i", { class: "metisicon-yonghu1" })
2276
+ return (l, d) => {
2277
+ const A = L("el-icon");
2278
+ return n.value ? (r(), T(Xe, { key: 0 }, {
2279
+ reference: C(() => [
2280
+ u("div", vo, [
2281
+ d[0] || (d[0] = u("div", { class: "aside-user-mobile__icon text-lg" }, [
2282
+ u("i", { class: "metisicon-yonghu1" })
2351
2283
  ], -1)),
2352
- d("div", wa, E(s.value), 1),
2353
- d("div", Pa, [
2354
- A(p, null, {
2355
- default: _(() => [
2356
- A(g(_e))
2284
+ u("div", yo, E(a.value), 1),
2285
+ u("div", bo, [
2286
+ b(A, null, {
2287
+ default: C(() => [
2288
+ b(p(se))
2357
2289
  ]),
2358
2290
  _: 1
2359
2291
  })
@@ -2361,19 +2293,19 @@ const at = (a, e) => a.reduce(
2361
2293
  ])
2362
2294
  ]),
2363
2295
  _: 1
2364
- })) : (l(), v("div", {
2296
+ })) : (r(), g("div", {
2365
2297
  key: 1,
2366
2298
  class: "aside-user-mobile",
2367
- onClick: r
2299
+ onClick: s
2368
2300
  }, [
2369
- c[1] || (c[1] = d("div", { class: "aside-user-mobile__icon text-lg" }, [
2370
- d("i", { class: "metisicon-yonghu1" })
2301
+ d[1] || (d[1] = u("div", { class: "aside-user-mobile__icon text-lg" }, [
2302
+ u("i", { class: "metisicon-yonghu1" })
2371
2303
  ], -1)),
2372
- c[2] || (c[2] = d("div", { class: "flex-1" }, "登录/注册", -1)),
2373
- d("div", Ta, [
2374
- A(p, null, {
2375
- default: _(() => [
2376
- A(g(_e))
2304
+ d[2] || (d[2] = u("div", { class: "flex-1" }, "登录/注册", -1)),
2305
+ u("div", Ao, [
2306
+ b(A, null, {
2307
+ default: C(() => [
2308
+ b(p(se))
2377
2309
  ]),
2378
2310
  _: 1
2379
2311
  })
@@ -2381,122 +2313,122 @@ const at = (a, e) => a.reduce(
2381
2313
  ]));
2382
2314
  };
2383
2315
  }
2384
- }), Ia = /* @__PURE__ */ B(ka, [["__scopeId", "data-v-c56964a5"]]), La = { class: "aside-bar-mobile__head flex items-center gap-3" }, xa = { class: "p-3" }, Ea = /* @__PURE__ */ D({
2316
+ }), Co = /* @__PURE__ */ D(_o, [["__scopeId", "data-v-c56964a5"]]), So = { class: "aside-bar-mobile__head flex items-center gap-3" }, wo = { class: "p-3" }, Po = /* @__PURE__ */ M({
2385
2317
  __name: "AsideBarMobile",
2386
- setup(a) {
2387
- const { menus: e, sideOpen: t } = z(), n = () => void (t.value = !1);
2388
- return (s, r) => {
2389
- const o = L("el-icon"), c = L("el-scrollbar");
2390
- return g(e).length && !s.$route.meta.hideSidebar ? (l(), v("div", {
2318
+ setup(o) {
2319
+ const { menus: e, sideOpen: t } = H(), n = () => void (t.value = !1);
2320
+ return (a, s) => {
2321
+ const l = L("el-icon"), d = L("el-scrollbar");
2322
+ return p(e).length && !a.$route.meta.hideSidebar ? (r(), g("div", {
2391
2323
  key: 0,
2392
- class: F(["aside-bar-mobile fixed inset-y-0 left-0 z-200 flex min-h-0 flex-col transition-transform", [g(t) ? "translate-x-[0px]" : "translate-x-[-100%]"]])
2324
+ class: R(["aside-bar-mobile fixed inset-y-0 left-0 z-200 flex min-h-0 flex-col transition-transform", [p(t) ? "translate-x-[0px]" : "translate-x-[-100%]"]])
2393
2325
  }, [
2394
- d("div", La, [
2395
- d("button", {
2326
+ u("div", So, [
2327
+ u("button", {
2396
2328
  type: "button",
2397
2329
  class: "aside-bar-mobile__close",
2398
2330
  "aria-label": "Close menu",
2399
2331
  onClick: n
2400
2332
  }, [
2401
- A(o, null, {
2402
- default: _(() => [
2403
- A(g(Qe))
2333
+ b(l, null, {
2334
+ default: C(() => [
2335
+ b(p(xe))
2404
2336
  ]),
2405
2337
  _: 1
2406
2338
  })
2407
2339
  ]),
2408
- A(Ca)
2340
+ b(fo)
2409
2341
  ]),
2410
- A(c, { ref: "leftScrollRef" }, {
2411
- default: _(() => [
2412
- d("div", xa, [
2413
- A(tt, { menus: g(e) }, null, 8, ["menus"])
2342
+ b(d, { ref: "leftScrollRef" }, {
2343
+ default: C(() => [
2344
+ u("div", wo, [
2345
+ b(ze, { menus: p(e) }, null, 8, ["menus"])
2414
2346
  ])
2415
2347
  ]),
2416
2348
  _: 1
2417
2349
  }, 512),
2418
- q(s.$slots, "sidebar-foot", {}, void 0, !0),
2419
- A(Ia)
2350
+ z(a.$slots, "sidebar-foot", {}, void 0, !0),
2351
+ b(Co)
2420
2352
  ], 2)) : I("", !0);
2421
2353
  };
2422
2354
  }
2423
- }), Ma = /* @__PURE__ */ B(Ea, [["__scopeId", "data-v-05675378"]]), Da = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQgAAABMCAYAAACRSCkxAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAABCKADAAQAAAABAAAATAAAAADXpTM6AAAqwklEQVR4Ae2dB5ScxZXvu3tGYRSREAoglEkSSkiASEYEIxBiwWLBgWXBNjZhD9hr1mvY52eLc+yzz/v8dtdmk9c2tvGaY+DAguGRbJAAWShhgQBFUA6ApFHWaKTp/t7v/3VXz5dDzwwM5311pqbSrXtv3aq6363wfZ3PfcLdrrVWn4NNh68t5PN/mctZI3P5XNdcLt+Us3Kr8gXrsVLuyBMnjuvb+AlvZsZ+JoGPRQL5j4VqOxHdvrJpxNGjuZ/mc/mLUA51TrT5fN4ifdCyrN/lS/n7hk7qvsZZnsUzCWQSiJfAJ1ZBbF5w6IRiQ+5hmnheYDMrLUNRHEZJPFHXtfCdE8d2XxsIm2VmEsgkECiBQmBuJ89curSxb0tD/juWlTuzVLJyUb5YLHVnuXHp0ebizevXW907edMy9jIJdCoJfOIUxNKfLO3Sr9TtC8WW0mwUQxe3csihLPAsLuxQcXyxZB1rFfPTrMaDJ3cq6WfMZBLo5BKo7+T8udibM8cq9Jxw4DwUwDesnNU/V2JL0uW07eBwraX5fM4aWipap1G63AGRRTMJZBKIkMAnSkFcf/m+0Xmr7ltFyxpmlaxC6/yPaKGKAGQjsxfqo38MZFacSSCTgEMCnxgFseC5zf1LxfyX2XCcli/kuhBWmxGoKKqZRGxQS8upT9ySqtrILJJJ4GOQwCdCQayfa3XfX3/gz7EarmNp0TdX9C4tbCMhWHz2aSdFtpKoao1g2Cw3k0AmAZcEOr2CsNh3WGbtPa+umP9KKZ8bxhRPNMurQCZStiJcjc8SmQQyCURLoNMriNcv2DuyLp//Yslig9HK1bcuLIIaZrRBuYydyYrlUE47ViVBlbO8TAKZBDwS6NQKYuncfQNyxeINxVLuEuZ6j9bZ7lYErW0KVh9SFHYJJkjmMglkEkgugU6rIJ55Zm230hFrBguK2RxRDuQ6A5ciTcOCFYEp9YZlBVGt7C3O0pkEMgmESKBT7upzQpHvV3/s1JJVutkq5U7lolNBpxbuS1Fp0lyYwgwploohYsiyMwlkEgiSQKe0IJa80Dg015L/QilvnYWt0K0tz/6y1SGLw3KaIEGyyPIyCWQS8EigUyqIppbiyIJVN4kTyt7OxUQqRWGAQaCo8HRKc8nTIVkyk0BnkkCnVBD5o3UNpXypQdsOtrDMZK9IzpP0yLNS6gOyuD7hVDeealkyk0AmAZ8EOqWCaIHNPLuSracWylDauNZEa8yUBSiBCpC5M2UgszCTQCaBaAl0SgWRQ0Ow/wDnzGyjAVzz3pWwW2jAfM1VgUGVHXP6xJNlZBKIkkCnVBDFsoaAb4ciCNUA7uYFgtkrFXBZgaVuBFkqk0AmgaoEOqWCaOE0Ul+Mqy4JyhcZqkx7I85p71AprWAgso2I8rqlNT+LZRLIJBApgU6pIMSxrixUJ35VU0S2pRXegBkEFa2ByjElWZhJIJNAAgl0SgVRZA8iz9dgfBM64fz2gVUyuFqVQCQZSCaBTAJGAp1SQXAeWT6SZGK7Jnt4wrSnGrpAK7mBy49qjSySSSCTgFcCnVJBtEhDaDY7ZrTZZ2xtgKOwNdMXq9yksHFl9oNPPFlGJoFICXROBWEvMXQ12s97UJ4fyp/DJ+eyBYZfLFlOJoFICXRKBSGO9TXq8m/fkHBqBQyHAL0R2UgVWmx0FvS568xlEsgkkFgCnVJB2JuUTGgpibJzaIU8v5NlWUd497srb3hGv17h0iT5XDHTD0agWZhJIJEEOqWC0D2I8ier3TO6/HN61rvYEKvQEpfwBnhPlw4IanIFAL1CabQ+Caqe5WUS+P9ZAh+ZguBpX88EZ3chiWvBenBPfVYZ6ANrL2uFfyQ2nFtU04XJrULCcdvYMv0QLqCsJJNAgAQ+kikj5QDtCyphABvuLC0xyr+OVfkojP2xmNxhPnv/0MHmLk8UrVITH5FJ/gEZ6rfgi0VMk8xlEsgkkFgCH4mCgJvT8d/Cu36BO5RL5rG+ANX6BSk+BlXKvcaWw8+37vn3HSUSKpOScCuK8uam9i68ni9T2XmhNLOCTAKZBHwS6HAFgdVwIlT/F36kj3pIhtYh5YnPEoJ1Bcrg3RJLi5adzSvmzJkj/WArCKME0CXAm7wIy0JAmcskkEkgsQQ6dA8C5dAHTr6BvxT/XlKuWtAQ2qS0X9jK5XewIfmzI4eLC+6YM/KwcLQwz8uazb8D4d65AFgZFTCUTeYyCWQSSCGBDlMQlf2GWfDyJXyypUWV8aJ9JMlJZxMbm88VW4pP3nHv6N2muIQC4TO2zH2fOjAggSWZfqiKJ4tkEkgkgQ5TEFA/E38vXlZEKqdNykKd9hWtBRxP/qL/iFHrnAi0xpBy4GDDmR0arxoRH/H3IOC/y86dO7sfPXq0W0tLS9c6nJiE/1KXLl2ONjU1Hdm+fXvzueeeK8soWWNCW5m8AL4kEvFSLB8dJ6/bVsgK7a7gsaB9JAgfMN3Il5F4+KPmT/w45FOCfoesS6Gh9oE+3yE75442lI1tNSyZ05io8tQhCgLmRsPL3fhTkvHkhmpBQ9Tl6teC5+lcc9PS669vZViQ2nvgspTrgqUbQ3BKtyk70qlTUAi9unbtOhilMHzHjh3afxmIXtCvivemvAu6AdatliNHjjQVCoW9xx9//I733nvvfco3kr9p8+bNjRdddJG2YdrdgV8TbxRe/SLFvY+89YRrGRSHCDvEQUMKqRf+BPxIZDAM/w75i6B71EsU2U1GgU4ifwcwejhswjcC26EdCK1e0B7DaZdk1BvfTHp7fX29lscfBPFKfmJXkcOxVBiHlyz0cw7bCFfihb9NyqiCvx+4xP8wvNqQdo4fAc8W6r0FPzvTVqZetAN5bzr/Swz+i4GsCb9l1e0utrQ8Ueha/+pfzRl3wEuRMwy+WYkF4Vth+DJcVf3wruKaE7S5sG/fvmP2798/lsE0BWthAsI9DX8CZX2QB78KluuCJ0sXOuxxXiQ8jFf79uDXEH9ryJAhb65YsWIZ8Y3jxo0LfMICm9qBrzuVroCXz8DDFOKasPvJf5u+epzwRfJ3pUYcUQGc6pB+yGMcNM4gLj8OOkOQ0/3El+F9CgKFegZ8au/qKDhWAf8m4RL8G+RtJ92miQQOnwP3IJTBbHBfij8NgJ7kHSW+BWW++PDhwy8uXbp04dSpU/f6KifIAJdkMYZ2fQ5ZcMnP0gSW20r8RfKeJHyz1rbBm8bXZPCL/3OIjyHsAc6Uy3t+cCKfl0J+nro/q2kCUznQgbAe7XsNBG6E0b4AEdVEjp64XmTFlvwadMuav/72iMDO0B6EvYHpwxvxgKEoLR9evoLSWAm9Dxw4oIF/CW2+kHAsdI5BDvXIwygDX9VKx/WkQH4Q6ZMJL2WgbCVcDK7nly1b9sqkSZM2gi+iYUAncxdCYw6g4yq0Ta2ToXUSeZoQD0Gr2RS0JRQ+6o9HOVwBzumkx5LW062OuOTSgJIIJIHsulBHT9pj8KfiLwN+HRP4VeTzB5TxK3369NkZWLmGTHD3hM+7oHkz1YdAvzpgyRtF+RkoiHOIP7ho0aLHzz777FoUaT/w3g3+zxFqbhg3Aryn0QdDadv/JnO1KUgawl8BnDPxd4DrbNKyDmWpJkXhgqPecDJOxzcH95ALPFViMshvocZgfAFmXRNE6STur+eM1BM13PH8kD5OvWTQZYh2crSzcOjQocF07FWgnI3XU7mf8vGpqVBHHcqn/nNang1DVpO6des2edWqVY+88847r7fFmgBvFwbP7eAdLzoe5jQZNRiuwb+GX+UpT5UU/oMHDw5kMs9iwF9N5XOQkSa7i27UWAA+R90qXXD2AH4cGaMpOxu5jGtubn6MpZysizZ3KrLRE/0r+OOqRCsRtQeaPWjPFPGBdbNn7ty5T7EMtE/UvPBhaWho4n6WcqdyELj6vT/hDGBeJ/4ebUq1xGQvaypLsnuodya8prUYxEOQkzK/qd0UBEwOR4i3weQZNNKHl/wgJmrK4yK2vcQoV47A6ynyJGuirUq0rw6zU0uImxnIn6FjpXHtJ2PNSCsVwa0BoxfRZOYOpcNPIvxPTMg/YN7Wuk8wEHwXC3cQf6JH/im0YzxhzQoCPAUm7ggG663gmQ2+kYSBAxZYisKdt5y0eG9A5pOIS4GeCq1fEZ9L3LdMCcfsLmGy12M93EGurRy8dAWtPPpBFqHk8xdYL5sJF6kIn8hR/wrqyyIKcmrbYJTPJEI9/RuDgILywNmLsXgP4VnQaNWqQcAp85DrCN9ETonDBheTmGBfkhBAKtOSQG12Ozbj3Bk1pkoMh3xVFDF95GCjPQx12lqgQ8Yy+O8lPgMvTeugUmOj/NWEUxuberr15WnZe8GCBY9z4tHkB43OgV/x2As8UYC9UXZ60tfkwJ2vKM1vguAq0rKmQuUSw4vL8vTAyjI9ljxZJ8fzYOqFhfV0rRbWlClT9EQ/m7Eb2m7Rl4eu1vl6ZWDt/PnzN51//vnaYEzkwD8sChDcdYypY1ASmj+JFQRK8lPUndHeyqHC64fVaRbFfFQZwirQSZfD4LXAHUdaT0BboM4wqgOi8AeVqS/NVevW69ghNyh5x7skTyXd126LU9tQhDqZ0AbaLNL9ldcWnFF1hRuvzcWp+Ft69OhxwSOPPBL4RI7Co8FH+wP7BfymrwrApMZt6DIGTqD+3+Jn4/vjA+mRb/eFwjDnhFHcwaMdJ0+4tQE3jbbdPnr06AuJ18Q7+yA9mJh9qO+j48xz8HoM+VeisC9AMcnySuSoUx/UFkOj0qYC4yvVnKTelfDfQ7jb08PXEfA93GYLgnW49h2+TEdph1ZvbCYSWFuAJIigh3aZcgh9ZUc+QOM54pSiPwPjTtorZdg7vkb7QECvO/4sZHvzmDFjtoB1RVrM1I+tUpZrLJgPQPzxJPsm4Wx8nKXiqx+UIV6ixhJ0KM7r2PZc4rehoPYRl9mfyoFDijFyUoLfVh4VxKI7Gv952qzl2HJ8rHCNbIUryjn3XqLgTBn4tDdikoEhvGpPI+nmcxFYWTBPUe+nbVIQKIehaK8vgkzHKom1KbBtcrZ+CMWgG5Yepwxe7GrLw55OqGePRWbtX9LmNMpBI1nLgr34JvDo8k03Qq1HddToY5c8n6NOA4NMR1hvLFy4cMu0adM0IRI5TP/IyZYISQQQ4+BGim+kTWpPEgeoZX3wwQeBsMhXMhJIYLnJpBywfAPhxYQfsjm6uWfPnonNfgceE7VDL11Nbk+eNnan46/BiviA5Y3usUQ6T/1AWPAF5kdlIqsBCerp2PxXwPmuDATgLrLM2da9e3cpv+01Kwgu9DSwuaNd2ZkQ1lrZbp0EkYDhAL6SZ9naWBfRYuTpLEY9AO/MSU6vAnkC4V/RvgFJaiIDbZytwy+A36Wkt+APaPCTJ5NQm2IT8ZfhdZQXaSJX5Ku19wysGD0pX8YndrbMEkMnB+TIUcek36BtMr3jKgpgJ/414OcPGjQo8KlG2SvgegQ4KeTBeNuF4Ac8r7smn+bpuwiYX5PWUzCxi5ONky647fEtmvjrqPtWkj0Q0VDdKCc6aS0I8NbF4aV8CxvHTzHpd0XRV5mUtvqFOvZJSk0KgjcqC7169fo0zH2BBp1IaJtoYjSO2TgGk5Tbq1csgrKCCBd6tYSIPXRjx284ddp4E6Xj6cQq2jBoZKBJ8Bh1dK9AtxT3IXRdeio9+uijueuuuy7/2muvdRk2bNjT5P0KU/WzwNwBbm2YRTnJeQr+AhT04hNPPDHxhqVzkIcRSALjrKtxQFqbkifR1ji5aMC9gf8JCm4u90e2MYYCj/M42l1x6qmnfhdl+iRyuZc658GbPcaI+5zKgBsGD7NYBi4EINVJTFy7VS4PDacnmT+FfI2L1fh3fIw5MgwOR5YvKvxpXRK84JTCPNjQ0HAwLf6aFMRdd901ls7QEd/pdOJHsu/gbJiewfaJhC1P/6w3YnaWyILg6xFONInjdMKxtPNLhNrFjnR08gbgfoJ8HjzuuOM+IB1GVJNDS47G1atXr0PDbwL2H0jHLV/05Jr6/vvvj6b+25HMOArB60i1T/RrX/vaeNp5Pfz4rB8PPd3OW4QMv88yYN7QoUMPo9xCGeI4V9bXB+D4/d69e1czzn5AXPs+pmuDGqCxfA5w9ikD9MLk7qrLpqArHZQwbdHTHbzVhyDxevJ0Qe7q5cuXb5swYcLuoPrKA6ZaLwzG0AkrD8pPUkcwLBuCqsfmpVYQaOjjKk+8iyAcO2EMB0kaYmDjQu1B2C9qhQ6xMgbXaEJILGzjUAeWM7CvoGBoYKEjkwGzk3b+gsn+QL9+/XaQjuGQdpRh9q9fv/63LNl05+FG8hxY/VFoHAfM8ZQkUhDsnYQOTtMvJvRTC8+Bhxuop+VlOBDGG3DvIMN/RSYv9e/fP3BZEYSAenphbz1K4m8pH0F8ahCc8igDPK/7HmehPH9P1gblJ3HUcYF505rccuD3eRSELnHdDMxC7qq8WlFuLnxKeHH6ACoZSRSWs67hzZnXnvFUCoJGduVlpNkwcAO+L2l1io8fCcMpTB9AGzPsq9a87h3s3PxUU4DHGsHBCLUu/DwDPE4F6yn5Arf8HsSU+zAEVWj2yJEj97CW/T71H9KElpMMzcBCeTjrHmXjcYszIy4eN5BMn8XhMeXA9969e/efka6K2JQ5Q9rQCOwTWA5PpFEOBgf11dHr9+zZo3snT+B1TyDQAas+mszR5XjCDYFAAZlJZKNqsiDk1C/Gl5P50Tyhb+cYejPptYLxOvj2ZvnSgjE0fIUhGeJdvES5JLTD6qdREHleTZ6G8G+AoWEwRhDNWBjRtua3IJS60HEZ1hEoLe1bpHQ8vXTXYVpcNWSxESXy/A9+8INNcbBh5eyGazLtCSs3+ffdd1+O9X/5sWYyY8K4QaLyOBgnCZSDbv0NialDsbWGQf9kmv0SJx0T79u378Jdu3Y9T1oPqEAHLQ3IUfiTdF/k+uuvT7TMiGmDLReN9TAPvQIKYiZ+AfsnP2P/ZL+XwSQT2VsnSbqj8BraiRUEZtsIKt2MMHXuHPc0Nfg7JKwuMVJglwKvRZ1xrXYCndA/ihQDp4RM3ubpPzftxPXiFS5vXnukk06CpLSQybnAxh1ta4+F5fnyt5LijYDThuxv8FfHjL++yHDkjBkztOGb6EZinGzAo6dhC4pO414boj5lQX4Pyr/OA3QB+JZ4+zEBDVsRoWRAldwJbxxulXPalBypAzKRgmDHXE9RbRJdS2i3QEIyTgyYdFBcZQivhFmc/hFuiDhCKQhtOeqvlQsHgDdqA/HTe7VNvcledAHpfbRvJUuLrQFldhZyKXCCEcgupxph1ZQvmWktV7PsdA8iiTN9mASW9pwOXPX9E/W714GvEb+0Pb5vAZ4iy4w3aMt2aEXtB2kdcDwwxxHGKgguWAWa9c72QPsgfiWTtwc4J+BJlpUE8aqyIDqM/L/hdf07ibvuRnTUk154E7jp8PX01q1bXetUZz3aW2QMbybviU2bNv3e3LOJVRBU7ALii2HkFiprB92Jt2p+uTI9CeqAxtoyduzYRCafp7ovaQtbqsExKN1c+arQicrzD2I/pC9npC/Hk0HbdrG8WE87A3tLx4FLliyZwJXg/sDk9ZTgSWN7oVq3bp2NUXlyWCImbdFpzeTvbGxsfP/NN988WOtkg0cbZ9S/hIMtp/aAbxi4dAsxFCVNlan9bihAygI28A6AczW0qwoiqF3A9Kc/dBEtkYtqgxBAQ18AWwR93ewaAf4+hAR+S4K8q7is9ey2bdt+y8eAqi/Xic8gXoVfeEwohZXG0c5q/Yh6AyiTj3QVXFfD9xyWSj/VUilSQdCgAtbDRAbpV4mfHIk9pJDGU9XSRz7+J76dFARCtQe8e9C3KonWmGFLFodHt5miyBDeqxd1wgCRj25Jbg8rnzVrVnfafh/+EpSDjsZsUA1MxaFRPYaS8nDky3JopryRAbqM7xD8llOkedwf2EV++MwMYEQ0ohz4oopdZbfddptudcqEV+e6ypwJyprYXHU9SZ3laeNc9DnKZueGBLz2YrCHbmZ66Ua1wQG7D7pPkj6D8GrCruLD68nvRh/+HfLRF9gX4+1+iqIRVeagHxhtS90ghODrTZvuQdbziC8LVRAU5tGCegHnJhBNx1Mv+SByEN8Hru+vXbv29WeeeabbMcccU+CiTB5zvMBgLxx77LE5Np9yaM4jSd+x1wQqs+LmpzUVPGi55OxgK3FUEyHSwY9unvk2pkwl2pdnB78rykBXrO0PyZgyyTRIriYP3FIu4mEE/hysCV2s+jl49N2A4IYa5JVQpyJGKXmKqknwBfJRBXBEoN8VK0evpEcqCCZpCz5ULg6UiaLIQnsBe8VrjOtCe9v1CF79cdJJJ61mHD8Mbr2LoU3awP0IykdRfvett956Bwpih+E1jm/RSOsQSeJ+S4Fbx+hj582btzxUQWD29kET6hrw52lYYmEbJiQMiFgMzqUogkUohjNRCjoa1Vt4eoOuO4qigc0T7QC38FR8m/yXVcfgCAtl1ZZlWQY1Yo2uqJsTNRkwoTIy/MFzkYkbur4zcG0JkY0m4xBo3YIXrR/hdWMzkdNAinLgDDWBvfXoL33ByL7iC0+uYmcanCX6uN3kwslJjidb0UnDRbySgK74K5tpQQCevCB83jzJR+3ZuHHjS+DWt0CG47V5TdBqSUgRKwM3Czk9C55fEpdu81D1J0VT9dM41fHymqZ+EKz4Bac9WQIHf+U11vNo1NcAPjYISVCeEYJhWmk2lWSFPIjvCS6ZfXozUU9SvfBioyHUbvfP0VjzyYgdUGUF4R6YQmQUhY004J+/RgCQP+uAP8udA/9dGTTawOpwBy29nHMt9F5HZnrjLpHWAzaSN5UnHZx8Yu8ICl1LH7kosXfB2ugFYa3d2+xQwtr7CHxblHwnfv36e7KdWWqZcetE4I0b/MOHD9+NkvhvyidC4yrCboRSCl7fnbK/Q6ktJtTDL3YiC0daZ/hKWy8CHpTWOnh5Z/r06X4tS2GejhhFeAtI9P1CW4AKjfciNzAM2pzMWe2ayxPXU+9U4McSDscPwKuDU1skTprq0PJ3INS5rV5XsJ1pV5zxY78m5USUII6gYnfCaY+son4J0LUXyBjonQUybZYlcsBX+y8srv5L4k455RR9bPdgGB6TTz91A2fs5lgSmoJhH0bftRhS7n/39w8MTYWUN0E3/g51hbCzblDcyx/fpdSn7h5Hoa7Da9ljK1cpWOOVh9c8upsPJfUVz0G4nXmCSevUZ0HycOZBQ1bXYfJCPeV6SO/Hvwfcv7Hkl5LwfxqO3cv+KIgbYfQKiNPe8v1zMe4UhOJyIHR5O7OD/0mOZfKup4aLql8XM3AiH3au6s7ERmciJK6vJw0NKcuxz0Kx/Zq3ZqDNmuRnZGjqmbxKPoHvqWRAddSsTeNB+N0mMypUPzmdN+0si4vD11GOwrT5KFM0yiaW9TAKvygOZ8JyKWK9IBUJTvkexm6ig39dba7IOxSnl54uYLF5/zz1tA8xgDkiJUjS11/q689yxXwhS+lEFxzSXrX28hbSiC3ALcaHXnNnOcT3lEraiH0V2T3HpT3bcnYtMdiU7MF+wUwQ3YLvbrQhCsPWjCCpmqHSUMDY/JgwhLl2zxZtaQi/EnCSai1VDDVW5dcJlSCut/TU0FaE/kpai56sL1zzgpZvU+7DDz8sDhw4cCEwOsNyrd0lOyM/tasyyBqwviZwAqDNIjvPKGoTgqcv/ZFop17WnPDEuSQwBgc8ryR+BaFrDJlyhZTJqprIdx8frfV41uADVwGldDLhcLzJ9oW0QY/h95FN4v2ZMHwmX3IxcUOQm6GNvBr9EOnRlF0JjJYUpv+cYQO8fJN+04mOqR7YH14aVeCIiBkzESAqehO4/wGPodYwvFlYDYf5BJ9+za4q4GrnwlxhzZo1Z4DsThozEHPOPqdXKMVgnBphT1CT8TGE0g96nTNaRVTbWOUw3cFgtdpyYjJXG6o5nggy0eA4BVnpqf66pzg3c+bMI4sXL/4p5froqr3zL9NQspUzoeLgyrNuPwkF8X+I6+Wj6uA08Yr8pWiint5CV3WqG+eSwBgc8P8nxgm33kvlSxumwB1q32niyJEjTyR7vbsoXWrLli3at5JCagjjU/nQ0wDXhZ9ElpW4UL0wnIbLoDGP0n+bd5Meo+444E5Wf+CdysEoAp1q6Dc+DLpQeqqfxiXhHZgj9FXjaaedtisNbsFWFQS3v4ZyyvB1BusUdp5z8iC18YkJCcjZwLSE2hNeL2vp8yo6l0jlajvm3ACNNfiJEbTUq6cgo0u5kr5q8ODB3vfurbPOOksmeazjrU79VN8laPQRyFtrblvukr2nH5qZpOW3umKxlidBHFiawQkv+u2OXYRRVozGlz4NcDnHgw9wTBhq4sbxhhV0Ovzpk3aRR6vg2QzMWi6lJd6DkIyjHPgCi+FHtzufo78mE9fpki5nEfiUhMaHjoUD8ZhMlTsfxiY/KozDqbpJYMJo2BqA9VQDv+j0VV6Imal7CuxQ2081oyDCKn9c+erQ8odopbhS+BoYprObofc7wuje5YO9wMziGO6cyq8cpaZGR9ahGE4j/CKVo05FtJexDtgdSYnYMpPcIrysmqRu1KhR+kWo+Rp8UR56QyifDd5zavngrvh59913B4Ln6/hh+FB6gFJcehtl8rbqJXVR/KtMNOWDHPNlN5P61/S93r9o1pwxnnQ1HkfDlAfRiMpTnxn+osIoHFFlOjbKs4n2Z1gPX+SKqP1rR2pYZ3bqqqBTDPVhqGfsh3VyXFuRkY619kTBAaN12CRo3IxJPSWtklA/sEE8mvq3EddSL8rtAGYZCj2xggA+dGKpzAyuKKLOMsaINrUepq6OO0NxA9OF8qnUvWXy5MkTibeuV50IQ+LcxxlEndvxV4FL4zWKlvpoKXDrQ9AFZgfhBEdVJipXOsyxCbkCpfAQfhPePtUwykGhvMHhxBsUD6MRlp8Er2BqdfWcaY/lqXcvCPSTY7Xi+UjrlcSmrcPSNrw2xcey621k8ywdrUtjUUh6ATOTju/BE/YBlgvzURZ74TaSUT1ZmQj6jsHt1P1zaHSNEGgRGovhaVHS34LABI5AVy7SINJATunmwe986lwSU68v5dr8rufrWb/k7c5FUV9fEi7dxWGyjYf3m0l+Dt8b73PiWw7edaKyHP+K2YH3AQdkJDnFCKjmyoK2lhq/g1/tRXyFtN4olbNlqlDO8Gon2umflEwSV/PbnFyZ1dpJnw5LPTqSMNYRMLZQYgeztzkaSMmE6eUZ+Rxlh/cnTOCLKRvsLXemGQT9gNcPmZyIRfYiJxs6NlrBANrJ/QG9FWgzIQujd+/eOonQjbxPgeNK/DR8Tyc+bxzYjdB4lrqBHybxwpt0koGUBMbgU8iewj6snh/Ck376oL+zzBmnDBD7o7ba7R/B/tar1HsYeSwj7XsqoRzGIJfPgGMGdafhI2UiWsDsIHieNryldBpH3VjwOBgtNTgB/AXtmYK/AIT2RUDiVQsiDoeY6KBjztj2hQHU0xFXwnji3fAwRB9lfgtTrMCWgM4x5LyqoMyLv9MTjINy1YD/WFrLGAQyI+9kwsdd9NL+gTauhiNbPV3f47sSW/jgzm524w8yiHUC0YtwMLj0wVedfmitXt00DmBBWYeA+T3+D1gmh0NgArOpE5jf1kzk8gqK8Fe05y5ohC4fKNPmoiysqYRjoLuVD/fqCDno9UX90pUeXLpoFCcTTUBd3NIxsn5hyz6/T9Mu6oaCR5V5K7F3t4aXyR6AH13FHoy3h2YliFymGFwG1qTjQh5augTlUrJenhmzDYy/ERzL9vUqIE7MbBImH33A1lbLrokTJ+pNVFv4w+OY6GzlsqrKhr67Y4MVRSv3EeOgFSgkNmDAAA28n7MBdioCv5yJHalU6SR9K0G/NKbboxPoeN1i08/J67hLa+l6vF7Eso8+KQuhXM3WJ+1eowN/g3m+vpqbIKIlBnVjIeEnFsYLoN8L5abgPzPQxlH2aXBEEqJcSkQ3x/qhWAJlCK8DkMdAwiTKQXshb4LzF1h5q738JUmbdpswqE4S+QFT5LX8p/n03DnEb8LL8iEo70FE4Tc0BZvGcR/jEO0HdXmfxIQaTybOeNXy9YeM2RbGT47Q9oKRU5pyk6c9pfVvvPHG41wTf1UdENsJNpZ2+EfjNQK1hpbaaibUR0klQT1F9r/88suJqBStUlPBKkhNBMKHiFjSiJ2FgQjJFO+4dxH2PyLYIWTpFl0IKRcWweiIy95XqLQ37XpUMlsJ3V+i3V8n7npiuKiFJMxgCCm2s8EbVRxaxpHippUrV/49A20QOCbQxtoQVShowCZx0KJZpQ3Q0xuu88I+GBuHK4ls1G9JHG/t7oWX/9CkBP5svH0xTnXjcKicegJN7FhqbqfeOLVBXrIzcUc4GJhBBqn62elFU7AKqa85Iiv3DKyOe/QU080/bSK1t9MLM/puwS6IbSPcCAEdjSlvP4zo7rfO8sWYRsRGXo1NNDKslvxm9rNbr6WFcO4ZpQeRyu4Q0ETZ8H0EnhdgRXyPcA7p0wk9ZBKhSgMk5aBju/tRDk/piZ2msoGFTxMNDZPAhFWmjxdQ/9v4OcDoFCZSLrQpDJU9WIPKnfxRrsfmFsbOv/FUfGT8+PHaDK7JOfGGIUgCY+qyx7KScf1PpP8TPvspX/U1CWNcEWsv0RwweMD/CvHLHGkTdYVO/hUP81SShaf7HFrm/Y0UxEKIzHBhqyEBHq2J9daeNs+W4VfiN+G3I6wDbIYeZhNHN7r00Y8Sm3YlbqLZR0Jill18SS9+FAuopWWJVVe/m9uUetM0fKRRKAeA8G4tlqyaTFAbSeUfsmriMtTzaG6ZYt8g/SnCjrLCjiKvP0H6h0yC55kEvmvcTt7C4nS0LDZNqKjHk446BFeT04nKggULXmSfZh+K7DsguRDvk4v6Wg652WHYP8EZWC8M+XpJSOPrfsbWo9CuWfGz9paM9eZn4MlRhQc9jBK/HUrbtC/wDHV+g9evscn8DG0PMHKS/w5OpyKP021Ixz94fwQZ3EXWQEd2bDRO/iCQ5XO+fm9Sv3Q0nYyoK7M+glRWT+/DbySuSyLaJNIE3Mqxqb7R2FT5NSmtncujgsL2cAfrWzZ1LxaeY4zdCr7AjhUdDCmbHMR300GLi3sP6EZkm51uSvLeylzW0LKGxMM1eGnddnEVeUm2LxK/H4tlCZPAezszMS3qb2eNKeU9JKKS3l2QQq/ZnXvuuU18FGgR6+J7UEqSi24+Bp5uaMLQtlBaKve6ily0NJ3PpNC+x6vm24le2KRpFP0uNlrfBX5sEM0KHt0Y3ZAUp+DgURvKPyJ6MfGxyovAr+Lt+Df5LGPafl4P3vuh8V3q2wqZuPCFurhyR8W6AheknqUz/4NKsaYNMPBiqQHLif+Y8CY66jqeGN/E/xc/KruA9+XX8U27nZpEwGhTzt/TDg5qic6bd1FLqbnln1gt/UlWW5jHYuAV7xI3Ia2X8A++sHxGWuGHsqfvDbJGW8Lk+zZAd9POuYQ1mf+GSEVWkpne5/gWsv061sp8dpTbxDcv4EjZ/Ix+1oaebeo6Q/r0AGndrVhqeKk15L2TZvYjlvHg+Q447wT3y3gtJ11mreiHOZV54UmL91X47yGfW5HNC21VDqKv69/g/DH47XclAujKUnwdejLl07r3qKCn+8YAvM42as3/Eu3SXZtU8wX4FhTcv1D/gYollJbHUHhwL6nn32F2Xr/LU18fU/0yDfGdOQOjdfCHYHqJ8icR1hIUwgf8hJr2GWIVSygHbSh4YfGFGy45e+GX84Wj/woPF4DKc8SGoC2LCZt/hnnxvRcXXbCiDeQCq1barn2VX7OD/gJAlyCbawmnUqYXrTw8BaKxM4HfB7yWE3r55/+yDNtS66ablwq4LS4o/Zglnu5cXE+5Xi4zToPzSZTDv2ClNJrMtoSV36PYzl2PR8H7CjK5DLqfoV1nE+oEI2qpY2+0MdhtFoA9TJ3VhI/A52OcEKyHz8TmfpJ2YIk8CJ+nAHsrtJxX3HV8+hJ0f8S7NFuS4HLCgIvq1jzyrmW+/APx8/FOi1cXRPaQ9zD0/5kHwTZn/aRxbnIKx70slzYgt6/C73DqRpsRAoiwNCjTVf7vVpHw3cQ+LDUuR0n8BXVPh0gfiOptve34ecQfp9JbrDF13CeFkUrTUacD3JzCmWfOHNir0Dyb1+g+D4FhGHJdMV4P88Nba9AQv7MKdU+89NoLmG/pfmgmLbPIR7Ks565DX+Q4kviZyE272HodeACTRN9GqCdPT3A9PvVREz3ZN1C+hEH6R5YBK7BI9mJmdoTllf/jH/94HBbjDOhew0AaDBvv049/YCA89dxzz21jkzj8sQ6jNbo8ikKmb1+8jojPo72Sy7O0+b+0LPHi5c3XG5CFfvNzFbDzqLOcJd3OK664Qg+kDhl3WL99oHM5/hpoDIduI/J5mfjjKOoNhDXLBlwFXoYceOjQoYvAfynpk2mzBf514H0aP+/pp59ubKv8wduDB4twXwbuc+nXQYT2C3+ELsuRMWCnFVLPGT8K7BvU/TX5r/8/j40HcI8c53QAAAAASUVORK5CYII=", Na = { class: "layout-shell w-full flex flex-col" }, Ba = { class: "layout-shell__body flex flex-1 min-h-0 overflow-hidden" }, Ua = { class: "layout-shell__main flex flex-col flex-1 min-h-0 min-w-0 h-full" }, Ra = { class: "layout-shell__content flex-1 w-full min-h-0 flex flex-col overflow-hidden" }, Ka = /* @__PURE__ */ D({
2355
+ }), To = /* @__PURE__ */ D(Po, [["__scopeId", "data-v-05675378"]]), ko = "data:image/png;base64,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", Io = { class: "layout-shell w-full flex flex-col" }, Lo = { class: "layout-shell__body flex flex-1 min-h-0 overflow-hidden" }, xo = { class: "layout-shell__main flex flex-col flex-1 min-h-0 min-w-0 h-full" }, Eo = { class: "layout-shell__content flex-1 w-full min-h-0 flex flex-col overflow-hidden" }, Mo = /* @__PURE__ */ M({
2424
2356
  __name: "BaseLayout",
2425
2357
  props: {
2426
2358
  setting: {}
2427
2359
  },
2428
- setup(a) {
2429
- const e = a, t = S(() => {
2430
- var h, f, y, C, T, N, U;
2360
+ setup(o) {
2361
+ const e = o, t = y(() => {
2362
+ var m, f, _, w, k, B, O;
2431
2363
  return {
2432
2364
  ...e.setting || {},
2433
- logo: ((h = e.setting) == null ? void 0 : h.logo) || Da,
2365
+ logo: ((m = e.setting) == null ? void 0 : m.logo) || ko,
2434
2366
  menus: ((f = e.setting) == null ? void 0 : f.menus) || [],
2435
- accountMenu: ((y = e.setting) == null ? void 0 : y.accountMenu) || [],
2436
- user: ((C = e.setting) == null ? void 0 : C.user) ?? null,
2437
- appList: ((T = e.setting) == null ? void 0 : T.appList) || [],
2438
- onLogin: (N = e.setting) == null ? void 0 : N.onLogin,
2439
- onLogout: (U = e.setting) == null ? void 0 : U.onLogout
2367
+ accountMenu: ((_ = e.setting) == null ? void 0 : _.accountMenu) || [],
2368
+ user: ((w = e.setting) == null ? void 0 : w.user) ?? null,
2369
+ appList: ((k = e.setting) == null ? void 0 : k.appList) || [],
2370
+ onLogin: (B = e.setting) == null ? void 0 : B.onLogin,
2371
+ onLogout: (O = e.setting) == null ? void 0 : O.onLogout
2440
2372
  };
2441
2373
  });
2442
- He(() => void Nt(t.value));
2443
- const { isMobile: n, sideOpen: s } = z();
2444
- let r = "", o = !1;
2445
- const c = () => void (s.value = !1), p = (h) => {
2446
- const f = h.matched[1];
2447
- if (!f) return h.path;
2448
- const y = i(f, h);
2449
- return [f.path, y].filter(Boolean).join("|");
2450
- }, i = (h, f) => Array.from(
2451
- h.path.matchAll(/:(\w+)/g),
2452
- ([, C]) => C
2453
- ).map((C) => {
2454
- const T = f.params[C];
2455
- return `${C}:${Array.isArray(T) ? T.join(",") : T || ""}`;
2456
- }).join("|"), m = (h) => {
2457
- h.key === "Escape" && n.value && s.value && c();
2374
+ Ie(() => void kt(t.value));
2375
+ const { isMobile: n, sideOpen: a } = H();
2376
+ let s = "", l = !1;
2377
+ const d = () => void (a.value = !1), A = (m) => {
2378
+ const f = m.matched[1];
2379
+ if (!f) return m.path;
2380
+ const _ = i(f, m);
2381
+ return [f.path, _].filter(Boolean).join("|");
2382
+ }, i = (m, f) => Array.from(
2383
+ m.path.matchAll(/:(\w+)/g),
2384
+ ([, w]) => w
2385
+ ).map((w) => {
2386
+ const k = f.params[w];
2387
+ return `${w}:${Array.isArray(k) ? k.join(",") : k || ""}`;
2388
+ }).join("|"), h = (m) => {
2389
+ m.key === "Escape" && n.value && a.value && d();
2458
2390
  };
2459
- return ue(
2460
- () => n.value && s.value,
2461
- (h) => {
2391
+ return Le(
2392
+ () => n.value && a.value,
2393
+ (m) => {
2462
2394
  if (!(typeof document > "u")) {
2463
- if (h && !o) {
2464
- r = document.body.style.overflow, document.body.style.overflow = "hidden", o = !0;
2395
+ if (m && !l) {
2396
+ s = document.body.style.overflow, document.body.style.overflow = "hidden", l = !0;
2465
2397
  return;
2466
2398
  }
2467
- !h && o && (document.body.style.overflow = r, o = !1);
2399
+ !m && l && (document.body.style.overflow = s, l = !1);
2468
2400
  }
2469
2401
  },
2470
2402
  { immediate: !0 }
2471
- ), Je(() => {
2472
- window.addEventListener("keydown", m);
2473
- }), Oe(() => {
2474
- window.removeEventListener("keydown", m), typeof document < "u" && o && (document.body.style.overflow = r);
2475
- }), (h, f) => {
2476
- const y = L("router-view");
2477
- return l(), v("div", Na, [
2478
- A(Aa, null, {
2479
- default: _(() => [
2480
- q(h.$slots, "header-right", {}, void 0, !0)
2403
+ ), Pe(() => {
2404
+ window.addEventListener("keydown", h);
2405
+ }), Te(() => {
2406
+ window.removeEventListener("keydown", h), typeof document < "u" && l && (document.body.style.overflow = s);
2407
+ }), (m, f) => {
2408
+ const _ = L("router-view");
2409
+ return r(), g("div", Io, [
2410
+ b(go, null, {
2411
+ default: C(() => [
2412
+ z(m.$slots, "header-right", {}, void 0, !0)
2481
2413
  ]),
2482
2414
  _: 3
2483
2415
  }),
2484
- d("div", Ba, [
2485
- g(n) ? (l(), k(Ma, { key: 1 })) : (l(), k(qt, { key: 0 })),
2486
- d("main", Ua, [
2487
- d("div", Ra, [
2488
- A(y, null, {
2489
- default: _(({ Component: C, route: T }) => [
2490
- A(De, {
2491
- name: String(T.meta.transition || "layout-page"),
2416
+ u("div", Lo, [
2417
+ p(n) ? (r(), T(To, { key: 1 })) : (r(), T(Ot, { key: 0 })),
2418
+ u("main", xo, [
2419
+ u("div", Eo, [
2420
+ b(_, null, {
2421
+ default: C(({ Component: w, route: k }) => [
2422
+ b(Ae, {
2423
+ name: String(k.meta.transition || "layout-page"),
2492
2424
  mode: "out-in"
2493
2425
  }, {
2494
- default: _(() => [
2495
- (l(), v("div", {
2496
- key: p(T),
2426
+ default: C(() => [
2427
+ (r(), g("div", {
2428
+ key: A(k),
2497
2429
  class: "layout-page-view"
2498
2430
  }, [
2499
- (l(), k(Se(C)))
2431
+ (r(), T(ie(w)))
2500
2432
  ]))
2501
2433
  ]),
2502
2434
  _: 2
@@ -2507,12 +2439,12 @@ const at = (a, e) => a.reduce(
2507
2439
  ])
2508
2440
  ])
2509
2441
  ]),
2510
- A(De, { name: "layout-overlay" }, {
2511
- default: _(() => [
2512
- g(n) && g(s) ? (l(), v("div", {
2442
+ b(Ae, { name: "layout-overlay" }, {
2443
+ default: C(() => [
2444
+ p(n) && p(a) ? (r(), g("div", {
2513
2445
  key: 0,
2514
2446
  class: "layout-shell__overlay",
2515
- onClick: c
2447
+ onClick: d
2516
2448
  })) : I("", !0)
2517
2449
  ]),
2518
2450
  _: 1
@@ -2520,19 +2452,19 @@ const at = (a, e) => a.reduce(
2520
2452
  ]);
2521
2453
  };
2522
2454
  }
2523
- }), ja = /* @__PURE__ */ B(Ka, [["__scopeId", "data-v-87720a5b"]]);
2455
+ }), Oo = /* @__PURE__ */ D(Mo, [["__scopeId", "data-v-87720a5b"]]);
2524
2456
  export {
2525
- ja as BaseLayout,
2526
- st as LanguageSelect,
2527
- za as LayoutBreadcrumb,
2528
- ot as ThemeToggle,
2529
- Za as TimezoneSelect,
2530
- Ke as UserAvatar,
2531
- ia as UserInfo,
2532
- me as i18n,
2533
- ce as messages,
2534
- nt as useApp,
2535
- z as useLayoutState,
2536
- Q as useSetting,
2537
- Ve as useTheme
2457
+ Oo as BaseLayout,
2458
+ Ye as LanguageSelect,
2459
+ Ko as LayoutBreadcrumb,
2460
+ qe as ThemeToggle,
2461
+ Jo as TimezoneSelect,
2462
+ we as UserAvatar,
2463
+ to as UserInfo,
2464
+ te as i18n,
2465
+ $ as messages,
2466
+ Ze as useApp,
2467
+ H as useLayoutState,
2468
+ J as useSetting,
2469
+ Je as useTheme
2538
2470
  };