@ithinkdt/ui 4.0.0-601 → 4.0.0-800

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,6 +1,6 @@
1
- import { n as useI18n, t as UI_I18N_INJECTION } from "./use-i18n-Dx7V4KrY.js";
2
- import { g as useStyle, i as cM, n as cB, r as cE, t as c } from "./use-style-D9hLG26i.js";
3
- import { i as vTooltip, n as vSpin, r as TooltipDirectiveProvider, t as SpinDirectiveProvider } from "./directives-8VsgmCuO.js";
1
+ import { n as useI18n, t as UI_I18N_INJECTION } from "./use-i18n-D-AJ8KbA.js";
2
+ import { g as useStyle, i as cM, n as cB, r as cE, t as c } from "./use-style-BGq0HdRK.js";
3
+ import { i as vTooltip, n as vSpin, r as TooltipDirectiveProvider, t as SpinDirectiveProvider } from "./directives-CBQhJ3zJ.js";
4
4
  import { Fragment, computed, createVNode, defineComponent, inject, isVNode, mergeProps, provide, reactive, ref, renderSlot, shallowRef, toRef, toValue, unref, useTemplateRef, watch, withDirectives } from "vue";
5
5
  import { computedAsync, promiseTimeout, useElementHover, useElementSize, useEventListener, useFullscreen, watchDebounced } from "@vueuse/core";
6
6
  import { NAvatar, NBadge, NBreadcrumb, NBreadcrumbItem, NButton, NDrawer, NDrawerContent, NDropdown, NEmpty, NIcon, NList, NListItem, NMenu, NPagination, NPopover, NScrollbar, NText, NThing, useThemeVars } from "ithinkdt-ui";
@@ -9,8 +9,8 @@ import { RouterLink, useRouter } from "vue-router";
9
9
  import { walkTree } from "@ithinkdt/common/tree";
10
10
  import { getOpaqueColor } from "@ithinkdt/common/color";
11
11
  import { format } from "date-fns";
