ivt
Version:
Ivt Components Library
76 lines (73 loc) • 3.07 kB
JavaScript
import React__default from 'react';
import { c as cn } from './utils-BDcRwQMd.mjs';
import { C as ChevronLeft } from './chevron-left-Baq244Ce.mjs';
import { C as ChevronRight } from './chevron-right-Dq6zFe5E.mjs';
import { E as Ellipsis } from './ellipsis-Cn3R-5sm.mjs';
import { b as buttonVariants } from './button-CZpmCmNo.mjs';
function Pagination({ className, ...props }) {
return /*#__PURE__*/ React__default.createElement("nav", {
"aria-label": "pagination",
"data-slot": "pagination",
className: cn("mx-auto flex w-full justify-center", className),
...props
});
}
function PaginationContent({ className, ...props }) {
return /*#__PURE__*/ React__default.createElement("ul", {
"data-slot": "pagination-content",
className: cn("flex flex-row items-center gap-1", className),
...props
});
}
function PaginationItem({ ...props }) {
return /*#__PURE__*/ React__default.createElement("li", {
"data-slot": "pagination-item",
...props
});
}
function PaginationLink({ className, isActive, size = "icon", ...props }) {
return /*#__PURE__*/ React__default.createElement("a", {
"aria-current": isActive ? "page" : undefined,
"data-slot": "pagination-link",
"data-active": isActive,
className: cn(buttonVariants({
variant: isActive ? "outline" : "ghost",
size
}), className),
...props
});
}
function PaginationPrevious({ className, ...props }) {
return /*#__PURE__*/ React__default.createElement(PaginationLink, {
"aria-label": "Go to previous page",
size: "default",
className: cn("gap-1 px-2.5 sm:pl-2.5", className),
...props
}, /*#__PURE__*/ React__default.createElement(ChevronLeft, null), /*#__PURE__*/ React__default.createElement("span", {
className: "hidden sm:block"
}, "Previous"));
}
function PaginationNext({ className, ...props }) {
return /*#__PURE__*/ React__default.createElement(PaginationLink, {
"aria-label": "Go to next page",
size: "default",
className: cn("gap-1 px-2.5 sm:pr-2.5", className),
...props
}, /*#__PURE__*/ React__default.createElement("span", {
className: "hidden sm:block"
}, "Next"), /*#__PURE__*/ React__default.createElement(ChevronRight, null));
}
function PaginationEllipsis({ className, ...props }) {
return /*#__PURE__*/ React__default.createElement("span", {
"aria-hidden": true,
"data-slot": "pagination-ellipsis",
className: cn("flex size-9 items-center justify-center", className),
...props
}, /*#__PURE__*/ React__default.createElement(Ellipsis, {
className: "size-4"
}), /*#__PURE__*/ React__default.createElement("span", {
className: "sr-only"
}, "More pages"));
}
export { Pagination as P, PaginationContent as a, PaginationLink as b, PaginationItem as c, PaginationPrevious as d, PaginationNext as e, PaginationEllipsis as f };
//# sourceMappingURL=pagination-Bx_e3scG.mjs.map