{"version":3,"file":"TextReveal.Dsyoeo7v.mjs","names":["React.useContext","React.useMemo","React.Fragment","useRef","React.useId","useRef","useState"],"sources":["https:/framerusercontent.com/modules/v1tuSUboGmI2kkVNqsHI/HaUu7o7oUllmvQlxIdwu/VEP7oMH4I.js","https:/framerusercontent.com/modules/7EolmgbEAVkvrD3GwWyE/urV2GXs0oLZufKvNIzfG/TextReveal.js"],"sourcesContent":["// Generated by Framer (d8b0f12)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useOnVariantChange,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";const cycleOrder=[\"N_LRDElzD\",\"qcRK84FO3\",\"m8abLsJUI\",\"aQ1ahi2qg\"];const serializationHash=\"framer-ariKy\";const variantClassNames={aQ1ahi2qg:\"framer-v-1bbt3ny\",m8abLsJUI:\"framer-v-rezqtz\",N_LRDElzD:\"framer-v-ecsd3k\",qcRK84FO3:\"framer-v-1s9jpn9\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:0,delay:0,duration:.8,type:\"spring\"};const transition2={bounce:0,delay:0,duration:.6,type:\"spring\"};const transition3={duration:0,type:\"tween\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"Variant 1\":\"N_LRDElzD\",\"Variant 2\":\"qcRK84FO3\",\"Variant 3\":\"m8abLsJUI\",\"Variant 4\":\"aQ1ahi2qg\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"N_LRDElzD\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"N_LRDElzD\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onAppear1rqqo1p=activeVariantCallback(async(...args)=>{setVariant(\"qcRK84FO3\",true);});const onAppeare1op8p=activeVariantCallback(async(...args)=>{await delay(()=>setVariant(\"m8abLsJUI\",true),400);});const onAppearvg11i9=activeVariantCallback(async(...args)=>{await delay(()=>setVariant(\"aQ1ahi2qg\",true),400);});const onAppeartm640b=activeVariantCallback(async(...args)=>{await delay(()=>setVariant(\"N_LRDElzD\",true),800);});useOnVariantChange(baseVariant,{aQ1ahi2qg:onAppeartm640b,default:onAppear1rqqo1p,m8abLsJUI:onAppearvg11i9,qcRK84FO3:onAppeare1op8p});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,...addPropertyOverrides({aQ1ahi2qg:{value:transition3},m8abLsJUI:{value:transition2}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-ecsd3k\",className,classNames),\"data-framer-name\":\"Variant 1\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"N_LRDElzD\",ref:refBinding,style:{...style},...addPropertyOverrides({aQ1ahi2qg:{\"data-framer-name\":\"Variant 4\"},m8abLsJUI:{\"data-framer-name\":\"Variant 3\"},qcRK84FO3:{\"data-framer-name\":\"Variant 2\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-127kolf\",layoutDependency:layoutDependency,layoutId:\"quCm7eS57\",style:{backgroundColor:\"var(--token-ce1a1eb6-6671-4dc1-b446-b990ef5c6b32, rgb(255, 255, 255))\",originY:0}})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-ariKy.framer-1dizk16, .framer-ariKy .framer-1dizk16 { display: block; }\",\".framer-ariKy.framer-ecsd3k { align-content: flex-start; align-items: flex-start; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 85px; justify-content: flex-start; overflow: hidden; padding: 0px; position: relative; width: 1px; }\",\".framer-ariKy .framer-127kolf { flex: none; height: 100%; left: calc(2.220446049250313e-14% - 1px / 2); overflow: visible; position: absolute; top: -85px; width: 1px; z-index: 1; }\",\".framer-ariKy.framer-v-1s9jpn9 .framer-127kolf { top: 0px; }\",\".framer-ariKy.framer-v-rezqtz .framer-127kolf { top: 85px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 85\n * @framerIntrinsicWidth 1\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"qcRK84FO3\":{\"layout\":[\"fixed\",\"fixed\"]},\"m8abLsJUI\":{\"layout\":[\"fixed\",\"fixed\"]},\"aQ1ahi2qg\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerVEP7oMH4I=withCSS(Component,css,\"framer-ariKy\");export default FramerVEP7oMH4I;FramerVEP7oMH4I.displayName=\"Scroll Animate Line\";FramerVEP7oMH4I.defaultProps={height:85,width:1};addPropertyControls(FramerVEP7oMH4I,{variant:{options:[\"N_LRDElzD\",\"qcRK84FO3\",\"m8abLsJUI\",\"aQ1ahi2qg\"],optionTitles:[\"Variant 1\",\"Variant 2\",\"Variant 3\",\"Variant 4\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerVEP7oMH4I,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerVEP7oMH4I\",\"slots\":[],\"annotations\":{\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"qcRK84FO3\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"m8abLsJUI\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"aQ1ahi2qg\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerComponentViewportWidth\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"1\",\"framerIntrinsicHeight\":\"85\",\"framerDisplayContentsDiv\":\"false\",\"framerColorSyntax\":\"true\",\"framerImmutableVariables\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./VEP7oMH4I.map","import{jsx as _jsx}from\"react/jsx-runtime\";import{useRef,useEffect,useState}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";/**\n * TextReveal - Text that reveals as you scroll with responsive font sizing\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight auto\n */export default function TextReveal(props){const{text=\"This text unblurs and fades in word by word as you scroll\",baseColor=\"#888888\",revealColor=\"#000000\",font={fontSize:24,lineHeight:1.5,letterSpacing:\"0em\",variant:\"Regular\",textAlign:\"left\"},fullRevealDistance=1e3,initialBlur=3,tag=\"p\",fitText=false,minFontSize=16,maxFontSize=72,style={}}=props;const outerRef=useRef(null);const containerRef=useRef(null);const animationFrameRef=useRef(null);const words=(text||\"\").split(\" \");const[scrollProgress,setScrollProgress]=useState(0);const[fontSize,setFontSize]=useState(font?.fontSize||24);const isCanvas=RenderTarget.current()===RenderTarget.canvas;// Effect for responsive font sizing (also run in canvas)\nuseEffect(()=>{if(!fitText)return;const handleResize=()=>{if(!containerRef.current||typeof window===\"undefined\")return;// Get container width (prefer container, fallback to viewport)\nconst containerWidth=containerRef.current.offsetWidth||window.innerWidth;const baseFontSize=parseInt(font?.fontSize)||24;// Use a base width of 1000px as reference\nconst baseWidth=1e3;// Calculate proportional font size\nconst scaledFontSize=baseFontSize*(containerWidth/baseWidth);// Clamp between min and max font sizes\nconst clampedSize=Math.max(minFontSize,Math.min(maxFontSize,scaledFontSize));setFontSize(clampedSize);};handleResize();window.addEventListener(\"resize\",handleResize);return()=>{window.removeEventListener(\"resize\",handleResize);};},[fitText,font?.fontSize,minFontSize,maxFontSize]);// Effect for scroll tracking\nuseEffect(()=>{if(isCanvas)return;let startPosition=0;let containerHeight=0;let endPosition=0;const updateScrollPositions=()=>{if(outerRef.current){const rect=outerRef.current.getBoundingClientRect();startPosition=window.scrollY+rect.top;containerHeight=rect.height;endPosition=startPosition+fullRevealDistance;}};const handleScroll=()=>{if(!outerRef.current)return;const currentScroll=window.scrollY;const elementTop=startPosition-currentScroll;const visibleHeight=window.innerHeight-elementTop;const progress=(visibleHeight-containerHeight)/(fullRevealDistance-containerHeight);setScrollProgress(Math.max(0,Math.min(1,progress)));};const trackScroll=()=>{handleScroll();animationFrameRef.current=requestAnimationFrame(trackScroll);};const initializeScrollTracking=()=>{updateScrollPositions();handleScroll();animationFrameRef.current=requestAnimationFrame(trackScroll);};window.addEventListener(\"resize\",updateScrollPositions);initializeScrollTracking();return()=>{cancelAnimationFrame(animationFrameRef.current);window.removeEventListener(\"resize\",updateScrollPositions);};},[fullRevealDistance,isCanvas]);// Effect for responsive font sizing\nuseEffect(()=>{if(!fitText||isCanvas)return;const handleResize=()=>{if(!containerRef.current||typeof window===\"undefined\")return;// Get container width (prefer container, fallback to viewport)\nconst containerWidth=containerRef.current.offsetWidth||window.innerWidth;const baseFontSize=parseInt(font?.fontSize)||24;// Use a base width of 1000px as reference\nconst baseWidth=1e3;// Calculate proportional font size\nconst scaledFontSize=baseFontSize*(containerWidth/baseWidth);// Clamp between min and max font sizes\nconst clampedSize=Math.max(minFontSize,Math.min(maxFontSize,scaledFontSize));setFontSize(clampedSize);};handleResize();window.addEventListener(\"resize\",handleResize);return()=>{window.removeEventListener(\"resize\",handleResize);};},[fitText,font?.fontSize,minFontSize,maxFontSize,isCanvas]);const Tag=tag;return /*#__PURE__*/_jsx(\"div\",{ref:outerRef,style:{minWidth:5,minHeight:5,width:style.width||100,// Remove fixed height, let height fit content\ndisplay:\"flex\",alignItems:\"flex-start\",justifyContent:\"flex-start\",...style},children:/*#__PURE__*/_jsx(Tag,{ref:containerRef,style:{position:\"sticky\",top:0,fontFamily:font?.fontFamily,fontWeight:font?.fontWeight,fontSize:fitText?`${fontSize}px`:font?.fontSize,lineHeight:font?.lineHeight,letterSpacing:font?.letterSpacing,textAlign:font?.textAlign,margin:0,padding:0,width:\"100%\",minWidth:5,minHeight:5},children:words.map((word,index)=>{const wordProgress=isCanvas?1:scrollProgress*words.length-index;const progress=Math.max(0,Math.min(1,wordProgress));const blurAmount=initialBlur*(1-progress);const color=progress===1?revealColor:baseColor;return /*#__PURE__*/_jsx(\"span\",{style:{display:\"inline-block\",marginRight:\"0.25em\",filter:`blur(${blurAmount}px)`,color:color,transition:\"filter 0.2s ease-out, color 0.2s ease-out\"},children:word},index);})})});}addPropertyControls(TextReveal,{text:{type:ControlType.String,title:\"Text\",displayTextArea:true},baseColor:{type:ControlType.Color,title:\"Base Color\",defaultValue:\"#888888\"},revealColor:{type:ControlType.Color,title:\"Reveal Color\",defaultValue:\"#000000\"},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:24,lineHeight:1.5,letterSpacing:\"0em\",variant:\"Regular\",textAlign:\"left\"}},fullRevealDistance:{type:ControlType.Number,title:\"Full Reveal Distance\",min:100,max:5e3,step:10,defaultValue:1e3},initialBlur:{type:ControlType.Number,title:\"Initial Blur\",min:0,max:10,step:.5,defaultValue:3},tag:{type:ControlType.Enum,title:\"Tag\",options:[\"p\",\"h1\",\"h2\",\"h3\"],optionTitles:[\"P\",\"H1\",\"H2\",\"H3\"],defaultValue:\"p\",displaySegmentedControl:true},fitText:{type:ControlType.Boolean,title:\"Responsive Text\",defaultValue:false,enabledTitle:\"On\",disabledTitle:\"Off\",description:\"Scale font size based on screen width\"},minFontSize:{type:ControlType.Number,title:\"Min Font Size\",defaultValue:16,min:8,max:48,step:1,unit:\"px\",hidden:({fitText})=>!fitText},maxFontSize:{type:ControlType.Number,title:\"Max Font Size\",defaultValue:72,min:24,max:200,step:1,unit:\"px\",hidden:({fitText})=>!fitText}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"TextReveal\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"auto\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./TextReveal.map"],"mappings":"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"}