@aplus-frontend/ui 0.1.19 → 0.1.21

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.
Files changed (37) hide show
  1. package/es/src/ap-modal/interface.d.ts +3 -3
  2. package/es/src/ap-table/ap-table.vue.mjs +107 -107
  3. package/es/src/ap-table/constants.mjs +11 -9
  4. package/es/src/ap-table/hooks/use-table-paging.d.ts +12 -2
  5. package/es/src/ap-table/hooks/use-table-paging.mjs +115 -103
  6. package/es/src/ap-table/interface.d.ts +13 -4
  7. package/es/src/ap-table/style/ap-table.css +9 -0
  8. package/es/src/ap-table/utils.d.ts +4 -4
  9. package/es/src/ap-table/utils.mjs +44 -39
  10. package/es/src/business/ap-image/ApImage.vue.d.ts +12 -66
  11. package/es/src/business/ap-image/ApImage.vue2.mjs +44 -44
  12. package/es/src/business/ap-image/interface.d.ts +17 -0
  13. package/es/src/business/index.d.ts +47 -50
  14. package/es/src/config-provider/config-provider.mjs +9 -9
  15. package/es/src/locale/lang/en.mjs +4 -2
  16. package/es/src/locale/lang/zh-cn.mjs +4 -2
  17. package/es/src/theme/ap-table/ap-table.css +9 -0
  18. package/es/src/theme/css-var/index.mjs +23 -7
  19. package/lib/src/ap-modal/interface.d.ts +3 -3
  20. package/lib/src/ap-table/ap-table.vue.js +1 -1
  21. package/lib/src/ap-table/constants.js +1 -1
  22. package/lib/src/ap-table/hooks/use-table-paging.d.ts +12 -2
  23. package/lib/src/ap-table/hooks/use-table-paging.js +1 -1
  24. package/lib/src/ap-table/interface.d.ts +13 -4
  25. package/lib/src/ap-table/style/ap-table.css +9 -0
  26. package/lib/src/ap-table/utils.d.ts +4 -4
  27. package/lib/src/ap-table/utils.js +1 -1
  28. package/lib/src/business/ap-image/ApImage.vue.d.ts +12 -66
  29. package/lib/src/business/ap-image/ApImage.vue2.js +1 -1
  30. package/lib/src/business/ap-image/interface.d.ts +17 -0
  31. package/lib/src/business/index.d.ts +47 -50
  32. package/lib/src/config-provider/config-provider.js +1 -1
  33. package/lib/src/locale/lang/en.js +1 -1
  34. package/lib/src/locale/lang/zh-cn.js +1 -1
  35. package/lib/src/theme/ap-table/ap-table.css +9 -0
  36. package/lib/src/theme/css-var/index.js +1 -1
  37. package/package.json +1 -1
@@ -1,59 +1,59 @@
1
- import { defineComponent as b, computed as c, ref as h, watchEffect as O, openBlock as _, createBlock as P, unref as w, normalizeProps as C, guardReactiveProps as F } from "vue";
2
- import { Image as I } from "ant-design-vue";
3
- import { injectLocaleToOss as M, getOssInstance as S, getSignatureUrl as U } from "./hooks/useOss.mjs";
1
+ import { defineComponent as b, computed as c, ref as k, watchEffect as A, openBlock as O, createBlock as h, unref as l, normalizeProps as _, guardReactiveProps as w } from "vue";
2
+ import { Image as y } from "ant-design-vue";
3
+ import { injectLocaleToOss as F, getOssInstance as U, getSignatureUrl as B } from "./hooks/useOss.mjs";
4
4
  import "../../config-provider/index.mjs";
