{"version":3,"file":"TextEffectOnScroll_Prod.DY7NDGuR.mjs","names":["useMemo","useRef","__esmMin","init_npm_react_18_3_1","pe","ee","window","de","init_jsx_runtime","J","p","ce","init_ssg_sandbox_shims","cubicBezier","init_framer_motion_DhsWWWsN","RenderTarget","init_framer_B1b760uK","ControlType","addPropertyControls","TextEffectOnScroll","props","id","generateRandomString","isCanvas","ref","animate","initial","willChangeOpacity","willChangeTransform","willChangeFilter","effect","willChangeProps","willChange","SplitText","getValue","key","value","initialValue","DEFAULT_ANIMATE_PROPS","progress","mapRange","fromLow","fromHigh","toLow","toHigh","result","i","randomIndex","CHARACTERS","TOP","BOTTOM","CENTER","VIEWPORT_OFFSETS","easeInOut","trackElementPosition","init_TextEffectOnScroll_Prod","elementsRef","Tag","tag","spanClassName","noTransformEffects","lines","textLines","text","viewportOffset","animation","viewportHeight","totalElements","updates","element","scrollY","topPosition","offset","transforms","styles","opacity","scale","blur","rotate","rotateX","rotateY","rotateZ","skewX","skewY","offsetX","offsetY","update","index","createLineChildren","lineWords","splitCharacters","word","wordIndex","savedIndex","el","char","lineIndex","charIndex","style","origin","rafId","lastPosition","throttleTimeout","updatePosition","rect","callback"],"sources":["https:/framerusercontent.com/modules/al7tHO15Oyq9AxBfST8y/uoWcA11u5SdzqY0Oz7hQ/TextEffectOnScroll_Prod.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useEffect,forwardRef,useRef,useMemo,memo}from\"react\";import{cubicBezier}from\"framer-motion\";const DEFAULT_ANIMATE_PROPS={opacity:1,scale:1,blur:0,rotate:0,rotateX:0,rotateY:0,rotateZ:0,skewX:0,skewY:0,x:0,y:0};const TOP=0;const BOTTOM=1;const CENTER=.5;const VIEWPORT_OFFSETS={bottomToCenter:[BOTTOM,CENTER],bottomToTop:[BOTTOM,TOP],centerToTop:[TOP,CENTER],topToBottom:[TOP,BOTTOM]};const easeInOut=cubicBezier(.44,0,.56,1);/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any\n *\n * @framerDisableUnlink\n *\n * @framerIntrinsicWidth 400\n */export default function TextEffectOnScroll(props){var _effect_rotate;const{effect}=props;const id=useMemo(generateRandomString,[]);const isCanvas=RenderTarget.current()===RenderTarget.canvas;const ref=useRef(null);const animate={};const initial={};let willChangeOpacity=false;let willChangeTransform=false;let willChangeFilter=false;if(effect.opacity!==1){animate.opacity=1;initial.opacity=effect.opacity;willChangeOpacity=true;}if(effect.scale!==1){animate.scale=1;initial.scale=effect.scale;willChangeTransform=true;}if(effect.blur!==0){animate.blur=0;initial.blur=effect.blur;willChangeFilter=true;}if(effect.rotate){if(effect.rotate.type===\"3d\"){if(effect.rotate.x!==0){animate.rotateX=0;initial.rotateX=effect.rotate.x;willChangeTransform=true;}if(effect.rotate.y!==0){animate.rotateY=0;initial.rotateY=effect.rotate.y;willChangeTransform=true;}if(effect.rotate.z!==0){animate.rotateZ=0;initial.rotateZ=effect.rotate.z;willChangeTransform=true;}}else{if(effect.rotate.rotation!==0){animate.rotate=0;initial.rotate=effect.rotate.rotation;willChangeTransform=true;}}}if(effect.skew){if(effect.skew.x!==0){animate.skewX=0;initial.skewX=effect.skew.x;willChangeTransform=true;}if(effect.skew.y!==0){animate.skewY=0;initial.skewY=effect.skew.y;willChangeTransform=true;}}if(effect.offset){var _effect_offset,_effect_offset1;if(((_effect_offset=effect.offset)===null||_effect_offset===void 0?void 0:_effect_offset.x)!==0){var _effect_offset2;animate.x=0;initial.x=(_effect_offset2=effect.offset)===null||_effect_offset2===void 0?void 0:_effect_offset2.x;willChangeTransform=true;}if(((_effect_offset1=effect.offset)===null||_effect_offset1===void 0?void 0:_effect_offset1.y)!==0){var _effect_offset3;animate.y=0;initial.y=(_effect_offset3=effect.offset)===null||_effect_offset3===void 0?void 0:_effect_offset3.y;willChangeTransform=true;}}let willChangeProps=[];if(willChangeOpacity)willChangeProps.push(\"opacity\");if(willChangeTransform)willChangeProps.push(\"transform\");if(willChangeFilter)willChangeProps.push(\"filter\");const willChange=willChangeProps.join(\", \");return /*#__PURE__*/_jsx(SplitText,{ref:ref,id:id,style:{color:props.color,userSelect:props.userSelect?\"auto\":\"none\",margin:0,perspective:((_effect_rotate=effect.rotate)===null||_effect_rotate===void 0?void 0:_effect_rotate.type)===\"3d\"?`${effect.rotate.perspective}px`:undefined,...props.font,...props.style},text:props.text,animate:isCanvas?{}:animate,initial:isCanvas?{}:initial,animation:props.animation,offset:props.offset,gap:props.lineGap,willChange:willChange,noTransformEffects:!willChangeTransform,splitCharacters:props.per===\"character\",tag:props.tag,origin:effect.origin});}TextEffectOnScroll.displayName=\"Text Effect on Scroll\";addPropertyControls(TextEffectOnScroll,{text:{type:ControlType.String,defaultValue:\"Learn Framer With Framer University\",placeholder:\"Text\",displayTextArea:true},effect:{type:ControlType.Object,icon:\"effect\",controls:{opacity:{type:ControlType.Number,defaultValue:1,min:0,max:1,step:.01},scale:{type:ControlType.Number,defaultValue:1,min:0,max:10,step:.1},blur:{type:ControlType.Number,defaultValue:0,min:0,step:1},rotate:{type:ControlType.Object,optional:true,controls:{type:{type:ControlType.Enum,options:[\"2d\",\"3d\"],optionTitles:[\"2D\",\"3D\"],displaySegmentedControl:true},rotation:{type:ControlType.Number,defaultValue:0,min:-360,max:360,step:1,unit:\"\\xb0\",hidden:props=>props.type!==\"2d\"},x:{type:ControlType.Number,defaultValue:0,min:-360,max:360,step:1,unit:\"\\xb0\",hidden:props=>props.type!==\"3d\"},y:{type:ControlType.Number,defaultValue:0,min:-360,max:360,step:1,unit:\"\\xb0\",hidden:props=>props.type!==\"3d\"},z:{type:ControlType.Number,defaultValue:0,min:-360,max:360,step:1,unit:\"\\xb0\",hidden:props=>props.type!==\"3d\"},perspective:{type:ControlType.Number,defaultValue:1200,min:1,max:1e4,step:1,hidden:props=>props.type!==\"3d\"}}},skew:{type:ControlType.Object,optional:true,controls:{x:{type:ControlType.Number,defaultValue:0,min:-90,max:90,step:1,unit:\"\\xb0\"},y:{type:ControlType.Number,defaultValue:0,min:-90,max:90,step:1,unit:\"\\xb0\"}}},offset:{type:ControlType.Object,optional:true,controls:{x:{type:ControlType.Number,defaultValue:0,min:-500,max:500,step:1,unit:\"px\"},y:{type:ControlType.Number,defaultValue:0,min:-500,max:500,step:1,unit:\"px\"}}},origin:{type:ControlType.Object,controls:{x:{type:ControlType.Number,defaultValue:50,min:0,max:100,step:1,unit:\"%\"},y:{type:ControlType.Number,defaultValue:50,min:0,max:100,step:1,unit:\"%\"}}}}},animation:{type:ControlType.Enum,options:[\"bottomToCenter\",\"bottomToTop\",\"centerToTop\",\"topToBottom\",\"inAndOutQuick\",\"inAndOutSlow\"],optionTitles:[\"In (Quick)\",\"In (Slow)\",\"Out (Quick)\",\"Out (Slow)\",\"In and Out (Quick)\",\"In and Out (Slow)\"]},per:{type:ControlType.Enum,options:[\"character\",\"word\"],optionTitles:[\"Letter\",\"Word\"],displaySegmentedControl:true},offset:{type:ControlType.Number,defaultValue:10,min:0,max:100,step:.1,unit:\"%\"},font:{type:\"font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:14,lineHeight:1}},color:{type:ControlType.Color,defaultValue:\"#000\"},lineGap:{type:ControlType.Number,defaultValue:0,min:0,step:1,displayStepper:true},userSelect:{type:ControlType.Boolean,defaultValue:false},tag:{type:ControlType.Enum,title:\"Tag\",defaultValue:\"p\",displaySegmentedControl:true,options:[\"h1\",\"h2\",\"h3\",\"p\"],optionTitles:[\"H1\",\"H2\",\"H3\",\"P\"],description:\"More components at [Framer University](https://frameruni.link/cc).\"}});const SplitText=/*#__PURE__*/memo(/*#__PURE__*/forwardRef(function SplitText({id,text,className,style,animate,initial,animation,offset,gap,willChange,noTransformEffects,splitCharacters=false,tag,origin},ref){const isCanvas=RenderTarget.current()===RenderTarget.canvas;const elementsRef=useRef([]);const Tag=tag;const spanClassName=noTransformEffects?`${id}-span-no`:`${id}-span-yes`;const lines=useMemo(()=>{const textLines=text.split(\"\\n\");const lines=[];for(let i=0;i<textLines.length;i++){lines.push(textLines[i].split(/[ \\t]+/));}return lines;},[text]);useEffect(()=>{if(isCanvas){return;}const updateElements=topPosition=>{const viewportOffset=VIEWPORT_OFFSETS[animation];const viewportHeight=window.innerHeight;const totalElements=elementsRef.current.length;const updates=[];for(let i=0;i<totalElements;i++){const element=elementsRef.current[i];if(!element){continue;}const scrollY=(topPosition+(offset||0)*(i-totalElements/2))/viewportHeight;let progress=1;if(animation===\"inAndOutQuick\"){if(scrollY<=.3){progress=mapRange(scrollY,0,.3,0,1);}else if(scrollY>=.7){progress=mapRange(scrollY,.7,1,1,0);}}else if(animation===\"inAndOutSlow\"){if(scrollY<=.5){progress=mapRange(scrollY,0,.5,0,1);}else{progress=mapRange(scrollY,.5,1,1,0);}}else{progress=mapRange(scrollY,viewportOffset[0],viewportOffset[1],0,1);}progress=Math.max(0,Math.min(1,easeInOut(progress)));const transforms=[];const styles={};const opacity=getValue(animate,initial,\"opacity\",progress);if(opacity!==undefined){styles.opacity=String(opacity);}const scale=getValue(animate,initial,\"scale\",progress);if(scale!==undefined){transforms.push(`scale(${scale})`);}const blur=getValue(animate,initial,\"blur\",progress);if(blur!==undefined){element.style.filter=`blur(${blur}px)`;}const rotate=getValue(animate,initial,\"rotate\",progress);if(rotate!==undefined){transforms.push(`rotate(${rotate}deg)`);}const rotateX=getValue(animate,initial,\"rotateX\",progress);if(rotateX!==undefined){transforms.push(`rotateX(${rotateX}deg)`);}const rotateY=getValue(animate,initial,\"rotateY\",progress);if(rotateY!==undefined){transforms.push(`rotateY(${rotateY}deg)`);}const rotateZ=getValue(animate,initial,\"rotateZ\",progress);if(rotateZ!==undefined){transforms.push(`rotateZ(${rotateZ}deg)`);}const skewX=getValue(animate,initial,\"skewX\",progress);if(skewX!==undefined){transforms.push(`skewX(${skewX}deg)`);}const skewY=getValue(animate,initial,\"skewY\",progress);if(skewY!==undefined){transforms.push(`skewY(${skewY}deg)`);}const offsetX=getValue(animate,initial,\"x\",progress);if(offsetX!==undefined){transforms.push(`translateX(${offsetX}px)`);}const offsetY=getValue(animate,initial,\"y\",progress);if(offsetY!==undefined){transforms.push(`translateY(${offsetY}px)`);}if(transforms.length){styles.transform=transforms.join(\" \");}updates.push({element,styles});}// Batch DOM writes\nrequestAnimationFrame(()=>{updates.forEach(update=>{if(!update)return;const{element,styles}=update;Object.assign(element.style,styles);});});};const cleanup=trackElementPosition(ref,updateElements);return cleanup;},[animate,initial]);let index=0;const createLineChildren=(lineIndex,lineWords)=>{return lineWords.map((word,wordIndex)=>{if(splitCharacters){return /*#__PURE__*/_jsx(\"span\",{className:`${id}-word-wrapper`,children:(word+(wordIndex<lineWords.length-1?\" \":\"\")).split(\"\").map((char,charIndex)=>{const savedIndex=index;index++;return /*#__PURE__*/_jsx(\"span\",{ref:el=>{if(el)elementsRef.current[savedIndex]=el;},className:spanClassName,children:char},`${lineIndex}-${wordIndex}-${charIndex}`);})},`${lineIndex}-${wordIndex}`);}const savedIndex=index;index++;return /*#__PURE__*/_jsx(\"span\",{ref:el=>{if(el)elementsRef.current[savedIndex]=el;},className:spanClassName,children:word+(wordIndex<lineWords.length-1?\" \":\"\")},`${lineIndex}-${wordIndex}`);});};var _origin_x,_origin_y;return /*#__PURE__*/_jsxs(Tag,{className:className,ref:ref,style:{...style,...lines.length===1?{}:{display:\"flex\",flexDirection:\"column\",gap:gap},transformStyle:\"preserve-3d\",whiteSpace:(style===null||style===void 0?void 0:style.width)?undefined:\"nowrap\"},children:[/*#__PURE__*/_jsx(\"style\",{children:`\n\t\t\t\t.${id}-line {\n\t\t\t\t\twidth: 100%;\n\t\t\t\t\tdisplay: block;\n\t\t\t\t\ttransform-style: preserve-3d;\n\t\t\t\t}\n\t\t\t\t.${id}-word-wrapper {\n\t\t\t\t\tdisplay: inline-block;\n\t\t\t\t\ttransform-style: preserve-3d;\n\t\t\t\t\twhite-space: pre;\n\t\t\t\t}\n\t\t\t\t.${id}-span-no {\n\t\t\t\t\tdisplay: inline-block;\n\t\t\t\t\ttransform-style: preserve-3d;\n\t\t\t\t\twhite-space: pre;\n\t\t\t\t}\n\t\t\t\t.${id}-span-yes {\n\t\t\t\t\tdisplay: inline-block;\n\t\t\t\t\ttransform-style: preserve-3d;\n\t\t\t\t\twhite-space: pre;\n\t\t\t\t}\n\t\t\t\t.${id}-span-no,\n\t\t\t\t.${id}-span-yes {\n\t\t\t\t\twill-change: ${willChange};\n\t\t\t\t\ttransform-origin: ${(_origin_x=origin===null||origin===void 0?void 0:origin.x)!==null&&_origin_x!==void 0?_origin_x:50}% ${(_origin_y=origin===null||origin===void 0?void 0:origin.y)!==null&&_origin_y!==void 0?_origin_y:50}%;\n\t\t\t\t}\n\t\t\t\t`}),lines.length===1?createLineChildren(0,lines[0]):lines.map((lineWords,lineIndex)=>/*#__PURE__*/_jsx(\"span\",{className:`${id}-line`,children:createLineChildren(lineIndex,lineWords)},lineIndex))]});}));function getValue(animate,initial,key,progress){if(!animate||!initial||!animate.hasOwnProperty(key)){return undefined;}const value=animate[key];var _initial_key,_ref;const initialValue=(_ref=(_initial_key=initial===null||initial===void 0?void 0:initial[key])!==null&&_initial_key!==void 0?_initial_key:DEFAULT_ANIMATE_PROPS[key])!==null&&_ref!==void 0?_ref:0;if(progress<=0){return initialValue;}else if(progress>=1){return value;}else{return initialValue+(value-initialValue)*progress;}}const trackElementPosition=(ref,callback)=>{let rafId=null;let lastPosition=null;let throttleTimeout=null;const updatePosition=()=>{if(ref.current){const element=ref.current;const rect=element.getBoundingClientRect();// Add throttling to reduce updates\nif(throttleTimeout===null){throttleTimeout=window.setTimeout(()=>{if(lastPosition!==rect.top){lastPosition=rect.top;callback(rect.top);}throttleTimeout=null;},16)// Approximately 60fps\n;}}rafId=requestAnimationFrame(updatePosition);};// Start the animation frame loop\nrafId=requestAnimationFrame(updatePosition);// Return a cleanup function\nreturn()=>{if(rafId!==null){cancelAnimationFrame(rafId);}};};function mapRange(value,fromLow,fromHigh,toLow,toHigh){if(fromLow===fromHigh){return toLow;}const percentage=(value-fromLow)/(fromHigh-fromLow);return toLow+percentage*(toHigh-toLow);}const CHARACTERS=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\";function generateRandomString(){let result=\"\";for(let i=0;i<8;i++){const randomIndex=Math.floor(Math.random()*CHARACTERS.length);result+=CHARACTERS.charAt(randomIndex);}return result;}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"TextEffectOnScroll\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"400\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerDisableUnlink\":\"*\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./TextEffectOnScroll_Prod.map"],"mappings":"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"}