@ditari/bsui 1.1.8 → 1.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # @ditari/bsui
2
2
 
3
+ ## 1.1.10
4
+
5
+ ### Patch Changes
6
+
7
+ - 表格列表,添加分页条数配置
8
+
9
+ ## 1.1.9
10
+
11
+ ### Patch Changes
12
+
13
+ - 修改 request
14
+ - Updated dependencies
15
+ - @ditari/hooks@1.0.4
16
+ - @ditari/store@1.0.4
17
+
3
18
  ## 1.1.8
4
19
 
5
20
  ### Patch Changes
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../src/layout/index.ts"],"sourcesContent":["import type { App } from \"vue\";\nimport List from \"./List.vue\";\nimport Main from \"./Main.vue\";\nimport FuckMain from \"./FuckMain.vue\";\nimport Show from \"./Show.vue\";\n\n// export const DList = withInstall(List);\n// export const DMain = withInstall(Main);\n// export const DNavTabs = withInstall(NavTabs);\n// export const DShow = withInstall(Show);\n// export const DFuckMain = withInstall(FuckMain);\n\nList.install = function (app: App) {\n app.component(\"DListLayout\", List);\n return app;\n};\nMain.install = function (app: App) {\n app.component(\"DMainLayout\", Main);\n return app;\n};\nFuckMain.install = function (app: App) {\n app.component(\"DFuckMain\", FuckMain);\n return app;\n};\nShow.install = function (app: App) {\n app.component(\"DShowLayout\", Show);\n return app;\n};\n\nexport { List, Main, FuckMain, Show };\n"],"names":["List","Main","FuckMain","Show"],"mappings":";;;;;;;AAYAA,YAAK,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACjC,EAAI,GAAA,CAAA,SAAA,CAAU,eAAeA,YAAI,CAAA,CAAA;AACjC,EAAO,OAAA,GAAA,CAAA;AACT,CAAA,CAAA;AACAC,YAAK,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACjC,EAAI,GAAA,CAAA,SAAA,CAAU,eAAeA,YAAI,CAAA,CAAA;AACjC,EAAO,OAAA,GAAA,CAAA;AACT,CAAA,CAAA;AACAC,gBAAS,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACrC,EAAI,GAAA,CAAA,SAAA,CAAU,aAAaA,gBAAQ,CAAA,CAAA;AACnC,EAAO,OAAA,GAAA,CAAA;AACT,CAAA,CAAA;AACAC,YAAK,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACjC,EAAI,GAAA,CAAA,SAAA,CAAU,eAAeA,YAAI,CAAA,CAAA;AACjC,EAAO,OAAA,GAAA,CAAA;AACT,CAAA;;;;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../src/layout/index.ts"],"sourcesContent":["import type { App } from \"vue\";\nimport List from \"./List.vue\";\nimport Main from \"./Main.vue\";\nimport FuckMain from \"./FuckMain.vue\";\nimport Show from \"./Show.vue\";\n\nList.install = function (app: App) {\n app.component(\"DListLayout\", List);\n return app;\n};\nMain.install = function (app: App) {\n app.component(\"DMainLayout\", Main);\n return app;\n};\nFuckMain.install = function (app: App) {\n app.component(\"DFuckMain\", FuckMain);\n return app;\n};\nShow.install = function (app: App) {\n app.component(\"DShowLayout\", Show);\n return app;\n};\n\nexport { List, Main, FuckMain, Show };\n"],"names":["List","Main","FuckMain","Show"],"mappings":";;;;;;;AAMAA,YAAK,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACjC,EAAI,GAAA,CAAA,SAAA,CAAU,eAAeA,YAAI,CAAA,CAAA;AACjC,EAAO,OAAA,GAAA,CAAA;AACT,CAAA,CAAA;AACAC,YAAK,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACjC,EAAI,GAAA,CAAA,SAAA,CAAU,eAAeA,YAAI,CAAA,CAAA;AACjC,EAAO,OAAA,GAAA,CAAA;AACT,CAAA,CAAA;AACAC,gBAAS,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACrC,EAAI,GAAA,CAAA,SAAA,CAAU,aAAaA,gBAAQ,CAAA,CAAA;AACnC,EAAO,OAAA,GAAA,CAAA;AACT,CAAA,CAAA;AACAC,YAAK,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACjC,EAAI,GAAA,CAAA,SAAA,CAAU,eAAeA,YAAI,CAAA,CAAA;AACjC,EAAO,OAAA,GAAA,CAAA;AACT,CAAA;;;;;;;"}
@@ -17,15 +17,15 @@ var Modal = /* @__PURE__ */ vue.defineComponent({
17
17
  },
18
18
  visible: {
19
19
  type: Boolean,
20
- default: () => false
20
+ default: false
21
21
  },
22
22
  width: {
23
23
  type: Number,
24
- default: () => 800
24
+ default: 800
25
25
  },
26
26
  destroyOnClose: {
27
27
  type: Boolean,
28
- default: () => true
28
+ default: true
29
29
  }
30
30
  },
31
31
  emits: ["update:visible"],
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.cjs","sources":["../../../src/modal/Modal.tsx"],"sourcesContent":["import { defineComponent, watchEffect, ref } from \"vue\";\nimport { useWindowSize, useResizeObserver } from \"@vueuse/core\";\n\nimport { Modal } from \"ant-design-vue\";\nimport { prefixName } from \"../theme\";\n\n//class名字\nconst baseClassName = `${prefixName}-modal`;\nexport default defineComponent({\n name: \"DModal\",\n props: {\n title: {\n type: String,\n default: \"\"\n },\n visible: {\n type: Boolean,\n default: () => false\n },\n width: {\n type: Number,\n default: () => 800\n },\n destroyOnClose: {\n type: Boolean,\n default: () => true\n }\n },\n emits: [\"update:visible\"],\n setup(props, { slots, emit }) {\n const modalVisible = ref(true);\n const maxHeight = ref(0);\n watchEffect(() => {\n modalVisible.value = props.visible;\n // modal显示的时候 会自动添加宽度 禁止掉\n document.body.style.width = \"\";\n });\n\n const contentStyle = ref<any>(undefined);\n useResizeObserver(document.body, () => {\n const { height } = useWindowSize();\n maxHeight.value = height.value < 200 ? height.value : height.value - 200;\n contentStyle.value = {\n \"max-height\": maxHeight.value + \"px\"\n };\n });\n\n const renderFooter = () => {\n return slots.footer ? slots.footer && slots?.footer() : null;\n };\n\n const onCancel = () => {\n emit(\"update:visible\", modalVisible.value);\n };\n\n return () => (\n <>\n <Modal\n v-model:visible={modalVisible.value}\n title={props.title}\n centered\n mask-closable={false}\n wrapClassName={baseClassName}\n width={props.width}\n destroyOnClose={props.destroyOnClose}\n footer={renderFooter()}\n onCancel={onCancel}\n >\n {{\n default: () => (\n <div\n class={[`${baseClassName}-content`]}\n style={contentStyle.value}\n >\n {slots.default && slots.default(maxHeight.value)}\n </div>\n )\n }}\n </Modal>\n </>\n );\n }\n});\n"],"names":["baseClassName","prefixName","defineComponent","name","props","title","type","String","default","visible","Boolean","width","Number","destroyOnClose","emits","setup","slots","emit","modalVisible","ref","maxHeight","watchEffect","value","document","body","style","contentStyle","undefined","useResizeObserver","height","useWindowSize","renderFooter","footer","onCancel","_createVNode","_Fragment","Modal","$event"],"mappings":"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"}
1
+ {"version":3,"file":"Modal.cjs","sources":["../../../src/modal/Modal.tsx"],"sourcesContent":["import { defineComponent, watchEffect, ref } from \"vue\";\nimport { useWindowSize, useResizeObserver } from \"@vueuse/core\";\n\nimport { Modal } from \"ant-design-vue\";\nimport { prefixName } from \"../theme\";\n\n//class名字\nconst baseClassName = `${prefixName}-modal`;\nexport default defineComponent({\n name: \"DModal\",\n props: {\n title: {\n type: String,\n default: \"\"\n },\n visible: {\n type: Boolean,\n default: false\n },\n width: {\n type: Number,\n default: 800\n },\n destroyOnClose: {\n type: Boolean,\n default: true\n }\n },\n emits: [\"update:visible\"],\n setup(props, { slots, emit }) {\n const modalVisible = ref(true);\n const maxHeight = ref(0);\n watchEffect(() => {\n modalVisible.value = props.visible;\n // modal显示的时候 会自动添加宽度 禁止掉\n document.body.style.width = \"\";\n });\n\n const contentStyle = ref<any>(undefined);\n useResizeObserver(document.body, () => {\n const { height } = useWindowSize();\n maxHeight.value = height.value < 200 ? height.value : height.value - 200;\n contentStyle.value = {\n \"max-height\": maxHeight.value + \"px\"\n };\n });\n\n const renderFooter = () => {\n return slots.footer ? slots.footer && slots?.footer() : null;\n };\n\n const onCancel = () => {\n emit(\"update:visible\", modalVisible.value);\n };\n\n return () => (\n <>\n <Modal\n v-model:visible={modalVisible.value}\n title={props.title}\n centered\n mask-closable={false}\n wrapClassName={baseClassName}\n width={props.width}\n destroyOnClose={props.destroyOnClose}\n footer={renderFooter()}\n onCancel={onCancel}\n >\n {{\n default: () => (\n <div\n class={[`${baseClassName}-content`]}\n style={contentStyle.value}\n >\n {slots.default && slots.default(maxHeight.value)}\n </div>\n )\n }}\n </Modal>\n </>\n );\n }\n});\n"],"names":["baseClassName","prefixName","defineComponent","name","props","title","type","String","default","visible","Boolean","width","Number","destroyOnClose","emits","setup","slots","emit","modalVisible","ref","maxHeight","watchEffect","value","document","body","style","contentStyle","undefined","useResizeObserver","height","useWindowSize","renderFooter","footer","onCancel","_createVNode","_Fragment","Modal","$event"],"mappings":"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"}
@@ -5,15 +5,15 @@ declare const _default: import("vue").DefineComponent<{
5
5
  };
6
6
  visible: {
7
7
  type: BooleanConstructor;
8
- default: () => boolean;
8
+ default: boolean;
9
9
  };
10
10
  width: {
11
11
  type: NumberConstructor;
12
- default: () => number;
12
+ default: number;
13
13
  };
14
14
  destroyOnClose: {
15
15
  type: BooleanConstructor;
16
- default: () => boolean;
16
+ default: boolean;
17
17
  };
