@commonsku/styles 1.17.7 → 1.17.8
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/index.cjs +32 -31
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +18 -21
- package/dist/index.mjs +32 -31
- package/dist/index.mjs.map +1 -1
- package/dist/styles/tables/SelectionTable.d.ts +4 -3
- package/dist/styles/tables/SelectionTable.d.ts.map +1 -1
- package/dist/styles/tables/VirtualTable.d.ts +14 -18
- package/dist/styles/tables/VirtualTable.d.ts.map +1 -1
- package/dist/styles/tables/types.d.ts +7 -2
- package/dist/styles/tables/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -6800,50 +6800,51 @@ var VirtualTableStyles = styled__default.default.div(templateObject_1$a || (temp
|
|
|
6800
6800
|
var templateObject_1$a;
|
|
6801
6801
|
|
|
6802
6802
|
var SelectionTable = function (props) {
|
|
6803
|
-
var columns = props.columns,
|
|
6804
|
-
var _a = React.useState(props.data.map(function (row) { return (__assign({ selected: false }, row)); })), data = _a[0], setData = _a[1];
|
|
6803
|
+
var columns = props.columns, data = props.data, selectedRows = props.selectedRows, onSelectionChange = props.onSelectionChange;
|
|
6805
6804
|
var selectionState = React.useMemo(function () {
|
|
6806
|
-
|
|
6807
|
-
|
|
6808
|
-
|
|
6809
|
-
|
|
6810
|
-
|
|
6811
|
-
|
|
6805
|
+
if (selectedRows == null)
|
|
6806
|
+
return "none";
|
|
6807
|
+
switch (selectedRows.length) {
|
|
6808
|
+
case 0:
|
|
6809
|
+
return 'none';
|
|
6810
|
+
case data.length:
|
|
6811
|
+
return 'all';
|
|
6812
|
+
default:
|
|
6813
|
+
return 'some';
|
|
6814
|
+
}
|
|
6815
|
+
}, [data.length, selectedRows]);
|
|
6816
|
+
var handleSelectRows = React.useCallback(function (rows) {
|
|
6817
|
+
if (onSelectionChange == null)
|
|
6818
|
+
return;
|
|
6819
|
+
if (selectedRows == null) {
|
|
6820
|
+
onSelectionChange(rows);
|
|
6821
|
+
return;
|
|
6822
|
+
}
|
|
6823
|
+
var newSelection = selectedRows.filter(function (row) { return !rows.includes(row); });
|
|
6824
|
+
newSelection.push.apply(newSelection, rows.filter(function (row) { return !selectedRows.includes(row); }));
|
|
6825
|
+
onSelectionChange(newSelection);
|
|
6826
|
+
}, [selectedRows, onSelectionChange]);
|
|
6812
6827
|
var handleSelectHeader = React.useCallback(function () {
|
|
6828
|
+
if (onSelectionChange == null)
|
|
6829
|
+
return;
|
|
6813
6830
|
switch (selectionState) {
|
|
6814
6831
|
case 'none':
|
|
6815
|
-
|
|
6832
|
+
onSelectionChange(__spreadArray([], data, true));
|
|
6816
6833
|
break;
|
|
6817
6834
|
case 'all':
|
|
6818
|
-
case '
|
|
6819
|
-
|
|
6835
|
+
case 'some':
|
|
6836
|
+
onSelectionChange([]);
|
|
6820
6837
|
break;
|
|
6821
6838
|
}
|
|
6822
|
-
}, [data,
|
|
6823
|
-
var
|
|
6824
|
-
setData(function (prev) { return prev.map(function (row, index) {
|
|
6825
|
-
if (rowIndex !== index)
|
|
6826
|
-
return row;
|
|
6827
|
-
if (onSelectRow != null) {
|
|
6828
|
-
onSelectRow(row, rowIndex);
|
|
6829
|
-
}
|
|
6830
|
-
return __assign(__assign({}, row), { selected: rowIndex === index
|
|
6831
|
-
? !row.selected
|
|
6832
|
-
: row.selected });
|
|
6833
|
-
}); });
|
|
6834
|
-
}, [onSelectRow]);
|
|
6835
|
-
var selectionHeader = React.useMemo(function () { return (React__default.default.createElement(LabeledCheckbox, { label: "", checked: selectionState === 'all', indeterminate: selectionState === 'indeterminate', onChange: handleSelectHeader })); }, [selectionState, handleSelectHeader]);
|
|
6839
|
+
}, [selectionState, data, onSelectionChange]);
|
|
6840
|
+
var selectionHeader = React.useMemo(function () { return (React__default.default.createElement(LabeledCheckbox, { label: "", checked: selectionState === 'all', indeterminate: selectionState === 'some', onChange: handleSelectHeader })); }, [selectionState, handleSelectHeader]);
|
|
6836
6841
|
var selectionColumn = React.useMemo(function () { return ({
|
|
6837
6842
|
Header: selectionHeader,
|
|
6838
6843
|
accessor: 'selected',
|
|
6839
|
-
Cell: function (
|
|
6840
|
-
return (React__default.default.createElement(LabeledCheckbox, { label: "", checked: cellObj.row.original.selected, onChange: function () { return handleSelectRow(cellObj.row.index); } }));
|
|
6841
|
-
},
|
|
6842
|
-
sticky: 'left',
|
|
6843
|
-
noDrag: true,
|
|
6844
|
+
Cell: function (cell) { return (React__default.default.createElement(LabeledCheckbox, { label: "", checked: selectedRows != null && selectedRows.includes(cell.row.original), onChange: function () { return handleSelectRows([cell.row.original]); } })); },
|
|
6844
6845
|
width: 40,
|
|
6845
6846
|
disableSortBy: true,
|
|
6846
|
-
}); }, [
|
|
6847
|
+
}); }, [selectedRows, selectionHeader, handleSelectRows]);
|
|
6847
6848
|
return (React__default.default.createElement(VirtualTable, __assign({}, props, { columns: __spreadArray([selectionColumn], columns, true), data: data, minWidth: 40 })));
|
|
6848
6849
|
};
|
|
6849
6850
|
|