@vtj/ui 0.7.30 → 0.7.31

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.mjs CHANGED
@@ -1,17 +1,17 @@
1
1
  import { defineComponent as V, useAttrs as We, getCurrentInstance as pe, computed as v, markRaw as we, openBlock as u, createBlock as g, unref as o, normalizeClass as J, normalizeStyle as fe, withCtx as f, renderSlot as C, resolveDynamicComponent as Q, createCommentVNode as h, createElementBlock as $, mergeProps as F, createElementVNode as j, toDisplayString as A, Fragment as W, renderList as Y, isVNode as Xt, h as ae, shallowRef as Pe, ref as D, watch as L, toRef as Ae, createTextVNode as R, useSlots as Ht, toRaw as ye, createVNode as k, normalizeProps as le, guardReactiveProps as be, effectScope as ft, reactive as Oe, onMounted as mt, onUnmounted as gt, watchEffect as Je, nextTick as ve, Teleport as yt, withDirectives as G, createSlots as ce, render as nt, vShow as oe, isRef as Ie, withModifiers as vt, KeepAlive as Kt, provide as Ce, inject as Se, withKeys as Lt } from "vue";
2
2
  import { ElIcon as Wt, ElSubMenu as Jt, ElBadge as He, ElMenuItem as Qt, ElMenu as Zt, ElButton as ie, ElDropdown as Gt, ElDropdownMenu as Yt, ElDropdownItem as qt, ElTooltip as ht, ElDivider as se, ElSwitch as Qe, ElInput as _e, ElEmpty as bt, ElTabs as _t, ElTabPane as Ke, ElPopover as kt, ElAvatar as en, ElMessageBox as je, ElSelect as wt, ElOption as xt, ElCheckboxButton as tn, ElCheckbox as nn, ElCheckboxGroup as on, ElRadioButton as an, ElRadio as sn, ElRadioGroup as ln, ElInputNumber as rn, ElDatePicker as ot, ElTimePicker as un, ElRate as cn, ElSlider as dn, ElCascader as pn, formContextKey as fn, ElFormItem as mn, ElForm as gn, ElImage as yn, ElInfiniteScroll as at, ElPagination as vn, ElDescriptions as st, ElDescriptionsItem as Ne, ElMessage as lt } from "element-plus";
3
- import { ArrowRight as hn, Minimize as bn, Popup as _n, Maximize as kn, RawClose as wn, StarFilled as St, Menu as xn, Search as Le, Close as Ct, Expand as Sn, Fold as Cn, Star as zt, Document as me, Refresh as zn, CopyDocument as $n, Moon as Tn, Sunny as En, MoreFilled as Mn, UserFilled as In, HomeFilled as Vn, WarningFilled as Bn, EditPen as Pn } from "@vtj/icons";
3
+ import { ArrowRight as hn, Minimize as bn, Popup as _n, Maximize as kn, RawClose as wn, StarFilled as St, Menu as xn, Search as Le, Close as Ct, Expand as Sn, Fold as Cn, Star as zt, Document as me, Refresh as zn, CopyDocument as $n, Moon as Tn, Sunny as En, MoreFilled as Mn, UserFilled as In, HomeFilled as Bn, WarningFilled as Vn, EditPen as Pn } from "@vtj/icons";
4
4
  import { useDraggable as An, useMouseInElement as Dn, useEventListener as De, useElementSize as $t, useDark as On, useResizeObserver as Rn, useVirtualList as Fn } from "@vueuse/core";
5
- import { isEqual as Ze, isObject as Ge, uid as Tt, arrayToMap as jn, isUrl as Nn, upperFirstCamelCase as Et, toArray as Mt, get as Ve, merge as Un, set as Ue, debounce as Xn, dedupArray as Hn, numberFormat as Kn } from "@vtj/utils";
5
+ import { isEqual as Ze, isObject as Ge, uid as Tt, arrayToMap as jn, isUrl as Nn, upperFirstCamelCase as Et, toArray as Mt, get as Be, merge as Un, set as Ue, debounce as Xn, dedupArray as Hn, numberFormat as Kn } from "@vtj/utils";
6
6
  import { useRouter as Ye, RouterView as Ln, useRoute as It, routeLocationKey as Wn } from "vue-router";
7
7
  /**!
8
8
  * Copyright (c) 2024, VTJ.PRO All rights reserved.
9
9
  * @name @vtj/ui
10
10
  * @author CHC chenhuachun1549@dingtalk.com
11
- * @version 0.7.30
11
+ * @version 0.7.31
12
12
  * @license <a href="https://vtj.pro/license.html">MIT License</a>
13
13
  */
