@ecoding/components.antd 0.3.41 → 0.3.43

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.
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import type { FilterValue, SorterResult, TableCurrentDataSource, TablePaginationConfig } from 'antd/lib/table/interface';
2
+ import type { FilterValue, SorterResult, TableCurrentDataSource, TablePaginationConfig, TableLocale } from 'antd/lib/table/interface';
3
3
  import type { ColProps } from 'antd/lib/col';
4
4
  interface IProps {
5
5
  className?: string;
@@ -28,6 +28,7 @@ interface IProps {
28
28
  columnsTitle?: string;
29
29
  selectType?: "checkbox" | "radio";
30
30
  selectChangeHandler?: any;
31
+ locale?: TableLocale;
31
32
  }
32
33
  declare const TablePro: React.FC<IProps>;
33
34
  export default TablePro;
@@ -4,7 +4,7 @@ import { FilterOutlined, MenuOutlined } from '@ant-design/icons';
4
4
  import TableProColumns from "./columns";
5
5
  import { getDelateTargetByClassName } from "../../helpers/dom";
6
6
  import FilterHorizontal from "./filters.horizontal";
7
- const TablePro = memo(({ className, header, buttonArea, filterArea, filters, searchInputArea, loading, rowKey, dataSource, pagination, offsetY, columns, operationColumn, bordered, selectChangeHandler, selectType, onChange, expandable, columnsTitle, filterTitle }) => {
7
+ const TablePro = memo(({ className, header, buttonArea, filterArea, filters, searchInputArea, loading, rowKey, dataSource, pagination, offsetY, columns, operationColumn, bordered, selectChangeHandler, selectType, onChange, expandable, columnsTitle, filterTitle, locale }) => {
8
8
  const ref = useRef(null);
9
9
  const disColumnRef = useRef([]);
10
10
  const [y, setY] = useState('100%');
@@ -32,14 +32,44 @@ const TablePro = memo(({ className, header, buttonArea, filterArea, filters, sea
32
32
  }
33
33
  return [];
34
34
  }, [innerColumns, dataSource]);
35
- const onSelectChange = (newSelectedRowKeys) => {
36
- setSelectedRowKeys(newSelectedRowKeys);
37
- selectChangeHandler && selectChangeHandler(newSelectedRowKeys);
35
+ const onSelect = (record, selected, selectedRows, nativeEvent) => {
36
+ const key = record[rowKey];
37
+ let tempKeys = selectedRowKeys.concat([]);
38
+ if (selected) {
39
+ if (!tempKeys.includes(key)) {
40
+ tempKeys.push(key);
41
+ }
42
+ }
43
+ else {
44
+ const index = tempKeys.findIndex(item => item == key);
45
+ tempKeys.splice(index, 1);
46
+ }
47
+ setSelectedRowKeys(tempKeys);
48
+ selectChangeHandler && selectChangeHandler(tempKeys);
49
+ };
50
+ const onSelectAll = (selected, selectedRows, changeRows) => {
51
+ let tempKeys = selectedRowKeys.concat([]);
52
+ changeRows && changeRows.forEach(rows => {
53
+ const key = rows[rowKey];
54
+ if (selected) {
55
+ if (!tempKeys.includes(key)) {
56
+ tempKeys.push(key);
57
+ }
58
+ }
59
+ else {
60
+ const index = tempKeys.findIndex(item => item == key);
61
+ tempKeys.splice(index, 1);
62
+ }
63
+ });
64
+ setSelectedRowKeys(tempKeys);
65
+ selectChangeHandler && selectChangeHandler(tempKeys);
38
66
  };
39
67
  const rowSelection = {
40
68
  type: selectType,
41
69
  selectedRowKeys,
42
- onChange: onSelectChange,
70
+ onSelect: onSelect,
71
+ onSelectAll: onSelectAll
72
+ // onChange: onSelectChange
43
73
  };
44
74
  useEffect(() => {
45
75
  if (disColumnRef.current && disColumnRef.current.length > 0 && columns.length > 0) {
@@ -66,6 +96,7 @@ const TablePro = memo(({ className, header, buttonArea, filterArea, filters, sea
66
96
  }
67
97
  else {
68
98
  if (ref.current && thead) {
99
+ console.log(ref.current.clientHeight);
69
100
  setY(ref.current.clientHeight - (thead.clientHeight && thead.clientHeight + (pagination ? 64 : 20)));
70
101
  }
71
102
  }
@@ -88,7 +119,7 @@ const TablePro = memo(({ className, header, buttonArea, filterArea, filters, sea
88
119
  } },
89
120
  React.createElement(Button, { type: "text", icon: React.createElement(MenuOutlined, null) }, columnsTitle))) : null)),
90
121
  dataSource ? (React.createElement("div", { style: { height: '100%', overflow: 'hidden' }, ref: ref },
91
- React.createElement(Table, { rowSelection: selectType ? rowSelection : undefined, onRow: (record, index) => {
122
+ React.createElement(Table, { rowSelection: selectType ? rowSelection : undefined, locale: locale ? locale : undefined, onRow: (record, index) => {
92
123
  return {
93
124
  onClick: (e) => {
94
125
  const parent = getDelateTargetByClassName(e.target, "ant-table-tbody");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ecoding/components.antd",
3
- "version": "0.3.41",
3
+ "version": "0.3.43",
4
4
  "author": "cxc",
5
5
  "homepage": "",
6
6
  "license": "MIT",
@@ -43,5 +43,5 @@
43
43
  "antd": "^5.8.4",
44
44
  "axios": "^1.1.2"
45
45
  },
46
- "gitHead": "579781847632dbd4b54cb6a401c12df15d05893b"
46
+ "gitHead": "3dbaf40b36e4ef1547381e52dd45eb5a66d51745"
47
47
  }