Skip to content

Commit 51640ba

Browse files
authored
Merge pull request #6950 from marmelab/fix-selectall
Fix select all over multiple pages
2 parents aed898d + 6743f8a commit 51640ba

File tree

1 file changed

+9
-12
lines changed

1 file changed

+9
-12
lines changed

packages/ra-ui-materialui/src/list/datagrid/DatagridHeader.tsx

+9-12
Original file line numberDiff line numberDiff line change
@@ -62,18 +62,15 @@ export const DatagridHeader = (props: DatagridHeaderProps) => {
6262

6363
const handleSelectAll = useCallback(
6464
event => {
65-
if (event.target.checked) {
66-
const all = ids.concat(
67-
selectedIds.filter(id => !ids.includes(id))
68-
);
69-
onSelect(
70-
isRowSelectable
71-
? all.filter(id => isRowSelectable(data[id]))
72-
: all
73-
);
74-
} else {
75-
onSelect([]);
76-
}
65+
onSelect(
66+
event.target.checked
67+
? ids
68+
.filter(id =>
69+
isRowSelectable ? isRowSelectable(data[id]) : true
70+
)
71+
.concat(selectedIds.filter(id => !ids.includes(id)))
72+
: []
73+
);
7774
},
7875
[data, ids, onSelect, isRowSelectable, selectedIds]
7976
);

0 commit comments

Comments
 (0)