{"version":3,"file":"Checkbox.DANDm_9z.mjs","names":["useState"],"sources":["https:/framerusercontent.com/modules/VqaHB3gIRuIUtWjo3LNk/7APsVvTxh9wM4MAEGPy4/Checkbox.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{useState,useEffect}from\"react\";import{addPropertyControls,ControlType,motion,RenderTarget}from\"framer\";import{colorTokentoValue}from\"https://framer.com/m/framer/default-utils.js@^0.45.0\";async function handleActions(callbacks){for(const cb of callbacks){if(!cb)continue;const value=await cb();if(value===false)break;}}/**\n * CHECKBOX\n *\n * @framerIntrinsicWidth 20\n * @framerIntrinsicHeight 20\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */ export function Checkbox(props){let{activeBackground,onToggle,onCheck,onUncheck,isChecked,radius,topLeft,topRight,bottomRight,bottomLeft,isMixed,checkSize,color,inactiveBackground,inactiveBorder,activeBorder,hasBorder,borderWidth,transition,backgroundTransition,initialAnimation,disabled,joinType,strokeWidth}=props;const[checked,setChecked]=useState(isChecked);const borderRadius=isMixed?`${topLeft}px ${topRight}px ${bottomRight}px ${bottomLeft}px`:`${radius}px`;useEffect(()=>{setChecked(isChecked);},[isChecked]);initialAnimation=RenderTarget.current()!==RenderTarget.preview?false:initialAnimation;const inactiveBorderStyle=`${borderWidth}px solid ${colorTokentoValue(inactiveBorder)}`;const activeBorderStyle=`${borderWidth}px solid ${colorTokentoValue(activeBorder)}`;const animationBuffer=15;const pathLength=8.5;return(/*#__PURE__*/ _jsx(\"div\",{style:containerStyle,\"data-framer-highlight\":!disabled,children:/*#__PURE__*/ _jsx(motion.div,{// @ts-ignore\nstyle:{...checkboxStyle,borderRadius},initial:initialAnimation?{background:checked?colorTokentoValue(inactiveBackground):colorTokentoValue(activeBackground)}:false,animate:{background:checked?colorTokentoValue(activeBackground):colorTokentoValue(inactiveBackground),border:hasBorder?checked?activeBorderStyle:inactiveBorderStyle:\"none\"},transition:backgroundTransition,onTap:()=>{if(disabled)return;handleActions([()=>onToggle&&onToggle(!checked),onCheck,onUncheck,()=>setChecked(!checked),]);},children:/*#__PURE__*/ _jsx(\"svg\",{viewBox:\"0 0 12 12\",style:{margin:1,width:`${checkSize}%`,height:`${checkSize}%`},children:/*#__PURE__*/ _jsx(motion.path,{d:\"M3 6l2 2 4-4\",fill:\"transparent\",strokeWidth:strokeWidth,stroke:color,strokeLinecap:\"round\",strokeLinejoin:joinType,strokeDasharray:pathLength+animationBuffer,transition:transition,initial:{strokeDashoffset:initialAnimation?checked?pathLength+animationBuffer:animationBuffer:checked?animationBuffer:pathLength+animationBuffer},// initial={false}\nanimate:{strokeDashoffset:checked?animationBuffer:pathLength+animationBuffer+3}})})})}));}Checkbox.defaultProps={height:20,width:20,text:\"Get started!\",activeBackground:\"#0099ff\",activeBorder:\"#0066FF\",inactiveBackground:\"#EBEBEB\",inactiveBorder:\"#a5a5a5\",hasBorder:false,radius:5,isChecked:true,borderWidth:1,strokeWidth:1.5,joinType:\"round\",checkSize:100,color:\"white\",initialAnimation:false,disabled:false,transition:{duration:0.15,ease:[0.12,0.23,0.5,1],type:\"tween\"},backgroundTransition:{duration:0.15,ease:[0.12,0.23,0.5,1],type:\"tween\"}};// Learn more: https://framer.com/api/property-controls/\naddPropertyControls(Checkbox,{isChecked:{title:\"Checked\",type:ControlType.Boolean,defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},disabled:{title:\"Disabled\",type:ControlType.Boolean,enabledTitle:\"Yes\",disabledTitle:\"No\"},hasBorder:{title:\"Border\",type:ControlType.Boolean,enabledTitle:\"Yes\",disabledTitle:\"No\"},borderWidth:{title:\"Width\",type:ControlType.Number,defaultValue:Checkbox.defaultProps.borderWidth,hidden:({hasBorder})=>!hasBorder},activeBorder:{title:\"Active\",type:ControlType.Color,defaultValue:Checkbox.defaultProps.activeBackground,hidden:({hasBorder})=>!hasBorder},inactiveBorder:{title:\"Inactive\",type:ControlType.Color,defaultValue:Checkbox.defaultProps.inactiveBackground,hidden:({hasBorder})=>!hasBorder},activeBackground:{title:\"Active\",type:ControlType.Color,defaultValue:Checkbox.defaultProps.activeBackground},inactiveBackground:{title:\"Inactive\",type:ControlType.Color,defaultValue:Checkbox.defaultProps.inactiveBackground},color:{title:\"Check\",type:ControlType.Color,defaultValue:Checkbox.defaultProps.color},checkSize:{title:\"Check Size\",type:ControlType.Number,unit:\"%\",min:0,max:100,defaultValue:Checkbox.defaultProps.checkSize},joinType:{title:\"Corner\",type:ControlType.Enum,displaySegmentedControl:true,options:[\"miter\",\"round\"],optionTitles:[\"Square\",\"Round\"]},strokeWidth:{title:\"Thickness\",type:ControlType.Number,min:1,max:5,step:0.5,displayStepper:true},radius:{title:\"Radius\",type:ControlType.FusedNumber,defaultValue:Checkbox.defaultProps.radius,toggleKey:\"isMixed\",toggleTitles:[\"Radius\",\"Radius per corner\"],valueKeys:[\"topLeft\",\"topRight\",\"bottomRight\",\"bottomLeft\"],valueLabels:[\"TL\",\"TR\",\"BR\",\"BL\"],min:0},transition:{title:\"Check\",type:ControlType.Transition,defaultValue:Checkbox.defaultProps.transition},backgroundTransition:{title:\"Fill\",type:ControlType.Transition,defaultValue:Checkbox.defaultProps.transition},initialAnimation:{title:\"On Load\",type:ControlType.Boolean,enabledTitle:\"Animate\",disabledTitle:\"Instant\"},onToggle:{type:ControlType.EventHandler},onCheck:{type:ControlType.EventHandler},onUncheck:{type:ControlType.EventHandler}});const containerStyle={display:\"flex\",justifyContent:\"center\",alignItems:\"center\",height:\"100%\",width:\"100%\",position:\"absolute\",left:0,right:0,top:0,bottom:0};const checkboxStyle={width:\"100%\",height:\"100%\",borderRadius:6,display:\"flex\",justifyContent:\"center\",alignItems:\"center\",cursor:\"pointer\",WebkitTapHighlightColor:\"rgba(0, 0, 0, 0)\"};\nexport const __FramerMetadata__ = {\"exports\":{\"Checkbox\":{\"type\":\"reactComponent\",\"name\":\"Checkbox\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicWidth\":\"20\",\"framerIntrinsicHeight\":\"20\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerContractVersion\":\"1\"}},\"CheckboxProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Checkbox.map"],"mappings":"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"}