mirror of
https://github.com/christianvidalwolf-prog/CrazeAnalytix.git
synced 2026-08-03 19:35:23 +02:00
fix: exhaustive zero-spread safety audit and render logging
This commit is contained in:
@@ -60,8 +60,8 @@ const MultiSelectDropdown: React.FC<MultiSelectDropdownProps> = ({ label, select
|
||||
|
||||
const toggleOption = (option: string) => {
|
||||
const next = localSelected.includes(option)
|
||||
? localSelected.filter((item) => item !== option)
|
||||
: [...localSelected, option];
|
||||
? localSelected.filter(item => item !== option)
|
||||
: localSelected.concat([option]);
|
||||
setLocalSelected(next);
|
||||
onChange(next);
|
||||
};
|
||||
@@ -72,9 +72,9 @@ const MultiSelectDropdown: React.FC<MultiSelectDropdownProps> = ({ label, select
|
||||
const allFilteredSelected = filteredOptions.every(opt => localSelected.includes(opt));
|
||||
next = allFilteredSelected
|
||||
? localSelected.filter(item => !filteredOptions.includes(item))
|
||||
: Array.from(new Set([...localSelected, ...filteredOptions]));
|
||||
: Array.from(new Set(localSelected.slice().concat(filteredOptions)));
|
||||
} else {
|
||||
next = localSelected.length === options.length ? [] : [...options];
|
||||
next = localSelected.length === options.length ? [] : options.slice();
|
||||
}
|
||||
setLocalSelected(next);
|
||||
onChange(next);
|
||||
@@ -190,7 +190,7 @@ const MultiSelectDropdown: React.FC<MultiSelectDropdownProps> = ({ label, select
|
||||
termsLower.some(t => opt.toLowerCase() === t || opt.toLowerCase().includes(t))
|
||||
);
|
||||
if (matched.length > 0) {
|
||||
const next = Array.from(new Set([...localSelected, ...matched]));
|
||||
const next = Array.from(new Set(localSelected.slice().concat(matched)));
|
||||
setLocalSelected(next);
|
||||
onChange(next);
|
||||
}
|
||||
@@ -202,7 +202,7 @@ const MultiSelectDropdown: React.FC<MultiSelectDropdownProps> = ({ label, select
|
||||
if (allSelected) {
|
||||
next = localSelected.filter(item => !filteredOptions.includes(item));
|
||||
} else {
|
||||
next = Array.from(new Set([...localSelected, ...filteredOptions]));
|
||||
next = Array.from(new Set(localSelected.slice().concat(filteredOptions)));
|
||||
}
|
||||
setLocalSelected(next);
|
||||
onChange(next);
|
||||
|
||||
Reference in New Issue
Block a user