{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "extends": "none",
  "name": "native-select",
  "title": "native-select",
  "description": "native-select",
  "dependencies": [
    "@heroicons/react",
    "tailwind-merge"
  ],
  "registryDependencies": [
    "https://intentui.com/r/field"
  ],
  "files": [
    {
      "path": "src/components/ui/native-select.tsx",
      "content": "'use client'\n\nimport { ChevronUpDownIcon } from '@heroicons/react/20/solid'\nimport { twMerge } from 'tailwind-merge'\nimport { fieldStyles } from '@/components/ui/field'\n\nexport function NativeSelect({ className, ...props }: React.ComponentProps<'div'>) {\n  return (\n    <div\n      data-slot=\"control\"\n      className={fieldStyles({\n        className: twMerge('relative w-full has-[select:disabled]:opacity-50', className),\n      })}\n      {...props}\n    />\n  )\n}\n\nexport interface NativeSelectContentProps extends React.ComponentProps<'select'> {\n  isInvalid?: boolean\n}\nexport function NativeSelectContent({ className, isInvalid, ...props }: NativeSelectContentProps) {\n  return (\n    <div data-slot=\"control\" className=\"relative flex items-center justify-between\">\n      <select\n        data-slot=\"select\"\n        aria-invalid={isInvalid ? 'true' : undefined}\n        className={twMerge(\n          'relative block w-full appearance-none rounded-lg px-[calc(--spacing(3.5)-1px)] py-[calc(--spacing(2.5)-1px)] sm:py-[calc(--spacing(1.5)-1px)] sm:pr-8 sm:pl-[calc(--spacing(3)-1px)]',\n          'text-base/6 text-fg placeholder:text-muted-fg sm:text-sm/6',\n          'bg-(--control-bg,transparent)',\n          'border border-input enabled:hover:border-muted-fg/30',\n          'outline-hidden focus:border-ring/70 focus:ring-3 focus:ring-ring/20 focus:enabled:hover:border-ring/80',\n          'aria-invalid:border-danger-subtle-fg/70 focus:aria-invalid:border-danger-subtle-fg/70 focus:aria-invalid:ring-danger-subtle-fg/20 aria-invalid:enabled:hover:border-danger-subtle-fg/80 focus:aria-invalid:enabled:hover:border-danger-subtle-fg/80',\n          'disabled:bg-muted forced-colors:in-disabled:text-[GrayText]',\n          'in-disabled:bg-muted forced-colors:in-disabled:text-[GrayText]',\n          'dark:scheme-dark',\n          className\n        )}\n        {...props}\n      />\n      <ChevronUpDownIcon className=\"pointer-events-none absolute top-1/2 right-3 size-5 -translate-y-1/2 text-muted-fg sm:right-2.5 sm:size-4\" />\n    </div>\n  )\n}\n",
      "type": "registry:ui"
    }
  ],
  "type": "registry:ui"
}