{"version":3,"file":"shared-lib.CYDfR7AE.mjs","names":["text"],"sources":["https:/framerusercontent.com/modules/x9N74fQKlr6QLCpcJIqg/ItbrXvATfgkGTI2S7SIM/ScrambleAppear_Prod.js","https:/framerusercontent.com/modules/qF7WuejM7nLJepv57MZL/93ugLp9oZXMCmu9Ct9A0/siteMetadata.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","// Generated by Framer (8ebf084)\nexport default function metadata(params,activeLocale){return{description:\"Made with Framer\",favicon:\"https://framerusercontent.com/assets/8KezGeEry2UlmVdaTTqlKO0M7Q.svg\",robots:\"max-image-preview:large\",title:\"Kioda - Web Lab\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}