import { jsx as e, jsxs as c } from "react/jsx-runtime";
import { c as d } from "../../../index-UgeK3A8s.js";
import { Check as u } from "lucide-react";
import { cn as a } from "../../../lib/utils.js";
const o = d(
  "relative z-20 inline-flex h-6 w-6 shrink-0 items-center justify-center rounded-full border",
  {
    variants: {
      status: {
        complete: "border-success bg-success text-success-foreground",
        active: "border-foreground bg-foreground text-background",
        incomplete: "border-muted bg-muted text-foreground"
      }
    },
    defaultVariants: {
      status: "incomplete"
    }
  }
), l = d(
  "relative z-20 truncate text-sm leading-[19.6px]",
  {
    variants: {
      status: {
        complete: "text-muted-foreground line-through decoration-1 decoration-current",
        active: "font-semibold text-foreground",
        incomplete: "text-muted-foreground/70"
      }
    },
    defaultVariants: {
      status: "incomplete"
    }
  }
);
function m({
  label: s,
  className: n,
  ...t
}) {
  return /* @__PURE__ */ c(
    "div",
    {
      className: a("flex items-center gap-4", n),
      "data-slot": "step-indicator",
      "data-status": "complete",
      ...t,
      children: [
        /* @__PURE__ */ e("span", { className: a(o({ status: "complete" })), children: /* @__PURE__ */ e(u, { className: "h-3.5 w-3.5" }) }),
        /* @__PURE__ */ c("span", { className: a(l({ status: "complete" })), children: [
          s,
          /* @__PURE__ */ e("span", { className: "sr-only", children: " — complete" })
        ] })
      ]
    }
  );
}
function p({
  stepNumber: s,
  label: n,
  className: t,
  ...r
}) {
  return /* @__PURE__ */ c(
    "div",
    {
      className: a("flex items-center gap-4", t),
      "data-slot": "step-indicator",
      "data-status": "active",
      ...r,
      children: [
        /* @__PURE__ */ e(
          "span",
          {
            "aria-hidden": "true",
            className: "pointer-events-none absolute inset-x-0 top-0 z-10 h-0.5 bg-foreground"
          }
        ),
        /* @__PURE__ */ e(
          "span",
          {
            "aria-hidden": "true",
            className: "pointer-events-none absolute top-[-18px] left-1/2 z-0 h-5 w-[70%] -translate-x-1/2 rounded-full bg-primary opacity-100 blur-[18px] saturate-150"
          }
        ),
        /* @__PURE__ */ e("span", { className: a(o({ status: "active" })), children: /* @__PURE__ */ e("span", { className: "text-sm", children: s }) }),
        /* @__PURE__ */ c("span", { className: a(l({ status: "active" })), children: [
          n,
          /* @__PURE__ */ e("span", { className: "sr-only", children: " — active" })
        ] })
      ]
    }
  );
}
function f({
  stepNumber: s,
  label: n,
  className: t,
  ...r
}) {
  return /* @__PURE__ */ c(
    "div",
    {
      className: a("flex items-center gap-4", t),
      "data-slot": "step-indicator",
      "data-status": "incomplete",
      ...r,
      children: [
        /* @__PURE__ */ e("span", { className: a(o({ status: "incomplete" })), children: /* @__PURE__ */ e("span", { className: "text-sm", children: s }) }),
        /* @__PURE__ */ c(
          "span",
          {
            className: a(l({ status: "incomplete" })),
            children: [
              n,
              /* @__PURE__ */ e("span", { className: "sr-only", children: " — incomplete" })
            ]
          }
        )
      ]
    }
  );
}
function N({
  status: s,
  stepNumber: n,
  label: t,
  className: r,
  ...i
}) {
  return s === "complete" ? /* @__PURE__ */ e(m, { className: r, label: t, ...i }) : s === "active" ? /* @__PURE__ */ e(
    p,
    {
      className: r,
      label: t,
      stepNumber: n,
      ...i
    }
  ) : /* @__PURE__ */ e(
    f,
    {
      className: r,
      label: t,
      stepNumber: n,
      ...i
    }
  );
}
export {
  N as StepIndicator,
  o as stepIndicatorIconVariants,
  l as stepIndicatorLabelVariants
};
