{"version":3,"sources":["process-submit-email-gate-form.ts"],"names":["emailGate","document","querySelector","init","window","$$epiforms","this","freezeAndBlurDocument","createOverlayButton","on","handleFormSuccess","bind","handleFormSubmittedError","handleAfterValidate","_document$querySelect","body","classList","add","className","includes","event","_document$querySelect2","style","overflow","remove","removeLoading","hideEmailGate","setCookie","formData","scrollToTop","param1","param2","isValid","scrollTo","addLoading","buttonOverlay","_this","button","createElement","ariaHidden","addEventListener","stopPropagation","preventDefault","setTimeout","triggerButtonClick","append","dispatchEvent","Event","inputName","_this$emailGate","_this$emailGate$query","name","inputValue","get","cookie"],"mappings":"CAG4B,CACxBA,UAAWC,SAASC,cAAc,oBAClCC,YACmC,IAAtBC,OAAOC,aAIlBC,KAAKC,wBACLD,KAAKE,sBACLJ,OAAOC,WAAW,oCAAoCI,GAAG,iBAAkBH,KAAKI,kBAAkBC,KAAKL,OACvGF,OAAOC,WAAW,oCAAoCI,GAAG,sBAAuBH,KAAKM,yBAAyBD,KAAKL,OACnHF,OAAOC,WAAW,oCAAoCI,GAAG,mBAAoBH,KAAKO,oBAAoBF,KAAKL,SAE7GC,wBACE,IAOgDO,EAP3CR,KAAKN,YAIVC,SAASc,KAAKC,UAAUC,IAAI,aAC5BhB,SAASc,KAAKC,UAAUC,IAAI,QAExBX,KAAKN,UAAUkB,UAAUC,SAAS,UACpC,OAAAL,EAAAb,SAASC,cAAc,UAAvBY,EAAgCE,UAAUC,IAAI,UAGlDP,kBAAkBU,GAAO,IAAAC,EACvBpB,SAASc,KAAKO,MAAMC,SAAW,GAC/BtB,SAASc,KAAKC,UAAUQ,OAAO,QAC/BvB,SAASc,KAAKC,UAAUQ,OAAO,aAC/B,OAAAH,EAAApB,SAASC,cAAc,UAAvBmB,EAAgCL,UAAUQ,OAAO,QAEjDlB,KAAKmB,gBACLnB,KAAKoB,gBAGLpB,KAAKqB,UAAUP,EAAMQ,WAEvBhB,2BACEN,KAAKuB,cACLvB,KAAKmB,iBAEPZ,oBAAoBO,EAAOU,EAAQC,GAC5BX,EAAMY,UACT1B,KAAKuB,cACLvB,KAAKmB,kBAGTI,cACEzB,OAAO6B,SAAS,EAAG,IAErBC,aACO5B,KAAKN,WAIVM,KAAKN,UAAUgB,UAAUC,IAAI,YAE/BQ,gBACOnB,KAAKN,WAIVM,KAAKN,UAAUgB,UAAUQ,OAAO,YAElChB,sBAAsB,IAOd2B,EAPcC,EAAA9B,KACd+B,EAASpC,SAASC,cAAc,0DAEjCmC,KAICF,EAAgBlC,SAASqC,cAA+B,SAChDtB,UAAUC,IAAI,kBAC5BkB,EAAcI,WAAa,OAC3BJ,EAAcK,iBAAiB,QAAS,SAACpB,GACvCA,EAAMqB,kBACNrB,EAAMsB,iBACNN,EAAKF,aAELS,WAAWP,EAAKQ,mBAAmBjC,KAAKyB,GAAO,OAGjDC,EAAOQ,OAAOV,KAEhBS,qBACE,IAAMP,EAASpC,SAASC,cAAc,0DAEjCmC,GAILA,EAAOS,cAAc,IAAIC,MAAM,WAEjCrB,gBACOpB,KAAKN,WAIVM,KAAKN,UAAUgB,UAAUC,IAAI,WAE/BU,UAAUC,GAAoB,IACtBoB,EAAS,OAAAC,EAAG3C,KAAKN,YAAR,OAAAkD,EAAGD,EAAgB/C,cAAc,iDAAjC,EAAGgD,EAA0EC,KACtFC,EAAaJ,GAAapB,GAAYA,EAASyB,IAAIL,GAEzD/C,SAASqD,OAAU,wBAAuBF,KAI5BjD","file":"process-submit-email-gate-form.js","sourcesContent":["// @ts-nocheck\n\n(() => {\n const processSubmitForm = {\n emailGate: document.querySelector(\".fm-o-email-gate\"),\n init() {\n if (typeof window.$$epiforms === 'undefined') {\n return;\n }\n\n this.freezeAndBlurDocument();\n this.createOverlayButton();\n window.$$epiforms(\".fm-o-email-gate .EPiServerForms\").on('formsSubmitted', this.handleFormSuccess.bind(this));\n window.$$epiforms(\".fm-o-email-gate .EPiServerForms\").on('formsSubmittedError', this.handleFormSubmittedError.bind(this));\n window.$$epiforms(\".fm-o-email-gate .EPiServerForms\").on('elementValidated', this.handleAfterValidate.bind(this));\n },\n freezeAndBlurDocument() {\n if (!this.emailGate) {\n return;\n }\n\n document.body.classList.add('no-scroll');\n document.body.classList.add('blur');\n\n if (this.emailGate.className.includes('popup')) {\n document.querySelector('main')?.classList.add('blur');\n }\n },\n handleFormSuccess(event) {\n document.body.style.overflow = '';\n document.body.classList.remove('blur');\n document.body.classList.remove('no-scroll');\n document.querySelector('main')?.classList.remove('blur');\n\n this.removeLoading();\n this.hideEmailGate();\n\n // set cookie for BE process\n this.setCookie(event.formData);\n },\n handleFormSubmittedError() {\n this.scrollToTop();\n this.removeLoading();\n },\n handleAfterValidate(event, param1, param2) {\n if (!event.isValid) {\n this.scrollToTop();\n this.removeLoading();\n }\n },\n scrollToTop() {\n window.scrollTo(0, 0);\n },\n addLoading() {\n if (!this.emailGate) {\n return;\n }\n\n this.emailGate.classList.add('loading');\n },\n removeLoading() {\n if (!this.emailGate) {\n return;\n }\n\n this.emailGate.classList.remove('loading');\n },\n createOverlayButton() {\n const button = document.querySelector(\".fm-o-email-gate .EPiServerForms button[type='submit']\");\n\n if (!button) {\n return;\n }\n\n const buttonOverlay = document.createElement('span');\n buttonOverlay.classList.add('button-overlay');\n buttonOverlay.ariaHidden = 'true';\n buttonOverlay.addEventListener('click', (event: Event) => {\n event.stopPropagation();\n event.preventDefault();\n this.addLoading();\n\n setTimeout(this.triggerButtonClick.bind(this), 500);\n });\n\n button.append(buttonOverlay);\n },\n triggerButtonClick() {\n const button = document.querySelector(\".fm-o-email-gate .EPiServerForms button[type='submit']\");\n\n if (!button) {\n return;\n }\n\n button.dispatchEvent(new Event('click'));\n },\n hideEmailGate() {\n if (!this.emailGate) {\n return;\n }\n\n this.emailGate.classList.add('hidden');\n },\n setCookie(formData: FormData) {\n const inputName = this.emailGate?.querySelector('input[type=\"text\"], input[type=\"email\"]')?.name;\n const inputValue = inputName && formData && formData.get(inputName);\n\n document.cookie = `firstmile_email_gate=${inputValue}`;\n }\n };\n\n processSubmitForm.init();\n})();"]}