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