vft 0.0.454 → 0.0.456

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.
@@ -69,6 +69,12 @@ export declare const VftTable: import("vft/es/utils").SFCWithInstall<{
69
69
  emptyCfg: {
70
70
  type: import("vue").PropType<import("vft/es/vft").EmptyProps>;
71
71
  };
72
+ loadingText: {
73
+ type: import("vue").PropType<string>;
74
+ };
75
+ loadingClass: {
76
+ type: import("vue").PropType<string>;
77
+ };
72
78
  layouts: {
73
79
  type: import("vue").PropType<import("vxe-table").VxeGridPropTypes.Layouts>;
74
80
  };
@@ -982,6 +988,12 @@ export declare const VftTable: import("vft/es/utils").SFCWithInstall<{
982
988
  emptyCfg: {
983
989
  type: import("vue").PropType<import("vft/es/vft").EmptyProps>;
984
990
  };
991
+ loadingText: {
992
+ type: import("vue").PropType<string>;
993
+ };
994
+ loadingClass: {
995
+ type: import("vue").PropType<string>;
996
+ };
985
997
  layouts: {
986
998
  type: import("vue").PropType<import("vxe-table").VxeGridPropTypes.Layouts>;
987
999
  };
@@ -1779,6 +1791,12 @@ export declare const VftTable: import("vft/es/utils").SFCWithInstall<{
1779
1791
  emptyCfg: {
1780
1792
  type: import("vue").PropType<import("vft/es/vft").EmptyProps>;
1781
1793
  };
1794
+ loadingText: {
1795
+ type: import("vue").PropType<string>;
1796
+ };
1797
+ loadingClass: {
1798
+ type: import("vue").PropType<string>;
1799
+ };
1782
1800
  layouts: {
1783
1801
  type: import("vue").PropType<import("vxe-table").VxeGridPropTypes.Layouts>;
1784
1802
  };
@@ -1,7 +1,7 @@
1
- import { defineComponent as N, useAttrs as ae, ref as s, getCurrentInstance as te, computed as P, unref as e, watch as oe, nextTick as le, toRaw as re, createBlock as f, openBlock as m, withCtx as c, createElementVNode as H, normalizeClass as ne, createVNode as p, createCommentVNode as D, mergeProps as _, withDirectives as ce, renderSlot as h, normalizeProps as ie, guardReactiveProps as se } from "vue";
1
+ import { defineComponent as O, useAttrs as ae, ref as s, getCurrentInstance as te, computed as H, unref as e, watch as oe, nextTick as le, toRaw as re, createBlock as u, openBlock as m, withCtx as c, createElementVNode as D, normalizeClass as ne, createVNode as p, createCommentVNode as F, mergeProps as T, withDirectives as ce, renderSlot as h, normalizeProps as ie, guardReactiveProps as se } from "vue";
2
2
  import { VftEmpty as ge } from "../empty/index.js";
3
3
  import { vLoading as de } from "../loading/directive.js";
4
- import { deepMerge as F, isClient as ue, omit as fe, isFunction as me } from "@vft/utils";
4
+ import { deepMerge as _, isClient as fe, omit as ue, isFunction as me } from "@vft/utils";
5
5
  import { FormCompEnum as pe } from "../../utils/form-register.js";
6
6
  import "@vueuse/core";
7
7
  import "../config-provider/hooks/use-global-config.js";
@@ -18,17 +18,15 @@ import { VftSkeleton as we } from "../skeleton/index.js";
18
18
  import { VftSuperForm as ve } from "../super-form/index.js";
19
19
  import { VxeGrid as xe } from "vxe-table";
20
20
  import ke from "xe-utils";
21
- import { PageSize as T } from "./constants.js";
21
+ import { PageSize as N } from "./constants.js";
22
22
  import { useColumns as Se } from "./use/use-columns.js";
23
23
  import { useDataSource as Be } from "./use/use-data-source.js";
24
24
  import { useLoading as ze } from "./use/use-loading.js";
25
25
  import { usePagination as Re } from "./use/use-pagination.js";
26
26
  import { EmptyEnum as Pe } from "../empty/constants.js";
27
- const He = {
28
- "vft-loading-text": "加载中..."
29
- }, De = N({
27
+ const He = ["vft-loading-text", "vft-loading-custom-class"], De = O({
30
28
  name: "vft-table"
31
- }), la = /* @__PURE__ */ N({
29
+ }), la = /* @__PURE__ */ O({
32
30
  ...De,
33
31
  props: {
34
32
  sticky: {
@@ -36,7 +34,7 @@ const He = {
36
34
  },
37
35
  api: {},
38
36
  pageSize: {
39
- default: T
37
+ default: N
40
38
  },
41
39
  total: {},
42
40
  rowkey: {
@@ -84,6 +82,12 @@ const He = {
84
82
  type: Pe.NoData
85
83
  })
86
84
  },
85
+ loadingText: {
86
+ default: "加载中..."
87
+ },
88
+ loadingClass: {
89
+ default: "vft-card-loading"
90
+ },
87
91
  layouts: {},
88
92
  columns: {},
89
93
  pagerConfig: {},
@@ -393,26 +397,26 @@ const He = {
393
397
  "toolbar-tool-click",
394
398
  "zoom"
395
399
  ],
396
- setup(_e, {
397
- expose: O,
398
- emit: V
400
+ setup(Fe, {
401
+ expose: V,
402
+ emit: A
399
403
  }) {
400
- const r = V, g = be("table"), A = ae(), b = s(), C = s(), E = s([]), d = s(), M = te(), t = P(() => F(M.props, e(d))), {
404
+ const n = A, g = be("table"), E = ae(), b = s(), C = s(), q = s([]), d = s(), M = te(), t = H(() => _(M.props, e(d))), {
401
405
  getLoading: $,
402
- setLoading: q
406
+ setLoading: G
403
407
  } = ze(t), {
404
408
  getPaginationInfo: i,
405
- setPagination: u,
406
- getCurrentPage: G
409
+ setPagination: f,
410
+ getCurrentPage: I
407
411
  } = Re(t), {
408
- getViewColumns: I,
409
- setColumns: K
412
+ getViewColumns: K,
413
+ setColumns: L
410
414
  } = Se(t);
411
- oe(() => G(), (a) => {
415
+ oe(() => I(), (a) => {
412
416
  le(() => {
413
417
  y({
414
418
  seqConfig: {
415
- startIndex: (a - 1) * (i.value?.pageSize || e(t).pageSize || T)
419
+ startIndex: (a - 1) * (i.value?.pageSize || e(t).pageSize || N)
416
420
  }
417
421
  });
418
422
  });
@@ -427,32 +431,32 @@ const He = {
427
431
  }
428
432
  const {
429
433
  getDataSourceRef: w,
430
- handleTableChange: L,
431
- reload: X,
432
- deleteTableDataRecord: Y,
433
- insertTableDataRecord: j,
434
+ handleTableChange: X,
435
+ reload: v,
436
+ deleteTableDataRecord: j,
437
+ insertTableDataRecord: Y,
434
438
  updateTableData: W,
435
439
  updateTableDataRecord: U,
436
- setTableData: v,
440
+ setTableData: x,
437
441
  getDataSource: J,
438
- getRawDataSource: x,
439
- tableSearch: k
442
+ getRawDataSource: k,
443
+ tableSearch: S
440
444
  } = Be(t, {
441
- tableData: E,
442
- setLoading: q,
445
+ tableData: q,
446
+ setLoading: G,
443
447
  getPaginationInfo: i,
444
- setPagination: u
445
- }, r);
446
- function S(a) {
447
- a?.pageSize && u({
448
+ setPagination: f
449
+ }, n);
450
+ function B(a) {
451
+ a?.pageSize && f({
448
452
  currentPage: 1
449
- }), L(a), r("change", a);
453
+ }), X(a), n("change", a);
450
454
  const {
451
455
  onChange: o
452
456
  } = e(t);
453
457
  o && me(o) && o(a);
454
458
  }
455
- const B = {};
459
+ const z = {};
456
460
  [
457
461
  "update:data",
458
462
  "keydown-start",
@@ -575,40 +579,48 @@ const He = {
575
579
  "zoom"
576
580
  ].forEach((a) => {
577
581
  const o = ke.camelCase(`on-${a}`);
578
- B[o] = (...l) => r(a, ...l);
582
+ z[o] = (...r) => n(a, ...r);
579
583
  });
580
- const n = P(() => {
584
+ const l = H(() => {
581
585
  const a = e(w), o = {
582
- ...A,
586
+ ...E,
583
587
  ...e(t),
584
- columns: re(e(I)),
588
+ columns: re(e(K)),
585
589
  loading: e($),
586
590
  data: a,
587
- ...B
591
+ ...z
588
592
  };
589
- if (ue) {
593
+ if (fe) {
590
594
  (e(t)?.addMaxHeight || e(t)?.maxHeight) && (o.maxHeight = e(t)?.maxHeight ? e(t)?.maxHeight : `${window.innerHeight - e(t)?.extraSysHeight - (t.value?.showPager ? t.value?.pageHeight || 40 : 0)}px`);
591
- const l = e(t)?.minHeight;
592
- o.minHeight = l || (l !== 0 && e(t)?.toolbarConfig?.custom ? 300 : void 0);
595
+ const r = e(t)?.minHeight;
596
+ o.minHeight = r || (r !== 0 && e(t)?.toolbarConfig?.custom ? 300 : void 0);
593
597
  }
594
- return o;
595
- }), z = {
596
- setPagination: u,
597
- emit: r,
598
+ return e(t)?.toolbarConfig?.refresh && (o.proxyConfig = e(t)?.proxyConfig || {
599
+ response: {
600
+ result: e(t)?.fetchSetting?.listField,
601
+ total: e(t)?.fetchSetting?.totalField
602
+ },
603
+ ajax: {
604
+ query: async () => await v()
605
+ }
606
+ }), o;
607
+ }), R = {
608
+ setPagination: f,
609
+ emit: n,
598
610
  setProps: y,
599
- reload: X,
600
- deleteTableDataRecord: Y,
601
- insertTableDataRecord: j,
611
+ reload: v,
612
+ deleteTableDataRecord: j,
613
+ insertTableDataRecord: Y,
602
614
  updateTableDataRecord: U,
603
615
  updateTableData: W,
604
- setTableData: v,
616
+ setTableData: x,
605
617
  getDataSource: J,
606
618
  getDataSourceRef: w,
607
- setColumns: K,
608
- getRawDataSource: x,
609
- tableSearch: k
619
+ setColumns: L,
620
+ getRawDataSource: k,
621
+ tableSearch: S
610
622
  };
611
- r("register", z);
623
+ n("register", R);
612
624
  const Q = {
613
625
  field: "_filterTableData",
614
626
  label: "",
@@ -618,13 +630,13 @@ const He = {
618
630
  },
619
631
  componentProps: () => ({
620
632
  onChange: (a) => {
621
- R({
633
+ P({
622
634
  _filterTableData: a
623
635
  });
624
636
  }
625
637
  })
626
- }, [Z] = he(F({
627
- schemas: [n.value?.formOptions?.addSearchAllSchema ? Q : {}],
638
+ }, [Z] = he(_({
639
+ schemas: [l.value?.formOptions?.addSearchAllSchema ? Q : {}],
628
640
  rowProps: {
629
641
  justify: "start"
630
642
  },
@@ -638,49 +650,52 @@ const He = {
638
650
  btnText: "搜索"
639
651
  },
640
652
  actionInline: !0
641
- }, fe(
642
- n.value?.formOptions,
653
+ }, ue(
654
+ l.value?.formOptions,
643
655
  ["showActionForm", "addSearchAllSchema"]
644
656
  // 'union' | 'intersection' | 'concat' | 'replace' = 'union'
645
- ), "replace")), R = (a) => {
646
- Reflect.has(a, "_filterTableData") && k(a._filterTableData), r("form-submit", a);
657
+ ), "replace")), P = (a) => {
658
+ Reflect.has(a, "_filterTableData") && S(a._filterTableData), n("form-submit", a);
647
659
  }, ee = () => {
648
- v(x()), r("form-reset");
660
+ x(k()), n("form-reset");
649
661
  };
650
- return O({
662
+ return V({
651
663
  table: b,
652
664
  pageRef: C,
653
- ...z
654
- }), (a, o) => (m(), f(e(Ce), null, {
665
+ ...R
666
+ }), (a, o) => (m(), u(e(Ce), null, {
655
667
  fallback: c(() => [p(e(we))]),
656
- default: c(() => [H("div", {
668
+ default: c(() => [D("div", {
657
669
  class: ne([e(g).b()])
658
- }, [p(e(xe), _({
670
+ }, [p(e(xe), T({
659
671
  ref_key: "xGrid",
660
672
  ref: b
661
- }, n.value), {
662
- toolbarButtons: c(() => [h(a.$slots, "toolbar-left"), n.value?.formOptions?.showActionForm ? (m(), f(e(ve), {
673
+ }, l.value), {
674
+ toolbarButtons: c(() => [h(a.$slots, "toolbar-left"), l.value?.formOptions?.showActionForm ? (m(), u(e(ve), {
663
675
  key: 0,
664
676
  onRegister: e(Z),
665
- onSubmit: R,
677
+ onSubmit: P,
666
678
  onReset: ee
667
- }, null, 8, ["onRegister"])) : D("", !0), h(a.$slots, "toolbar-right")]),
668
- empty: c(() => [h(a.$slots, "empty", {}, () => [p(e(ge), ie(se(n.value.emptyCfg)), null, 16)])]),
669
- loading: c(() => [ce(H("div", He, null, 512), [[e(de), !!n.value.loading]])]),
679
+ }, null, 8, ["onRegister"])) : F("", !0), h(a.$slots, "toolbar-right")]),
680
+ empty: c(() => [h(a.$slots, "empty", {}, () => [p(e(ge), ie(se(l.value.emptyCfg)), null, 16)])]),
681
+ loading: c(() => [ce(D("div", {
682
+ "vft-loading-text": l.value.loadingText,
683
+ "vft-loading-custom-class": l.value.loadingClass
684
+ }, null, 8, He), [[e(de), !!l.value.loading]])]),
670
685
  _: 3
671
- }, 16), n.value.showPager ? (m(), f(e(ye), _({
686
+ }, 16), l.value.showPager ? (m(), u(e(ye), T({
672
687
  key: 0,
673
688
  ref_key: "pageRef",
674
689
  ref: C
675
690
  }, e(i), {
676
691
  class: [e(g).e("pager"), e(g).m(`pager-${e(i)?.pagePlacement}`)],
677
- onCurrentChange: o[0] || (o[0] = (l) => S({
678
- currentPage: l
692
+ onCurrentChange: o[0] || (o[0] = (r) => B({
693
+ currentPage: r
679
694
  })),
680
- onSizeChange: o[1] || (o[1] = (l) => S({
681
- pageSize: l
695
+ onSizeChange: o[1] || (o[1] = (r) => B({
696
+ pageSize: r
682
697
  }))
683
- }), null, 16, ["class"])) : D("", !0)], 2)]),
698
+ }), null, 16, ["class"])) : F("", !0)], 2)]),
684
699
  _: 3
685
700
  }));
686
701
  }
@@ -76,6 +76,8 @@ export interface TableProps extends VxeGridProps {
76
76
  onChange?: (...args: any[]) => void;
77
77
  /** 空状态配置,用于自定义空数据时的显示内容 */
78
78
  emptyCfg?: EmptyProps;
79
+ loadingText?: string;
80
+ loadingClass?: string;
79
81
  }
80
82
  /** 列项属性类型,继承自 VXE Table 的列选项 */
81
83
  export type ColumnItemProps = VxeTableDefines.ColumnOptions;
@@ -1,14 +1,14 @@
1
1
  import "../../pagination/index.js";
2
- import { isFunction as D, isBoolean as X, delObjAttrNotExist as Y, isString as $, isEmptyObject as ee, isNullOrUndefined as N, isObject as x, isNumber as te, isPlainObject as ae } from "@vft/utils";
2
+ import { isFunction as D, isBoolean as X, delObjAttrNotExist as Y, isString as $, isEmptyObject as ee, isNullOrUndefined as E, isObject as N, isNumber as te, isPlainObject as ae } from "@vft/utils";
3
3
  import { useTimeoutFn as re } from "@vueuse/core";
4
- import { merge as ie, get as C } from "lodash-es";
5
- import { ref as p, watchEffect as ne, unref as r, watch as k, computed as ce, onMounted as le } from "vue";
6
- import { PageSize as ue } from "../constants.js";
7
- function he(u, { tableData: I, setLoading: T, getPaginationInfo: O, setPagination: o }, j) {
8
- const a = p([]), R = p({});
4
+ import { merge as ie, get as k } from "lodash-es";
5
+ import { ref as T, watchEffect as ne, unref as r, watch as C, computed as ce, onMounted as le, nextTick as ue } from "vue";
6
+ import { PageSize as oe } from "../constants.js";
7
+ function ve(u, { tableData: I, setLoading: p, getPaginationInfo: O, setPagination: o }, j) {
8
+ const a = T([]), R = T({});
9
9
  ne(() => {
10
10
  I.value = r(a);
11
- }), k(
11
+ }), C(
12
12
  () => r(u).data,
13
13
  () => {
14
14
  const { data: e, api: t } = r(u);
@@ -38,7 +38,7 @@ function he(u, { tableData: I, setLoading: T, getPaginationInfo: O, setPaginatio
38
38
  } = r(u);
39
39
  if (!(!t || !D(t)))
40
40
  try {
41
- T(!0);
41
+ p(!0);
42
42
  const { pageField: b, sizeField: K, listField: Q, totalField: W } = Object.assign(
43
43
  {},
44
44
  {
@@ -50,7 +50,7 @@ function he(u, { tableData: I, setLoading: T, getPaginationInfo: O, setPaginatio
50
50
  i
51
51
  );
52
52
  let w = {}, c = e;
53
- const { currentPage: P = 1, pageSize: _ = ue } = r(
53
+ const { currentPage: P = 1, pageSize: _ = oe } = r(
54
54
  O
55
55
  );
56
56
  if (J) {
@@ -69,10 +69,10 @@ function he(u, { tableData: I, setLoading: T, getPaginationInfo: O, setPaginatio
69
69
  $(s) ? s === "strict" : !1
70
70
  );
71
71
  }
72
- c && !ee(c) && !N(h) ? x(c) && x(h) && (c = Object.assign({}, c, h)) : N(h) || (c = h);
73
- const v = await t(c), E = Array.isArray(v);
74
- let f = E ? v : C(v, Q);
75
- const S = E ? v.length : C(v, W);
72
+ c && !ee(c) && !E(h) ? N(c) && N(h) && (c = Object.assign({}, c, h)) : E(h) || (c = h);
73
+ const v = await t(c), x = Array.isArray(v);
74
+ let f = x ? v : k(v, Q);
75
+ const S = x ? v.length : k(v, W);
76
76
  if (Number(S)) {
77
77
  const m = Math.ceil(S / _);
78
78
  if (P > m)
@@ -93,7 +93,9 @@ function he(u, { tableData: I, setLoading: T, getPaginationInfo: O, setPaginatio
93
93
  total: 0
94
94
  });
95
95
  } finally {
96
- T(!1);
96
+ ue(() => {
97
+ p(!1);
98
+ });
97
99
  }
98
100
  }
99
101
  function F() {
@@ -159,12 +161,12 @@ function he(u, { tableData: I, setLoading: T, getPaginationInfo: O, setPaginatio
159
161
  } else
160
162
  y(F());
161
163
  }
162
- const A = p(!0);
164
+ const A = T(!0);
163
165
  return le(() => {
164
166
  re(() => {
165
167
  r(u).immediate && g(), A.value = !1;
166
168
  }, 16);
167
- }), k(
169
+ }), C(
168
170
  () => r(u).api,
169
171
  () => {
170
172
  r(u).watchApiFetch && !A.value && r(u).immediate && g();
@@ -184,5 +186,5 @@ function he(u, { tableData: I, setLoading: T, getPaginationInfo: O, setPaginatio
184
186
  };
185
187
  }
186
188
  export {
187
- he as useDataSource
189
+ ve as useDataSource
188
190
  };
@@ -1,6 +1,6 @@
1
1
  declare const _default: {
2
2
  "name": "vft",
3
- "version": "0.0.454",
3
+ "version": "0.0.456",
4
4
  "license": "MIT",
5
5
  "main": "lib/index.cjs",
6
6
  "module": "es/index.js",
@@ -1,4 +1,4 @@
1
- const o = "0.0.454";
1
+ const o = "0.0.456";
2
2
  export {
3
3
  o as version
4
4
  };
@@ -69,6 +69,12 @@ export declare const VftTable: import("vft/es/utils").SFCWithInstall<{
69
69
  emptyCfg: {
70
70
  type: import("vue").PropType<import("vft/es/vft").EmptyProps>;
71
71
  };
72
+ loadingText: {
73
+ type: import("vue").PropType<string>;
74
+ };
75
+ loadingClass: {
76
+ type: import("vue").PropType<string>;
77
+ };
72
78
  layouts: {
73
79
  type: import("vue").PropType<import("vxe-table").VxeGridPropTypes.Layouts>;
74
80
  };
@@ -982,6 +988,12 @@ export declare const VftTable: import("vft/es/utils").SFCWithInstall<{
982
988
  emptyCfg: {
983
989
  type: import("vue").PropType<import("vft/es/vft").EmptyProps>;
984
990
  };
991
+ loadingText: {
992
+ type: import("vue").PropType<string>;
993
+ };
994
+ loadingClass: {
995
+ type: import("vue").PropType<string>;
996
+ };
985
997
  layouts: {
986
998
  type: import("vue").PropType<import("vxe-table").VxeGridPropTypes.Layouts>;
987
999
  };
@@ -1779,6 +1791,12 @@ export declare const VftTable: import("vft/es/utils").SFCWithInstall<{
1779
1791
  emptyCfg: {
1780
1792
  type: import("vue").PropType<import("vft/es/vft").EmptyProps>;
1781
1793
  };
1794
+ loadingText: {
1795
+ type: import("vue").PropType<string>;
1796
+ };
1797
+ loadingClass: {
1798
+ type: import("vue").PropType<string>;
1799
+ };
1782
1800
  layouts: {
1783
1801
  type: import("vue").PropType<import("vxe-table").VxeGridPropTypes.Layouts>;
1784
1802
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),I=require("../empty/index.cjs"),K=require("../loading/directive.cjs"),c=require("@vft/utils"),X=require("../../utils/form-register.cjs");require("@vueuse/core");require("../config-provider/hooks/use-global-config.cjs");require("lodash-es");const j=require("../super-form/use/use-form.cjs"),Y=require("../../hooks/use-namespace/index.cjs");require("../../hooks/use-model-toggle/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");require("../icon/index.cjs");const W=require("../client-only/index.cjs"),U=require("../pagination/index.cjs"),J=require("../skeleton/index.cjs"),Q=require("../super-form/index.cjs"),Z=require("vxe-table"),ee=require("xe-utils"),k=require("./constants.cjs"),te=require("./use/use-columns.cjs"),ae=require("./use/use-data-source.cjs"),re=require("./use/use-loading.cjs"),le=require("./use/use-pagination.cjs"),oe=require("../empty/constants.cjs"),ne={"vft-loading-text":"加载中..."},ce=e.defineComponent({name:"vft-table"}),ie=e.defineComponent({...ce,props:{sticky:{type:[Boolean,Object]},api:{},pageSize:{default:k.PageSize},total:{},rowkey:{default:"_X_ROW_KEY"},immediate:{type:Boolean,default:!0},fetchSetting:{},watchApiFetch:{type:Boolean,default:!1},beforeFetch:{},delEmptyParams:{type:[Boolean,String],default:!0},afterFetch:{},transformParams:{type:Boolean,default:!0},extraParams:{},extraSysHeight:{default:200},pageHeight:{default:40},showPager:{type:Boolean,default:!0},addMaxHeight:{type:Boolean,default:!0},pagination:{},formOptions:{},onChange:{},emptyCfg:{default:()=>({type:oe.EmptyEnum.NoData})},layouts:{},columns:{},pagerConfig:{},proxyConfig:{},toolbarConfig:{default:()=>({enabled:!1,slots:{buttons:"toolbarButtons"}})},formConfig:{},zoomConfig:{},size:{},id:{},data:{},height:{},minHeight:{},maxHeight:{},stripe:{type:Boolean,default:!0},padding:{type:Boolean},round:{type:Boolean},border:{type:[Boolean,String],default:"full"},loading:{type:Boolean,default:!1},align:{default:"center"},headerAlign:{default:"center"},footerAlign:{},showHeader:{type:Boolean,default:!0},showFooter:{type:Boolean},footerData:{},footerMethod:{},rowClassName:{},cellClassName:{},headerRowClassName:{},headerCellClassName:{},footerRowClassName:{},footerCellClassName:{},cellStyle:{},rowStyle:{},headerCellStyle:{},headerRowStyle:{},footerRowStyle:{},footerCellStyle:{},mergeCells:{},mergeFooterItems:{},spanMethod:{},footerSpanMethod:{},showOverflow:{type:[Boolean,String,null],default:"tooltip"},showHeaderOverflow:{type:[Boolean,String,null]},showFooterOverflow:{type:[Boolean,String,null]},keepSource:{type:Boolean},autoResize:{type:Boolean,default:!1},syncResize:{type:[Boolean,String,Number]},columnConfig:{default:()=>({drag:!1,resizable:!0,minWidth:"15%"})},rowConfig:{default:()=>({isHover:!0,isCurrent:!0,useKey:!0})},cellConfig:{},headerCellConfig:{},footerCellConfig:{},aggregateConfig:{},rowGroupConfig:{},currentRowConfig:{},currentColumnConfig:{},dragConfig:{},rowDragConfig:{},columnDragConfig:{},customConfig:{},resizeConfig:{},resizableConfig:{},seqConfig:{},sortConfig:{},filterConfig:{},radioConfig:{},checkboxConfig:{},tooltipConfig:{},exportConfig:{},importConfig:{},printConfig:{},expandConfig:{},treeConfig:{},menuConfig:{},mouseConfig:{},areaConfig:{},fnrConfig:{},keyboardConfig:{},clipConfig:{},editConfig:{},validConfig:{},editRules:{},emptyText:{},emptyRender:{},loadingConfig:{},scrollX:{},scrollY:{},virtualXConfig:{default:()=>({enabled:!1})},virtualYConfig:{default:()=>({enabled:!1})},scrollbarConfig:{},params:{},resizable:{type:Boolean},highlightCurrentRow:{type:Boolean},highlightHoverRow:{type:Boolean},highlightCurrentColumn:{type:Boolean},highlightHoverColumn:{type:Boolean},highlightCell:{type:Boolean},columnKey:{type:Boolean},rowKey:{type:Boolean},rowId:{},fit:{type:Boolean,default:!0},animat:{type:Boolean},delayHover:{}},emits:["update:data","keydown-start","keydown","keydown-end","paste","copy","cut","current-change","current-row-change","current-row-disabled","current-column-change","current-column-disabled","radio-change","checkbox-change","checkbox-all","checkbox-range-start","checkbox-range-change","checkbox-range-end","checkbox-range-select","cell-click","cell-dblclick","cell-menu","cell-mouseenter","cell-mouseleave","cell-selected","cell-delete-value","cell-backspace-value","header-cell-click","header-cell-dblclick","header-cell-menu","footer-cell-click","footer-cell-dblclick","footer-cell-menu","clear-merge","sort-change","clear-sort","clear-all-sort","filter-change","filter-visible","clear-filter","clear-all-filter","resizable-change","column-resizable-change","row-resizable-change","toggle-row-group-expand","toggle-row-expand","toggle-tree-expand","menu-click","edit-closed","row-dragstart","row-dragover","row-dragend","column-dragstart","column-dragover","column-dragend","enter-append-row","edit-actived","edit-activated","edit-disabled","valid-error","scroll","scroll-boundary","custom","custom-visible-change","custom-visible-all","custom-fixed-change","change-fnr","open-fnr","show-fnr","hide-fnr","fnr-change","fnr-find","fnr-find-all","fnr-replace","fnr-replace-all","cell-area-copy","cell-area-cut","cell-area-paste","cell-area-merge","clear-cell-area-selection","clear-cell-area-merge","header-cell-area-selection","cell-area-selection-invalid","cell-area-selection-start","cell-area-selection-drag","cell-area-selection-end","cell-area-extension-start","cell-area-extension-drag","cell-area-extension-end","cell-area-selection-all-start","cell-area-selection-all-end","cell-area-arrows-start","cell-area-arrows-end","active-cell-change-start","active-cell-change-end","change","sort-change","fetch-success","form-submit","form-reset","update:page-num","update:page-size","register","page-change","form-submit","form-submit-invalid","form-reset","form-collapse","form-toggle-collapse","proxy-query","proxy-delete","proxy-save","toolbar-button-click","toolbar-tool-click","zoom"],setup(se,{expose:S,emit:B}){const o=B,s=Y.useNamespace("table"),q=e.useAttrs(),d=e.ref(),f=e.ref(),z=e.ref([]),u=e.ref(),P=e.getCurrentInstance(),a=e.computed(()=>c.deepMerge(P.props,e.unref(u))),{getLoading:R,setLoading:H}=re.useLoading(a),{getPaginationInfo:i,setPagination:g,getCurrentPage:D}=le.usePagination(a),{getViewColumns:_,setColumns:T}=te.useColumns(a);e.watch(()=>D(),t=>{e.nextTick(()=>{m({seqConfig:{startIndex:(t-1)*(i.value?.pageSize||e.unref(a).pageSize||k.PageSize)}})})},{immediate:!0});function m(t){u.value={...e.unref(u),...t}}const{getDataSourceRef:p,handleTableChange:F,reload:N,deleteTableDataRecord:V,insertTableDataRecord:O,updateTableData:$,updateTableDataRecord:E,setTableData:h,getDataSource:A,getRawDataSource:b,tableSearch:C}=ae.useDataSource(a,{tableData:z,setLoading:H,getPaginationInfo:i,setPagination:g},o);function y(t){t?.pageSize&&g({currentPage:1}),F(t),o("change",t);const{onChange:r}=e.unref(a);r&&c.isFunction(r)&&r(t)}const w={};["update:data","keydown-start","keydown","keydown-end","paste","copy","cut","current-change","current-row-change","current-row-disabled","current-column-change","current-column-disabled","radio-change","checkbox-change","checkbox-all","checkbox-range-start","checkbox-range-change","checkbox-range-end","checkbox-range-select","cell-click","cell-dblclick","cell-menu","cell-mouseenter","cell-mouseleave","cell-selected","cell-delete-value","cell-backspace-value","header-cell-click","header-cell-dblclick","header-cell-menu","footer-cell-click","footer-cell-dblclick","footer-cell-menu","clear-merge","sort-change","clear-sort","clear-all-sort","filter-change","filter-visible","clear-filter","clear-all-filter","resizable-change","column-resizable-change","row-resizable-change","toggle-row-group-expand","toggle-row-expand","toggle-tree-expand","menu-click","edit-closed","row-dragstart","row-dragover","row-dragend","column-dragstart","column-dragover","column-dragend","enter-append-row","edit-actived","edit-activated","edit-disabled","valid-error","scroll","scroll-boundary","custom","custom-visible-change","custom-visible-all","custom-fixed-change","change-fnr","open-fnr","show-fnr","hide-fnr","fnr-change","fnr-find","fnr-find-all","fnr-replace","fnr-replace-all","cell-area-copy","cell-area-cut","cell-area-paste","cell-area-merge","clear-cell-area-selection","clear-cell-area-merge","header-cell-area-selection","cell-area-selection-invalid","cell-area-selection-start","cell-area-selection-drag","cell-area-selection-end","cell-area-extension-start","cell-area-extension-drag","cell-area-extension-end","cell-area-selection-all-start","cell-area-selection-all-end","cell-area-arrows-start","cell-area-arrows-end","active-cell-change-start","active-cell-change-end","change","sort-change","fetch-success","form-submit","form-reset","update:page-num","update:page-size","register","page-change","form-submit","form-submit-invalid","form-reset","form-collapse","form-toggle-collapse","proxy-query","proxy-delete","proxy-save","toolbar-button-click","toolbar-tool-click","zoom"].forEach(t=>{const r=ee.camelCase(`on-${t}`);w[r]=(...l)=>o(t,...l)});const n=e.computed(()=>{const t=e.unref(p),r={...q,...e.unref(a),columns:e.toRaw(e.unref(_)),loading:e.unref(R),data:t,...w};if(c.isClient){(e.unref(a)?.addMaxHeight||e.unref(a)?.maxHeight)&&(r.maxHeight=e.unref(a)?.maxHeight?e.unref(a)?.maxHeight:`${window.innerHeight-e.unref(a)?.extraSysHeight-(a.value?.showPager?a.value?.pageHeight||40:0)}px`);const l=e.unref(a)?.minHeight;r.minHeight=l||(l!==0&&e.unref(a)?.toolbarConfig?.custom?300:void 0)}return r}),x={setPagination:g,emit:o,setProps:m,reload:N,deleteTableDataRecord:V,insertTableDataRecord:O,updateTableDataRecord:E,updateTableData:$,setTableData:h,getDataSource:A,getDataSourceRef:p,setColumns:T,getRawDataSource:b,tableSearch:C};o("register",x);const M={field:"_filterTableData",label:"",type:X.FormCompEnum.Search,itemProps:{class:"search-all-form-item"},componentProps:()=>({onChange:t=>{v({_filterTableData:t})}})},[L]=j.useForm(c.deepMerge({schemas:[n.value?.formOptions?.addSearchAllSchema?M:{}],rowProps:{justify:"start"},labelPosition:"left",quickColSpan:5,watchDataIsChange:!0,showResetButton:!0,showSubmitButton:!0,size:"small",submitButtonOptions:{btnText:"搜索"},actionInline:!0},c.omit(n.value?.formOptions,["showActionForm","addSearchAllSchema"]),"replace")),v=t=>{Reflect.has(t,"_filterTableData")&&C(t._filterTableData),o("form-submit",t)},G=()=>{h(b()),o("form-reset")};return S({table:d,pageRef:f,...x}),(t,r)=>(e.openBlock(),e.createBlock(e.unref(W.VftClientOnly),null,{fallback:e.withCtx(()=>[e.createVNode(e.unref(J.VftSkeleton))]),default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass([e.unref(s).b()])},[e.createVNode(e.unref(Z.VxeGrid),e.mergeProps({ref_key:"xGrid",ref:d},n.value),{toolbarButtons:e.withCtx(()=>[e.renderSlot(t.$slots,"toolbar-left"),n.value?.formOptions?.showActionForm?(e.openBlock(),e.createBlock(e.unref(Q.VftSuperForm),{key:0,onRegister:e.unref(L),onSubmit:v,onReset:G},null,8,["onRegister"])):e.createCommentVNode("",!0),e.renderSlot(t.$slots,"toolbar-right")]),empty:e.withCtx(()=>[e.renderSlot(t.$slots,"empty",{},()=>[e.createVNode(e.unref(I.VftEmpty),e.normalizeProps(e.guardReactiveProps(n.value.emptyCfg)),null,16)])]),loading:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",ne,null,512),[[e.unref(K.vLoading),!!n.value.loading]])]),_:3},16),n.value.showPager?(e.openBlock(),e.createBlock(e.unref(U.VftPagination),e.mergeProps({key:0,ref_key:"pageRef",ref:f},e.unref(i),{class:[e.unref(s).e("pager"),e.unref(s).m(`pager-${e.unref(i)?.pagePlacement}`)],onCurrentChange:r[0]||(r[0]=l=>y({currentPage:l})),onSizeChange:r[1]||(r[1]=l=>y({pageSize:l}))}),null,16,["class"])):e.createCommentVNode("",!0)],2)]),_:3}))}});exports.default=ie;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),G=require("../empty/index.cjs"),I=require("../loading/directive.cjs"),c=require("@vft/utils"),K=require("../../utils/form-register.cjs");require("@vueuse/core");require("../config-provider/hooks/use-global-config.cjs");require("lodash-es");const X=require("../super-form/use/use-form.cjs"),Y=require("../../hooks/use-namespace/index.cjs");require("../../hooks/use-model-toggle/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");require("../icon/index.cjs");const W=require("../client-only/index.cjs"),U=require("../pagination/index.cjs"),J=require("../skeleton/index.cjs"),Q=require("../super-form/index.cjs"),Z=require("vxe-table"),ee=require("xe-utils"),S=require("./constants.cjs"),te=require("./use/use-columns.cjs"),ae=require("./use/use-data-source.cjs"),re=require("./use/use-loading.cjs"),le=require("./use/use-pagination.cjs"),oe=require("../empty/constants.cjs"),ne=["vft-loading-text","vft-loading-custom-class"],ce=e.defineComponent({name:"vft-table"}),ie=e.defineComponent({...ce,props:{sticky:{type:[Boolean,Object]},api:{},pageSize:{default:S.PageSize},total:{},rowkey:{default:"_X_ROW_KEY"},immediate:{type:Boolean,default:!0},fetchSetting:{},watchApiFetch:{type:Boolean,default:!1},beforeFetch:{},delEmptyParams:{type:[Boolean,String],default:!0},afterFetch:{},transformParams:{type:Boolean,default:!0},extraParams:{},extraSysHeight:{default:200},pageHeight:{default:40},showPager:{type:Boolean,default:!0},addMaxHeight:{type:Boolean,default:!0},pagination:{},formOptions:{},onChange:{},emptyCfg:{default:()=>({type:oe.EmptyEnum.NoData})},loadingText:{default:"加载中..."},loadingClass:{default:"vft-card-loading"},layouts:{},columns:{},pagerConfig:{},proxyConfig:{},toolbarConfig:{default:()=>({enabled:!1,slots:{buttons:"toolbarButtons"}})},formConfig:{},zoomConfig:{},size:{},id:{},data:{},height:{},minHeight:{},maxHeight:{},stripe:{type:Boolean,default:!0},padding:{type:Boolean},round:{type:Boolean},border:{type:[Boolean,String],default:"full"},loading:{type:Boolean,default:!1},align:{default:"center"},headerAlign:{default:"center"},footerAlign:{},showHeader:{type:Boolean,default:!0},showFooter:{type:Boolean},footerData:{},footerMethod:{},rowClassName:{},cellClassName:{},headerRowClassName:{},headerCellClassName:{},footerRowClassName:{},footerCellClassName:{},cellStyle:{},rowStyle:{},headerCellStyle:{},headerRowStyle:{},footerRowStyle:{},footerCellStyle:{},mergeCells:{},mergeFooterItems:{},spanMethod:{},footerSpanMethod:{},showOverflow:{type:[Boolean,String,null],default:"tooltip"},showHeaderOverflow:{type:[Boolean,String,null]},showFooterOverflow:{type:[Boolean,String,null]},keepSource:{type:Boolean},autoResize:{type:Boolean,default:!1},syncResize:{type:[Boolean,String,Number]},columnConfig:{default:()=>({drag:!1,resizable:!0,minWidth:"15%"})},rowConfig:{default:()=>({isHover:!0,isCurrent:!0,useKey:!0})},cellConfig:{},headerCellConfig:{},footerCellConfig:{},aggregateConfig:{},rowGroupConfig:{},currentRowConfig:{},currentColumnConfig:{},dragConfig:{},rowDragConfig:{},columnDragConfig:{},customConfig:{},resizeConfig:{},resizableConfig:{},seqConfig:{},sortConfig:{},filterConfig:{},radioConfig:{},checkboxConfig:{},tooltipConfig:{},exportConfig:{},importConfig:{},printConfig:{},expandConfig:{},treeConfig:{},menuConfig:{},mouseConfig:{},areaConfig:{},fnrConfig:{},keyboardConfig:{},clipConfig:{},editConfig:{},validConfig:{},editRules:{},emptyText:{},emptyRender:{},loadingConfig:{},scrollX:{},scrollY:{},virtualXConfig:{default:()=>({enabled:!1})},virtualYConfig:{default:()=>({enabled:!1})},scrollbarConfig:{},params:{},resizable:{type:Boolean},highlightCurrentRow:{type:Boolean},highlightHoverRow:{type:Boolean},highlightCurrentColumn:{type:Boolean},highlightHoverColumn:{type:Boolean},highlightCell:{type:Boolean},columnKey:{type:Boolean},rowKey:{type:Boolean},rowId:{},fit:{type:Boolean,default:!0},animat:{type:Boolean},delayHover:{}},emits:["update:data","keydown-start","keydown","keydown-end","paste","copy","cut","current-change","current-row-change","current-row-disabled","current-column-change","current-column-disabled","radio-change","checkbox-change","checkbox-all","checkbox-range-start","checkbox-range-change","checkbox-range-end","checkbox-range-select","cell-click","cell-dblclick","cell-menu","cell-mouseenter","cell-mouseleave","cell-selected","cell-delete-value","cell-backspace-value","header-cell-click","header-cell-dblclick","header-cell-menu","footer-cell-click","footer-cell-dblclick","footer-cell-menu","clear-merge","sort-change","clear-sort","clear-all-sort","filter-change","filter-visible","clear-filter","clear-all-filter","resizable-change","column-resizable-change","row-resizable-change","toggle-row-group-expand","toggle-row-expand","toggle-tree-expand","menu-click","edit-closed","row-dragstart","row-dragover","row-dragend","column-dragstart","column-dragover","column-dragend","enter-append-row","edit-actived","edit-activated","edit-disabled","valid-error","scroll","scroll-boundary","custom","custom-visible-change","custom-visible-all","custom-fixed-change","change-fnr","open-fnr","show-fnr","hide-fnr","fnr-change","fnr-find","fnr-find-all","fnr-replace","fnr-replace-all","cell-area-copy","cell-area-cut","cell-area-paste","cell-area-merge","clear-cell-area-selection","clear-cell-area-merge","header-cell-area-selection","cell-area-selection-invalid","cell-area-selection-start","cell-area-selection-drag","cell-area-selection-end","cell-area-extension-start","cell-area-extension-drag","cell-area-extension-end","cell-area-selection-all-start","cell-area-selection-all-end","cell-area-arrows-start","cell-area-arrows-end","active-cell-change-start","active-cell-change-end","change","sort-change","fetch-success","form-submit","form-reset","update:page-num","update:page-size","register","page-change","form-submit","form-submit-invalid","form-reset","form-collapse","form-toggle-collapse","proxy-query","proxy-delete","proxy-save","toolbar-button-click","toolbar-tool-click","zoom"],setup(se,{expose:B,emit:q}){const n=q,s=Y.useNamespace("table"),z=e.useAttrs(),d=e.ref(),f=e.ref(),P=e.ref([]),u=e.ref(),R=e.getCurrentInstance(),a=e.computed(()=>c.deepMerge(R.props,e.unref(u))),{getLoading:H,setLoading:D}=re.useLoading(a),{getPaginationInfo:i,setPagination:g,getCurrentPage:T}=le.usePagination(a),{getViewColumns:_,setColumns:F}=te.useColumns(a);e.watch(()=>T(),t=>{e.nextTick(()=>{m({seqConfig:{startIndex:(t-1)*(i.value?.pageSize||e.unref(a).pageSize||S.PageSize)}})})},{immediate:!0});function m(t){u.value={...e.unref(u),...t}}const{getDataSourceRef:p,handleTableChange:N,reload:h,deleteTableDataRecord:V,insertTableDataRecord:O,updateTableData:$,updateTableDataRecord:E,setTableData:b,getDataSource:A,getRawDataSource:C,tableSearch:y}=ae.useDataSource(a,{tableData:P,setLoading:D,getPaginationInfo:i,setPagination:g},n);function w(t){t?.pageSize&&g({currentPage:1}),N(t),n("change",t);const{onChange:r}=e.unref(a);r&&c.isFunction(r)&&r(t)}const x={};["update:data","keydown-start","keydown","keydown-end","paste","copy","cut","current-change","current-row-change","current-row-disabled","current-column-change","current-column-disabled","radio-change","checkbox-change","checkbox-all","checkbox-range-start","checkbox-range-change","checkbox-range-end","checkbox-range-select","cell-click","cell-dblclick","cell-menu","cell-mouseenter","cell-mouseleave","cell-selected","cell-delete-value","cell-backspace-value","header-cell-click","header-cell-dblclick","header-cell-menu","footer-cell-click","footer-cell-dblclick","footer-cell-menu","clear-merge","sort-change","clear-sort","clear-all-sort","filter-change","filter-visible","clear-filter","clear-all-filter","resizable-change","column-resizable-change","row-resizable-change","toggle-row-group-expand","toggle-row-expand","toggle-tree-expand","menu-click","edit-closed","row-dragstart","row-dragover","row-dragend","column-dragstart","column-dragover","column-dragend","enter-append-row","edit-actived","edit-activated","edit-disabled","valid-error","scroll","scroll-boundary","custom","custom-visible-change","custom-visible-all","custom-fixed-change","change-fnr","open-fnr","show-fnr","hide-fnr","fnr-change","fnr-find","fnr-find-all","fnr-replace","fnr-replace-all","cell-area-copy","cell-area-cut","cell-area-paste","cell-area-merge","clear-cell-area-selection","clear-cell-area-merge","header-cell-area-selection","cell-area-selection-invalid","cell-area-selection-start","cell-area-selection-drag","cell-area-selection-end","cell-area-extension-start","cell-area-extension-drag","cell-area-extension-end","cell-area-selection-all-start","cell-area-selection-all-end","cell-area-arrows-start","cell-area-arrows-end","active-cell-change-start","active-cell-change-end","change","sort-change","fetch-success","form-submit","form-reset","update:page-num","update:page-size","register","page-change","form-submit","form-submit-invalid","form-reset","form-collapse","form-toggle-collapse","proxy-query","proxy-delete","proxy-save","toolbar-button-click","toolbar-tool-click","zoom"].forEach(t=>{const r=ee.camelCase(`on-${t}`);x[r]=(...o)=>n(t,...o)});const l=e.computed(()=>{const t=e.unref(p),r={...z,...e.unref(a),columns:e.toRaw(e.unref(_)),loading:e.unref(H),data:t,...x};if(c.isClient){(e.unref(a)?.addMaxHeight||e.unref(a)?.maxHeight)&&(r.maxHeight=e.unref(a)?.maxHeight?e.unref(a)?.maxHeight:`${window.innerHeight-e.unref(a)?.extraSysHeight-(a.value?.showPager?a.value?.pageHeight||40:0)}px`);const o=e.unref(a)?.minHeight;r.minHeight=o||(o!==0&&e.unref(a)?.toolbarConfig?.custom?300:void 0)}return e.unref(a)?.toolbarConfig?.refresh&&(r.proxyConfig=e.unref(a)?.proxyConfig||{response:{result:e.unref(a)?.fetchSetting?.listField,total:e.unref(a)?.fetchSetting?.totalField},ajax:{query:async()=>await h()}}),r}),v={setPagination:g,emit:n,setProps:m,reload:h,deleteTableDataRecord:V,insertTableDataRecord:O,updateTableDataRecord:E,updateTableData:$,setTableData:b,getDataSource:A,getDataSourceRef:p,setColumns:F,getRawDataSource:C,tableSearch:y};n("register",v);const M={field:"_filterTableData",label:"",type:K.FormCompEnum.Search,itemProps:{class:"search-all-form-item"},componentProps:()=>({onChange:t=>{k({_filterTableData:t})}})},[L]=X.useForm(c.deepMerge({schemas:[l.value?.formOptions?.addSearchAllSchema?M:{}],rowProps:{justify:"start"},labelPosition:"left",quickColSpan:5,watchDataIsChange:!0,showResetButton:!0,showSubmitButton:!0,size:"small",submitButtonOptions:{btnText:"搜索"},actionInline:!0},c.omit(l.value?.formOptions,["showActionForm","addSearchAllSchema"]),"replace")),k=t=>{Reflect.has(t,"_filterTableData")&&y(t._filterTableData),n("form-submit",t)},j=()=>{b(C()),n("form-reset")};return B({table:d,pageRef:f,...v}),(t,r)=>(e.openBlock(),e.createBlock(e.unref(W.VftClientOnly),null,{fallback:e.withCtx(()=>[e.createVNode(e.unref(J.VftSkeleton))]),default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass([e.unref(s).b()])},[e.createVNode(e.unref(Z.VxeGrid),e.mergeProps({ref_key:"xGrid",ref:d},l.value),{toolbarButtons:e.withCtx(()=>[e.renderSlot(t.$slots,"toolbar-left"),l.value?.formOptions?.showActionForm?(e.openBlock(),e.createBlock(e.unref(Q.VftSuperForm),{key:0,onRegister:e.unref(L),onSubmit:k,onReset:j},null,8,["onRegister"])):e.createCommentVNode("",!0),e.renderSlot(t.$slots,"toolbar-right")]),empty:e.withCtx(()=>[e.renderSlot(t.$slots,"empty",{},()=>[e.createVNode(e.unref(G.VftEmpty),e.normalizeProps(e.guardReactiveProps(l.value.emptyCfg)),null,16)])]),loading:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",{"vft-loading-text":l.value.loadingText,"vft-loading-custom-class":l.value.loadingClass},null,8,ne),[[e.unref(I.vLoading),!!l.value.loading]])]),_:3},16),l.value.showPager?(e.openBlock(),e.createBlock(e.unref(U.VftPagination),e.mergeProps({key:0,ref_key:"pageRef",ref:f},e.unref(i),{class:[e.unref(s).e("pager"),e.unref(s).m(`pager-${e.unref(i)?.pagePlacement}`)],onCurrentChange:r[0]||(r[0]=o=>w({currentPage:o})),onSizeChange:r[1]||(r[1]=o=>w({pageSize:o}))}),null,16,["class"])):e.createCommentVNode("",!0)],2)]),_:3}))}});exports.default=ie;
@@ -76,6 +76,8 @@ export interface TableProps extends VxeGridProps {
76
76
  onChange?: (...args: any[]) => void;
77
77
  /** 空状态配置,用于自定义空数据时的显示内容 */
78
78
  emptyCfg?: EmptyProps;
79
+ loadingText?: string;
80
+ loadingClass?: string;
79
81
  }
80
82
  /** 列项属性类型,继承自 VXE Table 的列选项 */
81
83
  export type ColumnItemProps = VxeTableDefines.ColumnOptions;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../pagination/index.cjs");const i=require("@vft/utils"),J=require("@vueuse/core"),T=require("lodash-es"),t=require("vue"),K=require("../constants.cjs");function Q(s,{tableData:_,setLoading:O,getPaginationInfo:j,setPagination:o},q){const a=t.ref([]),P=t.ref({});t.watchEffect(()=>{_.value=t.unref(a)}),t.watch(()=>t.unref(s).data,()=>{const{data:e,api:r}=t.unref(s);!r&&e&&(a.value=e)},{immediate:!0});function p(e){o(e),h({})}const R=t.computed(()=>{const e=t.unref(a);return!e||e.length===0,t.unref(a)});async function h(e){const{api:r,fetchSetting:n={},beforeFetch:u,afterFetch:l,pagination:m,delEmptyParams:f,transformParams:V,extraParams:v}=t.unref(s);if(!(!r||!i.isFunction(r)))try{O(!0);const{pageField:w,sizeField:Z,listField:G,totalField:H}=Object.assign({},{pageField:"page",sizeField:"pageSize",listField:"items",totalField:"total"},n);let S={},c=e;const{currentPage:A=1,pageSize:E=K.PageSize}=t.unref(j);if(V){if(i.isBoolean(m)&&!m)S={};else{const g=e&&e.page||A;S[w]=m?.pageIsZero?g-1:g,S[Z]=E}if(c=T.merge(e,S),u&&i.isFunction(u)){const g=await u(c);c={...c,...g}}f&&i.delObjAttrNotExist(c,i.isString(f)?f==="strict":!1)}c&&!i.isEmptyObject(c)&&!i.isNullOrUndefined(v)?i.isObject(c)&&i.isObject(v)&&(c=Object.assign({},c,v)):i.isNullOrUndefined(v)||(c=v);const b=await r(c),N=Array.isArray(b);let d=N?b:T.get(b,G);const F=N?b.length:T.get(b,H);if(Number(F)){const g=Math.ceil(F/E);if(A>g)return o({currentPage:g}),await h(e)}return l&&i.isFunction(l)&&(d=await l(d)||d),a.value=d,P.value=d,o({total:F||0}),e&&e.page&&o({currentPage:e.page||1}),q("fetch-success",{items:t.unref(d),total:F}),d}catch(w){console.log(w),q("fetch-error",w),a.value=[],o({total:0})}finally{O(!1)}}function y(){return P.value}async function C(e){return o({currentPage:e?.page||1}),await h(e)}function M(e){if(!a.value||a.value.length===0)return;const{rowkey:r}=t.unref(s);return(u=>{let l;return u.some(function(f){if(Reflect.has(f,r)&&f[r]===e)return l=f,!0}),l})(a.value)}async function k(e,r,n){return a.value[e]&&(a.value[e][r]=n),a.value[e]}function x(e,r){const n=M(e);if(n){for(const u in n)Reflect.has(r,u)&&(n[u]=r[u]);return n}}function I(e,r=0){const n=i.isPlainObject(e)?[e]:e;return a.value.splice(r,0,...n),t.unref(a)}function U(e,r){if(!a.value||a.value.length===0)return;const{rowkey:n}=t.unref(s),u=a.value.findIndex(m=>m[r||n]===e[r||n]);a.value.splice(u,1);const{total:l}=t.unref(j);i.isNumber(l)&&o({total:l-1})}function D(e){a.value=e}function B(){return R.value}function L(e){const r=String(e).trim().toLowerCase();if(r){const n=y?.()?.filter(u=>{for(const l in u)if(String(u[l]).trim().toLowerCase()?.includes(r))return!0});D(n)}else D(y())}const z=t.ref(!0);return t.onMounted(()=>{J.useTimeoutFn(()=>{t.unref(s).immediate&&h(),z.value=!1},16)}),t.watch(()=>t.unref(s).api,()=>{t.unref(s).watchApiFetch&&!z.value&&t.unref(s).immediate&&h()}),{setTableData:D,updateTableData:k,updateTableDataRecord:x,insertTableDataRecord:I,deleteTableDataRecord:U,reload:C,handleTableChange:p,getDataSourceRef:R,getDataSource:B,getRawDataSource:y,tableSearch:L}}exports.useDataSource=Q;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../pagination/index.cjs");const i=require("@vft/utils"),J=require("@vueuse/core"),T=require("lodash-es"),t=require("vue"),K=require("../constants.cjs");function Q(s,{tableData:_,setLoading:O,getPaginationInfo:j,setPagination:o},q){const a=t.ref([]),P=t.ref({});t.watchEffect(()=>{_.value=t.unref(a)}),t.watch(()=>t.unref(s).data,()=>{const{data:e,api:r}=t.unref(s);!r&&e&&(a.value=e)},{immediate:!0});function p(e){o(e),h({})}const R=t.computed(()=>{const e=t.unref(a);return!e||e.length===0,t.unref(a)});async function h(e){const{api:r,fetchSetting:n={},beforeFetch:u,afterFetch:l,pagination:m,delEmptyParams:f,transformParams:V,extraParams:v}=t.unref(s);if(!(!r||!i.isFunction(r)))try{O(!0);const{pageField:w,sizeField:Z,listField:G,totalField:H}=Object.assign({},{pageField:"page",sizeField:"pageSize",listField:"items",totalField:"total"},n);let S={},c=e;const{currentPage:A=1,pageSize:E=K.PageSize}=t.unref(j);if(V){if(i.isBoolean(m)&&!m)S={};else{const g=e&&e.page||A;S[w]=m?.pageIsZero?g-1:g,S[Z]=E}if(c=T.merge(e,S),u&&i.isFunction(u)){const g=await u(c);c={...c,...g}}f&&i.delObjAttrNotExist(c,i.isString(f)?f==="strict":!1)}c&&!i.isEmptyObject(c)&&!i.isNullOrUndefined(v)?i.isObject(c)&&i.isObject(v)&&(c=Object.assign({},c,v)):i.isNullOrUndefined(v)||(c=v);const b=await r(c),N=Array.isArray(b);let d=N?b:T.get(b,G);const F=N?b.length:T.get(b,H);if(Number(F)){const g=Math.ceil(F/E);if(A>g)return o({currentPage:g}),await h(e)}return l&&i.isFunction(l)&&(d=await l(d)||d),a.value=d,P.value=d,o({total:F||0}),e&&e.page&&o({currentPage:e.page||1}),q("fetch-success",{items:t.unref(d),total:F}),d}catch(w){console.log(w),q("fetch-error",w),a.value=[],o({total:0})}finally{t.nextTick(()=>{O(!1)})}}function y(){return P.value}async function k(e){return o({currentPage:e?.page||1}),await h(e)}function x(e){if(!a.value||a.value.length===0)return;const{rowkey:r}=t.unref(s);return(u=>{let l;return u.some(function(f){if(Reflect.has(f,r)&&f[r]===e)return l=f,!0}),l})(a.value)}async function C(e,r,n){return a.value[e]&&(a.value[e][r]=n),a.value[e]}function M(e,r){const n=x(e);if(n){for(const u in n)Reflect.has(r,u)&&(n[u]=r[u]);return n}}function I(e,r=0){const n=i.isPlainObject(e)?[e]:e;return a.value.splice(r,0,...n),t.unref(a)}function U(e,r){if(!a.value||a.value.length===0)return;const{rowkey:n}=t.unref(s),u=a.value.findIndex(m=>m[r||n]===e[r||n]);a.value.splice(u,1);const{total:l}=t.unref(j);i.isNumber(l)&&o({total:l-1})}function D(e){a.value=e}function B(){return R.value}function L(e){const r=String(e).trim().toLowerCase();if(r){const n=y?.()?.filter(u=>{for(const l in u)if(String(u[l]).trim().toLowerCase()?.includes(r))return!0});D(n)}else D(y())}const z=t.ref(!0);return t.onMounted(()=>{J.useTimeoutFn(()=>{t.unref(s).immediate&&h(),z.value=!1},16)}),t.watch(()=>t.unref(s).api,()=>{t.unref(s).watchApiFetch&&!z.value&&t.unref(s).immediate&&h()}),{setTableData:D,updateTableData:C,updateTableDataRecord:M,insertTableDataRecord:I,deleteTableDataRecord:U,reload:k,handleTableChange:p,getDataSourceRef:R,getDataSource:B,getRawDataSource:y,tableSearch:L}}exports.useDataSource=Q;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="0.0.454";exports.version=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e="0.0.456";exports.version=e;
@@ -1,6 +1,6 @@
1
1
  declare const _default: {
2
2
  "name": "vft",
3
- "version": "0.0.454",
3
+ "version": "0.0.456",
4
4
  "license": "MIT",
5
5
  "main": "lib/index.cjs",
6
6
  "module": "es/index.js",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vft",
3
- "version": "0.0.454",
3
+ "version": "0.0.456",
4
4
  "license": "MIT",
5
5
  "main": "lib/index.cjs",
6
6
  "module": "es/index.js",
@@ -56,12 +56,12 @@
56
56
  "resize-detector": "0.3.0",
57
57
  "sortablejs": "1.15.0",
58
58
  "photoswipe": "5.4.4",
59
- "@vft/router": "0.0.67",
59
+ "@vft/constants": "0.0.75",
60
60
  "@vft/store": "0.0.57",
61
+ "@vft/router": "0.0.67",
62
+ "@vft/use": "0.0.91",
61
63
  "@vft/directives": "0.0.36",
62
- "@vft/utils": "0.0.145",
63
- "@vft/constants": "0.0.75",
64
- "@vft/use": "0.0.91"
64
+ "@vft/utils": "0.0.145"
65
65
  },
66
66
  "vetur": {
67
67
  "tags": "tags.json",
@@ -1,4 +1,4 @@
1
- @charset "UTF-8";:root{--vft-primary-color-rgb:33,150,243;--vft-success-color-rgb:62,175,124;--vft-warning-color-rgb:251,155,95;--vft-danger-color-rgb:242,109,109;--vft-error-color-rgb:242,109,109;--vft-info-color-rgb:144,147,153;--vft-color-white:#fff;--vft-color-black:#000;--vft-color-rgb:255,255,255;--vft-reverse-color-rgb:0,0,0;--vft-reverse-color:#000;--vft-font-size-extra-large:20px;--vft-font-size-large:18px;--vft-font-size-medium:16px;--vft-font-size-base:14px;--vft-font-size-small:13px;--vft-font-size-extra-small:12px;--vft-font-family:'Helvetica Neue',Helvetica,'PingFang SC','Hiragino Sans GB','Microsoft YaHei','微软雅黑',Arial,sans-serif;--vft-font-weight-primary:500;--vft-font-line-height-primary:24px;--vft-z-index-normal:1;--vft-z-index-top:1000;--vft-z-index-popper:2000;--vft-z-index-backtop:3050;--vft-z-index-header-layout:100;--vft-border-radius-small:2px;--vft-border-radius-base:4px;--vft-border-radius-medium:10px;--vft-border-radius-large:15px;--vft-border-radius-round:20px;--vft-border-radius-circle:100%;--vft-transition-duration:0.3s;--vft-transition-duration-fast:0.2s;--vft-transition-function-ease-in-out-bezier:cubic-bezier(0.645, 0.045, 0.355, 1);--vft-transition-function-fast-bezier:cubic-bezier(0.23, 1, 0.32, 1);--vft-transition-all:all var(--vft-transition-duration) var(--vft-transition-function-ease-in-out-bezier);--vft-transition-fade:opacity var(--vft-transition-duration) var(--vft-transition-function-fast-bezier);--vft-transition-md-fade:transform var(--vft-transition-duration) var(--vft-transition-function-fast-bezier),opacity var(--vft-transition-duration) var(--vft-transition-function-fast-bezier);--vft-transition-fade-linear:opacity var(--vft-transition-duration-fast) linear;--vft-transition-border:border-color var(--vft-transition-duration-fast) var(--vft-transition-function-ease-in-out-bezier);--vft-transition-box-shadow:box-shadow var(--vft-transition-duration-fast) var(--vft-transition-function-ease-in-out-bezier);--vft-transition-color:color var(--vft-transition-duration-fast) var(--vft-transition-function-ease-in-out-bezier);--vft-transition-bg-color:background-color var(--vft-transition-duration-fast) var(--vft-transition-function-ease-in-out-bezier);--vft-component-size-large:40px;--vft-component-size:32px;--vft-component-size-small:24px;--vxe-ui-font-primary-color:var(--vft-primary-color)!important;--vxe-ui-font-primary-darken-color:var(
1
+ @charset "UTF-8";:root{--vft-primary-color-rgb:33,150,243;--vft-success-color-rgb:62,175,124;--vft-warning-color-rgb:251,155,95;--vft-danger-color-rgb:242,109,109;--vft-error-color-rgb:242,109,109;--vft-info-color-rgb:144,147,153;--vft-color-white:#fff;--vft-color-black:#000;--vft-color-rgb:255,255,255;--vft-reverse-color-rgb:0,0,0;--vft-reverse-color:#000;--vft-font-size-extra-large:20px;--vft-font-size-large:18px;--vft-font-size-medium:16px;--vft-font-size-base:14px;--vft-font-size-small:13px;--vft-font-size-extra-small:12px;--vft-font-family:'Helvetica Neue',Helvetica,'PingFang SC','Hiragino Sans GB','Microsoft YaHei','微软雅黑',Arial,sans-serif;--vft-font-weight-primary:500;--vft-font-line-height-primary:24px;--vft-z-index-normal:1;--vft-z-index-top:1000;--vft-z-index-popper:2000;--vft-z-index-backtop:3050;--vft-z-index-header-layout:100;--vft-border-radius-base:10px;--vft-border-radius-small:2px;--vft-border-radius-medium:8px;--vft-border-radius-large:15px;--vft-border-radius-round:20px;--vft-border-radius-circle:100%;--vft-transition-duration:0.3s;--vft-transition-duration-fast:0.2s;--vft-transition-function-ease-in-out-bezier:cubic-bezier(0.645, 0.045, 0.355, 1);--vft-transition-function-fast-bezier:cubic-bezier(0.23, 1, 0.32, 1);--vft-transition-all:all var(--vft-transition-duration) var(--vft-transition-function-ease-in-out-bezier);--vft-transition-fade:opacity var(--vft-transition-duration) var(--vft-transition-function-fast-bezier);--vft-transition-md-fade:transform var(--vft-transition-duration) var(--vft-transition-function-fast-bezier),opacity var(--vft-transition-duration) var(--vft-transition-function-fast-bezier);--vft-transition-fade-linear:opacity var(--vft-transition-duration-fast) linear;--vft-transition-border:border-color var(--vft-transition-duration-fast) var(--vft-transition-function-ease-in-out-bezier);--vft-transition-box-shadow:box-shadow var(--vft-transition-duration-fast) var(--vft-transition-function-ease-in-out-bezier);--vft-transition-color:color var(--vft-transition-duration-fast) var(--vft-transition-function-ease-in-out-bezier);--vft-transition-bg-color:background-color var(--vft-transition-duration-fast) var(--vft-transition-function-ease-in-out-bezier);--vft-component-size-large:40px;--vft-component-size:32px;--vft-component-size-small:24px;--vxe-ui-font-primary-color:var(--vft-primary-color)!important;--vxe-ui-font-primary-darken-color:var(
2
2
  --vft-primary-color-dark-2
3
3
  )!important;--vxe-ui-font-primary-lighten-color:var(
4
4
  --vft-primary-color-light-3