{"version":3,"file":"PasswordProtection.Azxf5Edn.mjs","names":["useState","useRef"],"sources":["https:/framerusercontent.com/modules/n7YReiH8jLeItJ46YfSq/OBO2cJtE6sxjvVCQ05nd/PasswordProtection.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useState,useEffect,useRef}from\"react\";import{addPropertyControls,ControlType}from\"framer\";// Default lock SVG icon\nconst DEFAULT_LOCK_SVG=`<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\n<path d=\"M12 2C9.23858 2 7 4.23858 7 7V10H6C4.89543 10 4 10.8954 4 12V20C4 21.1046 4.89543 22 6 22H18C19.1046 22 20 21.1046 20 20V12C20 10.8954 19.1046 10 18 10H17V7C17 4.23858 14.7614 2 12 2ZM9 7C9 5.34315 10.3431 4 12 4C13.6569 4 15 5.34315 15 7V10H9V7ZM12 14C12.5523 14 13 14.4477 13 15V17C13 17.5523 12.5523 18 12 18C11.4477 18 11 17.5523 11 17V15C11 14.4477 11.4477 14 12 14Z\"/>\n</svg>`;/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n */export default function PasswordProtection({designState=\"default\",password=\"password123\",title=\"This page is protected\",subtitle=\"Enter your password to continue\",buttonText=\"Continue\",errorMessage=\"Incorrect password\",showInCanvas=false,style,maxAttempts=5,lockoutMessage=\"Too many attempts. Please try again in\",lockoutDuration=60,bypassParameter=\"bypass\",passwordParameter=\"password\",enableRememberMe=true,rememberMeText=\"Remember me\",rememberMeDefaultChecked=true,helpText=\"Need access?\",helpLink=\"\",showFooter=true,copyrightText=\"\\xa9 {year} All rights reserved\",footerBottomSpacing=20,// Background\nbackgroundColor=\"#FAFAFA\",backgroundBlur=0,// Logo\nshowLogo=false,logoSVG=DEFAULT_LOCK_SVG,logoColor=\"#18181B\",logoWidth=120,logoHeight=40,// Input Field Properties\ninputBackgroundColor=\"#FFFFFF\",inputBorderColor=\"#E4E4E7\",inputFocusBorderColor=\"#18181B\",inputErrorBorderColor=\"#EF4444\",inputTextColor=\"#09090B\",inputDisabledTextColor=\"#A1A1AA\",inputDisabledBackgroundColor=\"#F4F4F5\",inputPlaceholderColor=\"rgba(0, 0, 0, 0.5)\",inputBorderRadius=8,inputPadding=12,inputHeight=40,inputFont={fontSize:16,fontFamily:\"Inter\"},// Button Properties\nbuttonBackgroundColor=\"#18181B\",buttonHoverBackgroundColor=\"#27272A\",buttonDisabledBackgroundColor=\"#E4E4E7\",buttonTextColor=\"#FAFAFA\",buttonBorderRadius=8,buttonPadding=12,buttonHeight=40,buttonFont={fontSize:16,fontFamily:\"Inter\"},// Typography\ntitleFont={fontSize:24,fontFamily:\"Inter\"},titleColor=\"#09090B\",subtitleFont={fontSize:14,fontFamily:\"Inter\"},subtitleColor=\"#71717A\",helpLinkFont={fontSize:14,fontFamily:\"Inter\"},helpLinkColor=\"#71717A\",helpLinkHoverColor=\"#18181B\",footerFont={fontSize:12,fontFamily:\"Inter\"},footerColor=\"#A1A1AA\",rememberMeFont={fontSize:13,fontFamily:\"Inter\"},rememberMeColor=\"#71717A\",// Checkbox Customization\ncheckboxSize=14,checkboxRadius=2,checkboxBorderColor=\"#E4E4E7\",checkboxCheckedColor=\"#18181B\",checkboxCheckColor=\"#FAFAFA\",checkboxGap=8,// Spacing\ncontentGap=32,formFieldGap=16,rememberMeSpacing=8,// Transition\nenableTransition=false,transitionDelay=500,transitionDuration=800,fadeOutDuration=800}){const[inputValue,setInputValue]=useState(\"\");const[isUnlocked,setIsUnlocked]=useState(false);const[showTransition,setShowTransition]=useState(false);const[showError,setShowError]=useState(designState===\"error\");const[isLoading,setIsLoading]=useState(designState===\"loading\");const[attempts,setAttempts]=useState(designState===\"error\"?1:0);const[isLocked,setIsLocked]=useState(designState===\"locked\");const[lockoutTime,setLockoutTime]=useState(designState===\"locked\"?30:0);const[rememberMe,setRememberMe]=useState(rememberMeDefaultChecked);const inputRef=useRef(null);const isFramerCanvas=typeof window!==\"undefined\"&&window.location?.href?.includes(\"framercanvas.com\");const currentYear=new Date().getFullYear();const formattedCopyright=copyrightText.replace(\"{year}\",currentYear.toString());// Apply design states in canvas\nuseEffect(()=>{if(isFramerCanvas&&designState!==\"default\"){switch(designState){case\"error\":setShowError(true);setAttempts(1);break;case\"locked\":setIsLocked(true);setLockoutTime(30);break;case\"loading\":setIsLoading(true);break;}}},[designState,isFramerCanvas]);useEffect(()=>{if(typeof window===\"undefined\")return;// Skip in design mode\nif(isFramerCanvas&&designState!==\"default\")return;// Check URL bypass\nconst urlParams=new URLSearchParams(window.location.search);if(bypassParameter&&urlParams.has(bypassParameter)){setIsUnlocked(true);return;}// Check URL password key/value\nif(passwordParameter){const urlPasswordValue=urlParams.get(passwordParameter);if(urlPasswordValue&&urlPasswordValue===password){setIsUnlocked(true);return;}}// Check session/local storage\nconst storageKey=\"passwordProtection_unlocked\";const sessionUnlocked=sessionStorage.getItem(storageKey)===\"true\";const localUnlocked=localStorage.getItem(storageKey)===\"true\";if(sessionUnlocked||localUnlocked){setIsUnlocked(true);}// Check lockout\nconst lockoutKey=\"passwordProtection_lockout\";const lockoutData=localStorage.getItem(lockoutKey);if(lockoutData){const{until,attemptCount}=JSON.parse(lockoutData);if(Date.now()<until){setIsLocked(true);setLockoutTime(Math.ceil((until-Date.now())/1e3));setAttempts(attemptCount);}else{localStorage.removeItem(lockoutKey);}}},[bypassParameter,passwordParameter,password,designState,isFramerCanvas]);useEffect(()=>{// Skip countdown in design mode\nif(isFramerCanvas&&designState===\"locked\")return;if(isLocked&&lockoutTime>0){const timer=setTimeout(()=>{setLockoutTime(lockoutTime-1);},1e3);return()=>clearTimeout(timer);}else if(isLocked&&lockoutTime===0){setIsLocked(false);setAttempts(0);localStorage.removeItem(\"passwordProtection_lockout\");}},[isLocked,lockoutTime,designState,isFramerCanvas]);useEffect(()=>{if(!isUnlocked&&!isFramerCanvas&&inputRef.current){setTimeout(()=>{inputRef.current?.focus();},100);}},[isUnlocked,isFramerCanvas]);// Block scrolling when password screen is shown\nconst overlayRef=useRef(null);const didLockScrollRef=useRef(false);const wheelHandlerRef=useRef(null);const touchStartHandlerRef=useRef(null);const touchMoveHandlerRef=useRef(null);const keydownHandlerRef=useRef(null);// Ensure scroll is force-unlocked when the fade-out starts (defensive against any missed cleanup)\nuseEffect(()=>{if(showTransition&&!isFramerCanvas){try{const html=document.documentElement;const body=document.body;const topVal=body.style.top;const savedY=topVal?-parseInt(topVal||\"0\",10):window.scrollY;html.style.overflow=\"\";html.style.height=\"\";html.style.overscrollBehavior=\"\";html.style.touchAction=\"\";body.style.overflow=\"\";body.style.position=\"\";body.style.top=\"\";body.style.left=\"\";body.style.right=\"\";body.style.width=\"\";body.style.height=\"\";body.style.overscrollBehavior=\"\";body.style.touchAction=\"\";window.scrollTo(window.scrollX,savedY);window.__unlockPreloaderScroll?.();}catch{}}},[showTransition,isFramerCanvas]);// Removed extra post-unlock safety to avoid interfering with preloader on reload\nuseEffect(()=>{// Lock scroll only when overlay is visible and not fading out\nif(!isUnlocked&&!isFramerCanvas&&!showTransition){// Save current scroll position\nconst scrollY=window.scrollY;const scrollX=window.scrollX;// Save original styles\nconst originalStyles={body:{overflow:document.body.style.overflow,position:document.body.style.position,top:document.body.style.top,left:document.body.style.left,right:document.body.style.right,width:document.body.style.width,height:document.body.style.height,overscrollBehavior:document.body.style.overscrollBehavior,touchAction:document.body.style.touchAction},html:{overflow:document.documentElement.style.overflow,height:document.documentElement.style.height,overscrollBehavior:document.documentElement.style.overscrollBehavior,touchAction:document.documentElement.style.touchAction}};// Apply aggressive scroll lock to both body and html\ndocument.documentElement.style.overflow=\"hidden\";document.documentElement.style.height=\"100%\";document.documentElement.style.overscrollBehavior=\"none\";document.documentElement.style.touchAction=\"none\";document.body.style.overflow=\"hidden\";document.body.style.position=\"fixed\";document.body.style.top=`-${scrollY}px`;document.body.style.left=\"0\";document.body.style.right=\"0\";document.body.style.width=\"100%\";document.body.style.height=\"100%\";document.body.style.overscrollBehavior=\"none\";document.body.style.touchAction=\"none\";didLockScrollRef.current=true;// Helper: find the nearest scrollable ancestor within the overlay\nconst getScrollableAncestor=(startNode,boundary)=>{let node=startNode;while(node&&node!==document.body){const isWithinBoundary=node===boundary||boundary.contains(node);if(!isWithinBoundary)break;const style=window.getComputedStyle(node);const overflowY=style.overflowY;const isScrollableY=(overflowY===\"auto\"||overflowY===\"scroll\")&&node.scrollHeight>node.clientHeight;if(isScrollableY)return node;node=node.parentElement;}return boundary;};// Prevent background wheel scroll; allow overlay/inner scroller when it can scroll further\nconst preventWheel=e=>{const overlay=overlayRef.current;if(!overlay)return;// Is the event within overlay?\nlet node=e.target;let inOverlay=false;while(node&&node!==document.body){if(node===overlay){inOverlay=true;break;}node=node.parentElement;}// If event is outside overlay, always block\nif(!inOverlay){e.preventDefault();e.stopPropagation();return false;}// Inside overlay: use nearest scrollable ancestor for edge detection\nconst scroller=getScrollableAncestor(e.target||overlay,overlay);const atTop=scroller.scrollTop<=0;const atBottom=scroller.scrollTop+scroller.clientHeight>=scroller.scrollHeight;const scrollingUp=e.deltaY<0;const scrollingDown=e.deltaY>0;const canScrollUp=!atTop;const canScrollDown=!atBottom;// If overlay cannot scroll in the intended direction, block to avoid background scroll\nif(scrollingUp&&!canScrollUp||scrollingDown&&!canScrollDown||scroller.scrollHeight<=scroller.clientHeight){e.preventDefault();e.stopPropagation();return false;}// else allow overlay to handle scrolling\n};// Track touch start for directional checks\nlet touchStartY=0;const handleTouchStart=e=>{if(e.touches&&e.touches.length>0){touchStartY=e.touches[0].clientY;}};// Prevent background touch scroll; allow overlay/inner scroller when it can scroll further\nconst preventTouchMove=e=>{const overlay=overlayRef.current;if(!overlay)return;// Is the touch within overlay?\nlet node=e.target;let inOverlay=false;while(node&&node!==document.body){if(node===overlay){inOverlay=true;break;}node=node.parentElement;}if(!inOverlay){e.preventDefault();e.stopPropagation();return false;}// Compute intended scroll direction\nconst currentY=e.touches&&e.touches.length>0?e.touches[0].clientY:touchStartY;const dy=currentY-touchStartY;const scrollingDown=dy<0;const scrollingUp=dy>0;const scroller=getScrollableAncestor(e.target||overlay,overlay);const atTop=scroller.scrollTop<=0;const atBottom=scroller.scrollTop+scroller.clientHeight>=scroller.scrollHeight;const canScrollUp=!atTop;const canScrollDown=!atBottom;if(scrollingUp&&!canScrollUp||scrollingDown&&!canScrollDown||scroller.scrollHeight<=scroller.clientHeight){e.preventDefault();e.stopPropagation();return false;}// else allow overlay to handle scrolling\n};// Prevent keyboard scrolling\nconst preventKeyScroll=e=>{const scrollKeys=[\"ArrowUp\",\"ArrowDown\",\"PageUp\",\"PageDown\",\"Home\",\"End\",\" \"];if(scrollKeys.includes(e.key)){// Check if we're in an input field\nconst activeElement=document.activeElement;const isInput=activeElement?.tagName===\"INPUT\"||activeElement?.tagName===\"TEXTAREA\";if(!isInput){e.preventDefault();return false;}}};// Add event listeners with capture to catch them early\nwheelHandlerRef.current=preventWheel;touchStartHandlerRef.current=handleTouchStart;touchMoveHandlerRef.current=preventTouchMove;keydownHandlerRef.current=preventKeyScroll;document.addEventListener(\"wheel\",wheelHandlerRef.current,{passive:false,capture:true});document.addEventListener(\"touchstart\",touchStartHandlerRef.current,{passive:true,capture:true});document.addEventListener(\"touchmove\",touchMoveHandlerRef.current,{passive:false,capture:true});document.addEventListener(\"keydown\",keydownHandlerRef.current,{capture:true});return()=>{// Remove event listeners\nif(wheelHandlerRef.current)document.removeEventListener(\"wheel\",wheelHandlerRef.current,{capture:true});if(touchStartHandlerRef.current)document.removeEventListener(\"touchstart\",touchStartHandlerRef.current,{capture:true});if(touchMoveHandlerRef.current)document.removeEventListener(\"touchmove\",touchMoveHandlerRef.current,{capture:true});if(keydownHandlerRef.current)document.removeEventListener(\"keydown\",keydownHandlerRef.current,{capture:true});wheelHandlerRef.current=null;touchStartHandlerRef.current=null;touchMoveHandlerRef.current=null;keydownHandlerRef.current=null;// Restore original styles\ndocument.documentElement.style.overflow=originalStyles.html.overflow;document.documentElement.style.height=originalStyles.html.height;document.documentElement.style.overscrollBehavior=originalStyles.html.overscrollBehavior;document.documentElement.style.touchAction=originalStyles.html.touchAction;document.body.style.overflow=originalStyles.body.overflow;document.body.style.position=originalStyles.body.position;document.body.style.top=originalStyles.body.top;document.body.style.left=originalStyles.body.left;document.body.style.right=originalStyles.body.right;document.body.style.width=originalStyles.body.width;document.body.style.height=originalStyles.body.height;document.body.style.overscrollBehavior=originalStyles.body.overscrollBehavior;document.body.style.touchAction=originalStyles.body.touchAction;// Restore scroll position\nwindow.scrollTo(scrollX,scrollY);didLockScrollRef.current=false;};}},[isUnlocked,isFramerCanvas,showTransition]);// Proactively remove listeners and unlock as soon as we start fading or unlock without fade\nuseEffect(()=>{if((showTransition||isUnlocked)&&!isFramerCanvas){try{if(wheelHandlerRef.current)document.removeEventListener(\"wheel\",wheelHandlerRef.current,{capture:true});if(touchStartHandlerRef.current)document.removeEventListener(\"touchstart\",touchStartHandlerRef.current,{capture:true});if(touchMoveHandlerRef.current)document.removeEventListener(\"touchmove\",touchMoveHandlerRef.current,{capture:true});if(keydownHandlerRef.current)document.removeEventListener(\"keydown\",keydownHandlerRef.current,{capture:true});wheelHandlerRef.current=null;touchStartHandlerRef.current=null;touchMoveHandlerRef.current=null;keydownHandlerRef.current=null;}catch{}}},[showTransition,isUnlocked,isFramerCanvas]);useEffect(()=>{if(showError&&designState===\"default\"){const timer=setTimeout(()=>setShowError(false),3e3);return()=>clearTimeout(timer);}},[showError,designState]);const handleSubmit=e=>{e.preventDefault();if(isLocked||designState!==\"default\")return;setShowError(false);setIsLoading(true);setTimeout(()=>{if(inputValue===password){if(enableTransition){// Begin fade-out; scroll will unlock via effect cleanup when showTransition becomes true\nsetShowTransition(true);// isUnlocked is set after fade-out completes (see onAnimationEnd handler)\n}else{setIsUnlocked(true);}const storageKey=\"passwordProtection_unlocked\";if(rememberMe&&enableRememberMe){localStorage.setItem(storageKey,\"true\");}else{sessionStorage.setItem(storageKey,\"true\");}localStorage.removeItem(\"passwordProtection_lockout\");}else{const newAttempts=attempts+1;setAttempts(newAttempts);setShowError(true);setInputValue(\"\");if(maxAttempts>0&&newAttempts>=maxAttempts){const lockoutUntil=Date.now()+lockoutDuration*1e3;localStorage.setItem(\"passwordProtection_lockout\",JSON.stringify({until:lockoutUntil,attemptCount:newAttempts}));setIsLocked(true);setLockoutTime(lockoutDuration);}}setIsLoading(false);},400);};if(isUnlocked||isFramerCanvas&&!showInCanvas){return null;}// No separate transition branch: we animate the actual overlay below\nreturn /*#__PURE__*/_jsxs(\"div\",{ref:overlayRef,style:{position:\"fixed\",top:0,left:0,right:0,bottom:0,backgroundColor,backdropFilter:backgroundBlur>0?`blur(${backgroundBlur}px)`:\"none\",WebkitBackdropFilter:backgroundBlur>0?`blur(${backgroundBlur}px)`:\"none\",zIndex:9999,height:\"100vh\",overflowY:\"auto\",overflowX:\"hidden\",WebkitOverflowScrolling:\"touch\",opacity:enableTransition&&!showTransition?0:1,animation:enableTransition?showTransition?`passwordFadeOut ${fadeOutDuration}ms ease-in-out 0ms forwards`:`passwordFadeIn ${transitionDuration}ms ease-in-out ${transitionDelay}ms forwards`:undefined,pointerEvents:showTransition?\"none\":\"auto\",...style},onAnimationEnd:()=>{if(showTransition){window.__unlockPreloaderScroll?.();setIsUnlocked(true);}},children:[/*#__PURE__*/_jsxs(\"div\",{style:{minHeight:\"100vh\",display:\"flex\",flexDirection:\"column\",alignItems:\"center\",justifyContent:\"center\",padding:\"80px 20px\",boxSizing:\"border-box\",position:\"relative\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",maxWidth:320,margin:\"auto\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"center\",gap:contentGap},children:[showLogo&&logoSVG&&/*#__PURE__*/_jsx(\"div\",{style:{width:logoWidth,height:logoHeight,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",color:logoColor},dangerouslySetInnerHTML:{__html:logoSVG.replace(/width=\"[^\"]*\"/g,`width=\"${logoWidth}\"`).replace(/height=\"[^\"]*\"/g,`height=\"${logoHeight}\"`).replace(/fill=\"[^\"]*\"/g,'fill=\"currentColor\"')}}),/*#__PURE__*/_jsxs(\"div\",{style:{textAlign:\"center\",display:\"flex\",flexDirection:\"column\",gap:8},children:[/*#__PURE__*/_jsx(\"h1\",{style:{fontSize:titleFont?.fontSize||24,fontFamily:titleFont?.fontFamily||\"Inter\",fontWeight:titleFont?.fontWeight||\"normal\",fontStyle:titleFont?.fontStyle||\"normal\",lineHeight:1.2,color:titleColor,margin:0},children:title}),/*#__PURE__*/_jsx(\"p\",{style:{fontSize:subtitleFont?.fontSize||14,fontFamily:subtitleFont?.fontFamily||\"Inter\",fontWeight:subtitleFont?.fontWeight||\"normal\",fontStyle:subtitleFont?.fontStyle||\"normal\",lineHeight:1.6,color:subtitleColor,margin:0},children:isLocked?`${lockoutMessage} ${lockoutTime}s`:subtitle})]}),/*#__PURE__*/_jsxs(\"form\",{onSubmit:handleSubmit,style:{width:\"100%\",display:\"flex\",flexDirection:\"column\",gap:formFieldGap},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\"},children:[/*#__PURE__*/_jsx(\"input\",{ref:inputRef,type:\"password\",value:inputValue,onChange:e=>setInputValue(e.target.value),placeholder:\"Password\",autoFocus:true,disabled:isLocked,style:{width:\"100%\",height:inputHeight?`${inputHeight}px`:undefined,padding:inputHeight?`0 ${inputPadding+4}px`:`${inputPadding}px ${inputPadding+4}px`,...inputFont,lineHeight:1.2,color:isLocked?inputDisabledTextColor:inputTextColor,backgroundColor:isLocked?inputDisabledBackgroundColor:inputBackgroundColor,border:`1px solid ${showError?inputErrorBorderColor:inputBorderColor}`,borderRadius:inputBorderRadius,outline:\"none\",transition:\"all 0.2s ease\",boxSizing:\"border-box\",cursor:isLocked?\"not-allowed\":\"text\"},onFocus:e=>{if(!isLocked){e.target.style.borderColor=showError?inputErrorBorderColor:inputFocusBorderColor;}},onBlur:e=>{e.target.style.borderColor=showError?inputErrorBorderColor:inputBorderColor;}}),/*#__PURE__*/_jsxs(\"div\",{style:{marginTop:showError&&!isLocked?6:0,fontSize:12,color:inputErrorBorderColor,lineHeight:1.4,opacity:showError&&!isLocked?1:0,maxHeight:showError&&!isLocked?40:0,transform:showError&&!isLocked?\"translateY(0)\":\"translateY(-2px)\",transition:\"opacity 180ms ease, max-height 180ms ease, transform 180ms ease, margin-top 180ms ease\"},\"aria-live\":showError&&!isLocked?\"polite\":undefined,role:showError&&!isLocked?\"alert\":undefined,\"aria-hidden\":showError&&!isLocked?undefined:true,children:[/*#__PURE__*/_jsx(\"span\",{style:{fontWeight:500},children:errorMessage}),maxAttempts>0&&/*#__PURE__*/_jsxs(\"span\",{style:{opacity:.8},children:[\" \\xb7 \",attempts,\" of \",maxAttempts]})]})]}),/*#__PURE__*/_jsx(\"button\",{type:\"submit\",disabled:!inputValue||isLoading||isLocked,style:{width:\"100%\",height:buttonHeight?`${buttonHeight}px`:undefined,padding:buttonHeight?`0 ${buttonPadding*2}px`:`${buttonPadding}px ${buttonPadding*2}px`,...buttonFont,lineHeight:1.2,color:buttonTextColor,backgroundColor:inputValue&&!isLoading&&!isLocked?buttonBackgroundColor:buttonDisabledBackgroundColor,border:\"none\",borderRadius:buttonBorderRadius,cursor:inputValue&&!isLoading&&!isLocked?\"pointer\":\"not-allowed\",transition:\"all 0.2s ease\",position:\"relative\",overflow:\"hidden\"},onMouseEnter:e=>{if(inputValue&&!isLoading&&!isLocked){e.currentTarget.style.backgroundColor=buttonHoverBackgroundColor;}},onMouseLeave:e=>{if(inputValue&&!isLoading&&!isLocked){e.currentTarget.style.backgroundColor=buttonBackgroundColor;}},children:isLoading?/*#__PURE__*/_jsx(\"span\",{style:{display:\"inline-block\",width:16,height:16,border:\"2px solid #71717A\",borderTopColor:\"transparent\",borderRadius:\"50%\",animation:\"spin 0.6s linear infinite\"}}):buttonText})]}),(enableRememberMe||helpText&&helpLink)&&!isLocked&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:helpText&&helpLink&&enableRememberMe?\"space-between\":\"center\",width:\"100%\",marginTop:-rememberMeSpacing},children:[enableRememberMe&&/*#__PURE__*/_jsxs(\"label\",{style:{display:\"flex\",alignItems:\"center\",gap:checkboxGap,cursor:\"pointer\",...rememberMeFont,color:rememberMeColor},children:[/*#__PURE__*/_jsx(\"div\",{onClick:()=>setRememberMe(!rememberMe),style:{width:checkboxSize,height:checkboxSize,borderRadius:checkboxRadius,border:`1px solid ${rememberMe?checkboxCheckedColor:checkboxBorderColor}`,backgroundColor:rememberMe?checkboxCheckedColor:\"transparent\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",cursor:\"pointer\",transition:\"all 0.15s ease\"},children:rememberMe&&/*#__PURE__*/_jsx(\"svg\",{width:checkboxSize*.57,height:checkboxSize*.43,viewBox:\"0 0 8 6\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M1 3L2.5 4.5L7 0.5\",stroke:checkboxCheckColor,strokeWidth:\"1.2\",strokeLinecap:\"round\",strokeLinejoin:\"round\"})})}),/*#__PURE__*/_jsx(\"span\",{onClick:()=>setRememberMe(!rememberMe),style:{cursor:\"pointer\"},children:rememberMeText})]}),helpText&&helpLink&&/*#__PURE__*/_jsx(\"a\",{href:helpLink,target:\"_blank\",rel:\"noopener noreferrer\",style:{...helpLinkFont,color:helpLinkColor,textDecoration:\"none\",transition:\"color 0.2s ease\"},onMouseEnter:e=>{e.currentTarget.style.color=helpLinkHoverColor;},onMouseLeave:e=>{e.currentTarget.style.color=helpLinkColor;},children:helpText})]})]})}),showFooter&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",bottom:footerBottomSpacing,left:0,right:0,textAlign:\"center\",...footerFont,color:footerColor},children:formattedCopyright})]}),/*#__PURE__*/_jsx(\"style\",{children:`\n                @keyframes passwordFadeOut {\n                    0% {\n                        opacity: 1;\n                    }\n                    100% {\n                        opacity: 0;\n                    }\n                }\n                @keyframes passwordFadeIn {\n                    0% {\n                        opacity: 0;\n                    }\n                    100% {\n                        opacity: 1;\n                    }\n                }\n                @keyframes fadeIn {\n                    from {\n                        opacity: 0;\n                        transform: translateY(-4px);\n                    }\n                    to {\n                        opacity: 1;\n                        transform: translateY(0);\n                    }\n                }\n                \n                @keyframes spin {\n                    to {\n                        transform: rotate(360deg);\n                    }\n                }\n                \n                input::placeholder {\n                    color: ${inputPlaceholderColor};\n                }\n            `})]});}PasswordProtection.defaultProps={designState:\"default\",password:\"password123\",title:\"This page is protected\",subtitle:\"Enter your password to continue\",buttonText:\"Continue\",errorMessage:\"Incorrect password\",showInCanvas:false,maxAttempts:5,lockoutMessage:\"Too many attempts. Please try again in\",lockoutDuration:60,bypassParameter:\"bypass\",passwordParameter:\"password\",enableRememberMe:true,rememberMeText:\"Remember me\",rememberMeDefaultChecked:true,helpText:\"Need access?\",helpLink:\"\",showFooter:true,copyrightText:\"\\xa9 {year} All rights reserved\",footerBottomSpacing:20,backgroundColor:\"#FAFAFA\",backgroundBlur:0,showLogo:false,logoSVG:DEFAULT_LOCK_SVG,logoColor:\"#18181B\",logoWidth:120,logoHeight:40,enableTransition:false,transitionDelay:500,transitionDuration:800,inputBackgroundColor:\"#FFFFFF\",inputBorderColor:\"#E4E4E7\",inputFocusBorderColor:\"#18181B\",inputErrorBorderColor:\"#EF4444\",inputTextColor:\"#09090B\",inputDisabledTextColor:\"#A1A1AA\",inputDisabledBackgroundColor:\"#F4F4F5\",inputPlaceholderColor:\"rgba(0, 0, 0, 0.5)\",inputBorderRadius:8,inputPadding:12,inputHeight:40,buttonBackgroundColor:\"#18181B\",buttonHoverBackgroundColor:\"#27272A\",buttonDisabledBackgroundColor:\"#E4E4E7\",buttonTextColor:\"#FAFAFA\",buttonBorderRadius:8,buttonPadding:12,buttonHeight:40,titleColor:\"#09090B\",subtitleColor:\"#71717A\",helpLinkColor:\"#71717A\",helpLinkHoverColor:\"#18181B\",footerColor:\"#A1A1AA\",rememberMeColor:\"#71717A\",checkboxSize:14,checkboxRadius:2,checkboxBorderColor:\"#E4E4E7\",checkboxCheckedColor:\"#18181B\",checkboxCheckColor:\"#FAFAFA\",checkboxGap:8,contentGap:32,formFieldGap:16,rememberMeSpacing:8};addPropertyControls(PasswordProtection,{// Design State\ndesignState:{type:ControlType.Enum,title:\"Design State\",defaultValue:\"default\",options:[\"default\",\"error\",\"locked\",\"loading\"],optionTitles:[\"Default\",\"Error\",\"Locked\",\"Loading\"],description:\"Preview different states for design purposes\"},password:{type:ControlType.String,title:\"Password\",defaultValue:\"password123\"},title:{type:ControlType.String,title:\"Title\",defaultValue:\"This page is protected\"},subtitle:{type:ControlType.String,title:\"Subtitle\",defaultValue:\"Enter your password to continue\"},buttonText:{type:ControlType.String,title:\"Button Text\",defaultValue:\"Continue\"},errorMessage:{type:ControlType.String,title:\"Error Message\",defaultValue:\"Incorrect password\"},showInCanvas:{type:ControlType.Boolean,title:\"Show in Canvas\",defaultValue:false,description:\"Show the password screen in the Framer canvas for preview\"},// Security Settings\nmaxAttempts:{type:ControlType.Number,title:\"Max Attempts\",defaultValue:5,min:0,step:1,description:\"Maximum login attempts (0 = unlimited)\"},lockoutMessage:{type:ControlType.String,title:\"Lockout Message\",defaultValue:\"Too many attempts. Please try again in\"},lockoutDuration:{type:ControlType.Number,title:\"Lockout Duration\",defaultValue:60,min:10,step:10,unit:\"s\",description:\"Lockout time in seconds\"},bypassParameter:{type:ControlType.String,title:\"Bypass URL Parameter\",defaultValue:\"bypass\",description:\"URL parameter to bypass password (e.g., ?bypass)\"},passwordParameter:{type:ControlType.String,title:\"Password URL Key\",defaultValue:\"password\",description:\"URL key that must equal the Password value (e.g., ?password=yourSecret)\"},// Remember Me\nenableRememberMe:{type:ControlType.Boolean,title:\"Enable Remember Me\",defaultValue:true},rememberMeText:{type:ControlType.String,title:\"Remember Me Text\",defaultValue:\"Remember me\",hidden(props){return!props.enableRememberMe;}},rememberMeDefaultChecked:{type:ControlType.Boolean,title:\"Remember Me Default\",defaultValue:true,hidden(props){return!props.enableRememberMe;}},// Help Link\nhelpText:{type:ControlType.String,title:\"Help Text\",defaultValue:\"Need access?\"},helpLink:{type:ControlType.String,title:\"Help Link URL\",defaultValue:\"\",placeholder:\"https://example.com/request-access\"},// Footer\nshowFooter:{type:ControlType.Boolean,title:\"Show Footer\",defaultValue:true},copyrightText:{type:ControlType.String,title:\"Copyright Text\",defaultValue:\"\\xa9 {year} All rights reserved\",description:\"Use {year} to auto-insert current year\",hidden(props){return!props.showFooter;}},// Background\nbackgroundColor:{type:ControlType.Color,title:\"Background Color\",defaultValue:\"#FAFAFA\"},backgroundBlur:{type:ControlType.Number,title:\"Background Blur\",defaultValue:0,min:0,max:50,step:1,unit:\"px\",description:\"Blur content behind password screen\"},// Logo\nshowLogo:{type:ControlType.Boolean,title:\"Show Logo\",defaultValue:false},logoSVG:{type:ControlType.String,title:\"Logo SVG\",defaultValue:DEFAULT_LOCK_SVG,displayTextArea:true,description:\"Paste SVG code for custom logo\",hidden(props){return!props.showLogo;}},logoColor:{type:ControlType.Color,title:\"Logo Color\",defaultValue:\"#18181B\",hidden(props){return!props.showLogo;}},logoWidth:{type:ControlType.Number,title:\"Logo Width\",defaultValue:120,min:40,max:300,step:4,unit:\"px\",hidden(props){return!props.showLogo;}},logoHeight:{type:ControlType.Number,title:\"Logo Height\",defaultValue:40,min:20,max:120,step:4,unit:\"px\",hidden(props){return!props.showLogo;}},// Input Field Styling\ninputBackgroundColor:{type:ControlType.Color,title:\"Input Background\",defaultValue:\"#FFFFFF\"},inputBorderColor:{type:ControlType.Color,title:\"Input Border\",defaultValue:\"#E4E4E7\"},inputFocusBorderColor:{type:ControlType.Color,title:\"Input Focus Border\",defaultValue:\"#18181B\"},inputErrorBorderColor:{type:ControlType.Color,title:\"Input Error Border\",defaultValue:\"#EF4444\"},inputTextColor:{type:ControlType.Color,title:\"Input Text Color\",defaultValue:\"#09090B\"},inputDisabledTextColor:{type:ControlType.Color,title:\"Input Disabled Text\",defaultValue:\"#A1A1AA\"},inputDisabledBackgroundColor:{type:ControlType.Color,title:\"Input Disabled BG\",defaultValue:\"#F4F4F5\"},inputPlaceholderColor:{type:ControlType.Color,title:\"Placeholder Color\",defaultValue:\"rgba(0, 0, 0, 0.5)\"},inputBorderRadius:{type:ControlType.Number,title:\"Input Border Radius\",defaultValue:8,min:0,max:20,unit:\"px\"},inputPadding:{type:ControlType.Number,title:\"Input Padding\",defaultValue:12,min:8,max:20,unit:\"px\"},inputHeight:{type:ControlType.Number,title:\"Input Height\",defaultValue:40,min:0,unit:\"px\",description:\"Fixed height. Leave 0 to auto-size by padding.\"},inputFont:{type:ControlType.Font,title:\"Input Font\",controls:\"extended\"},// Button Styling\nbuttonBackgroundColor:{type:ControlType.Color,title:\"Button Background\",defaultValue:\"#18181B\"},buttonHoverBackgroundColor:{type:ControlType.Color,title:\"Button Hover BG\",defaultValue:\"#27272A\"},buttonDisabledBackgroundColor:{type:ControlType.Color,title:\"Button Disabled BG\",defaultValue:\"#E4E4E7\"},buttonTextColor:{type:ControlType.Color,title:\"Button Text Color\",defaultValue:\"#FAFAFA\"},buttonBorderRadius:{type:ControlType.Number,title:\"Button Border Radius\",defaultValue:8,min:0,max:20,unit:\"px\"},buttonPadding:{type:ControlType.Number,title:\"Button Padding\",defaultValue:12,min:8,max:20,unit:\"px\"},buttonHeight:{type:ControlType.Number,title:\"Button Height\",defaultValue:40,min:0,unit:\"px\",description:\"Fixed height. Leave 0 to auto-size by padding.\"},buttonFont:{type:ControlType.Font,title:\"Button Font\",controls:\"extended\"},// Typography\ntitleFont:{type:ControlType.Font,title:\"Title Font\",controls:\"extended\"},titleColor:{type:ControlType.Color,title:\"Title Color\",defaultValue:\"#09090B\"},subtitleFont:{type:ControlType.Font,title:\"Subtitle Font\",controls:\"extended\"},subtitleColor:{type:ControlType.Color,title:\"Subtitle Color\",defaultValue:\"#71717A\"},helpLinkFont:{type:ControlType.Font,title:\"Help Link Font\",controls:\"extended\"},helpLinkColor:{type:ControlType.Color,title:\"Help Link Color\",defaultValue:\"#71717A\"},helpLinkHoverColor:{type:ControlType.Color,title:\"Help Link Hover\",defaultValue:\"#18181B\"},footerFont:{type:ControlType.Font,title:\"Footer Font\",controls:\"extended\",hidden(props){return!props.showFooter;}},footerColor:{type:ControlType.Color,title:\"Footer Color\",defaultValue:\"#A1A1AA\",hidden(props){return!props.showFooter;}},footerBottomSpacing:{type:ControlType.Number,title:\"Footer Bottom Spacing\",defaultValue:20,min:0,max:100,step:4,unit:\"px\",description:\"Space between footer and bottom edge\",hidden(props){return!props.showFooter;}},rememberMeFont:{type:ControlType.Font,title:\"Remember Me Font\",controls:\"extended\",hidden(props){return!props.enableRememberMe;}},rememberMeColor:{type:ControlType.Color,title:\"Remember Me Color\",defaultValue:\"#71717A\",hidden(props){return!props.enableRememberMe;}},// Checkbox Customization\ncheckboxSize:{type:ControlType.Number,title:\"Checkbox Size\",defaultValue:14,min:10,max:24,step:1,unit:\"px\",hidden(props){return!props.enableRememberMe;}},checkboxRadius:{type:ControlType.Number,title:\"Checkbox Radius\",defaultValue:2,min:0,max:12,step:1,unit:\"px\",hidden(props){return!props.enableRememberMe;}},checkboxBorderColor:{type:ControlType.Color,title:\"Checkbox Border\",defaultValue:\"#E4E4E7\",hidden(props){return!props.enableRememberMe;}},checkboxCheckedColor:{type:ControlType.Color,title:\"Checkbox Checked BG\",defaultValue:\"#18181B\",hidden(props){return!props.enableRememberMe;}},checkboxCheckColor:{type:ControlType.Color,title:\"Checkbox Check Color\",defaultValue:\"#FAFAFA\",hidden(props){return!props.enableRememberMe;}},checkboxGap:{type:ControlType.Number,title:\"Checkbox Gap\",defaultValue:8,min:4,max:20,step:1,unit:\"px\",description:\"Space between checkbox and text\",hidden(props){return!props.enableRememberMe;}},// Spacing\ncontentGap:{type:ControlType.Number,title:\"Content Gap\",defaultValue:32,min:16,max:64,step:4,unit:\"px\",description:\"Space between logo, text, and form sections\"},formFieldGap:{type:ControlType.Number,title:\"Form Field Gap\",defaultValue:16,min:8,max:32,step:4,unit:\"px\",description:\"Space between input field and submit button\"},rememberMeSpacing:{type:ControlType.Number,title:\"Remember Me Spacing\",defaultValue:8,min:0,max:24,step:4,unit:\"px\",description:\"Space between submit button and remember me section\"},// Transition Settings\nenableTransition:{type:ControlType.Boolean,title:\"Enable Transition\",defaultValue:false,description:\"Fade out password screen before showing content\"},transitionDelay:{type:ControlType.Number,title:\"Transition Delay\",defaultValue:500,min:0,step:100,unit:\"ms\",description:\"Delay before fade starts\",hidden(props){return!props.enableTransition;}},transitionDuration:{type:ControlType.Number,title:\"Fade Duration\",defaultValue:800,min:200,max:3e3,step:100,unit:\"ms\",description:\"How long the fade takes\",hidden(props){return!props.enableTransition;}},fadeOutDuration:{type:ControlType.Number,title:\"Fade-out Duration\",defaultValue:800,min:100,step:100,unit:\"ms\",description:\"How long the fade-out takes\",hidden(props){return!props.enableTransition;}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"PasswordProtection\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any\",\"framerSupportedLayoutWidth\":\"any\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./PasswordProtection.map"],"mappings":"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"}