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