{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "table-toolbar",
  "type": "registry:ui",
  "title": "Table toolbar",
  "description": "Toolbar above a data table with a search input on the left and a right slot for filters, view toggles or export buttons. Wraps cleanly on narrow screens.",
  "dependencies": [],
  "registryDependencies": [
    "https://ui.minidev.pro/r/search-input.json",
    "utils"
  ],
  "files": [
    {
      "path": "registry/ui/table-toolbar.tsx",
      "type": "registry:ui",
      "target": "components/ui/table-toolbar.tsx",
      "content": "\"use client\"\nimport * as React from \"react\"\nimport { cn } from \"@/lib/utils\"\nimport { SearchInput } from \"@/components/ui/search-input\"\n\nfunction TableToolbar({ className, children, search, onSearchChange, searchPlaceholder=\"Search…\" }: {\n  className?: string\n  children?: React.ReactNode\n  search?: string\n  onSearchChange?: (v: string) => void\n  searchPlaceholder?: string\n}) {\n  return (\n    <div data-slot=\"table-toolbar\" className={cn(\"mb-3 flex flex-wrap items-center gap-2\", className)}>\n      <SearchInput\n        aria-label=\"Search table\"\n        value={search}\n        onChange={(e) => onSearchChange?.(e.target.value)}\n        placeholder={searchPlaceholder}\n        className=\"max-w-xs\"\n        containerClassName=\"max-w-xs\"\n      />\n      <div className=\"ml-auto flex flex-wrap items-center gap-2\">{children}</div>\n    </div>\n  )\n}\nexport { TableToolbar }\n"
    }
  ]
}
