import{jsx as t}from"react/jsx-runtime";import{cx as y,css as i}from"@styled/css";import{VStack as v}from"@styled/jsx";import{token as k}from"@styled/tokens";import{forwardRef as R,useRef as _}from"react";import{useButton as w,useHover as x,useFocusRing as C,mergeProps as P}from"react-aria";const a=R(({children:n,className:s,borderRadius:l,disabled:o,expand:d,onHover:e,shadow:u,...c},b)=>{const p=_(null),r=b||p,{buttonProps:m}=w({...c,isDisabled:o??!1},r),{hoverProps:f}=x({isDisabled:o??!1}),{isFocusVisible:g,focusProps:h}=C();return t("button",{ref:r,className:y(i({_active:{transform:"scale(0.95)"},_disabled:{opacity:"0.8",pointerEvents:"none"},cursor:"pointer",h:"auto",outline:"none",position:"relative",transition:"all 0.1s ease",willChange:"transform, opacity",...d?{w:"full"}:{},...u?{_before:{content:'""',position:"absolute",top:0,left:0,right:0,bottom:0,borderRadius:"inherit",backgroundImage:"linear-gradient(rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05))",_dark:{backgroundImage:"linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))"},opacity:0,transition:"opacity 0.1s ease"},_hover:{_before:{opacity:1}}}:{}}),g&&i({outlineColor:"brand.base",outlineStyle:"solid",outlineWidth:"thick",outlineOffset:.5}),s),style:{borderRadius:l??k("radii.button")},...P(m,f,h),"aria-disabled":o,onMouseEnter:e,onTouchStart:e,children:t(v,{children:n})})});a.displayName="ButtonContainer";export{a as ButtonContainer};
//# sourceMappingURL=button.js.map
