{"version":3,"file":"HighlighterScroll.BcsblOOB.mjs","names":["useRef","useState"],"sources":["https:/framerusercontent.com/modules/t90y3CbkuLwjhDT5yZ9D/saRGLKv9o4TGGtPrC25p/HighlighterScroll.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useRef,useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";import{motion,useScroll,useTransform,useSpring}from\"framer-motion\";function calculateSpringTime(stiffness,damping,mass){const settlingPercentage=.01;const naturalFrequency=Math.sqrt(stiffness/mass);const dampingRatio=damping/(2*Math.sqrt(stiffness*mass));let settlingTime;if(dampingRatio<1){// Underdamped\nsettlingTime=-Math.log(settlingPercentage)/(dampingRatio*naturalFrequency);}else if(dampingRatio===1){// Critically damped\nsettlingTime=-Math.log(settlingPercentage)/naturalFrequency;}else{// Overdamped\nsettlingTime=Math.abs(Math.log(settlingPercentage))/(dampingRatio*naturalFrequency-Math.sqrt(dampingRatio*dampingRatio-1)*naturalFrequency);}return Math.min(settlingTime,1e10);}function interpolateValue(start,end,factor){return start+(end-start)*factor;}function interpolateClipPath(startClip,endClip,factor){const interpolatedValues=startClip.map((start,i)=>{const end=endClip[i];return start+(end-start)*factor;});return`inset(${interpolatedValues.map(v=>`${v}%`).join(\" \")})`;}/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight auto\n *\n * @framerDisableUnlink\n *\n * @framerIntrinsicWidth 300\n */export default function HighlighterScroll(props){const textRef=useRef(null);const[textState,setTextState]=useState({lines:[],clips:[]});const{scrollYProgress}=useScroll();const[scrollRange,setScrollRange]=useState([0,1]);useEffect(()=>{const elementId=props.target.replace(\"#\",\"\");const element=document.getElementById(elementId);if(!element)return;const updateScrollRange=()=>{const pageHeight=document.documentElement.scrollHeight;const{top,height}=element.getBoundingClientRect();setScrollRange([top/pageHeight,(top+height)/pageHeight]);};const resizeObserver=new ResizeObserver(updateScrollRange);resizeObserver.observe(element);window.addEventListener(\"resize\",updateScrollRange);updateScrollRange();return()=>{window.removeEventListener(\"resize\",updateScrollRange);resizeObserver.disconnect();};},[props.target]);const sectionYProgress=useTransform(scrollYProgress,scrollRange,[0,1]);const scrollValue=props.targetToggle===\"page\"?scrollYProgress:sectionYProgress;const smoothScroll=useSpring(scrollValue,props.transition);const lineHeightV={em:`${props.textStyle.lineEm}em`,px:`${props.textStyle.linePx}px`,\"%\":`${props.textStyle.linePercent}%`};const lineHeight=lineHeightV[props.textStyle.lineToggle];const letterSpacingV={em:`${props.textStyle.letterEm}em`,px:`${props.textStyle.letterPx}px`};const letterSpacing=letterSpacingV[props.textStyle.letterToggle];const fontVariationSettings=[\"wght\",\"ital\",\"slnt\",\"opsz\"].filter(key=>props.textStyle[`${key}Toggle`]===\"true\").map(key=>`\"${key}\" ${props.textStyle[key]}`).join(\", \");useEffect(()=>{const splitTextIntoLines=()=>{const words=props.text.split(\" \");const tempLines=[];let currentLine=\"\";const measureSpan=document.createElement(\"span\");document.body.appendChild(measureSpan);measureSpan.style.visibility=\"hidden\";measureSpan.style.fontFamily=props.textStyle.font.fontFamily;measureSpan.style.fontSize=`${props.textStyle.size}px`;measureSpan.style.fontWeight=props.textStyle.font.fontWeight;measureSpan.style.fontStyle=props.textStyle.font.fontStyle;measureSpan.style.letterSpacing=letterSpacing;measureSpan.style.textDecoration=\"none\";measureSpan.style.fontVariationSettings=fontVariationSettings;const measureWidth=text=>{measureSpan.textContent=text;return measureSpan.offsetWidth;};const containerWidth=textRef.current.offsetWidth;words.forEach((word,index)=>{const testLine=currentLine+(currentLine?\" \":\"\")+word;if(measureWidth(testLine)>containerWidth){tempLines.push(currentLine);currentLine=word;}else{currentLine=testLine;}});if(currentLine)tempLines.push(currentLine);setTextState({lines:tempLines,clips:tempLines.map(()=>({oneClip:\"inset(-100% 0% -100% 0%)\",twoClip:\"inset(-100% 100% -100% 0%)\"}))});document.body.removeChild(measureSpan);};const observer=new ResizeObserver(splitTextIntoLines);if(textRef.current){splitTextIntoLines();observer.observe(textRef.current);}return()=>observer.disconnect();},[props]);const duration=props.transition.type===\"spring\"?calculateSpringTime(props.transition.stiffness,props.transition.damping,props.transition.mass):props.transition.duration;const lineStagger=duration*(props.lineStagger/100);useEffect(()=>{const lineAnimationTime=1/(1+(textState.lines.length-1)*lineStagger);const unsubscribe=smoothScroll.onChange(value=>{const updatedClips=textState.lines.map((line,lineIndex)=>{const lineStart=lineIndex/textState.lines.length*(1-lineAnimationTime);const lineEnd=lineStart+lineAnimationTime;const lineFactor=Math.min(Math.max((value-lineStart)/lineAnimationTime,0),1);return{oneClip:interpolateClipPath([-100,0,-100,0],[-100,0,-100,100],lineFactor),twoClip:interpolateClipPath([-100,100,-100,0],[-100,0,-100,0],lineFactor)};});setTextState(prevState=>({...prevState,clips:updatedClips}));});return()=>unsubscribe();},[smoothScroll,textState.lines,props]);return /*#__PURE__*/_jsxs(\"div\",{ref:textRef,style:{textAlign:props.align},children:[/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",clip:\"rect(0, 0, 0, 0)\"},children:props.text}),textState.lines.map((line,index)=>/*#__PURE__*/_jsx(motion.span,{style:{display:\"block\",overflow:\"visible\",fontFamily:props.textStyle.font.fontFamily,fontSize:props.textStyle.size,fontWeight:props.textStyle.font.fontWeight,fontStyle:props.textStyle.font.fontStyle,lineHeight:lineHeight,letterSpacing:letterSpacing,textDecorationLine:props.state2.decorationLine,textDecorationThickness:props.state2.decorationThickness,textDecorationColor:props.state2.decorationColor,fontVariationSettings:fontVariationSettings,color:props.state2.color,clipPath:textState.clips[index].twoClip},children:line},`state2-${index}`)),/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",top:0,left:0,width:\"100%\"},children:textState.lines.map((line,index)=>/*#__PURE__*/_jsx(motion.span,{style:{display:\"block\",overflow:props.overflow,fontFamily:props.textStyle.font.fontFamily,fontSize:props.textStyle.size,fontWeight:props.textStyle.font.fontWeight,fontStyle:props.textStyle.font.fontStyle,lineHeight:lineHeight,letterSpacing:letterSpacing,textDecorationLine:props.state1.decorationLine,textDecorationThickness:props.state1.decorationThickness,textDecorationColor:props.state1.decorationColor,fontVariationSettings:fontVariationSettings,color:props.state1.color,clipPath:textState.clips[index].oneClip},children:line},`state1-${index}`))})]});}HighlighterScroll.displayName=\"Tau 1.0.1 - Highlighter Scroll\";addPropertyControls(HighlighterScroll,{text:{type:ControlType.String,title:\"Text\",displayTextArea:true,defaultValue:\"Delftware, the iconic blue and white pottery, originated in the 16th century in the Dutch town of Delft.\"},textStyle:{type:ControlType.Object,title:\"Text style\",controls:{font:{type:ControlType.Font,title:\"Font\",defaultValue:{family:\"Inter\",fontWeight:\"regular\"}},size:{type:ControlType.Number,title:\"Size\",defaultValue:18,step:.5,displayStepper:true,description:\" \"},letterEm:{type:ControlType.Number,title:\"Letter\",defaultValue:0,step:.01,displayStepper:true,hidden:props=>props.letterToggle!==\"em\"},letterPx:{type:ControlType.Number,title:\"Letter\",defaultValue:0,step:.1,displayStepper:true,hidden:props=>props.letterToggle!==\"px\"},letterToggle:{type:ControlType.Enum,title:\"Unit\",displaySegmentedControl:true,options:[\"em\",\"px\"],optionTitles:[\"Em\",\"Pixels\"],defaultValue:\"em\",description:\" \"},lineEm:{type:ControlType.Number,title:\"Line\",defaultValue:1,min:.1,displayStepper:true,step:.1,hidden:props=>props.lineToggle!==\"em\"},linePx:{type:ControlType.Number,title:\"Line\",defaultValue:16,min:.1,displayStepper:true,step:.5,hidden:props=>props.lineToggle!==\"px\"},linePercent:{type:ControlType.Number,title:\"Line\",defaultValue:120,min:.1,displayStepper:true,step:5,hidden:props=>props.lineToggle!==\"%\"},lineToggle:{type:ControlType.Enum,title:\"Unit\",displaySegmentedControl:true,options:[\"em\",\"px\",\"%\"],optionTitles:[\"Em\",\"Pixels\",\"%\"],defaultValue:\"%\",description:\" \"},wghtToggle:{type:ControlType.Enum,title:\"Weight\",displaySegmentedControl:true,options:[\"false\",\"true\"],optionTitles:[\"Auto\",\"Custom\"],defaultValue:\"false\"},wght:{type:ControlType.Number,title:\"Weight\",defaultValue:200,min:50,max:1e3,hidden:props=>props.wghtToggle===\"false\"},italToggle:{type:ControlType.Enum,title:\"Italic\",displaySegmentedControl:true,options:[\"false\",\"true\"],optionTitles:[\"Auto\",\"Custom\"],defaultValue:\"false\"},ital:{type:ControlType.Number,title:\"Italic\",defaultValue:200,step:.1,min:0,max:1,hidden:props=>props.italToggle===\"false\"},slntToggle:{type:ControlType.Enum,title:\"Slant\",options:[\"false\",\"true\"],optionTitles:[\"Auto\",\"Custom\"],defaultValue:\"false\",displaySegmentedControl:true},slnt:{type:ControlType.Number,title:\"Slant\",defaultValue:200,min:50,max:1e3,hidden:props=>props.slntToggle===\"false\"},opszToggle:{type:ControlType.Enum,title:\"Opt. size\",options:[\"false\",\"true\"],optionTitles:[\"Auto\",\"Custom\"],defaultValue:\"false\",displaySegmentedControl:true},opsz:{type:ControlType.Number,title:\"Opt. size\",defaultValue:16,min:6,max:72,hidden:props=>props.opszToggle===\"false\"}}},align:{type:ControlType.Enum,options:[\"left\",\"center\",\"right\"],optionIcons:[\"text-align-left\",\"text-align-center\",\"text-align-right\"],displaySegmentedControl:true},targetToggle:{type:ControlType.Enum,title:\"Target\",options:[\"page\",\"section\"],optionTitles:[\"Page\",\"Section\"],defaultValue:\"page\"},target:{type:ControlType.String,title:\"Section\",placeholder:\"#example-section\",hidden:props=>props.targetToggle!==\"section\"},state1:{type:ControlType.Object,buttonTitle:\"Customize...\",title:\"State 1\",controls:{color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\"},decorationLine:{type:ControlType.Enum,title:\"Decoration\",options:[\"none\",\"underline\",\"line-through\",\"overline\"],optionTitles:[\"None\",\"Underline\",\"Strikethrough\",\"Overline\"],defaultValue:\"none\"},decorationThickness:{type:ControlType.Number,title:\"Thickness\",defaultValue:1,min:1,displayStepper:true,hidden:props=>props.decorationLine===\"none\"},decorationColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\",hidden:props=>props.decorationLine===\"none\"}}},state2:{type:ControlType.Object,buttonTitle:\"Customize...\",title:\"State 2\",controls:{color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#1E2AD2\"},decorationLine:{type:ControlType.Enum,title:\"Decoration\",options:[\"none\",\"underline\",\"line-through\",\"overline\"],optionTitles:[\"None\",\"Underline\",\"Strikethrough\",\"Overline\"],defaultValue:\"none\"},decorationThickness:{type:ControlType.Number,title:\"Thickness\",defaultValue:1,min:1,displayStepper:true,hidden:props=>props.decorationLine===\"none\"},decorationColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\",hidden:props=>props.decorationLine===\"none\"}}},lineStagger:{type:ControlType.Number,title:\"Line stagger\",unit:\"%\",min:0,max:100,defaultValue:50,displayStepper:true,step:5},transition:{type:ControlType.Transition,title:\"Transition\",description:\"Made with care and love by Teyah.\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"HighlighterScroll\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"*\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"auto\",\"framerIntrinsicWidth\":\"300\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./HighlighterScroll.map"],"mappings":"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"}