{"version":3,"file":"TypingText.ChSHVVCN.mjs","names":["useState","TypeAnimation"],"sources":["https:/framerusercontent.com/modules/uwNrMtEY1UZYaDqLH57P/2qLbfAkT0C4Ub2I4eYn0/TypingText.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useState,useEffect}from\"react\";import{addPropertyControls,ControlType}from\"framer\";import{TypeAnimation}from\"react-type-animation\";import{useInView}from\"react-intersection-observer\";export default function TypingText(props){const[inViewRef,inView]=useInView({triggerOnce:true});const[playAnimation,setPlayAnimation]=useState(props.playAnimation);const[isReady,setIsReady]=useState(false);// --- IMPORT CZCIONKI FIGTREE (Dla Androida/Windows) ---\nuseEffect(()=>{// Sprawdzamy, czy font nie jest już załadowany\nif(!document.getElementById(\"google-font-figtree\")){const link=document.createElement(\"link\");link.id=\"google-font-figtree\";link.rel=\"stylesheet\";// Pobieramy wagi od 300 do 900\nlink.href=\"https://fonts.googleapis.com/css2?family=Figtree:wght@300;400;500;600;700;800;900&display=swap\";document.head.appendChild(link);}},[]);// -----------------------------------------------------\n// Handle initial delay logic\nuseEffect(()=>{if(inView&&playAnimation){const timer=setTimeout(()=>{setIsReady(true);},props.initialDelay*1e3)// Convert seconds to ms\n;return()=>clearTimeout(timer);}},[inView,playAnimation,props.initialDelay]);useEffect(()=>{setPlayAnimation(props.playAnimation);},[props.playAnimation]);const generateSequence=()=>{const textToDisplay=props.textArea&&props.textArea.length>0?props.textArea.replaceAll(\"|\",\"\\n\"):props.text;return[textToDisplay];};const sequence=generateSequence();// Add additional delayRender (ms) padding if needed\nif(props.delayRender&&props.delayRender>0)sequence.unshift(props.delayRender);const styles={color:props.color,fontSize:`${props.fontSize}px`,fontFamily:props.fontFamily,fontWeight:props.fontWeight,// Convert percentage to unitless value for line-height\nlineHeight:`${props.lineHeight/100}`,whiteSpace:\"pre-wrap\",margin:0,padding:0,display:\"block\",textAlign:\"left\",verticalAlign:\"top\"};return /*#__PURE__*/_jsx(\"div\",{ref:inViewRef,style:{width:\"100%\",height:\"100%\",display:\"flex\",flexDirection:\"column\",justifyContent:\"flex-start\",alignItems:\"flex-start\",overflow:\"visible\",margin:0,padding:0},children:inView&&playAnimation&&isReady&&/*#__PURE__*/_jsxs(\"div\",{className:props.smoothTyping?\"smooth-typing-wrapper\":\"\",style:{width:\"100%\",margin:0,padding:0},children:[/*#__PURE__*/_jsx(TypeAnimation,{sequence:sequence,speed:props.typingSpeed,repeat:0,cursor:props.cursor,wrapper:\"span\",style:styles,omitDeletionAnimation:true},props.text+props.textArea),/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:`\n                        .smooth-typing-wrapper {\n                            animation: wordReveal 0.2s ease-out;\n                            width: 100%;\n                            display: flex;\n                        }\n                        @keyframes wordReveal {\n                            0% { filter: blur(3px); opacity: 0.8; }\n                            100% { filter: blur(0px); opacity: 1; }\n                        }\n                        .smooth-typing-wrapper span {\n                            margin: 0 !important;\n                            padding: 0 !important;\n                            line-height: inherit;\n                        }\n                    `}})]})});}addPropertyControls(TypingText,{text:{title:\"Text\",type:ControlType.String,defaultValue:\"Oh dear! That's no problem.\"},textArea:{title:\"Multi line text\",type:ControlType.String,displayTextArea:true,defaultValue:\"\"},fontSize:{title:\"Font Size\",type:ControlType.Number,defaultValue:12,min:1,max:200,unit:\"px\"},lineHeight:{title:\"Line Height\",type:ControlType.Number,defaultValue:150,min:50,max:300,unit:\"%\",step:1},color:{title:\"Color\",type:ControlType.Color,defaultValue:\"#333\"},fontFamily:{title:\"Font family\",type:ControlType.String,defaultValue:\"Figtree\"},fontWeight:{title:\"Font weight\",type:ControlType.String,defaultValue:\"400\"},typingSpeed:{title:\"Typing speed\",type:ControlType.Number,defaultValue:60,min:1,max:99},initialDelay:{title:\"Initial Delay\",type:ControlType.Number,unit:\"s\",defaultValue:0,min:0,max:10,step:.1,description:\"Wait X seconds after appearing before starting animation.\"},delayRender:{title:\"Internal Delay (ms)\",type:ControlType.Number,defaultValue:0,min:0,max:5e3,step:10,description:\"Extra pause added to the start of the text sequence.\"},smoothTyping:{title:\"Smooth Typing\",type:ControlType.Boolean,defaultValue:true},cursor:{title:\"Cursor\",type:ControlType.Boolean,defaultValue:true},playAnimation:{title:\"Play Animation\",type:ControlType.Boolean,defaultValue:true}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"TypingText\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./TypingText.map"],"mappings":"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"}