14
- const Ua = "0.7.30", Jn = {
14
+ const Ua = "0.7.31", Jn = {
15
15
  default: 14,
16
16
  small: 12,
17
17
  large: 18
@@ -105,7 +105,7 @@ const rt = Symbol("INSTALLED_KEY"), Xa = (a = []) => ({
105
105
  }, qn = /* @__PURE__ */ j("i", null, null, -1), eo = {
106
106
  key: 0,
107
107
  class: "x-menu__title"
108
- }, to = /* @__PURE__ */ j("i", null, null, -1), Vt = /* @__PURE__ */ V({
108
+ }, to = /* @__PURE__ */ j("i", null, null, -1), Bt = /* @__PURE__ */ V({
109
109
  inheritAttrs: !1,
110
110
  name: "XMenuItem",
111
111
  __name: "MenuItem",
@@ -144,7 +144,7 @@ const rt = Symbol("INSTALLED_KEY"), Xa = (a = []) => ({
144
144
  ])
145
145
  ]),
146
146
  default: f(() => [
147
- (u(!0), $(W, null, Y(s(n.item.children), (i) => (u(), g(o(Vt), {
147
+ (u(!0), $(W, null, Y(s(n.item.children), (i) => (u(), g(o(Bt), {
148
148
  key: i.id,
149
149
  item: i,
150
150
  subMenu: n.subMenu,
@@ -208,7 +208,7 @@ const rt = Symbol("INSTALLED_KEY"), Xa = (a = []) => ({
208
208
  };
209
209
  return (r, i) => (u(), g(o(Zt), F({ class: "x-menu" }, r.$attrs, { onSelect: c }), {
210
210
  default: f(() => [
211
- (u(!0), $(W, null, Y(l.value, (p) => (u(), g(o(Vt), {
211
+ (u(!0), $(W, null, Y(l.value, (p) => (u(), g(o(Bt), {
212
212
  item: { ...p, icon: p.icon },
213
213
  defaultIcon: e.defaultIcon,
214
214
  subMenu: e.subMenu
@@ -217,7 +217,7 @@ const rt = Symbol("INSTALLED_KEY"), Xa = (a = []) => ({
217
217
  _: 1
218
218
  }, 16));
219
219
  }
220
- }), Bt = {
220
+ }), Vt = {
221
221
  /**
222
222
  * 动作名称标识
223
223
  */
@@ -383,7 +383,7 @@ function lo(a, n, e) {
383
383
  }
384
384
  const io = { key: 0 }, ro = /* @__PURE__ */ V({
385
385
  __name: "Trigger",
386
- props: Bt,
386
+ props: Vt,
387
387
  emits: ["click"],
388
388
  setup(a, { emit: n }) {
389
389
  const e = a, t = n, l = ke(Ae(e, "icon")), s = qe(Ae(e, "disabled")), c = v(() => ({
@@ -420,7 +420,7 @@ const io = { key: 0 }, ro = /* @__PURE__ */ V({
420
420
  }), te = /* @__PURE__ */ V({
421
421
  name: "XAction",
422
422
  __name: "Action",
423
- props: Bt,
423
+ props: Vt,
424
424
  emits: ["click", "command"],
425
425
  setup(a, { emit: n }) {
426
426
  const e = a, t = Ht(), l = n, s = no(e), c = oo(e), r = ao(e), i = qe(Ae(e, "disabled")), p = v(() => ({
@@ -430,7 +430,7 @@ const io = { key: 0 }, ro = /* @__PURE__ */ V({
430
430
  }, m = (w) => {
431
431
  if (i.value)
432
432
  return;
433
- const M = e.menus?.find((B) => B.command === w);
433
+ const M = e.menus?.find((I) => I.command === w);
434
434
  M && l("command", ye(M));
435
435
  }, b = (w) => ae(He, c.value, () => [].concat(w)), _ = (w) => ae(
436
436
  Gt,
@@ -440,10 +440,10 @@ const io = { key: 0 }, ro = /* @__PURE__ */ V({
440
440
  dropdown: () => [
441
441
  ae(
442
442
  Yt,
443
- () => (e.menus || []).map((M, B) => ae(
443
+ () => (e.menus || []).map((M, I) => ae(
444
444
  qt,
445
445
  M,
446
- () => t.item ? t.item({ item: M, index: B }) : M.label
446
+ () => t.item ? t.item({ item: M, index: I }) : M.label
447
447
  ))
448
448
  )
449
449
  ]
@@ -553,7 +553,7 @@ const io = { key: 0 }, ro = /* @__PURE__ */ V({
553
553
  }, c = (r, i) => {
554
554
  t("command", r, i);
555
555
  };
556
- return (r, i) => (u(), g(o(I), {
556
+ return (r, i) => (u(), g(o(B), {
557
557
  class: "x-action-bar",
558
558
  align: "center"
559
559
  }, {
@@ -698,7 +698,7 @@ const io = { key: 0 }, ro = /* @__PURE__ */ V({
698
698
  autoPointer: {
699
699
  type: Boolean
700
700
  }
701
- }, I = /* @__PURE__ */ V({
701
+ }, B = /* @__PURE__ */ V({
702
702
  name: "XContainer",
703
703
  __name: "Container",
704
704
  props: co,
@@ -719,7 +719,7 @@ const io = { key: 0 }, ro = /* @__PURE__ */ V({
719
719
  [`is-align-${n.align}`]: n.flex && n.align !== "flex-start",
720
720
  [`is-align-content-${n.alignContent}`]: n.flex && n.alignContent !== "stretch",
721
721
  "is-grow": n.grow ?? l.value,
722
- "is-shrink": l.value && n.shrink,
722
+ "is-shrink": n.shrink,
723
723
  [`is-align-self-${n.alignSelf}`]: l.value && n.alignSelf !== "auto",
724
724
  [`is-overflow-${n.overflow}`]: !!n.overflow,
725
725
  "is-padding": !!n.padding,
@@ -777,13 +777,13 @@ const io = { key: 0 }, ro = /* @__PURE__ */ V({
777
777
  "is-border": n.border,
778
778
  "is-pointer": !!t.onClick
779
779
  }));
780
- return (s, c) => (u(), g(o(I), {
780
+ return (s, c) => (u(), g(o(B), {
781
781
  class: J(["x-header", l.value]),
782
782
  justify: "space-between",
783
783
  align: "center"
784
784
  }, {
785
785
  default: f(() => [
786
- k(o(I), {
786
+ k(o(B), {
787
787
  align: "center",
788
788
  class: J(["x-header__wrapper", l.value]),
789
789
  grow: "",
@@ -889,7 +889,7 @@ const io = { key: 0 }, ro = /* @__PURE__ */ V({
889
889
  footer: {
890
890
  type: Object
891
891
  }
892
- }, Be = /* @__PURE__ */ V({
892
+ }, Ve = /* @__PURE__ */ V({
893
893
  name: "XPanel",
894
894
  __name: "Panel",
895
895
  props: yo,
@@ -910,7 +910,7 @@ const io = { key: 0 }, ro = /* @__PURE__ */ V({
910
910
  }), c = v(() => e.fit || e.height ? "auto" : void 0);
911
911
  return n({
912
912
  bodyRef: t
913
- }), (r, i) => (u(), g(o(I), {
913
+ }), (r, i) => (u(), g(o(B), {
914
914
  class: J(["x-panel", l.value]),
915
915
  direction: "column",
916
916
  fit: e.fit,
@@ -918,7 +918,7 @@ const io = { key: 0 }, ro = /* @__PURE__ */ V({
918
918
  height: e.height
919
919
  }, {
920
920
  default: f(() => [
921
- s.value ? (u(), g(o(I), {
921
+ s.value ? (u(), g(o(B), {
922
922
  key: 0,
923
923
  flex: !1,
924
924
  class: "x-panel__header"
@@ -938,7 +938,7 @@ const io = { key: 0 }, ro = /* @__PURE__ */ V({
938
938
  ]),
939
939
  _: 3
940
940
  })) : h("", !0),
941
- k(o(I), F({
941
+ k(o(B), F({
942
942
  ref_key: "bodyRef",
943
943
  ref: t,
944
944
  flex: !1,
@@ -952,7 +952,7 @@ const io = { key: 0 }, ro = /* @__PURE__ */ V({
952
952
  ]),
953
953
  _: 3
954
954
  }, 16, ["overflow"]),
955
- r.$slots.footer ? (u(), g(o(I), F({
955
+ r.$slots.footer ? (u(), g(o(B), F({
956
956
  key: 1,
957
957
  flex: !1,
958
958
  padding: "",
@@ -1003,8 +1003,8 @@ class ct {
1003
1003
  onEnd: (y, S) => {
1004
1004
  if (clearTimeout(r), document.body.classList.remove(ut), this.dragging && m) {
1005
1005
  this.dragging = !1;
1006
- const { x: w, y: M } = y, B = this.getPosition(m, d, w, M);
1007
- c && c(B, S), m = null;
1006
+ const { x: w, y: M } = y, I = this.getPosition(m, d, w, M);
1007
+ c && c(I, S), m = null;
1008
1008
  }
1009
1009
  }
1010
1010
  });
@@ -1084,26 +1084,26 @@ class dt {
1084
1084
  maxHeight: M = 99999
1085
1085
  } = l;
1086
1086
  if (c.includes("e")) {
1087
- const B = Math.min(Math.max(p.value, y), w);
1088
- s.style.width = `${B}px`;
1087
+ const I = Math.min(Math.max(p.value, y), w);
1088
+ s.style.width = `${I}px`;
1089
1089
  }
1090
1090
  if (c.includes("s")) {
1091
- const B = Math.min(Math.max(d.value, S), M);
1092
- s.style.height = `${B}px`;
1091
+ const I = Math.min(Math.max(d.value, S), M);
1092
+ s.style.height = `${I}px`;
1093
1093
  }
1094
1094
  if (c.includes("w")) {
1095
- const B = Math.min(
1095
+ const I = Math.min(
1096
1096
  Math.max(b.value - p.value, y),
1097
1097
  w
1098
1098
  );
1099
- s.style.width = `${B}px`, s.style.left = `${r.value}px`;
1099
+ s.style.width = `${I}px`, s.style.left = `${r.value}px`;
1100
1100
  }
1101
1101
  if (c.includes("n")) {
1102
- const B = Math.min(
1102
+ const I = Math.min(
1103
1103
  Math.max(m.value - d.value, S),
1104
1104
  M
1105
1105
  );
1106
- this.el.style.height = `${B}px`, this.el.style.top = `${i.value}px`;
1106
+ this.el.style.height = `${I}px`, this.el.style.top = `${i.value}px`;
1107
1107
  }
1108
1108
  _ && _(c, n);
1109
1109
  }
@@ -1362,7 +1362,7 @@ const Co = ["src"], At = /* @__PURE__ */ V({
1362
1362
  props: ho,
1363
1363
  emits: ["update:modelValue", "open", "close", "destroy", "maximized", "minimized", "normal", "modeChange", "dragStart", "dragging", "dragEnd", "resizeStart", "resizeEnd", "resizing", "submit", "cancel"],
1364
1364
  setup(a, { expose: n, emit: e }) {
1365
- const t = a, l = e, s = pe(), c = D(), r = D(), { state: i, maximized: p, minimized: d, normal: m } = bo(t, c), { styles: b, classes: _, wrapperClass: y, modalStyle: S } = _o(t, i), { changeMode: w, active: M, close: B, show: z, hide: P, submit: T, cancel: N } = ko(
1365
+ const t = a, l = e, s = pe(), c = D(), r = D(), { state: i, maximized: p, minimized: d, normal: m } = bo(t, c), { styles: b, classes: _, wrapperClass: y, modalStyle: S } = _o(t, i), { changeMode: w, active: M, close: I, show: z, hide: P, submit: T, cancel: N } = ko(
1366
1366
  t,
1367
1367
  i,
1368
1368
  l
@@ -1382,6 +1382,7 @@ const Co = ["src"], At = /* @__PURE__ */ V({
1382
1382
  hide: P,
1383
1383
  submit: T,
1384
1384
  cancel: N,
1385
+ close: I,
1385
1386
  componentInstance: K
1386
1387
  }), (Z, ee) => t.modelValue ? (u(), g(yt, {
1387
1388
  key: 0,
@@ -1397,7 +1398,7 @@ const Co = ["src"], At = /* @__PURE__ */ V({
1397
1398
  class: "x-dialog__modal",
1398
1399
  style: fe(o(S))
1399
1400
  }, null, 4)) : h("", !0),
1400
- G((u(), g(o(Be), F({
1401
+ G((u(), g(o(Ve), F({
1401
1402
  ref_key: "panelRef",
1402
1403
  ref: r,
1403
1404
  class: ["x-dialog", o(_)],
@@ -1452,7 +1453,7 @@ const Co = ["src"], At = /* @__PURE__ */ V({
1452
1453
  mode: "icon",
1453
1454
  type: "danger",
1454
1455
  background: "hover",
1455
- onClick: o(B)
1456
+ onClick: o(I)
1456
1457
  }, null, 8, ["icon", "size", "onClick"])) : h("", !0)
1457
1458
  ]),
1458
1459
  default: f(() => [
@@ -1471,13 +1472,13 @@ const Co = ["src"], At = /* @__PURE__ */ V({
1471
1472
  name: "footer",
1472
1473
  fn: f(() => [
1473
1474
  C(Z.$slots, "footer", {}, () => [
1474
- k(o(I), { align: "center" }, {
1475
+ k(o(B), { align: "center" }, {
1475
1476
  default: f(() => [
1476
1477
  C(Z.$slots, "extra")
1477
1478
  ]),
1478
1479
  _: 3
1479
1480
  }),
1480
- k(o(I), { align: "center" }, {
1481
+ k(o(B), { align: "center" }, {
1481
1482
  default: f(() => [
1482
1483
  C(Z.$slots, "handle"),
1483
1484
  t.cancel ? (u(), g(o(ie), {
@@ -1537,7 +1538,7 @@ const zo = /* @__PURE__ */ j("div", { class: "x-mask-sidebar__helper" }, null, -
1537
1538
  },
1538
1539
  setup(a) {
1539
1540
  const n = a;
1540
- return (e, t) => G((u(), g(o(I), {
1541
+ return (e, t) => G((u(), g(o(B), {
1541
1542
  class: J(["x-mask-sidebar", { "is-collapsed": n.collapsed }]),
1542
1543
  grow: !1,
1543
1544
  flex: "",
@@ -1545,7 +1546,7 @@ const zo = /* @__PURE__ */ j("div", { class: "x-mask-sidebar__helper" }, null, -
1545
1546
  }, {
1546
1547
  default: f(() => [
1547
1548
  C(e.$slots, "brand"),
1548
- k(o(I), {
1549
+ k(o(B), {
1549
1550
  class: "x-mask-sidebar__wrapper",
1550
1551
  flex: "",
1551
1552
  grow: "",
@@ -1594,13 +1595,13 @@ const zo = /* @__PURE__ */ j("div", { class: "x-mask-sidebar__helper" }, null, -
1594
1595
  }, m = () => {
1595
1596
  t("update:favorite", c.value);
1596
1597
  };
1597
- return (b, _) => (u(), g(o(I), {
1598
+ return (b, _) => (u(), g(o(B), {
1598
1599
  class: "x-mask-switch-bar",
1599
1600
  justify: "space-between",
1600
1601
  align: "center"
1601
1602
  }, {
1602
1603
  default: f(() => [
1603
- e.collasped ? h("", !0) : (u(), g(o(I), {
1604
+ e.collasped ? h("", !0) : (u(), g(o(B), {
1604
1605
  key: 0,
1605
1606
  class: "x-mask-switch-bar__left",
1606
1607
  grow: ""
@@ -1636,7 +1637,7 @@ const zo = /* @__PURE__ */ j("div", { class: "x-mask-sidebar__helper" }, null, -
1636
1637
  ]),
1637
1638
  _: 1
1638
1639
  })),
1639
- k(o(I), {
1640
+ k(o(B), {
1640
1641
  class: J(["x-mask-switch-bar__right", { "is-collasped": e.collasped }]),
1641
1642
  flex: "",
1642
1643
  align: "center",
@@ -1689,12 +1690,12 @@ const zo = /* @__PURE__ */ j("div", { class: "x-mask-sidebar__helper" }, null, -
1689
1690
  const n = a, e = Ye(), t = () => {
1690
1691
  n.url && e.push(n.url);
1691
1692
  };
1692
- return (l, s) => (u(), g(o(I), {
1693
+ return (l, s) => (u(), g(o(B), {
1693
1694
  class: J(["x-mask-brand", { "is-collapsed": n.collapsed }]),
1694
1695
  align: "center"
1695
1696
  }, {
1696
1697
  default: f(() => [
1697
- k(o(I), {
1698
+ k(o(B), {
1698
1699
  class: "x-mask-brand__logo",
1699
1700
  flex: "",
1700
1701
  justify: "center",
@@ -1711,7 +1712,7 @@ const zo = /* @__PURE__ */ j("div", { class: "x-mask-sidebar__helper" }, null, -
1711
1712
  ]),
1712
1713
  _: 3
1713
1714
  }),
1714
- k(o(I), {
1715
+ k(o(B), {
1715
1716
  class: "x-mask-brand__title",
1716
1717
  flex: "",
1717
1718
  align: "center"
@@ -1729,7 +1730,7 @@ const zo = /* @__PURE__ */ j("div", { class: "x-mask-sidebar__helper" }, null, -
1729
1730
  _: 3
1730
1731
  }, 8, ["class"]));
1731
1732
  }
1732
- }), Ee = "__favorites__", Me = "__search__", Vo = /* @__PURE__ */ V({
1733
+ }), Ee = "__favorites__", Me = "__search__", Bo = /* @__PURE__ */ V({
1733
1734
  __name: "Menu",
1734
1735
  props: {
1735
1736
  collapse: { type: Boolean, default: !1 },
@@ -1775,7 +1776,7 @@ const zo = /* @__PURE__ */ j("div", { class: "x-mask-sidebar__helper" }, null, -
1775
1776
  l("select", p);
1776
1777
  };
1777
1778
  return (p, d) => (u(), $(W, null, [
1778
- G(k(o(I), {
1779
+ G(k(o(B), {
1779
1780
  class: "x-mask-menu",
1780
1781
  grow: "",
1781
1782
  flex: !1,
@@ -1821,7 +1822,7 @@ const zo = /* @__PURE__ */ j("div", { class: "x-mask-sidebar__helper" }, null, -
1821
1822
  }, 512), [
1822
1823
  [oe, !e.favorite && !e.keyword]
1823
1824
  ]),
1824
- G(k(o(I), {
1825
+ G(k(o(B), {
1825
1826
  class: "x-mask-menu",
1826
1827
  grow: "",
1827
1828
  flex: !1,
@@ -1869,7 +1870,7 @@ const zo = /* @__PURE__ */ j("div", { class: "x-mask-sidebar__helper" }, null, -
1869
1870
  }, 512), [
1870
1871
  [oe, e.favorite && !e.keyword]
1871
1872
  ]),
1872
- e.keyword ? G((u(), g(o(I), {
1873
+ e.keyword ? G((u(), g(o(B), {
1873
1874
  key: 0,
1874
1875
  class: "x-mask-menu",
1875
1876
  grow: "",
@@ -1920,13 +1921,13 @@ const zo = /* @__PURE__ */ j("div", { class: "x-mask-sidebar__helper" }, null, -
1920
1921
  ]) : h("", !0)
1921
1922
  ], 64));
1922
1923
  }
1923
- }), Bo = "data:image/png;base64,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", Po = 140, Ao = {
1924
+ }), Vo = "data:image/png;base64,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", Po = 140, Ao = {
1924
1925
  /**
1925
1926
  * 系统logo
1926
1927
  */
1927
1928
  logo: {
1928
1929
  type: String,
1929
- default: Bo
1930
+ default: Vo
1930
1931
  },
1931
1932
  /**
1932
1933
  * 系统标题
@@ -2069,7 +2070,7 @@ const zo = /* @__PURE__ */ j("div", { class: "x-mask-sidebar__helper" }, null, -
2069
2070
  }, p = (d, m) => {
2070
2071
  m.target && m.target.classList.remove("is-dagging");
2071
2072
  };
2072
- return (d, m) => (u(), g(o(I), {
2073
+ return (d, m) => (u(), g(o(B), {
2073
2074
  ref: "tabsRef",
2074
2075
  class: "x-mask-tabs",
2075
2076
  height: "100%",
@@ -2209,7 +2210,7 @@ const zo = /* @__PURE__ */ j("div", { class: "x-mask-sidebar__helper" }, null, -
2209
2210
  }, i = (p, d) => {
2210
2211
  t("actionCommand", p, d);
2211
2212
  };
2212
- return (p, d) => (u(), g(o(I), {
2213
+ return (p, d) => (u(), g(o(B), {
2213
2214
  class: "x-mask-toolbar",
2214
2215
  align: "center"
2215
2216
  }, {
@@ -2295,7 +2296,7 @@ const zo = /* @__PURE__ */ j("div", { class: "x-mask-sidebar__helper" }, null, -
2295
2296
  },
2296
2297
  setup(a) {
2297
2298
  const n = a;
2298
- return (e, t) => (u(), g(o(I), {
2299
+ return (e, t) => (u(), g(o(B), {
2299
2300
  class: "x-mask__content",
2300
2301
  flex: !1,
2301
2302
  grow: "",
@@ -2333,7 +2334,7 @@ function Lo(a) {
2333
2334
  return v(() => {
2334
2335
  const e = a.home;
2335
2336
  return Object.assign(
2336
- { id: n, url: "/", name: "MaskHome", icon: Vn, closable: !1 },
2337
+ { id: n, url: "/", name: "MaskHome", icon: Bn, closable: !1 },
2337
2338
  typeof e == "string" ? { url: e } : e || {}
2338
2339
  );
2339
2340
  });
@@ -2351,17 +2352,17 @@ function Wo(a, n) {
2351
2352
  console.warn("找不到菜单", y);
2352
2353
  return;
2353
2354
  }
2354
- const { type: M = "route", url: B, title: z, icon: P } = w;
2355
- if (!B) {
2355
+ const { type: M = "route", url: I, title: z, icon: P } = w;
2356
+ if (!I) {
2356
2357
  r.value = w, n("select", w);
2357
2358
  return;
2358
2359
  }
2359
2360
  if (M === "route") {
2360
- Nn(B) || B.startsWith("//") ? window.open(B) : (r.value = w, e.push(B).catch((T) => T));
2361
+ Nn(I) || I.startsWith("//") ? window.open(I) : (r.value = w, e.push(I).catch((T) => T));
2361
2362
  return;
2362
2363
  }
2363
2364
  if (M === "window") {
2364
- window.open(B);
2365
+ window.open(I);
2365
2366
  return;
2366
2367
  }
2367
2368
  M === "dialog" && tt({
@@ -2371,7 +2372,7 @@ function Wo(a, n) {
2371
2372
  height: "80%",
2372
2373
  title: z,
2373
2374
  icon: P,
2374
- src: B
2375
+ src: I
2375
2376
  });
2376
2377
  }, p = async () => {
2377
2378
  t.value = typeof a.menus == "function" ? await a.menus() || [] : a.menus ?? [], l.value = typeof a.favorites == "function" ? await a.favorites() || [] : a.favorites ?? [];
@@ -2394,7 +2395,7 @@ function Wo(a, n) {
2394
2395
  function Jo(a, n, e, t, l) {
2395
2396
  const s = It(), c = Ye(), r = {}, i = D([]), p = D(), { width: d } = $t(p), m = v(() => Math.floor(d.value / Po)), b = v(
2396
2397
  () => i.value.slice(0, m.value).filter((E) => !E.dialog)
2397
- ), _ = v(() => i.value.slice(m.value)), y = (E) => e.value.find((O) => O.url === E), S = (E) => s.fullPath === E.url, w = (E) => l.value.id === E ? l.value : i.value.find((O) => O.id === E), M = D(""), B = v(() => w(M.value)), z = (E) => {
2398
+ ), _ = v(() => i.value.slice(m.value)), y = (E) => e.value.find((O) => O.url === E), S = (E) => s.fullPath === E.url, w = (E) => l.value.id === E ? l.value : i.value.find((O) => O.id === E), M = D(""), I = v(() => w(M.value)), z = (E) => {
2398
2399
  c.push(E.url).catch((O) => O);
2399
2400
  }, P = (E) => {
2400
2401
  M.value = E.id, s.fullPath !== E.url && z(E);
@@ -2463,7 +2464,7 @@ function Jo(a, n, e, t, l) {
2463
2464
  tabRef: p,
2464
2465
  tabs: i,
2465
2466
  showTabs: b,
2466
- currentTab: B,
2467
+ currentTab: I,
2467
2468
  changeTab: z,
2468
2469
  removeTab: H,
2469
2470
  updateTab: K,
@@ -2554,14 +2555,14 @@ function Qo(a) {
2554
2555
  }, _(T);
2555
2556
  }
2556
2557
  }
2557
- }, B = (z) => !!t[z];
2558
+ }, I = (z) => !!t[z];
2558
2559
  return De(document, "dragover", w), De(document, "drop", M), {
2559
2560
  createView: d,
2560
2561
  openDialog: _,
2561
2562
  refresh: y,
2562
2563
  exclude: e,
2563
2564
  cleanCache: S,
2564
- hasDialog: B,
2565
+ hasDialog: I,
2565
2566
  closeDialog: m,
2566
2567
  closeDialogs: b
2567
2568
  };
@@ -2577,7 +2578,7 @@ const Ha = /* @__PURE__ */ V({
2577
2578
  showTabs: S,
2578
2579
  currentTab: w,
2579
2580
  changeTab: M,
2580
- removeTab: B,
2581
+ removeTab: I,
2581
2582
  tabs: z,
2582
2583
  updateTab: P,
2583
2584
  isCurrentTab: T,
@@ -2592,7 +2593,7 @@ const Ha = /* @__PURE__ */ V({
2592
2593
  isCurrentTab: T,
2593
2594
  activeHome: N
2594
2595
  }), ze = async (X) => {
2595
- await B(X) && await O([X]);
2596
+ await I(X) && await O([X]);
2596
2597
  }, $e = async () => {
2597
2598
  const X = await x();
2598
2599
  X && (U(X), await O(X));
@@ -2611,7 +2612,7 @@ const Ha = /* @__PURE__ */ V({
2611
2612
  updateTab: P,
2612
2613
  active: m,
2613
2614
  currentTab: w
2614
- }), (X, ne) => (u(), g(o(I), {
2615
+ }), (X, ne) => (u(), g(o(B), {
2615
2616
  class: J(["x-mask", { "is-disabled": e.disabled }]),
2616
2617
  fit: ""
2617
2618
  }, {
@@ -2644,7 +2645,7 @@ const Ha = /* @__PURE__ */ V({
2644
2645
  keyword: o(c),
2645
2646
  "onUpdate:keyword": ne[2] || (ne[2] = (xe) => Ie(c) ? c.value = xe : null)
2646
2647
  }, null, 8, ["collasped", "favorite", "keyword"]),
2647
- k(Vo, {
2648
+ k(Bo, {
2648
2649
  collapse: o(s),
2649
2650
  keyword: o(c),
2650
2651
  favorite: o(r),
@@ -2657,7 +2658,7 @@ const Ha = /* @__PURE__ */ V({
2657
2658
  ]),
2658
2659
  _: 1
2659
2660
  }, 8, ["collapsed"]),
2660
- k(o(I), {
2661
+ k(o(B), {
2661
2662
  class: "x-mask__main",
2662
2663
  grow: "",
2663
2664
  shrink: "",
@@ -2665,7 +2666,7 @@ const Ha = /* @__PURE__ */ V({
2665
2666
  direction: "column"
2666
2667
  }, {
2667
2668
  default: f(() => [
2668
- k(o(I), {
2669
+ k(o(B), {
2669
2670
  class: "x-mask-topbar",
2670
2671
  justify: "space-between",
2671
2672
  align: "center"
@@ -3008,7 +3009,7 @@ async function ea(a, n) {
3008
3009
  return e ? typeof e == "function" ? await e(n) || [] : e : [];
3009
3010
  }
3010
3011
  function ta(a, n, e, t, l) {
3011
- const s = D([]), c = v(() => !t || !l ? {} : Mt(a.cascader).reduce((p, d) => (p[d] = Ve(l, d), p), {}));
3012
+ const s = D([]), c = v(() => !t || !l ? {} : Mt(a.cascader).reduce((p, d) => (p[d] = Be(l, d), p), {}));
3012
3013
  return L(
3013
3014
  c,
3014
3015
  async (i) => {
@@ -3060,7 +3061,7 @@ const na = {
3060
3061
  props: qo,
3061
3062
  emits: ["update:modelValue", "change", "focus", "blur"],
3062
3063
  setup(a, { expose: n, emit: e }) {
3063
- const t = a, l = e, s = Se(jt, null), c = Se(fn, null), r = Se(Nt, null), i = v(() => !s?.proxy || !r ? t.visible : typeof t.visible == "function" ? t.visible(r) : Ge(t.visible) ? Object.entries(t.visible).every(([H, K]) => Ve(r, H) === K) : t.visible), p = () => s?.proxy && r && t.name ? Ve(r, t.name) ?? t.modelValue : t.modelValue, d = D(p()), { editor: m } = ta(
3064
+ const t = a, l = e, s = Se(jt, null), c = Se(fn, null), r = Se(Nt, null), i = v(() => !s?.proxy || !r ? t.visible : typeof t.visible == "function" ? t.visible(r) : Ge(t.visible) ? Object.entries(t.visible).every(([H, K]) => Be(r, H) === K) : t.visible), p = () => s?.proxy && r && t.name ? Be(r, t.name) ?? t.modelValue : t.modelValue, d = D(p()), { editor: m } = ta(
3064
3065
  t,
3065
3066
  l,
3066
3067
  i,
@@ -3077,7 +3078,7 @@ const na = {
3077
3078
  return {
3078
3079
  [`is-tooltip-${t.tooltipPosition}`]: !!x && !!t.tooltipPosition
3079
3080
  };
3080
- }), B = v(() => {
3081
+ }), I = v(() => {
3081
3082
  const x = s?.proxy;
3082
3083
  return {
3083
3084
  width: t.width ? q(t.width) : x && x.inline && x.inlineColumns ? `${100 / x.inlineColumns}%` : null
@@ -3094,7 +3095,7 @@ const na = {
3094
3095
  return L(d, (x, H) => {
3095
3096
  i.value && !Ze(x, H) && (l("update:modelValue", x), s?.proxy && r && t.name && Ue(r, t.name, x));
3096
3097
  }), L(
3097
- () => !s?.proxy || !t.name || !r ? t.modelValue : Ve(r, t.name) ?? t.modelValue,
3098
+ () => !s?.proxy || !t.name || !r ? t.modelValue : Be(r, t.name) ?? t.modelValue,
3098
3099
  (x) => {
3099
3100
  i.value && (d.value = x);
3100
3101
  },
@@ -3127,7 +3128,7 @@ const na = {
3127
3128
  prop: t.name,
3128
3129
  label: x.label,
3129
3130
  size: y.value,
3130
- style: B.value
3131
+ style: I.value
3131
3132
  }, x.$attrs), ce({
3132
3133
  error: f(({ error: K }) => [
3133
3134
  C(x.$slots, "error", { error: K }, () => [
@@ -3142,7 +3143,7 @@ const na = {
3142
3143
  default: f(() => [
3143
3144
  k(o(de), {
3144
3145
  class: "x-field__trigger",
3145
- icon: o(Bn),
3146
+ icon: o(Vn),
3146
3147
  size: y.value
3147
3148
  }, null, 8, ["icon", "size"])
3148
3149
  ]),
@@ -3255,15 +3256,15 @@ const na = {
3255
3256
  emits: ["change", "submit", "reset"],
3256
3257
  setup(a, { expose: n, emit: e }) {
3257
3258
  const t = a, l = e, s = pe(), c = D(), r = Oe(t.model || {}), i = D(!1);
3258
- Ce(jt, s), Ce(Nt, r), L(r, () => {
3259
- l("change", ye(r));
3260
- }), L(
3259
+ Ce(jt, s), Ce(Nt, r), L(
3261
3260
  () => t.model,
3262
3261
  (m) => {
3263
3262
  Object.assign(r, m);
3264
3263
  },
3265
3264
  { deep: !0 }
3266
- );
3265
+ ), L(r, () => {
3266
+ l("change", ye(r));
3267
+ });
3267
3268
  const p = async () => {
3268
3269
  await c.value.validate().catch(() => !1) && (l("submit", ye(r)), t.submitMethod && (i.value = !0, await t.submitMethod(ye(r)), i.value = !1));
3269
3270
  }, d = (m) => {
@@ -3447,6 +3448,12 @@ const na = {
3447
3448
  },
3448
3449
  border: {
3449
3450
  type: Boolean
3451
+ },
3452
+ fit: {
3453
+ type: Boolean
3454
+ },
3455
+ align: {
3456
+ type: String
3450
3457
  }
3451
3458
  }, ua = { class: "x-tabs__label-inner" }, ca = {
3452
3459
  key: 0,
@@ -3467,7 +3474,9 @@ const na = {
3467
3474
  lazy: y
3468
3475
  };
3469
3476
  }, s = v(() => ({
3470
- "is-no-border": !e.border
3477
+ "is-no-border": !e.border,
3478
+ "is-fit": !!e.fit,
3479
+ [`is-align-${e.align}`]: !!e.align
3471
3480
  })), c = (i) => {
3472
3481
  t("actionClick", i);
3473
3482
  }, r = (i) => {
@@ -3583,12 +3592,12 @@ const na = {
3583
3592
  items: e.actions,
3584
3593
  ...e.actionBarProps
3585
3594
  })), r = () => t("imageClick"), i = () => t("titleClick"), p = (m) => t("actionClick", m), d = (m, b) => t("actionCommand", m, b);
3586
- return (m, b) => (u(), g(o(I), {
3595
+ return (m, b) => (u(), g(o(B), {
3587
3596
  class: J(["x-data-item", s.value]),
3588
3597
  direction: e.direction
3589
3598
  }, {
3590
3599
  default: f(() => [
3591
- e.imageSrc || m.$slots.image ? (u(), g(o(I), {
3600
+ e.imageSrc || m.$slots.image ? (u(), g(o(B), {
3592
3601
  key: 0,
3593
3602
  class: "x-data-item__img",
3594
3603
  autoPointer: !0,
@@ -3605,14 +3614,14 @@ const na = {
3605
3614
  ]),
3606
3615
  _: 3
3607
3616
  }, 8, ["onClick"])) : h("", !0),
3608
- k(o(I), {
3617
+ k(o(B), {
3609
3618
  class: "x-data-item__content",
3610
3619
  direction: "column",
3611
3620
  grow: "",
3612
3621
  shrink: ""
3613
3622
  }, {
3614
3623
  default: f(() => [
3615
- e.title || m.$slots.title ? (u(), g(o(I), {
3624
+ e.title || m.$slots.title ? (u(), g(o(B), {
3616
3625
  key: 0,
3617
3626
  class: "x-data-item__section x-data-item__wrapper",
3618
3627
  align: "center",
@@ -3800,7 +3809,7 @@ const Qa = /* @__PURE__ */ V({
3800
3809
  ))
3801
3810
  T[`infinite-scroll-${N}`] = x;
3802
3811
  return (r.value || p.value) && (T["infinite-scroll-disabled"] = !0), T;
3803
- }), y = v(() => it(t.pager, {})), { list: S, containerProps: w, wrapperProps: M, scrollTo: B } = Fn(
3812
+ }), y = v(() => it(t.pager, {})), { list: S, containerProps: w, wrapperProps: M, scrollTo: I } = Fn(
3804
3813
  v(() => c.value.list),
3805
3814
  {
3806
3815
  itemHeight: t.itemHeight || 0
@@ -3810,7 +3819,7 @@ const Qa = /* @__PURE__ */ V({
3810
3819
  }, P = (T) => t.dataKey ? T[t.dataKey] : void 0;
3811
3820
  return n({
3812
3821
  list: S,
3813
- scrollTo: B,
3822
+ scrollTo: I,
3814
3823
  wrapperRef: d,
3815
3824
  loading: r,
3816
3825
  state: s,
@@ -3938,7 +3947,7 @@ const Qa = /* @__PURE__ */ V({
3938
3947
  ])
3939
3948
  ]));
3940
3949
  }
3941
- }), Va = {
3950
+ }), Ba = {
3942
3951
  stringProp: {
3943
3952
  type: String
3944
3953
  },
@@ -3969,10 +3978,10 @@ const Qa = /* @__PURE__ */ V({
3969
3978
  syncProp: {
3970
3979
  type: String
3971
3980
  }
3972
- }, Ba = { class: "x-test__slot" }, Pa = { class: "x-test__slot" }, Ya = /* @__PURE__ */ V({
3981
+ }, Va = { class: "x-test__slot" }, Pa = { class: "x-test__slot" }, Ya = /* @__PURE__ */ V({
3973
3982
  name: "XTest",
3974
3983
  __name: "Test",
3975
- props: Va,
3984
+ props: Ba,
3976
3985
  emits: ["click", "submit", "change", "update:modelValue", "update:syncProp"],
3977
3986
  setup(a, { expose: n, emit: e }) {
3978
3987
  const t = a, l = e, s = v(() => Object.entries(t)), c = v({
@@ -4007,7 +4016,7 @@ const Qa = /* @__PURE__ */ V({
4007
4016
  submit: d,
4008
4017
  data: i,
4009
4018
  change: m
4010
- }), (_, y) => (u(), g(o(Be), {
4019
+ }), (_, y) => (u(), g(o(Ve), {
4011
4020
  class: "x-test",
4012
4021
  header: "VTJ 低代码测试组件",
4013
4022
  border: ""
@@ -4019,7 +4028,7 @@ const Qa = /* @__PURE__ */ V({
4019
4028
  ]),
4020
4029
  _: 1
4021
4030
  }),
4022
- k(o(I), null, {
4031
+ k(o(B), null, {
4023
4032
  default: f(() => [
4024
4033
  R(A(i.value), 1)
4025
4034
  ]),
@@ -4051,19 +4060,19 @@ const Qa = /* @__PURE__ */ V({
4051
4060
  ]),
4052
4061
  _: 1
4053
4062
  }),
4054
- k(o(I), {
4063
+ k(o(B), {
4055
4064
  justify: "space-around",
4056
4065
  flex: "",
4057
4066
  gap: ""
4058
4067
  }, {
4059
4068
  default: f(() => [
4060
- k(o(Be), {
4069
+ k(o(Ve), {
4061
4070
  header: "default",
4062
4071
  grow: "",
4063
4072
  card: ""
4064
4073
  }, {
4065
4074
  default: f(() => [
4066
- j("div", Ba, [
4075
+ j("div", Va, [
4067
4076
  C(_.$slots, "default", {
4068
4077
  props: t,
4069
4078
  data: i.value
@@ -4074,7 +4083,7 @@ const Qa = /* @__PURE__ */ V({
4074
4083
  ]),
4075
4084
  _: 3
4076
4085
  }),
4077
- k(o(Be), {
4086
+ k(o(Ve), {
4078
4087
  header: "extra",
4079
4088
  grow: "",
4080
4089
  card: ""
@@ -4100,7 +4109,7 @@ const Qa = /* @__PURE__ */ V({
4100
4109
  ]),
4101
4110
  _: 1
4102
4111
  }),
4103
- k(o(I), null, {
4112
+ k(o(B), null, {
4104
4113
  default: f(() => [
4105
4114
  k(o(st), {
4106
4115
  column: 2,
@@ -4137,7 +4146,7 @@ const Qa = /* @__PURE__ */ V({
4137
4146
  ]),
4138
4147
  _: 1
4139
4148
  }),
4140
- k(o(I), null, {
4149
+ k(o(B), null, {
4141
4150
  default: f(() => [
4142
4151
  k(o(ie), { onClick: p }, {
4143
4152
  default: f(() => [
@@ -4288,7 +4297,7 @@ export {
4288
4297
  te as XAction,
4289
4298
  et as XActionBar,
4290
4299
  Qa as XChart,
4291
- I as XContainer,
4300
+ B as XContainer,
4292
4301
  Ja as XDataItem,
4293
4302
  At as XDialog,
4294
4303
  La as XDialogForm,
@@ -4300,12 +4309,12 @@ export {
4300
4309
  Za as XList,
4301
4310
  Ha as XMask,
4302
4311
  ge as XMenu,
4303
- Be as XPanel,
4312
+ Ve as XPanel,
4304
4313
  Ga as XStartup,
4305
4314
  Wa as XTabs,
4306
4315
  Ya as XTest,
4307
4316
  uo as actionBarProps,
4308
- Bt as actionProps,
4317
+ Vt as actionProps,
4309
4318
  Ft as builtinFieldEditors,
4310
4319
  ya as chartProps,
4311
4320
  co as containerProps,
@@ -4330,7 +4339,7 @@ export {
4330
4339
  Te as parseSize,
4331
4340
  Ca as startupProps,
4332
4341
  ra as tabsProps,
4333
- Va as testProps,
4342
+ Ba as testProps,
4334
4343
  it as toObjectProps,
4335
4344
  qe as useDisabled,
4336
4345
  ke as useIcon,