import { jsx as e, jsxs as r } from "react/jsx-runtime";
import o from "../../icon/Icon.js";
import { buttonShapes as c } from "../../button/types/ButtonShape.js";
import { buttonSizes as m } from "../../button/types/ButtonSize.js";
import { buttonVariants as l } from "../../button/types/ButtonVariant.js";
import { c as i } from "../../../index-BtlgVD4m.js";
function b({ className: a, ...t }) {
  return /* @__PURE__ */ e(
    "nav",
    {
      role: "navigation",
      "aria-label": "pagination",
      "data-slot": "pagination",
      className: i("mx-auto flex w-full justify-center", a),
      ...t
    }
  );
}
function x({ className: a, ...t }) {
  return /* @__PURE__ */ e("ul", { "data-slot": "pagination-content", className: i("flex flex-row items-center gap-1", a), ...t });
}
function z({ ...a }) {
  return /* @__PURE__ */ e("li", { "data-slot": "pagination-item", ...a });
}
function u({ className: a, isActive: t, size: n = "icon", ...s }) {
  return /* @__PURE__ */ e(
    "a",
    {
      "aria-current": t ? "page" : void 0,
      "data-slot": "pagination-link",
      "data-active": t,
      "aria-label": s["aria-label"],
      className: i(
        t ? l.outline : l.ghost,
        m[n].base,
        c.default,
        "flex items-center justify-center",
        "cursor-pointer",
        "font-[var(--font-weight-medium)]",
        "text-[length:var(--typography-base-sizes-small-font-size)]",
        a
      ),
      ...s
    }
  );
}
function N({ className: a, children: t, ...n }) {
  return /* @__PURE__ */ r(u, { "aria-label": "Go to previous page", size: "default", className: i("gap-1 pl-[var(--spacing-2)]", a), ...n, children: [
    /* @__PURE__ */ e(o, { name: "ChevronLeft", size: 16 }),
    t
  ] });
}
function P({ className: a, children: t, ...n }) {
  return /* @__PURE__ */ r(u, { "aria-label": "Go to next page", size: "default", className: i("gap-1 pr-[var(--spacing-2)]", a), ...n, children: [
    t,
    /* @__PURE__ */ e(o, { name: "ChevronRight", size: 16 })
  ] });
}
function j({ className: a, hoverIcon: t, ...n }) {
  return /* @__PURE__ */ r(
    "span",
    {
      "aria-hidden": !0,
      "data-slot": "pagination-ellipsis",
      className: i("group flex size-10 items-center justify-center cursor-pointer", a),
      ...n,
      children: [
        /* @__PURE__ */ e(o, { className: "group-hover:hidden", name: "MoreHorizontal", size: 16 }),
        /* @__PURE__ */ e(o, { className: "hidden group-hover:block", name: t, size: 16, color: "var(--base-highlight)" })
      ]
    }
  );
}
export {
  b as Pagination,
  x as PaginationContent,
  j as PaginationEllipsis,
  z as PaginationItem,
  u as PaginationLink,
  P as PaginationNext,
  N as PaginationPrevious
};
//# sourceMappingURL=PaginationPrimitives.js.map
