{"version":3,"file":"MultiStepForm.Br7AYmjE.mjs","names":["useState","useRef","useState","useRef","__esmMin","window","z","init_ssg_sandbox_shims","init_npm_react_18_3_1","_e","de","init_jsx_runtime","p","ce","motion","init_framer_motion_DhsWWWsN","addPropertyControls","RenderTarget","withCSS","init_framer_B1b760uK","ControlType","useMultiStepFormStore","fillProp","init_FramerFormsShared","isAncestor","useInstanceId","HideElement","getFormInfo","HiddenComponentLabel","borderProp","createBackground","Border","MultiStepFormButton","prev","props","isCanvas","isOptimizing","multiStepFormState","setMultiStepFormState","formId","setFormId","ref","state","newFormId","hidden","page","onClick","layer","width","height","CANVAS_HIDDEN_CLASS_NAME","init_MultiStepFormButton","MultiStepFormComponent","id","formInfo","setFormInfo","stateRef","pageVideosRef","isFirstRenderRef","initialized","setInitialized","pageHistory","previousPage","nextPage","newPage","logicConfigs","pages","pageElement","logic","nextPageName","nextPageIndex","getChildIndexByDataFramerName","isFormValid","prevState","isPageAnEndPage","setPageHistoryLength","newLength","pageElements","i","videos","video","pauseVideo","unmountFunction","form","onEnterPress","event","currentInput","previousElement","foundPage","newElement","currentPage","stopEvent","inputs","getInputsOnPage","currentIndex","submitButton","SUBMIT_BUTTON_HIDDEN_ATTRIBUTE","input","pageIndex","pageVideos","scrollToTop","top","windowScrollTop","autoFocusInputOnPage","fireAnalyticsEvent","OPTIMIZATION_CLASS_NAME","element","invalidInputs","isVisible","hasRequiredFieldsFilled","children","parentElement","name","isEndPage","endPageMode","step","customEndPages","analytics","params","el","autofocusElements","visibleElements","style","MultiStepForm","init_MultiStepForm"],"sources":["https:/framerusercontent.com/modules/fPSKMdnAZGIeyDfLV8KP/DPcKZogqzKT0RPOhqCCV/MultiStepFormButton.js","https:/framerusercontent.com/modules/wV9SghwspjN8vk1MgoSi/87s7YSTDFWPQ4H7w6ogQ/MultiStepForm.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{useEffect,useState,useRef,cloneElement}from\"react\";import{motion}from\"framer-motion\";import{borderProp,fillProp,createBackground,Border,HideElement,useMultiStepFormStore,getFormInfo}from\"https://framerusercontent.com/modules/DwWOdDzQZGCuvkNlbUjZ/hMz2wp3CWZkNwPJFGPgQ/FramerFormsShared.js\";const CANVAS_HIDDEN_CLASS_NAME=\"framerforms-canvas-hidden\";/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n * @framerDisableUnlink\n */export default function MultiStepFormButton(props){const prev=props.page==\"previous\";const isCanvas=RenderTarget.current()===RenderTarget.canvas;const isOptimizing=typeof window===\"undefined\";const[multiStepFormState,setMultiStepFormState]=useMultiStepFormStore();const[formId,setFormId]=useState(null);const ref=useRef(null);const state=multiStepFormState[formId];useEffect(()=>{const newFormId=getFormInfo(ref.current).formId;if(!multiStepFormState[newFormId]){setMultiStepFormState({});}setFormId(newFormId);},[]);let hidden=false;if(isOptimizing||!state){hidden=prev;}else if(state?.pageHistory){const page=state.pageHistory[state.pageHistory.length-1];if(prev){hidden=page===0;}else{hidden=state.isEndPage;}}if(hidden&&!isCanvas){return /*#__PURE__*/_jsx(HideElement,{ref:ref});}function onClick(){if(state){if(prev){state.previousPage();}else{state.nextPage();}}props.click?.();}if(props.appearance==\"custom\"){let layer=props.customLayer?.[0];const width=props.style?.width;const height=props.style?.height;if(layer&&props.style&&(width||height)){layer=/*#__PURE__*/cloneElement(layer,{style:{...layer.props.style,...width&&{width:width},...height&&{height:height}}});}return /*#__PURE__*/_jsx(\"button\",{ref:ref,type:\"button\",style:{display:\"contents\"},onClick:onClick,onMouseEnter:props.hover,children:layer});}return /*#__PURE__*/_jsxs(motion.button,{\"data-framerforms\":true,ref:ref,type:\"button\",onClick:onClick,onMouseEnter:props.hover,className:hidden&&isCanvas?CANVAS_HIDDEN_CLASS_NAME:\"\",whileFocus:{...createBackground(props.fill,null,true),borderColor:props.border?.colorFocus??props.border?.color},style:{position:\"relative\",display:\"flex\",justifyContent:props.font?.textAlign||\"center\",alignItems:\"center\",...createBackground(props.fill),border:\"none\",color:props.color,padding:props.padding,borderRadius:props.radius,userSelect:\"none\",cursor:\"pointer\",textWrap:props.style?.width==\"100%\"?undefined:\"nowrap\",boxShadow:props.shadows,borderColor:props.border?.color,backdropFilter:props.bgBlur?`blur(${props.bgBlur}px)`:undefined,...props.font,...props.style},transition:props.transition,children:[props.text,/*#__PURE__*/_jsx(Border,{...props.border}),hidden&&isCanvas&&/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:`\n                        [data-framer-component-container=\"true\"] div:has(> .${CANVAS_HIDDEN_CLASS_NAME}) {\n                            display: none !important;\n                        }`}})]});}MultiStepFormButton.displayName=\"Multi-Step Form Button\";addPropertyControls(MultiStepFormButton,{page:{type:ControlType.Enum,defaultValue:\"next\",options:[\"previous\",\"next\"],optionTitles:[\"Previous\",\"Next\"],displaySegmentedControl:true},autoHide:{type:ControlType.Boolean,defaultValue:true,title:\"Auto-Hide\",description:\"Hide on first/last page\"},appearance:{type:ControlType.Enum,defaultValue:\"default\",options:[\"default\",\"custom\"],optionTitles:[\"Default\",\"Custom\"],displaySegmentedControl:true},customLayer:{type:ControlType.ComponentInstance,title:\"Layer\",description:\"Connect a custom layer outside the breakpoint\",hidden:props=>props.appearance!==\"custom\"},text:{type:ControlType.String,defaultValue:\"Next\",hidden:props=>props.appearance!==\"default\"},fill:fillProp({focus:true,invalid:false,color:\"#333\",colorA:\"#8C8C8C\",colorB:\"#000\",hidden:props=>props.appearance!==\"default\"}),color:{type:ControlType.Color,defaultValue:\"#FFF\",hidden:props=>props.appearance!==\"default\"},font:{type:\"font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:14,lineHeight:1.2},hidden:props=>props.appearance!==\"default\"},padding:{type:ControlType.Padding,defaultValue:\"10px 16px 10px 16px\",hidden:props=>props.appearance!==\"default\"},radius:{type:ControlType.BorderRadius,defaultValue:\"10px\",hidden:props=>props.appearance!==\"default\"},border:borderProp({focus:true,color:\"#0099FF00\",hidden:props=>props.appearance!==\"default\"}),shadows:{type:ControlType.BoxShadow,hidden:props=>props.appearance!==\"default\"},bgBlur:{type:ControlType.Number,min:0,max:100,step:1,displayStepper:true,title:\"BG Blur\",hidden:props=>props.appearance!==\"default\"},transition:{type:ControlType.Transition,defaultValue:{type:false},hidden:props=>props.appearance!==\"default\"},click:{type:ControlType.EventHandler},hover:{type:ControlType.EventHandler}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"MultiStepFormButton\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerSupportedLayoutHeight\":\"any\",\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget,withCSS}from\"framer\";import{useState,useEffect,useRef}from\"react\";import{useInstanceId,HiddenComponentLabel,useMultiStepFormStore,getFormInfo,isAncestor}from\"https://framerusercontent.com/modules/DwWOdDzQZGCuvkNlbUjZ/hMz2wp3CWZkNwPJFGPgQ/FramerFormsShared.js\";const OPTIMIZATION_CLASS_NAME=\"framerforms-multi-step-form\";const SUBMIT_BUTTON_HIDDEN_ATTRIBUTE=\"framerforms-submit-button-hidden\";/**\n * @framerSupportedLayoutWidth auto\n * @framerSupportedLayoutHeight auto\n * @framerDisableUnlink\n */function MultiStepFormComponent(props){const{scrollToTop}=props;const id=useInstanceId();const isCanvas=RenderTarget.current()===RenderTarget.canvas;const[multiStepFormState,setMultiStepFormState]=useMultiStepFormStore();const[formInfo,setFormInfo]=useState(null);const stateRef=useRef(multiStepFormState[formInfo?.formId]);const ref=useRef(null);const pageVideosRef=useRef({});const isFirstRenderRef=useRef(true);const[initialized,setInitialized]=useState(false);const state=multiStepFormState[formInfo?.formId];const pageHistory=state?.pageHistory;useEffect(()=>{const formInfo=getFormInfo(ref.current);setFormInfo(formInfo);const{formId,form,pages}=formInfo;function previousPage(){const pageHistory=stateRef.current?.pageHistory;if(pageHistory?.length>1){setMultiStepFormState(prev=>({[formId]:{...prev[formId],pageHistory:prev[formId].pageHistory.slice(0,-1),isEndPage:false}}));}}function nextPage(){const state=stateRef.current;if(state){const page=state.pageHistory[state.pageHistory.length-1];const{logicConfigs}=state;let newPage=null;if(logicConfigs.length&&pages){const pageElement=pages.children?.[page];for(const logic of logicConfigs){if(isAncestor(pageElement,logic.ref.current)){const nextPageName=logic.getNextPage();if(nextPageName){const nextPageIndex=getChildIndexByDataFramerName(pages,nextPageName);if(nextPageIndex!==-1){newPage=nextPageIndex;}break;}}}}if(newPage===null&&page<state.totalPages-1){newPage=page+1;}const pageElement=pages.children[page];if(pageElement&&!isFormValid(pageElement)){newPage=null;}if(newPage){setMultiStepFormState(prev=>{const prevState=prev[formId];return{[formId]:{...prevState,pageHistory:[...prevState.pageHistory,newPage],isEndPage:isPageAnEndPage({pageIndex:newPage,state:prevState,pages,endPageMode:props.endPage,customEndPages:props.endPageCustom})}};});}}}function setPageHistoryLength(newLength){setMultiStepFormState(prev=>{const pageHistory=prev[formId]?.pageHistory??[];return{[formId]:{...prev[formId],pageHistory:newLength>=pageHistory.length?pageHistory:pageHistory.slice(0,newLength),isEndPage:isPageAnEndPage({pageIndex:pageHistory[newLength-1],state:prev[formId],pages,endPageMode:props.endPage,customEndPages:props.endPageCustom})}};});}if(formId&&pages){setMultiStepFormState({[formId]:{totalPages:pages.children.length,pageHistory:[0],logicConfigs:[],isEndPage:pages.children.length==1,previousPage,nextPage,setPageHistoryLength}});}if(pages){const pageElements=pages.children;for(let i=0;i<pageElements.length;i++){const videos=pageElements[i].querySelectorAll(\"video\");if(!pageVideosRef.current[i]){pageVideosRef.current[i]=[];}for(const video of videos){pageVideosRef.current[i].push(video);if(video.hasAttribute(\"autoplay\")&&i!==0){const pauseVideo=()=>{if(!video.paused){setTimeout(()=>{if(!video.paused){video.pause();}},100)// 100 milliseconds = 0.1 seconds\n;}};if(!video.paused){// Video is already playing, pause it immediately\npauseVideo();}else{// Wait for the video to start playing, then pause it\nvideo.addEventListener(\"play\",pauseVideo,{once:true});}}}}}let unmountFunction=null;if(form){function onEnterPress(event){if(event.key!==\"Enter\"||event.target.tagName===\"TEXTAREA\"){return;}const currentInput=event.target;let previousElement=currentInput;let foundPage=false;while(previousElement&&!foundPage){const newElement=previousElement.parentElement;if(newElement==pages){foundPage=true;break;}previousElement=newElement;}const currentPage=previousElement;let stopEvent=true;if(currentPage){const inputs=getInputsOnPage(currentPage);const currentIndex=inputs.indexOf(currentInput);if(currentIndex<inputs.length-1){// Focus the next input on the current page\ninputs[currentIndex+1].focus();}else{const pageElements=Array.from(pages.children);const pageIndex=pageElements.indexOf(currentPage);if(pageIndex<pageElements.length-1){nextPage();}else{// Let the form submit if it's the last page\nstopEvent=false;}}}if(stopEvent){event.preventDefault();event.stopPropagation();}}// Override Enter key press event\nform.addEventListener(\"keydown\",onEnterPress,true);unmountFunction=()=>{form.removeEventListener(\"keydown\",onEnterPress,true);};}if(unmountFunction){return unmountFunction;}},[]);useEffect(()=>{stateRef.current=state;},[state]);useEffect(()=>{if(state&&(!isCanvas||ref.current?.closest('[data-framer-component-container=\"true\"]'))){const submitButton=formInfo.form?.querySelector('button[type=\"submit\"]')?.parentElement;if(submitButton){submitButton.setAttribute(SUBMIT_BUTTON_HIDDEN_ATTRIBUTE,state.isEndPage?\"false\":\"true\");}}},[state?.isEndPage]);useEffect(()=>{const pages=formInfo?.pages;if(pages&&pageHistory){// Enable/disable form inputs on pages that have not been visited for submit validation\nif(state?.logicConfigs?.length||props.endPage==\"customPages\"){for(let i=0;i<pages.children.length;i++){if(pageHistory.includes(i)){const inputs=pages.children[i]?.querySelectorAll(`input[name][disabled=\"FramerForms\"], select[name][disabled=\"FramerForms\"], textarea[name][disabled=\"FramerForms\"]`);for(const input of inputs){input.removeAttribute(\"disabled\");}}else{const inputs=pages.children[i]?.querySelectorAll(\"input[name]:not([disabled]), select[name]:not([disabled]), textarea[name]:not([disabled])\");for(const input of inputs){input.setAttribute(\"disabled\",\"FramerForms\");}}}}// Play/pause videos on form pages\nconst currentPage=pageHistory[pageHistory.length-1];if(pageVideosRef.current){for(const pageIndex of Object.keys(pageVideosRef.current)){const pageVideos=pageVideosRef.current[pageIndex];for(const video of pageVideos){if(pageIndex==currentPage){if(video.hasAttribute(\"autoplay\")){video.play();}}else if(!video.paused){video.pause();}}}}// Scroll to top of form\nif(scrollToTop&&formInfo.form&&!isFirstRenderRef.current){const rect=formInfo.form.getBoundingClientRect();const top=rect.top-scrollToTop.offset;const topIsInView=top>=0&&top<=window.innerHeight;if(!topIsInView){const windowScrollTop=window.pageYOffset||document.documentElement.scrollTop;window.scrollTo({top:windowScrollTop+top,behavior:scrollToTop.scrollStyle});}}if(!isFirstRenderRef.current){autoFocusInputOnPage(pages.children[currentPage]);}isFirstRenderRef.current=false;}fireAnalyticsEvent(props.analytics,pageHistory,formInfo?.pages);},[pageHistory]);useEffect(()=>{setInitialized(true);},[]);return /*#__PURE__*/_jsxs(HiddenComponentLabel,{text:\"Multi-Step Form\",children:[/*#__PURE__*/_jsxs(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 452 60\",width:\"121\",height:\"16\",style:{marginBottom:5},children:[/*#__PURE__*/_jsx(\"path\",{d:\"M 58.178 27.448 L 58.178 0.912 L 33.172 0.912 C 14.852 0.912 0 15.76 0 34.08 L 0 59.086 L 58.178 59.086 L 58.178 27.46 C 58.172 44.93 44.008 59.09 26.538 59.09 L 26.538 27.45 L 58.178 27.45 Z\",fill:\"#473DFE\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M 452.004 36.088 C 452.004 43.208 446.328 47.872 437.336 47.872 C 428.342 47.872 422.57 43.112 421.946 35.464 L 431.132 35.464 C 431.228 38.734 433.392 40.802 437.142 40.802 C 440.268 40.802 442.336 39.6 442.336 37.436 C 442.336 35.944 440.846 34.838 438.826 34.454 L 432.526 33.252 C 426.996 32.192 423.34 28.972 423.34 23.392 C 423.34 16.948 429.016 12.426 436.758 12.426 C 444.982 12.426 450.898 17.14 451.426 24.594 L 442.24 24.594 C 442 21.468 439.884 19.448 436.854 19.448 C 434.162 19.448 432.526 20.892 432.526 22.768 C 432.526 24.306 434.064 25.22 435.892 25.556 L 442.578 26.856 C 448.734 28.056 452.004 31.086 452.004 36.088 Z M 395.384 47.39 L 387.978 27.48 L 387.978 47.39 L 379.754 47.39 L 379.754 12.86 L 390.478 12.86 L 399.184 36.28 L 407.84 12.86 L 418.566 12.86 L 418.566 47.39 L 410.342 47.39 L 410.342 27.24 L 402.886 47.39 Z M 355.758 47.39 L 346.668 47.39 L 346.668 12.86 L 360.808 12.86 C 370.138 12.86 375.476 17.044 375.476 24.402 C 375.476 28.826 372.83 32.482 368.166 34.454 L 376.63 47.39 L 365.81 47.39 L 358.74 35.896 L 355.758 35.896 Z M 355.758 20.362 L 355.758 28.394 L 360.422 28.394 C 364.462 28.394 366.338 27.144 366.338 24.402 C 366.338 21.662 364.462 20.362 360.422 20.362 Z M 325.08 48.112 C 315.124 48.112 307.286 40.562 307.286 30.076 C 307.286 19.592 315.124 12.138 325.08 12.138 C 335.084 12.138 342.922 19.592 342.922 30.078 C 342.922 40.562 335.084 48.112 325.08 48.112 Z M 325.08 39.984 C 330.514 39.984 333.544 35.512 333.544 30.076 C 333.544 24.642 330.514 20.266 325.08 20.266 C 319.646 20.266 316.616 24.642 316.616 30.078 C 316.616 35.512 319.646 39.984 325.08 39.984 Z M 291.034 47.39 L 281.946 47.39 L 281.946 12.86 L 305.462 12.86 L 305.462 20.748 L 291.034 20.748 L 291.034 27.144 L 303.106 27.144 L 303.106 35.032 L 291.034 35.032 L 291.034 47.392 Z M 257.946 47.39 L 248.856 47.39 L 248.856 12.86 L 262.994 12.86 C 272.326 12.86 277.664 17.044 277.664 24.402 C 277.664 28.826 275.018 32.482 270.354 34.454 L 278.818 47.39 L 267.996 47.39 L 260.926 35.896 L 257.946 35.896 Z M 257.946 20.362 L 257.946 28.394 L 262.61 28.394 C 266.65 28.394 268.526 27.144 268.526 24.402 C 268.526 21.662 266.65 20.362 262.61 20.362 Z M 244.616 39.504 L 244.616 47.392 L 220.184 47.392 L 220.184 12.86 L 244.278 12.86 L 244.278 20.748 L 229.274 20.748 L 229.274 25.7 L 242.884 25.7 L 242.884 33.588 L 229.274 33.588 L 229.274 39.504 Z M 191.216 47.39 L 183.81 27.48 L 183.81 47.39 L 175.586 47.39 L 175.586 12.86 L 186.31 12.86 L 195.016 36.28 L 203.672 12.86 L 214.398 12.86 L 214.398 47.39 L 206.174 47.39 L 206.174 27.24 L 198.718 47.39 L 191.218 47.39 Z M 163.08 47.39 L 160.966 40.994 L 148.846 40.994 L 146.682 47.39 L 137.496 47.39 L 150.288 12.86 L 160.244 12.86 L 172.892 47.39 L 163.082 47.39 Z M 155.002 22.864 L 151.298 33.828 L 158.61 33.828 L 155 22.864 Z M 116.574 47.39 L 107.484 47.39 L 107.484 12.86 L 121.624 12.86 C 130.954 12.86 136.292 17.044 136.292 24.402 C 136.292 28.826 133.648 32.482 128.982 34.454 L 137.446 47.39 L 126.626 47.39 L 119.556 35.896 L 116.574 35.896 Z M 116.574 20.362 L 116.574 28.394 L 121.24 28.394 C 125.28 28.394 127.154 27.144 127.154 24.402 C 127.154 21.662 125.278 20.362 121.24 20.362 Z M 89.214 47.39 L 80.126 47.39 L 80.126 12.86 L 103.64 12.86 L 103.64 20.748 L 89.212 20.748 L 89.212 27.144 L 101.284 27.144 L 101.284 35.032 L 89.212 35.032 L 89.212 47.392 Z\",fill:\"#999\"})]}),/*#__PURE__*/_jsxs(\"div\",{ref:ref,id:id,\"data-framerforms-multi-step-form\":true,className:!initialized&&!isCanvas?OPTIMIZATION_CLASS_NAME:\"\",style:{display:\"none\"},children:[initialized&&!isCanvas&&/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:`form[framerforms-id=\"${formInfo?.formId}\"] > [data-framer-name=\"Pages\" i] > *:not(:nth-child(${pageHistory?pageHistory[pageHistory.length-1]+1:1})) { display: none; }`}}),isCanvas&&/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:`[data-framer-component-container=\"true\"] form[framerforms-id=\"${formInfo?.formId}\"] > [data-framer-name=\"Pages\" i] > *:not(:first-child) { display: none; }`}})]})]});}const MultiStepForm=withCSS(MultiStepFormComponent,[`form:has(.${OPTIMIZATION_CLASS_NAME}) > [data-framer-name=\"Pages\" i] > *:not(:first-child) { display: none; }`,`form:has(.${OPTIMIZATION_CLASS_NAME}) div:has(> button[type=\"submit\"]) { display: none; }`,`[${SUBMIT_BUTTON_HIDDEN_ATTRIBUTE}=\"true\"] { display: none; }`],OPTIMIZATION_CLASS_NAME);export default MultiStepForm;MultiStepForm.displayName=\"Multi-Step Form\";addPropertyControls(MultiStepForm,{endPage:{type:ControlType.Enum,defaultValue:\"lastPage\",options:[\"lastPage\",\"customPages\"],optionTitles:[\"Last Page\",\"Custom Pages\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},endPageCustom:{type:ControlType.Array,control:{type:ControlType.String,defaultValue:\"\",placeholder:\"Page Layer Name\",preventLocalization:true},title:\"Pages\",description:\"List of page names where the submit button is shown\",hidden:props=>props.endPage!==\"customPages\"},analytics:{type:ControlType.Object,optional:true,icon:\"interaction\",controls:{platform:{type:ControlType.Enum,options:[\"googleAnalytics\"],optionTitles:[\"Google Analytics 4\"]},googleAnalyticsEventName:{type:ControlType.String,placeholder:\"Event Name\",title:\"Event Name\",preventLocalization:true,hidden:props=>props.platform!==\"googleAnalytics\"},googleAnalyticsEventCategory:{type:ControlType.String,placeholder:\"Optional\",title:\"Category\",description:\"Make sure the Google Analytics 4 script is installed\",preventLocalization:true,hidden:props=>props.platform!==\"googleAnalytics\"}}},scrollToTop:{type:ControlType.Object,optional:true,title:\"Scroll to Top\",controls:{scrollStyle:{type:ControlType.Enum,defaultValue:\"smooth\",options:[\"smooth\",\"instant\"],optionTitles:[\"Smooth\",\"Instant\"],displaySegmentedControl:true,title:\"Scroll\"},offset:{type:ControlType.Number,defaultValue:32,step:1,description:\"When previous or next button is pressed, scroll to the top of the form with an offset\"}}}});//////////////////////////////////////////////////////////////\n/**\n * Validates all inputs within an element. Uses reportValidity() which shows validation UI.\n * Only validates visible inputs (inputs on hidden pages are skipped).\n *\n * @param element The element whose inputs we have to validate\n * @returns `true` if all visible inputs are valid, `false` otherwise\n */export function isFormValid(element){const inputs=element.querySelectorAll(\"input, select, textarea\");let invalidInputs=[];for(const input of inputs){if(isVisible(input)&&!input.reportValidity()){invalidInputs.push(input);}}return invalidInputs.length===0;}/**\n * Checks if all required fields on a page have values.\n * Works on hidden pages (doesn't rely on visibility).\n * Does NOT trigger validation UI - use this for pre-checking pages before navigation.\n *\n * @param element The page element to check\n * @returns `true` if all required fields have values, `false` if any required field is empty\n */export function hasRequiredFieldsFilled(element){const inputs=element.querySelectorAll(\"input[required], select[required], textarea[required]\");for(const input of inputs){// Skip disabled inputs\nif(input.disabled)continue;// Skip hidden proxy inputs (tabindex=-1 with opacity 0)\nif(input.tabIndex===-1&&input.style.opacity===\"0\")continue;// Check if input has a value\nconst value=input.value?.trim()??\"\";if(value===\"\"){return false;}}return true;}/**\n * Checks if the element is visible in the DOM.\n *\n * @param element The element we are checking the visibility of\n * @returns `true` if the element is visible, `false` otherwise\n */function isVisible(element){return element.offsetParent!==null||element instanceof HTMLInputElement&&element.type===\"hidden\";}/**\n *\n * @param parentElement The parent element to search for the child\n * @param name The name of the child to search for\n * @returns The index of the child if found, -1 otherwise\n */function getChildIndexByDataFramerName(parentElement,name){const children=Array.from(parentElement.children);for(let i=0;i<children.length;i++){if(children[i].getAttribute(\"data-framer-name\")===name){return i;}}return-1// Return -1 if no child with the specified attribute value is found\n;}/**\n * Determines if a given page index is an end page based on the form configuration.\n *\n * @param {IsPageAnEndPageParams} params - Configuration object\n * @param {number} params.pageIndex - Zero-based index of the page to check\n * @param {MultiStepFormState} params.state - Multi-step form state containing total page count\n * @param {HTMLElement | null} params.pages - Container element with all page elements, or null\n * @param {\"customPages\" | \"lastPage\"} params.endPageMode - Mode for identifying end pages\n * @param {string[]} params.customEndPages - Page names (data-framer-name) that are end pages (used when endPageMode is \"customPages\")\n * @returns {boolean} `true` if the page is an end page, `false` otherwise\n */function isPageAnEndPage({pageIndex,state,pages,endPageMode,customEndPages}){let isEndPage=false;if(endPageMode===\"customPages\"&&pages){const step=pages.children[pageIndex];if(customEndPages.includes(step.getAttribute(\"data-framer-name\"))){isEndPage=true;}}else{isEndPage=pageIndex==state.totalPages-1;}return isEndPage;}/**\n * Fires analytics events when the user navigates to a new page.\n *\n * @param analytics - Analytics configuration object, or null/undefined to skip\n * @param pageHistory - Array of visited page indices. Current page is the last element.\n * @param pages - Container element holding all page elements as children\n *\n * @example\n * // pageHistory = [0, 1, 2] means user is on page index 2 (third page)\n * fireAnalyticsEvent(analyticsConfig, [0, 1, 2], pagesElement)\n */function fireAnalyticsEvent(analytics,pageHistory,pages){if(!analytics||!pageHistory||!pages){return;}switch(analytics.platform){case\"googleAnalytics\":if(typeof window!==\"undefined\"){if(typeof window.gtag!==\"undefined\"){const pageIndex=pageHistory[pageHistory.length-1];const page=pages?.children[pageIndex];const params={page_name:page?.getAttribute(\"data-framer-name\")||page?.getAttribute(\"name\")||`Page ${pageIndex+1}`};if(analytics.googleAnalyticsEventCategory){params.event_category=analytics.googleAnalyticsEventCategory;}window.gtag(\"event\",analytics.googleAnalyticsEventName,params);}else{console.error(\"Google Analytics gtag.js script is not installed.\");}}break;}}function getInputsOnPage(page){return Array.from(page.querySelectorAll('input:not([type=\"hidden\"]):not([disabled]):not([name=\"\"]):not([tabindex=\"-1\"]):not([data-framerforms-set-value-event]), textarea:not([disabled]):not([name=\"\"]):not([tabindex=\"-1\"]), select:not([disabled]):not([name=\"\"]):not([tabindex=\"-1\"]), button:not([disabled]):not([tabindex=\"-1\"])')).filter(el=>window.getComputedStyle(el).display!==\"none\");}function autoFocusInputOnPage(pageElement){if(!pageElement){return;}// Get all potential autofocus elements\nconst autofocusElements=pageElement.querySelectorAll(\"input[autofocus], select[autofocus], textarea[autofocus]\");// Convert NodeList to Array for easier manipulation\nconst elements=Array.from(autofocusElements);// Filter out hidden elements\nconst visibleElements=elements.filter(el=>{const style=window.getComputedStyle(el);return style.display!==\"none\"&&style.visibility!==\"hidden\"&&!el.hidden&&!el.disabled&&el.offsetParent!==null// Check if the element is rendered\n;});// If there are visible autofocus elements, focus the first one\nif(visibleElements.length>0){visibleElements[0].focus();}}\nexport const __FramerMetadata__ = {\"exports\":{\"hasRequiredFieldsFilled\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isFormValid\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"MultiStepForm\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}