This commit is contained in:
2025-06-18 17:29:17 +05:00
3 changed files with 139 additions and 48 deletions
+11 -1
View File
@@ -15,12 +15,14 @@ function MultySelect<T extends { name: string; id: string }>({
placeholder,
resetTitle,
onSelect,
reset,
}: {
data: T[];
isGrid: boolean;
placeholder: string;
resetTitle: string;
onSelect: (values: T[]) => void;
reset?: boolean;
}) {
const [selectedValues, setSelectedValues] = useState<T[]>([]);
const [isSelectVisible, setIsSelectVisible] = useState(false);
@@ -29,7 +31,15 @@ function MultySelect<T extends { name: string; id: string }>({
setIsSelectVisible(false);
});
useEffect(() => onSelect(selectedValues), [selectedValues]);
useEffect(() => {
if (reset) {
setSelectedValues([]);
}
}, [reset]);
useEffect(() => {
onSelect(selectedValues);
}, [selectedValues]);
const handleSelectClick = (item: T) => {
const isItemSelected = selectedValues.some((val) => val.id === item.id);