@skyfox2000/webui 1.5.1 → 1.5.3
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-B8Oyfzfi.js → baseLayout-LU1ysAJM.js} +9 -9
- package/lib/assets/modules/{file-upload-BFUScC4k.js → file-upload-BvIYPDBD.js} +1 -1
- package/lib/assets/modules/{index-crPOh8wI.js → index-Bi3hR8Gf.js} +2 -2
- package/lib/assets/modules/{index-bx6gDQTB.js → index-C6RrxZBR.js} +1 -1
- package/lib/assets/modules/{index-BiRM1pnL.js → index-CHG5bbZG.js} +2 -2
- package/lib/assets/modules/{menuTabs-BnjAvzNj.js → menuTabs-Bk8A-zzL.js} +222 -173
- package/lib/assets/modules/{toolIcon-CIuou75Q.js → toolIcon-ADz-Bt4_.js} +1 -1
- package/lib/assets/modules/{upload-template-Bs_uvXeO.js → upload-template-mzLL4UUU.js} +108 -117
- package/lib/assets/modules/{uploadList-C6vb1JKs.js → uploadList-DRGJEXDH.js} +4 -4
- package/lib/components/layout/header/language.vue.d.ts +3 -0
- package/lib/es/AceEditor/index.js +3 -3
- package/lib/es/BasicLayout/index.js +4 -4
- package/lib/es/Error403/index.js +1 -1
- package/lib/es/Error404/index.js +1 -1
- package/lib/es/ExcelForm/index.js +5 -5
- package/lib/es/MenuLayout/index.js +5 -5
- package/lib/es/TemplateFile/index.js +4 -4
- package/lib/es/UploadForm/index.js +4 -4
- package/lib/index.d.ts +1 -3
- package/lib/locales/index.d.ts +1 -2
- package/lib/webui.css +1 -1
- package/lib/webui.es.js +13 -13
- package/package.json +1 -1
- package/src/components/layout/header/index.vue +9 -0
- package/src/components/layout/header/language.vue +39 -0
- package/src/index.ts +1 -4
- package/src/locales/index.ts +17 -26
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import { a as A, _ as
|
|
3
|
-
import { c as
|
|
4
|
-
import { _ as
|
|
5
|
-
import { theme as
|
|
6
|
-
import { isMicroApp as
|
|
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 J, onMounted as P, createVNode as r, toDisplayString as C, Fragment as L, renderList as U, createTextVNode as X, reactive as Z, nextTick as G, withModifiers as Q } from "vue";
|
|
2
|
+
import { a as A, _ as k } from "./toolIcon-ADz-Bt4_.js";
|
|
3
|
+
import { c as D, W as E, aj as M, Z as K, Y as R, u as F, ao as S, M as ee, ap as H, aq as te, ar as ne, a as V, X as oe, r as q, ah as B } from "./upload-template-mzLL4UUU.js";
|
|
4
|
+
import { _ as se } from "./_plugin-vue_export-helper-CHgC5LLL.js";
|
|
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
|
+
import { isMicroApp as fe } from "@skyfox2000/microbase";
|
|
7
7
|
import { SERVER_HOST as N } from "@skyfox2000/fapi";
|
|
8
8
|
import "vue-m-message";
|
|
9
9
|
import "async-validator";
|
|
10
10
|
import "dayjs";
|
|
11
11
|
import "vue-draggable-next";
|
|
12
|
-
const
|
|
12
|
+
const ge = /* @__PURE__ */ _({
|
|
13
13
|
__name: "appicon",
|
|
14
14
|
props: {
|
|
15
15
|
icon: {
|
|
@@ -17,17 +17,17 @@ const re = /* @__PURE__ */ x({
|
|
|
17
17
|
}
|
|
18
18
|
},
|
|
19
19
|
setup(c) {
|
|
20
|
-
const
|
|
20
|
+
const o = c, e = D({
|
|
21
21
|
iconUrl: `${N.APP_ICONS}`,
|
|
22
|
-
icon:
|
|
22
|
+
icon: o.icon
|
|
23
23
|
});
|
|
24
|
-
return (
|
|
24
|
+
return (u, i) => c.icon ? (l(), y(t(e), $({
|
|
25
25
|
key: 0,
|
|
26
26
|
icon: c.icon,
|
|
27
27
|
class: ["text-2xl", "align-middle", "w-6", "h-6"]
|
|
28
|
-
},
|
|
28
|
+
}, u.$attrs), null, 16, ["icon"])) : b("", !0);
|
|
29
29
|
}
|
|
30
|
-
}),
|
|
30
|
+
}), _e = ["xlink:href"], xe = /* @__PURE__ */ _({
|
|
31
31
|
inheritAttrs: !1,
|
|
32
32
|
__name: "index",
|
|
33
33
|
props: {
|
|
@@ -271,64 +271,64 @@ const re = /* @__PURE__ */ x({
|
|
|
271
271
|
*/
|
|
272
272
|
"update:iconIndex"
|
|
273
273
|
],
|
|
274
|
-
setup(c, { emit:
|
|
275
|
-
const
|
|
274
|
+
setup(c, { emit: o }) {
|
|
275
|
+
const s = Y(), e = c, u = o, i = j(() => {
|
|
276
276
|
if (Array.isArray(e.size)) return e.size;
|
|
277
277
|
{
|
|
278
|
-
let
|
|
279
|
-
return [
|
|
278
|
+
let a = e.size;
|
|
279
|
+
return [a, a];
|
|
280
280
|
}
|
|
281
|
-
}), n = v(e.icon),
|
|
282
|
-
|
|
281
|
+
}), n = v(e.icon), p = v(e.iconIndex);
|
|
282
|
+
w(
|
|
283
283
|
() => e.icon,
|
|
284
|
-
(
|
|
285
|
-
n.value =
|
|
284
|
+
(a) => {
|
|
285
|
+
n.value = a;
|
|
286
286
|
}
|
|
287
|
-
),
|
|
287
|
+
), w(
|
|
288
288
|
() => e.iconIndex,
|
|
289
|
-
(
|
|
290
|
-
|
|
289
|
+
(a) => {
|
|
290
|
+
p.value = a, n.value = e.icons[a];
|
|
291
291
|
}
|
|
292
292
|
);
|
|
293
|
-
const
|
|
293
|
+
const d = j({
|
|
294
294
|
get() {
|
|
295
|
-
return
|
|
295
|
+
return p.value;
|
|
296
296
|
},
|
|
297
|
-
set(
|
|
298
|
-
|
|
297
|
+
set(a) {
|
|
298
|
+
p.value = a, u("update:iconIndex", p.value);
|
|
299
299
|
}
|
|
300
300
|
});
|
|
301
|
-
e.icons.length > 0 ? (
|
|
302
|
-
const I = (
|
|
303
|
-
if (
|
|
304
|
-
const
|
|
305
|
-
|
|
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
|
+
const I = (a) => {
|
|
303
|
+
if (a.stopPropagation(), e.clickEvent) {
|
|
304
|
+
const h = e.clickEvent.split("#");
|
|
305
|
+
h.length === 2 && J("$" + h[0]).$emit(h[1], e.data);
|
|
306
306
|
}
|
|
307
|
-
e.autoSwitch && e.icons.length > 0 && (
|
|
308
|
-
},
|
|
309
|
-
let
|
|
310
|
-
return e.spin && (
|
|
307
|
+
e.autoSwitch && e.icons.length > 0 && (d.value = (d.value + 1) % e.icons.length, n.value = e.icons[p.value]), u("click");
|
|
308
|
+
}, x = () => {
|
|
309
|
+
let a = "";
|
|
310
|
+
return e.spin && (a += "rotate"), e.flip && (a += " flip"), a;
|
|
311
311
|
};
|
|
312
|
-
return (
|
|
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,
|
|
316
316
|
placement: c.placement,
|
|
317
317
|
size: c.tipsize
|
|
318
318
|
}, {
|
|
319
|
-
default:
|
|
319
|
+
default: m(() => {
|
|
320
320
|
var z;
|
|
321
321
|
return [
|
|
322
|
-
n.value ? (
|
|
322
|
+
n.value ? (l(), g("div", {
|
|
323
323
|
key: 0,
|
|
324
324
|
class: "re-icon-container",
|
|
325
325
|
style: T({
|
|
326
|
-
width:
|
|
327
|
-
height:
|
|
326
|
+
width: i.value[0].toString(),
|
|
327
|
+
height: i.value[1].toString()
|
|
328
328
|
})
|
|
329
329
|
}, [
|
|
330
|
-
(z = n.value) != null && z.startsWith("sym-") ? (
|
|
331
|
-
class: ["re-icon symbol", [e.clickable ? "clickable" : "",
|
|
330
|
+
(z = n.value) != null && z.startsWith("sym-") ? (l(), g("svg", $({ key: 1 }, t(s), {
|
|
331
|
+
class: ["re-icon symbol", [e.clickable ? "clickable" : "", x(), e.className]],
|
|
332
332
|
"aria-hidden": "true",
|
|
333
333
|
style: {
|
|
334
334
|
top: e.position ? e.position[1] : 0,
|
|
@@ -339,11 +339,11 @@ const re = /* @__PURE__ */ x({
|
|
|
339
339
|
color: e.color
|
|
340
340
|
}
|
|
341
341
|
}), [
|
|
342
|
-
|
|
342
|
+
f("use", {
|
|
343
343
|
"xlink:href": "#icon-" + n.value.replace("sym-", "")
|
|
344
|
-
}, null, 8,
|
|
345
|
-
], 16)) : (
|
|
346
|
-
class: ["re-icon iconfont fontclass", [e.clickable ? "clickable" : "", "icon-" + n.value,
|
|
344
|
+
}, null, 8, _e)
|
|
345
|
+
], 16)) : (l(), g("i", $({ key: 0 }, t(s), {
|
|
346
|
+
class: ["re-icon iconfont fontclass", [e.clickable ? "clickable" : "", "icon-" + n.value, x(), e.className]],
|
|
347
347
|
style: {
|
|
348
348
|
top: e.position ? e.position[1] : 1,
|
|
349
349
|
left: e.position ? e.position[0] : 0,
|
|
@@ -355,13 +355,13 @@ const re = /* @__PURE__ */ x({
|
|
|
355
355
|
"aria-hidden": "true",
|
|
356
356
|
onClick: I
|
|
357
357
|
}), null, 16))
|
|
358
|
-
], 4)) :
|
|
358
|
+
], 4)) : b("", !0)
|
|
359
359
|
];
|
|
360
360
|
}),
|
|
361
361
|
_: 1
|
|
362
362
|
}, 8, ["title", "disabled", "color", "placement", "size"]));
|
|
363
363
|
}
|
|
364
|
-
}),
|
|
364
|
+
}), We = /* @__PURE__ */ se(xe, [["__scopeId", "data-v-0146f00c"]]), ye = /* @__PURE__ */ _({
|
|
365
365
|
__name: "projectIcon",
|
|
366
366
|
props: {
|
|
367
367
|
icon: {
|
|
@@ -379,112 +379,112 @@ const re = /* @__PURE__ */ x({
|
|
|
379
379
|
}
|
|
380
380
|
},
|
|
381
381
|
setup(c) {
|
|
382
|
-
const
|
|
383
|
-
iconUrl: `${
|
|
384
|
-
monoColor:
|
|
385
|
-
icon:
|
|
386
|
-
icons:
|
|
382
|
+
const o = c, e = D({
|
|
383
|
+
iconUrl: `${o.iconUrl ?? N.PROJECT_ICONS ?? N.TOOL_ICONS}`,
|
|
384
|
+
monoColor: o.monoColor,
|
|
385
|
+
icon: o.icon,
|
|
386
|
+
icons: o.icons
|
|
387
387
|
});
|
|
388
|
-
return (
|
|
388
|
+
return (u, i) => c.icon || c.icons ? (l(), y(t(e), $({
|
|
389
389
|
key: 0,
|
|
390
390
|
icon: c.icon,
|
|
391
391
|
icons: c.icons,
|
|
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:
|
|
402
|
-
return
|
|
401
|
+
const { useToken: o } = O, { token: s } = o(), e = M();
|
|
402
|
+
return w(
|
|
403
403
|
() => e.TabActive,
|
|
404
404
|
() => K()
|
|
405
405
|
), P(() => {
|
|
406
406
|
K();
|
|
407
|
-
}), (
|
|
407
|
+
}), (u, i) => (l(), g("div", {
|
|
408
408
|
class: "ml-5 h-fit p-0 flex items-center justify-between",
|
|
409
409
|
style: T({
|
|
410
|
-
backgroundColor: t(
|
|
410
|
+
backgroundColor: t(s).colorBgContainer
|
|
411
411
|
})
|
|
412
412
|
}, [
|
|
413
|
-
|
|
413
|
+
r(t(k), {
|
|
414
414
|
icon: "icon-home",
|
|
415
415
|
class: "w-[15px] h-[15px]"
|
|
416
416
|
}),
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
routes: t(
|
|
417
|
+
i[0] || (i[0] = f("span", { class: "leading-[2.5] mx-[6px] text-[rgba(0,0,0,0.45)]" }, ">", -1)),
|
|
418
|
+
r(t(ie), {
|
|
419
|
+
routes: t(R),
|
|
420
420
|
separator: ""
|
|
421
421
|
}, {
|
|
422
|
-
itemRender:
|
|
423
|
-
|
|
424
|
-
|
|
422
|
+
itemRender: m(({ route: n }) => [
|
|
423
|
+
f("span", he, C(n.breadcrumbName), 1),
|
|
424
|
+
r(t(k), {
|
|
425
425
|
icon: n.icon,
|
|
426
426
|
fontsize: "15px"
|
|
427
427
|
}, null, 8, ["icon"]),
|
|
428
|
-
n.index < t(
|
|
428
|
+
n.index < t(R).length - 1 ? (l(), g("span", ve, ">")) : b("", !0)
|
|
429
429
|
]),
|
|
430
430
|
_: 1
|
|
431
431
|
}, 8, ["routes"])
|
|
432
432
|
], 4));
|
|
433
433
|
}
|
|
434
|
-
}),
|
|
434
|
+
}), ke = { class: "font-['Courier'] text-[#666]" }, Se = /* @__PURE__ */ _({
|
|
435
435
|
__name: "index",
|
|
436
436
|
setup(c) {
|
|
437
|
-
const
|
|
437
|
+
const o = v("");
|
|
438
438
|
return P(() => {
|
|
439
439
|
setInterval(() => {
|
|
440
|
-
const
|
|
441
|
-
|
|
440
|
+
const s = /* @__PURE__ */ new Date(), e = { month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit", second: "2-digit" }, u = s.toLocaleString(void 0, e).replace(/\//g, "-").replace(",", "");
|
|
441
|
+
o.value = s.getFullYear() + "-" + u;
|
|
442
442
|
}, 1e3);
|
|
443
|
-
}), (
|
|
443
|
+
}), (s, e) => (l(), g("div", ke, C(o.value), 1));
|
|
444
444
|
}
|
|
445
|
-
}),
|
|
445
|
+
}), we = { style: { margin: "0 0 0 20px", "font-weight": "400", "font-size": "16px" } }, Ce = /* @__PURE__ */ _({
|
|
446
446
|
__name: "headerExits",
|
|
447
447
|
setup(c) {
|
|
448
|
-
const
|
|
449
|
-
|
|
448
|
+
const o = F(), s = v(!1), e = () => {
|
|
449
|
+
s.value = !1, fe() ? ee.userLogout() : o.logout(!0);
|
|
450
450
|
};
|
|
451
|
-
return (
|
|
452
|
-
|
|
453
|
-
title: t(
|
|
451
|
+
return (u, i) => (l(), g(L, null, [
|
|
452
|
+
r(t(A), {
|
|
453
|
+
title: t(S)("webui.layout.header.exitPlatform")
|
|
454
454
|
}, {
|
|
455
|
-
default:
|
|
456
|
-
|
|
455
|
+
default: m(() => [
|
|
456
|
+
r(t(k), {
|
|
457
457
|
icon: "icon-logout",
|
|
458
|
-
onClick:
|
|
458
|
+
onClick: i[0] || (i[0] = (n) => s.value = !0),
|
|
459
459
|
clickable: "",
|
|
460
460
|
class: "w-5 h-5",
|
|
461
|
-
title: t(
|
|
461
|
+
title: t(S)("webui.layout.header.exitSystem")
|
|
462
462
|
}, null, 8, ["title"])
|
|
463
463
|
]),
|
|
464
464
|
_: 1
|
|
465
465
|
}, 8, ["title"]),
|
|
466
|
-
|
|
467
|
-
open:
|
|
468
|
-
"onUpdate:open":
|
|
469
|
-
title: t(
|
|
470
|
-
"ok-text": t(
|
|
471
|
-
"cancel-text": t(
|
|
466
|
+
r(t(ae), {
|
|
467
|
+
open: s.value,
|
|
468
|
+
"onUpdate:open": i[1] || (i[1] = (n) => s.value = n),
|
|
469
|
+
title: t(S)("webui.layout.header.confirmExit"),
|
|
470
|
+
"ok-text": t(S)("webui.common.confirm"),
|
|
471
|
+
"cancel-text": t(S)("webui.common.cancel"),
|
|
472
472
|
width: 380,
|
|
473
473
|
onOk: e
|
|
474
474
|
}, {
|
|
475
|
-
default:
|
|
476
|
-
|
|
475
|
+
default: m(() => [
|
|
476
|
+
r(t(ce), {
|
|
477
477
|
align: "center",
|
|
478
478
|
justify: "flex-start",
|
|
479
479
|
style: { padding: "0 32px", margin: "20px 0" }
|
|
480
480
|
}, {
|
|
481
|
-
default:
|
|
482
|
-
|
|
481
|
+
default: m(() => [
|
|
482
|
+
r(t(k), {
|
|
483
483
|
icon: "icon-question-circle",
|
|
484
484
|
color: "orange",
|
|
485
485
|
class: "w-[60px] h-[60px]"
|
|
486
486
|
}),
|
|
487
|
-
|
|
487
|
+
f("div", we, C(t(S)("webui.layout.header.exitConfirmMessage")), 1)
|
|
488
488
|
]),
|
|
489
489
|
_: 1
|
|
490
490
|
})
|
|
@@ -493,155 +493,204 @@ const re = /* @__PURE__ */ x({
|
|
|
493
493
|
}, 8, ["open", "title", "ok-text", "cancel-text"])
|
|
494
494
|
], 64));
|
|
495
495
|
}
|
|
496
|
-
}),
|
|
496
|
+
}), Ie = { class: "flex items-center flex-nowrap" }, $e = { class: "mr-2 text-sm whitespace-nowrap" }, Te = /* @__PURE__ */ _({
|
|
497
497
|
__name: "user",
|
|
498
498
|
setup(c) {
|
|
499
|
-
const
|
|
500
|
-
return (
|
|
501
|
-
title: t(
|
|
499
|
+
const o = F().userInfo;
|
|
500
|
+
return (s, e) => (l(), y(t(A), {
|
|
501
|
+
title: t(o).Name
|
|
502
502
|
}, {
|
|
503
|
-
default:
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
503
|
+
default: m(() => [
|
|
504
|
+
f("div", Ie, [
|
|
505
|
+
f("span", $e, C(t(o).Name), 1),
|
|
506
|
+
r(t(ge), { icon: "icon-account" })
|
|
507
507
|
])
|
|
508
508
|
]),
|
|
509
509
|
_: 1
|
|
510
510
|
}, 8, ["title"]));
|
|
511
511
|
}
|
|
512
|
-
}),
|
|
512
|
+
}), Ae = { class: "flex items-center cursor-pointer" }, ze = /* @__PURE__ */ _({
|
|
513
|
+
__name: "language",
|
|
514
|
+
setup(c) {
|
|
515
|
+
const o = H(), s = v(te()), e = o.length > 0, u = async (i) => {
|
|
516
|
+
try {
|
|
517
|
+
await ne(i), s.value = i;
|
|
518
|
+
} catch (n) {
|
|
519
|
+
console.error("Failed to change language:", n);
|
|
520
|
+
}
|
|
521
|
+
};
|
|
522
|
+
return (i, n) => e ? (l(), y(t(le), {
|
|
523
|
+
key: 0,
|
|
524
|
+
placement: "bottomRight"
|
|
525
|
+
}, {
|
|
526
|
+
overlay: m(() => [
|
|
527
|
+
r(t(W), null, {
|
|
528
|
+
default: m(() => [
|
|
529
|
+
(l(!0), g(L, null, U(t(o), (p) => (l(), y(t(re), {
|
|
530
|
+
key: p.key,
|
|
531
|
+
onClick: (d) => u(p.key)
|
|
532
|
+
}, {
|
|
533
|
+
default: m(() => [
|
|
534
|
+
X(C(p.label), 1)
|
|
535
|
+
]),
|
|
536
|
+
_: 2
|
|
537
|
+
}, 1032, ["onClick"]))), 128))
|
|
538
|
+
]),
|
|
539
|
+
_: 1
|
|
540
|
+
})
|
|
541
|
+
]),
|
|
542
|
+
default: m(() => [
|
|
543
|
+
f("div", Ae, [
|
|
544
|
+
r(t(k), {
|
|
545
|
+
icon: "icon-language",
|
|
546
|
+
class: "w-[18px] h-[18px]"
|
|
547
|
+
})
|
|
548
|
+
])
|
|
549
|
+
]),
|
|
550
|
+
_: 1
|
|
551
|
+
})) : b("", !0);
|
|
552
|
+
}
|
|
553
|
+
}), Be = { class: "flex items-center" }, Ne = {
|
|
554
|
+
key: 1,
|
|
555
|
+
class: "w-[1px] h-[16px] bg-[#d9d9d9] mx-[3px]"
|
|
556
|
+
}, Ye = /* @__PURE__ */ _({
|
|
513
557
|
__name: "index",
|
|
514
558
|
setup(c) {
|
|
515
|
-
const { useToken:
|
|
559
|
+
const { useToken: o } = O, { token: s } = o(), e = V(), u = () => {
|
|
516
560
|
e.setMenuCollapse(!e.menuCollapse);
|
|
517
|
-
};
|
|
518
|
-
return (
|
|
561
|
+
}, i = H().length > 0;
|
|
562
|
+
return (n, p) => (l(), y(t(ue), {
|
|
519
563
|
class: "w-full relative z-[1] shadow-[0_-3px_6px_#000] py-0 flex items-center justify-between",
|
|
520
564
|
style: T({
|
|
521
565
|
height: "40px",
|
|
522
566
|
lineHeight: "1",
|
|
523
567
|
paddingLeft: "10px",
|
|
524
568
|
paddingRight: "20px",
|
|
525
|
-
backgroundColor: t(
|
|
569
|
+
backgroundColor: t(s).colorBgContainer
|
|
526
570
|
})
|
|
527
571
|
}, {
|
|
528
|
-
default:
|
|
529
|
-
|
|
530
|
-
|
|
572
|
+
default: m(() => [
|
|
573
|
+
f("div", Be, [
|
|
574
|
+
r(t(k), {
|
|
531
575
|
icon: "icon-menu",
|
|
532
576
|
clickable: "",
|
|
533
577
|
class: "w-[18px] h-[18px]",
|
|
534
578
|
angle: t(e).menuCollapse ? 90 : 0,
|
|
535
|
-
onClick:
|
|
579
|
+
onClick: u
|
|
536
580
|
}, null, 8, ["angle"]),
|
|
537
|
-
|
|
581
|
+
r(be)
|
|
538
582
|
]),
|
|
539
|
-
|
|
540
|
-
|
|
583
|
+
f("div", null, [
|
|
584
|
+
r(t(pe), {
|
|
541
585
|
size: "middle",
|
|
542
586
|
class: "flex items-center"
|
|
543
587
|
}, {
|
|
544
|
-
default:
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
l(
|
|
588
|
+
default: m(() => [
|
|
589
|
+
r(Se),
|
|
590
|
+
p[0] || (p[0] = f("div", { class: "w-[1px] h-[16px] bg-[#d9d9d9] mx-[3px]" }, null, -1)),
|
|
591
|
+
i ? (l(), y(ze, { key: 0 })) : b("", !0),
|
|
592
|
+
i ? (l(), g("div", Ne)) : b("", !0),
|
|
593
|
+
r(Te),
|
|
594
|
+
p[1] || (p[1] = f("div", { class: "w-[1px] h-[16px] bg-[#d9d9d9] mx-[3px]" }, null, -1)),
|
|
595
|
+
r(Ce)
|
|
548
596
|
]),
|
|
549
|
-
_: 1
|
|
597
|
+
_: 1,
|
|
598
|
+
__: [0, 1]
|
|
550
599
|
})
|
|
551
600
|
])
|
|
552
601
|
]),
|
|
553
602
|
_: 1
|
|
554
603
|
}, 8, ["style"]));
|
|
555
604
|
}
|
|
556
|
-
}),
|
|
605
|
+
}), Je = /* @__PURE__ */ _({
|
|
557
606
|
__name: "index",
|
|
558
607
|
props: {
|
|
559
608
|
routes: {}
|
|
560
609
|
},
|
|
561
610
|
setup(c) {
|
|
562
|
-
const
|
|
563
|
-
B().push(
|
|
564
|
-
},
|
|
565
|
-
let
|
|
566
|
-
const
|
|
567
|
-
|
|
611
|
+
const o = c, s = v([]), e = v([]), u = Z([]), i = M(), n = (x) => {
|
|
612
|
+
B().push(x.key.toString());
|
|
613
|
+
}, p = V(), d = v([]), I = () => {
|
|
614
|
+
let x = i.TabActive;
|
|
615
|
+
const a = x.split("/");
|
|
616
|
+
a.pop(), s.value = [a.join("/")], p.menuCollapse || (d.value = [a.join("/")]), e.value = [x];
|
|
568
617
|
};
|
|
569
|
-
return
|
|
570
|
-
() =>
|
|
571
|
-
(
|
|
572
|
-
|
|
573
|
-
|
|
618
|
+
return w(
|
|
619
|
+
() => p.menuCollapse,
|
|
620
|
+
(x) => {
|
|
621
|
+
x || (d.value = [], G(() => {
|
|
622
|
+
d.value = [...s.value];
|
|
574
623
|
}));
|
|
575
624
|
}
|
|
576
|
-
),
|
|
577
|
-
() =>
|
|
625
|
+
), w(
|
|
626
|
+
() => i.TabActive,
|
|
578
627
|
() => {
|
|
579
628
|
I();
|
|
580
629
|
}
|
|
581
630
|
), P(() => {
|
|
582
|
-
|
|
583
|
-
}), (
|
|
584
|
-
openKeys:
|
|
585
|
-
"onUpdate:openKeys":
|
|
631
|
+
oe(o.routes, u, ye, { class: "!w-5 !h-5" }), i.setTabActive(q.currentRoute.value.path), I();
|
|
632
|
+
}), (x, a) => (l(), y(t(W), {
|
|
633
|
+
openKeys: d.value,
|
|
634
|
+
"onUpdate:openKeys": a[0] || (a[0] = (h) => d.value = h),
|
|
586
635
|
selectedKeys: e.value,
|
|
587
|
-
"onUpdate:selectedKeys":
|
|
636
|
+
"onUpdate:selectedKeys": a[1] || (a[1] = (h) => e.value = h),
|
|
588
637
|
mode: "inline",
|
|
589
638
|
theme: "dark",
|
|
590
|
-
items:
|
|
639
|
+
items: u,
|
|
591
640
|
onClick: n
|
|
592
641
|
}, null, 8, ["openKeys", "selectedKeys", "items"]));
|
|
593
642
|
}
|
|
594
|
-
}),
|
|
643
|
+
}), Pe = { class: "flex items-center" }, Le = { class: "flex" }, Me = ["onClick"], Xe = /* @__PURE__ */ _({
|
|
595
644
|
__name: "menuTabs",
|
|
596
645
|
setup(c) {
|
|
597
|
-
const { useToken:
|
|
598
|
-
|
|
599
|
-
() =>
|
|
646
|
+
const { useToken: o } = O, { token: s } = o(), e = M();
|
|
647
|
+
w(
|
|
648
|
+
() => q.currentRoute.value.path,
|
|
600
649
|
(n) => {
|
|
601
650
|
n !== e.TabActive && e.setTabActive(n);
|
|
602
651
|
}
|
|
603
652
|
);
|
|
604
|
-
const
|
|
653
|
+
const u = (n) => {
|
|
605
654
|
B().push(n);
|
|
606
|
-
},
|
|
655
|
+
}, i = (n) => {
|
|
607
656
|
e.removeTabPane(n), B().push(e.TabActive);
|
|
608
657
|
};
|
|
609
|
-
return (n,
|
|
610
|
-
style: T({ height: "38px", backgroundColor: t(
|
|
658
|
+
return (n, p) => (l(), g("div", {
|
|
659
|
+
style: T({ height: "38px", backgroundColor: t(s).colorBgBase })
|
|
611
660
|
}, [
|
|
612
|
-
|
|
661
|
+
r(t(de), {
|
|
613
662
|
activeKey: t(e).TabActive,
|
|
614
663
|
"hide-add": "",
|
|
615
664
|
size: "small",
|
|
616
665
|
tabBarStyle: { padding: "0 20px" },
|
|
617
|
-
onTabClick:
|
|
666
|
+
onTabClick: u
|
|
618
667
|
}, {
|
|
619
|
-
default:
|
|
620
|
-
(
|
|
621
|
-
key:
|
|
668
|
+
default: m(() => [
|
|
669
|
+
(l(!0), g(L, null, U(t(e).TabPanes, (d) => (l(), y(t(me), {
|
|
670
|
+
key: d.key
|
|
622
671
|
}, {
|
|
623
|
-
tab:
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
672
|
+
tab: m(() => [
|
|
673
|
+
f("div", Pe, [
|
|
674
|
+
f("span", Le, C(d.title), 1),
|
|
675
|
+
r(t(A), {
|
|
627
676
|
title: "关闭",
|
|
628
677
|
placement: "top",
|
|
629
678
|
size: "small"
|
|
630
679
|
}, {
|
|
631
|
-
default:
|
|
632
|
-
t(e).TabPanes.length > 1 &&
|
|
680
|
+
default: m(() => [
|
|
681
|
+
t(e).TabPanes.length > 1 && d.closable ? (l(), g("div", {
|
|
633
682
|
key: 0,
|
|
634
683
|
class: "inline-block mx-auto relative flex items-center",
|
|
635
|
-
onClick:
|
|
684
|
+
onClick: Q((I) => i(d.key), ["stop"])
|
|
636
685
|
}, [
|
|
637
|
-
|
|
686
|
+
r(t(k), {
|
|
638
687
|
icon: "icon-new",
|
|
639
688
|
angle: 45,
|
|
640
689
|
clickable: "",
|
|
641
690
|
class: "w-[15px] h-[15px] ml-1",
|
|
642
|
-
tipcolor: t(
|
|
691
|
+
tipcolor: t(s).colorBgSpotlight
|
|
643
692
|
}, null, 8, ["tipcolor"])
|
|
644
|
-
], 8,
|
|
693
|
+
], 8, Me)) : b("", !0)
|
|
645
694
|
]),
|
|
646
695
|
_: 2
|
|
647
696
|
}, 1024)
|
|
@@ -656,13 +705,13 @@ const re = /* @__PURE__ */ x({
|
|
|
656
705
|
}
|
|
657
706
|
});
|
|
658
707
|
export {
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
708
|
+
We as I,
|
|
709
|
+
ge as _,
|
|
710
|
+
ye as a,
|
|
711
|
+
be as b,
|
|
712
|
+
Se as c,
|
|
713
|
+
Ye as d,
|
|
714
|
+
Ce as e,
|
|
715
|
+
Je as f,
|
|
716
|
+
Xe as g
|
|
668
717
|
};
|
|
@@ -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-mzLL4UUU.js";
|
|
5
5
|
const T = /* @__PURE__ */ i({
|
|
6
6
|
__name: "index",
|
|
7
7
|
props: {
|