12
- function _isSlot$4(d) {
13
- return typeof d == "function" || Object.prototype.toString.call(d) === "[object Object]" && !isVNode(d);
12
+ function _isSlot$4(e) {
13
+ return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !isVNode(e);
14
14
  }
15
15
  const AppAccount = /* @__PURE__ */ defineComponent({
16
16
  name: "AppAccount",
@@ -28,8 +28,8 @@ const AppAccount = /* @__PURE__ */ defineComponent({
28
28
  }
29
29
  },
30
30
  emit: ["logout", "change-pwd"],
31
- setup(z, { emit: B, slots: V }) {
32
- let H = computed(() => /^[\u4E00-\u9FA5]+$/.test(z.nickname) ? z.nickname?.slice(z.nickname?.length > 3 ? 2 : 1) : z.nickname?.split(" ")[0]), { t: U } = useI18n(), W = createVNode(NIcon, { size: "28" }, { default: () => [createVNode("svg", {
31
+ setup(t, { emit: n, slots: r }) {
32
+ let i = computed(() => /^[\u4E00-\u9FA5]+$/.test(t.nickname) ? t.nickname?.slice(t.nickname?.length > 3 ? 2 : 1) : t.nickname?.split(" ")[0]), { t: a } = useI18n(), o = createVNode(NIcon, { size: "28" }, { default: () => [createVNode("svg", {
33
33
  xmlns: "http://www.w3.org/2000/svg",
34
34
  width: "1em",
35
35
  height: "1em",
@@ -37,7 +37,7 @@ const AppAccount = /* @__PURE__ */ defineComponent({
37
37
  }, [createVNode("path", {
38
38
  fill: "currentColor",
39
39
  d: "M12 12q-1.65 0-2.825-1.175T8 8t1.175-2.825T12 4t2.825 1.175T16 8t-1.175 2.825T12 12m-8 6v-.8q0-.85.438-1.562T5.6 14.55q1.55-.775 3.15-1.162T12 13t3.25.388t3.15 1.162q.725.375 1.163 1.088T20 17.2v.8q0 .825-.587 1.413T18 20H6q-.825 0-1.412-.587T4 18"
40
- }, null)])] }), K = createVNode("svg", {
40
+ }, null)])] }), l = createVNode("svg", {
41
41
  xmlns: "http://www.w3.org/2000/svg",
42
42
  width: "1em",
43
43
  height: "1em",
@@ -52,22 +52,22 @@ const AppAccount = /* @__PURE__ */ defineComponent({
52
52
  quaternary: !0,
53
53
  style: "--n-padding: 0 12px"
54
54
  }, { default: () => [createVNode("div", { style: "display: flex; align-items: center; gap: 8px" }, [createVNode(NAvatar, {
55
- key: z.head ? "head" : "no-head",
56
- src: z.head,
55
+ key: t.head ? "head" : "no-head",
56
+ src: t.head,
57
57
  round: !0,
58
58
  size: "small",
59
59
  radix: .78,
60
60
  color: "var(--color-primary-hover)"
61
61
  }, {
62
- fallback: () => W,
63
- placeholder: () => W,
64
- default: z.head ? void 0 : () => H.value
65
- }), createVNode("span", { style: "font-size: 14px" }, [z.username ?? ""])])] }),
62
+ fallback: () => o,
63
+ placeholder: () => o,
64
+ default: t.head ? void 0 : () => i.value
65
+ }), createVNode("span", { style: "font-size: 14px" }, [t.username ?? ""])])] }),
66
66
  default: () => {
67
- let d = () => z.showChangePwd ? createVNode(NButton, {
67
+ let e = () => t.showChangePwd ? createVNode(NButton, {
68
68
  quaternary: !0,
69
69
  style: "justify-content: left",
70
- onClick: () => B("change-pwd")
70
+ onClick: () => n("change-pwd")
71
71
  }, {
72
72
  icon: () => createVNode(NIcon, null, { default: () => [createVNode("svg", {
73
73
  xmlns: "http://www.w3.org/2000/svg",
@@ -83,33 +83,33 @@ const AppAccount = /* @__PURE__ */ defineComponent({
83
83
  r: "2",
84
84
  fill: "currentColor"
85
85
  }, null)])] }),
86
- default: () => U("common.account.changePwd")
87
- }) : void 0, H = () => z.showLogoutButton ? void 0 : createVNode(NButton, {
86
+ default: () => a("common.account.changePwd")
87
+ }) : void 0, i = () => t.showLogoutButton ? void 0 : createVNode(NButton, {
88
88
  quaternary: !0,
89
89
  style: "justify-content: left",
90
- onClick: () => B("logout")
90
+ onClick: () => n("logout")
91
91
  }, {
92
- icon: () => createVNode(NIcon, null, _isSlot$4(K) ? K : { default: () => [K] }),
93
- default: () => U("common.account.logout")
92
+ icon: () => createVNode(NIcon, null, _isSlot$4(l) ? l : { default: () => [l] }),
93
+ default: () => a("common.account.logout")
94
94
  });
95
- return V.dropdown ? V.dropdown({
96
- pwd: d,
97
- logout: H
95
+ return r.dropdown ? r.dropdown({
96
+ pwd: e,
97
+ logout: i
98
98
  }) : createVNode("div", { style: "display: flex; flex-direction: column" }, [
99
- d(),
100
- V.dropdownExtra?.(),
101
- H()
99
+ e(),
100
+ r.dropdownExtra?.(),
101
+ i()
102
102
  ]);
103
103
  }
104
104
  }),
105
- V.extra?.(),
106
- z.showLogoutButton ? withDirectives(createVNode(NButton, {
105
+ r.extra?.(),
106
+ t.showLogoutButton ? withDirectives(createVNode(NButton, {
107
107
  quaternary: !0,
108
108
  style: "--n-padding: 0 12px",
109
- onClick: () => z.username && B("logout")
110
- }, { default: () => [V.logoutButton?.() ?? createVNode(NIcon, { size: "16" }, _isSlot$4(K) ? K : { default: () => [K] })] }), [[
109
+ onClick: () => t.username && n("logout")
110
+ }, { default: () => [r.logoutButton?.() ?? createVNode(NIcon, { size: "16" }, _isSlot$4(l) ? l : { default: () => [l] })] }), [[
111
111
  vTooltip,
112
- U("common.account.logout"),
112
+ a("common.account.logout"),
113
113
  void 0,
114
114
  { "bottom-end": !0 }
115
115
  ]]) : void 0
@@ -119,15 +119,15 @@ const AppAccount = /* @__PURE__ */ defineComponent({
119
119
  name: "AppAppearance",
120
120
  props: { mode: String },
121
121
  emit: ["update:mode"],
122
- setup(z, { emit: B }) {
123
- let { t: V } = useI18n();
122
+ setup(t, { emit: n }) {
123
+ let { t: r } = useI18n();
124
124
  return () => withDirectives(createVNode(NButton, {
125
125
  quaternary: !0,
126
126
  style: "--n-padding: 0 12px",
127
127
  onClick: () => {
128
- B("update:mode", z.mode === "light" ? "dark" : z.mode === "dark" ? "auto" : "light");
128
+ n("update:mode", t.mode === "light" ? "dark" : t.mode === "dark" ? "auto" : "light");
129
129
  }
130
- }, { default: () => [createVNode(NIcon, { size: "18" }, { default: () => [z.mode === "light" ? createVNode("svg", {
130
+ }, { default: () => [createVNode(NIcon, { size: "18" }, { default: () => [t.mode === "light" ? createVNode("svg", {
131
131
  xmlns: "http://www.w3.org/2000/svg",
132
132
  "xmlns:xlink": "http://www.w3.org/1999/xlink",
133
133
  role: "img",
@@ -137,7 +137,7 @@ const AppAccount = /* @__PURE__ */ defineComponent({
137
137
  }, [createVNode("path", {
138
138
  fill: "currentColor",
139
139
  d: "M12 15q1.25 0 2.125-.875T15 12q0-1.25-.875-2.125T12 9q-1.25 0-2.125.875T9 12q0 1.25.875 2.125T12 15Zm0 2q-2.075 0-3.537-1.463Q7 14.075 7 12t1.463-3.538Q9.925 7 12 7t3.538 1.462Q17 9.925 17 12q0 2.075-1.462 3.537Q14.075 17 12 17ZM1 13v-2h4v2Zm18 0v-2h4v2Zm-8-8V1h2v4Zm0 18v-4h2v4ZM6.35 7.75L3.875 5.275l1.4-1.4L7.75 6.35Zm12.375 12.375L16.25 17.65l1.4-1.4l2.475 2.475ZM17.65 7.75l-1.4-1.4l2.475-2.475l1.4 1.4ZM5.275 20.125l-1.4-1.4L6.35 16.25l1.4 1.4ZM12 12Z"
140
- }, null)]) : z.mode === "dark" ? createVNode("svg", {
140
+ }, null)]) : t.mode === "dark" ? createVNode("svg", {
141
141
  xmlns: "http://www.w3.org/2000/svg",
142
142
  "xmlns:xlink": "http://www.w3.org/1999/xlink",
143
143
  role: "img",
@@ -159,7 +159,7 @@ const AppAccount = /* @__PURE__ */ defineComponent({
159
159
  d: "M11 19q1.35 0 2.513-.538q1.162-.537 1.987-1.487q-3.15-.2-5.325-2.488Q8 12.2 8 9q0-.325.025-.638q.025-.312.075-.612q-1.4.775-2.25 2.162Q5 11.3 5 13q0 2.5 1.75 4.25T11 19Zm0 2q-3.35 0-5.675-2.325Q3 16.35 3 13q0-3.35 2.325-5.675Q7.65 5 11 5q.125 0 .25.012q.125.013.25.013q-.725.8-1.113 1.812Q10 7.85 10 9q0 2.5 1.75 4.25T16 15q.8 0 1.525-.2q.725-.2 1.375-.55q-.45 2.875-2.662 4.812Q14.025 21 11 21Zm2.8-10L17 2h2l3.2 9h-1.9l-.7-2h-3.2l-.7 2Zm3.05-3.35h2.3L18 4Z"
160
160
  }, null)])] })] }), [[
161
161
  vTooltip,
162
- z.mode === "light" ? V("common.layout.mode.light") : z.mode === "dark" ? V("common.layout.mode.dark") : V("common.layout.mode.auto"),
162
+ t.mode === "light" ? r("common.layout.mode.light") : t.mode === "dark" ? r("common.layout.mode.dark") : r("common.layout.mode.auto"),
163
163
  void 0,
164
164
  { bottom: !0 }
165
165
  ]]);
@@ -175,8 +175,8 @@ const AppAccount = /* @__PURE__ */ defineComponent({
175
175
  fill: "currentColor",
176
176
  d: "m17 18l-5-2.18L7 18V5h10m0-2H7a2 2 0 0 0-2 2v16l7-3l7 3V5a2 2 0 0 0-2-2Z"
177
177
  }, null)]), CTX_INJECTION_KEY = "__APP_CTX__", getCtx = () => inject(CTX_INJECTION_KEY);
178
- function _isSlot$3(d) {
179
- return typeof d == "function" || Object.prototype.toString.call(d) === "[object Object]" && !isVNode(d);
178
+ function _isSlot$3(e) {
179
+ return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !isVNode(e);
180
180
  }
181
181
  const AppBreadcrumb = /* @__PURE__ */ defineComponent({
182
182
  name: "AppBreadcrumb",
@@ -190,36 +190,36 @@ const AppBreadcrumb = /* @__PURE__ */ defineComponent({
190
190
  default: void 0
191
191
  }
192
192
  },
193
- setup(d) {
194
- let z = useRouter(), B = Symbol(), V = Symbol();
195
- return watch(() => d.items, (z) => {
196
- walkTree(z, (z) => {
197
- z.icon && (typeof z.icon == "string" ? (z[B] = d.getIcon?.(z.icon), z[V] = () => z[B]?.() || IBookmark()) : z[V] = z.icon);
193
+ setup(e) {
194
+ let t = useRouter(), n = Symbol(), r = Symbol();
195
+ return watch(() => e.items, (t) => {
196
+ walkTree(t, (t) => {
197
+ t.icon && (typeof t.icon == "string" ? (t[n] = e.getIcon?.(t.icon), t[r] = () => t[n]?.() || IBookmark()) : t[r] = t.icon);
198
198
  });
199
199
  }, { immediate: !0 }), () => {
200
- let B;
201
- return createVNode(NBreadcrumb, null, _isSlot$3(B = d.items.map((d) => createVNode(NBreadcrumbItem, {
202
- clickable: d.href?.length > 0,
203
- separator: d.separator,
204
- onClick: d.href && ((B) => {
205
- B.stopPropagation(), z.push(d.href);
200
+ let n;
201
+ return createVNode(NBreadcrumb, null, _isSlot$3(n = e.items.map((e) => createVNode(NBreadcrumbItem, {
202
+ clickable: e.href?.length > 0,
203
+ separator: e.separator,
204
+ onClick: e.href && ((n) => {
205
+ n.stopPropagation(), t.push(e.href);
206
206
  })
207
- }, { default: () => [d.icon ? createVNode(Fragment, null, [createVNode(NIcon, { component: d[V] }, null), " "]) : void 0, toValue(d.title)] }))) ? B : { default: () => [B] });
207
+ }, { default: () => [e.icon ? createVNode(Fragment, null, [createVNode(NIcon, { component: e[r] }, null), " "]) : void 0, toValue(e.title)] }))) ? n : { default: () => [n] });
208
208
  };
209
209
  }
210
210
  }), AppFullscreen = /* @__PURE__ */ defineComponent({
211
211
  name: "AppFullscreen",
212
212
  props: {},
213
213
  emit: ["change"],
214
- setup(z, { emit: B }) {
215
- let { t: V } = useI18n(), { isFullscreen: H, toggle: U } = useFullscreen();
214
+ setup(t, { emit: n }) {
215
+ let { t: r } = useI18n(), { isFullscreen: i, toggle: a } = useFullscreen();
216
216
  return () => withDirectives(createVNode(NButton, {
217
217
  quaternary: !0,
218
218
  style: "--n-padding: 0 12px",
219
219
  onClick: () => {
220
- U(), B("change", H.value);
220
+ a(), n("change", i.value);
221
221
  }
222
- }, { default: () => [createVNode(NIcon, { size: "18" }, { default: () => [H.value ? createVNode("svg", {
222
+ }, { default: () => [createVNode(NIcon, { size: "18" }, { default: () => [i.value ? createVNode("svg", {
223
223
  xmlns: "http://www.w3.org/2000/svg",
224
224
  width: "1em",
225
225
  height: "1em",
@@ -245,7 +245,7 @@ const AppBreadcrumb = /* @__PURE__ */ defineComponent({
245
245
  d: "M3.75 8.345V6.25a2.5 2.5 0 0 1 2.5-2.5h2.095M3.75 15.655v2.095a2.5 2.5 0 0 0 2.5 2.5h2.095M20.25 8.345V6.25a2.5 2.5 0 0 0-2.5-2.5h-2.095m4.595 11.905v2.095a2.5 2.5 0 0 1-2.5 2.5h-2.095"
246
246
  }, null)])] })] }), [[
247
247
  vTooltip,
248
- H.value ? V("common.layout.screen.exitfull") : V("common.layout.screen.full"),
248
+ i.value ? r("common.layout.screen.exitfull") : r("common.layout.screen.full"),
249
249
  void 0,
250
250
  { bottom: !0 }
251
251
  ]]);
@@ -257,12 +257,12 @@ const AppBreadcrumb = /* @__PURE__ */ defineComponent({
257
257
  supports: Array
258
258
  },
259
259
  emit: ["update:lang"],
260
- setup(d, { emit: z }) {
260
+ setup(e, { emit: t }) {
261
261
  return () => createVNode(NDropdown, {
262
- options: d.supports,
262
+ options: e.supports,
263
263
  keyField: "value",
264
264
  showArrow: !0,
265
- onSelect: (d) => z("update:lang", d)
265
+ onSelect: (e) => t("update:lang", e)
266
266
  }, { default: () => [createVNode(NButton, {
267
267
  quaternary: !0,
268
268
  style: "--n-padding: 0 12px"
@@ -303,8 +303,7 @@ var style = /* @__PURE__ */ c([
303
303
  gridArea: "header",
304
304
  overflow: "hidden",
305
305
  zIndex: 2,
306
- height: "var(--app-header-height, 44px)",
307
- zIndex: "2"
306
+ height: "var(--app-header-height, 44px)"
308
307
  }),
309
308
  cB("sider", {
310
309
  gridArea: "sider",
@@ -370,28 +369,28 @@ const AppLayout = /* @__PURE__ */ defineComponent({
370
369
  },
371
370
  fullContent: Boolean
372
371
  },
373
- setup(d, { slots: z }) {
372
+ setup(e, { slots: t }) {
374
373
  useStyle("-layout", style, ref("app"), !1);
375
- let V = reactive({
374
+ let r = reactive({
376
375
  siderWidth: "0px",
377
376
  headerHeight: "0px",
378
377
  footerHeight: "0px",
379
378
  hasMultiTab: !1
380
379
  });
381
- return provide(CTX_INJECTION_KEY, V), () => {
382
- let { layout: B } = d;
380
+ return provide(CTX_INJECTION_KEY, r), () => {
381
+ let { layout: n } = e;
383
382
  return createVNode("div", {
384
383
  class: {
385
384
  "app-layout": !0,
386
- "app-layout--full-header": B === "top2bottom",
387
- "app-layout--full-content": d.fullContent
385
+ "app-layout--full-header": n === "top2bottom",
386
+ "app-layout--full-content": e.fullContent
388
387
  },
389
388
  style: {
390
- "--app-sider-width": V.siderWidth,
391
- "--app-header-height": V.headerHeight,
392
- "--app-footer-height": V.footerHeight
389
+ "--app-sider-width": r.siderWidth,
390
+ "--app-header-height": r.headerHeight,
391
+ "--app-footer-height": r.footerHeight
393
392
  }
394
- }, [renderSlot(z, "default")]);
393
+ }, [renderSlot(t, "default")]);
395
394
  };
396
395
  }
397
396
  }), AppHeader = /* @__PURE__ */ defineComponent({
@@ -400,12 +399,12 @@ const AppLayout = /* @__PURE__ */ defineComponent({
400
399
  type: Number,
401
400
  default: 44
402
401
  } },
403
- setup(d, { slots: z }) {
404
- let B = getCtx();
405
- return () => (B.headerHeight = d.height + "px", createVNode("div", { class: "app-header" }, [renderSlot(z, "default")]));
402
+ setup(e, { slots: t }) {
403
+ let n = getCtx();
404
+ return () => (n.headerHeight = e.height + "px", createVNode("div", { class: "app-header" }, [renderSlot(t, "default")]));
406
405
  }
407
- }), AppSider = /* @__PURE__ */ defineComponent({
408
- name: "AppSider",
406
+ }), AppSidebar = /* @__PURE__ */ defineComponent({
407
+ name: "AppSidebar",
409
408
  props: {
410
409
  showCollapseBtn: {
411
410
  type: Boolean,
@@ -422,21 +421,21 @@ const AppLayout = /* @__PURE__ */ defineComponent({
422
421
  }
423
422
  },
424
423
  emits: { "update:collapsed": () => !0 },
425
- setup(z, { emit: B, slots: V }) {
426
- provide(COLLAPSED_INJECTION_KEY, toRef(z, "collapsed"));
427
- let { t: H } = useI18n(), U = getCtx();
428
- return () => (U.siderWidth = (z.collapsed ? z.collapsedWidth : z.width) + "px", createVNode("div", { class: "app-sider" }, [renderSlot(V, "default"), z.showCollapseBtn ? withDirectives(createVNode(NButton, {
424
+ setup(t, { emit: n, slots: r }) {
425
+ provide(COLLAPSED_INJECTION_KEY, toRef(t, "collapsed"));
426
+ let { t: i } = useI18n(), a = getCtx();
427
+ return () => (a.siderWidth = (t.collapsed ? t.collapsedWidth : t.width) + "px", createVNode("div", { class: "app-sider" }, [renderSlot(r, "default"), t.showCollapseBtn ? withDirectives(createVNode(NButton, {
429
428
  class: "app-sider__collapse-btn",
430
429
  quaternary: !0,
431
430
  onClick: () => {
432
- B("update:collapsed", !z.collapsed);
431
+ n("update:collapsed", !t.collapsed);
433
432
  }
434
- }, { default: () => [createVNode(NIcon, { size: "20" }, { default: () => [z.collapsed ? createVNode(IUnfold, null, null) : createVNode(IFold, null, null)] })] }), [[vTooltip, z.collapsed ? H("common.layout.sider.expand") : H("common.layout.sider.collapse")]]) : void 0]));
433
+ }, { default: () => [createVNode(NIcon, { size: "20" }, { default: () => [t.collapsed ? createVNode(IUnfold, null, null) : createVNode(IFold, null, null)] })] }), [[vTooltip, t.collapsed ? i("common.layout.sider.expand") : i("common.layout.sider.collapse")]]) : void 0]));
435
434
  }
436
435
  }), AppContent = /* @__PURE__ */ defineComponent({
437
436
  name: "AppContent",
438
- setup(d, { slots: z }) {
439
- return () => createVNode("div", { class: "app-content" }, [renderSlot(z, "default")]);
437
+ setup(e, { slots: t }) {
438
+ return () => createVNode("div", { class: "app-content" }, [renderSlot(t, "default")]);
440
439
  }
441
440
  }), AppFooter = /* @__PURE__ */ defineComponent({
442
441
  name: "AppFooter",
@@ -444,13 +443,13 @@ const AppLayout = /* @__PURE__ */ defineComponent({
444
443
  type: Number,
445
444
  default: 30
446
445
  } },
447
- setup(d, { slots: z }) {
448
- let B = getCtx();
449
- return () => (B.footerHeight = d.height + "px", createVNode("div", { class: "app-footer" }, [renderSlot(z, "default")]));
446
+ setup(e, { slots: t }) {
447
+ let n = getCtx();
448
+ return () => (n.footerHeight = e.height + "px", createVNode("div", { class: "app-footer" }, [renderSlot(t, "default")]));
450
449
  }
451
450
  });
452
- function _isSlot$2(d) {
453
- return typeof d == "function" || Object.prototype.toString.call(d) === "[object Object]" && !isVNode(d);
451
+ function _isSlot$2(e) {
452
+ return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !isVNode(e);
454
453
  }
455
454
  const AppLogo = /* @__PURE__ */ defineComponent({
456
455
  name: "AppLogo",
@@ -470,47 +469,47 @@ const AppLogo = /* @__PURE__ */ defineComponent({
470
469
  default: !0
471
470
  }
472
471
  },
473
- setup(d, { slots: z }) {
474
- let B = computedAsync(() => typeof d.src == "function" ? d.src() : d.src), V = inject(COLLAPSED_INJECTION_KEY, !1);
472
+ setup(e, { slots: t }) {
473
+ let n = computedAsync(() => typeof e.src == "function" ? e.src() : e.src), r = inject(COLLAPSED_INJECTION_KEY, !1);
475
474
  return () => {
476
- let { name: H, collapsed: U, center: W, link: G } = d;
477
- U ??= unref(V);
478
- let K = U ? 1 : 1 / 1.1;
475
+ let { name: i, collapsed: a, center: o, link: s } = e;
476
+ a ??= unref(r);
477
+ let l = a ? 1 : 1 / 1.1;
479
478
  return createVNode("div", {
480
479
  class: "app-logo",
481
480
  style: {
482
481
  "--app-logo-img-size": "32px",
483
482
  "--app-logo-name-size": "22px",
484
- width: W ? "100%" : "auto",
483
+ width: o ? "100%" : "auto",
485
484
  overflow: "hidden",
486
485
  display: "flex",
487
486
  alignItems: "center",
488
- justifyContent: W ? "center" : "flex-start",
489
- cursor: G ? "pointer" : void 0
487
+ justifyContent: o ? "center" : "flex-start",
488
+ cursor: s ? "pointer" : void 0
490
489
  }
491
- }, [z.default ? z.default() : createVNode("div", {
490
+ }, [t.default ? t.default() : createVNode("div", {
492
491
  class: "app-logo__img",
493
492
  style: `
494
- width: ${U ? "var(--app-sider-width, 60px)" : "56px"};
495
- font-size: ${U ? "calc(var(--app-sider-width, 60px) - 24px)" : "32px"};
493
+ width: ${a ? "var(--app-sider-width, 60px)" : "56px"};
494
+ font-size: ${a ? "calc(var(--app-sider-width, 60px) - 24px)" : "32px"};
496
495
  transition: width 0.2s ease-in-out 0.1s;
497
496
  flex: 0 0 auto;
498
497
  display: flex;
499
498
  justify-content: center
500
499
  `
501
- }, [z.icon ? z.icon() : createVNode("img", {
502
- src: B.value,
500
+ }, [t.icon ? t.icon() : createVNode("img", {
501
+ src: n.value,
503
502
  alt: "App Logo",
504
- style: `transition: height 0.2s ease-in-out; height: calc(var(--app-logo-img-size) * ${K})`
505
- }, null)]), H ? createVNode(NText, {
503
+ style: `transition: height 0.2s ease-in-out; height: calc(var(--app-logo-img-size) * ${l})`
504
+ }, null)]), i ? createVNode(NText, {
506
505
  class: "app-logo__name",
507
506
  style: "font-size: var(--app-logo-name-size); font-weight: bold; white-space: nowrap; flex: 0 1 auto; overflow: hidden"
508
- }, _isSlot$2(H) ? H : { default: () => [H] }) : ""]);
507
+ }, _isSlot$2(i) ? i : { default: () => [i] }) : ""]);
509
508
  };
510
509
  }
511
510
  });
512
- function _isSlot$1(d) {
513
- return typeof d == "function" || Object.prototype.toString.call(d) === "[object Object]" && !isVNode(d);
511
+ function _isSlot$1(e) {
512
+ return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !isVNode(e);
514
513
  }
515
514
  const AppMenu = /* @__PURE__ */ defineComponent({
516
515
  name: "AppMenu",
@@ -535,52 +534,52 @@ const AppMenu = /* @__PURE__ */ defineComponent({
535
534
  default: 60
536
535
  }
537
536
  },
538
- setup(d) {
539
- let z = shallowRef([]);
540
- watch([() => d.menus, () => d.single], ([B, V]) => {
541
- if (z.value = [], !B?.length) return;
542
- let H = (z, B = 0) => {
543
- let U = [];
544
- for (let W of z) {
545
- if (W.type === "action") continue;
546
- let z = W.type === "view" ? void 0 : H(W.children ?? [], B + 1), G = {
547
- _: W,
548
- key: W.key,
549
- label: () => d.renderLabel?.(W) ?? W.name,
550
- icon: B === 0 || W.icon ? d.getIcon?.(W.icon) ?? IBookmark : void 0,
551
- children: V ? void 0 : z,
552
- path: W.path || (V ? z?.[0]?.path : void 0),
553
- depth: B
537
+ setup(e) {
538
+ let t = shallowRef([]);
539
+ watch([() => e.menus, () => e.single], ([n, r]) => {
540
+ if (t.value = [], !n?.length) return;
541
+ let i = (t, n = 0) => {
542
+ let a = [];
543
+ for (let o of t) {
544
+ if (o.type === "action") continue;
545
+ let t = o.type === "view" ? void 0 : i(o.children ?? [], n + 1), s = {
546
+ _: o,
547
+ key: o.key,
548
+ label: () => e.renderLabel?.(o) ?? o.name,
549
+ icon: n === 0 || o.icon ? e.getIcon?.(o.icon) ?? IBookmark : void 0,
550
+ children: r ? void 0 : t,
551
+ path: o.path || (r ? t?.[0]?.path : void 0),
552
+ depth: n
554
553
  };
555
- delete G.type, U.push(G);
554
+ delete s.type, a.push(s);
556
555
  }
557
- return U;
556
+ return a;
558
557
  };
559
- z.value = H(B);
560
- }, { immediate: !0 }), watch([useTemplateRef("menu"), () => d.current], ([d, z]) => {
561
- d?.showOption(z);
558
+ t.value = i(n);
559
+ }, { immediate: !0 }), watch([useTemplateRef("menu"), () => e.current], ([e, t]) => {
560
+ e?.showOption(t);
562
561
  }, { immediate: !0 });
563
- let B = inject(COLLAPSED_INJECTION_KEY, !1), V = (z) => {
564
- let V = d.collapsed ?? unref(B), H;
565
- if (z._.type === "view") if (z.isExternal && z.externalEmbed) H = createVNode("a", {
566
- href: z.externalLink,
562
+ let n = inject(COLLAPSED_INJECTION_KEY, !1), r = (t) => {
563
+ let r = e.collapsed ?? unref(n), i;
564
+ if (t._.type === "view") if (t.isExternal && t.externalEmbed) i = createVNode("a", {
565
+ href: t.externalLink,
567
566
  target: "_blank",
568
- onClick: (d) => d.stopPropagation()
569
- }, [z.label()]);
567
+ onClick: (e) => e.stopPropagation()
568
+ }, [t.label()]);
570
569
  else {
571
- let d;
572
- H = createVNode(RouterLink, { to: z.path }, _isSlot$1(d = z.label()) ? d : { default: () => [d] });
570
+ let e;
571
+ i = createVNode(RouterLink, { to: t.path }, _isSlot$1(e = t.label()) ? e : { default: () => [e] });
573
572
  }
574
- else H = createVNode("span", null, [z.label()]);
575
- return H.key = `${z.key}:${V ? 1 : 0}`, z.depth === 0 && !V && (H = withDirectives(createVNode("div", null, [H]), [[
573
+ else i = createVNode("span", null, [t.label()]);
574
+ return i.key = `${t.key}:${r ? 1 : 0}`, t.depth === 0 && !r && (i = withDirectives(createVNode("div", null, [i]), [[
576
575
  vTooltip,
577
- z.label(),
576
+ t.label(),
578
577
  void 0,
579
578
  {
580
579
  auto: !0,
581
580
  right: !0
582
581
  }
583
- ]])), z.isNew && (H = createVNode("div", { style: "display: flex; width: 100%" }, [createVNode("span", { style: "flex: 0 1 auto; overflow: hidden; text-overflow: ellipsis" }, [H]), createVNode("svg", {
582
+ ]])), t.isNew && (i = createVNode("div", { style: "display: flex; width: 100%" }, [createVNode("span", { style: "flex: 0 1 auto; overflow: hidden; text-overflow: ellipsis" }, [i]), createVNode("svg", {
584
583
  xmlns: "http://www.w3.org/2000/svg",
585
584
  width: "24",
586
585
  height: "24",
@@ -589,48 +588,48 @@ const AppMenu = /* @__PURE__ */ defineComponent({
589
588
  }, [createVNode("path", {
590
589
  d: "M245.76 286.72h552.96c124.928 0 225.28 100.352 225.28 225.28s-100.352 225.28-225.28 225.28H0V532.48c0-135.168 110.592-245.76 245.76-245.76z m133.12 348.16V401.408H348.16v178.176l-112.64-178.176H204.8V634.88h30.72v-178.176L348.16 634.88h30.72z m182.272-108.544v-24.576h-96.256v-75.776h110.592v-24.576h-141.312V634.88h143.36v-24.576h-112.64v-83.968h96.256z m100.352 28.672l-34.816-151.552h-34.816l55.296 233.472H675.84l47.104-161.792 4.096-20.48 4.096 20.48 47.104 161.792h28.672l57.344-233.472h-34.816l-32.768 151.552-4.096 30.72-6.144-30.72-40.96-151.552h-30.72l-40.96 151.552-6.144 30.72-6.144-30.72z",
591
590
  fill: "var(--color-danger)"
592
- }, null)])])), H;
591
+ }, null)])])), i;
593
592
  };
594
593
  return () => {
595
- let H = createVNode(NMenu, {
594
+ let i = createVNode(NMenu, {
596
595
  ref: "menu",
597
- options: z.value,
596
+ options: t.value,
598
597
  rootIndent: 16,
599
- accordion: d.accordion,
600
- collapsed: d.collapsed ?? unref(B),
598
+ accordion: e.accordion,
599
+ collapsed: e.collapsed ?? unref(n),
601
600
  dropdownProps: { showArrow: !0 },
602
- mode: d.horizontal ? "horizontal" : "vertical",
603
- value: d.current ?? null,
604
- renderLabel: V,
601
+ mode: e.horizontal ? "horizontal" : "vertical",
602
+ value: e.current ?? null,
603
+ renderLabel: r,
605
604
  responsive: !0,
606
- collapsedWidth: d.collapsedWidth,
607
- width: d.width
605
+ collapsedWidth: e.collapsedWidth,
606
+ width: e.width
608
607
  }, null);
609
- return d.horizontal ? H : createVNode(NScrollbar, null, _isSlot$1(H) ? H : { default: () => [H] });
608
+ return e.horizontal ? i : createVNode(NScrollbar, null, _isSlot$1(i) ? i : { default: () => [i] });
610
609
  };
611
610
  }
612
611
  });
613
- function useCtxMenu(z, B, V) {
614
- let { t: H } = useI18n(), U = reactive({
612
+ function useCtxMenu(t, n, r) {
613
+ let { t: i } = useI18n(), a = reactive({
615
614
  visible: !1,
616
615
  x: 0,
617
616
  y: 0
618
- }), W = async (d, z) => {
619
- d.preventDefault(), d.stopPropagation(), !(U.visible && U.tab === z) && (U.tab = z, U.visible && (U.visible = !1, await promiseTimeout(130)), U.visible = !0, U.x = d.clientX, U.y = d.clientY);
620
- }, G = async () => {
617
+ }), o = async (e, t) => {
618
+ e.preventDefault(), e.stopPropagation(), !(a.visible && a.tab === t) && (a.tab = t, a.visible && (a.visible = !1, await promiseTimeout(130)), a.visible = !0, a.x = e.clientX, a.y = e.clientY);
619
+ }, s = async () => {
621
620
  requestIdleCallback(() => {
622
- U.visible = !1;
621
+ a.visible = !1;
623
622
  }, { timeout: 30 });
624
- }, K = useRouter();
623
+ }, l = useRouter();
625
624
  return {
626
- ctx: U,
627
- onCtx: W,
628
- onClickoutside: G,
625
+ ctx: a,
626
+ onCtx: o,
627
+ onClickOutside: s,
629
628
  options: computed(() => [
630
629
  {
631
630
  key: "reload",
632
- label: H("common.layout.tabs.reloadTab"),
633
- disabled: !U.tab || U.tab.key !== B.value,
631
+ label: i("common.layout.tabs.reloadTab"),
632
+ disabled: !a.tab || a.tab.key !== n.value,
634
633
  icon: () => createVNode(NIcon, { size: 20 }, { default: () => [createVNode("svg", {
635
634
  xmlns: "http://www.w3.org/2000/svg",
636
635
  "xmlns:xlink": "http://www.w3.org/1999/xlink",
@@ -645,7 +644,7 @@ function useCtxMenu(z, B, V) {
645
644
  },
646
645
  {
647
646
  key: "fullTab",
648
- label: H("common.layout.tabs.fullTab"),
647
+ label: i("common.layout.tabs.fullTab"),
649
648
  icon: () => createVNode(NIcon, { size: 16 }, { default: () => [createVNode("svg", {
650
649
  xmlns: "http://www.w3.org/2000/svg",
651
650
  width: "1em",
@@ -664,8 +663,8 @@ function useCtxMenu(z, B, V) {
664
663
  },
665
664
  {
666
665
  key: "open",
667
- label: H("common.layout.tabs.openTabBlank"),
668
- disabled: !U.tab,
666
+ label: i("common.layout.tabs.openTabBlank"),
667
+ disabled: !a.tab,
669
668
  icon: () => createVNode(NIcon, { size: 20 }, { default: () => [createVNode("svg", {
670
669
  xmlns: "http://www.w3.org/2000/svg",
671
670
  "xmlns:xlink": "http://www.w3.org/1999/xlink",
@@ -682,7 +681,7 @@ function useCtxMenu(z, B, V) {
682
681
  },
683
682
  {
684
683
  key: "closeAll",
685
- label: H("common.layout.tabs.closeAllTabs"),
684
+ label: i("common.layout.tabs.closeAllTabs"),
686
685
  icon: () => createVNode(NIcon, { size: 20 }, { default: () => [createVNode("svg", {
687
686
  xmlns: "http://www.w3.org/2000/svg",
688
687
  "xmlns:xlink": "http://www.w3.org/1999/xlink",
@@ -697,8 +696,8 @@ function useCtxMenu(z, B, V) {
697
696
  },
698
697
  {
699
698
  key: "closeLeft",
700
- label: H("common.layout.tabs.closeLeftTabs"),
701
- disabled: !U.tab,
699
+ label: i("common.layout.tabs.closeLeftTabs"),
700
+ disabled: !a.tab,
702
701
  icon: () => createVNode(NIcon, { size: 20 }, { default: () => [createVNode("svg", {
703
702
  xmlns: "http://www.w3.org/2000/svg",
704
703
  "xmlns:xlink": "http://www.w3.org/1999/xlink",
@@ -713,8 +712,8 @@ function useCtxMenu(z, B, V) {
713
712
  },
714
713
  {
715
714
  key: "closeRight",
716
- label: H("common.layout.tabs.closeRightTabs"),
717
- disabled: !U.tab,
715
+ label: i("common.layout.tabs.closeRightTabs"),
716
+ disabled: !a.tab,
718
717
  icon: () => createVNode(NIcon, { size: 20 }, { default: () => [createVNode("svg", {
719
718
  xmlns: "http://www.w3.org/2000/svg",
720
719
  "xmlns:xlink": "http://www.w3.org/1999/xlink",
@@ -729,8 +728,8 @@ function useCtxMenu(z, B, V) {
729
728
  },
730
729
  {
731
730
  key: "closeOther",
732
- label: H("common.layout.tabs.closeOtherTabs"),
733
- disabled: !U.tab,
731
+ label: i("common.layout.tabs.closeOtherTabs"),
732
+ disabled: !a.tab,
734
733
  icon: () => createVNode(NIcon, { size: 20 }, { default: () => [" ", createVNode("svg", {
735
734
  xmlns: "http://www.w3.org/2000/svg",
736
735
  "xmlns:xlink": "http://www.w3.org/1999/xlink",
@@ -744,63 +743,63 @@ function useCtxMenu(z, B, V) {
744
743
  }, null)])] })
745
744
  }
746
745
  ]),
747
- onSelect: async (d) => {
748
- U.visible = !1;
749
- let H = [...z.value];
750
- if (d === "closeAll") {
751
- await K.push("/");
752
- for (let d of H) d.key !== B.value && d.close(!1);
746
+ onSelect: async (e) => {
747
+ a.visible = !1;
748
+ let i = [...t.value];
749
+ if (e === "closeAll") {
750
+ await l.push("/");
751
+ for (let e of i) e.key !== n.value && e.close(!1);
753
752
  return;
754
753
  }
755
- if (d === "fullTab") {
756
- V();
754
+ if (e === "fullTab") {
755
+ r();
757
756
  return;
758
757
  }
759
- if (U.tab) switch (d) {
758
+ if (a.tab) switch (e) {
760
759
  case "open":
761
- window.open(U.tab.href, "_blank");
760
+ window.open(a.tab.href, "_blank");
762
761
  break;
763
762
  case "reload":
764
- U.tab.reloading || (U.tab.reloading = !0, await promiseTimeout(220), U.tab.reloading = !1);
763
+ a.tab.reloading || (a.tab.reloading = !0, await promiseTimeout(220), a.tab.reloading = !1);
765
764
  break;
766
765
  case "close":
767
- U.tab?.close();
766
+ a.tab?.close();
768
767
  break;
769
768
  case "closeOther":
770
- B.value !== U.tab.key && await K.push(U.tab.fullPath);
771
- for (let d of H) d.key !== U.tab.key && d.close(!1);
769
+ n.value !== a.tab.key && await l.push(a.tab.fullPath);
770
+ for (let e of i) e.key !== a.tab.key && e.close(!1);
772
771
  break;
773
772
  case "closeLeft":
774
- B.value !== U.tab.key && await K.push(U.tab.fullPath);
775
- for (let d of z.value.slice(0, H.indexOf(U.tab))) d.close(!1);
773
+ n.value !== a.tab.key && await l.push(a.tab.fullPath);
774
+ for (let e of t.value.slice(0, i.indexOf(a.tab))) e.close(!1);
776
775
  break;
777
776
  case "closeRight":
778
- B.value !== U.tab.key && await K.push(U.tab.fullPath);
779
- for (let d of z.value.slice(H.indexOf(U.tab) + 1)) d.close(!1);
777
+ n.value !== a.tab.key && await l.push(a.tab.fullPath);
778
+ for (let e of t.value.slice(i.indexOf(a.tab) + 1)) e.close(!1);
780
779
  break;
781
780
  }
782
781
  }
783
782
  };
784
783
  }
785
- function useContentScroll(d, z, B) {
786
- function V(B) {
787
- if (B === -1 || !z.value?.children.length) return;
788
- let V = z.value.children[B];
789
- d.value.scrollTo({
784
+ function useContentScroll(e, t, n) {
785
+ function r(n) {
786
+ if (n === -1 || !t.value?.children.length) return;
787
+ let r = t.value.children[n];
788
+ e.value.scrollTo({
790
789
  behavior: "smooth",
791
- left: Math.max(0, z.value.offsetLeft + V.offsetLeft - d.value.clientWidth / 2 + V.clientWidth / 2 + 10)
790
+ left: Math.max(0, t.value.offsetLeft + r.offsetLeft - e.value.clientWidth / 2 + r.clientWidth / 2 + 10)
792
791
  });
793
792
  }
794
- return watchDebounced(useElementHover(d), (d) => {
795
- d || V(B.value);
796
- }, { debounce: 333 }), watch(B, V, { flush: "post" }), useEventListener(d, "wheel", (z) => {
797
- z.deltaMode === WheelEvent.DOM_DELTA_PIXEL && (z.preventDefault(), d.value.scrollBy({ left: z.deltaY }));
793
+ return watchDebounced(useElementHover(e), (e) => {
794
+ e || r(n.value);
795
+ }, { debounce: 333 }), watch(n, r, { flush: "post" }), useEventListener(e, "wheel", (t) => {
796
+ t.deltaMode === WheelEvent.DOM_DELTA_PIXEL && (t.preventDefault(), e.value.scrollBy({ left: t.deltaY }));
798
797
  }, { passive: !1 }), {
799
- el: d,
800
- content: z
798
+ el: e,
799
+ content: t
801
800
  };
802
801
  }
803
- var IBg = (d) => createVNode("svg", d, [
802
+ var IBg = (e) => createVNode("svg", e, [
804
803
  createVNode("defs", null, [
805
804
  createVNode("symbol", {
806
805
  id: "geometry-left",
@@ -846,39 +845,39 @@ var IBg = (d) => createVNode("svg", d, [
846
845
  dark: Boolean
847
846
  },
848
847
  emits: ["close"],
849
- setup(d, { emit: z, slots: B }) {
850
- let V = ref(), H = useElementHover(V), U = ref(), W = ref(), { width: G } = useElementSize(W);
851
- watch(G, async () => {
852
- await promiseTimeout(1), U.value.style.width = W.value.scrollWidth + "px";
848
+ setup(e, { emit: t, slots: n }) {
849
+ let r = ref(), i = useElementHover(r), a = ref(), o = ref(), { width: s } = useElementSize(o);
850
+ watch(s, async () => {
851
+ await promiseTimeout(1), a.value.style.width = o.value.scrollWidth + "px";
853
852
  });
854
- let K = useThemeVars(), q = computed(() => ({
853
+ let l = useThemeVars(), u = computed(() => ({
855
854
  fontSize: "14px",
856
- color: d.isCurrent ? K.value.primaryColor : K.value.textColor3,
855
+ color: e.isCurrent ? l.value.primaryColor : l.value.textColor3,
857
856
  maxWidth: "355px",
858
857
  overflow: "hidden"
859
- })), J = computed(() => ({
858
+ })), d = computed(() => ({
860
859
  width: "calc(100% + 27px)",
861
860
  height: "100%",
862
861
  position: "absolute",
863
862
  top: "0",
864
863
  left: "-14px",
865
- zIndex: d.isCurrent ? -1 : -2,
866
- color: d.isCurrent ? getOpaqueColor(K.value.primaryColor, d.dark ? .3 : .12, d.dark ? "#000" : "#fff") : H.value ? K.value.borderColor : "transparent"
864
+ zIndex: e.isCurrent ? -1 : -2,
865
+ color: e.isCurrent ? getOpaqueColor(l.value.primaryColor, e.dark ? .3 : .12, e.dark ? "#000" : "#fff") : i.value ? l.value.borderColor : "transparent"
867
866
  }));
868
867
  return () => createVNode("div", {
869
- ref: V,
868
+ ref: r,
870
869
  style: "position: relative; padding: 2px 10px 5px; cursor: pointer"
871
870
  }, [
872
871
  createVNode("div", {
873
- ref: U,
872
+ ref: a,
874
873
  style: "transition: width 300ms; overflow: hidden"
875
874
  }, [createVNode("div", {
876
- ref: W,
875
+ ref: o,
877
876
  style: "display: flex; align-items: center; gap: 4px; width: fit-content"
878
- }, [createVNode("span", { style: q.value }, [B.default?.()]), d.closable !== !1 && (d.isCurrent || H.value) ? createVNode("span", { style: "line-height: 0; display: inline-block; text-align: right; padding-top: 2px" }, [createVNode(NButton, {
877
+ }, [createVNode("span", { style: u.value }, [n.default?.()]), e.closable !== !1 && (e.isCurrent || i.value) ? createVNode("span", { style: "line-height: 0; display: inline-block; text-align: right; padding-top: 2px" }, [createVNode(NButton, {
879
878
  text: !0,
880
- onClick: (d) => {
881
- d.stopPropagation(), z("close");
879
+ onClick: (e) => {
880
+ e.stopPropagation(), t("close");
882
881
  }
883
882
  }, { default: () => [createVNode(NIcon, { size: 18 }, { default: () => [createVNode("svg", {
884
883
  xmlns: "http://www.w3.org/2000/svg",
@@ -890,7 +889,7 @@ var IBg = (d) => createVNode("svg", d, [
890
889
  d: "m6.4 18.308l-.708-.708l5.6-5.6l-5.6-5.6l.708-.708l5.6 5.6l5.6-5.6l.708.708l-5.6 5.6l5.6 5.6l-.708.708l-5.6-5.6z"
891
890
  }, null)])] })] })]) : void 0])]),
892
891
  createVNode("span", { style: "height: 50%; width: 1px; background: #aaa; display: inline-block; position: absolute; top: 20%; right: -4px; z-index: -3" }, null),
893
- createVNode(IBg, { style: J.value }, null)
892
+ createVNode(IBg, { style: d.value }, null)
894
893
  ]);
895
894
  }
896
895
  });
@@ -904,53 +903,53 @@ const AppMultiTabs = /* @__PURE__ */ defineComponent({
904
903
  dark: Boolean
905
904
  },
906
905
  emits: ["update:fullTab"],
907
- setup(d, { emit: z, slots: B }) {
908
- let V = getCtx();
909
- V.hasMultiTab = !0;
910
- let H = useRouter(), { ctx: U, onCtx: W, onClickoutside: G, options: K, onSelect: q } = useCtxMenu(toRef(d, "tabs"), computed(() => d.current?.key), () => z("update:fullTab", !d.fullTab)), J = computed(() => d.current ? d.tabs.findIndex((z) => z.key === d.current?.key) : -1), Y = ref(), Z = ref();
911
- return useContentScroll(Y, Z, J), () => createVNode("div", { style: "width: 100%; height: 100%; overflow: hidden; display: flex; justify-content: space-between" }, [createVNode("div", {
912
- ref: Y,
906
+ setup(e, { emit: t, slots: n }) {
907
+ let r = getCtx();
908
+ r.hasMultiTab = !0;
909
+ let i = useRouter(), { ctx: a, onCtx: o, onClickOutside: s, options: l, onSelect: u } = useCtxMenu(toRef(e, "tabs"), computed(() => e.current?.key), () => t("update:fullTab", !e.fullTab)), d = computed(() => e.current ? e.tabs.findIndex((t) => t.key === e.current?.key) : -1), f = ref(), m = ref();
910
+ return useContentScroll(f, m, d), () => createVNode("div", { style: "width: 100%; height: 100%; overflow: hidden; display: flex; justify-content: space-between" }, [createVNode("div", {
911
+ ref: f,
913
912
  style: "flex: 1 1 100%; height: 100%; display: flex; overflow: hidden; align-items: center; position: relative"
914
913
  }, [
915
914
  createVNode("div", { style: "height: 100%; flex: 0 0 16px; z-index: 1; position: sticky; left: 0; backdrop-filter: opacity(0.9) blur(5px)" }, null),
916
915
  createVNode("div", {
917
- ref: Z,
916
+ ref: m,
918
917
  style: "padding-inline: 12px; flex: 1 1 auto; display: flex; align-items: end; gap: 8px; height: 100%",
919
- onContextmenu: (d) => W(d)
920
- }, [d.tabs.map((z, V, U) => {
921
- let G = d.current?.key === z.key, K = z.title ?? z.path;
918
+ onContextmenu: (e) => o(e)
919
+ }, [e.tabs.map((t, r, a) => {
920
+ let s = e.current?.key === t.key, l = t.title ?? t.path;
922
921
  return createVNode(AppTab, {
923
- key: z.key,
924
- isCurrent: G,
925
- isLast: V === U.length - 1,
926
- onClose: z.close,
927
- closable: z.closable,
928
- dark: d.dark,
922
+ key: t.key,
923
+ isCurrent: s,
924
+ isLast: r === a.length - 1,
925
+ onClose: t.close,
926
+ closable: t.closable,
927
+ dark: e.dark,
929
928
  onClick: () => {
930
- G || H.push(z.fullPath);
929
+ s || i.push(t.fullPath);
931
930
  },
932
- onContextmenu: (d) => W(d, z)
933
- }, { default: () => [B.name ? B.name({
934
- isCurrent: G,
935
- name: K,
936
- tab: z
937
- }) : K] });
931
+ onContextmenu: (e) => o(e, t)
932
+ }, { default: () => [n.name ? n.name({
933
+ isCurrent: s,
934
+ name: l,
935
+ tab: t
936
+ }) : l] });
938
937
  })]),
939
938
  createVNode("div", { style: "height: 100%; flex: 0 0 16px; z-index: 1; position: sticky; right: 0; backdrop-filter: opacity(0.9) blur(5px)" }, null)
940
939
  ]), createVNode(NDropdown, {
941
940
  placement: "bottom-start",
942
941
  trigger: "manual",
943
- show: U.visible,
944
- x: U.x,
945
- y: U.y,
946
- options: K.value,
947
- onClickoutside: G,
948
- onSelect: q
942
+ show: a.visible,
943
+ x: a.x,
944
+ y: a.y,
945
+ options: l.value,
946
+ onClickoutside: s,
947
+ onSelect: u
949
948
  }, null)]);
950
949
  }
951
950
  });
952
- function _isSlot(d) {
953
- return typeof d == "function" || Object.prototype.toString.call(d) === "[object Object]" && !isVNode(d);
951
+ function _isSlot(e) {
952
+ return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !isVNode(e);
954
953
  }
955
954
  const AppNotification = /* @__PURE__ */ defineComponent({
956
955
  name: "AppNotification",
@@ -965,36 +964,36 @@ const AppNotification = /* @__PURE__ */ defineComponent({
965
964
  default: 3e4
966
965
  }
967
966
  },
968
- setup(z, { slots: B, attrs: V }) {
969
- let { t: H } = useI18n(), U = ref(!1), W = ref("unread"), q = reactive({
967
+ setup(t, { slots: n, attrs: r }) {
968
+ let { t: i } = useI18n(), a = ref(!1), o = ref("unread"), u = reactive({
970
969
  page: 1,
971
970
  size: 10,
972
971
  loading: !1,
973
972
  records: [],
974
973
  total: 0,
975
974
  unread: 0
976
- }), { sync: J, post: X } = useAtomicBroadcast({
975
+ }), { sync: d, post: p } = useAtomicBroadcast({
977
976
  channel: "__ithinkdt_mc_shared_channel",
978
- onMsg: (d) => {
979
- q.unread = d;
977
+ onMsg: (e) => {
978
+ u.unread = e;
980
979
  },
981
- getMsg: () => (U.value && (q.loading = !0, Promise.resolve(z.getPage?.(W.value, q.page, q.size) ?? []).then(({ records: d, total: z }) => {
982
- q.records = d, W.value === "unread" ? (q.unread = z, X(z)) : q.total = z;
980
+ getMsg: () => (a.value && (u.loading = !0, Promise.resolve(t.getPage?.(o.value, u.page, u.size) ?? []).then(({ records: e, total: t }) => {
981
+ u.records = e, o.value === "unread" ? (u.unread = t, p(t)) : u.total = t;
983
982
  }).finally(() => {
984
- q.loading = !1;
985
- })), z.getUnreadCount?.() ?? 0),
986
- timeout: () => z.interval,
983
+ u.loading = !1;
984
+ })), t.getUnreadCount?.() ?? 0),
985
+ timeout: () => t.interval,
987
986
  immediate: !0
988
987
  });
989
988
  return () => {
990
- let d = withDirectives(createVNode(NButton, mergeProps(V, {
989
+ let e = withDirectives(createVNode(NButton, mergeProps(r, {
991
990
  quaternary: !0,
992
991
  style: "--n-padding: 0 12px",
993
992
  onClick: () => {
994
- U.value = !0, W.value = q.unread > 0 ? "unread" : "all", setTimeout(J, 300);
993
+ a.value = !0, o.value = u.unread > 0 ? "unread" : "all", setTimeout(d, 300);
995
994
  }
996
- }), { default: () => [B.icon ? B.icon() : createVNode(NBadge, {
997
- show: q.unread > 0,
995
+ }), { default: () => [n.icon ? n.icon() : createVNode(NBadge, {
996
+ show: u.unread > 0,
998
997
  dot: !0,
999
998
  offset: [-2, 5],
1000
999
  processing: !0
@@ -1012,47 +1011,47 @@ const AppNotification = /* @__PURE__ */ defineComponent({
1012
1011
  color: "currentColor"
1013
1012
  }, [createVNode("path", { d: "M2.53 14.77c-.213 1.394.738 2.361 1.902 2.843c4.463 1.85 10.673 1.85 15.136 0c1.164-.482 2.115-1.45 1.902-2.843c-.13-.857-.777-1.57-1.256-2.267c-.627-.924-.689-1.931-.69-3.003C19.525 5.358 16.157 2 12 2S4.475 5.358 4.475 9.5c0 1.072-.062 2.08-.69 3.003c-.478.697-1.124 1.41-1.255 2.267" }, null), createVNode("path", { d: "M8 19c.458 1.725 2.076 3 4 3c1.925 0 3.541-1.275 4-3" }, null)])])] })] })] }), [[
1014
1013
  vTooltip,
1015
- H("common.notification.tip", { count: q.unread }),
1014
+ i("common.notification.tip", { count: u.unread }),
1016
1015
  void 0,
1017
1016
  { bottom: !0 }
1018
- ]]), X = () => {
1019
- let d, z;
1017
+ ]]), p = () => {
1018
+ let e, t;
1020
1019
  return createVNode("div", { style: "display: flex; align-items: baseline; gap: 20px" }, [
1021
- createVNode("div", { style: "padding-right: 12px" }, [H("common.notification.title")]),
1020
+ createVNode("div", { style: "padding-right: 12px" }, [i("common.notification.title")]),
1022
1021
  createVNode(NButton, {
1023
1022
  text: !0,
1024
- type: W.value === "all" ? "primary" : "default",
1023
+ type: o.value === "all" ? "primary" : "default",
1025
1024
  onClick: () => {
1026
- W.value = "all", J();
1025
+ o.value = "all", d();
1027
1026
  }
1028
- }, _isSlot(d = H("common.notification.all")) ? d : { default: () => [d] }),
1027
+ }, _isSlot(e = i("common.notification.all")) ? e : { default: () => [e] }),
1029
1028
  createVNode(NButton, {
1030
1029
  text: !0,
1031
- type: W.value === "unread" ? "primary" : "default",
1030
+ type: o.value === "unread" ? "primary" : "default",
1032
1031
  onClick: () => {
1033
- W.value = "unread", J();
1032
+ o.value = "unread", d();
1034
1033
  }
1035
- }, _isSlot(z = H("common.notification.unread", { count: q.unread > 99 ? "99+" : q.unread.toString() })) ? z : { default: () => [z] })
1034
+ }, _isSlot(t = i("common.notification.unread", { count: u.unread > 99 ? "99+" : u.unread.toString() })) ? t : { default: () => [t] })
1036
1035
  ]);
1037
- }, Z = (d) => createVNode(NListItem, {
1038
- key: d.key,
1036
+ }, m = (e) => createVNode(NListItem, {
1037
+ key: e.key,
1039
1038
  onClick: () => {
1040
- d.status === "unread" && (z.markRead?.([d.key]).then(() => {
1041
- d.status = "read";
1042
- }), q.unread--), d.link && window.open(d.link, "_target");
1039
+ e.status === "unread" && (t.markRead?.([e.key]).then(() => {
1040
+ e.status = "read";
1041
+ }), u.unread--), e.link && window.open(e.link, "_target");
1043
1042
  }
1044
1043
  }, { default: () => [createVNode(NThing, {
1045
1044
  bordered: !1,
1046
1045
  closable: !0,
1047
1046
  contentIndented: !0,
1048
1047
  size: "small",
1049
- onMouseenter: () => d.hover = !0,
1050
- onMouseleave: () => d.hover = !1,
1048
+ onMouseenter: () => e.hover = !0,
1049
+ onMouseleave: () => e.hover = !1,
1051
1050
  style: "padding: 0 4px"
1052
1051
  }, {
1053
1052
  avatar: () => createVNode(NIcon, {
1054
1053
  size: 22,
1055
- color: d.status === "unread" ? "var(--color-primary)" : void 0
1054
+ color: e.status === "unread" ? "var(--color-primary)" : void 0
1056
1055
  }, { default: () => [createVNode("svg", {
1057
1056
  xmlns: "http://www.w3.org/2000/svg",
1058
1057
  width: "1em",
@@ -1062,48 +1061,48 @@ const AppNotification = /* @__PURE__ */ defineComponent({
1062
1061
  fill: "currentColor",
1063
1062
  d: "M12.3 7.29c.2-.18.44-.29.7-.29c.27 0 .5.11.71.29c.19.21.29.45.29.71c0 .27-.1.5-.29.71c-.21.19-.44.29-.71.29c-.26 0-.5-.1-.7-.29c-.19-.21-.3-.44-.3-.71c0-.26.11-.5.3-.71m-2.5 4.68s2.17-1.72 2.96-1.79c.74-.06.59.79.52 1.23l-.01.06c-.14.53-.31 1.17-.48 1.78c-.38 1.39-.75 2.75-.66 3c.1.34.72-.09 1.17-.39c.06-.04.11-.08.16-.11c0 0 .08-.08.16.03c.02.03.04.06.06.08c.09.14.14.19.02.27l-.04.02c-.22.15-1.16.81-1.54 1.05c-.41.27-1.98 1.17-1.74-.58c.21-1.23.49-2.29.71-3.12c.41-1.5.59-2.18-.33-1.59c-.37.22-.59.36-.72.45c-.11.08-.12.08-.19-.05l-.03-.06l-.05-.08c-.07-.1-.07-.11.03-.2M22 12c0 5.5-4.5 10-10 10S2 17.5 2 12S6.5 2 12 2s10 4.5 10 10m-2 0c0-4.42-3.58-8-8-8s-8 3.58-8 8s3.58 8 8 8s8-3.58 8-8"
1064
1063
  }, null)])] }),
1065
- header: () => d.title,
1064
+ header: () => e.title,
1066
1065
  "header-extra": () => {
1067
- let B, V;
1068
- return d.hover ? createVNode("div", {
1066
+ let n, r;
1067
+ return e.hover ? createVNode("div", {
1069
1068
  style: "display: flex; justify-content: end; gap: 12px",
1070
- onClick: (d) => {
1071
- d.preventDefault(), d.stopPropagation();
1069
+ onClick: (e) => {
1070
+ e.preventDefault(), e.stopPropagation();
1072
1071
  }
1073
- }, [d.status === "unread" ? createVNode(NButton, {
1072
+ }, [e.status === "unread" ? createVNode(NButton, {
1074
1073
  text: !0,
1075
1074
  type: "primary",
1076
1075
  onClick: () => {
1077
- z.markRead?.([d.key]).then(() => {
1078
- d.status = "read", q.unread--;
1076
+ t.markRead?.([e.key]).then(() => {
1077
+ e.status = "read", u.unread--;
1079
1078
  });
1080
1079
  }
1081
- }, _isSlot(B = H("common.notification.markRead")) ? B : { default: () => [B] }) : void 0, createVNode(NButton, {
1080
+ }, _isSlot(n = i("common.notification.markRead")) ? n : { default: () => [n] }) : void 0, createVNode(NButton, {
1082
1081
  text: !0,
1083
1082
  type: "error",
1084
1083
  onClick: () => {
1085
- q.records === 1 ? (q.records = [], J()) : q.records.splice(q.records.findIndex((z) => z.key == d.key), 1), z.markDelete?.([d.key]);
1084
+ u.records === 1 ? (u.records = [], d()) : u.records.splice(u.records.findIndex((t) => t.key == e.key), 1), t.markDelete?.([e.key]);
1086
1085
  }
1087
- }, _isSlot(V = H("common.notification.markDelete")) ? V : { default: () => [V] })]) : void 0;
1086
+ }, _isSlot(r = i("common.notification.markDelete")) ? r : { default: () => [r] })]) : void 0;
1088
1087
  },
1089
- default: d.content,
1090
- footer: () => createVNode("span", { style: "color: gray" }, [d.hover ? format(d.date, H("common.notification.time")) : H("common.timeago", { time: d.date })])
1091
- })] }), Q = () => {
1092
- let d;
1093
- return withDirectives(q.records.length > 0 ? createVNode(NList, {
1088
+ default: e.content,
1089
+ footer: () => createVNode("span", { style: "color: gray" }, [e.hover ? format(e.date, i("common.notification.time")) : i("common.timeago", { time: e.date })])
1090
+ })] }), h = () => {
1091
+ let e;
1092
+ return withDirectives(u.records.length > 0 ? createVNode(NList, {
1094
1093
  clickable: !0,
1095
1094
  hoverable: !0,
1096
1095
  style: "min-height: 50vh"
1097
- }, _isSlot(d = q.records.map((d) => Z(d))) ? d : { default: () => [d] }) : createVNode(NEmpty, { style: "margin-top: 30vh" }, null), [[vSpin, q.loading]]);
1098
- }, $ = () => createVNode("div", { style: "display: flex; justify-content: space-between; width: 100%" }, [W.value === "unread" ? createVNode(NButton, {
1096
+ }, _isSlot(e = u.records.map((e) => m(e))) ? e : { default: () => [e] }) : createVNode(NEmpty, { style: "margin-top: 30vh" }, null), [[vSpin, u.loading]]);
1097
+ }, g = () => createVNode("div", { style: "display: flex; justify-content: space-between; width: 100%" }, [o.value === "unread" ? createVNode(NButton, {
1099
1098
  text: !0,
1100
1099
  type: "primary",
1101
- disabled: q.records.length === 0,
1100
+ disabled: u.records.length === 0,
1102
1101
  onClick: () => {
1103
- let d = q.records.filter((d) => d.status === "unread").map((d) => d.key);
1104
- z.markRead(d).then(() => {
1105
- for (; q.unread - d.length <= q.size * (q.page - 1);) q.page--;
1106
- J();
1102
+ let e = u.records.filter((e) => e.status === "unread").map((e) => e.key);
1103
+ t.markRead(e).then(() => {
1104
+ for (; u.unread - e.length <= u.size * (u.page - 1);) u.page--;
1105
+ d();
1107
1106
  });
1108
1107
  }
1109
1108
  }, {
@@ -1116,42 +1115,42 @@ const AppNotification = /* @__PURE__ */ defineComponent({
1116
1115
  fill: "currentColor",
1117
1116
  d: "M.41 13.41L6 19l1.41-1.42L1.83 12m20.41-6.42L11.66 16.17L7.5 12l-1.43 1.41L11.66 19l12-12M18 7l-1.41-1.42l-6.35 6.35l1.42 1.41z"
1118
1117
  }, null)])] }),
1119
- default: () => H("common.notification.markPageRead")
1118
+ default: () => i("common.notification.markPageRead")
1120
1119
  }) : createVNode("span", null, null), createVNode(NPagination, {
1121
1120
  simple: !0,
1122
- pageSize: q.size,
1123
- page: q.page,
1124
- itemCount: W.value === "unread" ? q.unread : q.total,
1125
- onUpdatePage: (d) => {
1126
- q.page = d, J();
1121
+ pageSize: u.size,
1122
+ page: u.page,
1123
+ itemCount: o.value === "unread" ? u.unread : u.total,
1124
+ onUpdatePage: (e) => {
1125
+ u.page = e, d();
1127
1126
  }
1128
1127
  }, null)]);
1129
- return createVNode(Fragment, null, [d, createVNode(NDrawer, {
1130
- show: U.value,
1131
- "onUpdate:show": (d) => U.value = d,
1128
+ return createVNode(Fragment, null, [e, createVNode(NDrawer, {
1129
+ show: a.value,
1130
+ "onUpdate:show": (e) => a.value = e,
1132
1131
  showMask: !1,
1133
1132
  width: 400
1134
1133
  }, { default: () => [createVNode(NDrawerContent, {
1135
- title: H("common.notification.title"),
1134
+ title: i("common.notification.title"),
1136
1135
  closable: !0,
1137
1136
  nativeScrollbar: !1,
1138
1137
  bodyContentStyle: { padding: "0" }
1139
1138
  }, {
1140
- header: X,
1141
- default: Q,
1142
- footer: $
1139
+ header: p,
1140
+ default: h,
1141
+ footer: g
1143
1142
  })] })]);
1144
1143
  };
1145
1144
  }
1146
1145
  });
1147
- var ICheck = (d) => createVNode("svg", mergeProps({
1146
+ var ICheck = (e) => createVNode("svg", mergeProps({
1148
1147
  xmlns: "http://www.w3.org/2000/svg",
1149
1148
  "xmlns:xlink": "http://www.w3.org/1999/xlink",
1150
1149
  role: "img",
1151
1150
  width: "1em",
1152
1151
  height: "1em",
1153
1152
  viewBox: "0 0 24 24"
1154
- }, d), [createVNode("path", {
1153
+ }, e), [createVNode("path", {
1155
1154
  fill: "currentColor",
1156
1155
  d: "m9.55 18l-5.7-5.7l1.425-1.425L9.55 15.15l9.175-9.175L20.15 7.4z"
1157
1156
  }, null)]);
@@ -1162,27 +1161,27 @@ const AppTenant = /* @__PURE__ */ defineComponent({
1162
1161
  current: String
1163
1162
  },
1164
1163
  emit: ["update:current"],
1165
- setup(z, { emit: B }) {
1166
- let { t: V } = useI18n(), H = (d) => d.disabled ? createVNode("div", null, [d.name]) : createVNode("div", { style: "display: flex; align-items: center; justify-content: space-between; gap: 20px" }, [createVNode("div", { style: "display: flex; align-items: center; gap: 8px" }, [createVNode(NAvatar, {
1164
+ setup(t, { emit: n }) {
1165
+ let { t: r } = useI18n(), i = (e) => e.disabled ? createVNode("div", null, [e.name]) : createVNode("div", { style: "display: flex; align-items: center; justify-content: space-between; gap: 20px" }, [createVNode("div", { style: "display: flex; align-items: center; gap: 8px" }, [createVNode(NAvatar, {
1167
1166
  round: !0,
1168
1167
  size: 22,
1169
1168
  color: "var(--color-primary-hover)"
1170
- }, { default: () => [d.icon?.() || d.name[0]] }), createVNode("span", { style: d.id === z.current ? "color: var(--color-primary)" : "" }, [d.name])]), d.id === z.current ? createVNode(ICheck, { style: "color: var(--color-primary); font-size: 20px" }, null) : createVNode("div", null, null)]), U = computed(() => [{
1169
+ }, { default: () => [e.icon?.() || e.name[0]] }), createVNode("span", { style: e.id === t.current ? "color: var(--color-primary)" : "" }, [e.name])]), e.id === t.current ? createVNode(ICheck, { style: "color: var(--color-primary); font-size: 20px" }, null) : createVNode("div", null, null)]), a = computed(() => [{
1171
1170
  id: "___",
1172
- name: V("common.account.changeTenant"),
1171
+ name: r("common.account.changeTenant"),
1173
1172
  disabled: !0
1174
- }, ...z.options ?? []]);
1173
+ }, ...t.options ?? []]);
1175
1174
  return () => {
1176
- if (!z.options?.length) return;
1177
- let d = z.options.find((d) => d.id === z.current);
1175
+ if (!t.options?.length) return;
1176
+ let e = t.options.find((e) => e.id === t.current);
1178
1177
  return createVNode(NDropdown, {
1179
- options: U.value,
1178
+ options: a.value,
1180
1179
  placement: "bottom-end",
1181
1180
  keyField: "id",
1182
1181
  labelField: "name",
1183
1182
  showArrow: !0,
1184
- renderLabel: H,
1185
- onSelect: (d) => d !== z.current && B("update:current", d)
1183
+ renderLabel: i,
1184
+ onSelect: (e) => e !== t.current && n("update:current", e)
1186
1185
  }, { default: () => [createVNode(NButton, {
1187
1186
  quaternary: !0,
1188
1187
  style: "--n-padding: 0 6px"
@@ -1198,15 +1197,15 @@ const AppTenant = /* @__PURE__ */ defineComponent({
1198
1197
  d: "M728 600.2c8.1-13.2 4-30.4-9.1-38.5-30.7-19-63.6-33.8-97.8-44.4 69.4-43 115.6-119.8 115.6-207.4C736.7 175.2 627.5 66 492.8 66S249 175.2 249 309.9c0 88.2 46.8 165.5 117 208.3-12.9 4.1-25.6 8.8-38.1 14.1-51.1 21.8-97 53-136.4 92.7-39.4 39.7-70.3 85.9-91.9 137.4-22.4 53.3-33.7 109.9-33.7 168.2 0 15.5 12.5 28 28 28s28-12.5 28-28c0-207.5 167.4-376.3 373.2-376.3 68.8 0 136.1 19 194.4 55 13.1 8.2 30.4 4.1 38.5-9.1zM305 309.9c0-50.2 19.5-97.4 55-132.8 35.5-35.5 82.7-55 132.8-55 50.2 0 97.4 19.5 132.8 55 35.5 35.5 55 82.7 55 132.8s-19.5 97.4-55 132.8c-35.5 35.5-82.7 55-132.8 55-50.2 0-97.4-19.5-132.8-55-35.5-35.5-55-82.6-55-132.8zM606.2 746.4h325.1c11.3 0 21.5-6.8 25.9-17.3s1.9-22.5-6.1-30.5L844.5 592.1c-10.9-10.9-28.7-10.9-39.6 0-10.9 10.9-10.9 28.7 0 39.6l58.7 58.6H606.2c-15.5 0-28 12.5-28 28s12.6 28.1 28 28.1zM931.4 794.6H606.3c-11.3 0-21.5 6.8-25.9 17.3s-1.9 22.5 6.1 30.5l106.6 106.4c5.5 5.5 12.6 8.2 19.8 8.2 7.2 0 14.4-2.7 19.8-8.2 10.9-10.9 10.9-28.7 0-39.6L674 850.6h257.4c15.5 0 28-12.5 28-28s-12.5-28-28-28z",
1199
1198
  fill: "currentColor"
1200
1199
  }, null)])] }),
1201
- default: () => d?.shotName || d?.name
1200
+ default: () => e?.shotName || e?.name
1202
1201
  })] });
1203
1202
  };
1204
1203
  }
1205
1204
  }), UIProvider = /* @__PURE__ */ defineComponent({
1206
1205
  name: "UIProvider",
1207
1206
  props: { i18n: Function },
1208
- setup(d, { slots: B }) {
1209
- return provide(UI_I18N_INJECTION, toRef(d, "i18n")), () => B.default();
1207
+ setup(e, { slots: n }) {
1208
+ return provide(UI_I18N_INJECTION, toRef(e, "i18n")), () => n.default();
1210
1209
  }
1211
1210
  });
1212
- export { AppAccount, AppAppearance, AppBreadcrumb, AppContent, AppFooter, AppFullscreen, AppHeader, AppLanguage, AppLayout, AppLogo, AppMenu, AppMultiTabs, AppNotification, AppSider, AppTenant, SpinDirectiveProvider, TooltipDirectiveProvider, UIProvider, vSpin, vTooltip };
1211
+ export { AppAccount, AppAppearance, AppBreadcrumb, AppContent, AppFooter, AppFullscreen, AppHeader, AppLanguage, AppLayout, AppLogo, AppMenu, AppMultiTabs, AppNotification, AppSidebar, AppTenant, SpinDirectiveProvider, TooltipDirectiveProvider, UIProvider, vSpin, vTooltip };