{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "pagination",
  "type": "registry:ui",
  "title": "Pagination",
  "registryDependencies": [
    "https://neobrutalism.dev/r/nbutton.json"
  ],
  "files": [
    {
      "path": "src/components/ui/pagination.tsx",
      "content": "import { ChevronLeft, ChevronRight, MoreHorizontal } from \"lucide-react\"\r\n\r\nimport * as React from \"react\"\r\n\r\nimport { buttonVariants } from \"@/components/ui/button\"\r\n\r\nimport { cn } from \"@/lib/utils\"\r\n\r\nfunction Pagination({ className, ...props }: React.ComponentProps<\"nav\">) {\r\n  return (\r\n    <nav\r\n      data-slot=\"pagination\"\r\n      role=\"navigation\"\r\n      aria-label=\"pagination\"\r\n      className={cn(\"mx-auto flex w-full justify-center\", className)}\r\n      {...props}\r\n    />\r\n  )\r\n}\r\n\r\nfunction PaginationContent({\r\n  className,\r\n  ...props\r\n}: React.ComponentProps<\"ul\">) {\r\n  return (\r\n    <ul\r\n      data-slot=\"pagination-content\"\r\n      className={cn(\"flex flex-row items-center gap-1\", className)}\r\n      {...props}\r\n    />\r\n  )\r\n}\r\n\r\nfunction PaginationItem({ className, ...props }: React.ComponentProps<\"li\">) {\r\n  return (\r\n    <li data-slot=\"pagination-item\" className={cn(\"\", className)} {...props} />\r\n  )\r\n}\r\n\r\nfunction PaginationLink({\r\n  className,\r\n  isActive,\r\n  size = \"icon\",\r\n  ...props\r\n}: React.ComponentProps<\"a\"> & {\r\n  isActive?: boolean\r\n  size?: \"default\" | \"sm\" | \"lg\" | \"icon\"\r\n}) {\r\n  return (\r\n    <a\r\n      data-slot=\"pagination-link\"\r\n      aria-current={isActive ? \"page\" : undefined}\r\n      className={cn(\r\n        buttonVariants({\r\n          variant: \"noShadow\",\r\n          size,\r\n        }),\r\n        className,\r\n        isActive && \"bg-black text-white\",\r\n      )}\r\n      {...props}\r\n    />\r\n  )\r\n}\r\n\r\nfunction PaginationPrevious({\r\n  className,\r\n  ...props\r\n}: React.ComponentProps<typeof PaginationLink>) {\r\n  return (\r\n    <PaginationLink\r\n      data-slot=\"pagination-previous\"\r\n      aria-label=\"Go to previous page\"\r\n      size=\"default\"\r\n      className={cn(\"gap-1 pl-2.5\", className)}\r\n      {...props}\r\n    >\r\n      <ChevronLeft className=\"size-4\" />\r\n      <span>Previous</span>\r\n    </PaginationLink>\r\n  )\r\n}\r\n\r\nfunction PaginationNext({\r\n  className,\r\n  ...props\r\n}: React.ComponentProps<typeof PaginationLink>) {\r\n  return (\r\n    <PaginationLink\r\n      data-slot=\"pagination-next\"\r\n      aria-label=\"Go to next page\"\r\n      size=\"default\"\r\n      className={cn(\"gap-1 pr-2.5\", className)}\r\n      {...props}\r\n    >\r\n      <span>Next</span>\r\n      <ChevronRight className=\"size-4\" />\r\n    </PaginationLink>\r\n  )\r\n}\r\n\r\nfunction PaginationEllipsis({\r\n  className,\r\n  ...props\r\n}: React.ComponentProps<\"span\">) {\r\n  return (\r\n    <span\r\n      data-slot=\"pagination-ellipsis\"\r\n      aria-hidden\r\n      className={cn(\"flex size-9 items-center justify-center\", className)}\r\n      {...props}\r\n    >\r\n      <MoreHorizontal className=\"size-4\" />\r\n      <span className=\"sr-only\">More pages</span>\r\n    </span>\r\n  )\r\n}\r\n\r\nexport {\r\n  Pagination,\r\n  PaginationContent,\r\n  PaginationEllipsis,\r\n  PaginationItem,\r\n  PaginationLink,\r\n  PaginationNext,\r\n  PaginationPrevious,\r\n}\r\n",
      "type": "registry:ui"
    }
  ]
}