@hw-component/table 0.0.4-beta-v19 → 0.0.5-beta-v1

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,9 +1,8 @@
1
- interface IRowSelectionTitleProps {
2
- allPageCheck?: boolean;
3
- }
4
- export declare const RowSelectionTitle: ({ allPageCheck, }: IRowSelectionTitleProps) => JSX.Element;
1
+ import { HRowSelection } from "../modal";
2
+ export declare const RowSelectionTitle: ({ allPageCheck, onChange }: HRowSelection) => JSX.Element;
5
3
  interface RowSelectionBoxProps {
6
4
  data: any;
5
+ onChange?: HRowSelection["onChange"];
7
6
  }
8
- export declare const RowSelectionBox: ({ data }: RowSelectionBoxProps) => JSX.Element;
7
+ export declare const RowSelectionBox: ({ data, onChange }: RowSelectionBoxProps) => JSX.Element;
9
8
  export {};
@@ -11,7 +11,8 @@ import { useMemo } from 'react';
11
11
 
12
12
  var RowSelectionTitle = function RowSelectionTitle(_ref) {
13
13
  var _ref$allPageCheck = _ref.allPageCheck,
14
- allPageCheck = _ref$allPageCheck === void 0 ? true : _ref$allPageCheck;
14
+ allPageCheck = _ref$allPageCheck === void 0 ? true : _ref$allPageCheck,
15
+ onChange = _ref.onChange;
15
16
  var _useHTableContext = useHTableContext(),
16
17
  data = _useHTableContext.data,
17
18
  selectedRowData = _useHTableContext.selectedRowData,
@@ -29,9 +30,11 @@ var RowSelectionTitle = function RowSelectionTitle(_ref) {
29
30
  return item[rowKey];
30
31
  });
31
32
  rowOnChange(setKeys, records);
33
+ onChange === null || onChange === void 0 || onChange(setKeys, records);
32
34
  };
33
35
  var allCancel = function allCancel() {
34
36
  rowOnChange([], []);
37
+ onChange === null || onChange === void 0 || onChange([], []);
35
38
  };
36
39
  var checkChange = function checkChange(e) {
37
40
  var checked = e.target.checked;
@@ -53,9 +56,11 @@ var RowSelectionTitle = function RowSelectionTitle(_ref) {
53
56
  }
54
57
  if (key === "checkAll") {
55
58
  allSelectChange === null || allSelectChange === void 0 || allSelectChange(true);
59
+ onChange === null || onChange === void 0 || onChange([], []);
56
60
  return;
57
61
  }
58
62
  allSelectChange === null || allSelectChange === void 0 || allSelectChange(false);
63
+ onChange === null || onChange === void 0 || onChange([], []);
59
64
  };
60
65
  var len = (keys === null || keys === void 0 ? void 0 : keys.length) || 0;
61
66
  var dataLen = (records === null || records === void 0 ? void 0 : records.length) || 0;
@@ -105,7 +110,8 @@ var RowSelectionTitle = function RowSelectionTitle(_ref) {
105
110
  });
106
111
  };
107
112
  var RowSelectionBox = function RowSelectionBox(_ref4) {
108
- var data = _ref4.data;
113
+ var data = _ref4.data,
114
+ onChange = _ref4.onChange;
109
115
  var _useHTableContext2 = useHTableContext(),
110
116
  selectedRowData = _useHTableContext2.selectedRowData,
111
117
  rowOnChange = _useHTableContext2.rowOnChange,
@@ -124,11 +130,14 @@ var RowSelectionBox = function RowSelectionBox(_ref4) {
124
130
  newKeys.push(key);
125
131
  newRowData.push(data);
126
132
  rowOnChange(newKeys, newRowData);
133
+ onChange === null || onChange === void 0 || onChange(newKeys, newRowData);
127
134
  return;
128
135
  }
129
136
  var index = _indexOfInstanceProperty(newKeys).call(newKeys, key);
130
137
  _spliceInstanceProperty(newKeys).call(newKeys, index, 1);
131
138
  _spliceInstanceProperty(newRowData).call(newRowData, index, 1);
139
+ rowOnChange(newKeys, newRowData);
140
+ onChange === null || onChange === void 0 || onChange(newKeys, newRowData);
132
141
  };
