{ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "search-field", "dependencies": [ "react-aria-components", "lucide-react" ], "registryDependencies": [ "@seamless/utils", "@seamless/input" ], "files": [ { "path": "src/components/ui/search-field.tsx", "content": "import type * as React from \"react\"\nimport { SearchIcon, XIcon } from \"lucide-react\"\nimport {\n Button as ButtonPrimitive,\n SearchField as SearchFieldPrimitive,\n} from \"react-aria-components\"\n\nimport { cn, type Composed } from \"@/lib/utils\"\nimport { Input } from \"@/components/ui/input\"\n\ntype SearchFieldProps = Composed<\n React.ComponentProps\n> & {\n \"aria-label\": string\n placeholder?: string\n /** NOTE: the app owns copy — this default only keeps the clear affordance named when it doesn't. */\n clearLabel?: string\n}\n\nfunction SearchField({\n className,\n placeholder,\n clearLabel = \"Clear search\",\n ...props\n}: SearchFieldProps) {\n return (\n \n \n \n \n \n \n \n )\n}\n\nexport { SearchField, type SearchFieldProps }\n", "type": "registry:ui" } ], "type": "registry:ui" }