mirror of
https://github.com/Readarr/Readarr.git
synced 2026-04-20 21:54:25 -04:00
Initial Commit Rework
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
import areAllSelected from './areAllSelected';
|
||||
import getToggledRange from './getToggledRange';
|
||||
|
||||
function toggleSelected(state, items, id, selected, shiftKey) {
|
||||
const lastToggled = state.lastToggled;
|
||||
const selectedState = {
|
||||
...state.selectedState,
|
||||
[id]: selected
|
||||
};
|
||||
|
||||
if (shiftKey && lastToggled) {
|
||||
const { lower, upper } = getToggledRange(items, id, lastToggled);
|
||||
|
||||
for (let i = lower; i < upper; i++) {
|
||||
selectedState[items[i].id] = selected;
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
...areAllSelected(selectedState),
|
||||
lastToggled: id,
|
||||
selectedState
|
||||
};
|
||||
}
|
||||
|
||||
export default toggleSelected;
|
||||
Reference in New Issue
Block a user