{"version":3,"file":"ScrollToTopButton.D0L2hMk1.mjs","names":[],"sources":["https:/framerusercontent.com/modules/51242EfHy1U1xpRwCmye/hIqTMh1dBQnTZgF26OF4/ScrollToTopButton.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{motion}from\"framer-motion\";import{cloneElement}from\"react\";function scrollToTop(){if(window){window.scrollTo({top:0,behavior:\"smooth\"});}}/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerIntrinsicWidth 40\n * @framerIntrinsicHeight 40\n */ export default function ScrollToTopButton(props){let button;if(props.buttonType==\"default\"){button=/*#__PURE__*/ _jsx(\"div\",{style:{width:props.buttonWidth,height:props.buttonHeight,display:\"flex\",justifyContent:\"center\",alignItems:\"center\",backgroundColor:props.fill,borderRadius:props.radiusIsMixed?`${props.radiusTopLeft}px ${props.radiusTopRight}px ${props.radiusBottomRight}px ${props.radiusBottomLeft}px`:`${props.radius}px`,...props.style},onClick:scrollToTop,children:/*#__PURE__*/ _jsxs(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",fill:\"none\",viewBox:\"0 0 24 24\",strokeWidth:props.icon.stroke,stroke:props.icon.color,\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",style:{width:props.icon.size,height:props.icon.size},children:[/*#__PURE__*/ _jsx(\"path\",{d:\"M12 5l0 14\"}),/*#__PURE__*/ _jsx(\"path\",{d:\"M18 11l-6 -6\"}),/*#__PURE__*/ _jsx(\"path\",{d:\"M6 11l6 -6\"})]})});}else{var ref,ref1,ref2;let layer=(ref=props.custom)===null||ref===void 0?void 0:ref[0];if(layer&&(((ref1=props.style)===null||ref1===void 0?void 0:ref1.width)||((ref2=props.style)===null||ref2===void 0?void 0:ref2.height))){layer=/*#__PURE__*/ cloneElement(layer,{style:{...layer.props.style,...props.style}});}button=/*#__PURE__*/ _jsx(\"div\",{onClick:scrollToTop,style:props.style,children:layer});}let layer1=button;if(props.effects){layer1=/*#__PURE__*/ _jsx(motion.div,{whileHover:{scale:props.effects.hoverScale},whileTap:{scale:props.effects.pressScale},initial:false,transition:props.effects.transition,style:props.style,children:button});}return layer1;};ScrollToTopButton.displayName=\"Scroll-to-Top Button\";const effectsDefault={hoverScale:1.1,pressScale:.9};addPropertyControls(ScrollToTopButton,{buttonType:{type:ControlType.Enum,defaultValue:\"default\",options:[\"default\",\"custom\"],optionTitles:[\"Default\",\"Custom\"],displaySegmentedControl:true,title:\"Button\"},custom:{type:ControlType.ComponentInstance,title:\"Custom\",description:\"Use a custom button layer.\",hidden(props){return props.buttonType!==\"custom\";}},fill:{type:ControlType.Color,defaultValue:\"#EDEDED\",optional:true,hidden(props){return props.buttonType!==\"default\";}},icon:{type:ControlType.Object,controls:{color:{type:ControlType.Color,defaultValue:\"black\"},size:{type:ControlType.Number,defaultValue:24,min:1},stroke:{type:ControlType.Number,defaultValue:2,min:1,max:10,step:.1}},hidden(props){return props.buttonType!==\"default\";}},radius:{type:ControlType.FusedNumber,defaultValue:20,toggleKey:\"radiusIsMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"radiusTopLeft\",\"radiusTopRight\",\"radiusottomRight\",\"radiusBottomLeft\",],valueLabels:[\"TL\",\"TR\",\"BR\",\"BL\"],min:0,hidden(props){return props.buttonType!==\"default\";}},effects:{type:ControlType.Object,defaultValue:effectsDefault,optional:true,buttonTitle:\"Hover & Press\",icon:\"effect\",controls:{hoverScale:{type:ControlType.Number,defaultValue:effectsDefault.hoverScale,min:0,step:.01,displayStepper:true},pressScale:{type:ControlType.Number,defaultValue:effectsDefault.pressScale,min:0,step:.01,displayStepper:true},transition:{type:ControlType.Transition}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ScrollToTopButton\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"40\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"40\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ScrollToTopButton.map"],"mappings":"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"}