{"version":3,"file":"Wordle.DBEXSHwp.mjs","names":["useState","useRef","useCallback","useMemo"],"sources":["https:/framerusercontent.com/modules/o7odG8SZ0Rkvq6JCFJN2/f6I5JsOKWLqT67pDgNgx/kD6tJQgUB.js","https:/framerusercontent.com/modules/2esY0MlJOa41zgBJyUTx/nZAzu5viK6Q1kcDJZTUV/Wordle.js"],"sourcesContent":["// Generated by Framer (62e4d63)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,useSVGTemplate,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask=\"var(--framer-icon-mask)\";const Base=/*#__PURE__*/forwardRef(function(props,ref){return /*#__PURE__*/_jsx(\"svg\",{...props,ref:ref,children:props.children});});const MotionSVG=motion.create(Base);const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(MotionSVG,{...rest,layoutId:layoutId,ref:ref,children:children}):/*#__PURE__*/_jsx(\"svg\",{...rest,ref:ref,children:children});});const svg='<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 256 256\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 87.204 66.598 C 92.626 44.078 106.866 0 106.866 0 C 106.866 0 112.138 48.992 112.922 73.613 C 132.985 57.266 177.208 30.406 177.208 30.406 L 143.702 83.16 L 219.131 67.162 C 219.131 67.162 187.374 100.392 172.869 118.233 L 225 134.913 L 158.367 141.017 C 156.842 141.156 155.142 141.387 154.185 142.596 C 153.347 143.655 153.349 145.137 153.39 146.492 L 155.5 216 C 155.5 216 129.584 167.98 119.623 142.574 L 72.555 199.989 C 72.555 199.989 78.106 152.194 85.666 127.908 C 57.887 135.206 0 150.852 0 150.852 L 58.435 107.546 L 16.795 67.657 C 16.795 67.657 54.947 73.462 72.741 80.834 C 63.415 67.387 55.558 52.97 49.306 37.834 C 47.063 32.402 41.132 10.898 41.132 10.898 C 41.132 10.898 76.739 48.897 87.204 66.598 Z\" fill=\"var(--1phx2gl, rgba(0, 0, 0, 0))\" height=\"216px\" id=\"ZnI_tYEXy\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--xskojb, 10)\" stroke=\"var(--1da213c, rgb(84, 84, 84))\" transform=\"translate(16 20)\" width=\"225px\"/></svg>';const getProps=({fill,height,id,stroke,width,width1,...props})=>{return{...props,EsQwZdW9y:width1??props.EsQwZdW9y??10,kCyMtv_r9:fill??props.kCyMtv_r9??\"rgba(0, 0, 0, 0)\",M7ZSz8x0J:stroke??props.M7ZSz8x0J??\"rgb(84, 84, 84)\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,M7ZSz8x0J,kCyMtv_r9,EsQwZdW9y,...restProps}=getProps(props);const href=useSVGTemplate(\"2008165115\",svg);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-uW3EN\",className),layoutId:layoutId,ref:ref,role:\"presentation\",style:{\"--1da213c\":M7ZSz8x0J,\"--1phx2gl\":kCyMtv_r9,\"--xskojb\":EsQwZdW9y,...style},viewBox:\"0 0 256 256\",children:/*#__PURE__*/_jsx(\"use\",{href:href})});});const css=[`.framer-uW3EN { -webkit-mask: ${mask}; aspect-ratio: 1; display: block; mask: ${mask}; width: 256px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 256\n * @framerIntrinsicHeight 256\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"M7ZSz8x0J\":\"stroke\",\"kCyMtv_r9\":\"fill\",\"EsQwZdW9y\":\"width1\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Vector\",\"set\":{\"localId\":\"vectorSet/d811oA7PV\",\"id\":\"d811oA7PV\",\"moduleId\":\"fwjvIJpL8yH3nvtKY7Ru\"}}\n */const Icon=withCSS(Component,css,\"framer-uW3EN\");Icon.displayName=\"Vector\";export default Icon;addPropertyControls(Icon,{M7ZSz8x0J:{defaultValue:\"rgb(84, 84, 84)\",hidden:false,title:\"Stroke\",type:ControlType.Color},kCyMtv_r9:{defaultValue:\"rgba(0, 0, 0, 0)\",hidden:false,title:\"Fill\",type:ControlType.Color},EsQwZdW9y:{defaultValue:10,hidden:false,max:40,min:1,title:\"Width\",type:ControlType.Number}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerImmutableVariables\":\"true\",\"framerVector\":\"{\\\"name\\\":\\\"Vector\\\",\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/d811oA7PV\\\",\\\"id\\\":\\\"d811oA7PV\\\",\\\"moduleId\\\":\\\"fwjvIJpL8yH3nvtKY7Ru\\\"}}\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerVariables\":\"{\\\"M7ZSz8x0J\\\":\\\"stroke\\\",\\\"kCyMtv_r9\\\":\\\"fill\\\",\\\"EsQwZdW9y\\\":\\\"width1\\\"}\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"256\",\"framerIntrinsicHeight\":\"256\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Yoga Wordle\n// User must guess the correct 5-letter word. Shows custom success frame when solved.\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useState,useMemo,useCallback,useEffect,useRef,startTransition}from\"react\";import{addPropertyControls,ControlType,RenderTarget,useIsStaticRenderer}from\"framer\";import{motion,AnimatePresence}from\"framer-motion\";const defaultWord=\"LUNGE\";const defaultColors={correct:\"#CCA3F0\",present:\"#FFC75E\",absent:\"#BABABA\",empty:\"#FEFDFC\",text:\"#3E332E\",background:\"#FEFDFC\"};const defaultFont={fontSize:32,variant:\"Bold\",letterSpacing:\"0.1em\",lineHeight:\"1em\"};function getLetterStatuses(guess,answer){const result=Array(5).fill(\"absent\");const answerArr=answer.split(\"\");const guessArr=guess.split(\"\");const used=Array(5).fill(false);// First pass: correct\nfor(let i=0;i<5;i++){if(guessArr[i]===answerArr[i]){result[i]=\"correct\";used[i]=true;}}// Second pass: present\nfor(let i=0;i<5;i++){if(result[i]===\"correct\")continue;for(let j=0;j<5;j++){if(!used[j]&&guessArr[i]===answerArr[j]){result[i]=\"present\";used[j]=true;break;}}}return result;}/**\n * YogaWordle\n *\n * @framerIntrinsicWidth 350\n * @framerIntrinsicHeight 450\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function YogaWordle(props){const{word=defaultWord,maxAttempts=5,correctColor,presentColor,absentColor,emptyColor,textColor,backgroundColor,font,style,padding=16,successOverlay,transitionDuration=.5,failHeadline=\"Nice Try\",failSubheadline=\"You'll get it next time!\",failButtonText=\"Go Again\"}=props;const answer=word.trim().toUpperCase().slice(0,5);const[guesses,setGuesses]=useState([]);const[current,setCurrent]=useState(\"\");const[status,setStatus]=useState(\"\");const[error,setError]=useState(\"\");const inputRef=useRef(null);// Detect if we're in Framer's canvas editor\nconst renderTarget=RenderTarget.current();const isCanvas=renderTarget===RenderTarget.canvas;const isInteractive=renderTarget===RenderTarget.preview||typeof window!==\"undefined\"&&window.location.hostname!==\"framer.com\";// Handle submit logic\nconst handleSubmit=useCallback(()=>{if(current.length===5){if(current===answer){startTransition(()=>{setGuesses([...guesses,current]);setStatus(\"success\");});}else{startTransition(()=>setGuesses([...guesses,current]));setError(\"\");if(guesses.length+1>=maxAttempts){setStatus(\"fail\");}}startTransition(()=>setCurrent(\"\"));}},[current,guesses,answer,maxAttempts]);// Handle mobile input\nconst handleInputChange=useCallback(e=>{const value=e.target.value.toUpperCase().replace(/[^A-Z]/g,\"\");if(value.length<=5){startTransition(()=>setCurrent(value));setError(\"\");}},[]);const handleInputKeyDown=useCallback(e=>{if(e.key===\"Enter\"){handleSubmit();e.preventDefault();}},[handleSubmit]);// Handle physical keyboard\nuseEffect(()=>{if(!isInteractive||isCanvas||status!==\"\")return;function onKeyDown(e){if(e.target.tagName===\"INPUT\"||e.target.tagName===\"TEXTAREA\"){if(e.target!==inputRef.current)return;}if(e.ctrlKey||e.metaKey||e.altKey)return;if(guesses.length>=maxAttempts)return;if(e.key===\"Backspace\"){if(current.length>0){startTransition(()=>setCurrent(current.slice(0,-1)));setError(\"\");e.preventDefault();}}else if(/^[a-zA-Z]$/.test(e.key)){if(current.length<5){startTransition(()=>setCurrent(current+e.key.toUpperCase()));setError(\"\");e.preventDefault();}}else if(e.key===\"Enter\"){handleSubmit();e.preventDefault();}}window.addEventListener(\"keydown\",onKeyDown);return()=>window.removeEventListener(\"keydown\",onKeyDown);},[current,guesses,answer,maxAttempts,status,handleSubmit,isInteractive,isCanvas]);const isStatic=useIsStaticRenderer();const rows=useMemo(()=>{const out=[];for(let i=0;i<maxAttempts;i++){if(i<guesses.length){const guess=guesses[i];const statuses=getLetterStatuses(guess,answer);out.push({guess,statuses,submitted:true});}else if(i===guesses.length&&status!==\"success\"&&status!==\"fail\"){out.push({guess:current.padEnd(5,\" \"),statuses:Array(5).fill(\"empty\"),submitted:false});}else{out.push({guess:\" \".repeat(5),statuses:Array(5).fill(\"empty\"),submitted:false});}}return out;},[guesses,current,maxAttempts,answer,status]);const colorMap={correct:correctColor||defaultColors.correct,present:presentColor||defaultColors.present,absent:absentColor||defaultColors.absent,empty:emptyColor||defaultColors.empty};// Reset function\nconst handleReset=useCallback(()=>{startTransition(()=>{setGuesses([]);setCurrent(\"\");setStatus(\"\");setError(\"\");});},[]);// Expose reset function globally so custom overlay can call it\nuseEffect(()=>{if(typeof window!==\"undefined\"){window.resetPasswordle=handleReset;}},[handleReset]);// If success and custom overlay is provided, show the custom overlay\nif(status===\"success\"&&successOverlay){return /*#__PURE__*/_jsx(motion.div,{initial:{opacity:0,scale:.95},animate:{opacity:1,scale:1},transition:{duration:transitionDuration},style:{...style,width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},children:successOverlay});}return /*#__PURE__*/_jsxs(\"div\",{style:{...style,background:backgroundColor||defaultColors.background,color:textColor||defaultColors.text,borderRadius:8,boxShadow:\"0 2px 8px rgba(0,0,0,0.08)\",padding:padding,display:\"flex\",flexDirection:\"column\",alignItems:\"center\",justifyContent:\"center\",gap:16,position:\"relative\",width:\"100%\",height:\"100%\",boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:6,width:\"100%\",maxWidth:300,alignItems:\"center\",position:\"relative\"},children:[status===\"\"&&isInteractive&&!isCanvas&&/*#__PURE__*/_jsx(\"input\",{ref:inputRef,type:\"text\",value:current,onChange:handleInputChange,onKeyDown:handleInputKeyDown,maxLength:5,autoComplete:\"off\",autoCapitalize:\"characters\",autoCorrect:\"off\",spellCheck:\"false\",inputMode:\"text\",style:{position:\"absolute\",top:\"50%\",left:\"50%\",transform:\"translate(-50%, -50%)\",width:\"300px\",height:\"320px\",opacity:0,border:\"none\",outline:\"none\",fontSize:\"16px\",zIndex:10,cursor:\"pointer\"},\"aria-label\":\"Word input\"}),rows.map((row,i)=>/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",gap:6},children:row.guess.split(\"\").map((ch,j)=>{const isFilled=ch.trim()!==\"\"&&row.statuses[j]===\"empty\"&&!row.submitted;const shouldFlip=row.submitted&&row.statuses[j]!==\"empty\";if(isStatic){return /*#__PURE__*/_jsx(\"div\",{style:{width:48,height:48,background:colorMap[row.statuses[j]],color:textColor||defaultColors.text,borderRadius:4,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",fontSize:28,fontWeight:700,textTransform:\"uppercase\",border:row.statuses[j]===\"empty\"?`1.5px solid #bbb`:\"none\",...font},\"aria-label\":ch.trim()?ch:undefined,children:ch},j);}return /*#__PURE__*/_jsx(motion.div,{initial:isFilled?{scale:.7,opacity:0}:false,animate:isFilled?{scale:1,opacity:1,transition:{type:\"spring\",stiffness:400,damping:20}}:{},whileInView:shouldFlip?{rotateY:360,transition:{duration:.7,delay:j*.08}}:{},style:{width:48,height:48,background:colorMap[row.statuses[j]],color:textColor||defaultColors.text,borderRadius:4,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",fontSize:28,fontWeight:700,textTransform:\"uppercase\",border:row.statuses[j]===\"empty\"?`1.5px solid #bbb`:\"none\",perspective:400,...font},\"aria-label\":ch.trim()?ch:undefined,children:ch},j);})},i))]}),/*#__PURE__*/_jsx(AnimatePresence,{children:status===\"fail\"&&/*#__PURE__*/_jsx(motion.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},style:{position:\"absolute\",top:0,left:0,right:0,bottom:0,background:\"rgba(62, 51, 46, 0.8)\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",borderRadius:8,zIndex:100},children:/*#__PURE__*/_jsxs(motion.div,{initial:{scale:.9,opacity:0},animate:{scale:1,opacity:1},transition:{delay:.1},style:{textAlign:\"center\",padding:32},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Casserole Sans, sans-serif\",fontSize:24,fontWeight:400,color:\"#FEFDFC\",marginBottom:12},children:failHeadline}),/*#__PURE__*/_jsx(\"div\",{style:{fontFamily:\"Satoshi, sans-serif\",fontSize:18,fontWeight:500,color:\"#FEFDFC\",marginBottom:24},children:failSubheadline}),/*#__PURE__*/_jsx(\"button\",{onClick:handleReset,style:{background:\"#FEFDFC\",color:\"#3E332E\",border:\"none\",borderRadius:8,padding:\"12px 32px\",fontSize:16,fontWeight:600,cursor:\"pointer\",fontFamily:\"Satoshi, sans-serif\"},children:failButtonText})]})})}),status===\"success\"&&!successOverlay&&/*#__PURE__*/_jsxs(\"div\",{style:{color:colorMap.correct,fontWeight:700,marginTop:12,textAlign:\"center\"},children:[\"Success! 🎉\",/*#__PURE__*/_jsx(\"div\",{style:{marginTop:12},children:/*#__PURE__*/_jsx(\"button\",{\"aria-label\":\"Reset\",onClick:handleReset,style:{background:colorMap.correct,color:\"#fff\",border:\"none\",borderRadius:4,padding:\"8px 16px\",cursor:\"pointer\",fontWeight:600},children:\"Play Again\"})})]}),error&&/*#__PURE__*/_jsx(\"div\",{style:{color:\"#d32f2f\",marginTop:8},children:error})]});}addPropertyControls(YogaWordle,{successOverlay:{type:ControlType.ComponentInstance,title:\"Success Overlay\",description:\"Custom frame to show when puzzle is solved\"},transitionDuration:{type:ControlType.Number,title:\"Transition Duration\",defaultValue:.5,min:0,max:2,step:.1,unit:\"s\",description:\"Animation speed when showing success overlay\"},word:{type:ControlType.String,title:\"Password Word\",defaultValue:defaultWord,placeholder:\"5-letter word\"},padding:{type:ControlType.Number,title:\"Padding\",defaultValue:16,min:0,max:100,step:4,unit:\"px\"},maxAttempts:{type:ControlType.Number,title:\"Max Attempts\",defaultValue:5,min:3,max:10,step:1},failHeadline:{type:ControlType.String,title:\"Fail Headline\",defaultValue:\"Nice Try\"},failSubheadline:{type:ControlType.String,title:\"Fail Subheadline\",defaultValue:\"You'll get it next time!\"},failButtonText:{type:ControlType.String,title:\"Fail Button Text\",defaultValue:\"Go Again\"},correctColor:{type:ControlType.Color,title:\"Correct Color\",defaultValue:defaultColors.correct},presentColor:{type:ControlType.Color,title:\"Present Color\",defaultValue:defaultColors.present},absentColor:{type:ControlType.Color,title:\"Absent Color\",defaultValue:defaultColors.absent},emptyColor:{type:ControlType.Color,title:\"Empty Color\",defaultValue:defaultColors.empty},textColor:{type:ControlType.Color,title:\"Text Color\",defaultValue:defaultColors.text},backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:defaultColors.background},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:defaultFont}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"YogaWordle\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"450\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"350\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Wordle.map"],"mappings":"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"}