5
- import { imageProps as x } from "ant-design-vue/es/image";
6
- import y from "./imgs/admin-fallback.jpg.mjs";
7
- import B from "./imgs/aplus-fallback.jpg.mjs";
8
- import { useGlobalConfig as u } from "../../config-provider/hooks/use-global-config.mjs";
9
- import { useLocale as L } from "../../config-provider/hooks/use-locale.mjs";
10
- const H = /* @__PURE__ */ b({
5
+ import C from "./imgs/admin-fallback.jpg.mjs";
6
+ import I from "./imgs/aplus-fallback.jpg.mjs";
7
+ import { omit as M } from "lodash-unified";
8
+ import { useGlobalConfig as n } from "../../config-provider/hooks/use-global-config.mjs";
9
+ import { useLocale as S } from "../../config-provider/hooks/use-locale.mjs";
10
+ const T = /* @__PURE__ */ b({
11
11
  __name: "ApImage",
12
12
  props: {
13
- ...x(),
14
- path: String,
15
- getOssAccess: Function
13
+ getOssAccess: { type: Function },
14
+ width: {},
15
+ height: {},
16
+ alt: {},
17
+ fallback: {},
18
+ src: {},
19
+ preview: { type: [Boolean, Object] }
16
20
  },
17
21
  setup(i) {
18
- const a = i, o = {
19
- aplus: B,
20
- admin: y
21
- }, m = u("uiMode"), p = u("apUpload"), { t: f, lang: g } = L(), r = c(() => a.path), v = c(
22
+ const e = i, s = {
23
+ aplus: I,
24
+ admin: C
25
+ }, u = n("uiMode"), m = n("apUpload"), { t: f, lang: p } = S(), g = c(
22
26
  () => {
23
- var e;
24
- return a.getOssAccess || ((e = p.value) == null ? void 0 : e.getOssAccess);
27
+ var t;
28
+ return e.getOssAccess || ((t = m.value) == null ? void 0 : t.getOssAccess);
25
29
  }
26
- ), l = c(
27
- () => o[m.value] || o.aplus
28
- ), n = c(() => (a == null ? void 0 : a.fallback) || l.value), s = h(l.value);
29
- M(f, g);
30
- function d(e) {
31
- const { path: t, getOssAccess: k, ...A } = e;
32
- return A;
33
- }
34
- return O(async () => {
35
- if (a != null && a.src) {
36
- s.value = a.src;
37
- return;
38
- }
39
- try {
40
- if (r.value) {
41
- const e = await S(v.value), t = await U({
42
- oss: e,
43
- fileName: r.value
30
+ ), d = c(
31
+ () => s[u.value] || s.aplus
32
+ ), v = c(() => (e == null ? void 0 : e.fallback) || d.value), a = k("");
33
+ return F(f, p), A(async () => {
34
+ var t;
35
+ if (e != null && e.src) {
36
+ if (!((t = e.src) != null && t.startsWith("Frontend-Upload"))) {
37
+ a.value = e.src;
38
+ return;
39
+ }
40
+ try {
41
+ const o = await U(g.value), r = await B({
42
+ oss: o,
43
+ fileName: e.src
44
44
  });
45
- t && (s.value = t);
45
+ r && (a.value = r);
46
+ } catch {
47
+ a.value = "";
46
48
  }
47
- } catch {
48
- s.value = n.value;
49
49
  }
50
- }), (e, t) => (_(), P(w(I), C(F({
51
- ...d(a),
52
- fallback: n.value,
53
- src: s.value
50
+ }), (t, o) => (O(), h(l(y), _(w({
51
+ ...l(M)(e, ["src", "getOssAccess"]),
52
+ fallback: v.value,
53
+ src: a.value
54
54
  })), null, 16));
55
55
  }
56
56
  });
57
57
  export {
58
- H as default
58
+ T as default
59
59
  };
@@ -0,0 +1,17 @@
1
+ import { accessCreate } from '@aplus-frontend/oss';
2
+ export interface ApImageProps {
3
+ getOssAccess?: () => Promise<accessCreate>;
4
+ width?: number | string;
5
+ height?: number | string;
6
+ alt?: string;
7
+ fallback?: string;
8
+ src?: string;
9
+ preview?: boolean | {
10
+ visible?: boolean;
11
+ onVisibleChange?: (visible: boolean, prevVisible: boolean) => void;
12
+ getContainer: string | HTMLElement | (() => HTMLElement);
13
+ src?: string;
14
+ maskClassName?: string;
15
+ current?: number;
16
+ };
17
+ }
@@ -17,7 +17,6 @@ import { CSSMotionProps } from 'ant-design-vue/es/_util/transition';
17
17
  import { BuiltinPlacements, TriggerSubMenuAction, SelectEventHandler, MenuClickEventHandler } from 'ant-design-vue/es/menu/src/interface';
18
18
  import { ApBatchActionGroupMenuProps } from './ap-batch-action-group/interface';
19
19
  import { accessCreate } from '@aplus-frontend/oss';
20
- import { ImagePreviewType } from 'ant-design-vue/es/vc-image';
21
20
  export type { ApTitleProps } from './title/interface';
22
21
  export type { ApExpandAlertProps } from './expandAlert/interface';
23
22
  export type { ApLabelProps, ApLabelGroupProps, ApLabelGroupItemProps } from './ap-label/interface';
@@ -1905,64 +1904,62 @@ export declare const ApBatchActionGroup: DefineComponent<{
1905
1904
  };
1906
1905
  }>>, {}, {}>;
1907
1906
  export declare const ApImage: DefineComponent<{
1908
- path: StringConstructor;
1909
- getOssAccess: PropType<() => Promise< accessCreate>>;
1910
- src: StringConstructor;
1911
- wrapperClassName: StringConstructor;
1912
- wrapperStyle: {
1913
- type: PropType<CSSProperties>;
1914
- default: CSSProperties;
1907
+ getOssAccess: {
1908
+ type: PropType<() => Promise< accessCreate>>;
1915
1909
  };
1916
- rootClassName: StringConstructor;
1917
- prefixCls: StringConstructor;
1918
- previewPrefixCls: StringConstructor;
1919
- previewMask: {
1920
- type: PropType<false | (() => any)>;
1921
- default: any;
1910
+ width: {
1911
+ type: PropType<string | number>;
1922
1912
  };
1923
- placeholder: VueTypeValidableDef<any>;
1924
- fallback: StringConstructor;
1925
- preview: {
1926
- type: PropType<boolean | ImagePreviewType>;
1927
- default: boolean | ImagePreviewType;
1913
+ height: {
1914
+ type: PropType<string | number>;
1928
1915
  };
1929
- onClick: {
1930
- type: PropType<MouseEventHandler>;
1916
+ alt: {
1917
+ type: PropType<string>;
1931
1918
  };
1932
- onError: {
1933
- type: PropType<OnErrorEventHandlerNonNull>;
1919
+ fallback: {
1920
+ type: PropType<string>;
1921
+ };
1922
+ src: {
1923
+ type: PropType<string>;
1924
+ };
1925
+ preview: {
1926
+ type: PropType<boolean | {
1927
+ visible?: boolean;
1928
+ onVisibleChange?: (visible: boolean, prevVisible: boolean) => void;
1929
+ getContainer: string | HTMLElement | (() => HTMLElement);
1930
+ src?: string;
1931
+ maskClassName?: string;
1932
+ current?: number;
1933
+ }>;
1934
1934
  };
1935
1935
  }, {}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly< ExtractPropTypes<{
1936
- path: StringConstructor;
1937
- getOssAccess: PropType<() => Promise< accessCreate>>;
1938
- src: StringConstructor;
1939
- wrapperClassName: StringConstructor;
1940
- wrapperStyle: {
1941
- type: PropType<CSSProperties>;
1942
- default: CSSProperties;
1936
+ getOssAccess: {
1937
+ type: PropType<() => Promise< accessCreate>>;
1943
1938
  };
1944
- rootClassName: StringConstructor;
1945
- prefixCls: StringConstructor;
1946
- previewPrefixCls: StringConstructor;
1947
- previewMask: {
1948
- type: PropType<false | (() => any)>;
1949
- default: any;
1939
+ width: {
1940
+ type: PropType<string | number>;
1950
1941
  };
1951
- placeholder: VueTypeValidableDef<any>;
1952
- fallback: StringConstructor;
1953
- preview: {
1954
- type: PropType<boolean | ImagePreviewType>;
1955
- default: boolean | ImagePreviewType;
1942
+ height: {
1943
+ type: PropType<string | number>;
1944
+ };
1945
+ alt: {
1946
+ type: PropType<string>;
1956
1947
  };
1957
- onClick: {
1958
- type: PropType<MouseEventHandler>;
1948
+ fallback: {
1949
+ type: PropType<string>;
1959
1950
  };
1960
- onError: {
1961
- type: PropType<OnErrorEventHandlerNonNull>;
1951
+ src: {
1952
+ type: PropType<string>;
1962
1953
  };
1963
- }>>, {
1964
- preview: boolean | ImagePreviewType;
1965
- wrapperStyle: CSSProperties;
1966
- previewMask: false | (() => any);
1967
- }, {}>;
1954
+ preview: {
1955
+ type: PropType<boolean | {
1956
+ visible?: boolean;
1957
+ onVisibleChange?: (visible: boolean, prevVisible: boolean) => void;
1958
+ getContainer: string | HTMLElement | (() => HTMLElement);
1959
+ src?: string;
1960
+ maskClassName?: string;
1961
+ current?: number;
1962
+ }>;
1963
+ };
1964
+ }>>, {}, {}>;
1968
1965
  export { ApTransformDataHelper };
@@ -1,20 +1,20 @@
1
- import { isVNode as n, ref as u, defineComponent as d, computed as f, watch as a, createVNode as m, renderSlot as c } from "vue";
1
+ import { isVNode as n, ref as d, defineComponent as f, computed as u, watch as a, createVNode as m, renderSlot as c } from "vue";
2
2
  import { ConfigProvider as p } from "ant-design-vue";
3
3
  import { provideGlobalConfig as s } from "./hooks/use-global-config.mjs";
4
4
  import { configProviderProps as g } from "./config-provider-props.mjs";
5
5
  import { tableDefaultConfig as C } from "./constants.mjs";
6
6
  import { mergeAntdProvideConfig as v } from "../utils/config-provider-preset.mjs";
7
- import { setCSSVariables as b, aplusCssVar as P, adminCssVar as M } from "../theme/css-var/index.mjs";
8
- function S(e) {
7
+ import { setCSSVariables as b, aplusCssVar as P, adminCssVar as y } from "../theme/css-var/index.mjs";
8
+ function M(e) {
9
9
  return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !n(e);
10
10
  }
11
- const i = u({}), N = /* @__PURE__ */ d({
11
+ const i = d({}), L = /* @__PURE__ */ f({
12
12
  name: "AplusConfigProvider",
13
13
  props: g(),
14
14
  setup(e, {
15
15
  slots: r
16
16
  }) {
17
- const l = f(() => ({
17
+ const l = u(() => ({
18
18
  namespace: e.namespace,
19
19
  aplusLocale: e.aplusLocale,
20
20
  api: e.api,
@@ -33,13 +33,13 @@ const i = u({}), N = /* @__PURE__ */ d({
33
33
  }, {
34
34
  deep: !0,
35
35
  immediate: !0
36
- }), a(() => e.uiMode, (o) => {
37
- b(o === "aplus" ? P : M);
36
+ }), typeof window < "u" && a(() => e.uiMode, (o) => {
37
+ b(o === "aplus" ? P : y);
38
38
  }, {
39
39
  immediate: !0
40
40
  }), () => {
41
41
  let o;
42
- return m(p, i.value, S(o = c(r, "default", {
42
+ return m(p, i.value, M(o = c(r, "default", {
43
43
  config: t == null ? void 0 : t.value
44
44
  })) ? o : {
45
45
  default: () => [o]
@@ -48,6 +48,6 @@ const i = u({}), N = /* @__PURE__ */ d({
48
48
  }
49
49
  });
50
50
  export {
51
- N as ConfigProvider,
51
+ L as ConfigProvider,
52
52
  i as globalConfigCached
53
53
  };
@@ -81,8 +81,10 @@ const e = {
81
81
  },
82
82
  apTable: {
83
83
  pagination: {
84
- totalLeft: "Total {total} items",
85
- totalRight: "Page {page}"
84
+ totalLeftPrefix: "Total",
85
+ totalLeftSuffix: "items",
86
+ totalRightPrefix: "Page",
87
+ totalRightSuffix: ""
86
88
  }
87
89
  },
88
90
  apUpload: {
@@ -81,8 +81,10 @@ const e = {
81
81
  },
82
82
  apTable: {
83
83
  pagination: {
84
- totalLeft: "共 {total} 条记录",
85
- totalRight: "第 {page} 页"
84
+ totalLeftPrefix: "共",
85
+ totalLeftSuffix: "条记录",
86
+ totalRightPrefix: "第",
87
+ totalRightSuffix: "页"
86
88
  }
87
89
  },
88
90
  apUpload: {
@@ -86,3 +86,12 @@
86
86
  .aplus-ap-table .ant-table-cell .ant-typography {
87
87
  margin-bottom: 0;
88
88
  }
89
+ .aplus-ap-table-pagination-count-text {
90
+ color: var(--ap-table-pagination-total-count-color, #182948);
91
+ }
92
+ .aplus-ap-table-pagination--total-right {
93
+ padding-left: 12px;
94
+ }
95
+ .aplus-ap-table-pagination-total-wrapper {
96
+ color: var(--ap-table-pagination-total-color, #526A90);
97
+ }
@@ -39,6 +39,14 @@ const i = {
39
39
  "ap-table": {
40
40
  header: {
41
41
  bg: "#F2F6F9"
42
+ },
43
+ pagination: {
44
+ total: {
45
+ color: "#526A90",
46
+ count: {
47
+ color: "#182948"
48
+ }
49
+ }
42
50
  }
43
51
  },
44
52
  "ap-batch-action": {
@@ -88,6 +96,14 @@ const i = {
88
96
  "ap-table": {
89
97
  header: {
90
98
  bg: "#FAFAFA"
99
+ },
100
+ pagination: {
101
+ total: {
102
+ color: "#666666",
103
+ count: {
104
+ color: "#333333"
105
+ }
106
+ }
91
107
  }
92
108
  },
93
109
  "ap-batch-action": {
@@ -97,18 +113,18 @@ const i = {
97
113
  }
98
114
  }
99
115
  };
100
- function n(c) {
116
+ function s(c) {
101
117
  const o = {};
102
- function e(t, F) {
103
- const l = Object.keys(t);
104
- for (const a of l) {
105
- const r = t[a], s = [...F, a];
106
- r !== null && typeof r == "object" ? e(r, s) : o[`--${s.join("-")}`] = r;
118
+ function e(t, l) {
119
+ const F = Object.keys(t);
120
+ for (const a of F) {
121
+ const r = t[a], n = [...l, a];
122
+ r !== null && typeof r == "object" ? e(r, n) : o[`--${n.join("-")}`] = r;
107
123
  }
108
124
  }
109
125
  return e(c, []), o;
110
126
  }
111
- const u = n(i), d = n(b);
127
+ const u = s(i), d = s(b);
112
128
  function h(c) {
113
129
  Object.entries(c).forEach(([o, e]) => {
114
130
  document.documentElement.style.setProperty(o, e);
@@ -1,7 +1,7 @@
1
1
  import { ModalProps } from 'ant-design-vue';
2
- export type CreateModalFuncProps<ContentRecord = any> = Omit<ModalProps, 'open' | 'onUpdate:open' | 'destroyOnClose' | 'onCancel' | 'onOk' | 'getContainer'> & Partial<{
3
- onCancel: (params: ContentRecord) => void | Promise<unknown>;
4
- onOk: (params: ContentRecord) => void | Promise<unknown>;
2
+ export type CreateModalFuncProps<ContentRecord = any> = Omit<ModalProps, 'open' | 'onUpdate:open' | 'destroyOnClose' | 'onCancel' | 'onOk' | 'getContainer' | 'icon'> & Partial<{
3
+ onCancel: (params: ContentRecord) => any | Promise<any>;
4
+ onOk: (params: ContentRecord) => any | Promise<any>;
5
5
  getContainer: HTMLElement;
6
6
  content: any;
7
7
  }>;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),N=require("ant-design-vue"),Y=require("ant-design-vue/es/theme/internal"),Z=require("../ap-form/index.js"),z=require("./constants.js");require("../config-provider/index.js");const ee=require("./hooks/use-table-paging.js"),u=require("lodash-unified");require("./style/ap-table.css");const s=require("./utils.js"),ae=require("./hooks/use-table-content-height.js"),re=require("../editable-table/utils.js"),oe=require("./hooks/use-table-row-selection.js"),ne=require("../utils/index.js"),te=require("../config-provider/hooks/use-locale.js"),le=require("../config-provider/hooks/use-namespace.js"),se=require("../config-provider/hooks/use-global-config.js"),ue=e.defineComponent({name:"ApTable",__name:"ap-table",props:{dropdownPrefixCls:{},loading:{type:[Boolean,Object],default:void 0},bordered:{type:Boolean,default:!1},locale:{},onChange:{},onResizeColumn:{},getPopupContainer:{},scroll:{},sortDirections:{default:()=>["ascend","descend"]},showSorterTooltip:{type:[Boolean,Object],default:!0},prefixCls:{},rowKey:{default:"key"},tableLayout:{},rowClassName:{},title:{},footer:{},id:{},showHeader:{type:Boolean,default:!0},components:{},customRow:{},customHeaderRow:{},direction:{},expandFixed:{type:[String,Boolean],default:!1},expandColumnWidth:{},expandedRowKeys:{},defaultExpandedRowKeys:{},expandedRowRender:{},expandRowByClick:{type:Boolean,default:!1},expandIcon:{},onExpand:{},onExpandedRowsChange:{},defaultExpandAllRows:{type:Boolean,default:!1},indentSize:{default:15},expandIconColumnIndex:{},showExpandColumn:{type:Boolean,default:!0},expandedRowClassName:{},childrenColumnName:{default:"children"},rowExpandable:{},sticky:{type:[Boolean,Object]},transformCellText:{},columns:{},rowSelection:{type:[Boolean,Object]},card:{type:Boolean,default:!1},params:{},searchFormRender:{},request:{},onLoad:{},defaultData:{},dataSource:{},onLoadingChange:{},searchForm:{type:[Boolean,Object],default:void 0},beforeSearchSubmit:{},pagination:{type:[Boolean,Object],default:void 0},searchFormWrapperStyle:{},tableWrapperStyle:{},manual:{type:Boolean,default:!1},size:{default:"middle"},adaptive:{type:Boolean,default:!1},columnResizable:{type:Boolean,default:!1}},setup(I,{expose:V}){const o=I;let w=0;const m=e.useSlots(),[,E]=Y.useToken(),{t:L}=te.useLocale(),{e:g,b:i}=le.useNamespace("ap-table"),C=se.useGlobalConfig("valueTypeMap"),{height:O,contentRef:K}=ae.default(),c=e.ref([]),D=()=>{var n;let a=((n=o.columns)==null?void 0:n.filter(r=>!r.hideInTable))||[];return a=a.map(r=>({resizable:ne.isDef(r.resizable)?r.resizable:o.columnResizable,...u.omit(s.apColumnToColumn(r),["ellipsis"]),title:s.getTableTitle(r,m.default,e.unref(E).colorPrimary),customRender({value:t,...l}){var k,q;const d=s.getTableRenderType(r),B=s.getTableRenderProps({...r,valueType:d},{value:t,...l}),Q=s.getTableCellRenderNode(d,B,l.record,e.unref(C)),P=((k=r.renderText)==null?void 0:k.call(r,{value:t,...l}))||t,X=r.renderText?e.createVNode(e.Fragment,null,[(q=r.renderText)==null?void 0:q.call(r,{value:t,...l})]):Q;let h=G(r,P,X);return r.customRender&&(h=r.customRender({value:t,...l,column:r,originalNode:h,originalText:P})),h}})),a};e.watchEffect(()=>{c.value=D()});const R=e.computed(()=>{var a,n,r;return w++,((r=(n=(a=o.columns)==null?void 0:a.filter(t=>!t.hideInSearch&&t.dataIndex&&(t.valueType||t.customRenderFormItem)&&!z.noRenderAsFormItemValueList.includes(t.valueType)))==null?void 0:n.sort((t,l)=>{let d=s.getColumnOrder(t.order);return s.getColumnOrder(l.order)-d}))==null?void 0:r.map(t=>{const l=s.updateFormProps(t,s.getFieldProps(t.fieldProps,{})),d={...t,fieldProps:{label:t.title,name:t.dataIndex,...l||{},placeholder:s.getPlaceholder(L,t.valueType,l==null?void 0:l.placeholder),_signal:w},renderNode:void 0};return d.renderNode=s.getSearchFormItemRenderNode(d,e.unref(C)),d}))||[]}),U=e.computed(()=>e.unref(c).filter(a=>a.sorter===!0).map(a=>a.dataIndex).filter(Boolean)),j=e.computed(()=>e.unref(c).filter(a=>a.filters&&!a.onFilter).map(a=>a.dataIndex).filter(Boolean)),A=e.computed(()=>u.isUndefined(o.dataSource)?p.value.records:o.dataSource),{rowSelection:y,selectedRows:T,...S}=oe.default({...o.rowSelection===!0?{}:o.rowSelection,rowKey:o.rowKey,dataSource:A}),{formRef:b,submit:x,reset:F,tableProps:f,handleTableChange:W,data:p}=ee.useTablePaging({async request(a){var r,t;!y.value.preserveSelectedRowKeys&&u.isUndefined(o.dataSource)&&S.clearAll();const n=await((r=o.request)==null?void 0:r.call(o,a));return(t=o.onLoad)==null||t.call(o,(n==null?void 0:n.data)||[]),{data:(n==null?void 0:n.data)||[],total:(n==null?void 0:n.total)||0}},filterFields:j,sortFields:U,defaultParams:o.params,defaultData:o.defaultData,manual:o.manual,defaultCurrent:o.pagination?o.pagination.defaultCurrent:void 0,defaultPageSize:o.pagination?o.pagination.defaultPageSize:void 0,formatParams:o.beforeSearchSubmit}),$=e.computed(()=>{var n,r;if(o.adaptive&&(p.value.total>0||((n=o.dataSource)==null?void 0:n.length)))return{y:e.unref(O),x:((r=o.scroll)==null?void 0:r.x)||"100%"};if(o.scroll)return o.scroll}),H=e.computed(()=>{var a;if(o.tableLayout)return o.tableLayout;if((a=o.columns)!=null&&a.some(n=>n.ellipsis))return"fixed"}),v=e.computed(()=>{var t;const a=e.unref(f),n=u.isUndefined(o.dataSource)?a:{...a,dataSource:o.dataSource,onChange:o.onChange},r=e.unref(y);return{...o,...n,rowSelection:o.rowSelection===!0||((t=o.rowSelection)==null?void 0:t.mode)==="internal"?{...r,preserveSelectedRowKeys:u.isUndefined(o.dataSource)?r.preserveSelectedRowKeys:!0}:o.rowSelection,loading:u.isUndefined(o.loading)?e.unref(f).loading:o.loading,pagination:o.pagination===!1?!1:e.unref(f).pagination,scroll:e.unref($)}}),M=e.computed(()=>[i(),o.card?null:i("wrapper"),o.adaptive?i("adaptive"):null].filter(Boolean));function G(a,n,r){if(z.noRenderAsFormItemValueList.includes(a.valueType))return r;const t=s.objectToString(n);return a.copyable||a.ellipsis?e.createVNode(N.Typography.Paragraph,{copyable:a.copyable?{text:t,tooltip:!1}:!1,ellipsis:a.ellipsis?u.isBoolean(a.ellipsis)?{tooltip:t}:{...a.ellipsis,tooltip:t}:!1,content:a.ellipsis?re.getRawDisplayValue(a,n):r},null):r}e.watch(()=>e.unref(p).loading,a=>{var n;(n=o.onLoadingChange)==null||n.call(o,a)});function _(a){var n,r,t;(t=(r=(n=b.value)==null?void 0:n.apForm)==null?void 0:r.setFieldsValue)==null||t.call(r,a)}function J(){var a,n,r;return(r=(n=(a=b.value)==null?void 0:a.apForm)==null?void 0:n.getFieldsValue)==null?void 0:r.call(n,!0)}return V({submit:()=>x(),reset:()=>F(),setSearchFormValues:_,getSearchFormValues:J,dataSource:e.computed(()=>e.unref(p).records),rowSelection:{selectedRows:e.computed(()=>e.unref(T)),...S}}),(a,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(M.value)},[e.unref(u.isUndefined)(a.dataSource)&&a.searchForm!==!1&&R.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(a.card?e.unref(g)("search-wrapper"):null),style:e.normalizeStyle(a.searchFormWrapperStyle)},[e.createVNode(e.unref(Z.ApForm).SearchForm,e.mergeProps(a.searchForm||{},{ref_key:"formRef",ref:b,"custom-reset":"",onSubmit:e.unref(x),onReset:e.unref(F),"submit-loading":e.unref(f).loading}),e.createSlots({default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(R.value,r=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.renderNode),e.mergeProps({key:r.dataIndex,ref_for:!0},r.fieldProps||{},{span:r.span}),null,16,["span"]))),128))]),_:2},[m.searchFormExtra?{name:"extra",fn:e.withCtx(()=>[e.renderSlot(a.$slots,"searchFormExtra")]),key:"0"}:void 0]),1040,["onSubmit","onReset","submit-loading"])],6)):e.createCommentVNode("",!0),e.createElementVNode("div",{ref_key:"contentRef",ref:K,class:e.normalizeClass([e.unref(g)("table-wrapper"),a.card?e.unref(g)("table-wrapper-card"):null]),style:e.normalizeStyle(a.tableWrapperStyle)},[e.renderSlot(a.$slots,"title",e.mergeProps({selectedRows:e.unref(T),selectedRowKeys:e.unref(y).selectedRowKeys},S)),e.createVNode(e.unref(N.Table),e.mergeProps({class:e.unref(i)("table")},v.value,{"table-layout":H.value,onChange:e.unref(W),columns:c.value,onResizeColumn:n[0]||(n[0]=(r,t)=>{console.log("width is: ",r),t.width=r})}),e.createSlots({summary:e.withCtx(()=>[e.renderSlot(a.$slots,"summary",{columns:c.value,records:v.value.dataSource})]),_:2},[e.renderList(e.unref(u.omit)(m,["title","searchFormExtra","headerCell"]),(r,t)=>({name:t,fn:e.withCtx(l=>[e.renderSlot(a.$slots,t,e.normalizeProps(e.guardReactiveProps(l||{})))])}))]),1040,["class","table-layout","onChange","columns"])],6)],2))}});exports.default=ue;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),I=require("ant-design-vue"),Y=require("ant-design-vue/es/theme/internal"),Z=require("../ap-form/index.js"),N=require("./constants.js");require("../config-provider/index.js");const ee=require("./hooks/use-table-paging.js"),u=require("lodash-unified");require("./style/ap-table.css");const s=require("./utils.js"),ae=require("./hooks/use-table-content-height.js"),oe=require("../editable-table/utils.js"),re=require("./hooks/use-table-row-selection.js"),ne=require("../utils/index.js"),te=require("../config-provider/hooks/use-locale.js"),le=require("../config-provider/hooks/use-namespace.js"),se=require("../config-provider/hooks/use-global-config.js"),ue=e.defineComponent({name:"ApTable",__name:"ap-table",props:{dropdownPrefixCls:{},loading:{type:[Boolean,Object],default:void 0},bordered:{type:Boolean,default:!1},locale:{},onChange:{},onResizeColumn:{},getPopupContainer:{},scroll:{},sortDirections:{default:()=>["ascend","descend"]},showSorterTooltip:{type:[Boolean,Object],default:!0},prefixCls:{},rowKey:{default:"key"},tableLayout:{},rowClassName:{},title:{},footer:{},id:{},showHeader:{type:Boolean,default:!0},components:{},customRow:{},customHeaderRow:{},direction:{},expandFixed:{type:[String,Boolean],default:!1},expandColumnWidth:{},expandedRowKeys:{},defaultExpandedRowKeys:{},expandedRowRender:{},expandRowByClick:{type:Boolean,default:!1},expandIcon:{},onExpand:{},onExpandedRowsChange:{},defaultExpandAllRows:{type:Boolean,default:!1},indentSize:{default:15},expandIconColumnIndex:{},showExpandColumn:{type:Boolean,default:!0},expandedRowClassName:{},childrenColumnName:{default:"children"},rowExpandable:{},sticky:{type:[Boolean,Object]},transformCellText:{},columns:{},rowSelection:{type:[Boolean,Object]},card:{type:Boolean,default:!1},params:{},searchFormRender:{},request:{},onLoad:{},defaultData:{},dataSource:{},onLoadingChange:{},searchForm:{type:[Boolean,Object],default:void 0},beforeSearchSubmit:{},pagination:{type:[Boolean,Object],default:void 0},searchFormWrapperStyle:{},tableWrapperStyle:{},manual:{type:Boolean,default:!1},size:{default:"middle"},adaptive:{type:Boolean,default:!1},columnResizable:{type:Boolean,default:!1}},setup(z,{expose:L}){const o=z;let w=0;const m=e.useSlots(),[,V]=Y.useToken(),{t:E}=te.useLocale(),{e:g,b:c}=le.useNamespace("ap-table"),C=se.useGlobalConfig("valueTypeMap"),{height:O,contentRef:K}=ae.default(),i=e.ref([]),D=()=>{var n;let a=((n=o.columns)==null?void 0:n.filter(r=>!r.hideInTable))||[];return a=a.map(r=>({resizable:ne.isDef(r.resizable)?r.resizable:o.columnResizable,...u.omit(s.apColumnToColumn(r),["ellipsis"]),title:s.getTableTitle(r,m.headerCell,e.unref(V).colorPrimary),customRender({value:t,...l}){var k,q;const d=s.getTableRenderType(r),B=s.getTableRenderProps({...r,valueType:d},{value:t,...l}),Q=s.getTableCellRenderNode(d,B,l.record,e.unref(C)),P=((k=r.renderText)==null?void 0:k.call(r,{value:t,...l}))||t,X=r.renderText?e.createVNode(e.Fragment,null,[(q=r.renderText)==null?void 0:q.call(r,{value:t,...l})]):Q;let b=G(r,P,X);return r.customRender&&(b=r.customRender({value:t,...l,column:r,originalNode:b,originalText:P})),b}})),a};e.watchEffect(()=>{i.value=D()});const R=e.computed(()=>{var a,n,r;return w++,((r=(n=(a=o.columns)==null?void 0:a.filter(t=>!t.hideInSearch&&t.dataIndex&&(t.valueType||t.customRenderFormItem)&&!N.noRenderAsFormItemValueList.includes(t.valueType)))==null?void 0:n.sort((t,l)=>{let d=s.getColumnOrder(t.order);return s.getColumnOrder(l.order)-d}))==null?void 0:r.map(t=>{const l=s.updateFormProps(t,s.getFieldProps(t.fieldProps,{})),d={...t,fieldProps:{label:t.title,name:t.dataIndex,...l||{},placeholder:s.getPlaceholder(E,t.valueType,l==null?void 0:l.placeholder),_signal:w},renderNode:void 0};return d.renderNode=s.getSearchFormItemRenderNode(d,e.unref(C)),d}))||[]}),U=e.computed(()=>e.unref(i).filter(a=>a.sorter===!0).map(a=>a.dataIndex).filter(Boolean)),j=e.computed(()=>e.unref(i).filter(a=>a.filters&&!a.onFilter).map(a=>a.dataIndex).filter(Boolean)),A=e.computed(()=>u.isUndefined(o.dataSource)?f.value.records:o.dataSource),{rowSelection:y,selectedRows:T,...h}=re.default({...o.rowSelection===!0?{}:o.rowSelection,rowKey:o.rowKey,dataSource:A}),{formRef:S,submit:x,reset:F,tableProps:p,handleTableChange:W,data:f}=ee.useTablePaging({async request(a){var r,t;!y.value.preserveSelectedRowKeys&&u.isUndefined(o.dataSource)&&h.clearAll();const n=await((r=o.request)==null?void 0:r.call(o,a));return(t=o.onLoad)==null||t.call(o,(n==null?void 0:n.data)||[]),{data:(n==null?void 0:n.data)||[],total:(n==null?void 0:n.total)||0}},filterFields:j,sortFields:U,defaultParams:o.params,defaultData:o.defaultData,manual:o.manual,defaultCurrent:o.pagination?o.pagination.defaultCurrent:void 0,defaultPageSize:o.pagination?o.pagination.defaultPageSize:void 0,formatParams:o.beforeSearchSubmit,showLessItems:o.pagination?o.pagination.showLessItems:void 0,showTotal:o.pagination?o.pagination.showTotal:void 0}),$=e.computed(()=>{var n,r;if(o.adaptive&&(f.value.total>0||((n=o.dataSource)==null?void 0:n.length)))return{y:e.unref(O),x:((r=o.scroll)==null?void 0:r.x)||"100%"};if(o.scroll)return o.scroll}),H=e.computed(()=>{var a;if(o.tableLayout)return o.tableLayout;if((a=o.columns)!=null&&a.some(n=>n.ellipsis))return"fixed"}),v=e.computed(()=>{var t;const a=e.unref(p),n=u.isUndefined(o.dataSource)?a:{...a,dataSource:o.dataSource,onChange:o.onChange},r=e.unref(y);return{...o,...n,rowSelection:o.rowSelection===!0||((t=o.rowSelection)==null?void 0:t.mode)==="internal"?{...r,preserveSelectedRowKeys:u.isUndefined(o.dataSource)?r.preserveSelectedRowKeys:!0}:o.rowSelection,loading:u.isUndefined(o.loading)?e.unref(p).loading:o.loading,pagination:o.pagination===!1?!1:e.unref(p).pagination,scroll:e.unref($)}}),M=e.computed(()=>[c(),o.card?null:c("wrapper"),o.adaptive?c("adaptive"):null].filter(Boolean));function G(a,n,r){if(N.noRenderAsFormItemValueList.includes(a.valueType))return r;const t=s.objectToString(n);return a.copyable||a.ellipsis?e.createVNode(I.Typography.Paragraph,{copyable:a.copyable?{text:t,tooltip:!1}:!1,ellipsis:a.ellipsis?u.isBoolean(a.ellipsis)?{tooltip:t}:{...a.ellipsis,tooltip:t}:!1,content:a.ellipsis?oe.getRawDisplayValue(a,n):r},null):r}e.watch(()=>e.unref(f).loading,a=>{var n;(n=o.onLoadingChange)==null||n.call(o,a)});function _(a){var n,r,t;(t=(r=(n=S.value)==null?void 0:n.apForm)==null?void 0:r.setFieldsValue)==null||t.call(r,a)}function J(){var a,n,r;return(r=(n=(a=S.value)==null?void 0:a.apForm)==null?void 0:n.getFieldsValue)==null?void 0:r.call(n,!0)}return L({submit:()=>x(),reset:()=>F(),setSearchFormValues:_,getSearchFormValues:J,dataSource:e.computed(()=>e.unref(f).records),rowSelection:{selectedRows:e.computed(()=>e.unref(T)),...h}}),(a,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(M.value)},[e.unref(u.isUndefined)(a.dataSource)&&a.searchForm!==!1&&R.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(a.card?e.unref(g)("search-wrapper"):null),style:e.normalizeStyle(a.searchFormWrapperStyle)},[e.createVNode(e.unref(Z.ApForm).SearchForm,e.mergeProps(a.searchForm||{},{ref_key:"formRef",ref:S,"custom-reset":"",onSubmit:e.unref(x),onReset:e.unref(F),"submit-loading":e.unref(p).loading}),e.createSlots({default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(R.value,r=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.renderNode),e.mergeProps({key:r.dataIndex,ref_for:!0},r.fieldProps||{},{span:r.span}),null,16,["span"]))),128))]),_:2},[m.searchFormExtra?{name:"extra",fn:e.withCtx(()=>[e.renderSlot(a.$slots,"searchFormExtra")]),key:"0"}:void 0]),1040,["onSubmit","onReset","submit-loading"])],6)):e.createCommentVNode("",!0),e.createElementVNode("div",{ref_key:"contentRef",ref:K,class:e.normalizeClass([e.unref(g)("table-wrapper"),a.card?e.unref(g)("table-wrapper-card"):null]),style:e.normalizeStyle(a.tableWrapperStyle)},[e.renderSlot(a.$slots,"title",e.mergeProps({selectedRows:e.unref(T),selectedRowKeys:e.unref(y).selectedRowKeys},h)),e.createVNode(e.unref(I.Table),e.mergeProps({class:e.unref(c)("table")},v.value,{"table-layout":H.value,onChange:e.unref(W),columns:i.value,onResizeColumn:n[0]||(n[0]=(r,t)=>t.width=r)}),e.createSlots({summary:e.withCtx(()=>[e.renderSlot(a.$slots,"summary",{columns:i.value,records:v.value.dataSource})]),_:2},[e.renderList(e.unref(u.omit)(m,["title","searchFormExtra","headerCell"]),(r,t)=>({name:t,fn:e.withCtx(l=>[e.renderSlot(a.$slots,t,e.normalizeProps(e.guardReactiveProps(l||{})))])}))]),1040,["class","table-layout","onChange","columns"])],6)],2))}});exports.default=ue;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../ap-action/index.js");require("../ap-field/index.js");require("../ap-form/index.js");require("./components/index/index.vue.js");require("./components/status/index.vue.js");const t=require("../ap-form/items/date/index.vue.js"),_=require("../ap-form/items/date-range/index.vue.js"),u=require("../ap-form/items/number/index.vue.js"),r=require("../ap-form/items/radio/index.vue.js"),i=require("../ap-form/items/select/index.vue.js"),s=require("../ap-form/items/switch/index.vue.js"),e=require("../ap-form/items/text/index.js"),n=require("../ap-form/items/text-area/index.vue.js"),a=require("../ap-form/items/checkbox/index.vue.js"),p=require("../ap-field/date/index.vue.js"),l=require("../ap-field/date-range/index.vue.js"),d=require("../ap-field/number/index.vue.js"),c=require("../ap-field/radio/index.vue.js"),o=require("../ap-field/select/index.vue.js"),v=require("../ap-field/switch/index.vue.js"),x=require("../ap-field/text/index.js"),q=require("../ap-field/text-area/index.vue.js"),g=require("../ap-field/checkbox/index.vue.js"),y=require("../ap-action/group/index.vue.js"),f=require("./components/index/index.vue2.js"),m=require("./components/status/index.vue2.js"),$=require("../ap-field/text/password.vue.js"),b={date:t.default,dateRange:_.default,number:u.default,radio:r.default,select:i.default,switch:s.default,text:e.ApFormItemText,textArea:n.default,checkbox:a.default,password:e.ApFormItemText.Password},w={date:p.default,dateRange:l.default,number:d.default,radio:c.default,select:o.default,switch:v.default,text:x.ApFieldText,textArea:q.default,checkbox:g.default,action:y.default,index:f.default,status:m.default,password:$.default},T=["action","index"],h={display:"-webkit-inline-box","-webkit-line-clamp":2,"-webkit-box-orient":"vertical",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"normal",maxWidth:"100%",verticalAlign:"middle"};exports.apTableFormItemMap=b;exports.apTableRenderItemMap=w;exports.ellipsisTitleStyle=h;exports.noRenderAsFormItemValueList=T;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../ap-action/index.js");require("../ap-field/index.js");require("../ap-form/index.js");require("./components/index/index.vue.js");require("./components/status/index.vue.js");const t=require("../ap-form/items/date/index.vue.js"),_=require("../ap-form/items/date-range/index.vue.js"),u=require("../ap-form/items/number/index.vue.js"),r=require("../ap-form/items/radio/index.vue.js"),i=require("../ap-form/items/select/index.vue.js"),s=require("../ap-form/items/switch/index.vue.js"),e=require("../ap-form/items/text/index.js"),n=require("../ap-form/items/text-area/index.vue.js"),a=require("../ap-form/items/checkbox/index.vue.js"),p=require("../ap-field/date/index.vue.js"),l=require("../ap-field/date-range/index.vue.js"),d=require("../ap-field/number/index.vue.js"),c=require("../ap-field/radio/index.vue.js"),o=require("../ap-field/select/index.vue.js"),v=require("../ap-field/switch/index.vue.js"),x=require("../ap-field/text/index.js"),q=require("../ap-field/text-area/index.vue.js"),g=require("../ap-field/checkbox/index.vue.js"),f=require("../ap-action/group/index.vue.js"),y=require("./components/index/index.vue2.js"),m=require("./components/status/index.vue2.js"),$=require("../ap-field/text/password.vue.js"),b={date:t.default,dateRange:_.default,number:u.default,radio:r.default,select:i.default,switch:s.default,text:e.ApFormItemText,textArea:n.default,checkbox:a.default,password:e.ApFormItemText.Password},w={date:p.default,dateRange:l.default,number:d.default,radio:c.default,select:o.default,switch:v.default,text:x.ApFieldText,textArea:q.default,checkbox:g.default,action:f.default,index:y.default,status:m.default,password:$.default},T=["action","index"],h={display:"-webkit-inline-box","-webkit-line-clamp":2,"-webkit-box-orient":"vertical",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"normal",maxWidth:"100%",verticalAlign:"middle",wordBreak:"break-all",flex:1};exports.apTableFormItemMap=b;exports.apTableRenderItemMap=w;exports.ellipsisTitleStyle=h;exports.noRenderAsFormItemValueList=T;
@@ -51,8 +51,16 @@ export type UseTablePagingParams<DataType, ParamsType> = {
51
51
  * 需要后端筛选的排序字段列表
52
52
  */
53
53
  sortFields?: ComputedRef<DataIndex[]>;
54
+ /**
55
+ * 是否显示基础分页(较少的现实内容)
56
+ */
57
+ showLessItems?: boolean;
58
+ /**
59
+ * 用于显示数据总量和当前数据顺序
60
+ */
61
+ showTotal?: boolean;
54
62
  };
55
- export declare const useTablePaging: <DataType = any, ParamsType = Record<string, any>>({ manual, defaultCurrent, defaultPageSize, request, defaultParams, defaultData, formatParams, paramsValueTypeMap, resetFieldsIgnores, filterFields, sortFields }: UseTablePagingParams<DataType, ParamsType>) => {
63
+ export declare const useTablePaging: <DataType = any, ParamsType = Record<string, any>>({ manual, defaultCurrent, defaultPageSize, request, defaultParams, defaultData, formatParams, paramsValueTypeMap, resetFieldsIgnores, filterFields, sortFields, showLessItems, showTotal }: UseTablePagingParams<DataType, ParamsType>) => {
56
64
  formRef: Ref<ApFormSearchFormExpose | undefined>;
57
65
  submit: () => void;
58
66
  reset: () => void;
@@ -74,7 +82,9 @@ export declare const useTablePaging: <DataType = any, ParamsType = Record<string
74
82
  total: number;
75
83
  showSizeChanger: boolean;
76
84
  showQuickJumper: boolean;
77
- showTotal: (total: number) => string;
85
+ showLessItems: boolean;
86
+ size: string;
87
+ showTotal: ((total: number) => import("vue/jsx-runtime").JSX.Element) | undefined;
78
88
  };
79
89
  onChange: (pagination: TablePaginationConfig, filters: Record<string, FilterValue | null>, sorter: SorterResult<any> | SorterResult<any>[], extra: TableCurrentDataSource<any>) => void;
80
90
  dataSource: DataType[];
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue"),O=require("../utils.js"),I=require("lodash-unified");require("../../config-provider/index.js");const K=require("../../config-provider/hooks/use-locale.js"),N=({manual:j=!1,defaultCurrent:$=1,defaultPageSize:T=10,request:x,defaultParams:D={},defaultData:L=[],formatParams:P,paramsValueTypeMap:b,resetFieldsIgnores:z,filterFields:M,sortFields:R})=>{let F=0,f={};const A=e=>P?P(e):e,i=t.ref(),c=t.ref($),d=t.ref(T),{t:q}=K.useLocale(),o=t.ref({total:0,records:L,loading:!1}),w=async e=>{var n;const a=A(e),r=Date.now();F=r,o.value.loading=!0;try{const s=await x({...D,...a});F===r&&(o.value.total=s.total||((n=s.data)==null?void 0:n.length)||0,o.value.records=[...s.data||[]])}catch{F===r&&(o.value.records=[],o.value.total=0)}finally{o.value.loading=!1}},y=e=>{const a={};return Object.entries(e).forEach(([r,n])=>{if(a[r]=n,b&&n){const s=b[r];s&&(a[r]=O.parseFieldValue(s,n))}}),a},B=async e=>{var n,s,g,p,h,l,m;const a=((s=(n=i.value)==null?void 0:n.apForm)==null?void 0:s.getFieldsValue())||{},r={};Object.entries(a).forEach(([v,u])=>{z&&z.indexOf(v)>-1&&(r[v]=u)}),await((p=(g=i.value)==null?void 0:g.apForm)==null?void 0:p.resetFields()),(m=(l=(h=i.value)==null?void 0:h.apForm)==null?void 0:l.setFieldsValue)==null||m.call(l,r),t.nextTick(()=>{e==null||e()})},S=e=>{f=e;const a=y(e);w(a)},E=e=>{S({...f,...e})},V=()=>{var a,r;const e=((r=(a=i.value)==null?void 0:a.apForm)==null?void 0:r.getFieldsValue(!0))||{};c.value=1,S({...e,current:1,pageSize:f.pageSize||T})},J=()=>{B(V)},Q=()=>{S(f)},U=e=>{const a=t.unref(o).total-e,r=Math.ceil(a/t.unref(d)),n=t.unref(c)>r?r:t.unref(c);E({current:n>0?n:1})},C=(e,a,r)=>{var h,l,m,v;const n=((l=(h=i.value)==null?void 0:h.apForm)==null?void 0:l.getFieldsValue(!0))||{};c.value=e.current,d.value=e.pageSize;const s=I.isArray(r)?[...r]:[r],g={};for(const u of s)(m=t.unref(R))!=null&&m.includes(u.field)&&(g[O.dataIndexToStr(u.field)]=u.order);const p={};for(const u of Object.keys(a))(v=t.unref(M))!=null&&v.includes(u)&&(p[u]=a[u]);S({...n,filter:p,sort:g,current:e.current,pageSize:e.pageSize})};t.onMounted(()=>{var a,r;const e=((r=(a=i.value)==null?void 0:a.apForm)==null?void 0:r.getFieldsValue(!0))||{};if(f={current:t.unref(c),pageSize:t.unref(d),...e},!j){const n=y(f);w(n)}});const G=t.computed(()=>t.unref(o).total===0?"-":`${t.unref(c.value)}/${Math.ceil(t.unref(o).total/t.unref(d))}`),H=t.computed(()=>({loading:t.unref(o).loading,pagination:{current:t.unref(c),pageSize:t.unref(d),total:t.unref(o).total,showSizeChanger:!0,showQuickJumper:!0,showTotal:e=>`${q("ap.apTable.pagination.totalLeft",{total:e})} ${q("ap.apTable.pagination.totalRight",{page:t.unref(G)})}`},onChange:C,dataSource:t.unref(o).records}));return{formRef:i,submit:V,reset:J,refresh:Q,refreshByDelete:U,data:o,current:c,pageSize:d,handleTableChange:C,tableProps:H,dataSource:t.computed(()=>t.unref(o).records)}};exports.useTablePaging=N;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),O=require("../utils.js"),X=require("lodash-unified");require("../../config-provider/index.js");const Y=require("../../config-provider/hooks/use-locale.js"),Z=require("../../config-provider/hooks/use-namespace.js"),_=({manual:j=!1,defaultCurrent:R=1,defaultPageSize:V=10,request:D,defaultParams:M={},defaultData:A=[],formatParams:x,paramsValueTypeMap:z,resetFieldsIgnores:q,filterFields:B,sortFields:E,showLessItems:b=!1,showTotal:L=!0})=>{let P=0,f={};const $=t=>x?x(t):t,c=e.ref(),i=e.ref(R),d=e.ref(V),{t:S}=Y.useLocale(),{b:T}=Z.useNamespace("ap-table"),o=e.ref({total:0,records:A,loading:!1}),y=async t=>{var r;const n=$(t),a=Date.now();P=a,o.value.loading=!0;try{const s=await D({...M,...n});P===a&&(o.value.total=s.total||((r=s.data)==null?void 0:r.length)||0,o.value.records=[...s.data||[]])}catch{P===a&&(o.value.records=[],o.value.total=0)}finally{o.value.loading=!1}},N=t=>{const n={};return Object.entries(t).forEach(([a,r])=>{if(n[a]=r,z&&r){const s=z[a];s&&(n[a]=O.parseFieldValue(s,r))}}),n},J=async t=>{var r,s,g,p,h,l,m;const n=((s=(r=c.value)==null?void 0:r.apForm)==null?void 0:s.getFieldsValue())||{},a={};Object.entries(n).forEach(([v,u])=>{q&&q.indexOf(v)>-1&&(a[v]=u)}),await((p=(g=c.value)==null?void 0:g.apForm)==null?void 0:p.resetFields()),(m=(l=(h=c.value)==null?void 0:h.apForm)==null?void 0:l.setFieldsValue)==null||m.call(l,a),e.nextTick(()=>{t==null||t()})},F=t=>{f=t;const n=N(t);y(n)},Q=t=>{F({...f,...t})},w=()=>{var n,a;const t=((a=(n=c.value)==null?void 0:n.apForm)==null?void 0:a.getFieldsValue(!0))||{};i.value=1,F({...t,current:1,pageSize:f.pageSize||V})},U=()=>{J(w)},G=()=>{F(f)},H=t=>{const n=e.unref(o).total-t,a=Math.ceil(n/e.unref(d)),r=e.unref(i)>a?a:e.unref(i);Q({current:r>0?r:1})},C=(t,n,a)=>{var h,l,m,v;const r=((l=(h=c.value)==null?void 0:h.apForm)==null?void 0:l.getFieldsValue(!0))||{};i.value=t.current,d.value=t.pageSize;const s=X.isArray(a)?[...a]:[a],g={};for(const u of s)(m=e.unref(E))!=null&&m.includes(u.field)&&(g[O.dataIndexToStr(u.field)]=u.order);const p={};for(const u of Object.keys(n))(v=e.unref(B))!=null&&v.includes(u)&&(p[u]=n[u]);F({...r,filter:p,sort:g,current:t.current,pageSize:t.pageSize})};e.onMounted(()=>{var n,a;const t=((a=(n=c.value)==null?void 0:n.apForm)==null?void 0:a.getFieldsValue(!0))||{};if(f={current:e.unref(i),pageSize:e.unref(d),...t},!j){const r=N(f);y(r)}});const K=e.computed(()=>e.unref(o).total===0?"-":`${e.unref(i.value)}/${Math.ceil(e.unref(o).total/e.unref(d))}`),W=e.computed(()=>({loading:e.unref(o).loading,pagination:{current:e.unref(i),pageSize:e.unref(d),total:e.unref(o).total,showSizeChanger:!b,showQuickJumper:!b,showLessItems:b,size:"default",showTotal:L?t=>e.createVNode("span",{class:T("pagination-total-wrapper")},[S("ap.apTable.pagination.totalLeftPrefix")," ",e.createVNode("span",{class:T("pagination-count-text")},[t])," ",S("ap.apTable.pagination.totalLeftSuffix"),e.createVNode("span",{class:T("pagination--total-right")},[S("ap.apTable.pagination.totalRightPrefix")," ",e.createVNode("span",{class:T("pagination-count-text")},[e.unref(K)])," ",S("ap.apTable.pagination.totalRightSuffix")])]):void 0},onChange:C,dataSource:e.unref(o).records}));return{formRef:c,submit:w,reset:U,refresh:G,refreshByDelete:H,data:o,current:i,pageSize:d,handleTableChange:C,tableProps:W,dataSource:e.computed(()=>e.unref(o).records)}};exports.useTablePaging=_;
@@ -162,6 +162,18 @@ export type RequestData<T> = {
162
162
  data: T[] | undefined;
163
163
  total: number;
164
164
  } & Record<string, any>;
165
+ export type ApTablePaginationConfig = {
166
+ defaultCurrent?: number;
167
+ defaultPageSize?: number;
168
+ /**
169
+ * 是否显示较少页面内容
170
+ */
171
+ showLessItems?: boolean;
172
+ /**
173
+ * 用于显示数据总量和当前数据顺序
174
+ */
175
+ showTotal?: boolean;
176
+ };
165
177
  export type ApTableProps<RecordType = any, ParamsType = any> = Omit<TableProps<RecordType>, 'columns' | 'pagination' | 'dataSource' | 'size' | 'rowSelection'> & {
166
178
  /**
167
179
  * 列配置
@@ -230,10 +242,7 @@ export type ApTableProps<RecordType = any, ParamsType = any> = Omit<TableProps<R
230
242
  /**
231
243
  * 是否显示分页器(特定的分页器)或者指定默认的当前页和pageSize
232
244
  */
233
- pagination?: false | {
234
- defaultCurrent?: number;
235
- defaultPageSize?: number;
236
- };
245
+ pagination?: false | ApTablePaginationConfig;
237
246
  /**
238
247
  * 自定义查询表单容器样式
239
248
  */
@@ -86,3 +86,12 @@
86
86
  .aplus-ap-table .ant-table-cell .ant-typography {
87
87
  margin-bottom: 0;
88
88
  }
89
+ .aplus-ap-table-pagination-count-text {
90
+ color: var(--ap-table-pagination-total-count-color, #182948);
91
+ }
92
+ .aplus-ap-table-pagination--total-right {
93
+ padding-left: 12px;
94
+ }
95
+ .aplus-ap-table-pagination-total-wrapper {
96
+ color: var(--ap-table-pagination-total-color, #526A90);
97
+ }
@@ -1,13 +1,15 @@
1
1
  import { ApColumnType, ApTableValueFields, ValueEnum, ValueEnumType } from './interface';
2
2
  import { Translator, ValueTypeRenderConfig } from '../config-provider';
3
3
  import { apTableRenderItemMap } from './constants';
4
- import { VNode, CreateComponentPublicInstance, ExtractPropTypes, PropType, HTMLAttributes, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, ComponentOptionsBase, RendererNode, RendererElement } from 'vue';
4
+ import { VNode, CreateComponentPublicInstance, ExtractPropTypes, PropType, HTMLAttributes, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, ComponentOptionsBase, VNodeArrayChildren } from 'vue';
5
5
  import { ColSize } from 'ant-design-vue/es/grid';
6
6
  import { ApFieldTextPasswordProps, ApFieldTextProps, ApFieldTextAreaProps, ApFieldNumberProps, ApFieldDateProps, ApFieldDateRangeProps, ApFieldRadioProps, ApFieldSelectProps, ApFieldSwitchProps, ApFieldCheckboxProps } from '..';
7
7
  import { RuleObject } from 'ant-design-vue/es/form';
8
8
  import { FormLabelAlign } from 'ant-design-vue/es/form/interface';
9
9
  import { ApFormItemSlots, ApFormItemTextPassword } from '../ap-form';
10
10
  import { InputFocusOptions } from 'ant-design-vue/es/vc-input/utils/commonUtils';
11
+ import { ColumnTitleProps } from 'ant-design-vue/es/table/interface';
12
+ import { VueNode } from 'ant-design-vue/es/_util/type';
11
13
  export type FieldValueType = 'multiple' | 'multipleNumber' | 'dayjs' | 'dayjsRange' | 'dayjsDayRange' | 'number' | 'boolean' | 'object';
12
14
  export declare const formatParamsValueType: (type: FieldValueType | Record<string, FieldValueType>, value: any, cb: (t: FieldValueType, value: any) => any) => any;
13
15
  /**
@@ -8425,7 +8427,5 @@ export declare function objectToString(value: any): any;
8425
8427
  export declare function getTableTitle(column: ApColumnType<any>, slot?: (props: {
8426
8428
  title: any;
8427
8429
  column: ApColumnType<any>;
8428
- }) => any, tooltipColor?: string): VNode< RendererNode, RendererElement, {
8429
- [key: string]: any;
8430
- }>[] | import("vue/jsx-runtime").JSX.Element | (() => import("vue/jsx-runtime").JSX.Element);
8430
+ }) => any, tooltipColor?: string): number | boolean | void | VNodeArrayChildren | import("vue/jsx-runtime").JSX.Element | ((props: ColumnTitleProps<any>) => VNodeArrayChildren | VueNode) | null;
8431
8431
  export {};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("vue"),l=require("lodash-unified"),c=require("./constants.js"),T=require("@fruits-chain/utils");require("../ap-form/index.js");const g=require("ant-design-vue"),b=require("@ant-design/icons-vue"),y=require("../ap-form/ap-form-item.vue.js");function h(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!s.isVNode(e)}const d=(e,t,n)=>{let r={};return l.isObject(e)?Object.keys(e).forEach(u=>{l.isObject(e[u])?r[u]=d(e[u],t[u],n):r[u]=n(e[u],t)}):r=n(e,t),r},j=(e,t)=>{switch(e){case"dayjs":return t.valueOf();case"dayjsRange":return t.map(n=>n.valueOf());case"dayjsDayRange":{const[n,r]=t;return[n.startOf("day").valueOf(),r.endOf("day").valueOf()]}case"multiple":case"multipleNumber":return l.isArray(t)?t:[t];case"boolean":return t;case"object":return t;default:return t}};function F(e){return l.isArray(e)?e.join("."):e}function N(e){const t=Object.prototype.toString.call(e).match(/^\[object (.*)\]$/)[1].toLowerCase();return t==="string"&&typeof e=="object"?"object":e===null?"null":e===void 0?"undefined":t}const f=e=>N(e)==="map"?e:new Map(Object.entries(e||{})),a=e=>{const t=[],n=f(e);return n.forEach((r,u)=>{const o=n.get(u)||n.get(`${u}`);if(o){if(typeof o=="object"&&(o!=null&&o.text)){t.push({text:o==null?void 0:o.text,value:u,label:o==null?void 0:o.text,disabled:o.disabled});return}t.push({text:o,label:o,value:u})}}),t},O=e=>l.isUndefined(e)||e<0?0:e,S=(e,t,n)=>{if(n)return n;const r=["select","date"],u=["text","textArea","number"];if(t==="dateRange")return[e("ap.common.chooseText"),e("ap.common.chooseText")];if(r.includes(t))return e("ap.common.chooseText");if(u.includes(t))return e("ap.common.inputText")};function p(e,t){return!e||!l.isFunction(e)?e:e(t)}function V(e){let t=e.valueType||"text";return e.valueEnum&&(t="status"),t}function E(e,t,n,r){var i;const u=c.apTableRenderItemMap[e];if(u)return s.createVNode(u,s.mergeProps(t,{mode:"read"}),null);const o=r==null?void 0:r[e];return((i=o==null?void 0:o.render)==null?void 0:i.call(o,t.value,n,t))||t.value}function P(e,t){if(e.customRenderFormItem)return()=>{const u=e.customRenderFormItem(e);return s.cloneVNode(u,{...e.fieldProps,span:e.span,...u.props||{}})};const n=c.apTableFormItemMap[e.valueType];if(n)return n;const r=t==null?void 0:t[e.valueType];return()=>{var o;const u=(o=r==null?void 0:r.renderFormItem)==null?void 0:o.call(r,e.fieldProps.field);return u?s.createVNode(y.default,s.mergeProps(e.fieldProps,{span:e.span}),h(u)?u:{default:()=>[u]}):null}}function v(e,t){const n=p(e.fieldProps,t),r=(n==null?void 0:n.field)||n||{},u=e.valueType==="switch",o=e.valueType==="index",i=u?{checked:t.value}:{value:o?t.index+1:t.value};return e.valueEnum&&(r.valueEnum=e.valueEnum),{...l.omit(r,["request"]),...i}}function I(e){const t={...e};return l.isBoolean(e.filters)&&e.filters&&e.valueEnum&&(t.filters=a(e.valueEnum)),t}function C(e,t){var r;const n=t||{};return e.valueEnum&&!((r=n.field)!=null&&r.options)&&(n.field={...n.field,options:a(e.valueEnum)}),n}function q(e){if(!T.isType("Object")(e))return e;try{return JSON.stringify(e)}catch{return e}}function _(e,t,n){const r=t==null?void 0:t({title:e.title,column:e});if(r&&(r.length>1||r[0].children!=="v-if"))return r;const o=s.createVNode("span",{style:c.ellipsisTitleStyle,title:e.title},[e.title]),i=e.tooltip?l.isString(e.tooltip)?s.createVNode(s.Fragment,null,[e.tooltip]):e.tooltip(e):null,m=()=>s.createVNode(s.Fragment,null,[o,s.createVNode(g.Tooltip,{title:i,placement:"bottom"},{default:()=>[s.createVNode(b.QuestionCircleOutlined,{style:{padding:"4px",color:n,verticalAlign:"middle"}},null)]})]);return i?m:o}exports.apColumnToColumn=I;exports.dataIndexToStr=F;exports.formatParamsValueType=d;exports.getColumnOrder=O;exports.getFieldProps=p;exports.getPlaceholder=S;exports.getSearchFormItemRenderNode=P;exports.getTableCellRenderNode=E;exports.getTableRenderProps=v;exports.getTableRenderType=V;exports.getTableTitle=_;exports.objectToMap=f;exports.objectToString=q;exports.parseFieldValue=j;exports.updateFormProps=C;exports.valueEnumToArray=a;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("vue"),i=require("lodash-unified"),c=require("./constants.js"),T=require("@fruits-chain/utils");require("../ap-form/index.js");const g=require("ant-design-vue"),b=require("@ant-design/icons-vue"),y=require("../ap-form/ap-form-item.vue.js");function h(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!u.isVNode(e)}const d=(e,t,n)=>{let r={};return i.isObject(e)?Object.keys(e).forEach(s=>{i.isObject(e[s])?r[s]=d(e[s],t[s],n):r[s]=n(e[s],t)}):r=n(e,t),r},j=(e,t)=>{switch(e){case"dayjs":return t.valueOf();case"dayjsRange":return t.map(n=>n.valueOf());case"dayjsDayRange":{const[n,r]=t;return[n.startOf("day").valueOf(),r.endOf("day").valueOf()]}case"multiple":case"multipleNumber":return i.isArray(t)?t:[t];case"boolean":return t;case"object":return t;default:return t}};function F(e){return i.isArray(e)?e.join("."):e}function N(e){const t=Object.prototype.toString.call(e).match(/^\[object (.*)\]$/)[1].toLowerCase();return t==="string"&&typeof e=="object"?"object":e===null?"null":e===void 0?"undefined":t}const f=e=>N(e)==="map"?e:new Map(Object.entries(e||{})),a=e=>{const t=[],n=f(e);return n.forEach((r,s)=>{const o=n.get(s)||n.get(`${s}`);if(o){if(typeof o=="object"&&(o!=null&&o.text)){t.push({text:o==null?void 0:o.text,value:s,label:o==null?void 0:o.text,disabled:o.disabled});return}t.push({text:o,label:o,value:s})}}),t},O=e=>i.isUndefined(e)||e<0?0:e,S=(e,t,n)=>{if(n)return n;const r=["select","date"],s=["text","textArea","number"];if(t==="dateRange")return[e("ap.common.chooseText"),e("ap.common.chooseText")];if(r.includes(t))return e("ap.common.chooseText");if(s.includes(t))return e("ap.common.inputText")};function p(e,t){return!e||!i.isFunction(e)?e:e(t)}function V(e){let t=e.valueType||"text";return e.valueEnum&&(t="status"),t}function E(e,t,n,r){var l;const s=c.apTableRenderItemMap[e];if(s)return u.createVNode(s,u.mergeProps(t,{mode:"read"}),null);const o=r==null?void 0:r[e];return((l=o==null?void 0:o.render)==null?void 0:l.call(o,t.value,n,t))||t.value}function P(e,t){if(e.customRenderFormItem)return()=>{const s=e.customRenderFormItem(e);return u.cloneVNode(s,{...e.fieldProps,span:e.span,...s.props||{}})};const n=c.apTableFormItemMap[e.valueType];if(n)return n;const r=t==null?void 0:t[e.valueType];return()=>{var o;const s=(o=r==null?void 0:r.renderFormItem)==null?void 0:o.call(r,e.fieldProps.field);return s?u.createVNode(y.default,u.mergeProps(e.fieldProps,{span:e.span}),h(s)?s:{default:()=>[s]}):null}}function v(e,t){const n=p(e.fieldProps,t),r=(n==null?void 0:n.field)||n||{},s=e.valueType==="switch",o=e.valueType==="index",l=s?{checked:t.value}:{value:o?t.index+1:t.value};return e.valueEnum&&(r.valueEnum=e.valueEnum),{...i.omit(r,["request"]),...l}}function I(e){const t={...e};return i.isBoolean(e.filters)&&e.filters&&e.valueEnum&&(t.filters=a(e.valueEnum)),t}function C(e,t){var r;const n=t||{};return e.valueEnum&&!((r=n.field)!=null&&r.options)&&(n.field={...n.field,options:a(e.valueEnum)}),n}function q(e){if(!T.isType("Object")(e))return e;try{return JSON.stringify(e)}catch{return e}}function x(e,t,n){const r=t==null?void 0:t({title:e.title,column:e});if(r&&(r.length>1||r[0].children!=="v-if"))return r;const o=i.isString(e.title)?u.createVNode("span",{style:c.ellipsisTitleStyle,title:e.title},[e.title]):e.title,l=e.tooltip?i.isString(e.tooltip)?u.createVNode(u.Fragment,null,[e.tooltip]):e.tooltip(e):null,m=()=>u.createVNode("span",{style:{display:"inline-flex",alignItems:"center"}},[o,u.createVNode(g.Tooltip,{title:l,placement:"bottom"},{default:()=>[u.createVNode(b.QuestionCircleOutlined,{style:{padding:"4px",color:n,verticalAlign:"middle"}},null)]})]);return l?m:o}exports.apColumnToColumn=I;exports.dataIndexToStr=F;exports.formatParamsValueType=d;exports.getColumnOrder=O;exports.getFieldProps=p;exports.getPlaceholder=S;exports.getSearchFormItemRenderNode=P;exports.getTableCellRenderNode=E;exports.getTableRenderProps=v;exports.getTableRenderType=V;exports.getTableTitle=x;exports.objectToMap=f;exports.objectToString=q;exports.parseFieldValue=j;exports.updateFormProps=C;exports.valueEnumToArray=a;