import { Button, chakra, Menu, MenuButton, MenuButtonProps, MenuItem, MenuList, Portal, Stack, } from '@chakra-ui/react' import { ChevronLeftIcon } from '@/components/icons' import React, { ReactNode } from 'react' // eslint-disable-next-line @typescript-eslint/no-explicit-any type Props = { currentItem: T[number] | undefined onItemSelect: (item: T[number]) => void items: T placeholder?: string } // eslint-disable-next-line @typescript-eslint/no-explicit-any export const DropdownList = ({ currentItem, onItemSelect, items, placeholder = '', ...props }: Props & MenuButtonProps) => { const handleMenuItemClick = (operator: T[number]) => () => { onItemSelect(operator) } return ( } colorScheme="gray" justifyContent="space-between" textAlign="left" {...props} > {(currentItem ?? placeholder) as unknown as ReactNode} {items.map((item) => ( {item as unknown as ReactNode} ))} ) }