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