@chewel611/naive-ui-plus 0.0.28 → 0.0.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { useDialog as Ne, useMessage as fe, NCard as Ae, NDataTable as Ge, NModal as De, NSpace as ke, NButton as K, NTooltip as ze, NIcon as M, NDropdown as Z, NAvatar as Le, NBreadcrumb as Je, NBreadcrumbItem as Ze, NDivider as Qe, useThemeVars as et, NMenu as tt, NLayout as Ee, NLayoutSider as at, NFlex as nt, NLayoutHeader as ot, NLayoutContent as lt, NBackTop as st, NConfigProvider as rt, dateZhCN as ct, zhCN as it, NDialogProvider as ut, NNotificationProvider as dt, NMessageProvider as ft, NText as gt, NEmpty as pt, NSpin as ht, NResult as Ce } from "naive-ui";
1
+ import { useDialog as Ne, useMessage as fe, NCard as Ae, NDataTable as Ge, NModal as De, NSpace as ke, NButton as K, NTooltip as ze, NIcon as M, NDropdown as Z, NAvatar as Le, NBreadcrumb as Je, NBreadcrumbItem as Ze, NDivider as Qe, useThemeVars as et, NMenu as tt, NLayout as Ee, NLayoutSider as at, NFlex as nt, NLayoutHeader as ot, NLayoutContent as lt, NBackTop as st, NConfigProvider as rt, dateZhCN as it, zhCN as ct, NDialogProvider as ut, NNotificationProvider as dt, NMessageProvider as ft, NText as gt, NEmpty as pt, NSpin as ht, NResult as Ce } from "naive-ui";
2
2
  import { defineComponent as I, ref as $, computed as F, unref as a, onMounted as Q, openBlock as p, createBlock as S, withCtx as l, createElementVNode as b, createElementBlock as R, renderSlot as j, createCommentVNode as N, createVNode as r, normalizeStyle as de, createTextVNode as Y, toDisplayString as H, h as W, toRaw as J, reactive as xe, normalizeClass as ae, withDirectives as mt, vShow as vt, nextTick as ne, inject as Ie, Fragment as Me, renderList as _t, resolveDynamicComponent as we, withModifiers as Pe, resolveComponent as Be, KeepAlive as yt, useCssVars as bt, watch as We, provide as wt, mergeProps as Pt, onBeforeMount as kt } from "vue";
3
3
  import { PlusSquareOutlined as Lt, DeleteOutlined as Ct, ReloadOutlined as Se, MoreOutlined as xt, MenuUnfoldOutlined as St, MenuFoldOutlined as Tt, FullscreenOutlined as $t, FullscreenExitOutlined as Ot, CloseOutlined as Re, ColumnWidthOutlined as Et, MinusOutlined as Mt, LeftOutlined as Rt, RightOutlined as Nt, DownOutlined as At, AlertOutlined as Dt } from "@vicons/antd";
4
4
  import { cloneDeep as zt } from "lodash";
@@ -8,8 +8,8 @@ import It from "element-resize-detector";
8
8
  import Bt from "vuedraggable";
