@hw-component/table 1.9.62 → 1.9.64

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.
@@ -0,0 +1,66 @@
1
+ import {HRowSelection} from "@/components/modal";
2
+ import {useHTableContext} from "@/components/context";
3
+ import {useMemo} from "react";
4
+ import {Checkbox, Dropdown, Menu} from "antd";
5
+ import {useAllChecked, useCheckControl} from "./hooks";
6
+ export default ({
7
+ allPageCheck = true,
8
+ onChange,
9
+ getCheckboxProps,
10
+ }: HRowSelection) => {
11
+ const {
12
+ data,
13
+ selectedRowData,
14
+ rowKey = "id",
15
+ } = useHTableContext();
16
+ const { records = [] } = data || {};
17
+ const newData = records?.filter((item) => {
18
+ const { disabled = false } = getCheckboxProps?.(item) || {};
19
+ return !disabled;
20
+ });
21
+ const { keys, selectAll } = selectedRowData;
22
+ const {checkChange,menuClick}=useCheckControl(newData,onChange);
23
+ const dataLen = newData?.length || 0;
24
+ const checked = useAllChecked(keys,newData);
25
+ const configItems = useMemo(() => {
26
+ const fsArray = checked
27
+ ? {
28
+ label: "取消此页数据",
29
+ key: "cancel",
30
+ }
31
+ : {
32
+ label: "选择此页数据",
33
+ key: "check",
34
+ };
35
+ const enArray = selectAll
36
+ ? {
37
+ label: "取消全部数据",
38
+ key: "cancelAll",
39
+ }
40
+ : {
41
+ label: "选择全部数据",
42
+ key: "checkAll",
43
+ };
44
+ return [fsArray, enArray];
45
+ }, [checked, selectAll]);
46
+
47
+ const menu = () => {
48
+ const MenuEle = Menu as any;
49
+ return <MenuEle onClick={menuClick} items={configItems} />;
50
+ };
51
+ const disabled = dataLen === 0;
52
+ if (allPageCheck) {
53
+ return (
54
+ <Dropdown overlay={menu} arrow placement={"bottom"} disabled={disabled}>
55
+ <Checkbox
56
+ checked={checked}
57
+ onChange={checkChange}
58
+ disabled={disabled}
59
+ />
60
+ </Dropdown>
61
+ );
62
+ }
63
+ return (
64
+ <Checkbox checked={checked} onChange={checkChange} disabled={disabled} />
65
+ );
66
+ };
@@ -0,0 +1,68 @@
1
+ import {HTableProps} from "@/components/modal";
2
+ import {Key} from "react";
3
+ import {useHTableContext} from "@/components/context";
4
+ import type { HRowSelection } from "../../modal";
5
+
6
+ const getRowKey=(item:any,index:number,rowKey:HTableProps["rowKey"])=>{
7
+ return typeof rowKey === "function" ? rowKey(item, index) : item[rowKey as string];
8
+ }
9
+ export const useAllChecked=(keys:Key[]=[],data:any[]=[])=>{
10
+ const {rowKey = "id"} = useHTableContext();
11
+ const len=data?.length;
12
+ if (!len){
13
+ return false
14
+ }
15
+ return data.every((item,index)=>{
16
+ const itemKey=getRowKey(item,index,rowKey);
17
+ return keys.indexOf(itemKey)!==-1;
18
+ })
19
+ }
20
+
21
+ export const useCheckControl=(data:any[]=[],onChange:HRowSelection["onChange"])=>{
22
+ const {
23
+ rowOnChange,
24
+ rowKey = "id",
25
+ allSelectChange,
26
+ } = useHTableContext();
27
+ const allCheck = () => {
28
+ const setKeys = data.map((item, index) => {
29
+ return getRowKey(item,index,rowKey);
30
+ });
31
+ rowOnChange(setKeys, data);
32
+ onChange?.(setKeys, data);
33
+ };
34
+ const allCancel = () => {
35
+ rowOnChange([], []);
36
+ onChange?.([], []);
37
+ };
38
+
39
+ const checkChange = (e) => {
40
+ const checked = e.target.checked;
41
+ if (checked) {
42
+ allCheck();
43
+ return;
44
+ }
45
+ allCancel();
46
+ };
47
+ const menuClick = ({ key }) => {
48
+ if (key === "check") {
49
+ allCheck();
50
+ return;
51
+ }
52
+ if (key === "cancel") {
53
+ allCancel();
54
+ return;
55
+ }
56
+ if (key === "checkAll") {
57
+ allSelectChange?.(true);
58
+ onChange?.([], []);
59
+ return;
60
+ }
61
+ allSelectChange?.(false);
62
+ onChange?.([], []);
63
+ };
64
+ return {
65
+ checkChange,
66
+ menuClick
67
+ }
68
+ }
@@ -1,8 +1,8 @@
1
1
  import {HRowSelection} from "@/components/modal";
