@skyfox2000/webui 1.5.7 → 1.5.10
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/lib/assets/modules/{baseLayout-DfTxHOFc.js → baseLayout-BuQjrozB.js} +9 -9
- package/lib/assets/modules/{file-upload-DTOdV5vM.js → file-upload-DcusqXDb.js} +5 -5
- package/lib/assets/modules/{index-M1qERbea.js → index-BlQB5KSU.js} +2 -2
- package/lib/assets/modules/{index-BwMaOrJT.js → index-CW_ZCHWs.js} +1 -1
- package/lib/assets/modules/index-CekzHbWp.js +114 -0
- package/lib/assets/modules/{menuTabs-DWaBSRNr.js → menuTabs-BYSjomB7.js} +44 -36
- package/lib/assets/modules/{toolIcon-BYnHhAy-.js → toolIcon-D4vAp0qA.js} +1 -1
- package/lib/assets/modules/{upload-template-BKm9mFq8.js → upload-template-NU0Bpg4N.js} +2056 -2176
- package/lib/assets/modules/uploadList-ENSsTfpD.js +472 -0
- package/lib/const/options.d.ts +6 -20
- package/lib/const/stores.d.ts +11 -0
- package/lib/es/AceEditor/index.js +70 -70
- package/lib/es/BasicLayout/index.js +6 -6
- package/lib/es/Error403/index.js +1 -1
- package/lib/es/Error404/index.js +1 -1
- package/lib/es/ExcelForm/index.js +16 -16
- package/lib/es/MenuLayout/index.js +6 -6
- package/lib/es/TemplateFile/index.js +5 -5
- package/lib/es/UploadForm/index.js +5 -5
- package/lib/index.d.ts +2 -1
- package/lib/locales/default.d.ts +137 -115
- package/lib/utils/tools.d.ts +1 -0
- package/lib/webui.css +1 -1
- package/lib/webui.es.js +1692 -1547
- package/package.json +1 -1
- package/src/components/content/dialog/index.vue +1 -0
- package/src/components/content/form/formItem.vue +3 -2
- package/src/components/content/search/index.vue +1 -0
- package/src/components/content/search/searchItem.vue +3 -2
- package/src/components/form/aceEditor/index.vue +5 -3
- package/src/components/form/cascader/index.vue +5 -3
- package/src/components/form/checkbox/index.vue +1 -1
- package/src/components/form/datePicker/index.vue +2 -1
- package/src/components/form/input/index.vue +1 -1
- package/src/components/form/input/inputNumber.vue +3 -1
- package/src/components/form/input/inputPassword.vue +3 -1
- package/src/components/form/propEditor/index.vue +8 -3
- package/src/components/form/radio/index.vue +2 -1
- package/src/components/form/radio/radioStatus.vue +2 -1
- package/src/components/form/switch/index.vue +3 -1
- package/src/components/form/textarea/index.vue +1 -1
- package/src/components/form/timePicker/index.vue +4 -1
- package/src/components/form/treeSelect/index.vue +3 -1
- package/src/components/form/upload/imageList.vue +8 -6
- package/src/components/form/upload/uploadList.vue +6 -5
- package/src/components/layout/datetime/index.vue +15 -4
- package/src/components/layout/header/language.vue +2 -0
- package/src/const/options.ts +76 -52
- package/src/const/stores.ts +58 -0
- package/src/index.ts +2 -0
- package/src/locales/default.ts +145 -123
- package/src/locales/en-US.json +320 -0
- package/src/locales/index.ts +109 -39
- package/src/stores/hostInfo.ts +2 -19
- package/src/stores/userInfo.ts +2 -30
- package/src/utils/options.ts +2 -2
- package/src/utils/tools.ts +88 -83
- package/lib/assets/modules/index-BDoBUrYA.js +0 -114
- package/lib/assets/modules/uploadList-CHvr6Hp1.js +0 -472
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { defineComponent as _, onMounted as I, createBlock as s, openBlock as o, unref as e, withCtx as l, createCommentVNode as r, createVNode as p, createElementVNode as x, createElementBlock as y, toDisplayString as g, renderSlot as
|
|
2
|
-
import { Layout as i, LayoutSider as
|
|
3
|
-
import { a as b } from "./toolIcon-
|
|
4
|
-
import { I as C, _ as S, f as w, d as $, g as
|
|
5
|
-
import {
|
|
1
|
+
import { defineComponent as _, onMounted as I, createBlock as s, openBlock as o, unref as e, withCtx as l, createCommentVNode as r, createVNode as p, createElementVNode as x, createElementBlock as y, toDisplayString as g, renderSlot as k } from "vue";
|
|
2
|
+
import { Layout as i, LayoutSider as h } from "ant-design-vue";
|
|
3
|
+
import { a as b } from "./toolIcon-D4vAp0qA.js";
|
|
4
|
+
import { I as C, _ as S, f as w, d as $, g as N } from "./menuTabs-BYSjomB7.js";
|
|
5
|
+
import { ak as v, a as B, am as E } from "./upload-template-NU0Bpg4N.js";
|
|
6
6
|
import "@skyfox2000/microbase";
|
|
7
7
|
import "@skyfox2000/fapi";
|
|
8
8
|
import L from "vue-m-message";
|
|
@@ -18,12 +18,12 @@ const V = { class: "h-[40px] max-h-[40px] bg-[rgba(240,240,240,0.2)] flex flex-n
|
|
|
18
18
|
routes: {}
|
|
19
19
|
},
|
|
20
20
|
setup(m) {
|
|
21
|
-
const f = m, a =
|
|
21
|
+
const f = m, a = v(), t = B(), u = E();
|
|
22
22
|
return I(() => {
|
|
23
23
|
L.closeAll();
|
|
24
24
|
}), (d, c) => (o(), s(e(i), { class: "h-screen" }, {
|
|
25
25
|
default: l(() => [
|
|
26
|
-
e(t).fullscreen ? r("", !0) : (o(), s(e(
|
|
26
|
+
e(t).fullscreen ? r("", !0) : (o(), s(e(h), {
|
|
27
27
|
key: 0,
|
|
28
28
|
class: "overflow-auto h-screen left-0 top-0 bottom-0",
|
|
29
29
|
collapsed: e(t).menuCollapse,
|
|
@@ -64,8 +64,8 @@ const V = { class: "h-[40px] max-h-[40px] bg-[rgba(240,240,240,0.2)] flex flex-n
|
|
|
64
64
|
p(e(i), { class: "overflow-y-auto block" }, {
|
|
65
65
|
default: l(() => [
|
|
66
66
|
e(t).fullscreen ? r("", !0) : (o(), s($, { key: 0 })),
|
|
67
|
-
e(u).TabEnabled ? (o(), s(
|
|
68
|
-
|
|
67
|
+
e(u).TabEnabled ? (o(), s(N, { key: 1 })) : r("", !0),
|
|
68
|
+
k(d.$slots, "default")
|
|
69
69
|
]),
|
|
70
70
|
_: 3
|
|
71
71
|
})
|
|
@@ -4,10 +4,10 @@ var h = (o, r, a) => E(o, typeof r != "symbol" ? r + "" : r, a);
|
|
|
4
4
|
import { hostUrl as m } from "@skyfox2000/fapi";
|
|
5
5
|
import U from "dayjs";
|
|
6
6
|
import f from "vue-m-message";
|
|
7
|
-
import { $ as u,
|
|
7
|
+
import { $ as u, M as y, u as g } from "./upload-template-NU0Bpg4N.js";
|
|
8
8
|
import { isMicroApp as F } from "@skyfox2000/microbase";
|
|
9
9
|
var i = /* @__PURE__ */ ((o) => (o.Pending = "pending", o.Uploading = "uploading", o.Success = "success", o.Error = "error", o.Online = "online", o.Offline = "offline", o))(i || {});
|
|
10
|
-
class
|
|
10
|
+
class M {
|
|
11
11
|
/**
|
|
12
12
|
* 连接路径参数,已判断 undefined 或 null 值
|
|
13
13
|
* @param args 路径参数数组
|
|
@@ -190,7 +190,7 @@ class S {
|
|
|
190
190
|
this.abortController && this.abortController.abort();
|
|
191
191
|
}
|
|
192
192
|
}
|
|
193
|
-
const
|
|
193
|
+
const x = async (o, r) => {
|
|
194
194
|
const a = new S(o, 1), l = [r];
|
|
195
195
|
await a.uploadFiles(
|
|
196
196
|
l,
|
|
@@ -206,6 +206,6 @@ const M = async (o, r) => {
|
|
|
206
206
|
export {
|
|
207
207
|
S as A,
|
|
208
208
|
i as U,
|
|
209
|
-
|
|
210
|
-
|
|
209
|
+
x as f,
|
|
210
|
+
M as p
|
|
211
211
|
};
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import V from "async-validator";
|
|
2
2
|
import { httpPost as $, ResStatus as M } from "@skyfox2000/fapi";
|
|
3
|
-
import { i as T, $ as m,
|
|
3
|
+
import { i as T, $ as m, au as U, L as z, u as B } from "./upload-template-NU0Bpg4N.js";
|
|
4
4
|
import E from "vue-m-message";
|
|
5
5
|
import { defineComponent as S, useAttrs as A, createElementBlock as O, openBlock as v, createVNode as N, unref as k, mergeProps as D, computed as x, createBlock as _, withCtx as L, normalizeStyle as P } from "vue";
|
|
6
6
|
import { Spin as K, Alert as W } from "ant-design-vue";
|
|
7
|
-
import { _ as q } from "./toolIcon-
|
|
7
|
+
import { _ as q } from "./toolIcon-D4vAp0qA.js";
|
|
8
8
|
const j = (i) => {
|
|
9
9
|
const e = i.split(`
|
|
10
10
|
`).filter((l) => l.trim() !== "");
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent as d, useAttrs as f, createElementBlock as u, openBlock as x, createVNode as e, withCtx as n, unref as o, mergeProps as r, renderSlot as p } from "vue";
|
|
2
2
|
import { Button as _ } from "ant-design-vue";
|
|
3
|
-
import { a as P, _ as k } from "./toolIcon-
|
|
3
|
+
import { a as P, _ as k } from "./toolIcon-D4vAp0qA.js";
|
|
4
4
|
const C = /* @__PURE__ */ d({
|
|
5
5
|
inheritAttrs: !1,
|
|
6
6
|
__name: "index",
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { defineComponent as B, provide as N, ref as A, watch as p, onMounted as _, createBlock as n, openBlock as r, unref as a, withCtx as s, createElementVNode as V, renderSlot as C, createVNode as $, createCommentVNode as d, createTextVNode as m, toDisplayString as u } from "vue";
|
|
2
|
+
import { _ as v } from "./index-CW_ZCHWs.js";
|
|
3
|
+
import { Modal as D, Space as E } from "ant-design-vue";
|
|
4
|
+
import "@skyfox2000/fapi";
|
|
5
|
+
import { P as M, d as P, $ as f, o as K, b as U } from "./upload-template-NU0Bpg4N.js";
|
|
6
|
+
import "vue-m-message";
|
|
7
|
+
import "@skyfox2000/microbase";
|
|
8
|
+
import "async-validator";
|
|
9
|
+
import "dayjs";
|
|
10
|
+
import "vue-draggable-next";
|
|
11
|
+
const j = { class: "overflow-y-auto w-full h-full" }, W = /* @__PURE__ */ B({
|
|
12
|
+
__name: "index",
|
|
13
|
+
props: {
|
|
14
|
+
saveText: {},
|
|
15
|
+
saveAsText: {},
|
|
16
|
+
cancelText: {},
|
|
17
|
+
editorCtrl: {},
|
|
18
|
+
dialogSave: { type: Function },
|
|
19
|
+
dialogSaveAs: { type: Function },
|
|
20
|
+
width: {},
|
|
21
|
+
full: { type: Boolean },
|
|
22
|
+
open: { type: Boolean }
|
|
23
|
+
},
|
|
24
|
+
emits: ["update:open"],
|
|
25
|
+
setup(T, { emit: b }) {
|
|
26
|
+
const l = T, e = l.editorCtrl;
|
|
27
|
+
N(M.EditorControl, e);
|
|
28
|
+
const t = A(l.open ?? !1), h = b, k = A(l.width ?? 430);
|
|
29
|
+
p(
|
|
30
|
+
() => e == null ? void 0 : e.visible.value,
|
|
31
|
+
(o) => {
|
|
32
|
+
t.value = o ?? !1;
|
|
33
|
+
}
|
|
34
|
+
), p(
|
|
35
|
+
() => l.open,
|
|
36
|
+
(o) => {
|
|
37
|
+
t.value = o;
|
|
38
|
+
}
|
|
39
|
+
), p(
|
|
40
|
+
() => t.value,
|
|
41
|
+
(o) => {
|
|
42
|
+
h("update:open", o), o || c();
|
|
43
|
+
}
|
|
44
|
+
), _(() => {
|
|
45
|
+
t.value = (e == null ? void 0 : e.visible.value) ?? !1;
|
|
46
|
+
});
|
|
47
|
+
const x = () => {
|
|
48
|
+
l.dialogSave ? l.dialogSave() : e && K(e);
|
|
49
|
+
}, F = () => {
|
|
50
|
+
l.dialogSaveAs ? l.dialogSaveAs() : e && U(e);
|
|
51
|
+
}, c = () => {
|
|
52
|
+
e ? P(e) : t.value = !1;
|
|
53
|
+
};
|
|
54
|
+
return (o, g) => (r(), n(a(D), {
|
|
55
|
+
open: t.value,
|
|
56
|
+
"onUpdate:open": g[0] || (g[0] = (i) => t.value = i),
|
|
57
|
+
wrapClassName: "modal mx-auto min-w-[430px] " + (o.full ? "full-modal w-full" : ""),
|
|
58
|
+
width: k.value
|
|
59
|
+
}, {
|
|
60
|
+
footer: s(() => [
|
|
61
|
+
C(o.$slots, "footer", {}, () => [
|
|
62
|
+
$(a(E), null, {
|
|
63
|
+
default: s(() => {
|
|
64
|
+
var i, w, S, y;
|
|
65
|
+
return [
|
|
66
|
+
o.cancelText !== "" ? (r(), n(a(v), {
|
|
67
|
+
key: 0,
|
|
68
|
+
onClick: c
|
|
69
|
+
}, {
|
|
70
|
+
default: s(() => [
|
|
71
|
+
m(u(o.cancelText ?? a(f)("webui.common.cancel")), 1)
|
|
72
|
+
]),
|
|
73
|
+
_: 1
|
|
74
|
+
})) : d("", !0),
|
|
75
|
+
o.saveAsText !== "" && ((i = a(e)) == null ? void 0 : i.saveAsBtnVisible) !== !1 ? (r(), n(a(v), {
|
|
76
|
+
key: 1,
|
|
77
|
+
onClick: F,
|
|
78
|
+
type: "primary",
|
|
79
|
+
loading: (w = a(e)) == null ? void 0 : w.isFormSaving.value
|
|
80
|
+
}, {
|
|
81
|
+
default: s(() => [
|
|
82
|
+
m(u(o.saveAsText ?? a(f)("webui.common.saveAs")), 1)
|
|
83
|
+
]),
|
|
84
|
+
_: 1
|
|
85
|
+
}, 8, ["loading"])) : d("", !0),
|
|
86
|
+
o.saveText !== "" && ((S = a(e)) == null ? void 0 : S.saveBtnVisible) !== !1 ? (r(), n(a(v), {
|
|
87
|
+
key: 2,
|
|
88
|
+
onClick: x,
|
|
89
|
+
type: "primary",
|
|
90
|
+
loading: (y = a(e)) == null ? void 0 : y.isFormSaving.value
|
|
91
|
+
}, {
|
|
92
|
+
default: s(() => [
|
|
93
|
+
m(u(o.saveText ?? a(f)("webui.common.save")), 1)
|
|
94
|
+
]),
|
|
95
|
+
_: 1
|
|
96
|
+
}, 8, ["loading"])) : d("", !0)
|
|
97
|
+
];
|
|
98
|
+
}),
|
|
99
|
+
_: 1
|
|
100
|
+
})
|
|
101
|
+
])
|
|
102
|
+
]),
|
|
103
|
+
default: s(() => [
|
|
104
|
+
V("div", j, [
|
|
105
|
+
C(o.$slots, "default")
|
|
106
|
+
])
|
|
107
|
+
]),
|
|
108
|
+
_: 3
|
|
109
|
+
}, 8, ["open", "wrapClassName", "width"]));
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
export {
|
|
113
|
+
W as _
|
|
114
|
+
};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { defineComponent as _, createBlock as y, createCommentVNode as b, openBlock as l, unref as t, mergeProps as $, useAttrs as
|
|
2
|
-
import { a as A, _ as k } from "./toolIcon-
|
|
3
|
-
import { c as D,
|
|
1
|
+
import { defineComponent as _, createBlock as y, createCommentVNode as b, openBlock as l, unref as t, mergeProps as $, useAttrs as Y, computed as j, ref as v, watch as w, withCtx as m, createElementBlock as g, normalizeStyle as T, createElementVNode as f, inject as Z, onMounted as P, createVNode as r, toDisplayString as C, Fragment as L, renderList as U, createTextVNode as G, reactive as Q, nextTick as X, withModifiers as ee } from "vue";
|
|
2
|
+
import { a as A, _ as k } from "./toolIcon-D4vAp0qA.js";
|
|
3
|
+
import { c as D, Y as E, am as M, a1 as K, a0 as R, as as F, u as H, $ as S, M as te, ar as V, at as ne, a as q, Z as oe, r as J, ak as B } from "./upload-template-NU0Bpg4N.js";
|
|
4
4
|
import { _ as se } from "./_plugin-vue_export-helper-CHgC5LLL.js";
|
|
5
|
-
import { theme as
|
|
5
|
+
import { theme as O, Breadcrumb as ie, Modal as ae, Flex as ce, Dropdown as le, Menu as W, MenuItem as re, LayoutHeader as ue, Space as pe, Tabs as de, TabPane as me } from "ant-design-vue";
|
|
6
6
|
import { isMicroApp as fe } from "@skyfox2000/microbase";
|
|
7
7
|
import { SERVER_HOST as N } from "@skyfox2000/fapi";
|
|
8
8
|
import "vue-m-message";
|
|
@@ -272,13 +272,13 @@ const ge = /* @__PURE__ */ _({
|
|
|
272
272
|
"update:iconIndex"
|
|
273
273
|
],
|
|
274
274
|
setup(c, { emit: o }) {
|
|
275
|
-
const s =
|
|
275
|
+
const s = Y(), e = c, u = o, i = j(() => {
|
|
276
276
|
if (Array.isArray(e.size)) return e.size;
|
|
277
277
|
{
|
|
278
278
|
let a = e.size;
|
|
279
279
|
return [a, a];
|
|
280
280
|
}
|
|
281
|
-
}), n =
|
|
281
|
+
}), n = v(e.icon), p = v(e.iconIndex);
|
|
282
282
|
w(
|
|
283
283
|
() => e.icon,
|
|
284
284
|
(a) => {
|
|
@@ -301,15 +301,15 @@ const ge = /* @__PURE__ */ _({
|
|
|
301
301
|
e.icons.length > 0 ? (d.value = d.value >= e.icons.length ? 0 : d.value, n.value = e.icons[p.value]) : n.value = e.icon;
|
|
302
302
|
const I = (a) => {
|
|
303
303
|
if (a.stopPropagation(), e.clickEvent) {
|
|
304
|
-
const
|
|
305
|
-
|
|
304
|
+
const h = e.clickEvent.split("#");
|
|
305
|
+
h.length === 2 && Z("$" + h[0]).$emit(h[1], e.data);
|
|
306
306
|
}
|
|
307
307
|
e.autoSwitch && e.icons.length > 0 && (d.value = (d.value + 1) % e.icons.length, n.value = e.icons[p.value]), u("click");
|
|
308
308
|
}, x = () => {
|
|
309
309
|
let a = "";
|
|
310
310
|
return e.spin && (a += "rotate"), e.flip && (a += " flip"), a;
|
|
311
311
|
};
|
|
312
|
-
return (a,
|
|
312
|
+
return (a, h) => (l(), y(A, {
|
|
313
313
|
title: e.tiptext,
|
|
314
314
|
disabled: e.tiptext ? void 0 : "disabled",
|
|
315
315
|
color: c.tipcolor,
|
|
@@ -392,13 +392,13 @@ const ge = /* @__PURE__ */ _({
|
|
|
392
392
|
class: ["align-middle"]
|
|
393
393
|
}, u.$attrs), null, 16, ["icon", "icons"])) : b("", !0);
|
|
394
394
|
}
|
|
395
|
-
}),
|
|
395
|
+
}), he = { class: "text-xs leading-[3]" }, ve = {
|
|
396
396
|
key: 0,
|
|
397
397
|
class: "leading-[2.5] mx-[6px] text-[rgba(0,0,0,0.45)]"
|
|
398
398
|
}, be = /* @__PURE__ */ _({
|
|
399
399
|
__name: "index",
|
|
400
400
|
setup(c) {
|
|
401
|
-
const { useToken: o } =
|
|
401
|
+
const { useToken: o } = O, { token: s } = o(), e = M();
|
|
402
402
|
return w(
|
|
403
403
|
() => e.TabActive,
|
|
404
404
|
() => K()
|
|
@@ -420,12 +420,12 @@ const ge = /* @__PURE__ */ _({
|
|
|
420
420
|
separator: ""
|
|
421
421
|
}, {
|
|
422
422
|
itemRender: m(({ route: n }) => [
|
|
423
|
-
f("span",
|
|
423
|
+
f("span", he, C(n.breadcrumbName), 1),
|
|
424
424
|
r(t(k), {
|
|
425
425
|
icon: n.icon,
|
|
426
426
|
fontsize: "15px"
|
|
427
427
|
}, null, 8, ["icon"]),
|
|
428
|
-
n.index < t(R).length - 1 ? (l(), g("span",
|
|
428
|
+
n.index < t(R).length - 1 ? (l(), g("span", ve, ">")) : b("", !0)
|
|
429
429
|
]),
|
|
430
430
|
_: 1
|
|
431
431
|
}, 8, ["routes"])
|
|
@@ -434,19 +434,27 @@ const ge = /* @__PURE__ */ _({
|
|
|
434
434
|
}), ke = { class: "font-['Courier'] text-[#666]" }, Se = /* @__PURE__ */ _({
|
|
435
435
|
__name: "index",
|
|
436
436
|
setup(c) {
|
|
437
|
-
const o =
|
|
437
|
+
const o = v("");
|
|
438
438
|
return P(() => {
|
|
439
439
|
setInterval(() => {
|
|
440
|
-
const s = /* @__PURE__ */ new Date(), e =
|
|
441
|
-
|
|
440
|
+
const s = /* @__PURE__ */ new Date(), e = F(), u = {
|
|
441
|
+
year: "numeric",
|
|
442
|
+
month: "2-digit",
|
|
443
|
+
day: "2-digit",
|
|
444
|
+
hour: "2-digit",
|
|
445
|
+
minute: "2-digit",
|
|
446
|
+
second: "2-digit",
|
|
447
|
+
hour12: !1
|
|
448
|
+
};
|
|
449
|
+
o.value = s.toLocaleString(e, u);
|
|
442
450
|
}, 1e3);
|
|
443
451
|
}), (s, e) => (l(), g("div", ke, C(o.value), 1));
|
|
444
452
|
}
|
|
445
453
|
}), we = { style: { margin: "0 0 0 20px", "font-weight": "400", "font-size": "16px" } }, Ce = /* @__PURE__ */ _({
|
|
446
454
|
__name: "headerExits",
|
|
447
455
|
setup(c) {
|
|
448
|
-
const o =
|
|
449
|
-
s.value = !1, fe() ?
|
|
456
|
+
const o = H(), s = v(!1), e = () => {
|
|
457
|
+
s.value = !1, fe() ? te.userLogout() : o.logout(!0);
|
|
450
458
|
};
|
|
451
459
|
return (u, i) => (l(), g(L, null, [
|
|
452
460
|
r(t(A), {
|
|
@@ -496,7 +504,7 @@ const ge = /* @__PURE__ */ _({
|
|
|
496
504
|
}), Ie = { class: "flex items-center flex-nowrap" }, $e = { class: "mr-2 text-sm whitespace-nowrap" }, Te = /* @__PURE__ */ _({
|
|
497
505
|
__name: "user",
|
|
498
506
|
setup(c) {
|
|
499
|
-
const o =
|
|
507
|
+
const o = H().userInfo;
|
|
500
508
|
return (s, e) => (l(), y(t(A), {
|
|
501
509
|
title: t(o).Name
|
|
502
510
|
}, {
|
|
@@ -512,9 +520,9 @@ const ge = /* @__PURE__ */ _({
|
|
|
512
520
|
}), Ae = { class: "flex items-center cursor-pointer" }, ze = /* @__PURE__ */ _({
|
|
513
521
|
__name: "language",
|
|
514
522
|
setup(c) {
|
|
515
|
-
const o =
|
|
523
|
+
const o = V(), s = v(F()), e = o.length > 0, u = async (i) => {
|
|
516
524
|
try {
|
|
517
|
-
await ne(i), s.value = i;
|
|
525
|
+
await ne(i), s.value = i, window.location.reload();
|
|
518
526
|
} catch (n) {
|
|
519
527
|
console.error("Failed to change language:", n);
|
|
520
528
|
}
|
|
@@ -524,7 +532,7 @@ const ge = /* @__PURE__ */ _({
|
|
|
524
532
|
placement: "bottomRight"
|
|
525
533
|
}, {
|
|
526
534
|
overlay: m(() => [
|
|
527
|
-
r(t(
|
|
535
|
+
r(t(W), null, {
|
|
528
536
|
default: m(() => [
|
|
529
537
|
(l(!0), g(L, null, U(t(o), (p) => (l(), y(t(re), {
|
|
530
538
|
key: p.key,
|
|
@@ -556,9 +564,9 @@ const ge = /* @__PURE__ */ _({
|
|
|
556
564
|
}, We = /* @__PURE__ */ _({
|
|
557
565
|
__name: "index",
|
|
558
566
|
setup(c) {
|
|
559
|
-
const { useToken: o } =
|
|
567
|
+
const { useToken: o } = O, { token: s } = o(), e = q(), u = () => {
|
|
560
568
|
e.setMenuCollapse(!e.menuCollapse);
|
|
561
|
-
}, i =
|
|
569
|
+
}, i = V().length > 0;
|
|
562
570
|
return (n, p) => (l(), y(t(ue), {
|
|
563
571
|
class: "w-full relative z-[1] shadow-[0_-3px_6px_#000] py-0 flex items-center justify-between",
|
|
564
572
|
style: T({
|
|
@@ -608,9 +616,9 @@ const ge = /* @__PURE__ */ _({
|
|
|
608
616
|
routes: {}
|
|
609
617
|
},
|
|
610
618
|
setup(c) {
|
|
611
|
-
const o = c, s =
|
|
619
|
+
const o = c, s = v([]), e = v([]), u = Q([]), i = M(), n = (x) => {
|
|
612
620
|
B().push(x.key.toString());
|
|
613
|
-
}, p =
|
|
621
|
+
}, p = q(), d = v([]), I = () => {
|
|
614
622
|
let x = i.TabActive;
|
|
615
623
|
const a = x.split("/");
|
|
616
624
|
a.pop(), s.value = [a.join("/")], p.menuCollapse || (d.value = [a.join("/")]), e.value = [x];
|
|
@@ -628,24 +636,24 @@ const ge = /* @__PURE__ */ _({
|
|
|
628
636
|
I();
|
|
629
637
|
}
|
|
630
638
|
), P(() => {
|
|
631
|
-
oe(o.routes, u, ye, { class: "!w-5 !h-5" }), i.setTabActive(
|
|
632
|
-
}), (x, a) => (l(), y(t(
|
|
639
|
+
oe(o.routes, u, ye, { class: "!w-5 !h-5" }), i.setTabActive(J.currentRoute.value.path), I();
|
|
640
|
+
}), (x, a) => (l(), y(t(W), {
|
|
633
641
|
openKeys: d.value,
|
|
634
|
-
"onUpdate:openKeys": a[0] || (a[0] = (
|
|
642
|
+
"onUpdate:openKeys": a[0] || (a[0] = (h) => d.value = h),
|
|
635
643
|
selectedKeys: e.value,
|
|
636
|
-
"onUpdate:selectedKeys": a[1] || (a[1] = (
|
|
644
|
+
"onUpdate:selectedKeys": a[1] || (a[1] = (h) => e.value = h),
|
|
637
645
|
mode: "inline",
|
|
638
646
|
theme: "dark",
|
|
639
647
|
items: u,
|
|
640
648
|
onClick: n
|
|
641
649
|
}, null, 8, ["openKeys", "selectedKeys", "items"]));
|
|
642
650
|
}
|
|
643
|
-
}), Pe = { class: "flex items-center" }, Le = { class: "flex" },
|
|
651
|
+
}), Pe = { class: "flex items-center" }, Le = { class: "flex" }, Me = ["onClick"], Ze = /* @__PURE__ */ _({
|
|
644
652
|
__name: "menuTabs",
|
|
645
653
|
setup(c) {
|
|
646
|
-
const { useToken: o } =
|
|
654
|
+
const { useToken: o } = O, { token: s } = o(), e = M();
|
|
647
655
|
w(
|
|
648
|
-
() =>
|
|
656
|
+
() => J.currentRoute.value.path,
|
|
649
657
|
(n) => {
|
|
650
658
|
n !== e.TabActive && e.setTabActive(n);
|
|
651
659
|
}
|
|
@@ -681,7 +689,7 @@ const ge = /* @__PURE__ */ _({
|
|
|
681
689
|
t(e).TabPanes.length > 1 && d.closable ? (l(), g("div", {
|
|
682
690
|
key: 0,
|
|
683
691
|
class: "inline-block mx-auto relative flex items-center",
|
|
684
|
-
onClick:
|
|
692
|
+
onClick: ee((I) => i(d.key), ["stop"])
|
|
685
693
|
}, [
|
|
686
694
|
r(t(k), {
|
|
687
695
|
icon: "icon-new",
|
|
@@ -690,7 +698,7 @@ const ge = /* @__PURE__ */ _({
|
|
|
690
698
|
class: "w-[15px] h-[15px] ml-1",
|
|
691
699
|
tipcolor: t(s).colorBgSpotlight
|
|
692
700
|
}, null, 8, ["tipcolor"])
|
|
693
|
-
], 8,
|
|
701
|
+
], 8, Me)) : b("", !0)
|
|
694
702
|
]),
|
|
695
703
|
_: 2
|
|
696
704
|
}, 1032, ["title"])
|
|
@@ -713,5 +721,5 @@ export {
|
|
|
713
721
|
We as d,
|
|
714
722
|
Ce as e,
|
|
715
723
|
Ye as f,
|
|
716
|
-
|
|
724
|
+
Ze as g
|
|
717
725
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { defineComponent as i, createBlock as s, openBlock as l, unref as a, withCtx as p, renderSlot as f, createCommentVNode as u, mergeProps as d } from "vue";
|
|
2
2
|
import { Tooltip as I } from "ant-design-vue";
|
|
3
3
|
import { SERVER_HOST as r } from "@skyfox2000/fapi";
|
|
4
|
-
import { c as S } from "./upload-template-
|
|
4
|
+
import { c as S } from "./upload-template-NU0Bpg4N.js";
|
|
5
5
|
const T = /* @__PURE__ */ i({
|
|
6
6
|
__name: "index",
|
|
7
7
|
props: {
|