9
9
  const je = (t) => {
10
10
  Object.keys(t).forEach((n) => {
11
- const i = t[n];
12
- Array.isArray(i) ? t[n] = [] : i !== null && typeof i == "object" ? je(i) : t[n] = void 0;
11
+ const c = t[n];
12
+ Array.isArray(c) ? t[n] = [] : c !== null && typeof c == "object" ? je(c) : t[n] = void 0;
13
13
  });
14
14
  }, Wt = { class: "text-lg font-medium" }, jt = { id: "data-content" }, Ht = {
15
15
  key: 0,
@@ -33,7 +33,7 @@ const je = (t) => {
33
33
  onDelete: {}
34
34
  },
35
35
  setup(t, { expose: n }) {
36
- const i = $(null), y = Ne(), h = fe(), u = $(!1), k = $([]), _ = $([]), T = $(null), O = $(!1), c = $(!1), w = $(!1), d = $({}), C = $({
36
+ const c = $(null), y = Ne(), h = fe(), u = $(!1), k = $([]), _ = $([]), T = $(null), O = $(!1), i = $(!1), w = $(!1), d = $({}), C = $({
37
37
  page: 1,
38
38
  itemCount: 0,
39
39
  pageSize: 10,
@@ -128,9 +128,9 @@ const je = (t) => {
128
128
  }
129
129
  });
130
130
  }, ee = () => {
131
- T.value = null, ce();
131
+ T.value = null, ie();
132
132
  }, ge = async (g) => {
133
- T.value = zt(g), ce(T.value, async () => {
133
+ T.value = zt(g), ie(T.value, async () => {
134
134
  m.onGet && (T.value = await m.onGet(g[m.idField])), Object.assign(m.item, T.value);
135
135
  });
136
136
  }, re = async () => {
@@ -142,10 +142,10 @@ const je = (t) => {
142
142
  } finally {
143
143
  w.value = !1;
144
144
  }
145
- }, ce = async (g, e) => {
146
- m.onOpenModal?.(g), await e?.(), g ? (O.value = !1, c.value = !0) : (c.value = !1, O.value = !0);
145
+ }, ie = async (g, e) => {
146
+ m.onOpenModal?.(g), await e?.(), g ? (O.value = !1, i.value = !0) : (i.value = !1, O.value = !0);
147
147
  }, X = () => {
148
- T.value = null, je(m.item), Object.assign(m.item, { ...J(d.value) }), m.onCloseModal?.(m.item), O.value = !1, c.value = !1;
148
+ T.value = null, je(m.item), Object.assign(m.item, { ...J(d.value) }), m.onCloseModal?.(m.item), O.value = !1, i.value = !1;
149
149
  }, G = () => k.value ? _.value.filter((e) => k.value.includes(e.id)).map((e) => J(e)) : [], pe = () => G()[0], he = () => J(_.value), q = async () => {
150
150
  if (!u.value) {
151
151
  u.value = !0;
@@ -164,7 +164,7 @@ const je = (t) => {
164
164
  }
165
165
  }
166
166
  }, me = F(() => {
167
- const g = a(i);
167
+ const g = a(c);
168
168
  if (!g) return;
169
169
  const e = g?.$el, o = e.querySelector(".n-data-table-thead "), { bottomIncludeBody: s } = te(o), L = 48;
170
170
  let D = 12, z = 24;
@@ -177,8 +177,8 @@ const je = (t) => {
177
177
  } else
178
178
  D += 28;
179
179
  return s - (L + D + z);
180
- }), ie = (g) => !g || !g.getBoundingClientRect ? 0 : g.getBoundingClientRect(), te = (g) => {
181
- const e = document.documentElement, o = e.scrollLeft, s = e.scrollTop, L = e.clientLeft, D = e.clientTop, z = window.pageXOffset, V = window.pageYOffset, ue = ie(g), {
180
+ }), ce = (g) => !g || !g.getBoundingClientRect ? 0 : g.getBoundingClientRect(), te = (g) => {
181
+ const e = document.documentElement, o = e.scrollLeft, s = e.scrollTop, L = e.clientLeft, D = e.clientTop, z = window.pageXOffset, V = window.pageYOffset, ue = ce(g), {
182
182
  left: _e,
183
183
  top: Ue,
184
184
  width: qe,
@@ -208,11 +208,7 @@ const je = (t) => {
208
208
  }
209
209
  }), (g, e) => {
210
210
  const o = ze, s = ke, L = Ge, D = De;
211
- return p(), S(a(Ae), {
212
- bordered: !1,
213
- "content-class": "!p-0",
214
- "header-class": "!px-0 !pt-0"
215
- }, {
211
+ return p(), S(a(Ae), { bordered: !1 }, {
216
212
  header: l(() => [
217
213
  r(s, {
218
214
  justify: "space-between",
@@ -298,7 +294,7 @@ const je = (t) => {
298
294
  r(L, {
299
295
  remote: "",
300
296
  ref_key: "$table",
301
- ref: i,
297
+ ref: c,
302
298
  "checked-row-keys": k.value,
303
299
  "onUpdate:checkedRowKeys": e[0] || (e[0] = (z) => k.value = z),
304
300
  "max-height": me.value,
@@ -355,8 +351,8 @@ const je = (t) => {
355
351
  g.$slots.editModal ? (p(), R("div", qt, [
356
352
  r(D, {
357
353
  title: "编辑",
358
- show: c.value,
359
- "onUpdate:show": e[2] || (e[2] = (z) => c.value = z),
354
+ show: i.value,
355
+ "onUpdate:show": e[2] || (e[2] = (z) => i.value = z),
360
356
  preset: "card",
361
357
  "header-class": "bg-gray-50",
362
358
  closable: !1,
@@ -402,8 +398,8 @@ const je = (t) => {
402
398
  }
403
399
  }), B = (t) => {
404
400
  const n = t;
405
- return n.install = function(i) {
406
- i.component(n.__name, t);
401
+ return n.install = function(c) {
402
+ c.component(n.__name, t);
407
403
  }, t;
408
404
  }, Vt = B(Ft), Kt = ["Redirect", "RedirectSon", "login"], se = Te("p-layout", () => {
409
405
  const t = xe({
@@ -481,7 +477,7 @@ const je = (t) => {
481
477
  __name: "PLogo",
482
478
  setup(t) {
483
479
  const n = se();
484
- return (i, y) => (p(), R("div", Yt, [
480
+ return (c, y) => (p(), R("div", Yt, [
485
481
  r(a(Le), {
486
482
  color: "var(--color-logo)",
487
483
  size: 32,
@@ -494,10 +490,10 @@ const je = (t) => {
494
490
  ]));
495
491
  }
496
492
  }), U = (t, n) => {
497
- const i = t.__vccOpts || t;
493
+ const c = t.__vccOpts || t;
498
494
  for (const [y, h] of n)
499
- i[y] = h;
500
- return i;
495
+ c[y] = h;
496
+ return c;
501
497
  }, Gt = /* @__PURE__ */ U(Xt, [["__scopeId", "data-v-e48aeefa"]]), Jt = {
502
498
  translationApiUrl: "https://translate.zvo.cn/api",
503
499
  defaultLanguage: "chinese",
@@ -509,34 +505,34 @@ const je = (t) => {
509
505
  }, Zt = Te("language", () => {
510
506
  const t = $(Jt), n = async () => (t.value.options.length === 0 && (t.value.options = await t.value.initLanguages()), t.value.options);
511
507
  return {
512
- select: async (c) => {
513
- if (t.value.currentLanguage === c)
508
+ select: async (i) => {
509
+ if (t.value.currentLanguage === i)
514
510
  return;
515
511
  const w = (await n()).find(
516
- (d) => d.key === c
512
+ (d) => d.key === i
517
513
  );
518
514
  w && (t.value.currentLanguage = w.key, t.value.selectLanguage(w));
519
515
  },
520
- selectLanguageCallback: async (c) => {
521
- t.value.selectLanguage = c;
516
+ selectLanguageCallback: async (i) => {
517
+ t.value.selectLanguage = i;
522
518
  },
523
- initLanguagesCallback: async (c) => {
524
- t.value.initLanguages = c;
519
+ initLanguagesCallback: async (i) => {
520
+ t.value.initLanguages = i;
525
521
  },
526
522
  getLanguages: n,
527
523
  getCurrentLanguage: async () => {
528
524
  if (t.value.currentLanguage)
529
525
  return (await n()).find(
530
- (c) => c.key === t.value.currentLanguage
526
+ (i) => i.key === t.value.currentLanguage
531
527
  );
532
528
  },
533
- setTranslationApiUrl: (c) => {
534
- t.value.translationApiUrl = c;
529
+ setTranslationApiUrl: (i) => {
530
+ t.value.translationApiUrl = i;
535
531
  },
536
532
  getTranslationApiUrl: () => t.value.translationApiUrl,
537
533
  getDefaultLanguage: () => t.value.defaultLanguage ? t.value.defaultLanguage : "chinese_simplified",
538
- setDefaultLanguage: (c) => {
539
- (c === "Chinese" || c === "chinese") && (c = "chinese_simplified"), t.value.defaultLanguage = c;
534
+ setDefaultLanguage: (i) => {
535
+ (i === "Chinese" || i === "chinese") && (i = "chinese_simplified"), t.value.defaultLanguage = i;
540
536
  }
541
537
  };
542
538
  }), Qt = { key: 1 }, He = /* @__PURE__ */ I({
@@ -544,17 +540,17 @@ const je = (t) => {
544
540
  setup(t) {
545
541
  const {
546
542
  select: n,
547
- getLanguages: i,
543
+ getLanguages: c,
548
544
  getCurrentLanguage: y,
549
545
  getDefaultLanguage: h,
550
546
  getTranslationApiUrl: u
551
- } = Zt(), k = $(), _ = $([]), T = async (c) => await n(c), O = async () => {
552
- const c = window.translate;
553
- c && (c.selectLanguageTag.show = !1, c.selectLanguageTag.languages = (await i()).map((w) => w.key).join(","), c.ignore.class.push("ignore-translate-flag"), c.ignore.id.push("ignore-translation"), c.language.setLocal(h()), c.request.api.translate = "api/v1/translation", c.request.api.connectTest = "api/v1/translation/connect-test", c.request.api.init = "api/v1/translation/init", c.request.api.language = "api/v1/translation/language", c.request.setHost(u()), c.request.listener.start(), c.listener.start(), c.whole.enableAll(), c.execute());
547
+ } = Zt(), k = $(), _ = $([]), T = async (i) => await n(i), O = async () => {
548
+ const i = window.translate;
549
+ i && (i.selectLanguageTag.show = !1, i.selectLanguageTag.languages = (await c()).map((w) => w.key).join(","), i.ignore.class.push("ignore-translate-flag"), i.ignore.id.push("ignore-translation"), i.language.setLocal(h()), i.request.api.translate = "api/v1/translation", i.request.api.connectTest = "api/v1/translation/connect-test", i.request.api.init = "api/v1/translation/init", i.request.api.language = "api/v1/translation/language", i.request.setHost(u()), i.request.listener.start(), i.listener.start(), i.whole.enableAll(), i.execute());
554
550
  };
555
551
  return Q(async () => {
556
- await ne(), await O(), k.value = await y(), _.value = await i();
557
- }), (c, w) => {
552
+ await ne(), await O(), k.value = await y(), _.value = await c();
553
+ }), (i, w) => {
558
554
  const d = M, C = K;
559
555
  return _.value.length > 0 ? (p(), S(a(Z), {
560
556
  key: 0,
@@ -607,10 +603,10 @@ const je = (t) => {
607
603
  }, oa = { class: "layout-header-right" }, la = {
608
604
  key: 0,
609
605
  class: "layout-header-trigger-min"
610
- }, sa = { class: "layout-header-trigger layout-header-trigger-min" }, ra = { class: "layout-header-trigger layout-header-trigger-min" }, ca = { class: "avatar" }, ia = /* @__PURE__ */ I({
606
+ }, sa = { class: "layout-header-trigger layout-header-trigger-min" }, ra = { class: "layout-header-trigger layout-header-trigger-min" }, ia = { class: "avatar" }, ca = /* @__PURE__ */ I({
611
607
  __name: "PHeader",
612
608
  setup(t) {
613
- const n = fe(), i = Ne(), y = se(), h = oe(), u = le(), k = Ie("reloadPage"), _ = (f) => h.push({ name: f }), T = F(() => O(u.matched)), O = (f) => f.map((P) => {
609
+ const n = fe(), c = Ne(), y = se(), h = oe(), u = le(), k = Ie("reloadPage"), _ = (f) => h.push({ name: f }), T = F(() => O(u.matched)), O = (f) => f.map((P) => {
614
610
  const v = {
615
611
  key: P.name,
616
612
  label: P.meta.title,
@@ -622,8 +618,8 @@ const je = (t) => {
622
618
  return P.children && P.children.length > 0 && (v.children = O(
623
619
  P.children
624
620
  )), v;
625
- }), c = $(!1), w = () => {
626
- document.fullscreenElement ? document.exitFullscreen && (document.exitFullscreen(), c.value = !1) : (document.documentElement.requestFullscreen(), c.value = !0);
621
+ }), i = $(!1), w = () => {
622
+ document.fullscreenElement ? document.exitFullscreen && (document.exitFullscreen(), i.value = !1) : (document.documentElement.requestFullscreen(), i.value = !0);
627
623
  }, d = F(() => {
628
624
  const f = [];
629
625
  return f.push({
@@ -638,7 +634,7 @@ const je = (t) => {
638
634
  }), C = (f) => {
639
635
  f === "logout" ? m() : h.push({ name: f });
640
636
  }, m = () => {
641
- i.info({
637
+ c.info({
642
638
  title: "提示",
643
639
  content: "您确定要退出登录吗",
644
640
  positiveText: "确定",
@@ -741,7 +737,7 @@ const je = (t) => {
741
737
  onClick: Pe(w, ["stop"])
742
738
  }, {
743
739
  default: l(() => [
744
- c.value ? (p(), S(a(Ot), { key: 1 })) : (p(), S(a($t), { key: 0 }))
740
+ i.value ? (p(), S(a(Ot), { key: 1 })) : (p(), S(a($t), { key: 0 }))
745
741
  ]),
746
742
  _: 1
747
743
  })
@@ -759,7 +755,7 @@ const je = (t) => {
759
755
  options: d.value
760
756
  }, {
761
757
  default: l(() => [
762
- b("div", ca, [
758
+ b("div", ia, [
763
759
  b("span", null, H(a(y).state.uname), 1),
764
760
  r(A, { vertical: "" }),
765
761
  r(E, {
@@ -775,13 +771,13 @@ const je = (t) => {
775
771
  ]);
776
772
  };
777
773
  }
778
- }), ua = /* @__PURE__ */ U(ia, [["__scopeId", "data-v-563e4e55"]]), da = { class: "mt-1" }, fa = /* @__PURE__ */ I({
774
+ }), ua = /* @__PURE__ */ U(ca, [["__scopeId", "data-v-563e4e55"]]), da = { class: "mt-1" }, fa = /* @__PURE__ */ I({
779
775
  __name: "PContent",
780
776
  props: {
781
777
  loading: { type: Boolean, default: !1 }
782
778
  },
783
779
  setup(t) {
784
- return (n, i) => {
780
+ return (n, c) => {
785
781
  const y = Be("RouterView");
786
782
  return p(), R("div", da, [
787
783
  t.loading ? N("", !0) : (p(), S(y, { key: 0 }, {
@@ -801,10 +797,10 @@ const je = (t) => {
801
797
  __name: "PTabs",
802
798
  setup(t) {
803
799
  bt((e) => ({
804
- v141ddb06: i.value,
800
+ v141ddb06: c.value,
805
801
  cf709148: y.value
806
802
  }));
807
- const n = et(), i = F(() => n.value.cardColor), y = F(() => n.value.textColor1), h = fe(), u = le(), k = oe(), _ = $(null), T = $(null), O = $(!1), c = se(), w = F(() => c.state.tabs), d = xe({
803
+ const n = et(), c = F(() => n.value.cardColor), y = F(() => n.value.textColor1), h = fe(), u = le(), k = oe(), _ = $(null), T = $(null), O = $(!1), i = se(), w = F(() => i.state.tabs), d = xe({
808
804
  activeKey: u.fullPath,
809
805
  scrollable: !0,
810
806
  dropdownX: 0,
@@ -816,7 +812,7 @@ const je = (t) => {
816
812
  const { fullPath: o, hash: s, meta: L, name: D, params: z, path: V, query: ue } = e;
817
813
  return { fullPath: o, hash: s, meta: L, name: D, params: z, path: V, query: ue };
818
814
  }, f = F(() => {
819
- const s = c.state.collapsed ? "64px" : "272px";
815
+ const s = i.state.collapsed ? "64px" : "272px";
820
816
  return {
821
817
  left: s,
822
818
  width: `calc(100% - ${s})`
@@ -852,7 +848,7 @@ const je = (t) => {
852
848
  let e = [];
853
849
  const o = m(u);
854
850
  try {
855
- if (c.state.cacheTabs) {
851
+ if (i.state.cacheTabs) {
856
852
  const s = localStorage.getItem("TABS_ROUTES");
857
853
  e = s ? JSON.parse(s) : [o];
858
854
  }
@@ -866,10 +862,10 @@ const je = (t) => {
866
862
  e.forEach((s) => {
867
863
  const L = o.find((D) => D.path === s.path);
868
864
  L && (s.meta = L.meta || s.meta, s.name = L.name || s.name);
869
- }), c.state.cacheTabs && localStorage.setItem("TABS_ROUTES", JSON.stringify(e));
865
+ }), i.state.cacheTabs && localStorage.setItem("TABS_ROUTES", JSON.stringify(e));
870
866
  }, E = () => {
871
867
  const e = v();
872
- A(e), c.initTabs(e);
868
+ A(e), i.initTabs(e);
873
869
  }, x = async (e) => {
874
870
  if (await ne(), !_.value) return;
875
871
  const o = _.value.offsetWidth, s = _.value.scrollWidth;
@@ -885,7 +881,7 @@ const je = (t) => {
885
881
  return;
886
882
  const { replace: s } = k;
887
883
  toString.call(e), s(e).catch(console.error);
888
- }, ce = (e, o) => {
884
+ }, ie = (e, o) => {
889
885
  e.preventDefault(), O.value = o.path === "/home", d.showDropdown = !1, ne().then(() => {
890
886
  d.showDropdown = !0, d.dropdownX = e.clientX, d.dropdownY = e.clientY;
891
887
  });
@@ -899,7 +895,7 @@ const je = (t) => {
899
895
  }, G = (e) => {
900
896
  if (w.value.length === 1)
901
897
  return h.warning("这已经是最后一页,不能再关闭了!");
902
- if (X(), c.closeCurrentTab(e), d.activeKey === e.fullPath) {
898
+ if (X(), i.closeCurrentTab(e), d.activeKey === e.fullPath) {
903
899
  const o = w.value[Math.max(0, w.value.length - 1)];
904
900
  d.activeKey = o.fullPath, k.push(o);
905
901
  }
@@ -908,10 +904,10 @@ const je = (t) => {
908
904
  const { fullPath: o } = e, s = w.value.find((L) => L.fullPath == o);
909
905
  G(s);
910
906
  }, he = (e) => {
911
- c.closeOtherTabs(e), d.activeKey = e.fullPath, k.replace(e.fullPath), x();
907
+ i.closeOtherTabs(e), d.activeKey = e.fullPath, k.replace(e.fullPath), x();
912
908
  }, q = () => {
913
- c.closeAllTabs(), x();
914
- }, me = Ie("reloadPage"), ie = (e) => {
909
+ i.closeAllTabs(), x();
910
+ }, me = Ie("reloadPage"), ce = (e) => {
915
911
  switch (e) {
916
912
  //刷新
917
913
  case "1":
@@ -958,7 +954,7 @@ const je = (t) => {
958
954
  ), We(
959
955
  () => u.fullPath,
960
956
  (e) => {
961
- C.includes(u.name) || (d.activeKey = e, c.addTab(m(u)), x(!0));
957
+ C.includes(u.name) || (d.activeKey = e, i.addTab(m(u)), x(!0));
962
958
  },
963
959
  { immediate: !0 }
964
960
  ), E(), Q(() => ge()), (e, o) => (p(), R("div", {
@@ -1016,7 +1012,7 @@ const je = (t) => {
1016
1012
  id: `tag${s.fullPath.split("/").join("/")}`,
1017
1013
  class: ae(["tabs-card-scroll-item", { "active-item": d.activeKey === s.fullPath }]),
1018
1014
  onClick: Pe((L) => re(s), ["stop"]),
1019
- onContextmenu: (L) => ce(L, s)
1015
+ onContextmenu: (L) => ie(L, s)
1020
1016
  }, [
1021
1017
  b("span", null, H(s.meta.title), 1),
1022
1018
  s.meta.affix ? N("", !0) : (p(), S(a(M), {
@@ -1038,7 +1034,7 @@ const je = (t) => {
1038
1034
  b("div", ha, [
1039
1035
  r(a(Z), {
1040
1036
  trigger: "hover",
1041
- onSelect: ie,
1037
+ onSelect: ce,
1042
1038
  placement: "bottom-end",
1043
1039
  options: P.value
1044
1040
  }, {
@@ -1064,7 +1060,7 @@ const je = (t) => {
1064
1060
  y: d.dropdownY,
1065
1061
  onClickoutside: o[0] || (o[0] = (s) => d.showDropdown = !1),
1066
1062
  placement: "bottom-start",
1067
- onSelect: ie,
1063
+ onSelect: ce,
1068
1064
  options: P.value
1069
1065
  }, null, 8, ["show", "x", "y", "options"])
1070
1066
  ])
@@ -1073,10 +1069,10 @@ const je = (t) => {
1073
1069
  }), _a = /* @__PURE__ */ U(va, [["__scopeId", "data-v-48b3be2d"]]), ya = /* @__PURE__ */ I({
1074
1070
  __name: "PMenus",
1075
1071
  setup(t) {
1076
- const n = le(), i = oe(), y = se(), h = $(n.name), u = $(
1072
+ const n = le(), c = oe(), y = se(), h = $(n.name), u = $(
1077
1073
  n.matched && n.matched.length ? n.matched.map((d) => d.name) : []
1078
1074
  ), k = $([]), _ = (d) => {
1079
- /http(s)?:/.test(d) ? window.open(d) : i.push({ name: d });
1075
+ /http(s)?:/.test(d) ? window.open(d) : c.push({ name: d });
1080
1076
  }, T = (d) => {
1081
1077
  if (!d) return;
1082
1078
  const C = d.find((m) => u.value.indexOf(m) === -1);
@@ -1086,7 +1082,7 @@ const je = (t) => {
1086
1082
  u.value = d.map((m) => m.name);
1087
1083
  const C = n.meta?.activeMenu || "";
1088
1084
  h.value = C || n.name;
1089
- }, c = (d, C = [], m = !1) => {
1085
+ }, i = (d, C = [], m = !1) => {
1090
1086
  const f = [], P = [
1091
1087
  "/:path(.*)*",
1092
1088
  "/redirect",
@@ -1102,7 +1098,7 @@ const je = (t) => {
1102
1098
  });
1103
1099
  for (const v of d) {
1104
1100
  if (m || (v.meta?.hidden || !1) == !0 || P.includes(v.path)) {
1105
- C.push(v.name), v.children && v.children.length > 0 && c(v.children, C, !0);
1101
+ C.push(v.name), v.children && v.children.length > 0 && i(v.children, C, !0);
1106
1102
  continue;
1107
1103
  }
1108
1104
  const A = v.meta?.alwaysShow != !0 && v?.children?.filter((ee) => !ee?.meta?.hidden)?.length === 1, E = A ? v.children[0] : v, x = {
@@ -1119,16 +1115,16 @@ const je = (t) => {
1119
1115
  };
1120
1116
  if (!C.includes(v.name)) {
1121
1117
  if (f.push(x), C.push(v.name), A) {
1122
- c(v.children, C, m);
1118
+ i(v.children, C, m);
1123
1119
  continue;
1124
1120
  }
1125
- v.children && v.children.length > 0 && (x.children = c(v.children, C, m));
1121
+ v.children && v.children.length > 0 && (x.children = i(v.children, C, m));
1126
1122
  }
1127
1123
  }
1128
1124
  return f;
1129
1125
  }, w = () => {
1130
- const d = i.getRoutes();
1131
- k.value = c(d);
1126
+ const d = c.getRoutes();
1127
+ k.value = i(d);
1132
1128
  };
1133
1129
  return We(
1134
1130
  () => n.fullPath,
@@ -1155,9 +1151,9 @@ const je = (t) => {
1155
1151
  }), ba = { class: "layout-content-main layout-content-main-fix" }, wa = { class: "main-view main-view-fix" }, Pa = /* @__PURE__ */ I({
1156
1152
  __name: "PLayout",
1157
1153
  setup(t) {
1158
- const n = se(), i = $(!1);
1154
+ const n = se(), c = $(!1);
1159
1155
  return wt("reloadPage", () => {
1160
- i.value = !0, ne(() => i.value = !1);
1156
+ c.value = !0, ne(() => c.value = !1);
1161
1157
  }), (h, u) => {
1162
1158
  const k = st;
1163
1159
  return p(), S(a(Ee), {
@@ -1204,7 +1200,7 @@ const je = (t) => {
1204
1200
  b("div", ba, [
1205
1201
  r(_a),
1206
1202
  b("div", wa, [
1207
- r(fa, { loading: i.value }, null, 8, ["loading"])
1203
+ r(fa, { loading: c.value }, null, 8, ["loading"])
1208
1204
  ])
1209
1205
  ])
1210
1206
  ]),
@@ -1224,8 +1220,8 @@ const je = (t) => {
1224
1220
  }
1225
1221
  }), ka = /* @__PURE__ */ U(Pa, [["__scopeId", "data-v-0bac2e7d"]]), La = {};
1226
1222
  function Ca(t, n) {
1227
- const i = Be("router-view");
1228
- return p(), S(i);
1223
+ const c = Be("router-view");
1224
+ return p(), S(c);
1229
1225
  }
1230
1226
  const xa = /* @__PURE__ */ U(La, [["render", Ca]]), Sa = B(xa), Ta = B(ka), $a = /* @__PURE__ */ I({
1231
1227
  __name: "PApplication",
@@ -1244,13 +1240,13 @@ const xa = /* @__PURE__ */ U(La, [["render", Ca]]), Sa = B(xa), Ta = B(ka), $a =
1244
1240
  } }
1245
1241
  },
1246
1242
  setup(t) {
1247
- return (n, i) => {
1243
+ return (n, c) => {
1248
1244
  const y = rt;
1249
1245
  return p(), S(y, {
1250
- locale: a(it),
1246
+ locale: a(ct),
1251
1247
  theme: t.theme,
1252
1248
  "theme-overrides": t.themeOverrides,
1253
- "date-locale": a(ct)
1249
+ "date-locale": a(it)
1254
1250
  }, {
1255
1251
  default: l(() => [
1256
1252
  r(a(ut), null, {
@@ -1288,8 +1284,8 @@ const xa = /* @__PURE__ */ U(La, [["render", Ca]]), Sa = B(xa), Ta = B(ka), $a =
1288
1284
  onClose: {}
1289
1285
  },
1290
1286
  emits: ["update:visible", "update:loading"],
1291
- setup(t, { expose: n, emit: i }) {
1292
- const y = fe(), h = t, u = i, k = async () => {
1287
+ setup(t, { expose: n, emit: c }) {
1288
+ const y = fe(), h = t, u = c, k = async () => {
1293
1289
  u("update:loading", !0);
1294
1290
  try {
1295
1291
  h.onSave && await h.onSave() && _();
@@ -1388,7 +1384,7 @@ const xa = /* @__PURE__ */ U(La, [["render", Ca]]), Sa = B(xa), Ta = B(ka), $a =
1388
1384
  setup() {
1389
1385
  const t = le(), n = oe();
1390
1386
  return kt(() => {
1391
- const { params: i, query: y } = t, { path: h } = i;
1387
+ const { params: c, query: y } = t, { path: h } = c;
1392
1388
  n.replace({
1393
1389
  path: "/" + (Array.isArray(h) ? h.join("/") : h),
1394
1390
  query: y
@@ -1398,10 +1394,10 @@ const xa = /* @__PURE__ */ U(La, [["render", Ca]]), Sa = B(xa), Ta = B(ka), $a =
1398
1394
  }), Aa = B(Na), Da = { class: "frame" }, za = ["src"], Ia = /* @__PURE__ */ I({
1399
1395
  __name: "PIframe",
1400
1396
  setup(t) {
1401
- const n = le(), i = $(!1), y = $(null), h = $("");
1397
+ const n = le(), c = $(!1), y = $(null), h = $("");
1402
1398
  a(n.meta)?.frameSrc && (h.value = a(n.meta)?.frameSrc);
1403
1399
  function u() {
1404
- i.value = !1;
1400
+ c.value = !1;
1405
1401
  }
1406
1402
  function k() {
1407
1403
  ne(() => {
@@ -1416,10 +1412,10 @@ const xa = /* @__PURE__ */ U(La, [["render", Ca]]), Sa = B(xa), Ta = B(ka), $a =
1416
1412
  });
1417
1413
  }
1418
1414
  return Q(() => {
1419
- i.value = !0, k();
1415
+ c.value = !0, k();
1420
1416
  }), (_, T) => {
1421
1417
  const O = ht;
1422
- return p(), S(O, { show: i.value }, {
1418
+ return p(), S(O, { show: c.value }, {
1423
1419
  default: l(() => [
1424
1420
  b("div", Da, [
1425
1421
  b("iframe", {
@@ -1443,7 +1439,7 @@ const xa = /* @__PURE__ */ U(La, [["render", Ca]]), Sa = B(xa), Ta = B(ka), $a =
1443
1439
  },
1444
1440
  setup(t) {
1445
1441
  const n = t;
1446
- return (i, y) => {
1442
+ return (c, y) => {
1447
1443
  const h = M, u = Le, k = ke, _ = Ae;
1448
1444
  return p(), R("div", ja, [
1449
1445
  n.title ? (p(), S(_, {
@@ -1490,24 +1486,24 @@ const xa = /* @__PURE__ */ U(La, [["render", Ca]]), Sa = B(xa), Ta = B(ka), $a =
1490
1486
  ]),
1491
1487
  _: 1
1492
1488
  })) : N("", !0),
1493
- i.$slots.search ? (p(), S(_, {
1489
+ c.$slots.search ? (p(), S(_, {
1494
1490
  key: 1,
1495
1491
  class: "mb-4",
1496
1492
  bordered: !1,
1497
1493
  "content-class": "py-4"
1498
1494
  }, {
1499
1495
  default: l(() => [
1500
- j(i.$slots, "search")
1496
+ j(c.$slots, "search")
1501
1497
  ]),
1502
1498
  _: 3
1503
1499
  })) : N("", !0),
1504
- i.$slots.default ? (p(), S(_, {
1500
+ c.$slots.default ? (p(), S(_, {
1505
1501
  key: 2,
1506
1502
  bordered: !1,
1507
1503
  "content-class": "!py-0"
1508
1504
  }, {
1509
1505
  default: l(() => [
1510
- j(i.$slots, "default")
1506
+ j(c.$slots, "default")
1511
1507
  ]),
1512
1508
  _: 3
1513
1509
  })) : N("", !0)
@@ -1516,9 +1512,9 @@ const xa = /* @__PURE__ */ U(La, [["render", Ca]]), Sa = B(xa), Ta = B(ka), $a =
1516
1512
  }
1517
1513
  }), Fa = B(qa), Va = {}, Ka = { class: "flex flex-col justify-center page-container" };
1518
1514
  function Ya(t, n) {
1519
- const i = Ce;
1515
+ const c = Ce;
1520
1516
  return p(), R("div", Ka, [
1521
- r(i, {
1517
+ r(c, {
1522
1518
  status: "500",
1523
1519
  title: "服务器错误",
1524
1520
  description: "抱歉,服务器出错了"
@@ -1527,9 +1523,9 @@ function Ya(t, n) {
1527
1523
  }
1528
1524
  const Xa = /* @__PURE__ */ U(Va, [["render", Ya], ["__scopeId", "data-v-89cb65c7"]]), Ga = {}, Ja = { class: "flex flex-col justify-center page-container" };
1529
1525
  function Za(t, n) {
1530
- const i = Ce;
1526
+ const c = Ce;
1531
1527
  return p(), R("div", Ja, [
1532
- r(i, {
1528
+ r(c, {
1533
1529
  status: "404",
1534
1530
  title: "资源不存在",
1535
1531
  description: "抱歉,你访问的页面不存在"
@@ -1538,9 +1534,9 @@ function Za(t, n) {
1538
1534
  }
1539
1535
  const Qa = /* @__PURE__ */ U(Ga, [["render", Za], ["__scopeId", "data-v-99232671"]]), en = {}, tn = { class: "flex flex-col justify-center page-container" };
1540
1536
  function an(t, n) {
1541
- const i = Ce;
1537
+ const c = Ce;
1542
1538
  return p(), R("div", tn, [
1543
- r(i, {
1539
+ r(c, {
1544
1540
  status: "403",
1545
1541
  title: "禁止访问",
1546
1542
  description: "抱歉,你无权访问该页面"
@@ -1558,10 +1554,10 @@ const nn = /* @__PURE__ */ U(en, [["render", an], ["__scopeId", "data-v-3baa9c16
1558
1554
  }), cn = { class: "view-auth-callback" }, un = /* @__PURE__ */ I({
1559
1555
  __name: "POidc",
1560
1556
  setup(t) {
1561
- const n = oe(), { callCallback: i, callError: y } = rn();
1557
+ const n = oe(), { callCallback: c, callError: y } = rn();
1562
1558
  return Q(async () => {
1563
1559
  try {
1564
- await i(n);
1560
+ await c(n);
1565
1561
  } catch (h) {
1566
1562
  await y(n, h);
1567
1563
  }
@@ -1588,8 +1584,8 @@ const nn = /* @__PURE__ */ U(en, [["render", an], ["__scopeId", "data-v-3baa9c16
1588
1584
  PPage: Fa,
1589
1585
  PRedirect: Aa,
1590
1586
  PTable: Vt
1591
- }, Symbol.toStringTag, { value: "Module" })), pn = (t, n) => (Object.values(gn).forEach((i) => {
1592
- i.install && t.use(i);
1587
+ }, Symbol.toStringTag, { value: "Module" })), pn = (t, n) => (Object.values(gn).forEach((c) => {
1588
+ c.install && t.use(c);
1593
1589
  }), n?.(), t), kn = {
1594
1590
  install: pn
1595
1591
  };
@@ -1 +1 @@
1
- (function(k,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("naive-ui"),require("vue"),require("@vicons/antd"),require("lodash"),require("pinia"),require("vue-router"),require("element-resize-detector"),require("vuedraggable")):typeof define=="function"&&define.amd?define(["exports","naive-ui","vue","@vicons/antd","lodash","pinia","vue-router","element-resize-detector","vuedraggable"],n):(k=typeof globalThis<"u"?globalThis:k||self,n(k.naiveplus={},k.naiveUi,k.Vue,k.antd,k.lodash,k.pinia,k.vueRouter,k.elementResizeDetectorMaker,k.Draggable))})(this,(function(k,n,e,S,ke,Y,O,Ne,Ce){"use strict";const te=o=>{Object.keys(o).forEach(a=>{const c=o[a];Array.isArray(c)?o[a]=[]:c!==null&&typeof c=="object"?te(c):o[a]=void 0})},xe={class:"text-lg font-medium"},Pe={id:"data-content"},Ve={key:0,class:"rounded-lg bg-gray-50 flex flex-row gap-2 items-center justify-end p-4 mb-4"},Be={key:1},Se={key:2},Ee=e.defineComponent({__name:"PTable",props:{title:{},idField:{default:"id"},item:{default:{}},columns:{},modalWidth:{default:800},hiddenAdd:{type:Boolean,default:!1},hiddenEdit:{type:Boolean,default:!1},hiddenDelete:{type:Boolean,default:!1},onLoad:{},onGet:{},onOpenModal:{},onCloseModal:{},onSave:{},onDelete:{}},setup(o,{expose:a}){const c=e.ref(null),u=n.useDialog(),m=n.useMessage(),i=e.ref(!1),b=e.ref([]),_=e.ref([]),P=e.ref(null),V=e.ref(!1),r=e.ref(!1),y=e.ref(!1),d=e.ref({}),C=e.ref({page:1,itemCount:0,pageSize:10,pageSizes:[10,20,30,50],showSizePicker:!0,onChange:async p=>{C.value.page=p,await D()},onUpdatePageSize:async p=>{C.value.pageSize=p,await D()}}),g=o,f=p=>{const t=l=>{const s=[];return p&&p.forEach(N=>{N.key!=="edit"&&N.key!=="delete"&&s.push({label:N.name,key:N.key,props:{onClick:()=>N.action(l)}})}),s};return{title:"操作",key:"actions",width:100,fixed:"right",render:l=>{let s=[];if(g.hiddenEdit||s.push({label:"编辑",key:"edit",props:{onClick:()=>X(l)}}),g.hiddenDelete||s.push({label:"删除",key:"delete",props:{onClick:()=>E(l)}}),s=[...s,...t(l)],!(s.length<=0))return e.h(n.NDropdown,{options:s,placement:"bottom-start"},{default:()=>e.h(n.NButton,{size:"small",type:"primary"},{default:()=>["操作",e.h(n.NIcon,()=>e.h(S.MoreOutlined))]})})}}},w=e.computed(()=>{const p=g.columns.filter(l=>l.key!="action").map(l=>({title:l.title,key:l.key,width:l.width,fixed:l.fixed??!1,render:l.render,ellipsis:l.ellipsis?{tooltip:!0}:!1})),t=g.columns.reduce((l,s)=>s.key==="action"?s:l,void 0)?.action;return t&&t?.length>0||!g.hiddenDelete||!g.hiddenEdit?[{type:"selection",fixed:"left"},...p,f(t)]:[{type:"selection",fixed:"left"},...p]}),h=async()=>{await D()},E=p=>{x([p])},B=()=>{const p=A();x(p)},x=p=>{p&&p.length>0&&u.warning({title:"警告",content:"删除数据不可恢复, 确认删除吗?",positiveText:"确定",negativeText:"取消",onPositiveClick:async()=>{if(g.onDelete)try{await g.onDelete(p)?(D(),m.success("删除成功")):m.error("删除失败")}catch(t){m.error(t.message)}}})},q=()=>{P.value=null,H()},X=async p=>{P.value=ke.cloneDeep(p),H(P.value,async()=>{g.onGet&&(P.value=await g.onGet(p[g.idField])),Object.assign(g.item,P.value)})},W=async()=>{if(g.onSave)try{y.value=!0,(V.value?await g.onSave(void 0,e.toRaw(g.item)):await g.onSave(P.value[g.idField],e.toRaw(g.item)))&&(z(),await D())}catch(p){m.error(p.message)}finally{y.value=!1}},H=async(p,t)=>{g.onOpenModal?.(p),await t?.(),p?(V.value=!1,r.value=!0):(r.value=!1,V.value=!0)},z=()=>{P.value=null,te(g.item),Object.assign(g.item,{...e.toRaw(d.value)}),g.onCloseModal?.(g.item),V.value=!1,r.value=!1},A=()=>b.value?_.value.filter(t=>b.value.includes(t.id)).map(t=>e.toRaw(t)):[],G=()=>A()[0],J=()=>e.toRaw(_.value),D=async()=>{if(!i.value){i.value=!0;try{if(g.onLoad){var{data:p,total:t}=await g.onLoad(C.value.page,C.value.pageSize);_.value=p,C.value.itemCount=t}}catch(l){m.error(l.message)}finally{i.value=!1}}},Z=e.computed(()=>{const p=e.unref(c);if(!p)return;const t=p?.$el,l=t.querySelector(".n-data-table-thead "),{bottomIncludeBody:s}=j(l),N=48;let L=12,T=24;const R=t.querySelector(".n-data-table__pagination");if(R){const U=R.offsetHeight;L+=U||0}else L+=28;return s-(N+L+T)}),F=p=>!p||!p.getBoundingClientRect?0:p.getBoundingClientRect(),j=p=>{const t=document.documentElement,l=t.scrollLeft,s=t.scrollTop,N=t.clientLeft,L=t.clientTop,T=window.pageXOffset,R=window.pageYOffset,K=F(p),{left:U,top:Vt,width:Bt,height:St}=K,Et=(T||l)-(N||0),Lt=(R||s)-(L||0),Tt=U+T,$t=Vt+R,v=Tt-Et,ee=$t-Lt,we=window.document.documentElement.clientWidth,be=window.document.documentElement.clientHeight;return{left:v,top:ee,right:we-Bt-v,bottom:be-St-ee,rightIncludeBody:we-v,bottomIncludeBody:be-ee}},Q=()=>{d.value={...e.toRaw(g.item)}};return e.onMounted(async()=>{Q(),await D()}),a({getData:J,getSelectedRow:G,getSelectedRows:A,closeModal:z,refreshData:D,resetPage:()=>{C.value.page=1}}),(p,t)=>{const l=n.NTooltip,s=n.NSpace,N=n.NDataTable,L=n.NModal;return e.openBlock(),e.createBlock(e.unref(n.NCard),{bordered:!1,"content-class":"!p-0","header-class":"!px-0 !pt-0"},{header:e.withCtx(()=>[e.createVNode(s,{justify:"space-between",align:"center",class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("span",xe,e.toDisplayString(o.title),1),e.createVNode(s,null,{default:e.withCtx(()=>[o.hiddenAdd?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(l,{key:0,trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(n.NIcon),{size:"18",class:"mr-1 cursor-pointer hover:text-blue-600",onClick:q},{default:e.withCtx(()=>[e.createVNode(e.unref(S.PlusSquareOutlined))]),_:1})]),default:e.withCtx(()=>[t[3]||(t[3]=e.createElementVNode("span",null,"新增",-1))]),_:1})),o.hiddenDelete?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(l,{key:1,trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(n.NIcon),{size:"18",class:"mr-1 cursor-pointer hover:text-blue-600",onClick:B},{default:e.withCtx(()=>[e.createVNode(e.unref(S.DeleteOutlined))]),_:1})]),default:e.withCtx(()=>[t[4]||(t[4]=e.createElementVNode("span",null,"删除",-1))]),_:1})),e.createVNode(l,{trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(n.NIcon),{size:"18",class:"cursor-pointer hover:text-blue-600",onClick:h},{default:e.withCtx(()=>[e.createVNode(e.unref(S.ReloadOutlined))]),_:1})]),default:e.withCtx(()=>[t[5]||(t[5]=e.createElementVNode("span",null,"刷新",-1))]),_:1})]),_:1})]),_:1})]),default:e.withCtx(()=>[e.createElementVNode("div",Pe,[p.$slots.toolbar?(e.openBlock(),e.createElementBlock("div",Ve,[e.renderSlot(p.$slots,"toolbar")])):e.createCommentVNode("",!0),e.createVNode(N,{remote:"",ref_key:"$table",ref:c,"checked-row-keys":b.value,"onUpdate:checkedRowKeys":t[0]||(t[0]=T=>b.value=T),"max-height":Z.value,loading:i.value,bordered:!1,"single-line":!1,columns:w.value,data:_.value,pagination:C.value,"row-key":T=>T[o.idField]},null,8,["checked-row-keys","max-height","loading","columns","data","pagination","row-key"]),p.$slots.addModal?(e.openBlock(),e.createElementBlock("div",Be,[e.createVNode(L,{title:"新增",preset:"card",show:V.value,"onUpdate:show":t[1]||(t[1]=T=>V.value=T),"header-class":"bg-gray-50",closable:!1,"close-on-esc":!1,"mask-closable":!1,draggable:!0,style:e.normalizeStyle({width:`${o.modalWidth}px`})},{action:e.withCtx(()=>[e.createVNode(s,{justify:"end"},{default:e.withCtx(()=>[e.createVNode(e.unref(n.NButton),{type:"primary",loading:y.value,onClick:W},{default:e.withCtx(()=>[...t[6]||(t[6]=[e.createTextVNode("保存",-1)])]),_:1},8,["loading"]),e.createVNode(e.unref(n.NButton),{onClick:z},{default:e.withCtx(()=>[...t[7]||(t[7]=[e.createTextVNode("取消",-1)])]),_:1})]),_:1})]),default:e.withCtx(()=>[e.renderSlot(p.$slots,"addModal")]),_:3},8,["show","style"])])):e.createCommentVNode("",!0),p.$slots.editModal?(e.openBlock(),e.createElementBlock("div",Se,[e.createVNode(L,{title:"编辑",show:r.value,"onUpdate:show":t[2]||(t[2]=T=>r.value=T),preset:"card","header-class":"bg-gray-50",closable:!1,"close-on-esc":!1,"mask-closable":!1,draggable:!0,style:e.normalizeStyle({width:`${o.modalWidth}px`})},{action:e.withCtx(()=>[e.createVNode(s,{justify:"end"},{default:e.withCtx(()=>[e.createVNode(e.unref(n.NButton),{type:"primary",loading:y.value,onClick:W},{default:e.withCtx(()=>[...t[8]||(t[8]=[e.createTextVNode("保存",-1)])]),_:1},8,["loading"]),e.createVNode(e.unref(n.NButton),{onClick:z},{default:e.withCtx(()=>[...t[9]||(t[9]=[e.createTextVNode("取消",-1)])]),_:1})]),_:1})]),default:e.withCtx(()=>[e.renderSlot(p.$slots,"editModal")]),_:3},8,["show","style"])])):e.createCommentVNode("",!0)])]),_:3})}}}),$=o=>{const a=o;return a.install=function(c){c.component(a.__name,o)},o},oe=$(Ee),Le=["Redirect","RedirectSon","login"],I=Y.defineStore("p-layout",()=>{const o=e.reactive({collapsed:!1,title:"输入项目名称",logo:"https://picsum.photos/id/1/100/100",avatar:"",uid:"",uname:"",tabs:[],cacheTabs:!1,enableLanguage:!1});return{state:o,initTabs:f=>{f.sort((w,h)=>(h.meta.affix?1:0)-(w.meta.affix?1:0)),o.tabs=f},addTab:f=>Le.includes(f.name)?!1:(o.tabs?.some(h=>h.fullPath==f.fullPath)||o.tabs?.push(f),!0),closeCurrentTab:f=>{const w=o.tabs.findIndex(h=>h.fullPath==f.fullPath);o.tabs.splice(w,1)},closeAllTabs:()=>{o.tabs=o.tabs.filter(f=>f?.meta?.affix??!1)},closeOtherTabs:f=>{o.tabs=o.tabs.filter(w=>w.fullPath==f.fullPath||(w?.meta?.affix??!1))},closeLeftTabs:f=>{const w=o.tabs.findIndex(h=>h.fullPath==f.fullPath);o.tabs=o.tabs.filter((h,E)=>E>=w||(h?.meta?.affix??!1))},closeRightTabs:f=>{const w=o.tabs.findIndex(h=>h.fullPath==f.fullPath);o.tabs=o.tabs.filter((h,E)=>E<=w||(h?.meta?.affix??!1))},collapse:()=>{o.collapsed=!o.collapsed},setTitle:f=>{o.title=f},setLogo:f=>{o.logo=f},setUser:(f,w)=>{o.uid=f,o.uname=w},setSettingPages:f=>{o.settingPages=f},setLogout:f=>{o.logout=f},enableLanguage:f=>{o.enableLanguage=f}}}),Te={class:"logo"},$e=e.defineComponent({__name:"PLogo",setup(o){const a=I();return(c,u)=>(e.openBlock(),e.createElementBlock("div",Te,[e.createVNode(e.unref(n.NAvatar),{color:"var(--color-logo)",size:32,src:e.unref(a).state.logo,class:e.normalizeClass({"mr-2":!e.unref(a).state.collapsed})},null,8,["src","class"]),e.withDirectives(e.createElementVNode("h1",{class:"font-bold ease-in-out ml-2 logo-size"},e.toDisplayString(e.unref(a).state.title),513),[[e.vShow,!e.unref(a).state.collapsed]])]))}}),M=(o,a)=>{const c=o.__vccOpts||o;for(const[u,m]of a)c[u]=m;return c},Oe=M($e,[["__scopeId","data-v-e48aeefa"]]),Me={translationApiUrl:"https://translate.zvo.cn/api",defaultLanguage:"chinese",currentLanguage:"",options:[],initLanguages:async()=>[],selectLanguage:async o=>{}},ne=Y.defineStore("language",()=>{const o=e.ref(Me),a=async()=>(o.value.options.length===0&&(o.value.options=await o.value.initLanguages()),o.value.options);return{select:async r=>{if(o.value.currentLanguage===r)return;const y=(await a()).find(d=>d.key===r);y&&(o.value.currentLanguage=y.key,o.value.selectLanguage(y))},selectLanguageCallback:async r=>{o.value.selectLanguage=r},initLanguagesCallback:async r=>{o.value.initLanguages=r},getLanguages:a,getCurrentLanguage:async()=>{if(o.value.currentLanguage)return(await a()).find(r=>r.key===o.value.currentLanguage)},setTranslationApiUrl:r=>{o.value.translationApiUrl=r},getTranslationApiUrl:()=>o.value.translationApiUrl,getDefaultLanguage:()=>o.value.defaultLanguage?o.value.defaultLanguage:"chinese_simplified",setDefaultLanguage:r=>{(r==="Chinese"||r==="chinese")&&(r="chinese_simplified"),o.value.defaultLanguage=r}}}),De={key:1},ae=e.defineComponent({__name:"PLanguage",setup(o){const{select:a,getLanguages:c,getCurrentLanguage:u,getDefaultLanguage:m,getTranslationApiUrl:i}=ne(),b=e.ref(),_=e.ref([]),P=async r=>await a(r),V=async()=>{const r=window.translate;r&&(r.selectLanguageTag.show=!1,r.selectLanguageTag.languages=(await c()).map(y=>y.key).join(","),r.ignore.class.push("ignore-translate-flag"),r.ignore.id.push("ignore-translation"),r.language.setLocal(m()),r.request.api.translate="api/v1/translation",r.request.api.connectTest="api/v1/translation/connect-test",r.request.api.init="api/v1/translation/init",r.request.api.language="api/v1/translation/language",r.request.setHost(i()),r.request.listener.start(),r.listener.start(),r.whole.enableAll(),r.execute())};return e.onMounted(async()=>{await e.nextTick(),await V(),b.value=await u(),_.value=await c()}),(r,y)=>{const d=n.NIcon,C=n.NButton;return _.value.length>0?(e.openBlock(),e.createBlock(e.unref(n.NDropdown),{key:0,id:"ignore-translation",placement:"bottom-start",trigger:"hover",class:"flex flex-col justify-center h-full ignore",onSelect:P,options:_.value},{default:e.withCtx(()=>[e.createVNode(C,{quaternary:"",type:"info"},{default:e.withCtx(()=>[b.value?(e.openBlock(),e.createElementBlock("label",De,e.toDisplayString(b.value?.label),1)):(e.openBlock(),e.createBlock(d,{key:0,size:"18"},{default:e.withCtx(()=>[...y[0]||(y[0]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",viewBox:"0 0 512 512"},[e.createElementVNode("path",{d:"M478.33 433.6l-90-218a22 22 0 0 0-40.67 0l-90 218a22 22 0 1 0 40.67 16.79L316.66 406h102.67l18.33 44.39A22 22 0 0 0 458 464a22 22 0 0 0 20.32-30.4zM334.83 362L368 281.65L401.17 362z",fill:"currentColor"}),e.createElementVNode("path",{d:"M267.84 342.92a22 22 0 0 0-4.89-30.7c-.2-.15-15-11.13-36.49-34.73c39.65-53.68 62.11-114.75 71.27-143.49H330a22 22 0 0 0 0-44H214V70a22 22 0 0 0-44 0v20H54a22 22 0 0 0 0 44h197.25c-9.52 26.95-27.05 69.5-53.79 108.36c-31.41-41.68-43.08-68.65-43.17-68.87a22 22 0 0 0-40.58 17c.58 1.38 14.55 34.23 52.86 83.93c.92 1.19 1.83 2.35 2.74 3.51c-39.24 44.35-77.74 71.86-93.85 80.74a22 22 0 1 0 21.07 38.63c2.16-1.18 48.6-26.89 101.63-85.59c22.52 24.08 38 35.44 38.93 36.1a22 22 0 0 0 30.75-4.9z",fill:"currentColor"})],-1)])]),_:1}))]),_:1})]),_:1},8,["options"])):e.createCommentVNode("",!0)}}}),Re={class:"layout-header"},Ie={class:"layout-header-left"},ze={class:"link-text"},Ae={key:1,class:"link-text"},qe={class:"layout-header-right"},je={key:0,class:"layout-header-trigger-min"},We={class:"layout-header-trigger layout-header-trigger-min"},He={class:"layout-header-trigger layout-header-trigger-min"},Fe={class:"avatar"},Ke=M(e.defineComponent({__name:"PHeader",setup(o){const a=n.useMessage(),c=n.useDialog(),u=I(),m=O.useRouter(),i=O.useRoute(),b=e.inject("reloadPage"),_=f=>m.push({name:f}),P=e.computed(()=>V(i.matched)),V=f=>f.map(w=>{const h={key:w.name,label:w.meta.title,icon:w.meta.icon,meta:w.meta,disabled:w.path==="/",children:void 0};return w.children&&w.children.length>0&&(h.children=V(w.children)),h}),r=e.ref(!1),y=()=>{document.fullscreenElement?document.exitFullscreen&&(document.exitFullscreen(),r.value=!1):(document.documentElement.requestFullscreen(),r.value=!0)},d=e.computed(()=>{const f=[];return f.push({label:"退出登录",key:"logout"}),u.state.settingPages&&u.state.settingPages.length>0&&u.state.settingPages.forEach(w=>{f.push({label:w.title,key:w.route})}),f}),C=f=>{f==="logout"?g():m.push({name:f})},g=()=>{c.info({title:"提示",content:"您确定要退出登录吗",positiveText:"确定",negativeText:"取消",onPositiveClick:async()=>{if(u.state.logout)try{await u.state.logout(),localStorage.removeItem("TABS-ROUTES"),a.error("退出成功")}catch(f){console.error(f),a.error("退出登录失败")}finally{location.reload()}else a.error("没有配置登出接口, 请配置[usePLayoutStore.logout]方法")},onNegativeClick:()=>{}})};return(f,w)=>{const h=n.NTooltip,E=n.NDivider,B=n.NAvatar;return e.openBlock(),e.createElementBlock("div",Re,[e.createElementVNode("div",Ie,[e.createElementVNode("div",{class:"ml-1 layout-header-trigger layout-header-trigger-min",onClick:w[0]||(w[0]=(...x)=>e.unref(u).collapse&&e.unref(u).collapse(...x))},[e.unref(u).state.collapsed?(e.openBlock(),e.createBlock(e.unref(n.NIcon),{key:0,size:"18"},{default:e.withCtx(()=>[e.createVNode(e.unref(S.MenuUnfoldOutlined))]),_:1})):(e.openBlock(),e.createBlock(e.unref(n.NIcon),{key:1,size:"18"},{default:e.withCtx(()=>[e.createVNode(e.unref(S.MenuFoldOutlined))]),_:1}))]),e.createElementVNode("div",{class:"mr-1 layout-header-trigger layout-header-trigger-min",onClick:w[1]||(w[1]=(...x)=>e.unref(b)&&e.unref(b)(...x))},[e.createVNode(e.unref(n.NIcon),{size:"18"},{default:e.withCtx(()=>[e.createVNode(e.unref(S.ReloadOutlined))]),_:1})]),e.createVNode(e.unref(n.NBreadcrumb),null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(P.value,x=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:x.label},[x.label?(e.openBlock(),e.createBlock(e.unref(n.NBreadcrumbItem),{key:0},{default:e.withCtx(()=>[x.children&&x.children.length?(e.openBlock(),e.createBlock(e.unref(n.NDropdown),{key:0,options:x.children,onSelect:_},{default:e.withCtx(()=>[e.createElementVNode("span",ze,[x.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(x.icon),{key:0})):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(x.label),1)])]),_:2},1032,["options"])):(e.openBlock(),e.createElementBlock("span",Ae,[x.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(x.icon),{key:0})):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(x.label),1)]))]),_:2},1024)):e.createCommentVNode("",!0)],64))),128))]),_:1})]),e.createElementVNode("div",qe,[e.unref(u).state.enableLanguage?(e.openBlock(),e.createElementBlock("div",je,[e.createVNode(ae)])):e.createCommentVNode("",!0),e.createElementVNode("div",We,[e.createVNode(h,{placement:"bottom"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(n.NIcon),{size:"18",onClick:e.withModifiers(y,["stop"])},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createBlock(e.unref(S.FullscreenExitOutlined),{key:1})):(e.openBlock(),e.createBlock(e.unref(S.FullscreenOutlined),{key:0}))]),_:1})]),default:e.withCtx(()=>[w[2]||(w[2]=e.createElementVNode("span",null,"全屏",-1))]),_:1})]),e.createElementVNode("div",He,[e.createVNode(e.unref(n.NDropdown),{trigger:"hover",onSelect:C,options:d.value},{default:e.withCtx(()=>[e.createElementVNode("div",Fe,[e.createElementVNode("span",null,e.toDisplayString(e.unref(u).state.uname),1),e.createVNode(E,{vertical:""}),e.createVNode(B,{round:"",src:e.unref(u).state.avatar},null,8,["src"])])]),_:1},8,["options"])])])])}}}),[["__scopeId","data-v-563e4e55"]]),Ye={class:"mt-1"},Xe=e.defineComponent({__name:"PContent",props:{loading:{type:Boolean,default:!1}},setup(o){return(a,c)=>{const u=e.resolveComponent("RouterView");return e.openBlock(),e.createElementBlock("div",Ye,[o.loading?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(u,{key:0},{default:e.withCtx(({Component:m,route:i})=>[(e.openBlock(),e.createBlock(e.KeepAlive,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(m),{key:i.fullPath}))],1024))]),_:1}))])}}}),Ge={class:"tabs-view-main"},Je=["id","onClick","onContextmenu"],Ze={class:"tabs-close"},Qe={class:"tabs-close-btn"},Ue=M(e.defineComponent({__name:"PTabs",setup(o){e.useCssVars(t=>({v141ddb06:c.value,cf709148:u.value}));const a=n.useThemeVars(),c=e.computed(()=>a.value.cardColor),u=e.computed(()=>a.value.textColor1),m=n.useMessage(),i=O.useRoute(),b=O.useRouter(),_=e.ref(null),P=e.ref(null),V=e.ref(!1),r=I(),y=e.computed(()=>r.state.tabs),d=e.reactive({activeKey:i.fullPath,scrollable:!0,dropdownX:0,dropdownY:0,showDropdown:!1,isMultiHeaderFixed:!0,multiTabsSetting:!0}),C=["Login","Redirect","ErrorPage"],g=t=>{const{fullPath:l,hash:s,meta:N,name:L,params:T,path:R,query:K}=t;return{fullPath:l,hash:s,meta:N,name:L,params:T,path:R,query:K}},f=e.computed(()=>{const s=r.state.collapsed?"64px":"272px";return{left:s,width:`calc(100% - ${s})`}}),w=e.computed(()=>{const t=y.value.length<=1;return[{label:"刷新当前",key:"1",icon:()=>e.h(n.NIcon,null,{default:()=>e.h(S.ReloadOutlined)})},{label:"关闭当前",key:"2",disabled:V.value||t,icon:()=>e.h(n.NIcon,null,{default:()=>e.h(S.CloseOutlined)})},{label:"关闭其他",key:"3",disabled:t,icon:()=>e.h(n.NIcon,null,{default:()=>e.h(S.ColumnWidthOutlined)})},{label:"关闭全部",key:"4",disabled:t,icon:()=>e.h(n.NIcon,null,{default:()=>e.h(S.MinusOutlined)})}]}),h=()=>{let t=[];const l=g(i);try{if(r.state.cacheTabs){const s=localStorage.getItem("TABS_ROUTES");t=s?JSON.parse(s):[l]}}catch{t=[l]}finally{return t}},E=t=>{const l=b.getRoutes();t.forEach(s=>{const N=l.find(L=>L.path===s.path);N&&(s.meta=N.meta||s.meta,s.name=N.name||s.name)}),r.state.cacheTabs&&localStorage.setItem("TABS_ROUTES",JSON.stringify(t))},B=()=>{const t=h();E(t),r.initTabs(t)},x=async t=>{if(await e.nextTick(),!_.value)return;const l=_.value.offsetWidth,s=_.value.scrollWidth;l<s?(d.scrollable=!0,t&&[..._.value.querySelectorAll(".tabs-card-scroll-item")||[]].forEach(L=>{L.id===`tag${d.activeKey.split("/").join("/")}`&&L.scrollIntoView&&L.scrollIntoView()})):d.scrollable=!1},q=t=>!(t.draggedContext.element.meta.affix||t.relatedContext.element.meta.affix),X=()=>{let t;t=Ne(),t.listenTo(P.value,()=>x(!0))},W=t=>{const{fullPath:l}=t;if(l===i.fullPath||(d.activeKey=l,!t))return;const{replace:s}=b;toString.call(t),s(t).catch(console.error)},H=(t,l)=>{t.preventDefault(),V.value=l.path==="/home",d.showDropdown=!1,e.nextTick().then(()=>{d.showDropdown=!0,d.dropdownX=t.clientX,d.dropdownY=t.clientY})},z=()=>{if(i.meta.keepAlive){var t=b.currentRoute.value.matched.find(l=>l.name==i.name);t&&t.components?.default?.name}},A=t=>{if(y.value.length===1)return m.warning("这已经是最后一页,不能再关闭了!");if(z(),r.closeCurrentTab(t),d.activeKey===t.fullPath){const l=y.value[Math.max(0,y.value.length-1)];d.activeKey=l.fullPath,b.push(l)}x()},G=t=>{const{fullPath:l}=t,s=y.value.find(N=>N.fullPath==l);A(s)},J=t=>{r.closeOtherTabs(t),d.activeKey=t.fullPath,b.replace(t.fullPath),x()},D=()=>{r.closeAllTabs(),x()},Z=e.inject("reloadPage"),F=t=>{switch(t){case"1":Z();break;case"2":A(i);break;case"3":J(i);break;case"4":D();break}x(),d.showDropdown=!1},j=(t,l)=>{const s=_.value.scrollLeft,N=l>0&&s+l>=t||l<0&&s+l<=t?t:s+l;if(_.value&&_.value.scrollTo(N,0),N!==t)return window.requestAnimationFrame(()=>j(t,l))},Q=()=>{const t=_.value.offsetWidth,l=_.value.scrollLeft;if(!l)return;const s=l>t?l-t:0;j(s,(s-l)/20)},p=()=>{const t=_.value.offsetWidth,l=_.value.scrollWidth,s=_.value.scrollLeft;if(l-s<=t)return;const N=l-s>t*2?s+t:l-t;j(N,(N-s)/20)};return window.addEventListener("beforeunload",()=>{localStorage.setItem("TABS_ROUTES",JSON.stringify(y.value))}),window.addEventListener("scroll",t=>{let l=t.target.scrollTop||document.documentElement.scrollTop||window.pageYOffset||document.body.scrollTop;d.isMultiHeaderFixed=l>=64},!0),e.watch(()=>i.fullPath,t=>{C.includes(i.name)||(d.activeKey=t,r.addTab(g(i)),x(!0))},{immediate:!0}),B(),e.onMounted(()=>X()),(t,l)=>(e.openBlock(),e.createElementBlock("div",{class:"box-border tabs-view tabs-view-fix tabs-view-default-background",style:e.normalizeStyle(f.value)},[e.createElementVNode("div",Ge,[e.createElementVNode("div",{ref_key:"navWrap",ref:P,class:e.normalizeClass(["tabs-card",{"tabs-card-scrollable":d.scrollable}])},[e.createElementVNode("span",{class:e.normalizeClass(["tabs-card-prev",{"tabs-card-prev-hide":!d.scrollable}]),onClick:Q},[e.createVNode(e.unref(n.NIcon),{size:"16",color:"#515a6e"},{default:e.withCtx(()=>[e.createVNode(e.unref(S.LeftOutlined))]),_:1})],2),e.createElementVNode("span",{class:e.normalizeClass(["tabs-card-next",{"tabs-card-next-hide":!d.scrollable}]),onClick:p},[e.createVNode(e.unref(n.NIcon),{size:"16",color:"#515a6e"},{default:e.withCtx(()=>[e.createVNode(e.unref(S.RightOutlined))]),_:1})],2),e.createElementVNode("div",{ref_key:"navScroll",ref:_,class:"tabs-card-scroll"},[e.createVNode(e.unref(Ce),{list:y.value,animation:"300","item-key":"fullPath",class:"flex",move:q},{item:e.withCtx(({element:s})=>[e.createElementVNode("div",{id:`tag${s.fullPath.split("/").join("/")}`,class:e.normalizeClass(["tabs-card-scroll-item",{"active-item":d.activeKey===s.fullPath}]),onClick:e.withModifiers(N=>W(s),["stop"]),onContextmenu:N=>H(N,s)},[e.createElementVNode("span",null,e.toDisplayString(s.meta.title),1),s.meta.affix?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(n.NIcon),{key:0,size:"14",onClick:e.withModifiers(N=>G(s),["stop"])},{default:e.withCtx(()=>[e.createVNode(e.unref(S.CloseOutlined))]),_:1},8,["onClick"]))],42,Je)]),_:1},8,["list"])],512)],2),e.createElementVNode("div",Ze,[e.createVNode(e.unref(n.NDropdown),{trigger:"hover",onSelect:F,placement:"bottom-end",options:w.value},{default:e.withCtx(()=>[e.createElementVNode("div",Qe,[e.createVNode(e.unref(n.NIcon),{size:"16",color:"#515a6e"},{default:e.withCtx(()=>[e.createVNode(e.unref(S.DownOutlined))]),_:1})])]),_:1},8,["options"])]),e.createVNode(e.unref(n.NDropdown),{show:d.showDropdown,x:d.dropdownX,y:d.dropdownY,onClickoutside:l[0]||(l[0]=s=>d.showDropdown=!1),placement:"bottom-start",onSelect:F,options:w.value},null,8,["show","x","y","options"])])],4))}}),[["__scopeId","data-v-48b3be2d"]]),ve=e.defineComponent({__name:"PMenus",setup(o){const a=O.useRoute(),c=O.useRouter(),u=I(),m=e.ref(a.name),i=e.ref(a.matched&&a.matched.length?a.matched.map(d=>d.name):[]),b=e.ref([]),_=d=>{/http(s)?:/.test(d)?window.open(d):c.push({name:d})},P=d=>{if(!d)return;const C=d.find(g=>i.value.indexOf(g)===-1);i.value=C?[C]:[]},V=()=>{const d=a.matched;i.value=d.map(g=>g.name);const C=a.meta?.activeMenu||"";m.value=C||a.name},r=(d,C=[],g=!1)=>{const f=[],w=["/:path(.*)*","/redirect","/redirect/:path(.*)","/login","/oidc-callback"];if(!d||d.length===0)return f;d=d.sort((h,E)=>{let B=(E.children?.length?1:0)-(h.children?.length?1:0);return B===0&&(B=(h.meta?.sort??0)-(E.meta?.sort??0)),B});for(const h of d){if(g||(h.meta?.hidden||!1)==!0||w.includes(h.path)){C.push(h.name),h.children&&h.children.length>0&&r(h.children,C,!0);continue}const E=h.meta?.alwaysShow!=!0&&h?.children?.filter(q=>!q?.meta?.hidden)?.length===1,B=E?h.children[0]:h,x={key:B.name,label:B.meta?.title,affix:B.meta?.affix,sort:B.meta?.sort,path:B.path,redirect:B.redirect,icon:E?h.meta?.icon:B.meta?.icon,permissions:B.meta?.permissions,meta:B.meta,children:void 0};if(!C.includes(h.name)){if(f.push(x),C.push(h.name),E){r(h.children,C,g);continue}h.children&&h.children.length>0&&(x.children=r(h.children,C,g))}}return f},y=()=>{const d=c.getRoutes();b.value=r(d)};return e.watch(()=>a.fullPath,()=>{V()}),e.onMounted(()=>{y(),V()}),(d,C)=>(e.openBlock(),e.createBlock(e.unref(n.NMenu),{class:"h-full",inverted:"",mode:"vertical",options:b.value,collapsed:e.unref(u).state.collapsed,"collapsed-width":64,"collapsed-icon-size":20,indent:24,"expanded-keys":i.value,value:m.value,"onUpdate:value":_,"onUpdate:expandedKeys":P},null,8,["options","collapsed","expanded-keys","value"]))}}),et={class:"layout-content-main layout-content-main-fix"},tt={class:"main-view main-view-fix"},ot=M(e.defineComponent({__name:"PLayout",setup(o){const a=I(),c=e.ref(!1),u=()=>{c.value=!0,e.nextTick(()=>c.value=!1)};return e.provide("reloadPage",u),(m,i)=>{const b=n.NBackTop;return e.openBlock(),e.createBlock(e.unref(n.NLayout),{"has-sider":"",class:"layout",position:"absolute"},{default:e.withCtx(()=>[e.createVNode(e.unref(n.NLayoutSider),{class:"layout-sider",inverted:"","show-trigger":"bar",position:"absolute","collapse-mode":"width","trigger-class":"!-right-5","collapsed-trigger-class":"!-right-5",collapsed:e.unref(a).state.collapsed,"native-scrollbar":!1,"collapsed-width":64,onCollapse:e.unref(a).collapse,onExpand:e.unref(a).collapse},{default:e.withCtx(()=>[e.createVNode(e.unref(n.NFlex),{vertical:""},{default:e.withCtx(()=>[e.createVNode(Oe),e.createVNode(ve)]),_:1})]),_:1},8,["collapsed","onCollapse","onExpand"]),e.createVNode(e.unref(n.NLayout),null,{default:e.withCtx(()=>[e.createVNode(e.unref(n.NLayoutHeader),{position:"absolute"},{default:e.withCtx(()=>[e.createVNode(Ke)]),_:1}),e.createVNode(e.unref(n.NLayoutContent),{class:"layout-content layout-default-background"},{default:e.withCtx(()=>[e.createElementVNode("div",et,[e.createVNode(Ue),e.createElementVNode("div",tt,[e.createVNode(Xe,{loading:c.value},null,8,["loading"])])])]),_:1}),e.createVNode(b,{right:20,class:"z-50"})]),_:1})]),_:1})}}}),[["__scopeId","data-v-0bac2e7d"]]),nt={};function at(o,a){const c=e.resolveComponent("router-view");return e.openBlock(),e.createBlock(c)}const le=$(M(nt,[["render",at]])),se=$(ot),re=$(e.defineComponent({__name:"PApplication",props:{theme:{},themeOverrides:{default:{common:{primaryColor:"#2d8cf0",primaryColorHover:"#3c9bff",primaryColorPressed:"#3c9bff",primaryColorSuppl:"#2d8cf0"},LoadingBar:{colorLoading:"#2d8cf0"}}}},setup(o){return(a,c)=>{const u=n.NConfigProvider;return e.openBlock(),e.createBlock(u,{locale:e.unref(n.zhCN),theme:o.theme,"theme-overrides":o.themeOverrides,"date-locale":e.unref(n.dateZhCN)},{default:e.withCtx(()=>[e.createVNode(e.unref(n.NDialogProvider),null,{default:e.withCtx(()=>[e.createVNode(e.unref(n.NNotificationProvider),null,{default:e.withCtx(()=>[e.createVNode(e.unref(n.NMessageProvider),null,{default:e.withCtx(()=>[e.renderSlot(a.$slots,"default")]),_:3})]),_:3})]),_:3})]),_:3},8,["locale","theme","theme-overrides","date-locale"])}}})),ce=$(e.defineComponent({__name:"PModal",props:{saveBtnText:{default:"保存"},closable:{type:Boolean,default:!1},title:{},width:{default:800},height:{default:500},visible:{type:Boolean},loading:{type:Boolean},onSave:{},onClose:{}},emits:["update:visible","update:loading"],setup(o,{expose:a,emit:c}){const u=n.useMessage(),m=o,i=c,b=async()=>{i("update:loading",!0);try{m.onSave&&await m.onSave()&&_()}catch(y){u.error(y.message)}finally{i("update:loading",!1)}},_=()=>{i("update:visible",!1),i("update:loading",!1)},P=async()=>{try{m.onClose?await m.onClose()&&_():_()}catch(y){u.error(y.message),i("update:loading",!1)}};return a({open:()=>{i("update:visible",!0),i("update:loading",!1)},close:()=>{i("update:visible",!1),i("update:loading",!1)}}),(y,d)=>{const C=n.NText,g=n.NButton,f=n.NSpace;return e.openBlock(),e.createBlock(e.unref(n.NModal),e.mergeProps({ref:"$modal",preset:"card"},y.$attrs,{"header-class":"bg-gray-50",show:m.visible,draggable:!0,closable:!1,"close-on-esc":!1,"mask-closable":!1,bordered:!1,style:{width:`${m.width}px`},onClose:_}),{header:e.withCtx(()=>[y.$slots.header?e.renderSlot(y.$slots,"header",{key:0}):m.title?(e.openBlock(),e.createBlock(C,{key:1},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.title),1)]),_:1})):e.createCommentVNode("",!0)]),"header-extra":e.withCtx(()=>[e.renderSlot(y.$slots,"header-extra")]),default:e.withCtx(()=>[e.createElementVNode("div",{class:"overflow-y-auto overflow-hidden mt-5",style:e.normalizeStyle({maxHeight:`${m.height}px`})},[e.renderSlot(y.$slots,"default")],4)]),footer:e.withCtx(()=>[e.renderSlot(y.$slots,"footer")]),action:e.withCtx(()=>[e.createVNode(f,{justify:"end"},{default:e.withCtx(()=>[e.createVNode(g,{type:"primary",loading:o.loading,onClick:b},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.saveBtnText),1)]),_:1},8,["loading"]),e.renderSlot(y.$slots,"action-extra",{loading:o.loading}),e.createVNode(g,{onClick:P,loading:o.loading},{default:e.withCtx(()=>[...d[0]||(d[0]=[e.createTextVNode("取消",-1)])]),_:1},8,["loading"])]),_:3})]),_:3},16,["show","style"])}}})),ie=$(ae),lt=e.defineComponent({name:"Redirect",setup(){const o=O.useRoute(),a=O.useRouter();return e.onBeforeMount(()=>{const{params:c,query:u}=o,{path:m}=c;a.replace({path:"/"+(Array.isArray(m)?m.join("/"):m),query:u})}),()=>React.createElement(n.NEmpty,null)}}),de=$(lt),st={class:"frame"},rt=["src"],fe=$(M(e.defineComponent({__name:"PIframe",setup(o){const a=O.useRoute(),c=e.ref(!1),u=e.ref(null),m=e.ref("");e.unref(a.meta)?.frameSrc&&(m.value=e.unref(a.meta)?.frameSrc);function i(){c.value=!1}function b(){e.nextTick(()=>{const _=e.unref(u);if(!_)return;const P=_;P.attachEvent?P.attachEvent("onload",()=>{i()}):_.onload=()=>{i()}})}return e.onMounted(()=>{c.value=!0,b()}),(_,P)=>{const V=n.NSpin;return e.openBlock(),e.createBlock(V,{show:c.value},{default:e.withCtx(()=>[e.createElementVNode("div",st,[e.createElementVNode("iframe",{src:m.value,class:"frame-iframe",ref_key:"frameRef",ref:u},null,8,rt)])]),_:1},8,["show"])}}}),[["__scopeId","data-v-161a378e"]])),ct={class:"border border-gray-100 rounded-lg"},it={class:"text-xl font-semibold text-gray-800"},dt={class:"text-sm text-gray-500 mt-1"},pe=$(e.defineComponent({__name:"PPage",props:{icon:{type:Object,required:!1,default:()=>S.AlertOutlined},title:{type:String,required:!0},subtitle:{type:String,required:!1}},setup(o){const a=o;return(c,u)=>{const m=n.NIcon,i=n.NAvatar,b=n.NSpace,_=n.NCard;return e.openBlock(),e.createElementBlock("div",ct,[a.title?(e.openBlock(),e.createBlock(_,{key:0,class:"mb-4",bordered:!1,"content-class":"py-4"},{default:e.withCtx(()=>[e.createVNode(b,{align:"center",justify:"space-between"},{default:e.withCtx(()=>[e.createVNode(b,{align:"center",size:16},{default:e.withCtx(()=>[a.icon?(e.openBlock(),e.createBlock(i,{key:0,size:48,class:"bg-linear-to-br from-blue-500 to-indigo-600"},{default:e.withCtx(()=>[e.createVNode(m,{size:24,component:a.icon,color:"#fff"},null,8,["component"])]),_:1})):e.createCommentVNode("",!0),e.createElementVNode("div",null,[e.createElementVNode("div",it,e.toDisplayString(a.title),1),e.createElementVNode("div",dt,e.toDisplayString(a.subtitle??a.title+"主页"),1)])]),_:1})]),_:1})]),_:1})):e.createCommentVNode("",!0),c.$slots.search?(e.openBlock(),e.createBlock(_,{key:1,class:"mb-4",bordered:!1,"content-class":"py-4"},{default:e.withCtx(()=>[e.renderSlot(c.$slots,"search")]),_:3})):e.createCommentVNode("",!0),c.$slots.default?(e.openBlock(),e.createBlock(_,{key:2,bordered:!1,"content-class":"!py-0"},{default:e.withCtx(()=>[e.renderSlot(c.$slots,"default")]),_:3})):e.createCommentVNode("",!0)])}}})),ft={},pt={class:"flex flex-col justify-center page-container"};function mt(o,a){const c=n.NResult;return e.openBlock(),e.createElementBlock("div",pt,[e.createVNode(c,{status:"500",title:"服务器错误",description:"抱歉,服务器出错了"})])}const gt=M(ft,[["render",mt],["__scopeId","data-v-89cb65c7"]]),ht={},ut={class:"flex flex-col justify-center page-container"};function _t(o,a){const c=n.NResult;return e.openBlock(),e.createElementBlock("div",ut,[e.createVNode(c,{status:"404",title:"资源不存在",description:"抱歉,你访问的页面不存在"})])}const yt=M(ht,[["render",_t],["__scopeId","data-v-99232671"]]),wt={},bt={class:"flex flex-col justify-center page-container"};function kt(o,a){const c=n.NResult;return e.openBlock(),e.createElementBlock("div",bt,[e.createVNode(c,{status:"403",title:"禁止访问",description:"抱歉,你无权访问该页面"})])}const Nt=M(wt,[["render",kt],["__scopeId","data-v-3baa9c16"]]),me=$(gt),ge=$(yt),he=$(Nt),ue=Y.defineStore("app-oidc",()=>{const o=e.reactive({});return{setCallback:i=>o.callback=i,callCallback:async i=>await o.callback?.(i),setError:i=>o.error=i,callError:async(i,b)=>await o.error?.(i,b)}}),Ct={class:"view-auth-callback"},_e=$(M(e.defineComponent({__name:"POidc",setup(o){const a=O.useRouter(),{callCallback:c,callError:u}=ue();return e.onMounted(async()=>{try{await c(a)}catch(m){await u(a,m)}}),(m,i)=>(e.openBlock(),e.createElementBlock("div",Ct,[...i[0]||(i[0]=[e.createElementVNode("div",{class:"view-auth-callback-content"},[e.createElementVNode("div",{class:"view-auth-callback-spinner"},[e.createElementVNode("span",null,"正在处理登录回调...")])],-1)])]))}}),[["__scopeId","data-v-167395ae"]])),xt=Object.freeze(Object.defineProperty({__proto__:null,P403:he,P404:ge,P500:me,PApplication:re,PEmptyLayout:le,PIframe:fe,PLanguage:ie,PLayout:se,PModal:ce,POidc:_e,PPage:pe,PRedirect:de,PTable:oe},Symbol.toStringTag,{value:"Module"})),ye=(o,a)=>(Object.values(xt).forEach(c=>{c.install&&o.use(c)}),a?.(),o),Pt={install:ye};k.P403=he,k.P404=ge,k.P500=me,k.PApplication=re,k.PEmptyLayout=le,k.PIframe=fe,k.PLanguage=ie,k.PLayout=se,k.PModal=ce,k.POidc=_e,k.PPage=pe,k.PRedirect=de,k.PTable=oe,k.default=Pt,k.install=ye,k.useLanguageStore=ne,k.useLayoutStore=I,k.useOidcStore=ue,Object.defineProperties(k,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
1
+ (function(k,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("naive-ui"),require("vue"),require("@vicons/antd"),require("lodash"),require("pinia"),require("vue-router"),require("element-resize-detector"),require("vuedraggable")):typeof define=="function"&&define.amd?define(["exports","naive-ui","vue","@vicons/antd","lodash","pinia","vue-router","element-resize-detector","vuedraggable"],n):(k=typeof globalThis<"u"?globalThis:k||self,n(k.naiveplus={},k.naiveUi,k.Vue,k.antd,k.lodash,k.pinia,k.vueRouter,k.elementResizeDetectorMaker,k.Draggable))})(this,(function(k,n,e,S,ke,Y,O,Ne,Ce){"use strict";const te=o=>{Object.keys(o).forEach(a=>{const c=o[a];Array.isArray(c)?o[a]=[]:c!==null&&typeof c=="object"?te(c):o[a]=void 0})},xe={class:"text-lg font-medium"},Pe={id:"data-content"},Ve={key:0,class:"rounded-lg bg-gray-50 flex flex-row gap-2 items-center justify-end p-4 mb-4"},Be={key:1},Se={key:2},Ee=e.defineComponent({__name:"PTable",props:{title:{},idField:{default:"id"},item:{default:{}},columns:{},modalWidth:{default:800},hiddenAdd:{type:Boolean,default:!1},hiddenEdit:{type:Boolean,default:!1},hiddenDelete:{type:Boolean,default:!1},onLoad:{},onGet:{},onOpenModal:{},onCloseModal:{},onSave:{},onDelete:{}},setup(o,{expose:a}){const c=e.ref(null),u=n.useDialog(),m=n.useMessage(),i=e.ref(!1),b=e.ref([]),_=e.ref([]),P=e.ref(null),V=e.ref(!1),r=e.ref(!1),y=e.ref(!1),d=e.ref({}),C=e.ref({page:1,itemCount:0,pageSize:10,pageSizes:[10,20,30,50],showSizePicker:!0,onChange:async p=>{C.value.page=p,await D()},onUpdatePageSize:async p=>{C.value.pageSize=p,await D()}}),g=o,f=p=>{const t=l=>{const s=[];return p&&p.forEach(N=>{N.key!=="edit"&&N.key!=="delete"&&s.push({label:N.name,key:N.key,props:{onClick:()=>N.action(l)}})}),s};return{title:"操作",key:"actions",width:100,fixed:"right",render:l=>{let s=[];if(g.hiddenEdit||s.push({label:"编辑",key:"edit",props:{onClick:()=>X(l)}}),g.hiddenDelete||s.push({label:"删除",key:"delete",props:{onClick:()=>E(l)}}),s=[...s,...t(l)],!(s.length<=0))return e.h(n.NDropdown,{options:s,placement:"bottom-start"},{default:()=>e.h(n.NButton,{size:"small",type:"primary"},{default:()=>["操作",e.h(n.NIcon,()=>e.h(S.MoreOutlined))]})})}}},w=e.computed(()=>{const p=g.columns.filter(l=>l.key!="action").map(l=>({title:l.title,key:l.key,width:l.width,fixed:l.fixed??!1,render:l.render,ellipsis:l.ellipsis?{tooltip:!0}:!1})),t=g.columns.reduce((l,s)=>s.key==="action"?s:l,void 0)?.action;return t&&t?.length>0||!g.hiddenDelete||!g.hiddenEdit?[{type:"selection",fixed:"left"},...p,f(t)]:[{type:"selection",fixed:"left"},...p]}),h=async()=>{await D()},E=p=>{x([p])},B=()=>{const p=A();x(p)},x=p=>{p&&p.length>0&&u.warning({title:"警告",content:"删除数据不可恢复, 确认删除吗?",positiveText:"确定",negativeText:"取消",onPositiveClick:async()=>{if(g.onDelete)try{await g.onDelete(p)?(D(),m.success("删除成功")):m.error("删除失败")}catch(t){m.error(t.message)}}})},q=()=>{P.value=null,H()},X=async p=>{P.value=ke.cloneDeep(p),H(P.value,async()=>{g.onGet&&(P.value=await g.onGet(p[g.idField])),Object.assign(g.item,P.value)})},W=async()=>{if(g.onSave)try{y.value=!0,(V.value?await g.onSave(void 0,e.toRaw(g.item)):await g.onSave(P.value[g.idField],e.toRaw(g.item)))&&(z(),await D())}catch(p){m.error(p.message)}finally{y.value=!1}},H=async(p,t)=>{g.onOpenModal?.(p),await t?.(),p?(V.value=!1,r.value=!0):(r.value=!1,V.value=!0)},z=()=>{P.value=null,te(g.item),Object.assign(g.item,{...e.toRaw(d.value)}),g.onCloseModal?.(g.item),V.value=!1,r.value=!1},A=()=>b.value?_.value.filter(t=>b.value.includes(t.id)).map(t=>e.toRaw(t)):[],G=()=>A()[0],J=()=>e.toRaw(_.value),D=async()=>{if(!i.value){i.value=!0;try{if(g.onLoad){var{data:p,total:t}=await g.onLoad(C.value.page,C.value.pageSize);_.value=p,C.value.itemCount=t}}catch(l){m.error(l.message)}finally{i.value=!1}}},Z=e.computed(()=>{const p=e.unref(c);if(!p)return;const t=p?.$el,l=t.querySelector(".n-data-table-thead "),{bottomIncludeBody:s}=j(l),N=48;let L=12,T=24;const R=t.querySelector(".n-data-table__pagination");if(R){const U=R.offsetHeight;L+=U||0}else L+=28;return s-(N+L+T)}),F=p=>!p||!p.getBoundingClientRect?0:p.getBoundingClientRect(),j=p=>{const t=document.documentElement,l=t.scrollLeft,s=t.scrollTop,N=t.clientLeft,L=t.clientTop,T=window.pageXOffset,R=window.pageYOffset,K=F(p),{left:U,top:Vt,width:Bt,height:St}=K,Et=(T||l)-(N||0),Lt=(R||s)-(L||0),Tt=U+T,$t=Vt+R,v=Tt-Et,ee=$t-Lt,we=window.document.documentElement.clientWidth,be=window.document.documentElement.clientHeight;return{left:v,top:ee,right:we-Bt-v,bottom:be-St-ee,rightIncludeBody:we-v,bottomIncludeBody:be-ee}},Q=()=>{d.value={...e.toRaw(g.item)}};return e.onMounted(async()=>{Q(),await D()}),a({getData:J,getSelectedRow:G,getSelectedRows:A,closeModal:z,refreshData:D,resetPage:()=>{C.value.page=1}}),(p,t)=>{const l=n.NTooltip,s=n.NSpace,N=n.NDataTable,L=n.NModal;return e.openBlock(),e.createBlock(e.unref(n.NCard),{bordered:!1},{header:e.withCtx(()=>[e.createVNode(s,{justify:"space-between",align:"center",class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("span",xe,e.toDisplayString(o.title),1),e.createVNode(s,null,{default:e.withCtx(()=>[o.hiddenAdd?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(l,{key:0,trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(n.NIcon),{size:"18",class:"mr-1 cursor-pointer hover:text-blue-600",onClick:q},{default:e.withCtx(()=>[e.createVNode(e.unref(S.PlusSquareOutlined))]),_:1})]),default:e.withCtx(()=>[t[3]||(t[3]=e.createElementVNode("span",null,"新增",-1))]),_:1})),o.hiddenDelete?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(l,{key:1,trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(n.NIcon),{size:"18",class:"mr-1 cursor-pointer hover:text-blue-600",onClick:B},{default:e.withCtx(()=>[e.createVNode(e.unref(S.DeleteOutlined))]),_:1})]),default:e.withCtx(()=>[t[4]||(t[4]=e.createElementVNode("span",null,"删除",-1))]),_:1})),e.createVNode(l,{trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(n.NIcon),{size:"18",class:"cursor-pointer hover:text-blue-600",onClick:h},{default:e.withCtx(()=>[e.createVNode(e.unref(S.ReloadOutlined))]),_:1})]),default:e.withCtx(()=>[t[5]||(t[5]=e.createElementVNode("span",null,"刷新",-1))]),_:1})]),_:1})]),_:1})]),default:e.withCtx(()=>[e.createElementVNode("div",Pe,[p.$slots.toolbar?(e.openBlock(),e.createElementBlock("div",Ve,[e.renderSlot(p.$slots,"toolbar")])):e.createCommentVNode("",!0),e.createVNode(N,{remote:"",ref_key:"$table",ref:c,"checked-row-keys":b.value,"onUpdate:checkedRowKeys":t[0]||(t[0]=T=>b.value=T),"max-height":Z.value,loading:i.value,bordered:!1,"single-line":!1,columns:w.value,data:_.value,pagination:C.value,"row-key":T=>T[o.idField]},null,8,["checked-row-keys","max-height","loading","columns","data","pagination","row-key"]),p.$slots.addModal?(e.openBlock(),e.createElementBlock("div",Be,[e.createVNode(L,{title:"新增",preset:"card",show:V.value,"onUpdate:show":t[1]||(t[1]=T=>V.value=T),"header-class":"bg-gray-50",closable:!1,"close-on-esc":!1,"mask-closable":!1,draggable:!0,style:e.normalizeStyle({width:`${o.modalWidth}px`})},{action:e.withCtx(()=>[e.createVNode(s,{justify:"end"},{default:e.withCtx(()=>[e.createVNode(e.unref(n.NButton),{type:"primary",loading:y.value,onClick:W},{default:e.withCtx(()=>[...t[6]||(t[6]=[e.createTextVNode("保存",-1)])]),_:1},8,["loading"]),e.createVNode(e.unref(n.NButton),{onClick:z},{default:e.withCtx(()=>[...t[7]||(t[7]=[e.createTextVNode("取消",-1)])]),_:1})]),_:1})]),default:e.withCtx(()=>[e.renderSlot(p.$slots,"addModal")]),_:3},8,["show","style"])])):e.createCommentVNode("",!0),p.$slots.editModal?(e.openBlock(),e.createElementBlock("div",Se,[e.createVNode(L,{title:"编辑",show:r.value,"onUpdate:show":t[2]||(t[2]=T=>r.value=T),preset:"card","header-class":"bg-gray-50",closable:!1,"close-on-esc":!1,"mask-closable":!1,draggable:!0,style:e.normalizeStyle({width:`${o.modalWidth}px`})},{action:e.withCtx(()=>[e.createVNode(s,{justify:"end"},{default:e.withCtx(()=>[e.createVNode(e.unref(n.NButton),{type:"primary",loading:y.value,onClick:W},{default:e.withCtx(()=>[...t[8]||(t[8]=[e.createTextVNode("保存",-1)])]),_:1},8,["loading"]),e.createVNode(e.unref(n.NButton),{onClick:z},{default:e.withCtx(()=>[...t[9]||(t[9]=[e.createTextVNode("取消",-1)])]),_:1})]),_:1})]),default:e.withCtx(()=>[e.renderSlot(p.$slots,"editModal")]),_:3},8,["show","style"])])):e.createCommentVNode("",!0)])]),_:3})}}}),$=o=>{const a=o;return a.install=function(c){c.component(a.__name,o)},o},oe=$(Ee),Le=["Redirect","RedirectSon","login"],I=Y.defineStore("p-layout",()=>{const o=e.reactive({collapsed:!1,title:"输入项目名称",logo:"https://picsum.photos/id/1/100/100",avatar:"",uid:"",uname:"",tabs:[],cacheTabs:!1,enableLanguage:!1});return{state:o,initTabs:f=>{f.sort((w,h)=>(h.meta.affix?1:0)-(w.meta.affix?1:0)),o.tabs=f},addTab:f=>Le.includes(f.name)?!1:(o.tabs?.some(h=>h.fullPath==f.fullPath)||o.tabs?.push(f),!0),closeCurrentTab:f=>{const w=o.tabs.findIndex(h=>h.fullPath==f.fullPath);o.tabs.splice(w,1)},closeAllTabs:()=>{o.tabs=o.tabs.filter(f=>f?.meta?.affix??!1)},closeOtherTabs:f=>{o.tabs=o.tabs.filter(w=>w.fullPath==f.fullPath||(w?.meta?.affix??!1))},closeLeftTabs:f=>{const w=o.tabs.findIndex(h=>h.fullPath==f.fullPath);o.tabs=o.tabs.filter((h,E)=>E>=w||(h?.meta?.affix??!1))},closeRightTabs:f=>{const w=o.tabs.findIndex(h=>h.fullPath==f.fullPath);o.tabs=o.tabs.filter((h,E)=>E<=w||(h?.meta?.affix??!1))},collapse:()=>{o.collapsed=!o.collapsed},setTitle:f=>{o.title=f},setLogo:f=>{o.logo=f},setUser:(f,w)=>{o.uid=f,o.uname=w},setSettingPages:f=>{o.settingPages=f},setLogout:f=>{o.logout=f},enableLanguage:f=>{o.enableLanguage=f}}}),Te={class:"logo"},$e=e.defineComponent({__name:"PLogo",setup(o){const a=I();return(c,u)=>(e.openBlock(),e.createElementBlock("div",Te,[e.createVNode(e.unref(n.NAvatar),{color:"var(--color-logo)",size:32,src:e.unref(a).state.logo,class:e.normalizeClass({"mr-2":!e.unref(a).state.collapsed})},null,8,["src","class"]),e.withDirectives(e.createElementVNode("h1",{class:"font-bold ease-in-out ml-2 logo-size"},e.toDisplayString(e.unref(a).state.title),513),[[e.vShow,!e.unref(a).state.collapsed]])]))}}),M=(o,a)=>{const c=o.__vccOpts||o;for(const[u,m]of a)c[u]=m;return c},Oe=M($e,[["__scopeId","data-v-e48aeefa"]]),Me={translationApiUrl:"https://translate.zvo.cn/api",defaultLanguage:"chinese",currentLanguage:"",options:[],initLanguages:async()=>[],selectLanguage:async o=>{}},ne=Y.defineStore("language",()=>{const o=e.ref(Me),a=async()=>(o.value.options.length===0&&(o.value.options=await o.value.initLanguages()),o.value.options);return{select:async r=>{if(o.value.currentLanguage===r)return;const y=(await a()).find(d=>d.key===r);y&&(o.value.currentLanguage=y.key,o.value.selectLanguage(y))},selectLanguageCallback:async r=>{o.value.selectLanguage=r},initLanguagesCallback:async r=>{o.value.initLanguages=r},getLanguages:a,getCurrentLanguage:async()=>{if(o.value.currentLanguage)return(await a()).find(r=>r.key===o.value.currentLanguage)},setTranslationApiUrl:r=>{o.value.translationApiUrl=r},getTranslationApiUrl:()=>o.value.translationApiUrl,getDefaultLanguage:()=>o.value.defaultLanguage?o.value.defaultLanguage:"chinese_simplified",setDefaultLanguage:r=>{(r==="Chinese"||r==="chinese")&&(r="chinese_simplified"),o.value.defaultLanguage=r}}}),De={key:1},ae=e.defineComponent({__name:"PLanguage",setup(o){const{select:a,getLanguages:c,getCurrentLanguage:u,getDefaultLanguage:m,getTranslationApiUrl:i}=ne(),b=e.ref(),_=e.ref([]),P=async r=>await a(r),V=async()=>{const r=window.translate;r&&(r.selectLanguageTag.show=!1,r.selectLanguageTag.languages=(await c()).map(y=>y.key).join(","),r.ignore.class.push("ignore-translate-flag"),r.ignore.id.push("ignore-translation"),r.language.setLocal(m()),r.request.api.translate="api/v1/translation",r.request.api.connectTest="api/v1/translation/connect-test",r.request.api.init="api/v1/translation/init",r.request.api.language="api/v1/translation/language",r.request.setHost(i()),r.request.listener.start(),r.listener.start(),r.whole.enableAll(),r.execute())};return e.onMounted(async()=>{await e.nextTick(),await V(),b.value=await u(),_.value=await c()}),(r,y)=>{const d=n.NIcon,C=n.NButton;return _.value.length>0?(e.openBlock(),e.createBlock(e.unref(n.NDropdown),{key:0,id:"ignore-translation",placement:"bottom-start",trigger:"hover",class:"flex flex-col justify-center h-full ignore",onSelect:P,options:_.value},{default:e.withCtx(()=>[e.createVNode(C,{quaternary:"",type:"info"},{default:e.withCtx(()=>[b.value?(e.openBlock(),e.createElementBlock("label",De,e.toDisplayString(b.value?.label),1)):(e.openBlock(),e.createBlock(d,{key:0,size:"18"},{default:e.withCtx(()=>[...y[0]||(y[0]=[e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",viewBox:"0 0 512 512"},[e.createElementVNode("path",{d:"M478.33 433.6l-90-218a22 22 0 0 0-40.67 0l-90 218a22 22 0 1 0 40.67 16.79L316.66 406h102.67l18.33 44.39A22 22 0 0 0 458 464a22 22 0 0 0 20.32-30.4zM334.83 362L368 281.65L401.17 362z",fill:"currentColor"}),e.createElementVNode("path",{d:"M267.84 342.92a22 22 0 0 0-4.89-30.7c-.2-.15-15-11.13-36.49-34.73c39.65-53.68 62.11-114.75 71.27-143.49H330a22 22 0 0 0 0-44H214V70a22 22 0 0 0-44 0v20H54a22 22 0 0 0 0 44h197.25c-9.52 26.95-27.05 69.5-53.79 108.36c-31.41-41.68-43.08-68.65-43.17-68.87a22 22 0 0 0-40.58 17c.58 1.38 14.55 34.23 52.86 83.93c.92 1.19 1.83 2.35 2.74 3.51c-39.24 44.35-77.74 71.86-93.85 80.74a22 22 0 1 0 21.07 38.63c2.16-1.18 48.6-26.89 101.63-85.59c22.52 24.08 38 35.44 38.93 36.1a22 22 0 0 0 30.75-4.9z",fill:"currentColor"})],-1)])]),_:1}))]),_:1})]),_:1},8,["options"])):e.createCommentVNode("",!0)}}}),Re={class:"layout-header"},Ie={class:"layout-header-left"},ze={class:"link-text"},Ae={key:1,class:"link-text"},qe={class:"layout-header-right"},je={key:0,class:"layout-header-trigger-min"},We={class:"layout-header-trigger layout-header-trigger-min"},He={class:"layout-header-trigger layout-header-trigger-min"},Fe={class:"avatar"},Ke=M(e.defineComponent({__name:"PHeader",setup(o){const a=n.useMessage(),c=n.useDialog(),u=I(),m=O.useRouter(),i=O.useRoute(),b=e.inject("reloadPage"),_=f=>m.push({name:f}),P=e.computed(()=>V(i.matched)),V=f=>f.map(w=>{const h={key:w.name,label:w.meta.title,icon:w.meta.icon,meta:w.meta,disabled:w.path==="/",children:void 0};return w.children&&w.children.length>0&&(h.children=V(w.children)),h}),r=e.ref(!1),y=()=>{document.fullscreenElement?document.exitFullscreen&&(document.exitFullscreen(),r.value=!1):(document.documentElement.requestFullscreen(),r.value=!0)},d=e.computed(()=>{const f=[];return f.push({label:"退出登录",key:"logout"}),u.state.settingPages&&u.state.settingPages.length>0&&u.state.settingPages.forEach(w=>{f.push({label:w.title,key:w.route})}),f}),C=f=>{f==="logout"?g():m.push({name:f})},g=()=>{c.info({title:"提示",content:"您确定要退出登录吗",positiveText:"确定",negativeText:"取消",onPositiveClick:async()=>{if(u.state.logout)try{await u.state.logout(),localStorage.removeItem("TABS-ROUTES"),a.error("退出成功")}catch(f){console.error(f),a.error("退出登录失败")}finally{location.reload()}else a.error("没有配置登出接口, 请配置[usePLayoutStore.logout]方法")},onNegativeClick:()=>{}})};return(f,w)=>{const h=n.NTooltip,E=n.NDivider,B=n.NAvatar;return e.openBlock(),e.createElementBlock("div",Re,[e.createElementVNode("div",Ie,[e.createElementVNode("div",{class:"ml-1 layout-header-trigger layout-header-trigger-min",onClick:w[0]||(w[0]=(...x)=>e.unref(u).collapse&&e.unref(u).collapse(...x))},[e.unref(u).state.collapsed?(e.openBlock(),e.createBlock(e.unref(n.NIcon),{key:0,size:"18"},{default:e.withCtx(()=>[e.createVNode(e.unref(S.MenuUnfoldOutlined))]),_:1})):(e.openBlock(),e.createBlock(e.unref(n.NIcon),{key:1,size:"18"},{default:e.withCtx(()=>[e.createVNode(e.unref(S.MenuFoldOutlined))]),_:1}))]),e.createElementVNode("div",{class:"mr-1 layout-header-trigger layout-header-trigger-min",onClick:w[1]||(w[1]=(...x)=>e.unref(b)&&e.unref(b)(...x))},[e.createVNode(e.unref(n.NIcon),{size:"18"},{default:e.withCtx(()=>[e.createVNode(e.unref(S.ReloadOutlined))]),_:1})]),e.createVNode(e.unref(n.NBreadcrumb),null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(P.value,x=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:x.label},[x.label?(e.openBlock(),e.createBlock(e.unref(n.NBreadcrumbItem),{key:0},{default:e.withCtx(()=>[x.children&&x.children.length?(e.openBlock(),e.createBlock(e.unref(n.NDropdown),{key:0,options:x.children,onSelect:_},{default:e.withCtx(()=>[e.createElementVNode("span",ze,[x.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(x.icon),{key:0})):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(x.label),1)])]),_:2},1032,["options"])):(e.openBlock(),e.createElementBlock("span",Ae,[x.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(x.icon),{key:0})):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(x.label),1)]))]),_:2},1024)):e.createCommentVNode("",!0)],64))),128))]),_:1})]),e.createElementVNode("div",qe,[e.unref(u).state.enableLanguage?(e.openBlock(),e.createElementBlock("div",je,[e.createVNode(ae)])):e.createCommentVNode("",!0),e.createElementVNode("div",We,[e.createVNode(h,{placement:"bottom"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(n.NIcon),{size:"18",onClick:e.withModifiers(y,["stop"])},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createBlock(e.unref(S.FullscreenExitOutlined),{key:1})):(e.openBlock(),e.createBlock(e.unref(S.FullscreenOutlined),{key:0}))]),_:1})]),default:e.withCtx(()=>[w[2]||(w[2]=e.createElementVNode("span",null,"全屏",-1))]),_:1})]),e.createElementVNode("div",He,[e.createVNode(e.unref(n.NDropdown),{trigger:"hover",onSelect:C,options:d.value},{default:e.withCtx(()=>[e.createElementVNode("div",Fe,[e.createElementVNode("span",null,e.toDisplayString(e.unref(u).state.uname),1),e.createVNode(E,{vertical:""}),e.createVNode(B,{round:"",src:e.unref(u).state.avatar},null,8,["src"])])]),_:1},8,["options"])])])])}}}),[["__scopeId","data-v-563e4e55"]]),Ye={class:"mt-1"},Xe=e.defineComponent({__name:"PContent",props:{loading:{type:Boolean,default:!1}},setup(o){return(a,c)=>{const u=e.resolveComponent("RouterView");return e.openBlock(),e.createElementBlock("div",Ye,[o.loading?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(u,{key:0},{default:e.withCtx(({Component:m,route:i})=>[(e.openBlock(),e.createBlock(e.KeepAlive,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(m),{key:i.fullPath}))],1024))]),_:1}))])}}}),Ge={class:"tabs-view-main"},Je=["id","onClick","onContextmenu"],Ze={class:"tabs-close"},Qe={class:"tabs-close-btn"},Ue=M(e.defineComponent({__name:"PTabs",setup(o){e.useCssVars(t=>({v141ddb06:c.value,cf709148:u.value}));const a=n.useThemeVars(),c=e.computed(()=>a.value.cardColor),u=e.computed(()=>a.value.textColor1),m=n.useMessage(),i=O.useRoute(),b=O.useRouter(),_=e.ref(null),P=e.ref(null),V=e.ref(!1),r=I(),y=e.computed(()=>r.state.tabs),d=e.reactive({activeKey:i.fullPath,scrollable:!0,dropdownX:0,dropdownY:0,showDropdown:!1,isMultiHeaderFixed:!0,multiTabsSetting:!0}),C=["Login","Redirect","ErrorPage"],g=t=>{const{fullPath:l,hash:s,meta:N,name:L,params:T,path:R,query:K}=t;return{fullPath:l,hash:s,meta:N,name:L,params:T,path:R,query:K}},f=e.computed(()=>{const s=r.state.collapsed?"64px":"272px";return{left:s,width:`calc(100% - ${s})`}}),w=e.computed(()=>{const t=y.value.length<=1;return[{label:"刷新当前",key:"1",icon:()=>e.h(n.NIcon,null,{default:()=>e.h(S.ReloadOutlined)})},{label:"关闭当前",key:"2",disabled:V.value||t,icon:()=>e.h(n.NIcon,null,{default:()=>e.h(S.CloseOutlined)})},{label:"关闭其他",key:"3",disabled:t,icon:()=>e.h(n.NIcon,null,{default:()=>e.h(S.ColumnWidthOutlined)})},{label:"关闭全部",key:"4",disabled:t,icon:()=>e.h(n.NIcon,null,{default:()=>e.h(S.MinusOutlined)})}]}),h=()=>{let t=[];const l=g(i);try{if(r.state.cacheTabs){const s=localStorage.getItem("TABS_ROUTES");t=s?JSON.parse(s):[l]}}catch{t=[l]}finally{return t}},E=t=>{const l=b.getRoutes();t.forEach(s=>{const N=l.find(L=>L.path===s.path);N&&(s.meta=N.meta||s.meta,s.name=N.name||s.name)}),r.state.cacheTabs&&localStorage.setItem("TABS_ROUTES",JSON.stringify(t))},B=()=>{const t=h();E(t),r.initTabs(t)},x=async t=>{if(await e.nextTick(),!_.value)return;const l=_.value.offsetWidth,s=_.value.scrollWidth;l<s?(d.scrollable=!0,t&&[..._.value.querySelectorAll(".tabs-card-scroll-item")||[]].forEach(L=>{L.id===`tag${d.activeKey.split("/").join("/")}`&&L.scrollIntoView&&L.scrollIntoView()})):d.scrollable=!1},q=t=>!(t.draggedContext.element.meta.affix||t.relatedContext.element.meta.affix),X=()=>{let t;t=Ne(),t.listenTo(P.value,()=>x(!0))},W=t=>{const{fullPath:l}=t;if(l===i.fullPath||(d.activeKey=l,!t))return;const{replace:s}=b;toString.call(t),s(t).catch(console.error)},H=(t,l)=>{t.preventDefault(),V.value=l.path==="/home",d.showDropdown=!1,e.nextTick().then(()=>{d.showDropdown=!0,d.dropdownX=t.clientX,d.dropdownY=t.clientY})},z=()=>{if(i.meta.keepAlive){var t=b.currentRoute.value.matched.find(l=>l.name==i.name);t&&t.components?.default?.name}},A=t=>{if(y.value.length===1)return m.warning("这已经是最后一页,不能再关闭了!");if(z(),r.closeCurrentTab(t),d.activeKey===t.fullPath){const l=y.value[Math.max(0,y.value.length-1)];d.activeKey=l.fullPath,b.push(l)}x()},G=t=>{const{fullPath:l}=t,s=y.value.find(N=>N.fullPath==l);A(s)},J=t=>{r.closeOtherTabs(t),d.activeKey=t.fullPath,b.replace(t.fullPath),x()},D=()=>{r.closeAllTabs(),x()},Z=e.inject("reloadPage"),F=t=>{switch(t){case"1":Z();break;case"2":A(i);break;case"3":J(i);break;case"4":D();break}x(),d.showDropdown=!1},j=(t,l)=>{const s=_.value.scrollLeft,N=l>0&&s+l>=t||l<0&&s+l<=t?t:s+l;if(_.value&&_.value.scrollTo(N,0),N!==t)return window.requestAnimationFrame(()=>j(t,l))},Q=()=>{const t=_.value.offsetWidth,l=_.value.scrollLeft;if(!l)return;const s=l>t?l-t:0;j(s,(s-l)/20)},p=()=>{const t=_.value.offsetWidth,l=_.value.scrollWidth,s=_.value.scrollLeft;if(l-s<=t)return;const N=l-s>t*2?s+t:l-t;j(N,(N-s)/20)};return window.addEventListener("beforeunload",()=>{localStorage.setItem("TABS_ROUTES",JSON.stringify(y.value))}),window.addEventListener("scroll",t=>{let l=t.target.scrollTop||document.documentElement.scrollTop||window.pageYOffset||document.body.scrollTop;d.isMultiHeaderFixed=l>=64},!0),e.watch(()=>i.fullPath,t=>{C.includes(i.name)||(d.activeKey=t,r.addTab(g(i)),x(!0))},{immediate:!0}),B(),e.onMounted(()=>X()),(t,l)=>(e.openBlock(),e.createElementBlock("div",{class:"box-border tabs-view tabs-view-fix tabs-view-default-background",style:e.normalizeStyle(f.value)},[e.createElementVNode("div",Ge,[e.createElementVNode("div",{ref_key:"navWrap",ref:P,class:e.normalizeClass(["tabs-card",{"tabs-card-scrollable":d.scrollable}])},[e.createElementVNode("span",{class:e.normalizeClass(["tabs-card-prev",{"tabs-card-prev-hide":!d.scrollable}]),onClick:Q},[e.createVNode(e.unref(n.NIcon),{size:"16",color:"#515a6e"},{default:e.withCtx(()=>[e.createVNode(e.unref(S.LeftOutlined))]),_:1})],2),e.createElementVNode("span",{class:e.normalizeClass(["tabs-card-next",{"tabs-card-next-hide":!d.scrollable}]),onClick:p},[e.createVNode(e.unref(n.NIcon),{size:"16",color:"#515a6e"},{default:e.withCtx(()=>[e.createVNode(e.unref(S.RightOutlined))]),_:1})],2),e.createElementVNode("div",{ref_key:"navScroll",ref:_,class:"tabs-card-scroll"},[e.createVNode(e.unref(Ce),{list:y.value,animation:"300","item-key":"fullPath",class:"flex",move:q},{item:e.withCtx(({element:s})=>[e.createElementVNode("div",{id:`tag${s.fullPath.split("/").join("/")}`,class:e.normalizeClass(["tabs-card-scroll-item",{"active-item":d.activeKey===s.fullPath}]),onClick:e.withModifiers(N=>W(s),["stop"]),onContextmenu:N=>H(N,s)},[e.createElementVNode("span",null,e.toDisplayString(s.meta.title),1),s.meta.affix?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(n.NIcon),{key:0,size:"14",onClick:e.withModifiers(N=>G(s),["stop"])},{default:e.withCtx(()=>[e.createVNode(e.unref(S.CloseOutlined))]),_:1},8,["onClick"]))],42,Je)]),_:1},8,["list"])],512)],2),e.createElementVNode("div",Ze,[e.createVNode(e.unref(n.NDropdown),{trigger:"hover",onSelect:F,placement:"bottom-end",options:w.value},{default:e.withCtx(()=>[e.createElementVNode("div",Qe,[e.createVNode(e.unref(n.NIcon),{size:"16",color:"#515a6e"},{default:e.withCtx(()=>[e.createVNode(e.unref(S.DownOutlined))]),_:1})])]),_:1},8,["options"])]),e.createVNode(e.unref(n.NDropdown),{show:d.showDropdown,x:d.dropdownX,y:d.dropdownY,onClickoutside:l[0]||(l[0]=s=>d.showDropdown=!1),placement:"bottom-start",onSelect:F,options:w.value},null,8,["show","x","y","options"])])],4))}}),[["__scopeId","data-v-48b3be2d"]]),ve=e.defineComponent({__name:"PMenus",setup(o){const a=O.useRoute(),c=O.useRouter(),u=I(),m=e.ref(a.name),i=e.ref(a.matched&&a.matched.length?a.matched.map(d=>d.name):[]),b=e.ref([]),_=d=>{/http(s)?:/.test(d)?window.open(d):c.push({name:d})},P=d=>{if(!d)return;const C=d.find(g=>i.value.indexOf(g)===-1);i.value=C?[C]:[]},V=()=>{const d=a.matched;i.value=d.map(g=>g.name);const C=a.meta?.activeMenu||"";m.value=C||a.name},r=(d,C=[],g=!1)=>{const f=[],w=["/:path(.*)*","/redirect","/redirect/:path(.*)","/login","/oidc-callback"];if(!d||d.length===0)return f;d=d.sort((h,E)=>{let B=(E.children?.length?1:0)-(h.children?.length?1:0);return B===0&&(B=(h.meta?.sort??0)-(E.meta?.sort??0)),B});for(const h of d){if(g||(h.meta?.hidden||!1)==!0||w.includes(h.path)){C.push(h.name),h.children&&h.children.length>0&&r(h.children,C,!0);continue}const E=h.meta?.alwaysShow!=!0&&h?.children?.filter(q=>!q?.meta?.hidden)?.length===1,B=E?h.children[0]:h,x={key:B.name,label:B.meta?.title,affix:B.meta?.affix,sort:B.meta?.sort,path:B.path,redirect:B.redirect,icon:E?h.meta?.icon:B.meta?.icon,permissions:B.meta?.permissions,meta:B.meta,children:void 0};if(!C.includes(h.name)){if(f.push(x),C.push(h.name),E){r(h.children,C,g);continue}h.children&&h.children.length>0&&(x.children=r(h.children,C,g))}}return f},y=()=>{const d=c.getRoutes();b.value=r(d)};return e.watch(()=>a.fullPath,()=>{V()}),e.onMounted(()=>{y(),V()}),(d,C)=>(e.openBlock(),e.createBlock(e.unref(n.NMenu),{class:"h-full",inverted:"",mode:"vertical",options:b.value,collapsed:e.unref(u).state.collapsed,"collapsed-width":64,"collapsed-icon-size":20,indent:24,"expanded-keys":i.value,value:m.value,"onUpdate:value":_,"onUpdate:expandedKeys":P},null,8,["options","collapsed","expanded-keys","value"]))}}),et={class:"layout-content-main layout-content-main-fix"},tt={class:"main-view main-view-fix"},ot=M(e.defineComponent({__name:"PLayout",setup(o){const a=I(),c=e.ref(!1),u=()=>{c.value=!0,e.nextTick(()=>c.value=!1)};return e.provide("reloadPage",u),(m,i)=>{const b=n.NBackTop;return e.openBlock(),e.createBlock(e.unref(n.NLayout),{"has-sider":"",class:"layout",position:"absolute"},{default:e.withCtx(()=>[e.createVNode(e.unref(n.NLayoutSider),{class:"layout-sider",inverted:"","show-trigger":"bar",position:"absolute","collapse-mode":"width","trigger-class":"!-right-5","collapsed-trigger-class":"!-right-5",collapsed:e.unref(a).state.collapsed,"native-scrollbar":!1,"collapsed-width":64,onCollapse:e.unref(a).collapse,onExpand:e.unref(a).collapse},{default:e.withCtx(()=>[e.createVNode(e.unref(n.NFlex),{vertical:""},{default:e.withCtx(()=>[e.createVNode(Oe),e.createVNode(ve)]),_:1})]),_:1},8,["collapsed","onCollapse","onExpand"]),e.createVNode(e.unref(n.NLayout),null,{default:e.withCtx(()=>[e.createVNode(e.unref(n.NLayoutHeader),{position:"absolute"},{default:e.withCtx(()=>[e.createVNode(Ke)]),_:1}),e.createVNode(e.unref(n.NLayoutContent),{class:"layout-content layout-default-background"},{default:e.withCtx(()=>[e.createElementVNode("div",et,[e.createVNode(Ue),e.createElementVNode("div",tt,[e.createVNode(Xe,{loading:c.value},null,8,["loading"])])])]),_:1}),e.createVNode(b,{right:20,class:"z-50"})]),_:1})]),_:1})}}}),[["__scopeId","data-v-0bac2e7d"]]),nt={};function at(o,a){const c=e.resolveComponent("router-view");return e.openBlock(),e.createBlock(c)}const le=$(M(nt,[["render",at]])),se=$(ot),re=$(e.defineComponent({__name:"PApplication",props:{theme:{},themeOverrides:{default:{common:{primaryColor:"#2d8cf0",primaryColorHover:"#3c9bff",primaryColorPressed:"#3c9bff",primaryColorSuppl:"#2d8cf0"},LoadingBar:{colorLoading:"#2d8cf0"}}}},setup(o){return(a,c)=>{const u=n.NConfigProvider;return e.openBlock(),e.createBlock(u,{locale:e.unref(n.zhCN),theme:o.theme,"theme-overrides":o.themeOverrides,"date-locale":e.unref(n.dateZhCN)},{default:e.withCtx(()=>[e.createVNode(e.unref(n.NDialogProvider),null,{default:e.withCtx(()=>[e.createVNode(e.unref(n.NNotificationProvider),null,{default:e.withCtx(()=>[e.createVNode(e.unref(n.NMessageProvider),null,{default:e.withCtx(()=>[e.renderSlot(a.$slots,"default")]),_:3})]),_:3})]),_:3})]),_:3},8,["locale","theme","theme-overrides","date-locale"])}}})),ce=$(e.defineComponent({__name:"PModal",props:{saveBtnText:{default:"保存"},closable:{type:Boolean,default:!1},title:{},width:{default:800},height:{default:500},visible:{type:Boolean},loading:{type:Boolean},onSave:{},onClose:{}},emits:["update:visible","update:loading"],setup(o,{expose:a,emit:c}){const u=n.useMessage(),m=o,i=c,b=async()=>{i("update:loading",!0);try{m.onSave&&await m.onSave()&&_()}catch(y){u.error(y.message)}finally{i("update:loading",!1)}},_=()=>{i("update:visible",!1),i("update:loading",!1)},P=async()=>{try{m.onClose?await m.onClose()&&_():_()}catch(y){u.error(y.message),i("update:loading",!1)}};return a({open:()=>{i("update:visible",!0),i("update:loading",!1)},close:()=>{i("update:visible",!1),i("update:loading",!1)}}),(y,d)=>{const C=n.NText,g=n.NButton,f=n.NSpace;return e.openBlock(),e.createBlock(e.unref(n.NModal),e.mergeProps({ref:"$modal",preset:"card"},y.$attrs,{"header-class":"bg-gray-50",show:m.visible,draggable:!0,closable:!1,"close-on-esc":!1,"mask-closable":!1,bordered:!1,style:{width:`${m.width}px`},onClose:_}),{header:e.withCtx(()=>[y.$slots.header?e.renderSlot(y.$slots,"header",{key:0}):m.title?(e.openBlock(),e.createBlock(C,{key:1},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.title),1)]),_:1})):e.createCommentVNode("",!0)]),"header-extra":e.withCtx(()=>[e.renderSlot(y.$slots,"header-extra")]),default:e.withCtx(()=>[e.createElementVNode("div",{class:"overflow-y-auto overflow-hidden mt-5",style:e.normalizeStyle({maxHeight:`${m.height}px`})},[e.renderSlot(y.$slots,"default")],4)]),footer:e.withCtx(()=>[e.renderSlot(y.$slots,"footer")]),action:e.withCtx(()=>[e.createVNode(f,{justify:"end"},{default:e.withCtx(()=>[e.createVNode(g,{type:"primary",loading:o.loading,onClick:b},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.saveBtnText),1)]),_:1},8,["loading"]),e.renderSlot(y.$slots,"action-extra",{loading:o.loading}),e.createVNode(g,{onClick:P,loading:o.loading},{default:e.withCtx(()=>[...d[0]||(d[0]=[e.createTextVNode("取消",-1)])]),_:1},8,["loading"])]),_:3})]),_:3},16,["show","style"])}}})),ie=$(ae),lt=e.defineComponent({name:"Redirect",setup(){const o=O.useRoute(),a=O.useRouter();return e.onBeforeMount(()=>{const{params:c,query:u}=o,{path:m}=c;a.replace({path:"/"+(Array.isArray(m)?m.join("/"):m),query:u})}),()=>React.createElement(n.NEmpty,null)}}),de=$(lt),st={class:"frame"},rt=["src"],fe=$(M(e.defineComponent({__name:"PIframe",setup(o){const a=O.useRoute(),c=e.ref(!1),u=e.ref(null),m=e.ref("");e.unref(a.meta)?.frameSrc&&(m.value=e.unref(a.meta)?.frameSrc);function i(){c.value=!1}function b(){e.nextTick(()=>{const _=e.unref(u);if(!_)return;const P=_;P.attachEvent?P.attachEvent("onload",()=>{i()}):_.onload=()=>{i()}})}return e.onMounted(()=>{c.value=!0,b()}),(_,P)=>{const V=n.NSpin;return e.openBlock(),e.createBlock(V,{show:c.value},{default:e.withCtx(()=>[e.createElementVNode("div",st,[e.createElementVNode("iframe",{src:m.value,class:"frame-iframe",ref_key:"frameRef",ref:u},null,8,rt)])]),_:1},8,["show"])}}}),[["__scopeId","data-v-161a378e"]])),ct={class:"border border-gray-100 rounded-lg"},it={class:"text-xl font-semibold text-gray-800"},dt={class:"text-sm text-gray-500 mt-1"},pe=$(e.defineComponent({__name:"PPage",props:{icon:{type:Object,required:!1,default:()=>S.AlertOutlined},title:{type:String,required:!0},subtitle:{type:String,required:!1}},setup(o){const a=o;return(c,u)=>{const m=n.NIcon,i=n.NAvatar,b=n.NSpace,_=n.NCard;return e.openBlock(),e.createElementBlock("div",ct,[a.title?(e.openBlock(),e.createBlock(_,{key:0,class:"mb-4",bordered:!1,"content-class":"py-4"},{default:e.withCtx(()=>[e.createVNode(b,{align:"center",justify:"space-between"},{default:e.withCtx(()=>[e.createVNode(b,{align:"center",size:16},{default:e.withCtx(()=>[a.icon?(e.openBlock(),e.createBlock(i,{key:0,size:48,class:"bg-linear-to-br from-blue-500 to-indigo-600"},{default:e.withCtx(()=>[e.createVNode(m,{size:24,component:a.icon,color:"#fff"},null,8,["component"])]),_:1})):e.createCommentVNode("",!0),e.createElementVNode("div",null,[e.createElementVNode("div",it,e.toDisplayString(a.title),1),e.createElementVNode("div",dt,e.toDisplayString(a.subtitle??a.title+"主页"),1)])]),_:1})]),_:1})]),_:1})):e.createCommentVNode("",!0),c.$slots.search?(e.openBlock(),e.createBlock(_,{key:1,class:"mb-4",bordered:!1,"content-class":"py-4"},{default:e.withCtx(()=>[e.renderSlot(c.$slots,"search")]),_:3})):e.createCommentVNode("",!0),c.$slots.default?(e.openBlock(),e.createBlock(_,{key:2,bordered:!1,"content-class":"!py-0"},{default:e.withCtx(()=>[e.renderSlot(c.$slots,"default")]),_:3})):e.createCommentVNode("",!0)])}}})),ft={},pt={class:"flex flex-col justify-center page-container"};function mt(o,a){const c=n.NResult;return e.openBlock(),e.createElementBlock("div",pt,[e.createVNode(c,{status:"500",title:"服务器错误",description:"抱歉,服务器出错了"})])}const gt=M(ft,[["render",mt],["__scopeId","data-v-89cb65c7"]]),ht={},ut={class:"flex flex-col justify-center page-container"};function _t(o,a){const c=n.NResult;return e.openBlock(),e.createElementBlock("div",ut,[e.createVNode(c,{status:"404",title:"资源不存在",description:"抱歉,你访问的页面不存在"})])}const yt=M(ht,[["render",_t],["__scopeId","data-v-99232671"]]),wt={},bt={class:"flex flex-col justify-center page-container"};function kt(o,a){const c=n.NResult;return e.openBlock(),e.createElementBlock("div",bt,[e.createVNode(c,{status:"403",title:"禁止访问",description:"抱歉,你无权访问该页面"})])}const Nt=M(wt,[["render",kt],["__scopeId","data-v-3baa9c16"]]),me=$(gt),ge=$(yt),he=$(Nt),ue=Y.defineStore("app-oidc",()=>{const o=e.reactive({});return{setCallback:i=>o.callback=i,callCallback:async i=>await o.callback?.(i),setError:i=>o.error=i,callError:async(i,b)=>await o.error?.(i,b)}}),Ct={class:"view-auth-callback"},_e=$(M(e.defineComponent({__name:"POidc",setup(o){const a=O.useRouter(),{callCallback:c,callError:u}=ue();return e.onMounted(async()=>{try{await c(a)}catch(m){await u(a,m)}}),(m,i)=>(e.openBlock(),e.createElementBlock("div",Ct,[...i[0]||(i[0]=[e.createElementVNode("div",{class:"view-auth-callback-content"},[e.createElementVNode("div",{class:"view-auth-callback-spinner"},[e.createElementVNode("span",null,"正在处理登录回调...")])],-1)])]))}}),[["__scopeId","data-v-167395ae"]])),xt=Object.freeze(Object.defineProperty({__proto__:null,P403:he,P404:ge,P500:me,PApplication:re,PEmptyLayout:le,PIframe:fe,PLanguage:ie,PLayout:se,PModal:ce,POidc:_e,PPage:pe,PRedirect:de,PTable:oe},Symbol.toStringTag,{value:"Module"})),ye=(o,a)=>(Object.values(xt).forEach(c=>{c.install&&o.use(c)}),a?.(),o),Pt={install:ye};k.P403=he,k.P404=ge,k.P500=me,k.PApplication=re,k.PEmptyLayout=le,k.PIframe=fe,k.PLanguage=ie,k.PLayout=se,k.PModal=ce,k.POidc=_e,k.PPage=pe,k.PRedirect=de,k.PTable=oe,k.default=Pt,k.install=ye,k.useLanguageStore=ne,k.useLayoutStore=I,k.useOidcStore=ue,Object.defineProperties(k,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
@@ -1,5 +1,5 @@
1
1
  import { useDialog as ye, useMessage as we, NCard as be, NDataTable as ke, NModal as Ce, NSpace as Se, NButton as C, NTooltip as De, NIcon as T, NDropdown as Me } from "naive-ui";
2
- import { defineComponent as Oe, ref as c, computed as K, unref as d, onMounted as xe, openBlock as v, createBlock as H, withCtx as n, createElementVNode as S, createElementBlock as j, renderSlot as I, createCommentVNode as D, createVNode as s, normalizeStyle as X, createTextVNode as $, toDisplayString as Ee, h as N, toRaw as y } from "vue";
2
+ import { defineComponent as Oe, ref as c, computed as K, unref as d, onMounted as Ee, openBlock as v, createBlock as H, withCtx as n, createElementVNode as S, createElementBlock as j, renderSlot as I, createCommentVNode as D, createVNode as s, normalizeStyle as X, createTextVNode as $, toDisplayString as xe, h as N, toRaw as y } from "vue";
3
3
  import { PlusSquareOutlined as Be, DeleteOutlined as Te, ReloadOutlined as $e, MoreOutlined as Ne } from "@vicons/antd";
4
4
  import { resetObject as Re } from "../utils/helper.js";
5
5
  import { cloneDeep as ze } from "lodash";
@@ -25,17 +25,17 @@ const Le = { class: "text-lg font-medium" }, _e = { id: "data-content" }, He = {
25
25
  onDelete: {}
26
26
  },
27
27
  setup(f, { expose: Y }) {
28
- const P = c(null), J = ye(), w = we(), M = c(!1), O = c([]), x = c([]), p = c(null), h = c(!1), b = c(!1), E = c(!1), W = c({}), g = c({
28
+ const P = c(null), J = ye(), w = we(), M = c(!1), O = c([]), E = c([]), g = c(null), h = c(!1), b = c(!1), x = c(!1), W = c({}), p = c({
29
29
  page: 1,
30
30
  itemCount: 0,
31
31
  pageSize: 10,
32
32
  pageSizes: [10, 20, 30, 50],
33
33
  showSizePicker: !0,
34
34
  onChange: async (e) => {
35
- g.value.page = e, await m();
35
+ p.value.page = e, await m();
36
36
  },
37
37
  onUpdatePageSize: async (e) => {
38
- g.value.pageSize = e, await m();
38
+ p.value.pageSize = e, await m();
39
39
  }
40
40
  }), o = f, Q = (e) => {
41
41
  const t = (l) => {
@@ -120,34 +120,34 @@ const Le = { class: "text-lg font-medium" }, _e = { id: "data-content" }, He = {
120
120
  }
121
121
  });
122
122
  }, le = () => {
123
- p.value = null, F();
123
+ g.value = null, F();
124
124
  }, ne = async (e) => {
125
- p.value = ze(e), F(p.value, async () => {
126
- o.onGet && (p.value = await o.onGet(e[o.idField])), Object.assign(o.item, p.value);
125
+ g.value = ze(e), F(g.value, async () => {
126
+ o.onGet && (g.value = await o.onGet(e[o.idField])), Object.assign(o.item, g.value);
127
127
  });
128
128
  }, V = async () => {
129
129
  if (o.onSave)
130
130
  try {
131
- E.value = !0, (h.value ? await o.onSave(void 0, y(o.item)) : await o.onSave(p.value[o.idField], y(o.item))) && (B(), await m());
131
+ x.value = !0, (h.value ? await o.onSave(void 0, y(o.item)) : await o.onSave(g.value[o.idField], y(o.item))) && (B(), await m());
132
132
  } catch (e) {
133
133
  w.error(e.message);
134
134
  } finally {
135
- E.value = !1;
135
+ x.value = !1;
136
136
  }
137
137
  }, F = async (e, t) => {
138
138
  o.onOpenModal?.(e), await t?.(), e ? (h.value = !1, b.value = !0) : (b.value = !1, h.value = !0);
139
139
  }, B = () => {
140
- p.value = null, Re(o.item), Object.assign(o.item, { ...y(W.value) }), o.onCloseModal?.(o.item), h.value = !1, b.value = !1;
141
- }, R = () => O.value ? x.value.filter((t) => O.value.includes(t.id)).map((t) => y(t)) : [], ae = () => R()[0], se = () => y(x.value), m = async () => {
140
+ g.value = null, Re(o.item), Object.assign(o.item, { ...y(W.value) }), o.onCloseModal?.(o.item), h.value = !1, b.value = !1;
141
+ }, R = () => O.value ? E.value.filter((t) => O.value.includes(t.id)).map((t) => y(t)) : [], ae = () => R()[0], se = () => y(E.value), m = async () => {
142
142
  if (!M.value) {
143
143
  M.value = !0;
144
144
  try {
145
145
  if (o.onLoad) {
146
146
  var { data: e, total: t } = await o.onLoad(
147
- g.value.page,
148
- g.value.pageSize
147
+ p.value.page,
148
+ p.value.pageSize
149
149
  );
150
- x.value = e, g.value.itemCount = t;
150
+ E.value = e, p.value.itemCount = t;
151
151
  }
152
152
  } catch (l) {
153
153
  w.error(l.message);
@@ -174,20 +174,20 @@ const Le = { class: "text-lg font-medium" }, _e = { id: "data-content" }, He = {
174
174
  left: z,
175
175
  top: ue,
176
176
  width: fe,
177
- height: pe
178
- } = U, ge = (i || l) - (r || 0), me = (k || a) - (u || 0), he = z + i, ve = ue + k, L = he - ge, _ = ve - me, q = window.document.documentElement.clientWidth, G = window.document.documentElement.clientHeight;
177
+ height: ge
178
+ } = U, pe = (i || l) - (r || 0), me = (k || a) - (u || 0), he = z + i, ve = ue + k, L = he - pe, _ = ve - me, q = window.document.documentElement.clientWidth, G = window.document.documentElement.clientHeight;
179
179
  return {
180
180
  left: L,
181
181
  top: _,
182
182
  right: q - fe - L,
183
- bottom: G - pe - _,
183
+ bottom: G - ge - _,
184
184
  rightIncludeBody: q - L,
185
185
  bottomIncludeBody: G - _
186
186
  };
187
187
  }, ce = () => {
188
188
  W.value = { ...y(o.item) };
189
189
  };
190
- return xe(async () => {
190
+ return Ee(async () => {
191
191
  ce(), await m();
192
192
  }), Y({
193
193
  getData: se,
@@ -196,15 +196,11 @@ const Le = { class: "text-lg font-medium" }, _e = { id: "data-content" }, He = {
196
196
  closeModal: B,
197
197
  refreshData: m,
198
198
  resetPage: () => {
199
- g.value.page = 1;
199
+ p.value.page = 1;
200
200
  }
201
201
  }), (e, t) => {
202
202
  const l = De, a = Se, r = ke, u = Ce;
203
- return v(), H(d(be), {
204
- bordered: !1,
205
- "content-class": "!p-0",
206
- "header-class": "!px-0 !pt-0"
207
- }, {
203
+ return v(), H(d(be), { bordered: !1 }, {
208
204
  header: n(() => [
209
205
  s(a, {
210
206
  justify: "space-between",
@@ -212,7 +208,7 @@ const Le = { class: "text-lg font-medium" }, _e = { id: "data-content" }, He = {
212
208
  class: "w-full"
213
209
  }, {
214
210
  default: n(() => [
215
- S("span", Le, Ee(f.title), 1),
211
+ S("span", Le, xe(f.title), 1),
216
212
  s(a, null, {
217
213
  default: n(() => [
218
214
  f.hiddenAdd ? D("", !0) : (v(), H(l, {
@@ -298,8 +294,8 @@ const Le = { class: "text-lg font-medium" }, _e = { id: "data-content" }, He = {
298
294
  bordered: !1,
299
295
  "single-line": !1,
300
296
  columns: Z.value,
301
- data: x.value,
302
- pagination: g.value,
297
+ data: E.value,
298
+ pagination: p.value,
303
299
  "row-key": (i) => i[f.idField]
304
300
  }, null, 8, ["checked-row-keys", "max-height", "loading", "columns", "data", "pagination", "row-key"]),
305
301
  e.$slots.addModal ? (v(), j("div", je, [
@@ -320,7 +316,7 @@ const Le = { class: "text-lg font-medium" }, _e = { id: "data-content" }, He = {
320
316
  default: n(() => [
321
317
  s(d(C), {
322
318
  type: "primary",
323
- loading: E.value,
319
+ loading: x.value,
324
320
  onClick: V
325
321
  }, {
326
322
  default: n(() => [...t[6] || (t[6] = [
@@ -362,7 +358,7 @@ const Le = { class: "text-lg font-medium" }, _e = { id: "data-content" }, He = {
362
358
  default: n(() => [
363
359
  s(d(C), {
364
360
  type: "primary",
365
- loading: E.value,
361
+ loading: x.value,
366
362
  onClick: V
367
363
  }, {
368
364
  default: n(() => [...t[8] || (t[8] = [
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("naive-ui"),e=require("vue"),b=require("@vicons/antd"),ne=require("../utils/helper.cjs"),ae=require("lodash"),se={class:"text-lg font-medium"},ie={id:"data-content"},de={key:0,class:"rounded-lg bg-gray-50 flex flex-row gap-2 items-center justify-end p-4 mb-4"},re={key:1},ce={key:2},ue=e.defineComponent({__name:"PTable",props:{title:{},idField:{default:"id"},item:{default:{}},columns:{},modalWidth:{default:800},hiddenAdd:{type:Boolean,default:!1},hiddenEdit:{type:Boolean,default:!1},hiddenDelete:{type:Boolean,default:!1},onLoad:{},onGet:{},onOpenModal:{},onCloseModal:{},onSave:{},onDelete:{}},setup(c,{expose:z}){const E=e.ref(null),L=s.useDialog(),g=s.useMessage(),v=e.ref(!1),y=e.ref([]),C=e.ref([]),u=e.ref(null),p=e.ref(!1),m=e.ref(!1),k=e.ref(!1),M=e.ref({}),f=e.ref({page:1,itemCount:0,pageSize:10,pageSizes:[10,20,30,50],showSizePicker:!0,onChange:async t=>{f.value.page=t,await h()},onUpdatePageSize:async t=>{f.value.pageSize=t,await h()}}),l=c,H=t=>{const o=n=>{const a=[];return t&&t.forEach(d=>{d.key!=="edit"&&d.key!=="delete"&&a.push({label:d.name,key:d.key,props:{onClick:()=>d.action(n)}})}),a};return{title:"操作",key:"actions",width:100,fixed:"right",render:n=>{let a=[];if(l.hiddenEdit||a.push({label:"编辑",key:"edit",props:{onClick:()=>A(n)}}),l.hiddenDelete||a.push({label:"删除",key:"delete",props:{onClick:()=>q(n)}}),a=[...a,...o(n)],!(a.length<=0))return e.h(s.NDropdown,{options:a,placement:"bottom-start"},{default:()=>e.h(s.NButton,{size:"small",type:"primary"},{default:()=>["操作",e.h(s.NIcon,()=>e.h(b.MoreOutlined))]})})}}},I=e.computed(()=>{const t=l.columns.filter(n=>n.key!="action").map(n=>({title:n.title,key:n.key,width:n.width,fixed:n.fixed??!1,render:n.render,ellipsis:n.ellipsis?{tooltip:!0}:!1})),o=l.columns.reduce((n,a)=>a.key==="action"?a:n,void 0)?.action;return o&&o?.length>0||!l.hiddenDelete||!l.hiddenEdit?[{type:"selection",fixed:"left"},...t,H(o)]:[{type:"selection",fixed:"left"},...t]}),j=async()=>{await h()},q=t=>{D([t])},P=()=>{const t=x();D(t)},D=t=>{t&&t.length>0&&L.warning({title:"警告",content:"删除数据不可恢复, 确认删除吗?",positiveText:"确定",negativeText:"取消",onPositiveClick:async()=>{if(l.onDelete)try{await l.onDelete(t)?(h(),g.success("删除成功")):g.error("删除失败")}catch(o){g.error(o.message)}}})},W=()=>{u.value=null,T()},A=async t=>{u.value=ae.cloneDeep(t),T(u.value,async()=>{l.onGet&&(u.value=await l.onGet(t[l.idField])),Object.assign(l.item,u.value)})},R=async()=>{if(l.onSave)try{k.value=!0,(p.value?await l.onSave(void 0,e.toRaw(l.item)):await l.onSave(u.value[l.idField],e.toRaw(l.item)))&&(N(),await h())}catch(t){g.error(t.message)}finally{k.value=!1}},T=async(t,o)=>{l.onOpenModal?.(t),await o?.(),t?(p.value=!1,m.value=!0):(m.value=!1,p.value=!0)},N=()=>{u.value=null,ne.resetObject(l.item),Object.assign(l.item,{...e.toRaw(M.value)}),l.onCloseModal?.(l.item),p.value=!1,m.value=!1},x=()=>y.value?C.value.filter(o=>y.value.includes(o.id)).map(o=>e.toRaw(o)):[],U=()=>x()[0],F=()=>e.toRaw(C.value),h=async()=>{if(!v.value){v.value=!0;try{if(l.onLoad){var{data:t,total:o}=await l.onLoad(f.value.page,f.value.pageSize);C.value=t,f.value.itemCount=o}}catch(n){g.error(n.message)}finally{v.value=!1}}},G=e.computed(()=>{const t=e.unref(E);if(!t)return;const o=t?.$el,n=o.querySelector(".n-data-table-thead "),{bottomIncludeBody:a}=X(n),d=48;let r=12,i=24;const w=o.querySelector(".n-data-table__pagination");if(w){const V=w.offsetHeight;r+=V||0}else r+=28;return a-(d+r+i)}),K=t=>!t||!t.getBoundingClientRect?0:t.getBoundingClientRect(),X=t=>{const o=document.documentElement,n=o.scrollLeft,a=o.scrollTop,d=o.clientLeft,r=o.clientTop,i=window.pageXOffset,w=window.pageYOffset,O=K(t),{left:V,top:J,width:Q,height:Z}=O,ee=(i||n)-(d||0),te=(w||a)-(r||0),oe=V+i,le=J+w,S=oe-ee,B=le-te,_=window.document.documentElement.clientWidth,$=window.document.documentElement.clientHeight;return{left:S,top:B,right:_-Q-S,bottom:$-Z-B,rightIncludeBody:_-S,bottomIncludeBody:$-B}},Y=()=>{M.value={...e.toRaw(l.item)}};return e.onMounted(async()=>{Y(),await h()}),z({getData:F,getSelectedRow:U,getSelectedRows:x,closeModal:N,refreshData:h,resetPage:()=>{f.value.page=1}}),(t,o)=>{const n=s.NTooltip,a=s.NSpace,d=s.NDataTable,r=s.NModal;return e.openBlock(),e.createBlock(e.unref(s.NCard),{bordered:!1,"content-class":"!p-0","header-class":"!px-0 !pt-0"},{header:e.withCtx(()=>[e.createVNode(a,{justify:"space-between",align:"center",class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("span",se,e.toDisplayString(c.title),1),e.createVNode(a,null,{default:e.withCtx(()=>[c.hiddenAdd?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(n,{key:0,trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(s.NIcon),{size:"18",class:"mr-1 cursor-pointer hover:text-blue-600",onClick:W},{default:e.withCtx(()=>[e.createVNode(e.unref(b.PlusSquareOutlined))]),_:1})]),default:e.withCtx(()=>[o[3]||(o[3]=e.createElementVNode("span",null,"新增",-1))]),_:1})),c.hiddenDelete?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(n,{key:1,trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(s.NIcon),{size:"18",class:"mr-1 cursor-pointer hover:text-blue-600",onClick:P},{default:e.withCtx(()=>[e.createVNode(e.unref(b.DeleteOutlined))]),_:1})]),default:e.withCtx(()=>[o[4]||(o[4]=e.createElementVNode("span",null,"删除",-1))]),_:1})),e.createVNode(n,{trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(s.NIcon),{size:"18",class:"cursor-pointer hover:text-blue-600",onClick:j},{default:e.withCtx(()=>[e.createVNode(e.unref(b.ReloadOutlined))]),_:1})]),default:e.withCtx(()=>[o[5]||(o[5]=e.createElementVNode("span",null,"刷新",-1))]),_:1})]),_:1})]),_:1})]),default:e.withCtx(()=>[e.createElementVNode("div",ie,[t.$slots.toolbar?(e.openBlock(),e.createElementBlock("div",de,[e.renderSlot(t.$slots,"toolbar")])):e.createCommentVNode("",!0),e.createVNode(d,{remote:"",ref_key:"$table",ref:E,"checked-row-keys":y.value,"onUpdate:checkedRowKeys":o[0]||(o[0]=i=>y.value=i),"max-height":G.value,loading:v.value,bordered:!1,"single-line":!1,columns:I.value,data:C.value,pagination:f.value,"row-key":i=>i[c.idField]},null,8,["checked-row-keys","max-height","loading","columns","data","pagination","row-key"]),t.$slots.addModal?(e.openBlock(),e.createElementBlock("div",re,[e.createVNode(r,{title:"新增",preset:"card",show:p.value,"onUpdate:show":o[1]||(o[1]=i=>p.value=i),"header-class":"bg-gray-50",closable:!1,"close-on-esc":!1,"mask-closable":!1,draggable:!0,style:e.normalizeStyle({width:`${c.modalWidth}px`})},{action:e.withCtx(()=>[e.createVNode(a,{justify:"end"},{default:e.withCtx(()=>[e.createVNode(e.unref(s.NButton),{type:"primary",loading:k.value,onClick:R},{default:e.withCtx(()=>[...o[6]||(o[6]=[e.createTextVNode("保存",-1)])]),_:1},8,["loading"]),e.createVNode(e.unref(s.NButton),{onClick:N},{default:e.withCtx(()=>[...o[7]||(o[7]=[e.createTextVNode("取消",-1)])]),_:1})]),_:1})]),default:e.withCtx(()=>[e.renderSlot(t.$slots,"addModal")]),_:3},8,["show","style"])])):e.createCommentVNode("",!0),t.$slots.editModal?(e.openBlock(),e.createElementBlock("div",ce,[e.createVNode(r,{title:"编辑",show:m.value,"onUpdate:show":o[2]||(o[2]=i=>m.value=i),preset:"card","header-class":"bg-gray-50",closable:!1,"close-on-esc":!1,"mask-closable":!1,draggable:!0,style:e.normalizeStyle({width:`${c.modalWidth}px`})},{action:e.withCtx(()=>[e.createVNode(a,{justify:"end"},{default:e.withCtx(()=>[e.createVNode(e.unref(s.NButton),{type:"primary",loading:k.value,onClick:R},{default:e.withCtx(()=>[...o[8]||(o[8]=[e.createTextVNode("保存",-1)])]),_:1},8,["loading"]),e.createVNode(e.unref(s.NButton),{onClick:N},{default:e.withCtx(()=>[...o[9]||(o[9]=[e.createTextVNode("取消",-1)])]),_:1})]),_:1})]),default:e.withCtx(()=>[e.renderSlot(t.$slots,"editModal")]),_:3},8,["show","style"])])):e.createCommentVNode("",!0)])]),_:3})}}});exports.default=ue;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const i=require("naive-ui"),e=require("vue"),b=require("@vicons/antd"),ne=require("../utils/helper.cjs"),ae=require("lodash"),ie={class:"text-lg font-medium"},se={id:"data-content"},de={key:0,class:"rounded-lg bg-gray-50 flex flex-row gap-2 items-center justify-end p-4 mb-4"},re={key:1},ce={key:2},ue=e.defineComponent({__name:"PTable",props:{title:{},idField:{default:"id"},item:{default:{}},columns:{},modalWidth:{default:800},hiddenAdd:{type:Boolean,default:!1},hiddenEdit:{type:Boolean,default:!1},hiddenDelete:{type:Boolean,default:!1},onLoad:{},onGet:{},onOpenModal:{},onCloseModal:{},onSave:{},onDelete:{}},setup(c,{expose:z}){const E=e.ref(null),L=i.useDialog(),p=i.useMessage(),v=e.ref(!1),y=e.ref([]),C=e.ref([]),u=e.ref(null),g=e.ref(!1),m=e.ref(!1),k=e.ref(!1),M=e.ref({}),f=e.ref({page:1,itemCount:0,pageSize:10,pageSizes:[10,20,30,50],showSizePicker:!0,onChange:async t=>{f.value.page=t,await h()},onUpdatePageSize:async t=>{f.value.pageSize=t,await h()}}),l=c,H=t=>{const o=n=>{const a=[];return t&&t.forEach(d=>{d.key!=="edit"&&d.key!=="delete"&&a.push({label:d.name,key:d.key,props:{onClick:()=>d.action(n)}})}),a};return{title:"操作",key:"actions",width:100,fixed:"right",render:n=>{let a=[];if(l.hiddenEdit||a.push({label:"编辑",key:"edit",props:{onClick:()=>A(n)}}),l.hiddenDelete||a.push({label:"删除",key:"delete",props:{onClick:()=>q(n)}}),a=[...a,...o(n)],!(a.length<=0))return e.h(i.NDropdown,{options:a,placement:"bottom-start"},{default:()=>e.h(i.NButton,{size:"small",type:"primary"},{default:()=>["操作",e.h(i.NIcon,()=>e.h(b.MoreOutlined))]})})}}},I=e.computed(()=>{const t=l.columns.filter(n=>n.key!="action").map(n=>({title:n.title,key:n.key,width:n.width,fixed:n.fixed??!1,render:n.render,ellipsis:n.ellipsis?{tooltip:!0}:!1})),o=l.columns.reduce((n,a)=>a.key==="action"?a:n,void 0)?.action;return o&&o?.length>0||!l.hiddenDelete||!l.hiddenEdit?[{type:"selection",fixed:"left"},...t,H(o)]:[{type:"selection",fixed:"left"},...t]}),j=async()=>{await h()},q=t=>{D([t])},P=()=>{const t=x();D(t)},D=t=>{t&&t.length>0&&L.warning({title:"警告",content:"删除数据不可恢复, 确认删除吗?",positiveText:"确定",negativeText:"取消",onPositiveClick:async()=>{if(l.onDelete)try{await l.onDelete(t)?(h(),p.success("删除成功")):p.error("删除失败")}catch(o){p.error(o.message)}}})},W=()=>{u.value=null,T()},A=async t=>{u.value=ae.cloneDeep(t),T(u.value,async()=>{l.onGet&&(u.value=await l.onGet(t[l.idField])),Object.assign(l.item,u.value)})},R=async()=>{if(l.onSave)try{k.value=!0,(g.value?await l.onSave(void 0,e.toRaw(l.item)):await l.onSave(u.value[l.idField],e.toRaw(l.item)))&&(N(),await h())}catch(t){p.error(t.message)}finally{k.value=!1}},T=async(t,o)=>{l.onOpenModal?.(t),await o?.(),t?(g.value=!1,m.value=!0):(m.value=!1,g.value=!0)},N=()=>{u.value=null,ne.resetObject(l.item),Object.assign(l.item,{...e.toRaw(M.value)}),l.onCloseModal?.(l.item),g.value=!1,m.value=!1},x=()=>y.value?C.value.filter(o=>y.value.includes(o.id)).map(o=>e.toRaw(o)):[],U=()=>x()[0],F=()=>e.toRaw(C.value),h=async()=>{if(!v.value){v.value=!0;try{if(l.onLoad){var{data:t,total:o}=await l.onLoad(f.value.page,f.value.pageSize);C.value=t,f.value.itemCount=o}}catch(n){p.error(n.message)}finally{v.value=!1}}},G=e.computed(()=>{const t=e.unref(E);if(!t)return;const o=t?.$el,n=o.querySelector(".n-data-table-thead "),{bottomIncludeBody:a}=X(n),d=48;let r=12,s=24;const w=o.querySelector(".n-data-table__pagination");if(w){const V=w.offsetHeight;r+=V||0}else r+=28;return a-(d+r+s)}),K=t=>!t||!t.getBoundingClientRect?0:t.getBoundingClientRect(),X=t=>{const o=document.documentElement,n=o.scrollLeft,a=o.scrollTop,d=o.clientLeft,r=o.clientTop,s=window.pageXOffset,w=window.pageYOffset,O=K(t),{left:V,top:J,width:Q,height:Z}=O,ee=(s||n)-(d||0),te=(w||a)-(r||0),oe=V+s,le=J+w,S=oe-ee,B=le-te,_=window.document.documentElement.clientWidth,$=window.document.documentElement.clientHeight;return{left:S,top:B,right:_-Q-S,bottom:$-Z-B,rightIncludeBody:_-S,bottomIncludeBody:$-B}},Y=()=>{M.value={...e.toRaw(l.item)}};return e.onMounted(async()=>{Y(),await h()}),z({getData:F,getSelectedRow:U,getSelectedRows:x,closeModal:N,refreshData:h,resetPage:()=>{f.value.page=1}}),(t,o)=>{const n=i.NTooltip,a=i.NSpace,d=i.NDataTable,r=i.NModal;return e.openBlock(),e.createBlock(e.unref(i.NCard),{bordered:!1},{header:e.withCtx(()=>[e.createVNode(a,{justify:"space-between",align:"center",class:"w-full"},{default:e.withCtx(()=>[e.createElementVNode("span",ie,e.toDisplayString(c.title),1),e.createVNode(a,null,{default:e.withCtx(()=>[c.hiddenAdd?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(n,{key:0,trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(i.NIcon),{size:"18",class:"mr-1 cursor-pointer hover:text-blue-600",onClick:W},{default:e.withCtx(()=>[e.createVNode(e.unref(b.PlusSquareOutlined))]),_:1})]),default:e.withCtx(()=>[o[3]||(o[3]=e.createElementVNode("span",null,"新增",-1))]),_:1})),c.hiddenDelete?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(n,{key:1,trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(i.NIcon),{size:"18",class:"mr-1 cursor-pointer hover:text-blue-600",onClick:P},{default:e.withCtx(()=>[e.createVNode(e.unref(b.DeleteOutlined))]),_:1})]),default:e.withCtx(()=>[o[4]||(o[4]=e.createElementVNode("span",null,"删除",-1))]),_:1})),e.createVNode(n,{trigger:"hover"},{trigger:e.withCtx(()=>[e.createVNode(e.unref(i.NIcon),{size:"18",class:"cursor-pointer hover:text-blue-600",onClick:j},{default:e.withCtx(()=>[e.createVNode(e.unref(b.ReloadOutlined))]),_:1})]),default:e.withCtx(()=>[o[5]||(o[5]=e.createElementVNode("span",null,"刷新",-1))]),_:1})]),_:1})]),_:1})]),default:e.withCtx(()=>[e.createElementVNode("div",se,[t.$slots.toolbar?(e.openBlock(),e.createElementBlock("div",de,[e.renderSlot(t.$slots,"toolbar")])):e.createCommentVNode("",!0),e.createVNode(d,{remote:"",ref_key:"$table",ref:E,"checked-row-keys":y.value,"onUpdate:checkedRowKeys":o[0]||(o[0]=s=>y.value=s),"max-height":G.value,loading:v.value,bordered:!1,"single-line":!1,columns:I.value,data:C.value,pagination:f.value,"row-key":s=>s[c.idField]},null,8,["checked-row-keys","max-height","loading","columns","data","pagination","row-key"]),t.$slots.addModal?(e.openBlock(),e.createElementBlock("div",re,[e.createVNode(r,{title:"新增",preset:"card",show:g.value,"onUpdate:show":o[1]||(o[1]=s=>g.value=s),"header-class":"bg-gray-50",closable:!1,"close-on-esc":!1,"mask-closable":!1,draggable:!0,style:e.normalizeStyle({width:`${c.modalWidth}px`})},{action:e.withCtx(()=>[e.createVNode(a,{justify:"end"},{default:e.withCtx(()=>[e.createVNode(e.unref(i.NButton),{type:"primary",loading:k.value,onClick:R},{default:e.withCtx(()=>[...o[6]||(o[6]=[e.createTextVNode("保存",-1)])]),_:1},8,["loading"]),e.createVNode(e.unref(i.NButton),{onClick:N},{default:e.withCtx(()=>[...o[7]||(o[7]=[e.createTextVNode("取消",-1)])]),_:1})]),_:1})]),default:e.withCtx(()=>[e.renderSlot(t.$slots,"addModal")]),_:3},8,["show","style"])])):e.createCommentVNode("",!0),t.$slots.editModal?(e.openBlock(),e.createElementBlock("div",ce,[e.createVNode(r,{title:"编辑",show:m.value,"onUpdate:show":o[2]||(o[2]=s=>m.value=s),preset:"card","header-class":"bg-gray-50",closable:!1,"close-on-esc":!1,"mask-closable":!1,draggable:!0,style:e.normalizeStyle({width:`${c.modalWidth}px`})},{action:e.withCtx(()=>[e.createVNode(a,{justify:"end"},{default:e.withCtx(()=>[e.createVNode(e.unref(i.NButton),{type:"primary",loading:k.value,onClick:R},{default:e.withCtx(()=>[...o[8]||(o[8]=[e.createTextVNode("保存",-1)])]),_:1},8,["loading"]),e.createVNode(e.unref(i.NButton),{onClick:N},{default:e.withCtx(()=>[...o[9]||(o[9]=[e.createTextVNode("取消",-1)])]),_:1})]),_:1})]),default:e.withCtx(()=>[e.renderSlot(t.$slots,"editModal")]),_:3},8,["show","style"])])):e.createCommentVNode("",!0)])]),_:3})}}});exports.default=ue;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@chewel611/naive-ui-plus",
3
3
  "private": false,
4
- "version": "0.0.28",
4
+ "version": "0.0.29",
5
5
  "license": "MIT",
6
6
  "type": "module",
7
7
  "sideEffects": false,