2
- import {RowCheckBoxSelection, RowCheckBoxSelectionTitle} from "@/components/HTableBody/RowCheckBoxSelection";
3
2
  import React from "react";
4
3
  import {RowRadioSelection} from "@/components/HTableBody/RowRadioBoxSelection";
5
-
4
+ import RowCheckBoxSelectionTitle from '@/components/HTableBody/RowCheckBox/Title';
5
+ import RowCheckBoxSelection from '@/components/HTableBody/RowCheckBox/RowItem';
6
6
  export const checkBoxSelectionCol = (rowSelection: HRowSelection) => {
7
7
  const { allPageCheck, onChange, getCheckboxProps } = rowSelection;
8
8
  return {
@@ -1,5 +1,5 @@
1
1
  import { Button } from "antd";
2
- import { HDwTable, HTable, useHDialogTable } from "@/components";
2
+ import {HDwTable, HModalTable, HTable, useHDialogTable} from "@/components";
3
3
  const configData = [
4
4
  {
5
5
  title: "座位",
@@ -95,10 +95,15 @@ const Test = () => {
95
95
 
96
96
  return (
97
97
  <>
98
- <HDwTable
98
+ <HModalTable
99
99
  dialogTable={dialogTable1}
100
100
  title="111"
101
101
  configData={configData}
102
+ tableProps={{
103
+ rowSelection:{
104
+ type:"radio"
105
+ }
106
+ }}
102
107
  request={req2}
103
108
  contentRender={(node) => {
104
109
  return (
@@ -207,9 +207,7 @@ export default () => {
207
207
  }}
208
208
  rowSelection={{
209
209
  allPageCheck: false,
210
- type:"radio",
211
210
  preserveSelectedRowKeys:true,
212
- alwaysShowAlert:false
213
211
  }}
214
212
  affixProps={{
215
213
  target: () => document.querySelector(".body"),
@@ -1,11 +0,0 @@
1
- /// <reference types="react" />
2
- import type { HRowSelection } from "../modal";
3
- export declare const RowCheckBoxSelectionTitle: ({ allPageCheck, onChange, getCheckboxProps, }: HRowSelection) => JSX.Element;
4
- interface RowSelectionBoxProps {
5
- data: any;
6
- onChange?: HRowSelection["onChange"];
7
- getCheckboxProps?: HRowSelection["getCheckboxProps"];
8
- index: number;
9
- }
10
- export declare const RowCheckBoxSelection: ({ data, onChange, index, getCheckboxProps, }: RowSelectionBoxProps) => JSX.Element;
11
- export {};
@@ -1,172 +0,0 @@
1
- // welcome to hoo hoo hoo
2
- import _toConsumableArray from '@babel/runtime-corejs3/helpers/toConsumableArray';
3
- import _filterInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/filter';
4
- import _keysInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/keys';
5
- import _mapInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/map';
6
- import _indexOfInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/index-of';
7
- import _spliceInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/splice';
8
- import { jsx } from 'react/jsx-runtime';
9
- import { useHTableContext } from '../context.js';
10
- import { Dropdown, Checkbox, Menu } from 'antd';
11
- import { useMemo } from 'react';
12
-
13
- var RowCheckBoxSelectionTitle = function RowCheckBoxSelectionTitle(_ref) {
14
- var _ref$allPageCheck = _ref.allPageCheck,
15
- allPageCheck = _ref$allPageCheck === void 0 ? true : _ref$allPageCheck,
16
- onChange = _ref.onChange,
17
- getCheckboxProps = _ref.getCheckboxProps;
18
- var _useHTableContext = useHTableContext(),
19
- data = _useHTableContext.data,
20
- selectedRowData = _useHTableContext.selectedRowData,
21
- rowOnChange = _useHTableContext.rowOnChange,
22
- allSelectChange = _useHTableContext.allSelectChange,
23
- _useHTableContext$row = _useHTableContext.rowKey,
24
- rowKey = _useHTableContext$row === void 0 ? "id" : _useHTableContext$row;
25
- var _ref2 = data || {},
26
- _ref2$records = _ref2.records,
27
- records = _ref2$records === void 0 ? [] : _ref2$records;
28
- var newData = records === null || records === void 0 ? void 0 : _filterInstanceProperty(records).call(records, function (item) {
29
- var _ref3 = (getCheckboxProps === null || getCheckboxProps === void 0 ? void 0 : getCheckboxProps(item)) || {},
30
- _ref3$disabled = _ref3.disabled,
31
- disabled = _ref3$disabled === void 0 ? false : _ref3$disabled;
32
- return !disabled;
33
- });
34
- var keys = _keysInstanceProperty(selectedRowData),
35
- selectAll = selectedRowData.selectAll;
36
- var allCheck = function allCheck() {
37
- var setKeys = _mapInstanceProperty(newData).call(newData, function (item, index) {
38
- return typeof rowKey === "function" ? rowKey(item, index) : item[rowKey];
39
- });
40
- rowOnChange(setKeys, newData);
41
- onChange === null || onChange === void 0 || onChange(setKeys, newData);
42
- };
43
- var allCancel = function allCancel() {
44
- rowOnChange([], []);
45
- onChange === null || onChange === void 0 || onChange([], []);
46
- };
47
- var checkChange = function checkChange(e) {
48
- var checked = e.target.checked;
49
- if (checked) {
50
- allCheck();
51
- return;
52
- }
53
- allCancel();
54
- };
55
- var change = function change(_ref4) {
56
- var key = _ref4.key;
57
- if (key === "check") {
58
- allCheck();
59
- return;
60
- }
61
- if (key === "cancel") {
62
- allCancel();
63
- return;
64
- }
65
- if (key === "checkAll") {
66
- allSelectChange === null || allSelectChange === void 0 || allSelectChange(true);
67
- onChange === null || onChange === void 0 || onChange([], []);
68
- return;
69
- }
70
- allSelectChange === null || allSelectChange === void 0 || allSelectChange(false);
71
- onChange === null || onChange === void 0 || onChange([], []);
72
- };
73
- var len = (keys === null || keys === void 0 ? void 0 : keys.length) || 0;
74
- var dataLen = (newData === null || newData === void 0 ? void 0 : newData.length) || 0;
75
- var checked = len === dataLen && len !== 0;
76
- var configItems = useMemo(function () {
77
- var fsArray = checked ? {
78
- label: "取消此页数据",
79
- key: "cancel"
80
- } : {
81
- label: "选择此页数据",
82
- key: "check"
83
- };
84
- var enArray = selectAll ? {
85
- label: "取消全部数据",
86
- key: "cancelAll"
87
- } : {
88
- label: "选择全部数据",
89
- key: "checkAll"
90
- };
91
- return [fsArray, enArray];
92
- }, [checked, selectAll]);
93
- var menu = function menu() {
94
- var MenuEle = Menu;
95
- return jsx(MenuEle, {
96
- onClick: change,
97
- items: configItems
98
- });
99
- };
100
- var disabled = dataLen === 0;
101
- if (allPageCheck) {
102
- return jsx(Dropdown, {
103
- overlay: menu,
104
- arrow: true,
105
- placement: "bottom",
106
- disabled: disabled,
107
- children: jsx(Checkbox, {
108
- checked: checked,
109
- onChange: checkChange,
110
- disabled: disabled
111
- })
112
- });
113
- }
114
- return jsx(Checkbox, {
115
- checked: checked,
116
- onChange: checkChange,
117
- disabled: disabled
118
- });
119
- };
120
- var RowCheckBoxSelection = function RowCheckBoxSelection(_ref5) {
121
- var data = _ref5.data,
122
- onChange = _ref5.onChange,
123
- index = _ref5.index,
124
- getCheckboxProps = _ref5.getCheckboxProps;
125
- var _useHTableContext2 = useHTableContext(),
126
- selectedRowData = _useHTableContext2.selectedRowData,
127
- rowOnChange = _useHTableContext2.rowOnChange,
128
- _useHTableContext2$ro = _useHTableContext2.rowKey,
129
- rowKey = _useHTableContext2$ro === void 0 ? "id" : _useHTableContext2$ro;
130
- var _selectedRowData$rowD = selectedRowData.rowData,
131
- rowData = _selectedRowData$rowD === void 0 ? [] : _selectedRowData$rowD,
132
- _selectedRowData$keys = _keysInstanceProperty(selectedRowData),
133
- keys = _selectedRowData$keys === void 0 ? [] : _selectedRowData$keys;
134
- var key = typeof rowKey === "function" ? rowKey(data, index) : data[rowKey];
135
- var add = function add() {
136
- var newKeys = _toConsumableArray(keys);
137
- var newRowData = _toConsumableArray(rowData);
138
- newKeys.push(key);
139
- newRowData.push(data);
140
- rowOnChange(newKeys, newRowData);
141
- onChange === null || onChange === void 0 || onChange(newKeys, newRowData);
142
- };
143
- var cancel = function cancel() {
144
- var newKeys = _toConsumableArray(keys);
145
- var newRowData = _toConsumableArray(rowData);
146
- var keyIndex = _indexOfInstanceProperty(newKeys).call(newKeys, key);
147
- _spliceInstanceProperty(newKeys).call(newKeys, keyIndex, 1);
148
- _spliceInstanceProperty(newRowData).call(newRowData, keyIndex, 1);
149
- rowOnChange(newKeys, newRowData);
150
- onChange === null || onChange === void 0 || onChange(newKeys, newRowData);
151
- };
152
- var check = function check(e) {
153
- var checked = e.target.checked;
154
- if (checked) {
155
- add();
156
- return;
157
- }
158
- cancel();
159
- };
160
- var _ref6 = (getCheckboxProps === null || getCheckboxProps === void 0 ? void 0 : getCheckboxProps(data)) || {},
161
- _ref6$disabled = _ref6.disabled,
162
- disabled = _ref6$disabled === void 0 ? false : _ref6$disabled;
163
- var checked = _indexOfInstanceProperty(keys).call(keys, key) !== -1;
164
- return jsx(Checkbox, {
165
- checked: checked,
166
- onChange: check,
167
- disabled: disabled
168
- });
169
- };
170
-
171
- export { RowCheckBoxSelection, RowCheckBoxSelectionTitle };
172
- // powered by hdj
@@ -1,11 +0,0 @@
1
- /// <reference types="react" />
2
- import type { HRowSelection } from "../modal";
3
- export declare const RowCheckBoxSelectionTitle: ({ allPageCheck, onChange, getCheckboxProps, }: HRowSelection) => JSX.Element;
4
- interface RowSelectionBoxProps {
5
- data: any;
6
- onChange?: HRowSelection["onChange"];
7
- getCheckboxProps?: HRowSelection["getCheckboxProps"];
8
- index: number;
9
- }
10
- export declare const RowCheckBoxSelection: ({ data, onChange, index, getCheckboxProps, }: RowSelectionBoxProps) => JSX.Element;
11
- export {};
@@ -1,174 +0,0 @@
1
- 'use strict';
2
-
3
- var _toConsumableArray = require('@babel/runtime-corejs3/helpers/toConsumableArray');
4
- var _filterInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/filter');
5
- var _keysInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/keys');
6
- var _mapInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/map');
7
- var _indexOfInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/index-of');
8
- var _spliceInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/splice');
9
- var jsxRuntime = require('react/jsx-runtime');
10
- var context = require('../context.js');
11
- var antd = require('antd');
12
- var React = require('react');
13
-
14
- var RowCheckBoxSelectionTitle = function RowCheckBoxSelectionTitle(_ref) {
15
- var _ref$allPageCheck = _ref.allPageCheck,
16
- allPageCheck = _ref$allPageCheck === void 0 ? true : _ref$allPageCheck,
17
- onChange = _ref.onChange,
18
- getCheckboxProps = _ref.getCheckboxProps;
19
- var _useHTableContext = context.useHTableContext(),
20
- data = _useHTableContext.data,
21
- selectedRowData = _useHTableContext.selectedRowData,
22
- rowOnChange = _useHTableContext.rowOnChange,
23
- allSelectChange = _useHTableContext.allSelectChange,
24
- _useHTableContext$row = _useHTableContext.rowKey,
25
- rowKey = _useHTableContext$row === void 0 ? "id" : _useHTableContext$row;
26
- var _ref2 = data || {},
27
- _ref2$records = _ref2.records,
28
- records = _ref2$records === void 0 ? [] : _ref2$records;
29
- var newData = records === null || records === void 0 ? void 0 : _filterInstanceProperty(records).call(records, function (item) {
30
- var _ref3 = (getCheckboxProps === null || getCheckboxProps === void 0 ? void 0 : getCheckboxProps(item)) || {},
31
- _ref3$disabled = _ref3.disabled,
32
- disabled = _ref3$disabled === void 0 ? false : _ref3$disabled;
33
- return !disabled;
34
- });
35
- var keys = _keysInstanceProperty(selectedRowData),
36
- selectAll = selectedRowData.selectAll;
37
- var allCheck = function allCheck() {
38
- var setKeys = _mapInstanceProperty(newData).call(newData, function (item, index) {
39
- return typeof rowKey === "function" ? rowKey(item, index) : item[rowKey];
40
- });
41
- rowOnChange(setKeys, newData);
42
- onChange === null || onChange === void 0 || onChange(setKeys, newData);
43
- };
44
- var allCancel = function allCancel() {
45
- rowOnChange([], []);
46
- onChange === null || onChange === void 0 || onChange([], []);
47
- };
48
- var checkChange = function checkChange(e) {
49
- var checked = e.target.checked;
50
- if (checked) {
51
- allCheck();
52
- return;
53
- }
54
- allCancel();
55
- };
56
- var change = function change(_ref4) {
57
- var key = _ref4.key;
58
- if (key === "check") {
59
- allCheck();
60
- return;
61
- }
62
- if (key === "cancel") {
63
- allCancel();
64
- return;
65
- }
66
- if (key === "checkAll") {
67
- allSelectChange === null || allSelectChange === void 0 || allSelectChange(true);
68
- onChange === null || onChange === void 0 || onChange([], []);
69
- return;
70
- }
71
- allSelectChange === null || allSelectChange === void 0 || allSelectChange(false);
72
- onChange === null || onChange === void 0 || onChange([], []);
73
- };
74
- var len = (keys === null || keys === void 0 ? void 0 : keys.length) || 0;
75
- var dataLen = (newData === null || newData === void 0 ? void 0 : newData.length) || 0;
76
- var checked = len === dataLen && len !== 0;
77
- var configItems = React.useMemo(function () {
78
- var fsArray = checked ? {
79
- label: "取消此页数据",
80
- key: "cancel"
81
- } : {
82
- label: "选择此页数据",
83
- key: "check"
84
- };
85
- var enArray = selectAll ? {
86
- label: "取消全部数据",
87
- key: "cancelAll"
88
- } : {
89
- label: "选择全部数据",
90
- key: "checkAll"
91
- };
92
- return [fsArray, enArray];
93
- }, [checked, selectAll]);
94
- var menu = function menu() {
95
- var MenuEle = antd.Menu;
96
- return jsxRuntime.jsx(MenuEle, {
97
- onClick: change,
98
- items: configItems
99
- });
100
- };
101
- var disabled = dataLen === 0;
102
- if (allPageCheck) {
103
- return jsxRuntime.jsx(antd.Dropdown, {
104
- overlay: menu,
105
- arrow: true,
106
- placement: "bottom",
107
- disabled: disabled,
108
- children: jsxRuntime.jsx(antd.Checkbox, {
109
- checked: checked,
110
- onChange: checkChange,
111
- disabled: disabled
112
- })
113
- });
114
- }
115
- return jsxRuntime.jsx(antd.Checkbox, {
116
- checked: checked,
117
- onChange: checkChange,
118
- disabled: disabled
119
- });
120
- };
121
- var RowCheckBoxSelection = function RowCheckBoxSelection(_ref5) {
122
- var data = _ref5.data,
123
- onChange = _ref5.onChange,
124
- index = _ref5.index,
125
- getCheckboxProps = _ref5.getCheckboxProps;
126
- var _useHTableContext2 = context.useHTableContext(),
127
- selectedRowData = _useHTableContext2.selectedRowData,
128
- rowOnChange = _useHTableContext2.rowOnChange,
129
- _useHTableContext2$ro = _useHTableContext2.rowKey,
130
- rowKey = _useHTableContext2$ro === void 0 ? "id" : _useHTableContext2$ro;
131
- var _selectedRowData$rowD = selectedRowData.rowData,
132
- rowData = _selectedRowData$rowD === void 0 ? [] : _selectedRowData$rowD,
133
- _selectedRowData$keys = _keysInstanceProperty(selectedRowData),
134
- keys = _selectedRowData$keys === void 0 ? [] : _selectedRowData$keys;
135
- var key = typeof rowKey === "function" ? rowKey(data, index) : data[rowKey];
136
- var add = function add() {
137
- var newKeys = _toConsumableArray(keys);
138
- var newRowData = _toConsumableArray(rowData);
139
- newKeys.push(key);
140
- newRowData.push(data);
141
- rowOnChange(newKeys, newRowData);
142
- onChange === null || onChange === void 0 || onChange(newKeys, newRowData);
143
- };
144
- var cancel = function cancel() {
145
- var newKeys = _toConsumableArray(keys);
146
- var newRowData = _toConsumableArray(rowData);
147
- var keyIndex = _indexOfInstanceProperty(newKeys).call(newKeys, key);
148
- _spliceInstanceProperty(newKeys).call(newKeys, keyIndex, 1);
149
- _spliceInstanceProperty(newRowData).call(newRowData, keyIndex, 1);
150
- rowOnChange(newKeys, newRowData);
151
- onChange === null || onChange === void 0 || onChange(newKeys, newRowData);
152
- };
153
- var check = function check(e) {
154
- var checked = e.target.checked;
155
- if (checked) {
156
- add();
157
- return;
158
- }
159
- cancel();
160
- };
161
- var _ref6 = (getCheckboxProps === null || getCheckboxProps === void 0 ? void 0 : getCheckboxProps(data)) || {},
162
- _ref6$disabled = _ref6.disabled,
163
- disabled = _ref6$disabled === void 0 ? false : _ref6$disabled;
164
- var checked = _indexOfInstanceProperty(keys).call(keys, key) !== -1;
165
- return jsxRuntime.jsx(antd.Checkbox, {
166
- checked: checked,
167
- onChange: check,
168
- disabled: disabled
169
- });
170
- };
171
-
172
- exports.RowCheckBoxSelection = RowCheckBoxSelection;
173
- exports.RowCheckBoxSelectionTitle = RowCheckBoxSelectionTitle;
174
- // powered by h