{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/y7e80SCY8GrYcH6qBHFo/iXdwtPztCYT94BJsWucB/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,strokeLinecap:\"round\",strokeLinejoin:\"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 _props_custom,_props_style,_props_style1;let layer=(_props_custom=props.custom)===null||_props_custom===void 0?void 0:_props_custom[0];if(layer&&(((_props_style=props.style)===null||_props_style===void 0?void 0:_props_style.width)||((_props_style1=props.style)===null||_props_style1===void 0?void 0:_props_style1.height))){layer=/*#__PURE__*/cloneElement(layer,{style:{...layer.props.style,...props.style}});}button=/*#__PURE__*/_jsx(\"div\",{onClick:scrollToTop,style:props.style,children:layer});}let layer=button;if(props.effects){layer=/*#__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 layer;}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\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"40\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicHeight\":\"40\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ScrollToTopButton.map"],
  "mappings": "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",
  "names": ["scrollToTop", "window", "ScrollToTopButton", "props", "button", "p", "u", "_props_custom", "_props_style", "_props_style1", "layer", "q", "motion", "effectsDefault", "addPropertyControls", "ControlType"]
}
