{"version":3,"file":"menu-item.cjs","sources":["../../../components/menu/menu-item.tsx"],"sourcesContent":["'use client';\n\nimport {\n  Autocomplete as AutocompletePrimitive,\n  Menu as MenuPrimitive\n} from '@base-ui/react';\nimport { Cell, CellBaseProps } from './cell';\nimport { useMenuContext } from './menu-root';\nimport { getMatch } from './utils';\n\nexport interface MenuItemProps extends MenuPrimitive.Item.Props, CellBaseProps {\n  value?: string;\n}\n\nexport function MenuItem({\n  children,\n  value,\n  leadingIcon,\n  trailingIcon,\n  render,\n  ...props\n}: MenuItemProps) {\n  const { autocomplete, inputValue, shouldFilter } = useMenuContext();\n\n  const cell = render ?? (\n    <Cell leadingIcon={leadingIcon} trailingIcon={trailingIcon} />\n  );\n\n  // In auto mode, hide items that don't match the search value\n  if (shouldFilter && !getMatch(value, children, inputValue)) {\n    return null;\n  }\n\n  if (autocomplete) {\n    return (\n      <AutocompletePrimitive.Item\n        data-slot='menu-item'\n        value={value}\n        render={<MenuPrimitive.Item render={cell} />}\n        {...props}\n      >\n        {children}\n      </AutocompletePrimitive.Item>\n    );\n  }\n\n  return (\n    <MenuPrimitive.Item\n      data-slot='menu-item'\n      render={cell}\n      {...props}\n      onFocus={e => {\n        e.stopPropagation();\n        e.preventDefault();\n        e.preventBaseUIHandler();\n      }}\n    >\n      {children}\n    </MenuPrimitive.Item>\n  );\n}\nMenuItem.displayName = 'Menu.Item';\n"],"names":[],"mappings":";;;;;;;;;;;AAwBE;;AAKA;AACE;;;AAIA;;AAYF;;;;AASI;AAKN;AACA;;"}