{"version":3,"file":"ScrollToTopProgressButton.BLGikdOX.mjs","names":["fonts","useState","useRef","useMemo","useCallback"],"sources":["https:/framerusercontent.com/modules/pIX6LTLgaD1zegKGwcBt/TJyIATSqCKrAOkqU1Hqq/componentPresets.js","https:/framerusercontent.com/modules/ZbiGpRFuj2vbdUcS3Fjy/Row7R85L7jEfzq5YsiPq/J0jt5JVXp.js","https:/framerusercontent.com/modules/xIoo9UVyZXZeyBU2CmkM/UyYYg6gjUWTMUZpY8BP0/ScrollToTopProgressButton.js"],"sourcesContent":["// Generated by Framer (518403a)\nexport const props={lC9csfBA3:{borderRadius:0,bottomLeftRadius:0,bottomRightRadius:0,boxShadow:\"\",isMixedBorderRadius:false,isRed:true,topLeftRadius:0,topRightRadius:0},rw91ATLUe:{borderRadius:15,bottomLeftRadius:15,bottomRightRadius:15,darkTheme:\"framerDark\",font:{fontFamily:'\"Fragment Mono\", monospace',fontSize:\"14px\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"0em\",lineHeight:\"1.5em\"},isMixedBorderRadius:false,lightTheme:\"framerLight\",padding:30,paddingBottom:30,paddingLeft:30,paddingPerSide:false,paddingRight:30,paddingTop:30,theme:\"framerDark\",themeMode:\"Static\",topLeftRadius:15,topRightRadius:15}};export const fonts={rw91ATLUe:[{explicitInter:true,fonts:[{cssFamilyName:\"Fragment Mono\",source:\"google\",style:\"normal\",uiFamilyName:\"Fragment Mono\",url:\"https://fonts.gstatic.com/s/fragmentmono/v6/4iCr6K5wfMRRjxp0DA6-2CLnN4FNh4UI_1U.woff2\",weight:\"400\"}]}]};\nexport const __FramerMetadata__ = {\"exports\":{\"props\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (1bcc82d)\nimport{fontStore}from\"framer\";fontStore.loadFonts([]);export const fonts=[{explicitInter:true,fonts:[]}];export const css=[\".framer-AsGzK .framer-styles-preset-1aw5o6r {  }\"];export const className=\"framer-AsGzK\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Instructions: Build a custom Code Component for Framer called ScrollToTopProgressButton. Floating fixed bottom-right circular dark grey button with slight transparency; thin chevron up centered; hidden on load; visible after scrolling 300px; click scrolls smoothly to top; pinned to viewport; white progress ring showing scroll progress using SVG circle stroke-dasharray/offset; editable controls for size/offset/threshold/colors/opacity/ring thickness/arrow svg or dropdown; toggles for ring/arrow; subtle blur/shadow; subtle hover; performance via rAF/throttled scroll; correct in preview/published; do not capture pointer events outside circle.\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";import{motion,useMotionValue}from\"framer-motion\";import{startTransition,useCallback,useEffect,useMemo,useRef,useState}from\"react\";function clamp01(v){if(!Number.isFinite(v))return 0;return Math.max(0,Math.min(1,v));}function getScrollProgress(){if(typeof window===\"undefined\"||typeof document===\"undefined\")return{y:0,progress:0};const y=window.scrollY||window.pageYOffset||0;const doc=document.documentElement;const body=document.body;const scrollHeight=Math.max(body?.scrollHeight||0,body?.offsetHeight||0,doc?.clientHeight||0,doc?.scrollHeight||0,doc?.offsetHeight||0);const vh=window.innerHeight||doc?.clientHeight||0;const maxScroll=Math.max(1,scrollHeight-vh);const progress=clamp01(y/maxScroll);return{y,progress};}function getArrowPath(style,customArrowPath){// All are centered in a 24x24 viewBox\nswitch(style){case\"Chevron\":// Classic chevron up\nreturn\"M6.7 14.2a1 1 0 0 1 0-1.4l4.6-4.6a1 1 0 0 1 1.4 0l4.6 4.6a1 1 0 1 1-1.4 1.4L12 10.4l-3.9 3.8a1 1 0 0 1-1.4 0Z\";case\"Caret\":// Filled caret up\nreturn\"M12 8.2 6.8 13.4a1 1 0 0 0 .7 1.7h9a1 1 0 0 0 .7-1.7L12 8.2Z\";case\"Thin\":// Thin V, stroked via outline-like path\nreturn\"M7.2 13.6a1 1 0 0 1 0-1.4l4.1-4.1a1 1 0 0 1 1.4 0l4.1 4.1a1 1 0 1 1-1.4 1.4L12 10.2l-3.4 3.4a1 1 0 0 1-1.4 0Z\";case\"Custom\":default:return customArrowPath||\"M6.7 14.2a1 1 0 0 1 0-1.4l4.6-4.6a1 1 0 0 1 1.4 0l4.6 4.6a1 1 0 1 1-1.4 1.4L12 10.4l-3.9 3.8a1 1 0 0 1-1.4 0Z\";}}/**\n * ScrollToTopProgressButton\n *\n * @framerIntrinsicWidth 56\n * @framerIntrinsicHeight 56\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight fixed\n */export default function ScrollToTopProgressButton(props){const isStatic=useIsStaticRenderer();const{size,offsetBottom,offsetRight,threshold,backgroundColor,backgroundOpacity,showRing,ringColor,ringThickness,showArrow,arrowColor,arrowStyle,customArrowPath,hoverScale,hoverOpacityBoost,shadow,blur}=props;const[visible,setVisible]=useState(false);const rafRef=useRef(null);const lastVisibleRef=useRef(false);const progressRef=useRef(0);const ring=useMemo(()=>{const t=Math.max(.5,ringThickness);const r=Math.max(0,(size-t)/2);const c=2*Math.PI*r;return{t,r,c};},[ringThickness,size]);const dashOffset=useMotionValue(ring.c);useEffect(()=>{// Keep dashOffset in sync if size/thickness changes\ndashOffset.set(ring.c*(1-clamp01(progressRef.current)));},[dashOffset,ring.c]);const rootRef=useRef(null);const arrowPath=useMemo(()=>getArrowPath(arrowStyle,customArrowPath),[arrowStyle,customArrowPath]);const updateFromScroll=useCallback(()=>{rafRef.current=null;const{y,progress}=getScrollProgress();const nextVisible=y>=threshold;const nextProgress=progress;progressRef.current=nextProgress;dashOffset.set(ring.c*(1-nextProgress));if(lastVisibleRef.current!==nextVisible){lastVisibleRef.current=nextVisible;startTransition(()=>setVisible(nextVisible));}},[dashOffset,ring.c,threshold]);const scheduleUpdate=useCallback(()=>{if(rafRef.current!=null)return;if(typeof window===\"undefined\")return;rafRef.current=window.requestAnimationFrame(updateFromScroll);},[updateFromScroll]);useEffect(()=>{if(isStatic)return;if(typeof window===\"undefined\")return;updateFromScroll();const onScroll=()=>scheduleUpdate();const onResize=()=>scheduleUpdate();window.addEventListener(\"scroll\",onScroll,{passive:true});window.addEventListener(\"resize\",onResize,{passive:true});return()=>{window.removeEventListener(\"scroll\",onScroll);window.removeEventListener(\"resize\",onResize);if(rafRef.current!=null){window.cancelAnimationFrame(rafRef.current);rafRef.current=null;}};},[isStatic,scheduleUpdate,updateFromScroll]);const handleClick=useCallback(()=>{if(typeof window===\"undefined\")return;window.scrollTo({top:0,behavior:\"smooth\"});},[]);const baseBg=useMemo(()=>{return`color-mix(in srgb, ${backgroundColor} ${clamp01(backgroundOpacity)*100}%, transparent)`;},[backgroundColor,backgroundOpacity]);const opacityHover=useMemo(()=>{const boosted=clamp01(backgroundOpacity+hoverOpacityBoost);return`color-mix(in srgb, ${backgroundColor} ${boosted*100}%, transparent)`;},[backgroundColor,backgroundOpacity,hoverOpacityBoost]);const ringInset=useMemo(()=>Math.max(0,ring.t/2),[ring.t]);return /*#__PURE__*/_jsx(\"div\",{ref:rootRef,style:{...props.style,position:\"relative\",width:size,height:size,pointerEvents:\"none\",background:\"transparent\"},children:/*#__PURE__*/_jsxs(motion.button,{type:\"button\",\"aria-label\":\"Scroll to top\",onClick:isStatic?undefined:handleClick,initial:false,animate:{opacity:visible?1:0,scale:visible?1:.98},transition:{duration:.18,ease:\"easeOut\"},whileHover:isStatic?undefined:{scale:hoverScale},whileTap:isStatic?undefined:{scale:Math.max(.98,hoverScale-.02)},style:{position:\"fixed\",right:offsetRight,bottom:offsetBottom,width:size,height:size,border:\"none\",borderRadius:999,padding:0,margin:0,display:\"grid\",placeItems:\"center\",background:baseBg,boxShadow:shadow,backdropFilter:blur>0?`blur(${blur}px)`:undefined,WebkitBackdropFilter:blur>0?`blur(${blur}px)`:undefined,cursor:\"pointer\",pointerEvents:visible?\"auto\":\"none\",outline:\"none\",appearance:\"none\",touchAction:\"manipulation\",userSelect:\"none\"},onMouseEnter:e=>{if(isStatic)return;e.currentTarget.style.background=opacityHover;},onMouseLeave:e=>{if(isStatic)return;e.currentTarget.style.background=baseBg;},children:[showRing&&/*#__PURE__*/_jsx(\"svg\",{width:size,height:size,viewBox:`0 0 ${size} ${size}`,\"aria-hidden\":\"true\",focusable:\"false\",style:{position:\"absolute\",inset:0,pointerEvents:\"none\",overflow:\"visible\"},children:/*#__PURE__*/_jsx(motion.circle,{cx:size/2,cy:size/2,r:Math.max(0,ring.r-ringInset),fill:\"none\",stroke:ringColor,strokeWidth:ring.t,strokeLinecap:\"round\",strokeDasharray:ring.c,style:{transformOrigin:\"50% 50%\",transform:\"rotate(-90deg)\",strokeDashoffset:dashOffset}})}),showArrow&&/*#__PURE__*/_jsx(\"svg\",{width:Math.round(size*.42),height:Math.round(size*.42),viewBox:\"0 0 24 24\",\"aria-hidden\":\"true\",focusable:\"false\",style:{pointerEvents:\"none\",display:\"block\"},children:/*#__PURE__*/_jsx(\"path\",{d:arrowPath,fill:arrowColor})})]})});}addPropertyControls(ScrollToTopProgressButton,{size:{type:ControlType.Number,title:\"Size\",defaultValue:56,min:36,max:120,step:1,unit:\"px\"},offsetBottom:{type:ControlType.Number,title:\"Bottom\",defaultValue:24,min:0,max:200,step:1,unit:\"px\"},offsetRight:{type:ControlType.Number,title:\"Right\",defaultValue:24,min:0,max:200,step:1,unit:\"px\"},threshold:{type:ControlType.Number,title:\"Threshold\",defaultValue:300,min:0,max:2e3,step:10,unit:\"px\"},backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#000000\"},backgroundOpacity:{type:ControlType.Number,title:\"Bg Opacity\",defaultValue:.6,min:0,max:1,step:.05},showRing:{type:ControlType.Boolean,title:\"Progress Ring\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},ringColor:{type:ControlType.Color,title:\"Ring Color\",defaultValue:\"#FFFFFF\",hidden:({showRing})=>!showRing},ringThickness:{type:ControlType.Number,title:\"Ring Width\",defaultValue:2,min:1,max:10,step:.5,unit:\"px\",hidden:({showRing})=>!showRing},showArrow:{type:ControlType.Boolean,title:\"Arrow\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},arrowColor:{type:ControlType.Color,title:\"Arrow Color\",defaultValue:\"#FFFFFF\",hidden:({showArrow})=>!showArrow},arrowStyle:{type:ControlType.Enum,title:\"Arrow Style\",defaultValue:\"Chevron\",options:[\"Chevron\",\"Caret\",\"Thin\",\"Custom\"],hidden:({showArrow})=>!showArrow},customArrowPath:{type:ControlType.String,title:\"Arrow Path\",defaultValue:\"M6.7 14.2a1 1 0 0 1 0-1.4l4.6-4.6a1 1 0 0 1 1.4 0l4.6 4.6a1 1 0 1 1-1.4 1.4L12 10.4l-3.9 3.8a1 1 0 0 1-1.4 0Z\",displayTextArea:true,hidden:({showArrow,arrowStyle})=>!showArrow||arrowStyle!==\"Custom\"},hoverScale:{type:ControlType.Number,title:\"Hover Scale\",defaultValue:1.03,min:1,max:1.12,step:.01},hoverOpacityBoost:{type:ControlType.Number,title:\"Hover Opacity+\",defaultValue:.12,min:0,max:.4,step:.02},shadow:{type:ControlType.BoxShadow,title:\"Shadow\",defaultValue:\"0 10px 26px rgba(0,0,0,0.18)\"},blur:{type:ControlType.Number,title:\"Blur\",defaultValue:6,min:0,max:20,step:1,unit:\"px\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ScrollToTopProgressButton\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"fixed\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"56\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerIntrinsicWidth\":\"56\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ScrollToTopProgressButton.map"],"mappings":"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"}