133
142
  return jsx(Checkbox, {
134
143
  checked: _indexOfInstanceProperty(keys).call(keys, key) !== -1,
@@ -830,7 +830,7 @@ export declare const useCols: ({ configData, rowSelection, table }: HTableProps)
830
830
  request?: import("@ant-design/pro-utils").ProFieldRequestData | undefined;
831
831
  width?: number | undefined;
832
832
  } | undefined) | undefined;
833
- fieldProps?: (import("antd").CascaderProps<any> | Record<string, any> | import("antd").InputProps | import("antd/lib/input").PasswordProps | import("antd/lib/input").TextAreaProps | import("antd").DatePickerProps | import("antd/lib/date-picker").RangePickerProps | import("antd").TimeRangePickerProps | import("antd").SelectProps<any, import("rc-select/lib/Select").DefaultOptionType> | import("antd").CheckboxProps | import("antd").RateProps | import("antd").RadioProps | import("antd").ProgressProps | import("antd").InputNumberProps<string | number> | import("antd").AvatarProps | import("antd").SwitchProps | import("rc-image").ImageProps | import("antd").TreeSelectProps<any, import("rc-tree-select/lib/TreeSelect").DefaultOptionType> | (import("react-color").SketchPickerProps & {
833
+ fieldProps?: (import("antd").CascaderProps<any> | Record<string, any> | import("antd").InputProps | import("antd").CheckboxProps | import("antd").RadioProps | import("antd/lib/input").PasswordProps | import("antd/lib/input").TextAreaProps | import("antd").DatePickerProps | import("antd/lib/date-picker").RangePickerProps | import("antd").TimeRangePickerProps | import("antd").SelectProps<any, import("rc-select/lib/Select").DefaultOptionType> | import("antd").RateProps | import("antd").ProgressProps | import("antd").InputNumberProps<string | number> | import("antd").AvatarProps | import("antd").SwitchProps | import("rc-image").ImageProps | import("antd").TreeSelectProps<any, import("rc-tree-select/lib/TreeSelect").DefaultOptionType> | (import("react-color").SketchPickerProps & {
834
834
  value?: string | undefined;
835
835
  popoverProps?: import("antd").PopoverProps | undefined;
836
836
  mode?: "read" | "edit" | undefined;
@@ -1150,7 +1150,7 @@ export declare const useCols: ({ configData, rowSelection, table }: HTableProps)
1150
1150
  rowKey?: string | undefined;
1151
1151
  rowIndex: number;
1152
1152
  entity: any;
1153
- }) => import("antd").CascaderProps<any> | Record<string, any> | import("antd").InputProps | import("antd/lib/input").PasswordProps | import("antd/lib/input").TextAreaProps | import("antd").DatePickerProps | import("antd/lib/date-picker").RangePickerProps | import("antd").TimeRangePickerProps | import("antd").SelectProps<any, import("rc-select/lib/Select").DefaultOptionType> | import("antd").CheckboxProps | import("antd").RateProps | import("antd").RadioProps | import("antd").ProgressProps | import("antd").InputNumberProps<string | number> | import("antd").AvatarProps | import("antd").SwitchProps | import("rc-image").ImageProps | import("antd").TreeSelectProps<any, import("rc-tree-select/lib/TreeSelect").DefaultOptionType> | (import("react-color").SketchPickerProps & {
1153
+ }) => import("antd").CascaderProps<any> | Record<string, any> | import("antd").InputProps | import("antd").CheckboxProps | import("antd").RadioProps | import("antd/lib/input").PasswordProps | import("antd/lib/input").TextAreaProps | import("antd").DatePickerProps | import("antd/lib/date-picker").RangePickerProps | import("antd").TimeRangePickerProps | import("antd").SelectProps<any, import("rc-select/lib/Select").DefaultOptionType> | import("antd").RateProps | import("antd").ProgressProps | import("antd").InputNumberProps<string | number> | import("antd").AvatarProps | import("antd").SwitchProps | import("rc-image").ImageProps | import("antd").TreeSelectProps<any, import("rc-tree-select/lib/TreeSelect").DefaultOptionType> | (import("react-color").SketchPickerProps & {
1154
1154
  value?: string | undefined;
1155
1155
  popoverProps?: import("antd").PopoverProps | undefined;
1156
1156
  mode?: "read" | "edit" | undefined;
@@ -19,10 +19,14 @@ import { RowSelectionTitle, RowSelectionBox } from './RowSelection.js';
19
19
 
20
20
  function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
21
21
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
22
- var rowSelectionCol = function rowSelectionCol(allPageCheck) {
22
+ var rowSelectionCol = function rowSelectionCol(rowSelection) {
23
+ var _ref = rowSelection || {},
24
+ allPageCheck = _ref.allPageCheck,
25
+ onChange = _ref.onChange;
23
26
  return {
24
27
  title: jsx(RowSelectionTitle, {
25
- allPageCheck: allPageCheck
28
+ allPageCheck: allPageCheck,
29
+ onChange: onChange
26
30
  }),
27
31
  dataIndex: "rowSelectionTitle",
28
32
  width: 32,
@@ -33,16 +37,14 @@ var rowSelectionCol = function rowSelectionCol(allPageCheck) {
33
37
  }
34
38
  };
35
39
  };
36
- var useCols = function useCols(_ref) {
37
- var configData = _ref.configData,
38
- rowSelection = _ref.rowSelection,
39
- table = _ref.table;
40
+ var useCols = function useCols(_ref2) {
41
+ var configData = _ref2.configData,
42
+ rowSelection = _ref2.rowSelection,
43
+ table = _ref2.table;
40
44
  return useMemo(function () {
41
45
  var colsArray = _toConsumableArray(configData);
42
46
  if (rowSelection !== false) {
43
- var _ref2 = rowSelection || {},
44
- allPageCheck = _ref2.allPageCheck;
45
- _spliceInstanceProperty(colsArray).call(colsArray, 0, 0, rowSelectionCol(allPageCheck));
47
+ _spliceInstanceProperty(colsArray).call(colsArray, 0, 0, rowSelectionCol(rowSelection));
46
48
  }
47
49
  return _mapInstanceProperty(colsArray).call(colsArray, function (item) {
48
50
  var _render = item.render;
@@ -2,7 +2,8 @@ import type { ProTableProps } from "@ant-design/pro-table";
2
2
  import type { ActionRenderFn, ConfigDataModal, ParamsModal } from "../modal";
3
3
  import React from "react";
4
4
  import type { HTableInstance } from "../modal";
5
- interface HTableBodyProps extends Omit<ProTableProps<any, any>, "dataSource"> {
5
+ import { HRowSelection } from "../modal";
6
+ interface HTableBodyProps extends Omit<ProTableProps<any, any>, "dataSource" | "rowSelection"> {
6
7
  configData?: ConfigDataModal;
7
8
  onPageChange?: (params: ParamsModal) => void;
8
9
  emptyRender?: (tableInstance: HTableInstance) => React.ReactNode;
@@ -10,6 +11,7 @@ interface HTableBodyProps extends Omit<ProTableProps<any, any>, "dataSource"> {
10
11
  tableStyle?: React.CSSProperties;
11
12
  paginationStyle?: React.CSSProperties;
12
13
  actionRender?: ActionRenderFn;
14
+ rowSelection?: HRowSelection;
13
15
  }
14
16
  declare const _default: ({ configData, pagination, onPageChange, rowSelection, rowKey, emptyRender, errorRender, tableStyle, paginationStyle, headerTitle, options, actionRender, ...props }: HTableBodyProps) => JSX.Element;
15
17
  export default _default;
package/es/modal.d.ts CHANGED
@@ -4,6 +4,7 @@ import type { HItemProps, HFormInstance } from "@hw-component/form/es/Form/modal
4
4
  import type { ColProps } from "antd";
5
5
  import type React from "react";
6
6
  import type { ModalProps } from "antd";
7
+ import { TableProps } from "antd/lib/table";
7
8
  export interface RowObj {
8
9
  keys?: React.Key[];
9
10
  rowData?: any[];
@@ -33,7 +34,9 @@ export type actionFn = (...arg: any[]) => void;
33
34
  export interface RowSelectionOuter {
34
35
  allPageCheck?: boolean;
35
36
  }
36
- export type HRowSelection = RowSelectionOuter & ProTableProps<any, any>["rowSelection"];
37
+ export type HRowSelection = RowSelectionOuter & (TableProps<any>['rowSelection'] & {
38
+ alwaysShowAlert?: boolean;
39
+ });
37
40
  export interface HTableProps extends Omit<ProTableProps<any, any>, "request" | "dataSource" | "rowKey" | "rowSelection"> {
38
41
  request?: (params: ParamsModal) => Promise<ResultModal>;
39
42
  configData: ConfigDataModal;
@@ -55,7 +58,7 @@ export interface HTableProps extends Omit<ProTableProps<any, any>, "request" | "
55
58
  paginationStyle?: React.CSSProperties;
56
59
  rowKey?: string;
57
60
  allPageCheck?: boolean;
58
- rowSelection?: HRowSelection;
61
+ rowSelection?: HRowSelection | false;
59
62
  }
60
63
  export interface TableInstance {
61
64
  reload: (params?: ParamsModal) => Promise<any>;
@@ -1,9 +1,8 @@
1
- interface IRowSelectionTitleProps {
2
- allPageCheck?: boolean;
3
- }
4
- export declare const RowSelectionTitle: ({ allPageCheck, }: IRowSelectionTitleProps) => JSX.Element;
1
+ import { HRowSelection } from "../modal";
2
+ export declare const RowSelectionTitle: ({ allPageCheck, onChange }: HRowSelection) => JSX.Element;
5
3
  interface RowSelectionBoxProps {
6
4
  data: any;
5
+ onChange?: HRowSelection["onChange"];
7
6
  }
8
- export declare const RowSelectionBox: ({ data }: RowSelectionBoxProps) => JSX.Element;
7
+ export declare const RowSelectionBox: ({ data, onChange }: RowSelectionBoxProps) => JSX.Element;
9
8
  export {};
@@ -12,7 +12,8 @@ var React = require('react');
12
12
 
13
13
  var RowSelectionTitle = function RowSelectionTitle(_ref) {
14
14
  var _ref$allPageCheck = _ref.allPageCheck,
15
- allPageCheck = _ref$allPageCheck === void 0 ? true : _ref$allPageCheck;
15
+ allPageCheck = _ref$allPageCheck === void 0 ? true : _ref$allPageCheck,
16
+ onChange = _ref.onChange;
16
17
  var _useHTableContext = context.useHTableContext(),
17
18
  data = _useHTableContext.data,
18
19
  selectedRowData = _useHTableContext.selectedRowData,
@@ -30,9 +31,11 @@ var RowSelectionTitle = function RowSelectionTitle(_ref) {
30
31
  return item[rowKey];
31
32
  });
32
33
  rowOnChange(setKeys, records);
34
+ onChange === null || onChange === void 0 || onChange(setKeys, records);
33
35
  };
34
36
  var allCancel = function allCancel() {
35
37
  rowOnChange([], []);
38
+ onChange === null || onChange === void 0 || onChange([], []);
36
39
  };
37
40
  var checkChange = function checkChange(e) {
38
41
  var checked = e.target.checked;
@@ -54,9 +57,11 @@ var RowSelectionTitle = function RowSelectionTitle(_ref) {
54
57
  }
55
58
  if (key === "checkAll") {
56
59
  allSelectChange === null || allSelectChange === void 0 || allSelectChange(true);
60
+ onChange === null || onChange === void 0 || onChange([], []);
57
61
  return;
58
62
  }
59
63
  allSelectChange === null || allSelectChange === void 0 || allSelectChange(false);
64
+ onChange === null || onChange === void 0 || onChange([], []);
60
65
  };
61
66
  var len = (keys === null || keys === void 0 ? void 0 : keys.length) || 0;
62
67
  var dataLen = (records === null || records === void 0 ? void 0 : records.length) || 0;
@@ -106,7 +111,8 @@ var RowSelectionTitle = function RowSelectionTitle(_ref) {
106
111
  });
107
112
  };
108
113
  var RowSelectionBox = function RowSelectionBox(_ref4) {
109
- var data = _ref4.data;
114
+ var data = _ref4.data,
115
+ onChange = _ref4.onChange;
110
116
  var _useHTableContext2 = context.useHTableContext(),
111
117
  selectedRowData = _useHTableContext2.selectedRowData,
112
118
  rowOnChange = _useHTableContext2.rowOnChange,
@@ -125,11 +131,14 @@ var RowSelectionBox = function RowSelectionBox(_ref4) {
125
131
  newKeys.push(key);
126
132
  newRowData.push(data);
127
133
  rowOnChange(newKeys, newRowData);
134
+ onChange === null || onChange === void 0 || onChange(newKeys, newRowData);
128
135
  return;
129
136
  }
130
137
  var index = _indexOfInstanceProperty(newKeys).call(newKeys, key);
131
138
  _spliceInstanceProperty(newKeys).call(newKeys, index, 1);
132
139
  _spliceInstanceProperty(newRowData).call(newRowData, index, 1);
140
+ rowOnChange(newKeys, newRowData);
141
+ onChange === null || onChange === void 0 || onChange(newKeys, newRowData);
133
142
  };
134
143
  return jsxRuntime.jsx(antd.Checkbox, {
135
144
  checked: _indexOfInstanceProperty(keys).call(keys, key) !== -1,
@@ -830,7 +830,7 @@ export declare const useCols: ({ configData, rowSelection, table }: HTableProps)
830
830
  request?: import("@ant-design/pro-utils").ProFieldRequestData | undefined;
831
831
  width?: number | undefined;
832
832
  } | undefined) | undefined;
833
- fieldProps?: (import("antd").CascaderProps<any> | Record<string, any> | import("antd").InputProps | import("antd/lib/input").PasswordProps | import("antd/lib/input").TextAreaProps | import("antd").DatePickerProps | import("antd/lib/date-picker").RangePickerProps | import("antd").TimeRangePickerProps | import("antd").SelectProps<any, import("rc-select/lib/Select").DefaultOptionType> | import("antd").CheckboxProps | import("antd").RateProps | import("antd").RadioProps | import("antd").ProgressProps | import("antd").InputNumberProps<string | number> | import("antd").AvatarProps | import("antd").SwitchProps | import("rc-image").ImageProps | import("antd").TreeSelectProps<any, import("rc-tree-select/lib/TreeSelect").DefaultOptionType> | (import("react-color").SketchPickerProps & {
833
+ fieldProps?: (import("antd").CascaderProps<any> | Record<string, any> | import("antd").InputProps | import("antd").CheckboxProps | import("antd").RadioProps | import("antd/lib/input").PasswordProps | import("antd/lib/input").TextAreaProps | import("antd").DatePickerProps | import("antd/lib/date-picker").RangePickerProps | import("antd").TimeRangePickerProps | import("antd").SelectProps<any, import("rc-select/lib/Select").DefaultOptionType> | import("antd").RateProps | import("antd").ProgressProps | import("antd").InputNumberProps<string | number> | import("antd").AvatarProps | import("antd").SwitchProps | import("rc-image").ImageProps | import("antd").TreeSelectProps<any, import("rc-tree-select/lib/TreeSelect").DefaultOptionType> | (import("react-color").SketchPickerProps & {
834
834
  value?: string | undefined;
835
835
  popoverProps?: import("antd").PopoverProps | undefined;
836
836
  mode?: "read" | "edit" | undefined;
@@ -1150,7 +1150,7 @@ export declare const useCols: ({ configData, rowSelection, table }: HTableProps)
1150
1150
  rowKey?: string | undefined;
1151
1151
  rowIndex: number;
1152
1152
  entity: any;
1153
- }) => import("antd").CascaderProps<any> | Record<string, any> | import("antd").InputProps | import("antd/lib/input").PasswordProps | import("antd/lib/input").TextAreaProps | import("antd").DatePickerProps | import("antd/lib/date-picker").RangePickerProps | import("antd").TimeRangePickerProps | import("antd").SelectProps<any, import("rc-select/lib/Select").DefaultOptionType> | import("antd").CheckboxProps | import("antd").RateProps | import("antd").RadioProps | import("antd").ProgressProps | import("antd").InputNumberProps<string | number> | import("antd").AvatarProps | import("antd").SwitchProps | import("rc-image").ImageProps | import("antd").TreeSelectProps<any, import("rc-tree-select/lib/TreeSelect").DefaultOptionType> | (import("react-color").SketchPickerProps & {
1153
+ }) => import("antd").CascaderProps<any> | Record<string, any> | import("antd").InputProps | import("antd").CheckboxProps | import("antd").RadioProps | import("antd/lib/input").PasswordProps | import("antd/lib/input").TextAreaProps | import("antd").DatePickerProps | import("antd/lib/date-picker").RangePickerProps | import("antd").TimeRangePickerProps | import("antd").SelectProps<any, import("rc-select/lib/Select").DefaultOptionType> | import("antd").RateProps | import("antd").ProgressProps | import("antd").InputNumberProps<string | number> | import("antd").AvatarProps | import("antd").SwitchProps | import("rc-image").ImageProps | import("antd").TreeSelectProps<any, import("rc-tree-select/lib/TreeSelect").DefaultOptionType> | (import("react-color").SketchPickerProps & {
1154
1154
  value?: string | undefined;
1155
1155
  popoverProps?: import("antd").PopoverProps | undefined;
1156
1156
  mode?: "read" | "edit" | undefined;
@@ -20,10 +20,14 @@ var RowSelection = require('./RowSelection.js');
20
20
 
21
21
  function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
22
22
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
23
- var rowSelectionCol = function rowSelectionCol(allPageCheck) {
23
+ var rowSelectionCol = function rowSelectionCol(rowSelection) {
24
+ var _ref = rowSelection || {},
25
+ allPageCheck = _ref.allPageCheck,
26
+ onChange = _ref.onChange;
24
27
  return {
25
28
  title: jsxRuntime.jsx(RowSelection.RowSelectionTitle, {
26
- allPageCheck: allPageCheck
29
+ allPageCheck: allPageCheck,
30
+ onChange: onChange
27
31
  }),
28
32
  dataIndex: "rowSelectionTitle",
29
33
  width: 32,
@@ -34,16 +38,14 @@ var rowSelectionCol = function rowSelectionCol(allPageCheck) {
34
38
  }
35
39
  };
36
40
  };
37
- var useCols = function useCols(_ref) {
38
- var configData = _ref.configData,
39
- rowSelection = _ref.rowSelection,
40
- table = _ref.table;
41
+ var useCols = function useCols(_ref2) {
42
+ var configData = _ref2.configData,
43
+ rowSelection = _ref2.rowSelection,
44
+ table = _ref2.table;
41
45
  return React.useMemo(function () {
42
46
  var colsArray = _toConsumableArray(configData);
43
47
  if (rowSelection !== false) {
44
- var _ref2 = rowSelection || {},
45
- allPageCheck = _ref2.allPageCheck;
46
- _spliceInstanceProperty(colsArray).call(colsArray, 0, 0, rowSelectionCol(allPageCheck));
48
+ _spliceInstanceProperty(colsArray).call(colsArray, 0, 0, rowSelectionCol(rowSelection));
47
49
  }
48
50
  return _mapInstanceProperty(colsArray).call(colsArray, function (item) {
49
51
  var _render = item.render;
@@ -2,7 +2,8 @@ import type { ProTableProps } from "@ant-design/pro-table";
2
2
  import type { ActionRenderFn, ConfigDataModal, ParamsModal } from "../modal";
3
3
  import React from "react";
4
4
  import type { HTableInstance } from "../modal";
5
- interface HTableBodyProps extends Omit<ProTableProps<any, any>, "dataSource"> {
5
+ import { HRowSelection } from "../modal";
6
+ interface HTableBodyProps extends Omit<ProTableProps<any, any>, "dataSource" | "rowSelection"> {
6
7
  configData?: ConfigDataModal;
7
8
  onPageChange?: (params: ParamsModal) => void;
8
9
  emptyRender?: (tableInstance: HTableInstance) => React.ReactNode;
@@ -10,6 +11,7 @@ interface HTableBodyProps extends Omit<ProTableProps<any, any>, "dataSource"> {
10
11
  tableStyle?: React.CSSProperties;
11
12
  paginationStyle?: React.CSSProperties;
12
13
  actionRender?: ActionRenderFn;
14
+ rowSelection?: HRowSelection;
13
15
  }
14
16
  declare const _default: ({ configData, pagination, onPageChange, rowSelection, rowKey, emptyRender, errorRender, tableStyle, paginationStyle, headerTitle, options, actionRender, ...props }: HTableBodyProps) => JSX.Element;
15
17
  export default _default;
package/lib/modal.d.ts CHANGED
@@ -4,6 +4,7 @@ import type { HItemProps, HFormInstance } from "@hw-component/form/es/Form/modal
4
4
  import type { ColProps } from "antd";
5
5
  import type React from "react";
6
6
  import type { ModalProps } from "antd";
7
+ import { TableProps } from "antd/lib/table";
7
8
  export interface RowObj {
8
9
  keys?: React.Key[];
9
10
  rowData?: any[];
@@ -33,7 +34,9 @@ export type actionFn = (...arg: any[]) => void;
33
34
  export interface RowSelectionOuter {
34
35
  allPageCheck?: boolean;
35
36
  }
36
- export type HRowSelection = RowSelectionOuter & ProTableProps<any, any>["rowSelection"];
37
+ export type HRowSelection = RowSelectionOuter & (TableProps<any>['rowSelection'] & {
38
+ alwaysShowAlert?: boolean;
39
+ });
37
40
  export interface HTableProps extends Omit<ProTableProps<any, any>, "request" | "dataSource" | "rowKey" | "rowSelection"> {
38
41
  request?: (params: ParamsModal) => Promise<ResultModal>;
39
42
  configData: ConfigDataModal;
@@ -55,7 +58,7 @@ export interface HTableProps extends Omit<ProTableProps<any, any>, "request" | "
55
58
  paginationStyle?: React.CSSProperties;
56
59
  rowKey?: string;
57
60
  allPageCheck?: boolean;
58
- rowSelection?: HRowSelection;
61
+ rowSelection?: HRowSelection | false;
59
62
  }
60
63
  export interface TableInstance {
61
64
  reload: (params?: ParamsModal) => Promise<any>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hw-component/table",
3
- "version": "0.0.4-beta-v19",
3
+ "version": "0.0.5-beta-v1",
4
4
  "description": "基于antd二次开发table组件",
5
5
  "keywords": [
6
6
  "table"
@@ -1,12 +1,11 @@
1
1
  import { useHTableContext } from "../context";
2
2
  import { Checkbox, Dropdown, Menu } from "antd";
3
3
  import { useMemo } from "react";
4
- interface IRowSelectionTitleProps {
5
- allPageCheck?: boolean;
6
- }
4
+ import {HRowSelection} from "../modal";
7
5
  export const RowSelectionTitle = ({
8
6
  allPageCheck = true,
9
- }: IRowSelectionTitleProps) => {
7
+ onChange
8
+ }: HRowSelection) => {
10
9
  const {
11
10
  data,
12
11
  selectedRowData,
@@ -21,9 +20,11 @@ export const RowSelectionTitle = ({
21
20
  return item[rowKey];
22
21
  });
23
22
  rowOnChange(setKeys, records);
23
+ onChange?.(setKeys,records);
24
24
  };
25
25
  const allCancel = () => {
26
26
  rowOnChange([], []);
27
+ onChange?.([],[]);
27
28
  };
28
29
  const checkChange = (e) => {
29
30
  const checked = e.target.checked;
@@ -44,9 +45,11 @@ export const RowSelectionTitle = ({
44
45
  }
45
46
  if (key === "checkAll") {
46
47
  allSelectChange?.(true);
48
+ onChange?.([],[]);
47
49
  return;
48
50
  }
49
51
  allSelectChange?.(false);
52
+ onChange?.([],[]);
50
53
  };
51
54
  const len = keys?.length||0;
52
55
  const dataLen=records?.length||0;
@@ -90,8 +93,9 @@ export const RowSelectionTitle = ({
90
93
 
91
94
  interface RowSelectionBoxProps {
92
95
  data: any;
96
+ onChange?:HRowSelection["onChange"]
93
97
  }
94
- export const RowSelectionBox = ({ data }: RowSelectionBoxProps) => {
98
+ export const RowSelectionBox = ({ data ,onChange}: RowSelectionBoxProps) => {
95
99
  const { selectedRowData, rowOnChange, rowKey = "id" } = useHTableContext();
96
100
  const { rowData = [], keys = [] } = selectedRowData;
97
101
  const key = data[rowKey];
@@ -103,11 +107,14 @@ export const RowSelectionBox = ({ data }: RowSelectionBoxProps) => {
103
107
  newKeys.push(key);
104
108
  newRowData.push(data);
105
109
  rowOnChange(newKeys, newRowData);
110
+ onChange?.(newKeys,newRowData);
106
111
  return;
107
112
  }
108
113
  const index = newKeys.indexOf(key);
109
114
  newKeys.splice(index, 1);
110
115
  newRowData.splice(index, 1);
116
+ rowOnChange(newKeys, newRowData);
117
+ onChange?.(newKeys,newRowData);
111
118
  };
112
119
  return <Checkbox checked={keys.indexOf(key) !== -1} onChange={check} />;
113
120
  };
@@ -4,9 +4,11 @@ import { useEffect, useMemo } from "react";
4
4
  import { useHTableContext } from "../context";
5
5
  import type { GetRowKey } from "rc-table/lib/interface";
6
6
  import { RowSelectionBox, RowSelectionTitle } from "./RowSelection";
7
- const rowSelectionCol = (allPageCheck?: boolean) => {
7
+ import {HRowSelection} from "../modal";
8
+ const rowSelectionCol = (rowSelection?:HRowSelection) => {
9
+ const { allPageCheck ,onChange} = rowSelection || {};
8
10
  return {
9
- title: <RowSelectionTitle allPageCheck={allPageCheck} />,
11
+ title: <RowSelectionTitle allPageCheck={allPageCheck} onChange={onChange}/>,
10
12
  dataIndex: "rowSelectionTitle",
11
13
  width: 32,
12
14
  render: (dom, data) => {
@@ -18,8 +20,7 @@ export const useCols = ({ configData, rowSelection, table }: HTableProps) => {
18
20
  return useMemo(() => {
19
21
  const colsArray = [...configData];
20
22
  if (rowSelection !== false) {
21
- const { allPageCheck } = rowSelection || {};
22
- colsArray.splice(0, 0, rowSelectionCol(allPageCheck));
23
+ colsArray.splice(0, 0, rowSelectionCol(rowSelection));
23
24
  }
24
25
  return colsArray.map((item) => {
25
26
  const { render } = item;
@@ -11,7 +11,8 @@ import { useHTableConfigContext } from "../TableConfig";
11
11
  import HTablePagination from "../HTablePagination";
12
12
  import { useClassName } from "../hooks";
13
13
  import AlertMsg from "./AlertMsg";
14
- interface HTableBodyProps extends Omit<ProTableProps<any, any>, "dataSource"> {
14
+ import {HRowSelection} from "../modal";
15
+ interface HTableBodyProps extends Omit<ProTableProps<any, any>, "dataSource"|"rowSelection"> {
15
16
  configData?: ConfigDataModal;
16
17
  onPageChange?: (params: ParamsModal) => void;
17
18
  emptyRender?: (tableInstance: HTableInstance) => React.ReactNode;
@@ -22,6 +23,7 @@ interface HTableBodyProps extends Omit<ProTableProps<any, any>, "dataSource"> {
22
23
  tableStyle?: React.CSSProperties;
23
24
  paginationStyle?: React.CSSProperties;
24
25
  actionRender?:ActionRenderFn
26
+ rowSelection?:HRowSelection
25
27
  }
26
28
  const defaultRender = () => {
27
29
  return <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} />;
@@ -7,6 +7,7 @@ import type {
7
7
  import type { ColProps } from "antd";
8
8
  import type React from "react";
9
9
  import type { ModalProps } from "antd";
10
+ import {TableProps} from "antd/lib/table";
10
11
 
11
12
  export interface RowObj {
12
13
  keys?: React.Key[];
@@ -57,7 +58,9 @@ export interface RowSelectionOuter {
57
58
  allPageCheck?: boolean;
58
59
  }
59
60
  export type HRowSelection = RowSelectionOuter &
60
- ProTableProps<any, any>["rowSelection"];
61
+ (TableProps<any>['rowSelection'] & {
62
+ alwaysShowAlert?: boolean;
63
+ })
61
64
  export interface HTableProps
62
65
  extends Omit<
63
66
  ProTableProps<any, any>,
@@ -86,7 +89,7 @@ export interface HTableProps
86
89
  paginationStyle?: React.CSSProperties;
87
90
  rowKey?: string;
88
91
  allPageCheck?: boolean;
89
- rowSelection?: HRowSelection;
92
+ rowSelection?: HRowSelection|false;
90
93
  }
91
94
  export interface TableInstance {
92
95
  reload: (params?: ParamsModal) => Promise<any>;