"use client";
import { jsxs as a, jsx as e } from "react/jsx-runtime";
import { cva as i } from "../../node_modules/class-variance-authority/dist/index.js";
import { cn as c } from "../../lib/utils.js";
const l = {
  xxs: 12,
  xs: 14,
  sm: 16,
  md: 20,
  lg: 24,
  xl: 28,
  xxl: 36
}, d = i("animate-spin", {
  variants: {
    variant: {
      default: "text-d-foreground",
      destructive: "text-d-destructive",
      primary: "text-d-primary",
      secondary: "text-d-secondary"
    }
  }
});
function u({
  size: t = "md",
  variant: s = "default",
  className: n,
  ...o
}) {
  const r = typeof t == "number" ? t : l[t];
  return /* @__PURE__ */ a(
    "svg",
    {
      "data-slot": "spinner",
      className: c(d({ variant: s, className: n })),
      xmlns: "http://www.w3.org/2000/svg",
      fill: "none",
      viewBox: "0 0 24 24",
      width: r,
      height: r,
      ...o,
      children: [
        /* @__PURE__ */ e(
          "circle",
          {
            className: "opacity-25",
            cx: "12",
            cy: "12",
            r: "10",
            stroke: "currentColor",
            strokeWidth: "4"
          }
        ),
        /* @__PURE__ */ e(
          "path",
          {
            className: "opacity-75",
            fill: "currentColor",
            d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"
          }
        )
      ]
    }
  );
}
export {
  u as Spinner
};
