const { checkedList } = this.state;
if (!arraysAreCongruent(prevProps.items, items)) {
this.state.isSelected = false;
+ toggleMSToolbar(false);
this.initializeCheckedList(items);
}
if (prevState.checkedList !== checkedList) {
+ console.log(this.isAnySelected());
toggleMSToolbar(this.isAnySelected() ? true : false);
window.localStorage.setItem('selectedRows', JSON.stringify(checkedList));
}
];
initializeCheckedList = (uuids: any[]): void => {
+ console.log('INIT LIIST');
const { checkedList } = this.state;
uuids.forEach((uuid) => {
if (!checkedList.hasOwnProperty(uuid)) {
isAnySelected = (): boolean => {
const { checkedList } = this.state;
+ if (!Object.keys(checkedList).length) return false;
for (const key in checkedList) {
if (checkedList[key] === true) return true;
}
handleSelectAll = (): void => {
const { checkedList } = this.state;
- const newCheckedList = { ...checkedList };
- for (const key in newCheckedList) {
- newCheckedList[key] = true;
+ if (Object.keys(checkedList).length) {
+ const newCheckedList = { ...checkedList };
+ for (const key in newCheckedList) {
+ newCheckedList[key] = true;
+ }
+ this.setState({ isSelected: true, checkedList: newCheckedList });
}
- this.setState({ isSelected: true, checkedList: newCheckedList });
};
handleSelectNone = (): void => {
handleInvertSelect = (): void => {
const { checkedList } = this.state;
- const newCheckedList = { ...checkedList };
- for (const key in newCheckedList) {
- newCheckedList[key] = !checkedList[key];
+ if (Object.keys(checkedList).length) {
+ const newCheckedList = { ...checkedList };
+ for (const key in newCheckedList) {
+ newCheckedList[key] = !checkedList[key];
+ }
+ this.setState({ checkedList: newCheckedList, isSelected: this.isAllSelected(newCheckedList) });
}
- this.setState({ checkedList: newCheckedList, isSelected: this.isAllSelected(newCheckedList) });
};
render() {