Merge branch 'main' of http://192.168.1.163:3000/inmake/graff-mate-client
This commit is contained in:
@@ -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);
|
||||
|
||||
Reference in New Issue
Block a user