{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/x9N74fQKlr6QLCpcJIqg/ItbrXvATfgkGTI2S7SIM/ScrambleAppear_Prod.js"],
  "sourcesContent": ["import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useEffect,useState,useRef,useMemo}from\"react\";import{useInView,animate}from\"framer-motion\";const HIDDEN=0;const SCRAMBLED=1;const REVEALED=2;/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n *\n * @framerDisableUnlink\n *\n * @framerIntrinsicWidth 400\n * @framerIntrinsicHeight 200\n */export default function ScrambleAppear(props){var _props_style;const{from,scrambledLetters,text,scrambledColor,animation,speed}=props;const isCanvas=RenderTarget.current()===RenderTarget.canvas;const Tag=props.tag;const ref=useRef(null);const encryptedText=useRef(randomString(props));const[progress,setProgress]=useState(0);const[currentAnimation,setCurrentAnimation]=useState(null);const intervalRef=useRef(null);const isInView=useInView(ref,{once:!props.animation.replay,amount:\"some\"});const characterDelay=mapRange(speed,1,100,.2,.002)// seconds per character\n;const shuffledIndices=useMemo(()=>{if(from===\"random\"){const indices=Array.from({length:text.length},(_,i)=>i);return indices.sort(()=>Math.random()-.5);}return[];},[text,from]);const runAnimation=()=>{if(!isCanvas){if(currentAnimation){currentAnimation.stop();}if(intervalRef.current){clearInterval(intervalRef.current);}// Add timeout for delay\nsetTimeout(()=>{intervalRef.current=setInterval(()=>{encryptedText.current=randomString(props);},characterDelay*1e3);setCurrentAnimation(animate(0,1,{type:\"ease\",ease:\"linear\",duration:characterDelay*(text.length+scrambledLetters),onUpdate:setProgress,onComplete:()=>{if(intervalRef.current){clearInterval(intervalRef.current);}}}));},animation.delay*1e3);}};useEffect(()=>{if(animation.trigger==\"appear\"){runAnimation();}return()=>{if(intervalRef.current){clearInterval(intervalRef.current);}};},[]);useEffect(()=>{if(animation.trigger==\"layerInView\"){if(isInView){runAnimation();}else{if(currentAnimation){currentAnimation.stop();setProgress(0);if(intervalRef.current){clearInterval(intervalRef.current);}}}}},[isInView]);let segments=[];switch(from){case\"left\":{const leftCutoff=mapRange(progress,0,1,-scrambledLetters,text.length);const rightCutoff=mapRange(progress,0,1,0,text.length+scrambledLetters);segments.push([text.substring(0,clamp(leftCutoff,0,text.length)),REVEALED],[encryptedText.current.substring(clamp(leftCutoff,0,text.length),clamp(rightCutoff,0,text.length)),SCRAMBLED],[text.substring(clamp(rightCutoff,0,text.length)),HIDDEN]);break;}case\"center\":{const center=Math.ceil(text.length/2);const letters=Math.max(Math.floor(scrambledLetters/2),1);const leftCutoff=mapRange(progress,0,1,center,-letters);const rightCutoff=mapRange(progress,0,1,center+letters,0);segments.push([text.substring(0,clamp(leftCutoff,0,text.length)),HIDDEN],[encryptedText.current.substring(clamp(leftCutoff,0,center),clamp(rightCutoff,0,center)),SCRAMBLED],[text.substring(clamp(rightCutoff,0,center),clamp(text.length-rightCutoff,center,text.length)),REVEALED],[encryptedText.current.substring(clamp(text.length-leftCutoff,center,text.length),clamp(text.length-rightCutoff,center,text.length)),SCRAMBLED],[text.substring(clamp(text.length-leftCutoff,0,text.length),text.length),HIDDEN]);break;}case\"right\":{const leftCutoff=mapRange(progress,0,1,text.length,-scrambledLetters);const rightCutoff=mapRange(progress,0,1,text.length+scrambledLetters,0);segments.push([text.substring(0,clamp(leftCutoff,0,text.length)),HIDDEN],[encryptedText.current.substring(clamp(leftCutoff,0,text.length),clamp(rightCutoff,0,text.length)),SCRAMBLED],[text.substring(clamp(rightCutoff,0,text.length),text.length),REVEALED]);break;}case\"random\":{// Show all hidden characters if progress is 0 (during delay)\nif(progress===0){segments.push([text,HIDDEN]);}else if(progress>=1){segments.push([text,REVEALED]);}else{// Calculate two thresholds for each character based on its position in shuffledIndices\nfor(let i=0;i<text.length;i++){const indexInSequence=shuffledIndices.indexOf(i);// Adjust the windows to maintain consistent number of scrambled letters\nconst scrambleWindow=scrambledLetters/text.length// Size of the \"window\" of scrambled letters\n;const startScrambleAt=indexInSequence/text.length*(1-scrambleWindow)// When this character starts scrambling\n;const startRevealAt=startScrambleAt+scrambleWindow// When this character starts revealing\n;if(progress>=startRevealAt){// Past reveal threshold - show actual character\nsegments.push([text[i],REVEALED]);}else if(progress>=startScrambleAt){// Between scramble and reveal threshold - show scrambled\nsegments.push([encryptedText.current[i],SCRAMBLED]);}else{// Before scramble threshold - show hidden\nsegments.push([text[i],HIDDEN]);}}}break;}}return /*#__PURE__*/_jsx(Tag,{ref:ref,style:{color:props.color,userSelect:\"none\",pointerEvents:\"none\",margin:0,whiteSpace:((_props_style=props.style)===null||_props_style===void 0?void 0:_props_style.width)?undefined:\"nowrap\",...props.font,...props.style},children:isCanvas?text:consolidateSegments(segments).map(([text,state],index)=>{switch(state){case HIDDEN:return /*#__PURE__*/_jsx(\"span\",{style:{opacity:0},children:text},index);case SCRAMBLED:return scrambledColor?/*#__PURE__*/_jsx(\"span\",{style:{color:scrambledColor},children:text},index):text;case REVEALED:return text;}})});}ScrambleAppear.displayName=\"Scramble Appear\";addPropertyControls(ScrambleAppear,{text:{type:ControlType.String,defaultValue:\"Learn Framer With Framer University\",displayTextArea:true},characters:{type:ControlType.String,defaultValue:\"ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()_+[]{}|;:,.<>?~\",displayTextArea:true},from:{type:ControlType.Enum,defaultValue:\"left\",options:[\"left\",\"center\",\"right\",\"random\"],optionTitles:[\"Left\",\"Center\",\"Right\",\"Random\"]},font:{type:\"font\",controls:\"extended\",defaultFontType:\"monospace\",defaultValue:{fontSize:24,lineHeight:1.4}},color:{type:ControlType.Color,defaultValue:\"#000\"},scrambledColor:{type:ControlType.Color,optional:true,title:\"Scrambled\"},speed:{type:ControlType.Number,defaultValue:75,min:1,max:100,step:1,unit:\"%\"},scrambledLetters:{type:ControlType.Number,defaultValue:10,min:1,step:1,displayStepper:true,title:\"Letters\"},animation:{type:ControlType.Object,icon:\"effect\",controls:{trigger:{type:ControlType.Enum,defaultValue:\"layerInView\",options:[\"appear\",\"layerInView\"],optionTitles:[\"Appear\",\"Layer in View\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},replay:{type:ControlType.Boolean,defaultValue:true,hidden:props=>props.trigger!==\"layerInView\"},delay:{type:ControlType.Number,defaultValue:0,min:0,step:.01}}},options:{type:ControlType.Object,buttonTitle:\"Options\",controls:{matchCase:{type:ControlType.Boolean,defaultValue:true},keepSpaces:{type:ControlType.Boolean,defaultValue:false,title:\"Spaces\",enabledTitle:\"Keep\",disabledTitle:\"Replace\",description:\"\"}}},userSelect:{type:ControlType.Boolean,defaultValue:true},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 randomString=props=>{const length=props.text.length;const characters=props.characters;const originalText=props.text;const matchCase=props.options.matchCase;const keepSpaces=props.options.keepSpaces;if(length<=0){return\"\";}let result=\"\";let lastChar=\"\";for(let i=0;i<length;i++){const originalChar=originalText[i];// Preserve spaces and tabs if keepSpaces is true\nif(keepSpaces&&(originalChar===\" \"||originalChar===\"\t\")){result+=originalChar;continue;}let newChar;do{newChar=characters[Math.floor(Math.random()*characters.length)];// Match case if matchCase is true\nif(matchCase&&originalChar){newChar=originalChar===originalChar.toUpperCase()?newChar.toUpperCase():newChar.toLowerCase();}}while(newChar===lastChar&&characters.length>=8)result+=newChar;lastChar=newChar;}return result;};function mapRange(value,fromLow,fromHigh,toLow,toHigh){if(fromLow===fromHigh){return toLow;}const percentage=(value-fromLow)/(fromHigh-fromLow);return toLow+percentage*(toHigh-toLow);}function clamp(value,min,max){return Math.max(min,Math.min(value,max));}function consolidateSegments(segments){return segments.filter(([text])=>text.length>0).reduce((acc,curr)=>{// If array is empty or last segment has different state, add new segment\nif(acc.length===0||acc[acc.length-1][1]!==curr[1]){acc.push(curr);}else{// Combine text with the last segment that has the same state\nacc[acc.length-1][0]+=curr[0];}return acc;},[]);}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ScrambleAppear\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any\",\"framerDisableUnlink\":\"*\",\"framerIntrinsicWidth\":\"400\",\"framerIntrinsicHeight\":\"200\",\"framerSupportedLayoutWidth\":\"any\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ScrambleAppear_Prod.map"],
  "mappings": "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",
  "names": ["HIDDEN", "SCRAMBLED", "REVEALED", "ScrambleAppear", "props", "_props_style", "from", "scrambledLetters", "text", "scrambledColor", "animation", "speed", "isCanvas", "RenderTarget", "Tag", "ref", "pe", "encryptedText", "randomString", "progress", "setProgress", "ye", "currentAnimation", "setCurrentAnimation", "intervalRef", "isInView", "useInView", "characterDelay", "mapRange", "shuffledIndices", "se", "_", "i", "runAnimation", "animate", "ue", "segments", "leftCutoff", "rightCutoff", "clamp", "center", "letters", "indexInSequence", "scrambleWindow", "startScrambleAt", "startRevealAt", "p", "consolidateSegments", "state", "index", "addPropertyControls", "ControlType", "length", "characters", "originalText", "matchCase", "keepSpaces", "result", "lastChar", "originalChar", "newChar", "value", "fromLow", "fromHigh", "toLow", "toHigh", "percentage", "min", "max", "acc", "curr"]
}
