@stratakit/bricks
Version:
Small, modular components for StrataKit
33 lines (32 loc) • 1.01 kB
JavaScript
import { jsx } from "react/jsx-runtime";
import { Button as AkButton } from "@ariakit/react/button";
import { forwardRef } from "@stratakit/foundations/secret-internals";
import cx from "classnames";
import { useGhostAlignment } from "./~utils.GhostAligner.js";
import { useInit } from "./~utils.useInit.js";
const Button = forwardRef((props, forwardedRef) => {
useInit();
const { variant = "solid", tone = "neutral", ...rest } = props;
const ghostAlignment = useGhostAlignment();
return /* @__PURE__ */ jsx(
AkButton,
{
accessibleWhenDisabled: true,
...rest,
"data-_sk-variant": variant,
"data-_sk-tone": tone,
"data-_sk-ghost-align": variant === "ghost" ? ghostAlignment : void 0,
className: cx(
"\u{1F95D}Button",
{ "\u{1F95D}GhostAligner": variant === "ghost" },
props.className
),
ref: forwardedRef
}
);
});
DEV: Button.displayName = "Button";
var Button_default = Button;
export {
Button_default as default
};