@aloudata/aloudata-design 2.8.6 → 2.8.7
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/dist/Dropdown/index.js
CHANGED
|
@@ -62,10 +62,7 @@ export default function Dropdown(props) {
|
|
|
62
62
|
return;
|
|
63
63
|
}
|
|
64
64
|
if (!isOpenControlled) {
|
|
65
|
-
|
|
66
|
-
setTimeout(function () {
|
|
67
|
-
setDropdownOpen(false);
|
|
68
|
-
}, 0);
|
|
65
|
+
setDropdownOpen(false);
|
|
69
66
|
}
|
|
70
67
|
}, [isOpenControlled, menu]);
|
|
71
68
|
var onDropdownOpenChange = useCallback(function (isDropdownOpen) {
|
|
@@ -4,6 +4,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
|
4
4
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
5
5
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
6
6
|
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
7
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
7
8
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
8
9
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
9
10
|
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
@@ -36,7 +37,7 @@ export default function useRowSelection(props) {
|
|
|
36
37
|
var changeSelectedRowKeys = useCallback(function (newSelectedRowKeys) {
|
|
37
38
|
var _rowSelection$onChang;
|
|
38
39
|
// 过滤出存在于 data 中的 selectedRowKeys
|
|
39
|
-
var visibleSelectedRowKeys = data.map(function (record) {
|
|
40
|
+
var visibleSelectedRowKeys = getDataWithoutDisabled(data, rowSelection === null || rowSelection === void 0 ? void 0 : rowSelection.getCheckboxProps).map(function (record) {
|
|
40
41
|
return getRowKey(record, rowKey);
|
|
41
42
|
}).filter(function (key) {
|
|
42
43
|
return newSelectedRowKeys.includes(key);
|
|
@@ -45,7 +46,7 @@ export default function useRowSelection(props) {
|
|
|
45
46
|
var selectedRows = getSelectedRows(visibleSelectedRowKeys);
|
|
46
47
|
rowSelection === null || rowSelection === void 0 ? void 0 : (_rowSelection$onChang = rowSelection.onChange) === null || _rowSelection$onChang === void 0 ? void 0 : _rowSelection$onChang.call(rowSelection, visibleSelectedRowKeys, selectedRows);
|
|
47
48
|
}, [getSelectedRows, rowSelection, data, rowKey]);
|
|
48
|
-
var checkboxAllStatus = getCheckboxAllStatus(data, selectedRowKeys, rowKey);
|
|
49
|
+
var checkboxAllStatus = getCheckboxAllStatus(data, selectedRowKeys, rowKey, rowSelection === null || rowSelection === void 0 ? void 0 : rowSelection.getCheckboxProps);
|
|
49
50
|
var selectAll = useCallback(function () {
|
|
50
51
|
var newKeys = data.map(function (record) {
|
|
51
52
|
return getRowKey(record, rowKey);
|
|
@@ -101,18 +102,20 @@ export default function useRowSelection(props) {
|
|
|
101
102
|
title: getCheckboxAllNode(),
|
|
102
103
|
width: 48,
|
|
103
104
|
render: function render(text, record) {
|
|
105
|
+
var _rowSelection$getChec;
|
|
104
106
|
var key = getRowKey(record, rowKey);
|
|
105
107
|
var isChecked = !!(selectedRowKeys !== null && selectedRowKeys !== void 0 && selectedRowKeys.includes(key));
|
|
108
|
+
var checkboxProps = ((_rowSelection$getChec = rowSelection.getCheckboxProps) === null || _rowSelection$getChec === void 0 ? void 0 : _rowSelection$getChec.call(rowSelection, record)) || {};
|
|
106
109
|
return /*#__PURE__*/React.createElement("div", {
|
|
107
110
|
className: prefixCls('row-selection-item')
|
|
108
|
-
}, /*#__PURE__*/React.createElement(Checkbox, {
|
|
111
|
+
}, /*#__PURE__*/React.createElement(Checkbox, _extends({
|
|
109
112
|
onClick: onClickCheckbox(key, isChecked),
|
|
110
113
|
checked: isChecked
|
|
111
|
-
}));
|
|
114
|
+
}, checkboxProps)));
|
|
112
115
|
},
|
|
113
116
|
fixed: rowSelection.fixed ? 'left' : undefined
|
|
114
117
|
};
|
|
115
|
-
var selectedRowKeysInCurrPage = data.map(function (record) {
|
|
118
|
+
var selectedRowKeysInCurrPage = getDataWithoutDisabled(data, rowSelection.getCheckboxProps).map(function (record) {
|
|
116
119
|
return getRowKey(record, rowKey);
|
|
117
120
|
}).filter(function (key) {
|
|
118
121
|
return selectedRowKeys.includes(key);
|
|
@@ -136,7 +139,7 @@ export default function useRowSelection(props) {
|
|
|
136
139
|
onChange: changeSelectedRowKeys
|
|
137
140
|
};
|
|
138
141
|
}
|
|
139
|
-
function getCheckboxAllStatus(data, selectedRowKeys, rowKey) {
|
|
142
|
+
function getCheckboxAllStatus(data, selectedRowKeys, rowKey, getCheckboxProps) {
|
|
140
143
|
var selectedKeysInData = data.map(function (record) {
|
|
141
144
|
var key = getRowKey(record, rowKey);
|
|
142
145
|
if (selectedRowKeys.includes(key)) {
|
|
@@ -149,8 +152,16 @@ function getCheckboxAllStatus(data, selectedRowKeys, rowKey) {
|
|
|
149
152
|
if (selectedKeysInData.length === 0) {
|
|
150
153
|
return 'none';
|
|
151
154
|
}
|
|
152
|
-
|
|
155
|
+
var dataWithoutDisabled = getDataWithoutDisabled(data, getCheckboxProps);
|
|
156
|
+
if (selectedKeysInData.length === dataWithoutDisabled.length) {
|
|
153
157
|
return 'all';
|
|
154
158
|
}
|
|
155
159
|
return 'indeterminate';
|
|
160
|
+
}
|
|
161
|
+
function getDataWithoutDisabled(data, getCheckboxProps) {
|
|
162
|
+
return data.filter(function (record) {
|
|
163
|
+
var checkboxProps = (getCheckboxProps === null || getCheckboxProps === void 0 ? void 0 : getCheckboxProps(record)) || {};
|
|
164
|
+
var disabled = checkboxProps.disabled;
|
|
165
|
+
return !disabled;
|
|
166
|
+
});
|
|
156
167
|
}
|
package/dist/Table/types.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { ICheckboxProps } from '../Checkbox/type';
|
|
2
3
|
import { IPaginationProps } from '../Pagination/types';
|
|
3
4
|
export interface ITableProps<TDataItem extends object> {
|
|
4
5
|
columns: ITableColumn<TDataItem>[];
|
|
@@ -52,6 +53,7 @@ export interface IRowSelection<TDataItem extends object> {
|
|
|
52
53
|
defaultSelectedRowKeys?: string[];
|
|
53
54
|
items?: IRowSelectionBtnItem<TDataItem>[];
|
|
54
55
|
onChange?: (selectedRowKeys: string[], selectedRows: TDataItem[]) => void;
|
|
56
|
+
getCheckboxProps?: (record: TDataItem) => Pick<ICheckboxProps, 'disabled' | 'indeterminate' | 'checked'>;
|
|
55
57
|
}
|
|
56
58
|
export interface IRowSelectionBtnItem<TDataItem extends object> {
|
|
57
59
|
key: string;
|