https://www.thisisblindtest.com/hubfs/hub_generated/module_assets/…/1753435710464/module_form.min.js
1var module_232581911739=void(()=>{let multistepForms=document.querySelectorAll(".module--custom-form .multistep"),createHTMLElement=options=>new Promise(((resolve,reject)=>{let button=document.createElement(options.tag);button.innerHTML=options.text;for(const[optionName,optionValue]of Object.entries(options.attributes))button.setAttribute(optionName,optionValue);resolve(button)})),showCurrentElements=(fields,multistepForm,currentStep)=>{multistepForm.dataset.steps;let stepBubbles=multistepForm.querySelectorAll(".step-bubbles__step-bubble"),stepTitles=multistepForm.querySelectorAll(".step-titles__title");fields.forEach((field=>{field.classList.add("invisible"),field.dataset.step&&field.dataset.step==currentStep&&field.classList.remove("invisible")})),stepBubbles&&stepBubbles.forEach((stepBubble=>stepBubble.dataset.step==currentStep?stepBubble.classList.add("step-bubbles__step-bubble--active"):stepBubble.classList.remove("step-bubbles__step-bubble--active"))),stepTitles&&stepTitles.forEach((stepTitle=>stepTitle.dataset.step==currentStep?stepTitle.classList.add("step-titles__title--active"):stepTitle.classList.remove("step-titles__title--active"))),((multistepF
1orm,currentStep)=>{let submitButton=multistepForm.querySelector(".hs-button"),prevButton=multistepForm.querySelector(".button--prev"),nextButton=multistepForm.querySelector(".button--next");multistepForm.querySelector("input[type='submit']")&&(submitButton=multistepForm.querySelector("input[type='submit']")),currentStep>1&¤tStep<=parseInt(multistepForm.dataset.steps)&&(prevButton.classList.remove("invisible"),submitButton.classList.add("invisible")),currentStep>=1&¤tStep<parseInt(multistepForm.dataset.steps)&&(nextButton.classList.remove("invisible"),submitButton.classList.add("invisible")),currentStep<=1&&prevButton.classList.add("invisible"),currentStep==parseInt(multistepForm.dataset.steps)&&(nextButton.classList.add("invisible"),submitButton.classList.remove("invisible")),prevButton.dataset.target=currentStep-1,nextButton.dataset.target=currentStep+1})(multistepForm,currentStep)},initMultistepForm=multistepForm=>{let fields=multistepForm.querySelectorAll(".hs-form > .hs-form-field");multistepForm.querySelectorAll(".hs-form > fieldset").length>
10&&(fields=multistepForm.querySelectorAll(".hs-form > fieldset")),((fields,multistepForm)=>new Promise(((resolve,reject)=>{let steps=parseInt(multistepForm.dataset.steps),submitButtons=multistepForm.querySelectorAll("input[type='submit'], .hs-button.primary"),legalConsent=multistepForm.querySelector(".legal-consent-container"),dependentFields=multistepForm.querySelectorAll(".hs-dependent-field");submitButtons&&submitButtons.forEach((submitButton=>submitButton.classList.add("invisible"))),legalConsent&&legalConsent.classList.add("hs-form-field"),dependentFields&&dependentFields.forEach((element=>element.classList.add("hs-form-field")));for(let currentStep=1;currentStep<=steps;currentStep++){let fieldInTheStep=parseInt(multistepForm.getAttribute(`data-step-${currentStep}`));for(let lastStep=1;lastStep<currentStep;lastStep++)fieldInTheStep+=parseInt(multistepForm.getAttribute(`data-step-${lastStep}`));fields.forEach(((field,index)=>{!field.dataset.step&&index<fieldInTheStep&&(field.dataset.step=currentStep,field.classList.add("invisible"))})),currentStep==steps&&resolve()}})))(fields,multistepForm).then((()=>((fields,multistepForm)=>{let formActionsContainer=multistepForm.querySelector(".hs-form"),submitButton=formActionsContainer.querySelector(".hs-button"),currentStepNumber=parseInt(multistepForm.dataset.current);multistepForm.querySelector(".hs-form .actions")&&(formActionsContainer=multistepForm.querySelector(".hs-form .actions")),fields.forEach((field=>1==field.style.opacity&&(currentStepNumber=parseInt(field.dataset.step))));let prevButton={tag:"button",text:multistepForm.dataset.prev,attributes:{class:"button button--prev invisible","data-target":currentStepNumber-1}},nextButton={tag:"button",text:multistepForm.dataset.next,attributes:{class:"button button--next","data-target":currentStepNumber+1}};createHTMLElement(prevButton).then((button=>{formActionsContainer.insertBefore(button,submitButton),button.addEventListener("click",(event=>{event.preventDefault(),event.stopPropagation(),showCurrentElements(fields,multistepForm,parseInt(button.dataset.target))}))})),createHTMLElement(nextButton).then((button=>{formActionsContainer.insertBefore(button,submitButton),button.addEventListener("click",(event=>{event.preventDefault(),event.stopPropagation(),showCurrentElements(fields,multistepForm,parseInt(button.dataset.target))}))}))})(fields,multistepForm))).then((()=>showCurrentElements(fields,multistepForm,parseInt(multistepForm.dataset.current))))};window.addEventListener("message",(event=>{"hsFormCallback"===event.data.type&&"onFormReady"===event.data.eventName&&multistepForms&&multistepForms.forEach((multistepForm=>{multistepForm.querySelector(".hs-form")&&event.data.id===multistepF
1orm.querySelector(".hs-form").dataset.formId&&initMultistepForm(multistepForm)}))}))})(); 2//# sourceURL=https://25692189.fs1.hubspotusercontent-eu1.net/hubfs/25692189/hub_generated/module_assets/1/232581911739/1753435710464/module_form.js
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.