18
18
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:visible"[], "update:visible", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
19
19
  title: {
@@ -22,15 +22,15 @@ declare const _default: import("vue").DefineComponent<{
22
22
  };
23
23
  visible: {
24
24
  type: BooleanConstructor;
25
- default: () => boolean;
25
+ default: boolean;
26
26
  };
27
27
  width: {
28
28
  type: NumberConstructor;
29
- default: () => number;
29
+ default: number;
30
30
  };
31
31
  destroyOnClose: {
32
32
  type: BooleanConstructor;
33
- default: () => boolean;
33
+ default: boolean;
34
34
  };
35
35
  }>> & {
36
36
  "onUpdate:visible"?: ((...args: any[]) => any) | undefined;
@@ -83,17 +83,19 @@ const DXTable = /* @__PURE__ */ vue.defineComponent({
83
83
  emit,
84
84
  slots
85
85
  }) {
86
+ var _a, _b, _c;
86
87
  const selectedRowKeys = vue.ref(props.keys || []);
87
88
  const dataSource = vue.computed(() => props.data);
88
89
  const columns = vue.computed(() => {
89
- var _a, _b;
90
- return (_b = (_a = props.config) == null ? void 0 : _a.columns) != null ? _b : [];
90
+ var _a2, _b2;
91
+ return (_b2 = (_a2 = props.config) == null ? void 0 : _a2.columns) != null ? _b2 : [];
91
92
  });
92
93
  const paginationState = vue.computed(() => {
93
- var _a, _b;
94
- return (_b = (_a = props.config) == null ? void 0 : _a.pagination) != null ? _b : {};
94
+ var _a2, _b2;
95
+ return (_b2 = (_a2 = props.config) == null ? void 0 : _a2.pagination) != null ? _b2 : {};
95
96
  });
96
97
  const expandedKeys = vue.ref(props.expandedRowKeys);
98
+ paginationConfig.pageSizeOptions = (_c = (_b = (_a = props.config) == null ? void 0 : _a.pageOptions) == null ? void 0 : _b.sizeOptions) != null ? _c : paginationConfig.pageSizeOptions;
97
99
  vue.watchEffect(() => {
98
100
  const {
99
101
  expandedRowKeys
@@ -108,26 +110,26 @@ const DXTable = /* @__PURE__ */ vue.defineComponent({
108
110
  onRowClassName
109
111
  } = useTable();
110
112
  function useTable() {
111
- var _a;
113
+ var _a2;
112
114
  const {
113
115
  rowClassName,
114
116
  keepSelected,
115
117
  onPageChange: onChange
116
118
  } = props.config;
117
- const selection = (_a = props.config.selection) != null ? _a : "N";
119
+ const selection = (_a2 = props.config.selection) != null ? _a2 : "N";
118
120
  const tableRootRef2 = vue.ref();
119
121
  const tableRef2 = vue.ref(null);
120
122
  const tableHeight2 = vue.ref();
121
123
  const antTableBodyRef = vue.ref(null);
122
124
  const playHeight = (height) => {
123
- var _a2, _b, _c;
125
+ var _a3, _b2, _c2;
124
126
  try {
125
- const tableEl = (_a2 = tableRef2 == null ? void 0 : tableRef2.value) == null ? void 0 : _a2.$el;
127
+ const tableEl = (_a3 = tableRef2 == null ? void 0 : tableRef2.value) == null ? void 0 : _a3.$el;
126
128
  const headerHeight = html.useEleHeight(tableEl.getElementsByClassName("ant-table-header")[0]);
127
129
  let paginationHeight = 0;
128
130
  if (props.config.pagination) {
129
- const paginationEl = (_b = tableRootRef2.value) == null ? void 0 : _b.getElementsByClassName(basePageClassName)[0];
130
- paginationHeight = (_c = html.useEleHeight(paginationEl)) != null ? _c : 0;
131
+ const paginationEl = (_b2 = tableRootRef2.value) == null ? void 0 : _b2.getElementsByClassName(basePageClassName)[0];
132
+ paginationHeight = (_c2 = html.useEleHeight(paginationEl)) != null ? _c2 : 0;
131
133
  }
132
134
  tableHeight2.value = height - (headerHeight + paginationHeight);
133
135
  tableEl.getElementsByClassName("ant-table-body")[0].style.height = tableHeight2.value + "px";
@@ -169,14 +171,14 @@ const DXTable = /* @__PURE__ */ vue.defineComponent({
169
171
  }
170
172
  const rowSelection = useRowSelection();
171
173
  function useRowSelection() {
172
- var _a;
174
+ var _a2;
173
175
  const {
174
176
  rowKey,
175
177
  config: {
176
178
  getCheckboxProps
177
179
  }
178
180
  } = props;
179
- let localSelection = (_a = props.config.selection) != null ? _a : "N";
181
+ let localSelection = (_a2 = props.config.selection) != null ? _a2 : "N";
180
182
  const onSelect = (record, selected) => {
181
183
  if (localSelection === "S") {
182
184
  selectedRowKeys.value = [];
@@ -292,7 +294,7 @@ const DXTable = /* @__PURE__ */ vue.defineComponent({
292
294
  return vue.createVNode(vue.Fragment, null, [slots.summary && slots.summary()]);
293
295
  };
294
296
  return () => {
295
- var _a, _b;
297
+ var _a2, _b2;
296
298
  return vue.createVNode("div", {
297
299
  "ref": tableRootRef,
298
300
  "style": {
@@ -305,7 +307,7 @@ const DXTable = /* @__PURE__ */ vue.defineComponent({
305
307
  "columns": columns.value,
306
308
  "dataSource": dataSource.value,
307
309
  "loading": props.loading,
308
- "size": (_b = (_a = props.config) == null ? void 0 : _a.size) != null ? _b : "small",
310
+ "size": (_b2 = (_a2 = props.config) == null ? void 0 : _a2.size) != null ? _b2 : "small",
309
311
  "scroll": {
310
312
  scrollToFirstRowOnChange: true,
311
313
  x: "100%",
@@ -1 +1 @@
1
- {"version":3,"file":"Table.cjs","sources":["../../../src/table/Table.tsx"],"sourcesContent":["import {\n computed,\n defineComponent,\n nextTick,\n PropType,\n ref,\n watch,\n watchEffect\n} from \"vue\";\nimport { Pagination, Space, Table } from \"ant-design-vue\";\nimport { useEleHeight } from \"../_utils/html\";\nimport { prefixName } from \"../theme\";\n\nimport type { TableProps, Key } from \"./interface/table\";\n/**\n * 表格组件 基于TSX封装ATable\n */\nconst tableProps = () => {\n return {\n data: {\n type: Object as PropType<TableProps[\"data\"]>,\n required: true\n },\n height: {\n type: Number as PropType<TableProps[\"height\"]>,\n default: 300\n },\n keys: Array as PropType<TableProps[\"keys\"]>,\n rowKey: {\n type: String as PropType<TableProps[\"rowKey\"]>,\n default: \"id\"\n },\n loading: {\n type: Boolean as PropType<TableProps[\"loading\"]>,\n default: false\n },\n pagination: {\n type: Object as PropType<TableProps[\"pagination\"]>,\n default: () => ({})\n },\n config: {\n type: Object as PropType<TableProps[\"config\"]>,\n default: () => ({})\n },\n expandedRowKeys: {\n type: Object as PropType<TableProps[\"expandedRowKeys\"]>,\n default: () => []\n },\n defaultExpandAllRows: Boolean as PropType<\n TableProps[\"defaultExpandAllRows\"]\n >,\n default: () => true\n };\n};\n\n// 使用有问题\n// const tableEmits = defineEmits<{\n// \"update:keys\": (keys: []) => void;\n// }>();\n// interface MyEvents {\n// [key: string]: (...args: any[]) => void;\n// \"update:keys\": (keys: []) => void;\n// }\n\n//分页默认配置\nconst paginationConfig = {\n defaultPageSize: 20,\n hideOnSinglePage: false,\n pageSizeOptions: [\"10\", \"20\", \"30\", \"40\"],\n responsive: true,\n showQuickJumper: true,\n showLessItems: true,\n showTotal: (total: number) => {\n return `总共 ${total} 条`;\n }\n};\n\n//分页class名称\nconst basePageClassName = `${prefixName}-pagination`;\n\n/**\n * 表格组件定义\n */\nconst DXTable = defineComponent({\n name: \"DTable\",\n props: tableProps(),\n // emits: { \"update:keys\": (keys: []) => void }\n // TODO 需要做调整\n emits: [\"update:keys\"],\n setup: function (props, { emit, slots }) {\n // 保存选中的唯一id\n const selectedRowKeys = ref<any>(props.keys || []);\n // 数据源\n const dataSource = computed(() => props.data);\n // 表格列\n const columns = computed(() => props.config?.columns ?? []);\n const paginationState = computed(\n () => props.config?.pagination ?? ({} as any)\n );\n // 展开行\n const expandedKeys = ref<any>(props.expandedRowKeys);\n watchEffect(() => {\n const { expandedRowKeys } = props;\n expandedKeys.value = expandedRowKeys;\n });\n\n // 初始化表格\n const {\n tableRef,\n tableRootRef,\n tableHeight,\n onPageChange,\n onRowClassName\n } = useTable();\n\n function useTable() {\n const {\n rowClassName,\n keepSelected,\n onPageChange: onChange\n } = props.config;\n\n const selection = props.config.selection ?? \"N\";\n\n // 表格根div\n const tableRootRef = ref<HTMLElement>();\n // 表格组件对象\n const tableRef = ref<any>(null);\n // 表格计算出来的高度\n const tableHeight = ref<number>();\n // 表格body对象\n const antTableBodyRef = ref<any>(null);\n // 计算高度\n const playHeight = (height: number) => {\n try {\n const tableEl = tableRef?.value?.$el;\n\n const headerHeight = useEleHeight(\n tableEl.getElementsByClassName(\"ant-table-header\")[0]\n );\n // 获取分页组件高度\n let paginationHeight = 0;\n if (props.config.pagination) {\n const paginationEl =\n tableRootRef.value?.getElementsByClassName(basePageClassName)[0];\n paginationHeight = useEleHeight(paginationEl as any) ?? 0;\n }\n tableHeight.value = height - (headerHeight + paginationHeight);\n // 设置body高度\n tableEl.getElementsByClassName(\"ant-table-body\")[0].style.height =\n tableHeight.value + \"px\";\n // 表格body对象 用于切换页码后滚动条置顶\n antTableBodyRef.value =\n tableEl.getElementsByClassName(\"ant-table-body\")[0];\n } catch (e) {\n console.warn(e);\n }\n };\n //监听传入的height的变化 默认组件创建的时候会执行一次\n watchEffect(() => {\n if (props.height !== 0) {\n nextTick(() => {\n // 必须在组件挂载成功后 执行计算高度 否则无法正确获取元素的高度\n setTimeout(() => {\n // 如果表格头 有多行的清空下,获取到的头部高度不对,需要延迟执行获取高度方法\n playHeight(props.height);\n }, 10);\n });\n }\n });\n // 监听分页组件\n const onPageChange = (page: number, size: number) => {\n onChange ? onChange({ page, size }) : null;\n // 切换分页的时候,表体滚动到顶部\n antTableBodyRef.value.scrollTop = 0;\n // 如果当前为单选或未开启分页保留数据选中的数据都会被清除\n // 清空历史选中数据\n if (selection === \"S\" || !keepSelected) {\n selectedRowKeys.value = [];\n emit(\"update:keys\", selectedRowKeys.value);\n }\n };\n //自定义样式\n const onRowClassName = (record: any, index: number) => {\n return rowClassName ? rowClassName(record, index) : undefined;\n };\n return {\n tableRef,\n tableRootRef,\n tableHeight,\n onPageChange,\n onRowClassName\n };\n }\n\n //表格选中配置\n const rowSelection = useRowSelection();\n\n function useRowSelection() {\n const {\n rowKey,\n config: { getCheckboxProps }\n } = props;\n\n let localSelection = props.config.selection ?? \"N\";\n //if (selection === \"N\") return undefined;\n\n const onSelect = (record: any, selected: any) => {\n if (localSelection === \"S\") {\n selectedRowKeys.value = [];\n selectedRowKeys.value = selected ? [record[rowKey]] : [];\n } else {\n selectedRowKeys.value = selected\n ? selectedRowKeys.value.concat(record[rowKey])\n : selectedRowKeys.value.filter(\n (key: Key) => key !== record[rowKey]\n );\n }\n emit(\"update:keys\", selectedRowKeys.value);\n };\n\n const onSelectAll = (\n selected: any,\n selectedRows: any,\n changeRows: any\n ) => {\n const _ids = changeRows.map((record: any) => record[rowKey]);\n selectedRowKeys.value = selected\n ? selectedRowKeys.value.concat(_ids)\n : selectedRowKeys.value.filter((key: Key) => !_ids.includes(key));\n\n emit(\"update:keys\", selectedRowKeys.value);\n };\n\n // 监听父组件手动改变keys 重新赋值给 表格选中变量selectedRowKeys\n // 否则父组件 改变keys后当前selectedRowKeys还是原来的值\n watch(\n () => props.keys,\n (val) => {\n selectedRowKeys.value = val;\n }\n );\n\n const rowSelection = ref<any>(undefined);\n\n watchEffect(() => {\n const { selection } = props.config;\n localSelection = selection as any;\n if (localSelection !== \"N\") {\n rowSelection.value = {\n selectedRowKeys,\n onSelect,\n onSelectAll,\n fixed: true,\n columnTitle: localSelection === \"S\" ? \"选择\" : null,\n columnWidth: localSelection === \"S\" ? 60 : 40,\n getCheckboxProps: getCheckboxProps\n };\n } else {\n rowSelection.value = undefined;\n }\n });\n\n // return {\n // selectedRowKeys,\n // onSelect,\n // onSelectAll,\n // fixed: true,\n // columnTitle: localSelection === \"S\" ? \"选择\" : null,\n // columnWidth: localSelection === \"S\" ? 60 : 40,\n // getCheckboxProps: getCheckboxProps\n // };\n return rowSelection;\n }\n\n const customRow = useCustomRow();\n\n //表格行配置\n function useCustomRow() {\n return (record: any) => {\n // 用于存储 在某个事件内双击两次 则取消单击事件业务\n let clickTimeout: any = undefined;\n const {\n rowKey,\n config: { click, dbClick, selection, getCheckboxProps }\n } = props as any;\n\n // 当前点击行的唯一ID,通过rowKey从record中取值\n const id = record[rowKey];\n\n /**\n * 处理单击事件业务\n * @param record 当前点击行数据\n */\n const onClick = () => {\n // 获取getCheckboxProps方法,如果不等于undefined,则执行方法获取disabled的值\n // 否则checkEnable为false\n const checkEnable =\n getCheckboxProps === undefined\n ? false\n : getCheckboxProps(record).disabled;\n\n if (selection === \"N\" || checkEnable) {\n // 1. 未开启复选框 则不处理数据选中操作\n // 2. 如果当前点击的行 包含在禁用的数据项目里面 则不进行选中操作\n // 3. checkEnable 用来判断复选框属性的值,如果当前的数据满足getCheckboxProps这个\n // 方法返回的disabled为true就不执行\n // 复选框选中的操作\n return;\n }\n const haveState = selectedRowKeys.value.some(\n (key: Key) => key === id\n );\n if (haveState) {\n //如果 当前点击行的ID 已存在 那么直接过滤掉当前的id\n selectedRowKeys.value = selectedRowKeys.value.filter(\n (key: Key) => key !== id\n );\n } else {\n if (selection === \"S\") {\n //单选的时候 清空选中的数据 再赋值新的ID\n selectedRowKeys.value = [];\n selectedRowKeys.value.push(id);\n } else {\n //多选直接追加ID\n selectedRowKeys.value.push(id);\n }\n }\n emit(\"update:keys\", selectedRowKeys.value);\n };\n\n return {\n onClick: () => {\n clearTimeout(clickTimeout);\n clickTimeout = setTimeout(() => {\n // 处理单击事件业务\n onClick();\n // 回传数据 自定义单击后的业务\n click ? click(record) : undefined;\n }, 200);\n }, // 点击行\n onDblclick: () => {\n clearTimeout(clickTimeout);\n // 回传数据 自定义单击后的业务\n dbClick ? dbClick(record) : undefined;\n }\n // onContextmenu: (event) => {\n // //TODO\n // },\n // onMouseenter: (event) => {\n // //TODO\n // }, // 鼠标移入行\n // onMouseleave: (event) => {\n // //TODO\n // }\n };\n };\n }\n\n const actionStop = (event: MouseEvent) => {\n event.stopPropagation();\n };\n\n const expandRowByClick = computed(() => {\n const { selection } = props.config;\n return selection === \"N\";\n });\n const tableSlots: any = {};\n if (slots.expandedRowRender) {\n tableSlots.expandedRowRender = (record: any) => {\n return (\n <>{slots.expandedRowRender && slots.expandedRowRender(record)}</>\n );\n };\n }\n const summary = () => {\n return <>{slots.summary && slots.summary()}</>;\n };\n\n return () => (\n <div ref={tableRootRef} style={{ height: \"100%\" }}>\n <Table\n ref={tableRef}\n row-key={props.rowKey}\n bordered={props.config.bordered}\n columns={columns.value}\n dataSource={dataSource.value}\n loading={props.loading}\n size={props.config?.size ?? \"small\"}\n scroll={{\n scrollToFirstRowOnChange: true,\n x: \"100%\",\n y: tableHeight.value + \"px\"\n }}\n v-model:expandedRowKeys={expandedKeys.value}\n expandRowByClick={expandRowByClick.value}\n defaultExpandAllRows={props.defaultExpandAllRows}\n pagination={false}\n customRow={customRow}\n rowSelection={rowSelection.value}\n rowClassName={onRowClassName}\n >\n {{\n bodyCell: ({ column, record }: any) => {\n if (column.slot === \"action\") {\n return (\n <div onClick={actionStop} onDblclick={actionStop}>\n <Space>{slots.action && slots.action(record)}</Space>\n </div>\n );\n }\n },\n ...tableSlots,\n // 总结栏插槽\n summary: summary\n }}\n </Table>\n <Pagination\n v-show={props.config.pagination}\n class={[basePageClassName]}\n v-model:current={paginationState.value.current}\n v-model:pageSize={paginationState.value.pageSize}\n disabled={props.loading}\n show-size-changer\n size={\"default\"}\n hide-on-single-page={paginationConfig.hideOnSinglePage}\n show-quick-jumper={paginationConfig.showQuickJumper}\n default-page-size={paginationConfig.defaultPageSize}\n page-size-options={paginationConfig.pageSizeOptions}\n show-total={paginationConfig.showTotal}\n total={paginationState.value.total}\n onChange={onPageChange}\n />\n </div>\n );\n }\n});\n\nexport default DXTable;\n"],"names":["tableProps","data","type","Object","required","height","Number","default","keys","Array","rowKey","String","loading","Boolean","pagination","config","expandedRowKeys","defaultExpandAllRows","paginationConfig","defaultPageSize","hideOnSinglePage","pageSizeOptions","responsive","showQuickJumper","showLessItems","showTotal","total","basePageClassName","prefixName","DXTable","defineComponent","name","props","emits","setup","emit","slots","selectedRowKeys","ref","dataSource","computed","columns","paginationState","expandedKeys","watchEffect","value","tableRef","tableRootRef","tableHeight","onPageChange","onRowClassName","useTable","rowClassName","keepSelected","onChange","selection","antTableBodyRef","playHeight","tableEl","$el","headerHeight","useEleHeight","getElementsByClassName","paginationHeight","paginationEl","style","e","console","warn","nextTick","setTimeout","page","size","scrollTop","record","index","undefined","rowSelection","useRowSelection","getCheckboxProps","localSelection","onSelect","selected","concat","filter","key","onSelectAll","selectedRows","changeRows","_ids","map","includes","watch","val","fixed","columnTitle","columnWidth","customRow","useCustomRow","clickTimeout","click","dbClick","id","onClick","checkEnable","disabled","haveState","some","push","clearTimeout","onDblclick","actionStop","event","stopPropagation","expandRowByClick","tableSlots","expandedRowRender","_createVNode","_Fragment","summary","Table","bordered","scrollToFirstRowOnChange","x","y","$event","bodyCell","column","slot","Space","action","_withDirectives","Pagination","current","pageSize","_vShow"],"mappings":"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"}
1
+ {"version":3,"file":"Table.cjs","sources":["../../../src/table/Table.tsx"],"sourcesContent":["import {\n computed,\n defineComponent,\n nextTick,\n PropType,\n ref,\n watch,\n watchEffect\n} from \"vue\";\nimport { Pagination, Space, Table } from \"ant-design-vue\";\nimport { useEleHeight } from \"../_utils/html\";\nimport { prefixName } from \"../theme\";\n\nimport type { TableProps, Key } from \"./interface/table\";\n/**\n * 表格组件 基于TSX封装ATable\n */\nconst tableProps = () => {\n return {\n data: {\n type: Object as PropType<TableProps[\"data\"]>,\n required: true\n },\n height: {\n type: Number as PropType<TableProps[\"height\"]>,\n default: 300\n },\n keys: Array as PropType<TableProps[\"keys\"]>,\n rowKey: {\n type: String as PropType<TableProps[\"rowKey\"]>,\n default: \"id\"\n },\n loading: {\n type: Boolean as PropType<TableProps[\"loading\"]>,\n default: false\n },\n pagination: {\n type: Object as PropType<TableProps[\"pagination\"]>,\n default: () => ({})\n },\n config: {\n type: Object as PropType<TableProps[\"config\"]>,\n default: () => ({})\n },\n expandedRowKeys: {\n type: Object as PropType<TableProps[\"expandedRowKeys\"]>,\n default: () => []\n },\n defaultExpandAllRows: Boolean as PropType<\n TableProps[\"defaultExpandAllRows\"]\n >,\n default: () => true\n };\n};\n\n// 使用有问题\n// const tableEmits = defineEmits<{\n// \"update:keys\": (keys: []) => void;\n// }>();\n// interface MyEvents {\n// [key: string]: (...args: any[]) => void;\n// \"update:keys\": (keys: []) => void;\n// }\n\n//分页默认配置\nconst paginationConfig = {\n defaultPageSize: 20,\n hideOnSinglePage: false,\n pageSizeOptions: [\"10\", \"20\", \"30\", \"40\"],\n responsive: true,\n showQuickJumper: true,\n showLessItems: true,\n showTotal: (total: number) => {\n return `总共 ${total} 条`;\n }\n};\n\n//分页class名称\nconst basePageClassName = `${prefixName}-pagination`;\n\n/**\n * 表格组件定义\n */\nconst DXTable = defineComponent({\n name: \"DTable\",\n props: tableProps(),\n // emits: { \"update:keys\": (keys: []) => void }\n // TODO 需要做调整\n emits: [\"update:keys\"],\n setup: function (props, { emit, slots }) {\n // 保存选中的唯一id\n const selectedRowKeys = ref<any>(props.keys || []);\n // 数据源\n const dataSource = computed(() => props.data);\n // 表格列\n const columns = computed(() => props.config?.columns ?? []);\n const paginationState = computed(\n () => props.config?.pagination ?? ({} as any)\n );\n // 展开行\n // eslint-disable-next-line vue/no-setup-props-destructure\n const expandedKeys = ref<any>(props.expandedRowKeys);\n // 分页条数配置\n paginationConfig.pageSizeOptions =\n props.config?.pageOptions?.sizeOptions ??\n paginationConfig.pageSizeOptions;\n\n watchEffect(() => {\n const { expandedRowKeys } = props;\n expandedKeys.value = expandedRowKeys;\n });\n\n // 初始化表格\n const {\n tableRef,\n tableRootRef,\n tableHeight,\n onPageChange,\n onRowClassName\n } = useTable();\n\n function useTable() {\n const {\n rowClassName,\n keepSelected,\n onPageChange: onChange\n } = props.config;\n\n const selection = props.config.selection ?? \"N\";\n\n // 表格根div\n const tableRootRef = ref<HTMLElement>();\n // 表格组件对象\n const tableRef = ref<any>(null);\n // 表格计算出来的高度\n const tableHeight = ref<number>();\n // 表格body对象\n const antTableBodyRef = ref<any>(null);\n // 计算高度\n const playHeight = (height: number) => {\n try {\n const tableEl = tableRef?.value?.$el;\n\n const headerHeight = useEleHeight(\n tableEl.getElementsByClassName(\"ant-table-header\")[0]\n );\n // 获取分页组件高度\n let paginationHeight = 0;\n if (props.config.pagination) {\n const paginationEl =\n tableRootRef.value?.getElementsByClassName(basePageClassName)[0];\n paginationHeight = useEleHeight(paginationEl as any) ?? 0;\n }\n tableHeight.value = height - (headerHeight + paginationHeight);\n // 设置body高度\n tableEl.getElementsByClassName(\"ant-table-body\")[0].style.height =\n tableHeight.value + \"px\";\n // 表格body对象 用于切换页码后滚动条置顶\n antTableBodyRef.value =\n tableEl.getElementsByClassName(\"ant-table-body\")[0];\n } catch (e) {\n console.warn(e);\n }\n };\n //监听传入的height的变化 默认组件创建的时候会执行一次\n watchEffect(() => {\n if (props.height !== 0) {\n nextTick(() => {\n // 必须在组件挂载成功后 执行计算高度 否则无法正确获取元素的高度\n setTimeout(() => {\n // 如果表格头 有多行的清空下,获取到的头部高度不对,需要延迟执行获取高度方法\n playHeight(props.height);\n }, 10);\n });\n }\n });\n // 监听分页组件\n const onPageChange = (page: number, size: number) => {\n onChange ? onChange({ page, size }) : null;\n // 切换分页的时候,表体滚动到顶部\n antTableBodyRef.value.scrollTop = 0;\n // 如果当前为单选或未开启分页保留数据选中的数据都会被清除\n // 清空历史选中数据\n if (selection === \"S\" || !keepSelected) {\n selectedRowKeys.value = [];\n emit(\"update:keys\", selectedRowKeys.value);\n }\n };\n //自定义样式\n const onRowClassName = (record: any, index: number) => {\n return rowClassName ? rowClassName(record, index) : undefined;\n };\n return {\n tableRef,\n tableRootRef,\n tableHeight,\n onPageChange,\n onRowClassName\n };\n }\n\n //表格选中配置\n const rowSelection = useRowSelection();\n\n function useRowSelection() {\n const {\n rowKey,\n config: { getCheckboxProps }\n } = props;\n\n let localSelection = props.config.selection ?? \"N\";\n //if (selection === \"N\") return undefined;\n\n const onSelect = (record: any, selected: any) => {\n if (localSelection === \"S\") {\n selectedRowKeys.value = [];\n selectedRowKeys.value = selected ? [record[rowKey]] : [];\n } else {\n selectedRowKeys.value = selected\n ? selectedRowKeys.value.concat(record[rowKey])\n : selectedRowKeys.value.filter(\n (key: Key) => key !== record[rowKey]\n );\n }\n emit(\"update:keys\", selectedRowKeys.value);\n };\n\n const onSelectAll = (\n selected: any,\n selectedRows: any,\n changeRows: any\n ) => {\n const _ids = changeRows.map((record: any) => record[rowKey]);\n selectedRowKeys.value = selected\n ? selectedRowKeys.value.concat(_ids)\n : selectedRowKeys.value.filter((key: Key) => !_ids.includes(key));\n\n emit(\"update:keys\", selectedRowKeys.value);\n };\n\n // 监听父组件手动改变keys 重新赋值给 表格选中变量selectedRowKeys\n // 否则父组件 改变keys后当前selectedRowKeys还是原来的值\n watch(\n () => props.keys,\n (val) => {\n selectedRowKeys.value = val;\n }\n );\n\n const rowSelection = ref<any>(undefined);\n\n watchEffect(() => {\n const { selection } = props.config;\n localSelection = selection as any;\n if (localSelection !== \"N\") {\n rowSelection.value = {\n selectedRowKeys,\n onSelect,\n onSelectAll,\n fixed: true,\n columnTitle: localSelection === \"S\" ? \"选择\" : null,\n columnWidth: localSelection === \"S\" ? 60 : 40,\n getCheckboxProps: getCheckboxProps\n };\n } else {\n rowSelection.value = undefined;\n }\n });\n\n // return {\n // selectedRowKeys,\n // onSelect,\n // onSelectAll,\n // fixed: true,\n // columnTitle: localSelection === \"S\" ? \"选择\" : null,\n // columnWidth: localSelection === \"S\" ? 60 : 40,\n // getCheckboxProps: getCheckboxProps\n // };\n return rowSelection;\n }\n\n const customRow = useCustomRow();\n\n //表格行配置\n function useCustomRow() {\n return (record: any) => {\n // 用于存储 在某个事件内双击两次 则取消单击事件业务\n let clickTimeout: any = undefined;\n const {\n rowKey,\n config: { click, dbClick, selection, getCheckboxProps }\n } = props as any;\n\n // 当前点击行的唯一ID,通过rowKey从record中取值\n const id = record[rowKey];\n\n /**\n * 处理单击事件业务\n * @param record 当前点击行数据\n */\n const onClick = () => {\n // 获取getCheckboxProps方法,如果不等于undefined,则执行方法获取disabled的值\n // 否则checkEnable为false\n const checkEnable =\n getCheckboxProps === undefined\n ? false\n : getCheckboxProps(record).disabled;\n\n if (selection === \"N\" || checkEnable) {\n // 1. 未开启复选框 则不处理数据选中操作\n // 2. 如果当前点击的行 包含在禁用的数据项目里面 则不进行选中操作\n // 3. checkEnable 用来判断复选框属性的值,如果当前的数据满足getCheckboxProps这个\n // 方法返回的disabled为true就不执行\n // 复选框选中的操作\n return;\n }\n const haveState = selectedRowKeys.value.some(\n (key: Key) => key === id\n );\n if (haveState) {\n //如果 当前点击行的ID 已存在 那么直接过滤掉当前的id\n selectedRowKeys.value = selectedRowKeys.value.filter(\n (key: Key) => key !== id\n );\n } else {\n if (selection === \"S\") {\n //单选的时候 清空选中的数据 再赋值新的ID\n selectedRowKeys.value = [];\n selectedRowKeys.value.push(id);\n } else {\n //多选直接追加ID\n selectedRowKeys.value.push(id);\n }\n }\n emit(\"update:keys\", selectedRowKeys.value);\n };\n\n return {\n onClick: () => {\n clearTimeout(clickTimeout);\n clickTimeout = setTimeout(() => {\n // 处理单击事件业务\n onClick();\n // 回传数据 自定义单击后的业务\n click ? click(record) : undefined;\n }, 200);\n }, // 点击行\n onDblclick: () => {\n clearTimeout(clickTimeout);\n // 回传数据 自定义单击后的业务\n dbClick ? dbClick(record) : undefined;\n }\n // onContextmenu: (event) => {\n // //TODO\n // },\n // onMouseenter: (event) => {\n // //TODO\n // }, // 鼠标移入行\n // onMouseleave: (event) => {\n // //TODO\n // }\n };\n };\n }\n\n const actionStop = (event: MouseEvent) => {\n event.stopPropagation();\n };\n\n const expandRowByClick = computed(() => {\n const { selection } = props.config;\n return selection === \"N\";\n });\n const tableSlots: any = {};\n if (slots.expandedRowRender) {\n tableSlots.expandedRowRender = (record: any) => {\n return (\n <>{slots.expandedRowRender && slots.expandedRowRender(record)}</>\n );\n };\n }\n const summary = () => {\n return <>{slots.summary && slots.summary()}</>;\n };\n\n return () => (\n <div ref={tableRootRef} style={{ height: \"100%\" }}>\n <Table\n ref={tableRef}\n row-key={props.rowKey}\n bordered={props.config.bordered}\n columns={columns.value}\n dataSource={dataSource.value}\n loading={props.loading}\n size={props.config?.size ?? \"small\"}\n scroll={{\n scrollToFirstRowOnChange: true,\n x: \"100%\",\n y: tableHeight.value + \"px\"\n }}\n v-model:expandedRowKeys={expandedKeys.value}\n expandRowByClick={expandRowByClick.value}\n defaultExpandAllRows={props.defaultExpandAllRows}\n pagination={false}\n customRow={customRow}\n rowSelection={rowSelection.value}\n rowClassName={onRowClassName}\n >\n {{\n bodyCell: ({ column, record }: any) => {\n if (column.slot === \"action\") {\n return (\n <div onClick={actionStop} onDblclick={actionStop}>\n <Space>{slots.action && slots.action(record)}</Space>\n </div>\n );\n }\n },\n ...tableSlots,\n // 总结栏插槽\n summary: summary\n }}\n </Table>\n <Pagination\n v-show={props.config.pagination}\n class={[basePageClassName]}\n v-model:current={paginationState.value.current}\n v-model:pageSize={paginationState.value.pageSize}\n disabled={props.loading}\n show-size-changer\n size={\"default\"}\n hide-on-single-page={paginationConfig.hideOnSinglePage}\n show-quick-jumper={paginationConfig.showQuickJumper}\n default-page-size={paginationConfig.defaultPageSize}\n page-size-options={paginationConfig.pageSizeOptions}\n show-total={paginationConfig.showTotal}\n total={paginationState.value.total}\n onChange={onPageChange}\n />\n </div>\n );\n }\n});\n\nexport default DXTable;\n"],"names":["tableProps","data","type","Object","required","height","Number","default","keys","Array","rowKey","String","loading","Boolean","pagination","config","expandedRowKeys","defaultExpandAllRows","paginationConfig","defaultPageSize","hideOnSinglePage","pageSizeOptions","responsive","showQuickJumper","showLessItems","showTotal","total","basePageClassName","prefixName","DXTable","defineComponent","name","props","emits","setup","emit","slots","selectedRowKeys","ref","dataSource","computed","columns","paginationState","expandedKeys","pageOptions","sizeOptions","watchEffect","value","tableRef","tableRootRef","tableHeight","onPageChange","onRowClassName","useTable","rowClassName","keepSelected","onChange","selection","antTableBodyRef","playHeight","tableEl","$el","headerHeight","useEleHeight","getElementsByClassName","paginationHeight","paginationEl","style","e","console","warn","nextTick","setTimeout","page","size","scrollTop","record","index","undefined","rowSelection","useRowSelection","getCheckboxProps","localSelection","onSelect","selected","concat","filter","key","onSelectAll","selectedRows","changeRows","_ids","map","includes","watch","val","fixed","columnTitle","columnWidth","customRow","useCustomRow","clickTimeout","click","dbClick","id","onClick","checkEnable","disabled","haveState","some","push","clearTimeout","onDblclick","actionStop","event","stopPropagation","expandRowByClick","tableSlots","expandedRowRender","_createVNode","_Fragment","summary","Table","bordered","scrollToFirstRowOnChange","x","y","$event","bodyCell","column","slot","Space","action","_withDirectives","Pagination","current","pageSize","_vShow"],"mappings":"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"}
@@ -17,6 +17,10 @@ export interface Config {
17
17
  click?: (record: unknown) => void;
18
18
  dbClick?: (record: any) => void;
19
19
  getCheckboxProps?: (record: any) => any;
20
+ pageOptions: {
21
+ sizeOptions: string[];
22
+ defaultSize: string;
23
+ };
20
24
  }
21
25
  export interface Pagination {
22
26
  total: number;
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/layout/index.ts"],"sourcesContent":["import type { App } from \"vue\";\nimport List from \"./List.vue\";\nimport Main from \"./Main.vue\";\nimport FuckMain from \"./FuckMain.vue\";\nimport Show from \"./Show.vue\";\n\n// export const DList = withInstall(List);\n// export const DMain = withInstall(Main);\n// export const DNavTabs = withInstall(NavTabs);\n// export const DShow = withInstall(Show);\n// export const DFuckMain = withInstall(FuckMain);\n\nList.install = function (app: App) {\n app.component(\"DListLayout\", List);\n return app;\n};\nMain.install = function (app: App) {\n app.component(\"DMainLayout\", Main);\n return app;\n};\nFuckMain.install = function (app: App) {\n app.component(\"DFuckMain\", FuckMain);\n return app;\n};\nShow.install = function (app: App) {\n app.component(\"DShowLayout\", Show);\n return app;\n};\n\nexport { List, Main, FuckMain, Show };\n"],"names":[],"mappings":";;;;;AAYA,IAAK,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACjC,EAAI,GAAA,CAAA,SAAA,CAAU,eAAe,IAAI,CAAA,CAAA;AACjC,EAAO,OAAA,GAAA,CAAA;AACT,CAAA,CAAA;AACA,IAAK,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACjC,EAAI,GAAA,CAAA,SAAA,CAAU,eAAe,IAAI,CAAA,CAAA;AACjC,EAAO,OAAA,GAAA,CAAA;AACT,CAAA,CAAA;AACA,QAAS,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACrC,EAAI,GAAA,CAAA,SAAA,CAAU,aAAa,QAAQ,CAAA,CAAA;AACnC,EAAO,OAAA,GAAA,CAAA;AACT,CAAA,CAAA;AACA,IAAK,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACjC,EAAI,GAAA,CAAA,SAAA,CAAU,eAAe,IAAI,CAAA,CAAA;AACjC,EAAO,OAAA,GAAA,CAAA;AACT,CAAA;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/layout/index.ts"],"sourcesContent":["import type { App } from \"vue\";\nimport List from \"./List.vue\";\nimport Main from \"./Main.vue\";\nimport FuckMain from \"./FuckMain.vue\";\nimport Show from \"./Show.vue\";\n\nList.install = function (app: App) {\n app.component(\"DListLayout\", List);\n return app;\n};\nMain.install = function (app: App) {\n app.component(\"DMainLayout\", Main);\n return app;\n};\nFuckMain.install = function (app: App) {\n app.component(\"DFuckMain\", FuckMain);\n return app;\n};\nShow.install = function (app: App) {\n app.component(\"DShowLayout\", Show);\n return app;\n};\n\nexport { List, Main, FuckMain, Show };\n"],"names":[],"mappings":";;;;;AAMA,IAAK,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACjC,EAAI,GAAA,CAAA,SAAA,CAAU,eAAe,IAAI,CAAA,CAAA;AACjC,EAAO,OAAA,GAAA,CAAA;AACT,CAAA,CAAA;AACA,IAAK,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACjC,EAAI,GAAA,CAAA,SAAA,CAAU,eAAe,IAAI,CAAA,CAAA;AACjC,EAAO,OAAA,GAAA,CAAA;AACT,CAAA,CAAA;AACA,QAAS,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACrC,EAAI,GAAA,CAAA,SAAA,CAAU,aAAa,QAAQ,CAAA,CAAA;AACnC,EAAO,OAAA,GAAA,CAAA;AACT,CAAA,CAAA;AACA,IAAK,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACjC,EAAI,GAAA,CAAA,SAAA,CAAU,eAAe,IAAI,CAAA,CAAA;AACjC,EAAO,OAAA,GAAA,CAAA;AACT,CAAA;;;;"}
@@ -5,15 +5,15 @@ declare const _default: import("vue").DefineComponent<{
5
5
  };
6
6
  visible: {
7
7
  type: BooleanConstructor;
8
- default: () => boolean;
8
+ default: boolean;
9
9
  };
10
10
  width: {
11
11
  type: NumberConstructor;
12
- default: () => number;
12
+ default: number;
13
13
  };
14
14
  destroyOnClose: {
15
15
  type: BooleanConstructor;
16
- default: () => boolean;
16
+ default: boolean;
17
17
  };
18
18
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:visible"[], "update:visible", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
19
19
  title: {
@@ -22,15 +22,15 @@ declare const _default: import("vue").DefineComponent<{
22
22
  };
23
23
  visible: {
24
24
  type: BooleanConstructor;
25
- default: () => boolean;
25
+ default: boolean;
26
26
  };
27
27
  width: {
28
28
  type: NumberConstructor;
29
- default: () => number;
29
+ default: number;
30
30
  };
31
31
  destroyOnClose: {
32
32
  type: BooleanConstructor;
33
- default: () => boolean;
33
+ default: boolean;
34
34
  };
35
35
  }>> & {
36
36
  "onUpdate:visible"?: ((...args: any[]) => any) | undefined;
@@ -13,15 +13,15 @@ var Modal = /* @__PURE__ */ defineComponent({
13
13
  },
14
14
  visible: {
15
15
  type: Boolean,
16
- default: () => false
16
+ default: false
17
17
  },
18
18
  width: {
19
19
  type: Number,
20
- default: () => 800
20
+ default: 800
21
21
  },
22
22
  destroyOnClose: {
23
23
  type: Boolean,
24
- default: () => true
24
+ default: true
25
25
  }
26
26
  },
27
27
  emits: ["update:visible"],
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.mjs","sources":["../../../src/modal/Modal.tsx"],"sourcesContent":["import { defineComponent, watchEffect, ref } from \"vue\";\nimport { useWindowSize, useResizeObserver } from \"@vueuse/core\";\n\nimport { Modal } from \"ant-design-vue\";\nimport { prefixName } from \"../theme\";\n\n//class名字\nconst baseClassName = `${prefixName}-modal`;\nexport default defineComponent({\n name: \"DModal\",\n props: {\n title: {\n type: String,\n default: \"\"\n },\n visible: {\n type: Boolean,\n default: () => false\n },\n width: {\n type: Number,\n default: () => 800\n },\n destroyOnClose: {\n type: Boolean,\n default: () => true\n }\n },\n emits: [\"update:visible\"],\n setup(props, { slots, emit }) {\n const modalVisible = ref(true);\n const maxHeight = ref(0);\n watchEffect(() => {\n modalVisible.value = props.visible;\n // modal显示的时候 会自动添加宽度 禁止掉\n document.body.style.width = \"\";\n });\n\n const contentStyle = ref<any>(undefined);\n useResizeObserver(document.body, () => {\n const { height } = useWindowSize();\n maxHeight.value = height.value < 200 ? height.value : height.value - 200;\n contentStyle.value = {\n \"max-height\": maxHeight.value + \"px\"\n };\n });\n\n const renderFooter = () => {\n return slots.footer ? slots.footer && slots?.footer() : null;\n };\n\n const onCancel = () => {\n emit(\"update:visible\", modalVisible.value);\n };\n\n return () => (\n <>\n <Modal\n v-model:visible={modalVisible.value}\n title={props.title}\n centered\n mask-closable={false}\n wrapClassName={baseClassName}\n width={props.width}\n destroyOnClose={props.destroyOnClose}\n footer={renderFooter()}\n onCancel={onCancel}\n >\n {{\n default: () => (\n <div\n class={[`${baseClassName}-content`]}\n style={contentStyle.value}\n >\n {slots.default && slots.default(maxHeight.value)}\n </div>\n )\n }}\n </Modal>\n </>\n );\n }\n});\n"],"names":["baseClassName","prefixName","name","props","title","type","String","default","visible","Boolean","width","Number","destroyOnClose","emits","setup","slots","emit","modalVisible","ref","maxHeight","watchEffect","value","document","body","style","contentStyle","undefined","useResizeObserver","height","useWindowSize","renderFooter","footer","onCancel","_createVNode","_Fragment","Modal","$event"],"mappings":"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"}
1
+ {"version":3,"file":"Modal.mjs","sources":["../../../src/modal/Modal.tsx"],"sourcesContent":["import { defineComponent, watchEffect, ref } from \"vue\";\nimport { useWindowSize, useResizeObserver } from \"@vueuse/core\";\n\nimport { Modal } from \"ant-design-vue\";\nimport { prefixName } from \"../theme\";\n\n//class名字\nconst baseClassName = `${prefixName}-modal`;\nexport default defineComponent({\n name: \"DModal\",\n props: {\n title: {\n type: String,\n default: \"\"\n },\n visible: {\n type: Boolean,\n default: false\n },\n width: {\n type: Number,\n default: 800\n },\n destroyOnClose: {\n type: Boolean,\n default: true\n }\n },\n emits: [\"update:visible\"],\n setup(props, { slots, emit }) {\n const modalVisible = ref(true);\n const maxHeight = ref(0);\n watchEffect(() => {\n modalVisible.value = props.visible;\n // modal显示的时候 会自动添加宽度 禁止掉\n document.body.style.width = \"\";\n });\n\n const contentStyle = ref<any>(undefined);\n useResizeObserver(document.body, () => {\n const { height } = useWindowSize();\n maxHeight.value = height.value < 200 ? height.value : height.value - 200;\n contentStyle.value = {\n \"max-height\": maxHeight.value + \"px\"\n };\n });\n\n const renderFooter = () => {\n return slots.footer ? slots.footer && slots?.footer() : null;\n };\n\n const onCancel = () => {\n emit(\"update:visible\", modalVisible.value);\n };\n\n return () => (\n <>\n <Modal\n v-model:visible={modalVisible.value}\n title={props.title}\n centered\n mask-closable={false}\n wrapClassName={baseClassName}\n width={props.width}\n destroyOnClose={props.destroyOnClose}\n footer={renderFooter()}\n onCancel={onCancel}\n >\n {{\n default: () => (\n <div\n class={[`${baseClassName}-content`]}\n style={contentStyle.value}\n >\n {slots.default && slots.default(maxHeight.value)}\n </div>\n )\n }}\n </Modal>\n </>\n );\n }\n});\n"],"names":["baseClassName","prefixName","name","props","title","type","String","default","visible","Boolean","width","Number","destroyOnClose","emits","setup","slots","emit","modalVisible","ref","maxHeight","watchEffect","value","document","body","style","contentStyle","undefined","useResizeObserver","height","useWindowSize","renderFooter","footer","onCancel","_createVNode","_Fragment","Modal","$event"],"mappings":"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"}
@@ -79,17 +79,19 @@ const DXTable = /* @__PURE__ */ defineComponent({
79
79
  emit,
80
80
  slots
81
81
  }) {
82
+ var _a, _b, _c;
82
83
  const selectedRowKeys = ref(props.keys || []);
83
84
  const dataSource = computed(() => props.data);
84
85
  const columns = computed(() => {
85
- var _a, _b;
86
- return (_b = (_a = props.config) == null ? void 0 : _a.columns) != null ? _b : [];
86
+ var _a2, _b2;
87
+ return (_b2 = (_a2 = props.config) == null ? void 0 : _a2.columns) != null ? _b2 : [];
87
88
  });
88
89
  const paginationState = computed(() => {
89
- var _a, _b;
90
- return (_b = (_a = props.config) == null ? void 0 : _a.pagination) != null ? _b : {};
90
+ var _a2, _b2;
91
+ return (_b2 = (_a2 = props.config) == null ? void 0 : _a2.pagination) != null ? _b2 : {};
91
92
  });
92
93
  const expandedKeys = ref(props.expandedRowKeys);
94
+ paginationConfig.pageSizeOptions = (_c = (_b = (_a = props.config) == null ? void 0 : _a.pageOptions) == null ? void 0 : _b.sizeOptions) != null ? _c : paginationConfig.pageSizeOptions;
93
95
  watchEffect(() => {
94
96
  const {
95
97
  expandedRowKeys
@@ -104,26 +106,26 @@ const DXTable = /* @__PURE__ */ defineComponent({
104
106
  onRowClassName
105
107
  } = useTable();
106
108
  function useTable() {
107
- var _a;
109
+ var _a2;
108
110
  const {
109
111
  rowClassName,
110
112
  keepSelected,
111
113
  onPageChange: onChange
112
114
  } = props.config;
113
- const selection = (_a = props.config.selection) != null ? _a : "N";
115
+ const selection = (_a2 = props.config.selection) != null ? _a2 : "N";
114
116
  const tableRootRef2 = ref();
115
117
  const tableRef2 = ref(null);
116
118
  const tableHeight2 = ref();
117
119
  const antTableBodyRef = ref(null);
118
120
  const playHeight = (height) => {
119
- var _a2, _b, _c;
121
+ var _a3, _b2, _c2;
120
122
  try {
121
- const tableEl = (_a2 = tableRef2 == null ? void 0 : tableRef2.value) == null ? void 0 : _a2.$el;
123
+ const tableEl = (_a3 = tableRef2 == null ? void 0 : tableRef2.value) == null ? void 0 : _a3.$el;
122
124
  const headerHeight = useEleHeight(tableEl.getElementsByClassName("ant-table-header")[0]);
123
125
  let paginationHeight = 0;
124
126
  if (props.config.pagination) {
125
- const paginationEl = (_b = tableRootRef2.value) == null ? void 0 : _b.getElementsByClassName(basePageClassName)[0];
126
- paginationHeight = (_c = useEleHeight(paginationEl)) != null ? _c : 0;
127
+ const paginationEl = (_b2 = tableRootRef2.value) == null ? void 0 : _b2.getElementsByClassName(basePageClassName)[0];
128
+ paginationHeight = (_c2 = useEleHeight(paginationEl)) != null ? _c2 : 0;
127
129
  }
128
130
  tableHeight2.value = height - (headerHeight + paginationHeight);
129
131
  tableEl.getElementsByClassName("ant-table-body")[0].style.height = tableHeight2.value + "px";
@@ -165,14 +167,14 @@ const DXTable = /* @__PURE__ */ defineComponent({
165
167
  }
166
168
  const rowSelection = useRowSelection();
167
169
  function useRowSelection() {
168
- var _a;
170
+ var _a2;
169
171
  const {
170
172
  rowKey,
171
173
  config: {
172
174
  getCheckboxProps
173
175
  }
174
176
  } = props;
175
- let localSelection = (_a = props.config.selection) != null ? _a : "N";
177
+ let localSelection = (_a2 = props.config.selection) != null ? _a2 : "N";
176
178
  const onSelect = (record, selected) => {
177
179
  if (localSelection === "S") {
178
180
  selectedRowKeys.value = [];
@@ -288,7 +290,7 @@ const DXTable = /* @__PURE__ */ defineComponent({
288
290
  return createVNode(Fragment, null, [slots.summary && slots.summary()]);
289
291
  };
290
292
  return () => {
291
- var _a, _b;
293
+ var _a2, _b2;
292
294
  return createVNode("div", {
293
295
  "ref": tableRootRef,
294
296
  "style": {
@@ -301,7 +303,7 @@ const DXTable = /* @__PURE__ */ defineComponent({
301
303
  "columns": columns.value,
302
304
  "dataSource": dataSource.value,
303
305
  "loading": props.loading,
304
- "size": (_b = (_a = props.config) == null ? void 0 : _a.size) != null ? _b : "small",
306
+ "size": (_b2 = (_a2 = props.config) == null ? void 0 : _a2.size) != null ? _b2 : "small",
305
307
  "scroll": {
306
308
  scrollToFirstRowOnChange: true,
307
309
  x: "100%",
@@ -1 +1 @@
1
- {"version":3,"file":"Table.mjs","sources":["../../../src/table/Table.tsx"],"sourcesContent":["import {\n computed,\n defineComponent,\n nextTick,\n PropType,\n ref,\n watch,\n watchEffect\n} from \"vue\";\nimport { Pagination, Space, Table } from \"ant-design-vue\";\nimport { useEleHeight } from \"../_utils/html\";\nimport { prefixName } from \"../theme\";\n\nimport type { TableProps, Key } from \"./interface/table\";\n/**\n * 表格组件 基于TSX封装ATable\n */\nconst tableProps = () => {\n return {\n data: {\n type: Object as PropType<TableProps[\"data\"]>,\n required: true\n },\n height: {\n type: Number as PropType<TableProps[\"height\"]>,\n default: 300\n },\n keys: Array as PropType<TableProps[\"keys\"]>,\n rowKey: {\n type: String as PropType<TableProps[\"rowKey\"]>,\n default: \"id\"\n },\n loading: {\n type: Boolean as PropType<TableProps[\"loading\"]>,\n default: false\n },\n pagination: {\n type: Object as PropType<TableProps[\"pagination\"]>,\n default: () => ({})\n },\n config: {\n type: Object as PropType<TableProps[\"config\"]>,\n default: () => ({})\n },\n expandedRowKeys: {\n type: Object as PropType<TableProps[\"expandedRowKeys\"]>,\n default: () => []\n },\n defaultExpandAllRows: Boolean as PropType<\n TableProps[\"defaultExpandAllRows\"]\n >,\n default: () => true\n };\n};\n\n// 使用有问题\n// const tableEmits = defineEmits<{\n// \"update:keys\": (keys: []) => void;\n// }>();\n// interface MyEvents {\n// [key: string]: (...args: any[]) => void;\n// \"update:keys\": (keys: []) => void;\n// }\n\n//分页默认配置\nconst paginationConfig = {\n defaultPageSize: 20,\n hideOnSinglePage: false,\n pageSizeOptions: [\"10\", \"20\", \"30\", \"40\"],\n responsive: true,\n showQuickJumper: true,\n showLessItems: true,\n showTotal: (total: number) => {\n return `总共 ${total} 条`;\n }\n};\n\n//分页class名称\nconst basePageClassName = `${prefixName}-pagination`;\n\n/**\n * 表格组件定义\n */\nconst DXTable = defineComponent({\n name: \"DTable\",\n props: tableProps(),\n // emits: { \"update:keys\": (keys: []) => void }\n // TODO 需要做调整\n emits: [\"update:keys\"],\n setup: function (props, { emit, slots }) {\n // 保存选中的唯一id\n const selectedRowKeys = ref<any>(props.keys || []);\n // 数据源\n const dataSource = computed(() => props.data);\n // 表格列\n const columns = computed(() => props.config?.columns ?? []);\n const paginationState = computed(\n () => props.config?.pagination ?? ({} as any)\n );\n // 展开行\n const expandedKeys = ref<any>(props.expandedRowKeys);\n watchEffect(() => {\n const { expandedRowKeys } = props;\n expandedKeys.value = expandedRowKeys;\n });\n\n // 初始化表格\n const {\n tableRef,\n tableRootRef,\n tableHeight,\n onPageChange,\n onRowClassName\n } = useTable();\n\n function useTable() {\n const {\n rowClassName,\n keepSelected,\n onPageChange: onChange\n } = props.config;\n\n const selection = props.config.selection ?? \"N\";\n\n // 表格根div\n const tableRootRef = ref<HTMLElement>();\n // 表格组件对象\n const tableRef = ref<any>(null);\n // 表格计算出来的高度\n const tableHeight = ref<number>();\n // 表格body对象\n const antTableBodyRef = ref<any>(null);\n // 计算高度\n const playHeight = (height: number) => {\n try {\n const tableEl = tableRef?.value?.$el;\n\n const headerHeight = useEleHeight(\n tableEl.getElementsByClassName(\"ant-table-header\")[0]\n );\n // 获取分页组件高度\n let paginationHeight = 0;\n if (props.config.pagination) {\n const paginationEl =\n tableRootRef.value?.getElementsByClassName(basePageClassName)[0];\n paginationHeight = useEleHeight(paginationEl as any) ?? 0;\n }\n tableHeight.value = height - (headerHeight + paginationHeight);\n // 设置body高度\n tableEl.getElementsByClassName(\"ant-table-body\")[0].style.height =\n tableHeight.value + \"px\";\n // 表格body对象 用于切换页码后滚动条置顶\n antTableBodyRef.value =\n tableEl.getElementsByClassName(\"ant-table-body\")[0];\n } catch (e) {\n console.warn(e);\n }\n };\n //监听传入的height的变化 默认组件创建的时候会执行一次\n watchEffect(() => {\n if (props.height !== 0) {\n nextTick(() => {\n // 必须在组件挂载成功后 执行计算高度 否则无法正确获取元素的高度\n setTimeout(() => {\n // 如果表格头 有多行的清空下,获取到的头部高度不对,需要延迟执行获取高度方法\n playHeight(props.height);\n }, 10);\n });\n }\n });\n // 监听分页组件\n const onPageChange = (page: number, size: number) => {\n onChange ? onChange({ page, size }) : null;\n // 切换分页的时候,表体滚动到顶部\n antTableBodyRef.value.scrollTop = 0;\n // 如果当前为单选或未开启分页保留数据选中的数据都会被清除\n // 清空历史选中数据\n if (selection === \"S\" || !keepSelected) {\n selectedRowKeys.value = [];\n emit(\"update:keys\", selectedRowKeys.value);\n }\n };\n //自定义样式\n const onRowClassName = (record: any, index: number) => {\n return rowClassName ? rowClassName(record, index) : undefined;\n };\n return {\n tableRef,\n tableRootRef,\n tableHeight,\n onPageChange,\n onRowClassName\n };\n }\n\n //表格选中配置\n const rowSelection = useRowSelection();\n\n function useRowSelection() {\n const {\n rowKey,\n config: { getCheckboxProps }\n } = props;\n\n let localSelection = props.config.selection ?? \"N\";\n //if (selection === \"N\") return undefined;\n\n const onSelect = (record: any, selected: any) => {\n if (localSelection === \"S\") {\n selectedRowKeys.value = [];\n selectedRowKeys.value = selected ? [record[rowKey]] : [];\n } else {\n selectedRowKeys.value = selected\n ? selectedRowKeys.value.concat(record[rowKey])\n : selectedRowKeys.value.filter(\n (key: Key) => key !== record[rowKey]\n );\n }\n emit(\"update:keys\", selectedRowKeys.value);\n };\n\n const onSelectAll = (\n selected: any,\n selectedRows: any,\n changeRows: any\n ) => {\n const _ids = changeRows.map((record: any) => record[rowKey]);\n selectedRowKeys.value = selected\n ? selectedRowKeys.value.concat(_ids)\n : selectedRowKeys.value.filter((key: Key) => !_ids.includes(key));\n\n emit(\"update:keys\", selectedRowKeys.value);\n };\n\n // 监听父组件手动改变keys 重新赋值给 表格选中变量selectedRowKeys\n // 否则父组件 改变keys后当前selectedRowKeys还是原来的值\n watch(\n () => props.keys,\n (val) => {\n selectedRowKeys.value = val;\n }\n );\n\n const rowSelection = ref<any>(undefined);\n\n watchEffect(() => {\n const { selection } = props.config;\n localSelection = selection as any;\n if (localSelection !== \"N\") {\n rowSelection.value = {\n selectedRowKeys,\n onSelect,\n onSelectAll,\n fixed: true,\n columnTitle: localSelection === \"S\" ? \"选择\" : null,\n columnWidth: localSelection === \"S\" ? 60 : 40,\n getCheckboxProps: getCheckboxProps\n };\n } else {\n rowSelection.value = undefined;\n }\n });\n\n // return {\n // selectedRowKeys,\n // onSelect,\n // onSelectAll,\n // fixed: true,\n // columnTitle: localSelection === \"S\" ? \"选择\" : null,\n // columnWidth: localSelection === \"S\" ? 60 : 40,\n // getCheckboxProps: getCheckboxProps\n // };\n return rowSelection;\n }\n\n const customRow = useCustomRow();\n\n //表格行配置\n function useCustomRow() {\n return (record: any) => {\n // 用于存储 在某个事件内双击两次 则取消单击事件业务\n let clickTimeout: any = undefined;\n const {\n rowKey,\n config: { click, dbClick, selection, getCheckboxProps }\n } = props as any;\n\n // 当前点击行的唯一ID,通过rowKey从record中取值\n const id = record[rowKey];\n\n /**\n * 处理单击事件业务\n * @param record 当前点击行数据\n */\n const onClick = () => {\n // 获取getCheckboxProps方法,如果不等于undefined,则执行方法获取disabled的值\n // 否则checkEnable为false\n const checkEnable =\n getCheckboxProps === undefined\n ? false\n : getCheckboxProps(record).disabled;\n\n if (selection === \"N\" || checkEnable) {\n // 1. 未开启复选框 则不处理数据选中操作\n // 2. 如果当前点击的行 包含在禁用的数据项目里面 则不进行选中操作\n // 3. checkEnable 用来判断复选框属性的值,如果当前的数据满足getCheckboxProps这个\n // 方法返回的disabled为true就不执行\n // 复选框选中的操作\n return;\n }\n const haveState = selectedRowKeys.value.some(\n (key: Key) => key === id\n );\n if (haveState) {\n //如果 当前点击行的ID 已存在 那么直接过滤掉当前的id\n selectedRowKeys.value = selectedRowKeys.value.filter(\n (key: Key) => key !== id\n );\n } else {\n if (selection === \"S\") {\n //单选的时候 清空选中的数据 再赋值新的ID\n selectedRowKeys.value = [];\n selectedRowKeys.value.push(id);\n } else {\n //多选直接追加ID\n selectedRowKeys.value.push(id);\n }\n }\n emit(\"update:keys\", selectedRowKeys.value);\n };\n\n return {\n onClick: () => {\n clearTimeout(clickTimeout);\n clickTimeout = setTimeout(() => {\n // 处理单击事件业务\n onClick();\n // 回传数据 自定义单击后的业务\n click ? click(record) : undefined;\n }, 200);\n }, // 点击行\n onDblclick: () => {\n clearTimeout(clickTimeout);\n // 回传数据 自定义单击后的业务\n dbClick ? dbClick(record) : undefined;\n }\n // onContextmenu: (event) => {\n // //TODO\n // },\n // onMouseenter: (event) => {\n // //TODO\n // }, // 鼠标移入行\n // onMouseleave: (event) => {\n // //TODO\n // }\n };\n };\n }\n\n const actionStop = (event: MouseEvent) => {\n event.stopPropagation();\n };\n\n const expandRowByClick = computed(() => {\n const { selection } = props.config;\n return selection === \"N\";\n });\n const tableSlots: any = {};\n if (slots.expandedRowRender) {\n tableSlots.expandedRowRender = (record: any) => {\n return (\n <>{slots.expandedRowRender && slots.expandedRowRender(record)}</>\n );\n };\n }\n const summary = () => {\n return <>{slots.summary && slots.summary()}</>;\n };\n\n return () => (\n <div ref={tableRootRef} style={{ height: \"100%\" }}>\n <Table\n ref={tableRef}\n row-key={props.rowKey}\n bordered={props.config.bordered}\n columns={columns.value}\n dataSource={dataSource.value}\n loading={props.loading}\n size={props.config?.size ?? \"small\"}\n scroll={{\n scrollToFirstRowOnChange: true,\n x: \"100%\",\n y: tableHeight.value + \"px\"\n }}\n v-model:expandedRowKeys={expandedKeys.value}\n expandRowByClick={expandRowByClick.value}\n defaultExpandAllRows={props.defaultExpandAllRows}\n pagination={false}\n customRow={customRow}\n rowSelection={rowSelection.value}\n rowClassName={onRowClassName}\n >\n {{\n bodyCell: ({ column, record }: any) => {\n if (column.slot === \"action\") {\n return (\n <div onClick={actionStop} onDblclick={actionStop}>\n <Space>{slots.action && slots.action(record)}</Space>\n </div>\n );\n }\n },\n ...tableSlots,\n // 总结栏插槽\n summary: summary\n }}\n </Table>\n <Pagination\n v-show={props.config.pagination}\n class={[basePageClassName]}\n v-model:current={paginationState.value.current}\n v-model:pageSize={paginationState.value.pageSize}\n disabled={props.loading}\n show-size-changer\n size={\"default\"}\n hide-on-single-page={paginationConfig.hideOnSinglePage}\n show-quick-jumper={paginationConfig.showQuickJumper}\n default-page-size={paginationConfig.defaultPageSize}\n page-size-options={paginationConfig.pageSizeOptions}\n show-total={paginationConfig.showTotal}\n total={paginationState.value.total}\n onChange={onPageChange}\n />\n </div>\n );\n }\n});\n\nexport default DXTable;\n"],"names":["tableProps","data","type","Object","required","height","Number","default","keys","Array","rowKey","String","loading","Boolean","pagination","config","expandedRowKeys","defaultExpandAllRows","paginationConfig","defaultPageSize","hideOnSinglePage","pageSizeOptions","responsive","showQuickJumper","showLessItems","showTotal","total","basePageClassName","prefixName","DXTable","name","props","emits","setup","emit","slots","selectedRowKeys","ref","dataSource","computed","columns","paginationState","expandedKeys","watchEffect","value","tableRef","tableRootRef","tableHeight","onPageChange","onRowClassName","useTable","rowClassName","keepSelected","onChange","selection","antTableBodyRef","playHeight","tableEl","$el","headerHeight","useEleHeight","getElementsByClassName","paginationHeight","paginationEl","style","e","console","warn","nextTick","setTimeout","page","size","scrollTop","record","index","undefined","rowSelection","useRowSelection","getCheckboxProps","localSelection","onSelect","selected","concat","filter","key","onSelectAll","selectedRows","changeRows","_ids","map","includes","watch","val","fixed","columnTitle","columnWidth","customRow","useCustomRow","clickTimeout","click","dbClick","id","onClick","checkEnable","disabled","haveState","some","push","clearTimeout","onDblclick","actionStop","event","stopPropagation","expandRowByClick","tableSlots","expandedRowRender","_createVNode","_Fragment","summary","Table","bordered","scrollToFirstRowOnChange","x","y","$event","bodyCell","column","slot","Space","action","_withDirectives","Pagination","current","pageSize","_vShow"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAiBA,MAAMA,aAAaA,MAAM;AACvB,EAAO,OAAA;AAAA,IACLC,IAAM,EAAA;AAAA,MACJC,IAAMC,EAAAA,MAAAA;AAAAA,MACNC,QAAU,EAAA,IAAA;AAAA,KACZ;AAAA,IACAC,MAAQ,EAAA;AAAA,MACNH,IAAMI,EAAAA,MAAAA;AAAAA,MACNC,OAAS,EAAA,GAAA;AAAA,KACX;AAAA,IACAC,IAAMC,EAAAA,KAAAA;AAAAA,IACNC,MAAQ,EAAA;AAAA,MACNR,IAAMS,EAAAA,MAAAA;AAAAA,MACNJ,OAAS,EAAA,IAAA;AAAA,KACX;AAAA,IACAK,OAAS,EAAA;AAAA,MACPV,IAAMW,EAAAA,OAAAA;AAAAA,MACNN,OAAS,EAAA,KAAA;AAAA,KACX;AAAA,IACAO,UAAY,EAAA;AAAA,MACVZ,IAAMC,EAAAA,MAAAA;AAAAA,MACNI,OAAAA,EAASA,OAAO,EAAC,CAAA;AAAA,KACnB;AAAA,IACAQ,MAAQ,EAAA;AAAA,MACNb,IAAMC,EAAAA,MAAAA;AAAAA,MACNI,OAAAA,EAASA,OAAO,EAAC,CAAA;AAAA,KACnB;AAAA,IACAS,eAAiB,EAAA;AAAA,MACfd,IAAMC,EAAAA,MAAAA;AAAAA,MACNI,OAAAA,EAASA,MAAM,EAAA;AAAA,KACjB;AAAA,IACAU,oBAAsBJ,EAAAA,OAAAA;AAAAA,IAGtBN,SAASA,MAAM,IAAA;AAAA,GACjB,CAAA;AACF,CAAA,CAAA;AAYA,MAAMW,gBAAmB,GAAA;AAAA,EACvBC,eAAiB,EAAA,EAAA;AAAA,EACjBC,gBAAkB,EAAA,KAAA;AAAA,EAClBC,eAAiB,EAAA,CAAC,IAAM,EAAA,IAAA,EAAM,MAAM,IAAI,CAAA;AAAA,EACxCC,UAAY,EAAA,IAAA;AAAA,EACZC,eAAiB,EAAA,IAAA;AAAA,EACjBC,aAAe,EAAA,IAAA;AAAA,EACfC,WAAYC,CAAkB,KAAA,KAAA;AAC5B,IAAA,OAAQ,gBAAKA,KAAM,CAAA,OAAA,CAAA,CAAA;AAAA,GACrB;AACF,CAAA,CAAA;AAGA,MAAMC,iBAAAA,GAAqB,GAAEC,UAAW,CAAA,WAAA,CAAA,CAAA;AAKxC,MAAMC,0BAA0B,eAAA,CAAA;AAAA,EAC9BC,IAAM,EAAA,QAAA;AAAA,EACNC,OAAO/B,UAAW,EAAA;AAAA;AAAA;AAAA,EAGlBgC,KAAAA,EAAO,CAAC,aAAa,CAAA;AAAA,EACrBC,KAAAA,EAAO,SAAUF,KAAO,EAAA;AAAA,IAAEG,IAAAA;AAAAA,IAAMC,KAAAA;AAAAA,GAAS,EAAA;AAEvC,IAAA,MAAMC,eAAkBC,GAAAA,GAAAA,CAASN,KAAMvB,CAAAA,IAAAA,IAAQ,EAAE,CAAA,CAAA;AAEjD,IAAA,MAAM8B,UAAaC,GAAAA,QAAAA,CAAS,MAAMR,KAAAA,CAAM9B,IAAI,CAAA,CAAA;AAE5C,IAAMuC,MAAAA,OAAAA,GAAUD,SAAS,MAAMR;;AAAAA,MAAAA,OAAAA,CAAAA,EAAAA,GAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMhB,MAANgB,KAAAA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,EAAAA,CAAcS,OAAdT,KAAAA,IAAAA,GAAAA,EAAAA,GAAyB,EAAA,CAAA;AAAA,KAAE,CAAA,CAAA;AAC1D,IAAMU,MAAAA,eAAAA,GAAkBF,SACtB,MAAMR;;AAAAA,MAAAA,OAAAA,CAAAA,EAAAA,GAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMhB,MAANgB,KAAAA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,EAAAA,CAAcjB,UAAdiB,KAAAA,IAAAA,GAAAA,EAAAA,GAA6B,EAAC,CAAA;AAAA,KACtC,CAAA,CAAA;AAEA,IAAMW,MAAAA,YAAAA,GAAeL,GAASN,CAAAA,KAAAA,CAAMf,eAAe,CAAA,CAAA;AACnD2B,IAAAA,WAAAA,CAAY,MAAM;AAChB,MAAM,MAAA;AAAA,QAAE3B,eAAAA;AAAAA,OAAoBe,GAAAA,KAAAA,CAAAA;AAC5BW,MAAAA,YAAAA,CAAaE,KAAQ5B,GAAAA,eAAAA,CAAAA;AAAAA,KACtB,CAAA,CAAA;AAGD,IAAM,MAAA;AAAA,MACJ6B,QAAAA;AAAAA,MACAC,YAAAA;AAAAA,MACAC,WAAAA;AAAAA,MACAC,YAAAA;AAAAA,MACAC,cAAAA;AAAAA,QACEC,QAAS,EAAA,CAAA;AAEb,IAAA,SAASA,QAAW,GAAA;;AAClB,MAAM,MAAA;AAAA,QACJC,YAAAA;AAAAA,QACAC,YAAAA;AAAAA,QACAJ,YAAcK,EAAAA,QAAAA;AAAAA,UACZtB,KAAMhB,CAAAA,MAAAA,CAAAA;AAEV,MAAA,MAAMuC,SAAYvB,GAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMhB,MAAOuC,CAAAA,SAAAA,KAAbvB,IAA0B,GAAA,EAAA,GAAA,GAAA,CAAA;AAG5C,MAAA,MAAMe,gBAAeT,GAAiB,EAAA,CAAA;AAEtC,MAAMQ,MAAAA,SAAAA,GAAWR,IAAS,IAAI,CAAA,CAAA;AAE9B,MAAA,MAAMU,eAAcV,GAAY,EAAA,CAAA;AAEhC,MAAMkB,MAAAA,eAAAA,GAAkBlB,IAAS,IAAI,CAAA,CAAA;AAErC,MAAA,MAAMmB,aAAcnD,CAAmB,MAAA,KAAA;;AACrC,QAAI,IAAA;AACF,UAAA,MAAMoD,WAAUZ,GAAAA,GAAAA,SAAAA,IAAAA,gBAAAA,SAAUD,CAAAA,KAAAA,KAAVC,gBAAAA,GAAiBa,CAAAA,GAAAA,CAAAA;AAEjC,UAAA,MAAMC,eAAeC,YACnBH,CAAAA,OAAAA,CAAQI,uBAAuB,kBAAkB,CAAA,CAAE,CAAC,CACtD,CAAA,CAAA;AAEA,UAAA,IAAIC,gBAAmB,GAAA,CAAA,CAAA;AACvB,UAAI/B,IAAAA,KAAAA,CAAMhB,OAAOD,UAAY,EAAA;AAC3B,YAAA,MAAMiD,gBACJjB,EAAAA,GAAAA,aAAAA,CAAaF,KAAbE,KAAAA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,EAAAA,CAAoBe,uBAAuBlC,iBAAmB,CAAA,CAAA,CAAA,CAAA,CAAA;AAChEmC,YAAmBF,gBAAAA,GAAAA,CAAAA,EAAAA,GAAAA,YAAAA,CAAaG,YAAmB,CAAA,KAAhCH,IAAqC,GAAA,EAAA,GAAA,CAAA,CAAA;AAAA,WAC1D;AACAb,UAAAA,YAAAA,CAAYH,KAAQvC,GAAAA,MAAAA,IAAUsD,YAAeG,GAAAA,gBAAAA,CAAAA,CAAAA;AAE7CL,UAAQI,OAAAA,CAAAA,sBAAAA,CAAuB,gBAAgB,CAAE,CAAA,CAAC,EAAEG,KAAM3D,CAAAA,MAAAA,GACxD0C,aAAYH,KAAQ,GAAA,IAAA,CAAA;AAEtBW,UAAAA,eAAAA,CAAgBX,KACda,GAAAA,OAAAA,CAAQI,sBAAuB,CAAA,gBAAgB,EAAE,CAAC,CAAA,CAAA;AAAA,iBAC7CI,CAAG,EAAA;AACVC,UAAAA,OAAAA,CAAQC,KAAKF,CAAC,CAAA,CAAA;AAAA,SAChB;AAAA,OACF,CAAA;AAEAtB,MAAAA,WAAAA,CAAY,MAAM;AAChB,QAAIZ,IAAAA,KAAAA,CAAM1B,WAAW,CAAG,EAAA;AACtB+D,UAAAA,QAAAA,CAAS,MAAM;AAEbC,YAAAA,UAAAA,CAAW,MAAM;AAEfb,cAAAA,UAAAA,CAAWzB,MAAM1B,MAAM,CAAA,CAAA;AAAA,eACtB,EAAE,CAAA,CAAA;AAAA,WACN,CAAA,CAAA;AAAA,SACH;AAAA,OACD,CAAA,CAAA;AAED,MAAM2C,MAAAA,aAAAA,GAAeA,CAACsB,IAAAA,EAAcC,IAAiB,KAAA;AACnDlB,QAAAA,QAAAA,GAAWA,QAAS,CAAA;AAAA,UAAEiB,IAAAA;AAAAA,UAAMC,IAAAA;AAAAA,SAAM,CAAI,GAAA,IAAA,CAAA;AAEtChB,QAAAA,eAAAA,CAAgBX,MAAM4B,SAAY,GAAA,CAAA,CAAA;AAGlC,QAAIlB,IAAAA,SAAAA,KAAc,GAAO,IAAA,CAACF,YAAc,EAAA;AACtChB,UAAAA,eAAAA,CAAgBQ,QAAQ,EAAE,CAAA;AAC1BV,UAAK,IAAA,CAAA,aAAA,EAAeE,gBAAgBQ,KAAK,CAAA,CAAA;AAAA,SAC3C;AAAA,OACF,CAAA;AAEA,MAAMK,MAAAA,eAAAA,GAAiBA,CAACwB,MAAAA,EAAaC,KAAkB,KAAA;AACrD,QAAA,OAAOvB,YAAeA,GAAAA,YAAAA,CAAasB,MAAQC,EAAAA,KAAK,CAAIC,GAAAA,KAAAA,CAAAA,CAAAA;AAAAA,OACtD,CAAA;AACA,MAAO,OAAA;AAAA,QACL9B,QAAAA,EAAAA,SAAAA;AAAAA,QACAC,YAAAA,EAAAA,aAAAA;AAAAA,QACAC,WAAAA,EAAAA,YAAAA;AAAAA,QACAC,YAAAA,EAAAA,aAAAA;AAAAA,QACAC,cAAAA,EAAAA,eAAAA;AAAAA,OACF,CAAA;AAAA,KACF;AAGA,IAAA,MAAM2B,eAAeC,eAAgB,EAAA,CAAA;AAErC,IAAA,SAASA,eAAkB,GAAA;;AACzB,MAAM,MAAA;AAAA,QACJnE,MAAAA;AAAAA,QACAK,MAAQ,EAAA;AAAA,UAAE+D,gBAAAA;AAAAA,SAAiB;AAAA,OACzB/C,GAAAA,KAAAA,CAAAA;AAEJ,MAAA,IAAIgD,cAAiBhD,GAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMhB,MAAOuC,CAAAA,SAAAA,KAAbvB,IAA0B,GAAA,EAAA,GAAA,GAAA,CAAA;AAG/C,MAAMiD,MAAAA,QAAAA,GAAWA,CAACP,MAAAA,EAAaQ,QAAkB,KAAA;AAC/C,QAAA,IAAIF,mBAAmB,GAAK,EAAA;AAC1B3C,UAAAA,eAAAA,CAAgBQ,QAAQ,EAAE,CAAA;AAC1BR,UAAAA,eAAAA,CAAgBQ,QAAQqC,QAAW,GAAA,CAACR,OAAO/D,MAAM,CAAC,IAAI,EAAE,CAAA;AAAA,SACnD,MAAA;AACL0B,UAAAA,eAAAA,CAAgBQ,QAAQqC,QACpB7C,GAAAA,eAAAA,CAAgBQ,KAAMsC,CAAAA,MAAAA,CAAOT,OAAO/D,MAAM,CAAC,CAC3C0B,GAAAA,eAAAA,CAAgBQ,MAAMuC,MACnBC,CAAAA,CAAAA,GAAAA,KAAaA,GAAQX,KAAAA,MAAAA,CAAO/D,MAAM,CACrC,CAAA,CAAA;AAAA,SACN;AACAwB,QAAK,IAAA,CAAA,aAAA,EAAeE,gBAAgBQ,KAAK,CAAA,CAAA;AAAA,OAC3C,CAAA;AAEA,MAAA,MAAMyC,WAAcA,GAAAA,CAClBJ,QACAK,EAAAA,YAAAA,EACAC,UACG,KAAA;AACH,QAAA,MAAMC,OAAOD,UAAWE,CAAAA,GAAAA,CAAKhB,CAAgBA,MAAAA,KAAAA,MAAAA,CAAO/D,MAAM,CAAC,CAAA,CAAA;AAC3D0B,QAAAA,eAAAA,CAAgBQ,KAAQqC,GAAAA,QAAAA,GACpB7C,eAAgBQ,CAAAA,KAAAA,CAAMsC,OAAOM,IAAI,CAAA,GACjCpD,eAAgBQ,CAAAA,KAAAA,CAAMuC,OAAQC,CAAa,GAAA,KAAA,CAACI,IAAKE,CAAAA,QAAAA,CAASN,GAAG,CAAC,CAAA,CAAA;AAElElD,QAAK,IAAA,CAAA,aAAA,EAAeE,gBAAgBQ,KAAK,CAAA,CAAA;AAAA,OAC3C,CAAA;AAIA+C,MACE,KAAA,CAAA,MAAM5D,KAAMvB,CAAAA,IAAAA,EACXoF,CAAQ,GAAA,KAAA;AACPxD,QAAAA,eAAAA,CAAgBQ,KAAQgD,GAAAA,GAAAA,CAAAA;AAAAA,OAE5B,CAAA,CAAA;AAEA,MAAMhB,MAAAA,aAAAA,GAAevC,IAASsC,KAAS,CAAA,CAAA,CAAA;AAEvChC,MAAAA,WAAAA,CAAY,MAAM;AAChB,QAAM,MAAA;AAAA,UAAEW,SAAAA;AAAAA,YAAcvB,KAAMhB,CAAAA,MAAAA,CAAAA;AAC5BgE,QAAiBzB,cAAAA,GAAAA,SAAAA,CAAAA;AACjB,QAAA,IAAIyB,mBAAmB,GAAK,EAAA;AAC1BH,UAAAA,cAAahC,KAAQ,GAAA;AAAA,YACnBR,eAAAA;AAAAA,YACA4C,QAAAA;AAAAA,YACAK,WAAAA;AAAAA,YACAQ,KAAO,EAAA,IAAA;AAAA,YACPC,WAAAA,EAAaf,cAAmB,KAAA,GAAA,GAAM,cAAO,GAAA,IAAA;AAAA,YAC7CgB,WAAAA,EAAahB,cAAmB,KAAA,GAAA,GAAM,EAAK,GAAA,EAAA;AAAA,YAC3CD,gBAAAA;AAAAA,WACF,CAAA;AAAA,SACK,MAAA;AACLF,UAAAA,cAAahC,KAAQ+B,GAAAA,KAAAA,CAAAA,CAAAA;AAAAA,SACvB;AAAA,OACD,CAAA,CAAA;AAWD,MAAOC,OAAAA,aAAAA,CAAAA;AAAAA,KACT;AAEA,IAAA,MAAMoB,YAAYC,YAAa,EAAA,CAAA;AAG/B,IAAA,SAASA,YAAe,GAAA;AACtB,MAAA,OAAQxB,CAAgB,MAAA,KAAA;AAEtB,QAAA,IAAIyB,YAAoBvB,GAAAA,KAAAA,CAAAA,CAAAA;AACxB,QAAM,MAAA;AAAA,UACJjE,MAAAA;AAAAA,UACAK,MAAQ,EAAA;AAAA,YAAEoF,KAAAA;AAAAA,YAAOC,OAAAA;AAAAA,YAAS9C,SAAAA;AAAAA,YAAWwB,gBAAAA;AAAAA,WAAiB;AAAA,SACpD/C,GAAAA,KAAAA,CAAAA;AAGJ,QAAMsE,MAAAA,EAAAA,GAAK5B,OAAO/D,MAAM,CAAA,CAAA;AAMxB,QAAA,MAAM4F,UAAUA,MAAM;AAGpB,UAAA,MAAMC,cACJzB,gBAAqBH,KAAAA,KAAAA,CAAAA,GACjB,KACAG,GAAAA,gBAAAA,CAAiBL,MAAM,CAAE+B,CAAAA,QAAAA,CAAAA;AAE/B,UAAIlD,IAAAA,SAAAA,KAAc,OAAOiD,WAAa,EAAA;AAMpC,YAAA,OAAA;AAAA,WACF;AACA,UAAA,MAAME,YAAYrE,eAAgBQ,CAAAA,KAAAA,CAAM8D,IACrCtB,CAAAA,CAAAA,GAAAA,KAAaA,QAAQiB,EACxB,CAAA,CAAA;AACA,UAAA,IAAII,SAAW,EAAA;AAEbrE,YAAAA,eAAAA,CAAgBQ,QAAQR,eAAgBQ,CAAAA,KAAAA,CAAMuC,MAC3CC,CAAAA,CAAAA,GAAAA,KAAaA,QAAQiB,EACxB,CAAA,CAAA;AAAA,WACK,MAAA;AACL,YAAA,IAAI/C,cAAc,GAAK,EAAA;AAErBlB,cAAAA,eAAAA,CAAgBQ,QAAQ,EAAE,CAAA;AAC1BR,cAAgBQ,eAAAA,CAAAA,KAAAA,CAAM+D,KAAKN,EAAE,CAAA,CAAA;AAAA,aACxB,MAAA;AAELjE,cAAgBQ,eAAAA,CAAAA,KAAAA,CAAM+D,KAAKN,EAAE,CAAA,CAAA;AAAA,aAC/B;AAAA,WACF;AACAnE,UAAK,IAAA,CAAA,aAAA,EAAeE,gBAAgBQ,KAAK,CAAA,CAAA;AAAA,SAC3C,CAAA;AAEA,QAAO,OAAA;AAAA,UACL0D,SAASA,MAAM;AACbM,YAAAA,YAAAA,CAAaV,YAAY,CAAA,CAAA;AACzBA,YAAAA,YAAAA,GAAe7B,WAAW,MAAM;AAE9BiC,cAAQ,OAAA,EAAA,CAAA;AAERH,cAAQA,KAAAA,GAAAA,KAAAA,CAAM1B,MAAM,CAAIE,GAAAA,KAAAA,CAAAA,CAAAA;AAAAA,eACvB,GAAG,CAAA,CAAA;AAAA,WACR;AAAA;AAAA,UACAkC,YAAYA,MAAM;AAChBD,YAAAA,YAAAA,CAAaV,YAAY,CAAA,CAAA;AAEzBE,YAAUA,OAAAA,GAAAA,OAAAA,CAAQ3B,MAAM,CAAIE,GAAAA,KAAAA,CAAAA,CAAAA;AAAAA,WAC9B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,SAUF,CAAA;AAAA,OACF,CAAA;AAAA,KACF;AAEA,IAAA,MAAMmC,aAAcC,CAAsB,KAAA,KAAA;AACxCA,MAAAA,KAAAA,CAAMC,eAAgB,EAAA,CAAA;AAAA,KACxB,CAAA;AAEA,IAAMC,MAAAA,gBAAAA,GAAmB1E,SAAS,MAAM;AACtC,MAAM,MAAA;AAAA,QAAEe,SAAAA;AAAAA,UAAcvB,KAAMhB,CAAAA,MAAAA,CAAAA;AAC5B,MAAA,OAAOuC,SAAc,KAAA,GAAA,CAAA;AAAA,KACtB,CAAA,CAAA;AACD,IAAA,MAAM4D,aAAkB,EAAC,CAAA;AACzB,IAAA,IAAI/E,MAAMgF,iBAAmB,EAAA;AAC3BD,MAAAA,UAAAA,CAAWC,oBAAqB1C,CAAgB,MAAA,KAAA;AAC9C,QAAA2C,OAAAA,WAAAA,CAAAC,QAAA,EAAA,IAAA,EAAA,CACKlF,KAAAA,CAAMgF,qBAAqBhF,KAAMgF,CAAAA,iBAAAA,CAAkB1C,MAAM,CAAC,CAAA,CAAA,CAAA;AAAA,OAEjE,CAAA;AAAA,KACF;AACA,IAAA,MAAM6C,UAAUA,MAAM;AACpB,MAAAF,OAAAA,WAAAA,CAAAC,UAAA,IAAA,EAAA,CAAUlF,MAAMmF,OAAWnF,IAAAA,KAAAA,CAAMmF,OAAQ,EAAC,CAAA,CAAA,CAAA;AAAA,KAC5C,CAAA;AAEA,IAAA,OAAO;;AAAAF,MAAAA,OAAAA,WAAAA,CAAA,KAAA,EAAA;AAAA,QAAA,KACKtE,EAAAA,YAAAA;AAAAA,QAAY,OAAS,EAAA;AAAA,UAAEzC,MAAQ,EAAA,MAAA;AAAA,SAAO;AAAA,OAAC,EAAA+G,CAAAA,WAAAA,CAAAG,KAAA,EAAA;AAAA,QAAA,KAExC1E,EAAAA,QAAAA;AAAAA,QAAQ,WACJd,KAAMrB,CAAAA,MAAAA;AAAAA,QAAM,UAAA,EACXqB,MAAMhB,MAAOyG,CAAAA,QAAAA;AAAAA,QAAQ,WACtBhF,OAAQI,CAAAA,KAAAA;AAAAA,QAAK,cACVN,UAAWM,CAAAA,KAAAA;AAAAA,QAAK,WACnBb,KAAMnB,CAAAA,OAAAA;AAAAA,QAAO,MAChBmB,EAAAA,CAAAA,EAAAA,GAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMhB,MAANgB,KAAAA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,EAAAA,CAAcwC,SAAdxC,IAAsB,GAAA,EAAA,GAAA,OAAA;AAAA,QAAO,QAC3B,EAAA;AAAA,UACN0F,wBAA0B,EAAA,IAAA;AAAA,UAC1BC,CAAG,EAAA,MAAA;AAAA,UACHC,CAAAA,EAAG5E,YAAYH,KAAQ,GAAA,IAAA;AAAA,SACzB;AAAA,QAAC,mBACwBF,YAAaE,CAAAA,KAAAA;AAAAA,QAAK,0BAAA,EAAAgF,CAAlBlF,MAAAA,KAAAA,YAAAA,CAAaE,KAAKgF,GAAAA,MAAAA;AAAAA,QAAA,oBACzBX,gBAAiBrE,CAAAA,KAAAA;AAAAA,QAAK,wBAClBb,KAAMd,CAAAA,oBAAAA;AAAAA,QAAoB,YACpC,EAAA,KAAA;AAAA,QAAK,WACN+E,EAAAA,SAAAA;AAAAA,QAAS,gBACNpB,YAAahC,CAAAA,KAAAA;AAAAA,QAAK,cAClBK,EAAAA,cAAAA;AAAAA,OAAc,EAAA,aAAA,CAAA,cAAA,CAAA;AAAA,QAG1B4E,UAAUA,CAAC;AAAA,UAAEC,MAAAA;AAAAA,UAAQrD,MAAAA;AAAAA,SAAkB,KAAA;AACrC,UAAIqD,IAAAA,MAAAA,CAAOC,SAAS,QAAU,EAAA;AAC5B,YAAA,OAAAX,YAAA,KAAA,EAAA;AAAA,cAAA,SACgBN,EAAAA,UAAAA;AAAAA,cAAU,YAAcA,EAAAA,UAAAA;AAAAA,aAAUM,EAAAA,CAAAA,WAAAY,CAAAA,KAAAA,EAAA,IAAA,EAAA;AAAA,cAAAzH,OAAAA,EAAAA,MACtC4B,CAAAA,KAAAA,CAAM8F,UAAU9F,KAAM8F,CAAAA,MAAAA,CAAOxD,MAAM,CAAC,CAAA;AAAA,aAAA,CAAA,CAAA,CAAA,CAAA;AAAA,WAGlD;AAAA,SACF;AAAA,OAAA,EACGyC,UAZuB,CAAA,EAAA;AAAA;AAAA,QAc1BI,OAAAA;AAAAA,OAAgB,CAAA,CAAA,EAAAY,cAAAd,CAAAA,WAAAA,CAAAe,UAAA,EAAA;AAAA,QAAA,OAAA,EAKX,CAACxG,iBAAiB,CAAA;AAAA,QAAC,SAAA,EACTc,gBAAgBG,KAAMwF,CAAAA,OAAAA;AAAAA,QAAO,kBAAAR,EAAAA,CAAAA,MAAAA,KAA7BnF,eAAgBG,CAAAA,KAAAA,CAAMwF,OAAOR,GAAAA,MAAAA;AAAAA,QAAA,UAAA,EAC5BnF,gBAAgBG,KAAMyF,CAAAA,QAAAA;AAAAA,QAAQ,mBAAAT,EAAAA,CAAAA,MAAAA,KAA9BnF,eAAgBG,CAAAA,KAAAA,CAAMyF,QAAQT,GAAAA,MAAAA;AAAAA,QAAA,YACtC7F,KAAMnB,CAAAA,OAAAA;AAAAA,QAAO,mBAAA,EAAA,IAAA;AAAA,QAAA,MAEjB,EAAA,SAAA;AAAA,QAAS,uBACMM,gBAAiBE,CAAAA,gBAAAA;AAAAA,QAAgB,qBACnCF,gBAAiBK,CAAAA,eAAAA;AAAAA,QAAe,qBAChCL,gBAAiBC,CAAAA,eAAAA;AAAAA,QAAe,qBAChCD,gBAAiBG,CAAAA,eAAAA;AAAAA,QAAe,cACvCH,gBAAiBO,CAAAA,SAAAA;AAAAA,QAAS,OAAA,EAC/BgB,gBAAgBG,KAAMlB,CAAAA,KAAAA;AAAAA,QAAK,UACxBsB,EAAAA,YAAAA;AAAAA,OAAY,EAAA,IAAA,CAAA,EAAA,CAAA,CAAAsF,KAAAA,EAbdvG,KAAMhB,CAAAA,MAAAA,CAAOD,UAAU,CAgBpC,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,KAAA,CAAA;AAAA,GACH;AACF,CAAC;;;;"}
1
+ {"version":3,"file":"Table.mjs","sources":["../../../src/table/Table.tsx"],"sourcesContent":["import {\n computed,\n defineComponent,\n nextTick,\n PropType,\n ref,\n watch,\n watchEffect\n} from \"vue\";\nimport { Pagination, Space, Table } from \"ant-design-vue\";\nimport { useEleHeight } from \"../_utils/html\";\nimport { prefixName } from \"../theme\";\n\nimport type { TableProps, Key } from \"./interface/table\";\n/**\n * 表格组件 基于TSX封装ATable\n */\nconst tableProps = () => {\n return {\n data: {\n type: Object as PropType<TableProps[\"data\"]>,\n required: true\n },\n height: {\n type: Number as PropType<TableProps[\"height\"]>,\n default: 300\n },\n keys: Array as PropType<TableProps[\"keys\"]>,\n rowKey: {\n type: String as PropType<TableProps[\"rowKey\"]>,\n default: \"id\"\n },\n loading: {\n type: Boolean as PropType<TableProps[\"loading\"]>,\n default: false\n },\n pagination: {\n type: Object as PropType<TableProps[\"pagination\"]>,\n default: () => ({})\n },\n config: {\n type: Object as PropType<TableProps[\"config\"]>,\n default: () => ({})\n },\n expandedRowKeys: {\n type: Object as PropType<TableProps[\"expandedRowKeys\"]>,\n default: () => []\n },\n defaultExpandAllRows: Boolean as PropType<\n TableProps[\"defaultExpandAllRows\"]\n >,\n default: () => true\n };\n};\n\n// 使用有问题\n// const tableEmits = defineEmits<{\n// \"update:keys\": (keys: []) => void;\n// }>();\n// interface MyEvents {\n// [key: string]: (...args: any[]) => void;\n// \"update:keys\": (keys: []) => void;\n// }\n\n//分页默认配置\nconst paginationConfig = {\n defaultPageSize: 20,\n hideOnSinglePage: false,\n pageSizeOptions: [\"10\", \"20\", \"30\", \"40\"],\n responsive: true,\n showQuickJumper: true,\n showLessItems: true,\n showTotal: (total: number) => {\n return `总共 ${total} 条`;\n }\n};\n\n//分页class名称\nconst basePageClassName = `${prefixName}-pagination`;\n\n/**\n * 表格组件定义\n */\nconst DXTable = defineComponent({\n name: \"DTable\",\n props: tableProps(),\n // emits: { \"update:keys\": (keys: []) => void }\n // TODO 需要做调整\n emits: [\"update:keys\"],\n setup: function (props, { emit, slots }) {\n // 保存选中的唯一id\n const selectedRowKeys = ref<any>(props.keys || []);\n // 数据源\n const dataSource = computed(() => props.data);\n // 表格列\n const columns = computed(() => props.config?.columns ?? []);\n const paginationState = computed(\n () => props.config?.pagination ?? ({} as any)\n );\n // 展开行\n // eslint-disable-next-line vue/no-setup-props-destructure\n const expandedKeys = ref<any>(props.expandedRowKeys);\n // 分页条数配置\n paginationConfig.pageSizeOptions =\n props.config?.pageOptions?.sizeOptions ??\n paginationConfig.pageSizeOptions;\n\n watchEffect(() => {\n const { expandedRowKeys } = props;\n expandedKeys.value = expandedRowKeys;\n });\n\n // 初始化表格\n const {\n tableRef,\n tableRootRef,\n tableHeight,\n onPageChange,\n onRowClassName\n } = useTable();\n\n function useTable() {\n const {\n rowClassName,\n keepSelected,\n onPageChange: onChange\n } = props.config;\n\n const selection = props.config.selection ?? \"N\";\n\n // 表格根div\n const tableRootRef = ref<HTMLElement>();\n // 表格组件对象\n const tableRef = ref<any>(null);\n // 表格计算出来的高度\n const tableHeight = ref<number>();\n // 表格body对象\n const antTableBodyRef = ref<any>(null);\n // 计算高度\n const playHeight = (height: number) => {\n try {\n const tableEl = tableRef?.value?.$el;\n\n const headerHeight = useEleHeight(\n tableEl.getElementsByClassName(\"ant-table-header\")[0]\n );\n // 获取分页组件高度\n let paginationHeight = 0;\n if (props.config.pagination) {\n const paginationEl =\n tableRootRef.value?.getElementsByClassName(basePageClassName)[0];\n paginationHeight = useEleHeight(paginationEl as any) ?? 0;\n }\n tableHeight.value = height - (headerHeight + paginationHeight);\n // 设置body高度\n tableEl.getElementsByClassName(\"ant-table-body\")[0].style.height =\n tableHeight.value + \"px\";\n // 表格body对象 用于切换页码后滚动条置顶\n antTableBodyRef.value =\n tableEl.getElementsByClassName(\"ant-table-body\")[0];\n } catch (e) {\n console.warn(e);\n }\n };\n //监听传入的height的变化 默认组件创建的时候会执行一次\n watchEffect(() => {\n if (props.height !== 0) {\n nextTick(() => {\n // 必须在组件挂载成功后 执行计算高度 否则无法正确获取元素的高度\n setTimeout(() => {\n // 如果表格头 有多行的清空下,获取到的头部高度不对,需要延迟执行获取高度方法\n playHeight(props.height);\n }, 10);\n });\n }\n });\n // 监听分页组件\n const onPageChange = (page: number, size: number) => {\n onChange ? onChange({ page, size }) : null;\n // 切换分页的时候,表体滚动到顶部\n antTableBodyRef.value.scrollTop = 0;\n // 如果当前为单选或未开启分页保留数据选中的数据都会被清除\n // 清空历史选中数据\n if (selection === \"S\" || !keepSelected) {\n selectedRowKeys.value = [];\n emit(\"update:keys\", selectedRowKeys.value);\n }\n };\n //自定义样式\n const onRowClassName = (record: any, index: number) => {\n return rowClassName ? rowClassName(record, index) : undefined;\n };\n return {\n tableRef,\n tableRootRef,\n tableHeight,\n onPageChange,\n onRowClassName\n };\n }\n\n //表格选中配置\n const rowSelection = useRowSelection();\n\n function useRowSelection() {\n const {\n rowKey,\n config: { getCheckboxProps }\n } = props;\n\n let localSelection = props.config.selection ?? \"N\";\n //if (selection === \"N\") return undefined;\n\n const onSelect = (record: any, selected: any) => {\n if (localSelection === \"S\") {\n selectedRowKeys.value = [];\n selectedRowKeys.value = selected ? [record[rowKey]] : [];\n } else {\n selectedRowKeys.value = selected\n ? selectedRowKeys.value.concat(record[rowKey])\n : selectedRowKeys.value.filter(\n (key: Key) => key !== record[rowKey]\n );\n }\n emit(\"update:keys\", selectedRowKeys.value);\n };\n\n const onSelectAll = (\n selected: any,\n selectedRows: any,\n changeRows: any\n ) => {\n const _ids = changeRows.map((record: any) => record[rowKey]);\n selectedRowKeys.value = selected\n ? selectedRowKeys.value.concat(_ids)\n : selectedRowKeys.value.filter((key: Key) => !_ids.includes(key));\n\n emit(\"update:keys\", selectedRowKeys.value);\n };\n\n // 监听父组件手动改变keys 重新赋值给 表格选中变量selectedRowKeys\n // 否则父组件 改变keys后当前selectedRowKeys还是原来的值\n watch(\n () => props.keys,\n (val) => {\n selectedRowKeys.value = val;\n }\n );\n\n const rowSelection = ref<any>(undefined);\n\n watchEffect(() => {\n const { selection } = props.config;\n localSelection = selection as any;\n if (localSelection !== \"N\") {\n rowSelection.value = {\n selectedRowKeys,\n onSelect,\n onSelectAll,\n fixed: true,\n columnTitle: localSelection === \"S\" ? \"选择\" : null,\n columnWidth: localSelection === \"S\" ? 60 : 40,\n getCheckboxProps: getCheckboxProps\n };\n } else {\n rowSelection.value = undefined;\n }\n });\n\n // return {\n // selectedRowKeys,\n // onSelect,\n // onSelectAll,\n // fixed: true,\n // columnTitle: localSelection === \"S\" ? \"选择\" : null,\n // columnWidth: localSelection === \"S\" ? 60 : 40,\n // getCheckboxProps: getCheckboxProps\n // };\n return rowSelection;\n }\n\n const customRow = useCustomRow();\n\n //表格行配置\n function useCustomRow() {\n return (record: any) => {\n // 用于存储 在某个事件内双击两次 则取消单击事件业务\n let clickTimeout: any = undefined;\n const {\n rowKey,\n config: { click, dbClick, selection, getCheckboxProps }\n } = props as any;\n\n // 当前点击行的唯一ID,通过rowKey从record中取值\n const id = record[rowKey];\n\n /**\n * 处理单击事件业务\n * @param record 当前点击行数据\n */\n const onClick = () => {\n // 获取getCheckboxProps方法,如果不等于undefined,则执行方法获取disabled的值\n // 否则checkEnable为false\n const checkEnable =\n getCheckboxProps === undefined\n ? false\n : getCheckboxProps(record).disabled;\n\n if (selection === \"N\" || checkEnable) {\n // 1. 未开启复选框 则不处理数据选中操作\n // 2. 如果当前点击的行 包含在禁用的数据项目里面 则不进行选中操作\n // 3. checkEnable 用来判断复选框属性的值,如果当前的数据满足getCheckboxProps这个\n // 方法返回的disabled为true就不执行\n // 复选框选中的操作\n return;\n }\n const haveState = selectedRowKeys.value.some(\n (key: Key) => key === id\n );\n if (haveState) {\n //如果 当前点击行的ID 已存在 那么直接过滤掉当前的id\n selectedRowKeys.value = selectedRowKeys.value.filter(\n (key: Key) => key !== id\n );\n } else {\n if (selection === \"S\") {\n //单选的时候 清空选中的数据 再赋值新的ID\n selectedRowKeys.value = [];\n selectedRowKeys.value.push(id);\n } else {\n //多选直接追加ID\n selectedRowKeys.value.push(id);\n }\n }\n emit(\"update:keys\", selectedRowKeys.value);\n };\n\n return {\n onClick: () => {\n clearTimeout(clickTimeout);\n clickTimeout = setTimeout(() => {\n // 处理单击事件业务\n onClick();\n // 回传数据 自定义单击后的业务\n click ? click(record) : undefined;\n }, 200);\n }, // 点击行\n onDblclick: () => {\n clearTimeout(clickTimeout);\n // 回传数据 自定义单击后的业务\n dbClick ? dbClick(record) : undefined;\n }\n // onContextmenu: (event) => {\n // //TODO\n // },\n // onMouseenter: (event) => {\n // //TODO\n // }, // 鼠标移入行\n // onMouseleave: (event) => {\n // //TODO\n // }\n };\n };\n }\n\n const actionStop = (event: MouseEvent) => {\n event.stopPropagation();\n };\n\n const expandRowByClick = computed(() => {\n const { selection } = props.config;\n return selection === \"N\";\n });\n const tableSlots: any = {};\n if (slots.expandedRowRender) {\n tableSlots.expandedRowRender = (record: any) => {\n return (\n <>{slots.expandedRowRender && slots.expandedRowRender(record)}</>\n );\n };\n }\n const summary = () => {\n return <>{slots.summary && slots.summary()}</>;\n };\n\n return () => (\n <div ref={tableRootRef} style={{ height: \"100%\" }}>\n <Table\n ref={tableRef}\n row-key={props.rowKey}\n bordered={props.config.bordered}\n columns={columns.value}\n dataSource={dataSource.value}\n loading={props.loading}\n size={props.config?.size ?? \"small\"}\n scroll={{\n scrollToFirstRowOnChange: true,\n x: \"100%\",\n y: tableHeight.value + \"px\"\n }}\n v-model:expandedRowKeys={expandedKeys.value}\n expandRowByClick={expandRowByClick.value}\n defaultExpandAllRows={props.defaultExpandAllRows}\n pagination={false}\n customRow={customRow}\n rowSelection={rowSelection.value}\n rowClassName={onRowClassName}\n >\n {{\n bodyCell: ({ column, record }: any) => {\n if (column.slot === \"action\") {\n return (\n <div onClick={actionStop} onDblclick={actionStop}>\n <Space>{slots.action && slots.action(record)}</Space>\n </div>\n );\n }\n },\n ...tableSlots,\n // 总结栏插槽\n summary: summary\n }}\n </Table>\n <Pagination\n v-show={props.config.pagination}\n class={[basePageClassName]}\n v-model:current={paginationState.value.current}\n v-model:pageSize={paginationState.value.pageSize}\n disabled={props.loading}\n show-size-changer\n size={\"default\"}\n hide-on-single-page={paginationConfig.hideOnSinglePage}\n show-quick-jumper={paginationConfig.showQuickJumper}\n default-page-size={paginationConfig.defaultPageSize}\n page-size-options={paginationConfig.pageSizeOptions}\n show-total={paginationConfig.showTotal}\n total={paginationState.value.total}\n onChange={onPageChange}\n />\n </div>\n );\n }\n});\n\nexport default DXTable;\n"],"names":["tableProps","data","type","Object","required","height","Number","default","keys","Array","rowKey","String","loading","Boolean","pagination","config","expandedRowKeys","defaultExpandAllRows","paginationConfig","defaultPageSize","hideOnSinglePage","pageSizeOptions","responsive","showQuickJumper","showLessItems","showTotal","total","basePageClassName","prefixName","DXTable","name","props","emits","setup","emit","slots","selectedRowKeys","ref","dataSource","computed","columns","paginationState","expandedKeys","pageOptions","sizeOptions","watchEffect","value","tableRef","tableRootRef","tableHeight","onPageChange","onRowClassName","useTable","rowClassName","keepSelected","onChange","selection","antTableBodyRef","playHeight","tableEl","$el","headerHeight","useEleHeight","getElementsByClassName","paginationHeight","paginationEl","style","e","console","warn","nextTick","setTimeout","page","size","scrollTop","record","index","undefined","rowSelection","useRowSelection","getCheckboxProps","localSelection","onSelect","selected","concat","filter","key","onSelectAll","selectedRows","changeRows","_ids","map","includes","watch","val","fixed","columnTitle","columnWidth","customRow","useCustomRow","clickTimeout","click","dbClick","id","onClick","checkEnable","disabled","haveState","some","push","clearTimeout","onDblclick","actionStop","event","stopPropagation","expandRowByClick","tableSlots","expandedRowRender","_createVNode","_Fragment","summary","Table","bordered","scrollToFirstRowOnChange","x","y","$event","bodyCell","column","slot","Space","action","_withDirectives","Pagination","current","pageSize","_vShow"],"mappings":"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"}
@@ -2,35 +2,36 @@ export type Key = string | number;
2
2
  export type SelectionType = "N" | "S" | "M";
3
3
  export type SizeType = "small" | "middle" | "middle";
4
4
  export interface Config {
5
- [key: string]: any;
6
- bordered?: boolean;
7
- columns?: any;
8
- size?: SizeType;
9
- selection?: SelectionType;
10
- keepSelected?: boolean;
11
- pagination?: Pagination;
12
- onPageChange?: (paging: {
13
- page: number;
14
- size: number;
15
- }) => void;
16
- rowClassName?: (record: any, index: number) => any;
17
- click?: (record: unknown) => void;
18
- dbClick?: (record: any) => void;
19
- getCheckboxProps?: (record: any) => any;
5
+ [key: string]: any;
6
+ bordered?: boolean;
7
+ columns?: any;
8
+ size?: SizeType;
9
+ selection?: SelectionType;
10
+ keepSelected?: boolean;
11
+ pagination?: Pagination;
12
+ onPageChange?: (paging: { page: number; size: number }) => void;
13
+ rowClassName?: (record: any, index: number) => any;
14
+ click?: (record: unknown) => void;
15
+ dbClick?: (record: any) => void;
16
+ getCheckboxProps?: (record: any) => any;
17
+ pageOptions: {
18
+ sizeOptions: string[];
19
+ defaultSize: string;
20
+ };
20
21
  }
21
22
  export interface Pagination {
22
- total: number;
23
- current: number;
24
- pageSize: number;
23
+ total: number;
24
+ current: number;
25
+ pageSize: number;
25
26
  }
26
27
  export interface TableProps {
27
- keys?: Key[];
28
- data: any;
29
- rowKey: string;
30
- expandedRowKeys?: string[];
31
- defaultExpandAllRows?: boolean;
32
- loading?: false;
33
- height: number;
34
- pagination?: any;
35
- config: Config;
28
+ keys?: Key[];
29
+ data: any;
30
+ rowKey: string;
31
+ expandedRowKeys?: string[];
32
+ defaultExpandAllRows?: boolean;
33
+ loading?: false;
34
+ height: number;
35
+ pagination?: any;
36
+ config: Config;
36
37
  }
@@ -1,13 +1,21 @@
1
- <script setup lang="ts"></script>
1
+ <script setup lang="ts">
2
+ import { ref } from "vue";
3
+ import Test from "./Test.vue";
4
+ const visible = ref(false);
5
+ const name = ref("");
6
+ </script>
2
7
  <template>
3
- <d-main-layout>
4
- </d-main-layout>
5
8
  <a-config-provider component-size="middle">
6
9
  <d-grid>
7
10
  <d-grid-item> 22 </d-grid-item>
8
11
  <d-grid-item> 22 </d-grid-item>
9
12
  <d-grid-item> 22 </d-grid-item>
10
13
  </d-grid>
14
+ <a-button @click="visible = true">aa</a-button>
15
+ <d-modal v-model:visible="visible">
16
+ <Test />
17
+ <a-input v-model:value="name" />
18
+ </d-modal>
11
19
  </a-config-provider>
12
20
  </template>
13
21
  <style>
@@ -0,0 +1,13 @@
1
+ <script setup lang="ts">
2
+ import { ref } from "vue";
3
+ const name = ref("");
4
+ </script>
5
+ <script lang="ts">
6
+ export default {
7
+ name: "Test"
8
+ };
9
+ </script>
10
+ <template>
11
+ <a-input v-model:value="name" />
12
+ </template>
13
+ <style scoped></style>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ditari/bsui",
3
- "version": "1.1.8",
3
+ "version": "1.1.10",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "author": "",
@@ -29,8 +29,8 @@
29
29
  "./theme/*": "./dist/style/*"
30
30
  },
31
31
  "dependencies": {
32
- "@ditari/store": "^1.0.3",
33
- "@ditari/hooks": "^1.0.3"
32
+ "@ditari/hooks": "^1.0.4",
33
+ "@ditari/store": "^1.0.4"
34
34
  },
35
35
  "peerDependencies": {
36
36
  "vue": "^3.3.4",
@@ -15,15 +15,15 @@ export default defineComponent({
15
15
  },
16
16
  visible: {
17
17
  type: Boolean,
18
- default: () => false
18
+ default: false
19
19
  },
20
20
  width: {
21
21
  type: Number,
22
- default: () => 800
22
+ default: 800
23
23
  },
24
24
  destroyOnClose: {
25
25
  type: Boolean,
26
- default: () => true
26
+ default: true
27
27
  }
28
28
  },
29
29
  emits: ["update:visible"],
@@ -98,7 +98,13 @@ const DXTable = defineComponent({
98
98
  () => props.config?.pagination ?? ({} as any)
99
99
  );
100
100
  // 展开行
101
+ // eslint-disable-next-line vue/no-setup-props-destructure
101
102
  const expandedKeys = ref<any>(props.expandedRowKeys);
103
+ // 分页条数配置
104
+ paginationConfig.pageSizeOptions =
105
+ props.config?.pageOptions?.sizeOptions ??
106
+ paginationConfig.pageSizeOptions;
107
+
102
108
  watchEffect(() => {
103
109
  const { expandedRowKeys } = props;
104
110
  expandedKeys.value = expandedRowKeys;
@@ -27,6 +27,11 @@ export interface Config {
27
27
  dbClick?: (record: any) => void;
28
28
  // 选择框的默认属性配置
29
29
  getCheckboxProps?: (record: any) => any;
30
+ // 分页配置
31
+ pageOptions: {
32
+ sizeOptions: string[];
33
+ defaultSize: string;
34
+ };
30
35
  }
31
36
 
32
37
  export interface Pagination {