UNPKG

@stratakit/bricks

Version:

Small, modular components for StrataKit

57 lines (56 loc) 1.56 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 }) ] } ); }); DEV: Spinner.displayName = "Spinner"; var Spinner_default = Spinner; export { Spinner_default as default };