@ceed/cds 1.7.4-next.2 → 1.7.4
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/components/DataTable/types.d.ts +0 -7
- package/dist/index.cjs +17 -58
- package/dist/index.js +17 -58
- package/framer/index.js +29 -29
- package/package.json +2 -3
|
@@ -140,13 +140,6 @@ export type DataTableProps<T extends Record<PropertyKey, any>, GetId extends ((r
|
|
|
140
140
|
* MUI에는 없는 인터페이스지만 Total Select 기능이 추가되었기 때문에 추가해야했다.
|
|
141
141
|
*/
|
|
142
142
|
isTotalSelected?: boolean) => void;
|
|
143
|
-
/**
|
|
144
|
-
* row별로 선택 가능 여부를 결정하는 함수
|
|
145
|
-
*/
|
|
146
|
-
isRowSelectable?: (params: {
|
|
147
|
-
row: T;
|
|
148
|
-
id: InferredIdType<T, GetId>;
|
|
149
|
-
}) => boolean;
|
|
150
143
|
disableSelectionOnClick?: boolean;
|
|
151
144
|
initialState?: Partial<{
|
|
152
145
|
sorting: Partial<{
|
package/dist/index.cjs
CHANGED
|
@@ -3508,8 +3508,7 @@ function useDataTableRenderer({
|
|
|
3508
3508
|
onSelectionModelChange,
|
|
3509
3509
|
editMode,
|
|
3510
3510
|
getId: _getId,
|
|
3511
|
-
isTotalSelected: _isTotalSelected
|
|
3512
|
-
isRowSelectable
|
|
3511
|
+
isTotalSelected: _isTotalSelected
|
|
3513
3512
|
}) {
|
|
3514
3513
|
const [focusedRowId, setFocusedRowId] = (0, import_react25.useState)(null);
|
|
3515
3514
|
const [sortModel, setSortModel] = useControlledState(
|
|
@@ -3585,27 +3584,14 @@ function useDataTableRenderer({
|
|
|
3585
3584
|
() => !pagination || paginationMode === "server" ? rows : rows.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize),
|
|
3586
3585
|
[rows, page, pageSize, paginationMode, pagination]
|
|
3587
3586
|
);
|
|
3588
|
-
const selectableDataInPage = (0, import_react25.useMemo)(
|
|
3589
|
-
() => dataInPage.filter((row, i) => {
|
|
3590
|
-
if (!isRowSelectable) return true;
|
|
3591
|
-
return isRowSelectable({ row, id: getId(row, i) });
|
|
3592
|
-
}),
|
|
3593
|
-
[dataInPage, isRowSelectable, getId]
|
|
3594
|
-
);
|
|
3595
3587
|
const isAllSelected = (0, import_react25.useMemo)(
|
|
3596
|
-
() =>
|
|
3597
|
-
|
|
3598
|
-
),
|
|
3599
|
-
[selectableDataInPage, selectedModelSet, getId]
|
|
3588
|
+
() => dataInPage.length > 0 && dataInPage.every((row, i) => selectedModelSet.has(getId(row, i))),
|
|
3589
|
+
[dataInPage, selectedModelSet, getId]
|
|
3600
3590
|
);
|
|
3601
3591
|
const rowCount = totalRowsProp || rows.length;
|
|
3602
|
-
const selectableRowCount = (0, import_react25.useMemo)(() => {
|
|
3603
|
-
if (!isRowSelectable) return rowCount;
|
|
3604
|
-
return rows.filter((row, i) => isRowSelectable({ row, id: getId(row, i) })).length;
|
|
3605
|
-
}, [rows, isRowSelectable, getId, rowCount]);
|
|
3606
3592
|
const isTotalSelected = (0, import_react25.useMemo)(
|
|
3607
|
-
() => _isTotalSelected ?? (
|
|
3608
|
-
[_isTotalSelected, selectionModel,
|
|
3593
|
+
() => _isTotalSelected ?? (rowCount > 0 && (selectionModel?.length || 0) === rowCount),
|
|
3594
|
+
[_isTotalSelected, selectionModel, rowCount]
|
|
3609
3595
|
);
|
|
3610
3596
|
const columnWidths = useColumnWidths(columnsByField);
|
|
3611
3597
|
const getWidth = (0, import_react25.useCallback)(
|
|
@@ -3701,10 +3687,9 @@ function useDataTableRenderer({
|
|
|
3701
3687
|
}, [page, rowCount, pageSize, handlePageChange]);
|
|
3702
3688
|
(0, import_react25.useEffect)(() => {
|
|
3703
3689
|
onSelectionModelChange?.([]);
|
|
3704
|
-
}, [page
|
|
3690
|
+
}, [page]);
|
|
3705
3691
|
return {
|
|
3706
3692
|
rowCount,
|
|
3707
|
-
selectableRowCount,
|
|
3708
3693
|
page,
|
|
3709
3694
|
pageSize,
|
|
3710
3695
|
onPaginationModelChange: handlePageChange,
|
|
@@ -3720,22 +3705,13 @@ function useDataTableRenderer({
|
|
|
3720
3705
|
(model) => selectedModelSet.has(model),
|
|
3721
3706
|
[selectedModelSet]
|
|
3722
3707
|
),
|
|
3723
|
-
isRowSelectable: (0, import_react25.useCallback)(
|
|
3724
|
-
(rowId, row) => {
|
|
3725
|
-
if (!isRowSelectable) return true;
|
|
3726
|
-
return isRowSelectable({ row, id: rowId });
|
|
3727
|
-
},
|
|
3728
|
-
[isRowSelectable]
|
|
3729
|
-
),
|
|
3730
3708
|
focusedRowId,
|
|
3731
3709
|
onRowFocus: (0, import_react25.useCallback)((rowId) => {
|
|
3732
3710
|
setFocusedRowId(rowId);
|
|
3733
3711
|
}, []),
|
|
3734
3712
|
onAllCheckboxChange: (0, import_react25.useCallback)(() => {
|
|
3735
|
-
onSelectionModelChange?.(
|
|
3736
|
-
|
|
3737
|
-
);
|
|
3738
|
-
}, [isAllSelected, selectableDataInPage, onSelectionModelChange, getId]),
|
|
3713
|
+
onSelectionModelChange?.(isAllSelected ? [] : dataInPage.map(getId));
|
|
3714
|
+
}, [isAllSelected, dataInPage, onSelectionModelChange, getId]),
|
|
3739
3715
|
onCheckboxChange: (0, import_react25.useCallback)(
|
|
3740
3716
|
(event, selectedModel) => {
|
|
3741
3717
|
if (selectedModelSet.has(selectedModel)) {
|
|
@@ -3752,15 +3728,11 @@ function useDataTableRenderer({
|
|
|
3752
3728
|
),
|
|
3753
3729
|
columns,
|
|
3754
3730
|
onTotalSelect: (0, import_react25.useCallback)(() => {
|
|
3755
|
-
const selectableRows = rows.filter((row, i) => {
|
|
3756
|
-
if (!isRowSelectable) return true;
|
|
3757
|
-
return isRowSelectable({ row, id: getId(row, i) });
|
|
3758
|
-
});
|
|
3759
3731
|
onSelectionModelChange?.(
|
|
3760
|
-
isTotalSelected ? [] :
|
|
3732
|
+
isTotalSelected ? [] : rows.map(getId),
|
|
3761
3733
|
!isTotalSelected
|
|
3762
3734
|
);
|
|
3763
|
-
}, [isTotalSelected, rows, onSelectionModelChange, getId
|
|
3735
|
+
}, [isTotalSelected, rows, onSelectionModelChange, getId])
|
|
3764
3736
|
};
|
|
3765
3737
|
}
|
|
3766
3738
|
function Component(props, apiRef) {
|
|
@@ -3770,7 +3742,6 @@ function Component(props, apiRef) {
|
|
|
3770
3742
|
editMode,
|
|
3771
3743
|
selectionModel,
|
|
3772
3744
|
onSelectionModelChange,
|
|
3773
|
-
isRowSelectable,
|
|
3774
3745
|
disableSelectionOnClick,
|
|
3775
3746
|
onRowClick,
|
|
3776
3747
|
pinnedColumns,
|
|
@@ -3818,12 +3789,10 @@ function Component(props, apiRef) {
|
|
|
3818
3789
|
columns,
|
|
3819
3790
|
isAllSelected,
|
|
3820
3791
|
isSelectedRow,
|
|
3821
|
-
isRowSelectable: isRowSelectableCheck,
|
|
3822
3792
|
onAllCheckboxChange,
|
|
3823
3793
|
onCheckboxChange,
|
|
3824
3794
|
getId,
|
|
3825
3795
|
rowCount,
|
|
3826
|
-
selectableRowCount,
|
|
3827
3796
|
page,
|
|
3828
3797
|
pageSize,
|
|
3829
3798
|
onPaginationModelChange,
|
|
@@ -3849,15 +3818,9 @@ function Component(props, apiRef) {
|
|
|
3849
3818
|
const getRowClickHandler = (0, import_react25.useCallback)(
|
|
3850
3819
|
(row, rowId) => (e) => {
|
|
3851
3820
|
onRowClick?.({ row, rowId }, e);
|
|
3852
|
-
checkboxSelection && !disableSelectionOnClick &&
|
|
3821
|
+
checkboxSelection && !disableSelectionOnClick && onCheckboxChange(e, rowId);
|
|
3853
3822
|
},
|
|
3854
|
-
[
|
|
3855
|
-
onRowClick,
|
|
3856
|
-
checkboxSelection,
|
|
3857
|
-
disableSelectionOnClick,
|
|
3858
|
-
onCheckboxChange,
|
|
3859
|
-
isRowSelectableCheck
|
|
3860
|
-
]
|
|
3823
|
+
[onRowClick, checkboxSelection, disableSelectionOnClick, onCheckboxChange]
|
|
3861
3824
|
);
|
|
3862
3825
|
const getRowFocusHandler = (0, import_react25.useCallback)(
|
|
3863
3826
|
(rowId) => () => {
|
|
@@ -3872,12 +3835,10 @@ function Component(props, apiRef) {
|
|
|
3872
3835
|
[]
|
|
3873
3836
|
);
|
|
3874
3837
|
const getCheckboxChangeHandler = (0, import_react25.useCallback)(
|
|
3875
|
-
(rowId
|
|
3876
|
-
|
|
3877
|
-
onCheckboxChange(e, rowId);
|
|
3878
|
-
}
|
|
3838
|
+
(rowId) => (e) => {
|
|
3839
|
+
onCheckboxChange(e, rowId);
|
|
3879
3840
|
},
|
|
3880
|
-
[onCheckboxChange
|
|
3841
|
+
[onCheckboxChange]
|
|
3881
3842
|
);
|
|
3882
3843
|
(0, import_react25.useImperativeHandle)(apiRef, () => ({
|
|
3883
3844
|
getRowIndexRelativeToVisibleRows(rowId) {
|
|
@@ -3915,7 +3876,7 @@ function Component(props, apiRef) {
|
|
|
3915
3876
|
justifyContent: "space-between",
|
|
3916
3877
|
alignItems: "center"
|
|
3917
3878
|
},
|
|
3918
|
-
!!checkboxSelection && /* @__PURE__ */ import_react25.default.createElement(Stack_default, { direction: "row", spacing: 1 }, !isAllSelected && /* @__PURE__ */ import_react25.default.createElement(Typography_default, { level: "body-xs" }, numberFormatter(selectionModel?.length || 0), " items selected"), isAllSelected && !isTotalSelected && /* @__PURE__ */ import_react25.default.createElement(Stack_default, { direction: "row", spacing: 1, alignItems: "center" }, /* @__PURE__ */ import_react25.default.createElement(Typography_default, { level: "body-xs" }, "All ", numberFormatter(selectionModel?.length || 0), " items on this page are selected."), /* @__PURE__ */ import_react25.default.createElement(Button_default, { size: "sm", variant: "plain", onClick: onTotalSelect }, "Select all ", numberFormatter(
|
|
3879
|
+
!!checkboxSelection && /* @__PURE__ */ import_react25.default.createElement(Stack_default, { direction: "row", spacing: 1 }, !isAllSelected && /* @__PURE__ */ import_react25.default.createElement(Typography_default, { level: "body-xs" }, numberFormatter(selectionModel?.length || 0), " items selected"), isAllSelected && !isTotalSelected && /* @__PURE__ */ import_react25.default.createElement(Stack_default, { direction: "row", spacing: 1, alignItems: "center" }, /* @__PURE__ */ import_react25.default.createElement(Typography_default, { level: "body-xs" }, "All ", numberFormatter(selectionModel?.length || 0), " items on this page are selected."), /* @__PURE__ */ import_react25.default.createElement(Button_default, { size: "sm", variant: "plain", onClick: onTotalSelect }, "Select all ", numberFormatter(rowCount ?? rows.length), " items")), isTotalSelected && /* @__PURE__ */ import_react25.default.createElement(Stack_default, { direction: "row", spacing: 1, alignItems: "center" }, /* @__PURE__ */ import_react25.default.createElement(Typography_default, { level: "body-xs" }, "All ", numberFormatter(rowCount ?? rows.length), " items are selected."), /* @__PURE__ */ import_react25.default.createElement(
|
|
3919
3880
|
Button_default,
|
|
3920
3881
|
{
|
|
3921
3882
|
size: "sm",
|
|
@@ -3960,7 +3921,6 @@ function Component(props, apiRef) {
|
|
|
3960
3921
|
onChange: onAllCheckboxChange,
|
|
3961
3922
|
checked: isAllSelected,
|
|
3962
3923
|
indeterminate: (selectionModel || []).length > 0 && !isAllSelected,
|
|
3963
|
-
disabled: dataInPage.length > 0 && !selectableRowCount,
|
|
3964
3924
|
...checkboxProps
|
|
3965
3925
|
}
|
|
3966
3926
|
)
|
|
@@ -4038,9 +3998,8 @@ function Component(props, apiRef) {
|
|
|
4038
3998
|
RenderCheckbox,
|
|
4039
3999
|
{
|
|
4040
4000
|
onClick: getCheckboxClickHandler(),
|
|
4041
|
-
onChange: getCheckboxChangeHandler(rowId
|
|
4001
|
+
onChange: getCheckboxChangeHandler(rowId),
|
|
4042
4002
|
checked: isSelectedRow(rowId),
|
|
4043
|
-
disabled: !isRowSelectableCheck(rowId, row),
|
|
4044
4003
|
...checkboxProps
|
|
4045
4004
|
}
|
|
4046
4005
|
)
|
package/dist/index.js
CHANGED
|
@@ -3476,8 +3476,7 @@ function useDataTableRenderer({
|
|
|
3476
3476
|
onSelectionModelChange,
|
|
3477
3477
|
editMode,
|
|
3478
3478
|
getId: _getId,
|
|
3479
|
-
isTotalSelected: _isTotalSelected
|
|
3480
|
-
isRowSelectable
|
|
3479
|
+
isTotalSelected: _isTotalSelected
|
|
3481
3480
|
}) {
|
|
3482
3481
|
const [focusedRowId, setFocusedRowId] = useState6(null);
|
|
3483
3482
|
const [sortModel, setSortModel] = useControlledState(
|
|
@@ -3553,27 +3552,14 @@ function useDataTableRenderer({
|
|
|
3553
3552
|
() => !pagination || paginationMode === "server" ? rows : rows.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize),
|
|
3554
3553
|
[rows, page, pageSize, paginationMode, pagination]
|
|
3555
3554
|
);
|
|
3556
|
-
const selectableDataInPage = useMemo8(
|
|
3557
|
-
() => dataInPage.filter((row, i) => {
|
|
3558
|
-
if (!isRowSelectable) return true;
|
|
3559
|
-
return isRowSelectable({ row, id: getId(row, i) });
|
|
3560
|
-
}),
|
|
3561
|
-
[dataInPage, isRowSelectable, getId]
|
|
3562
|
-
);
|
|
3563
3555
|
const isAllSelected = useMemo8(
|
|
3564
|
-
() =>
|
|
3565
|
-
|
|
3566
|
-
),
|
|
3567
|
-
[selectableDataInPage, selectedModelSet, getId]
|
|
3556
|
+
() => dataInPage.length > 0 && dataInPage.every((row, i) => selectedModelSet.has(getId(row, i))),
|
|
3557
|
+
[dataInPage, selectedModelSet, getId]
|
|
3568
3558
|
);
|
|
3569
3559
|
const rowCount = totalRowsProp || rows.length;
|
|
3570
|
-
const selectableRowCount = useMemo8(() => {
|
|
3571
|
-
if (!isRowSelectable) return rowCount;
|
|
3572
|
-
return rows.filter((row, i) => isRowSelectable({ row, id: getId(row, i) })).length;
|
|
3573
|
-
}, [rows, isRowSelectable, getId, rowCount]);
|
|
3574
3560
|
const isTotalSelected = useMemo8(
|
|
3575
|
-
() => _isTotalSelected ?? (
|
|
3576
|
-
[_isTotalSelected, selectionModel,
|
|
3561
|
+
() => _isTotalSelected ?? (rowCount > 0 && (selectionModel?.length || 0) === rowCount),
|
|
3562
|
+
[_isTotalSelected, selectionModel, rowCount]
|
|
3577
3563
|
);
|
|
3578
3564
|
const columnWidths = useColumnWidths(columnsByField);
|
|
3579
3565
|
const getWidth = useCallback9(
|
|
@@ -3669,10 +3655,9 @@ function useDataTableRenderer({
|
|
|
3669
3655
|
}, [page, rowCount, pageSize, handlePageChange]);
|
|
3670
3656
|
useEffect5(() => {
|
|
3671
3657
|
onSelectionModelChange?.([]);
|
|
3672
|
-
}, [page
|
|
3658
|
+
}, [page]);
|
|
3673
3659
|
return {
|
|
3674
3660
|
rowCount,
|
|
3675
|
-
selectableRowCount,
|
|
3676
3661
|
page,
|
|
3677
3662
|
pageSize,
|
|
3678
3663
|
onPaginationModelChange: handlePageChange,
|
|
@@ -3688,22 +3673,13 @@ function useDataTableRenderer({
|
|
|
3688
3673
|
(model) => selectedModelSet.has(model),
|
|
3689
3674
|
[selectedModelSet]
|
|
3690
3675
|
),
|
|
3691
|
-
isRowSelectable: useCallback9(
|
|
3692
|
-
(rowId, row) => {
|
|
3693
|
-
if (!isRowSelectable) return true;
|
|
3694
|
-
return isRowSelectable({ row, id: rowId });
|
|
3695
|
-
},
|
|
3696
|
-
[isRowSelectable]
|
|
3697
|
-
),
|
|
3698
3676
|
focusedRowId,
|
|
3699
3677
|
onRowFocus: useCallback9((rowId) => {
|
|
3700
3678
|
setFocusedRowId(rowId);
|
|
3701
3679
|
}, []),
|
|
3702
3680
|
onAllCheckboxChange: useCallback9(() => {
|
|
3703
|
-
onSelectionModelChange?.(
|
|
3704
|
-
|
|
3705
|
-
);
|
|
3706
|
-
}, [isAllSelected, selectableDataInPage, onSelectionModelChange, getId]),
|
|
3681
|
+
onSelectionModelChange?.(isAllSelected ? [] : dataInPage.map(getId));
|
|
3682
|
+
}, [isAllSelected, dataInPage, onSelectionModelChange, getId]),
|
|
3707
3683
|
onCheckboxChange: useCallback9(
|
|
3708
3684
|
(event, selectedModel) => {
|
|
3709
3685
|
if (selectedModelSet.has(selectedModel)) {
|
|
@@ -3720,15 +3696,11 @@ function useDataTableRenderer({
|
|
|
3720
3696
|
),
|
|
3721
3697
|
columns,
|
|
3722
3698
|
onTotalSelect: useCallback9(() => {
|
|
3723
|
-
const selectableRows = rows.filter((row, i) => {
|
|
3724
|
-
if (!isRowSelectable) return true;
|
|
3725
|
-
return isRowSelectable({ row, id: getId(row, i) });
|
|
3726
|
-
});
|
|
3727
3699
|
onSelectionModelChange?.(
|
|
3728
|
-
isTotalSelected ? [] :
|
|
3700
|
+
isTotalSelected ? [] : rows.map(getId),
|
|
3729
3701
|
!isTotalSelected
|
|
3730
3702
|
);
|
|
3731
|
-
}, [isTotalSelected, rows, onSelectionModelChange, getId
|
|
3703
|
+
}, [isTotalSelected, rows, onSelectionModelChange, getId])
|
|
3732
3704
|
};
|
|
3733
3705
|
}
|
|
3734
3706
|
function Component(props, apiRef) {
|
|
@@ -3738,7 +3710,6 @@ function Component(props, apiRef) {
|
|
|
3738
3710
|
editMode,
|
|
3739
3711
|
selectionModel,
|
|
3740
3712
|
onSelectionModelChange,
|
|
3741
|
-
isRowSelectable,
|
|
3742
3713
|
disableSelectionOnClick,
|
|
3743
3714
|
onRowClick,
|
|
3744
3715
|
pinnedColumns,
|
|
@@ -3786,12 +3757,10 @@ function Component(props, apiRef) {
|
|
|
3786
3757
|
columns,
|
|
3787
3758
|
isAllSelected,
|
|
3788
3759
|
isSelectedRow,
|
|
3789
|
-
isRowSelectable: isRowSelectableCheck,
|
|
3790
3760
|
onAllCheckboxChange,
|
|
3791
3761
|
onCheckboxChange,
|
|
3792
3762
|
getId,
|
|
3793
3763
|
rowCount,
|
|
3794
|
-
selectableRowCount,
|
|
3795
3764
|
page,
|
|
3796
3765
|
pageSize,
|
|
3797
3766
|
onPaginationModelChange,
|
|
@@ -3817,15 +3786,9 @@ function Component(props, apiRef) {
|
|
|
3817
3786
|
const getRowClickHandler = useCallback9(
|
|
3818
3787
|
(row, rowId) => (e) => {
|
|
3819
3788
|
onRowClick?.({ row, rowId }, e);
|
|
3820
|
-
checkboxSelection && !disableSelectionOnClick &&
|
|
3789
|
+
checkboxSelection && !disableSelectionOnClick && onCheckboxChange(e, rowId);
|
|
3821
3790
|
},
|
|
3822
|
-
[
|
|
3823
|
-
onRowClick,
|
|
3824
|
-
checkboxSelection,
|
|
3825
|
-
disableSelectionOnClick,
|
|
3826
|
-
onCheckboxChange,
|
|
3827
|
-
isRowSelectableCheck
|
|
3828
|
-
]
|
|
3791
|
+
[onRowClick, checkboxSelection, disableSelectionOnClick, onCheckboxChange]
|
|
3829
3792
|
);
|
|
3830
3793
|
const getRowFocusHandler = useCallback9(
|
|
3831
3794
|
(rowId) => () => {
|
|
@@ -3840,12 +3803,10 @@ function Component(props, apiRef) {
|
|
|
3840
3803
|
[]
|
|
3841
3804
|
);
|
|
3842
3805
|
const getCheckboxChangeHandler = useCallback9(
|
|
3843
|
-
(rowId
|
|
3844
|
-
|
|
3845
|
-
onCheckboxChange(e, rowId);
|
|
3846
|
-
}
|
|
3806
|
+
(rowId) => (e) => {
|
|
3807
|
+
onCheckboxChange(e, rowId);
|
|
3847
3808
|
},
|
|
3848
|
-
[onCheckboxChange
|
|
3809
|
+
[onCheckboxChange]
|
|
3849
3810
|
);
|
|
3850
3811
|
useImperativeHandle2(apiRef, () => ({
|
|
3851
3812
|
getRowIndexRelativeToVisibleRows(rowId) {
|
|
@@ -3883,7 +3844,7 @@ function Component(props, apiRef) {
|
|
|
3883
3844
|
justifyContent: "space-between",
|
|
3884
3845
|
alignItems: "center"
|
|
3885
3846
|
},
|
|
3886
|
-
!!checkboxSelection && /* @__PURE__ */ React23.createElement(Stack_default, { direction: "row", spacing: 1 }, !isAllSelected && /* @__PURE__ */ React23.createElement(Typography_default, { level: "body-xs" }, numberFormatter(selectionModel?.length || 0), " items selected"), isAllSelected && !isTotalSelected && /* @__PURE__ */ React23.createElement(Stack_default, { direction: "row", spacing: 1, alignItems: "center" }, /* @__PURE__ */ React23.createElement(Typography_default, { level: "body-xs" }, "All ", numberFormatter(selectionModel?.length || 0), " items on this page are selected."), /* @__PURE__ */ React23.createElement(Button_default, { size: "sm", variant: "plain", onClick: onTotalSelect }, "Select all ", numberFormatter(
|
|
3847
|
+
!!checkboxSelection && /* @__PURE__ */ React23.createElement(Stack_default, { direction: "row", spacing: 1 }, !isAllSelected && /* @__PURE__ */ React23.createElement(Typography_default, { level: "body-xs" }, numberFormatter(selectionModel?.length || 0), " items selected"), isAllSelected && !isTotalSelected && /* @__PURE__ */ React23.createElement(Stack_default, { direction: "row", spacing: 1, alignItems: "center" }, /* @__PURE__ */ React23.createElement(Typography_default, { level: "body-xs" }, "All ", numberFormatter(selectionModel?.length || 0), " items on this page are selected."), /* @__PURE__ */ React23.createElement(Button_default, { size: "sm", variant: "plain", onClick: onTotalSelect }, "Select all ", numberFormatter(rowCount ?? rows.length), " items")), isTotalSelected && /* @__PURE__ */ React23.createElement(Stack_default, { direction: "row", spacing: 1, alignItems: "center" }, /* @__PURE__ */ React23.createElement(Typography_default, { level: "body-xs" }, "All ", numberFormatter(rowCount ?? rows.length), " items are selected."), /* @__PURE__ */ React23.createElement(
|
|
3887
3848
|
Button_default,
|
|
3888
3849
|
{
|
|
3889
3850
|
size: "sm",
|
|
@@ -3928,7 +3889,6 @@ function Component(props, apiRef) {
|
|
|
3928
3889
|
onChange: onAllCheckboxChange,
|
|
3929
3890
|
checked: isAllSelected,
|
|
3930
3891
|
indeterminate: (selectionModel || []).length > 0 && !isAllSelected,
|
|
3931
|
-
disabled: dataInPage.length > 0 && !selectableRowCount,
|
|
3932
3892
|
...checkboxProps
|
|
3933
3893
|
}
|
|
3934
3894
|
)
|
|
@@ -4006,9 +3966,8 @@ function Component(props, apiRef) {
|
|
|
4006
3966
|
RenderCheckbox,
|
|
4007
3967
|
{
|
|
4008
3968
|
onClick: getCheckboxClickHandler(),
|
|
4009
|
-
onChange: getCheckboxChangeHandler(rowId
|
|
3969
|
+
onChange: getCheckboxChangeHandler(rowId),
|
|
4010
3970
|
checked: isSelectedRow(rowId),
|
|
4011
|
-
disabled: !isRowSelectableCheck(rowId, row),
|
|
4012
3971
|
...checkboxProps
|
|
4013
3972
|
}
|
|
4014
3973
|
)
|