{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "z-dropdown-trigger",
  "title": "Z Dropdown Trigger",
  "dependencies": [
    "@base-ui-components/react@1.0.0-beta.3"
  ],
  "devDependencies": [],
  "registryDependencies": [
    "https://ui.orchid.ai/r/orchid-foundation.json",
    "https://ui.orchid.ai/r/orchid-theme.json"
  ],
  "files": [
    {
      "path": "registry/ui/orchid/spectrum/atoms/z-dropdown/z-dropdown-trigger.tsx",
      "content": "\"use client\";\nimport { Menu } from '@base-ui-components/react/menu';\nimport { cn } from \"../../../lib/ui-utils\";\nimport { type ReactElement, type ReactNode, cloneElement, isValidElement } from 'react';\ntype ZDropdownTriggerProps = {\n    children: ReactNode;\n    asChild?: boolean;\n    className?: string;\n    disabled?: boolean;\n    tabIndex?: number;\n};\nexport default function ZDropdownTrigger({ children, asChild = false, className, disabled = false, tabIndex, }: ZDropdownTriggerProps) {\n    if (asChild && isValidElement(children)) {\n        return renderAsChildTrigger({\n            child: children as ReactElement<{\n                className?: string;\n                tabIndex?: number;\n            }>,\n            className,\n            disabled,\n            tabIndex,\n        });\n    }\n    return (<Menu.Trigger suppressHydrationWarning disabled={disabled} tabIndex={tabIndex} render={(props) => (<button {...(props as React.ButtonHTMLAttributes<HTMLButtonElement>)} tabIndex={tabIndex} className={cn('group inline-flex items-center gap-1 outline-none', className)}>\n          {children}\n        </button>)}/>);\n}\nfunction renderAsChildTrigger({ child, className, disabled, tabIndex, }: {\n    child: ReactElement<{\n        className?: string;\n        tabIndex?: number;\n    }>;\n    className?: string;\n    disabled: boolean;\n    tabIndex?: number;\n}) {\n    return (<Menu.Trigger suppressHydrationWarning disabled={disabled} tabIndex={tabIndex} render={(props) => cloneElement(child, {\n            ...(props as Record<string, unknown>),\n            className: cn(child.props.className, className),\n            tabIndex,\n        })}/>);\n}\n",
      "type": "registry:ui",
      "target": "@ui/orchid/spectrum/atoms/z-dropdown/z-dropdown-trigger.tsx"
    }
  ],
  "type": "registry:ui"
}