import{r as o,j as a}from"./app-BXD2B5eP.js";import{u as I,c as M,a as H}from"./index-jdRYo6ia.js";import{u as C,P as y,c as x}from"./index-Bth_M-wI.js";import{u as A}from"./index-ciChaCGM.js";import{u as U}from"./index-BvPdTlb4.js";var m="Switch",[q,K]=M(m),[z,L]=q(m),P=o.forwardRef((t,r)=>{const{__scopeSwitch:e,name:n,checked:s,defaultChecked:b,required:d,disabled:c,value:u="on",onCheckedChange:w,form:i,...v}=t,[l,p]=o.useState(null),S=C(r,h=>p(h)),k=o.useRef(!1),g=l?i||!!l.closest("form"):!0,[f,B]=I({prop:s,defaultProp:b??!1,onChange:w,caller:m});return a.jsxs(z,{scope:e,checked:f,disabled:c,children:[a.jsx(y.button,{type:"button",role:"switch","aria-checked":f,"aria-required":d,"data-state":j(f),"data-disabled":c?"":void 0,disabled:c,value:u,...v,ref:S,onClick:H(t.onClick,h=>{B(T=>!T),g&&(k.current=h.isPropagationStopped(),k.current||h.stopPropagation())})}),g&&a.jsx(N,{control:l,bubbles:!k.current,name:n,value:u,checked:f,required:d,disabled:c,form:i,style:{transform:"translateX(-100%)"}})]})});P.displayName=m;var E="SwitchThumb",R=o.forwardRef((t,r)=>{const{__scopeSwitch:e,...n}=t,s=L(E,e);return a.jsx(y.span,{"data-state":j(s.checked),"data-disabled":s.disabled?"":void 0,...n,ref:r})});R.displayName=E;var O="SwitchBubbleInput",N=o.forwardRef(({__scopeSwitch:t,control:r,checked:e,bubbles:n=!0,...s},b)=>{const d=o.useRef(null),c=C(d,b),u=A(e),w=U(r);return o.useEffect(()=>{const i=d.current;if(!i)return;const v=window.HTMLInputElement.prototype,p=Object.getOwnPropertyDescriptor(v,"checked").set;if(u!==e&&p){const S=new Event("click",{bubbles:n});p.call(i,e),i.dispatchEvent(S)}},[u,e,n]),a.jsx("input",{type:"checkbox","aria-hidden":!0,defaultChecked:e,...s,tabIndex:-1,ref:c,style:{...s.style,...w,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});N.displayName=O;function j(t){return t?"checked":"unchecked"}var _=P,D=R;const F=o.forwardRef(({className:t,...r},e)=>a.jsx(_,{className:x("peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",t),...r,ref:e,children:a.jsx(D,{className:x("pointer-events-none block h-4 w-4 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0")})}));F.displayName=_.displayName;export{F as S};
Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]