UNPKG

@stratakit/bricks

Version:

Small, modular components for StrataKit

48 lines (47 loc) 1.33 kB
import { jsx, jsxs } from "react/jsx-runtime"; import { Role } from "@ariakit/react/role"; import { forwardRef } from "@stratakit/foundations/secret-internals"; import cx from "classnames"; import { useInit } from "./~utils.useInit.js"; import VisuallyHidden from "./VisuallyHidden.js"; const Spinner = forwardRef((props, forwardedRef) => { useInit(); const { alt = "Loading\u2026", size = "medium", tone = "neutral", ...rest } = props; return /* @__PURE__ */ jsxs(Role, { ...rest, "data-_sk-size": size, "data-_sk-tone": tone, "data-_sk-variant": "indeterminate", className: cx("\u{1F95D}Spinner", props.className), ref: forwardedRef, children: [/* @__PURE__ */ jsxs("svg", { "aria-hidden": "true", className: "\u{1F95D}SpinnerSvg", viewBox: "0 0 16 16", children: [/* @__PURE__ */ jsx("circle", { pathLength: "100", className: "\u{1F95D}SpinnerSvgTrack", cx: "8", cy: "8", r: "6.5" }), /* @__PURE__ */ jsx("circle", { pathLength: "100", className: "\u{1F95D}SpinnerSvgFill", cx: "8", cy: "8", r: "6.5" })] }), /* @__PURE__ */ jsx(VisuallyHidden, { children: alt })] }); }); var Spinner_default = Spinner; export { Spinner_default as default };