"use client"
import{b as l}from"./chunk-3BL7AWP4.mjs";import{q as n}from"./chunk-VV5A7JHZ.mjs";import*as i from"@radix-ui/react-switch";import{useMemo as b}from"react";import{jsx as t}from"react/jsx-runtime";function S({fn:r,trackDimensions:d,thumbDimensions:u,thumbTranslate:s,checked:h=!0,loading:o=!1,disabled:a=!1,disabledTooltip:e}){let m=b(()=>e?!0:a||o,[e,a,o]),c=t(i.Root,{checked:o?!1:h,name:"switch",...r&&{onCheckedChange:r},disabled:m,className:n("radix-state-checked:bg-blue-500 radix-state-unchecked:bg-gray-200 relative inline-flex h-4 w-8 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out","focus:outline-none focus-visible:ring focus-visible:ring-blue-500 focus-visible:ring-opacity-75","data-[disabled]:cursor-not-allowed",d),children:t(i.Thumb,{className:n(`radix-state-checked:${s}`,"radix-state-unchecked:translate-x-0","pointer-events-none h-3 w-3 translate-x-4 transform rounded-full bg-white shadow-lg ring-0 transition duration-200 ease-in-out",u,s)})});return e?t(l,{content:e,children:t("div",{children:c})}):c}export{S as a};
