fix: onSelect

This commit is contained in:
Timothy Z. 2024-07-25 11:27:08 +03:00
parent 6a5dcb9fae
commit 41d7c8a0f1
3 changed files with 10 additions and 7 deletions

View file

@ -14,11 +14,12 @@ type Props = {
menuOpen: boolean | (() => void);
level: number;
setLevel: (level: number) => void;
onSelect: (option: MultiselectMenuOption) => void;
onSelect: (event: any) => void;
};
const Dropdown = ({ level, setLevel, options, onSelect, selectedOption, menuOpen }: Props) => {
const { t } = useTranslation();
const onBackButtonClick = () => {
setLevel(level - 1);
};
@ -36,8 +37,9 @@ const Dropdown = ({ level, setLevel, options, onSelect, selectedOption, menuOpen
{
options
.filter((option: MultiselectMenuOption) => !option.hidden)
.map((option: MultiselectMenuOption) => (
.map((option: MultiselectMenuOption, index) => (
<Option
key={index}
option={option}
onSelect={onSelect}
selectedOption={selectedOption}

View file

@ -9,7 +9,7 @@ import Icon from '@stremio/stremio-icons/react';
type Props = {
option: MultiselectMenuOption;
selectedOption?: MultiselectMenuOption | null;
onSelect: (option: MultiselectMenuOption) => void;
onSelect: (value: string) => void;
};
const Option = ({ option, selectedOption, onSelect }: Props) => {
@ -20,7 +20,7 @@ const Option = ({ option, selectedOption, onSelect }: Props) => {
<Button
className={classNames(styles['option'], { [styles['selected']]: selected })}
key={option.id}
onClick={(event: any) => onSelect(event)}
onClick={() => onSelect(option.value)}
aria-selected={selected}
>
<div className={styles['label']}>{ option.label }</div>

View file

@ -13,7 +13,7 @@ type Props = {
title?: string;
options: MultiselectMenuOption[];
selectedOption?: MultiselectMenuOption;
onSelect: () => void;
onSelect: (event: any) => void;
};
const MultiselectMenu = ({ className, title, options, selectedOption, onSelect }: Props) => {
@ -21,8 +21,9 @@ const MultiselectMenu = ({ className, title, options, selectedOption, onSelect }
const multiselectMenuRef = React.useRef<HTMLDivElement>(null);
const [level, setLevel] = React.useState<number>(0);
const onOptionSelect = (option: MultiselectMenuOption) => {
option.level ? setLevel(level + 1) : onSelect(), closeMenu();
const onOptionSelect = (event: any) => {
console.log(event.value);
level ? setLevel(level + 1) : onSelect(event), closeMenu();
};
return (