'use client';
import{jsx as e}from"react/jsx-runtime";import{makeStyleResponsive as t,makeWidth as a,composeTypographyClassName as r,composeTypographyStyle as i,getGlobalColorStateStyle as c,makeStyle as o,getSingleColorVariable as s,cls as p,getGlobalColorStateClass as l,getGlobalColorClass as n,handleConvertBorderColor as g,handleConvertBorderWidth as v,handleConvertBorderStyle as b,getStyleShadowState as d,getStyleShadow as m,composeRadius as x,getRadiusStyleActiveState as u,handleConvertClassColor as f}from"@gem-sdk/core";import{useMemo as h}from"react";let w=({value:w,isVariantOutStock:y,checked:j,swatchAutoWidth:N,swatchWidth:k,swatchHeight:A,optionTransform:E,optionTypography:F,optionBgColor:L,optionTextColor:R,optionBorder:S,optionRounded:T,optionHasShadow:V,optionShadow:q,optionTypo:z})=>{let B=t("w",a(k,N)),C=h(()=>({...T,active:{...T?.active||{},radiusType:"custom"}}),[T]),D=r(z,F),G=i(z,F);return e("div",{className:p(j?n("bg",L?.active):l("bg",L),f(S),D,"gp-box-border gp-inline-flex gp-cursor-pointer gp-items-center gp-justify-center gp-text-center",{"gp-pointer-events-none  !gp-cursor-not-allowed":y}),style:{...j?{}:c("bg",L),...j?o({bg:s(L?.active),bs:S?.active?.border,bw:S?.active?.width,bc:s(S?.active?.color)}):{},...o({tt:E}),...G,...t("h",A),...B,...j?u(C):x(T),...j?m({value:q?.active,state:"active",styleAppliedFor:"box-shadow",isEnableShadow:V?.active},!0):d(q,"box-shadow",V),...j?{}:b(S),...j?{}:v(S),...j?{}:g(S)},children:e("span",{className:p("gp-flex gp-items-center gp-px-[16px]",j?n("text",R?.active):l("text",R)),style:{...j?o({c:s(R?.active)}):c("c",R)},children:w?.label})})};export{w as default};
