variable-menu.tsx 941 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import { memo } from 'react'
  2. import { VariableMenuItem } from './variable-option'
  3. type VariableMenuProps = {
  4. startIndex: number
  5. selectedIndex: number | null
  6. options: any[]
  7. onClick: (index: number, option: any) => void
  8. onMouseEnter: (index: number, option: any) => void
  9. queryString: string | null
  10. }
  11. const VariableMenu = ({
  12. startIndex,
  13. selectedIndex,
  14. options,
  15. onClick,
  16. onMouseEnter,
  17. queryString,
  18. }: VariableMenuProps) => {
  19. return (
  20. <div className='p-1'>
  21. {
  22. options.map((option, index: number) => (
  23. <VariableMenuItem
  24. startIndex={startIndex}
  25. index={index}
  26. isSelected={selectedIndex === index + startIndex}
  27. onClick={onClick}
  28. onMouseEnter={onMouseEnter}
  29. key={option.key}
  30. option={option}
  31. queryString={queryString}
  32. />
  33. ))
  34. }
  35. </div>
  36. )
  37. }
  38. export default memo(VariableMenu)