{"version":3,"sources":["newsletter.js"],"names":["$","$signupButton","length","closest","on","$form","this","$formBtn","find","$resultBlock","siblings","formData","serialize","zipVal","val","zipError","errors","required","attr","maxLength","test","step_2_us_zip_code_hint","hide","prop","html","show","setTimeout","remove","ajaxData","post","ajaxurl","results","is","dataLayer","push","event","jQuery"],"mappings":"AAAA,cAAC,SAASA,GAEN,IAAMC,EAAgBD,EAAE,uBAEnBC,EAAcC,QAInBD,EAAcE,QAAQ,QAAQC,GAAG,UAAU,WAEvC,IAAMC,EAAQL,EAAEM,MACVC,EAAWF,EAAMG,KAAK,UACtBC,EAAeJ,EAAMK,SAAS,YAC9BC,EAAWN,EAAMO,YAEjBC,EAASR,EAAMG,KAAK,oBAAoBM,MAC1CC,GAAW,EAmBf,GAjBKF,EAAS,EACVE,EAAWC,OAAOC,UAIlBZ,EAAMG,KAAK,oBAAoBU,KAAK,CAAEC,UAAW,KAG1C,qBAAqBC,KAAKP,IACpB,UAAXA,GAAiC,eAAXA,IACpBE,EAAWC,OAAOK,0BAI1BZ,EAAaa,OACbf,EAASgB,KAAK,YAAY,IAER,IAAbR,EAYD,OAVAN,EAAae,KAAK,yCAA2CT,EAAW,QACxER,EAASgB,KAAK,YAAY,GAC1Bd,EAAagB,OAEbC,YAAW,WACPjB,EAAaD,KAAK,kBAAkBmB,SACpCpB,EAASgB,KAAK,YAAY,GAC1Bd,EAAaa,MACjB,GAAG,MAEI,EAGX,IAAMM,EAAWjB,EAAW,uBAwB5B,OAtBAX,EAAE6B,KAAKC,QAASF,GAAU,SAAAG,GAEtBtB,EAAae,KAAKO,GAClBtB,EAAagB,OAERzB,EAAE+B,GAASC,GAAG,mBACfC,UAAUC,KAAK,CACXC,MAAO,gCAIfT,YAAW,WACPjB,EAAaD,KAAK,kBAAkBmB,SACpCpB,EAASgB,KAAK,YAAY,GAC1Bd,EAAaa,MACjB,GAAG,KAEHI,YAAW,WACP1B,EAAE,0BAA0BsB,MAChC,GAAG,IACP,KAEO,CACX,GACJ,CA5EC,CA4EEc","file":"../newsletter.js","sourcesContent":["(function($) {\n\n    const $signupButton = $('.signup-form button');\n\n    if (!$signupButton.length) {\n        return;\n    }\n\n    $signupButton.closest('form').on('submit', function() {\n\n        const $form = $(this)\n        const $formBtn = $form.find('button');\n        const $resultBlock = $form.siblings('.cta-res');\n        const formData = $form.serialize();\n\n        const zipVal = $form.find('[name=\"zipcode\"]').val();\n        let zipError = false;\n\n        if ( zipVal < 1 ) {\n            zipError = errors.required;\n        }\n        else {\n\n            $form.find('[name=\"zipcode\"]').attr({ maxLength: 10 });\n\n            // Only allow ##### or #####-####, don't allow 00000 or 00000-0000\n            if ( ! /^(\\d{5}(|-\\d{4}))$/.test(zipVal) ||\n            ( zipVal === '00000' || zipVal === '00000-0000' ) ) {\n                zipError = errors.step_2_us_zip_code_hint;\n            }\n        }\n\n        $resultBlock.hide();\n        $formBtn.prop('disabled', true);\n\n        if ( zipError !== false ) {\n\n            $resultBlock.html('<p class=\"error-message\" role=\"alert\">' + zipError + '</p>');\n            $formBtn.prop('disabled', false);\n            $resultBlock.show();\n\n            setTimeout(() => {\n                $resultBlock.find('.error-message').remove();\n                $formBtn.prop('disabled', false);\n                $resultBlock.hide();\n            }, 3000);\n\n            return false;\n        }\n\n        const ajaxData = formData + '&action=ajax_sign_up';\n\n        $.post(ajaxurl, ajaxData, (results) => {\n\n            $resultBlock.html(results);\n            $resultBlock.show();\n\n            if (!$(results).is('.error-message')) {\n                dataLayer.push({\n                    event: 'emailSuccessfullyRegistered'\n                });\n            }\n\n            setTimeout(() => {\n                $resultBlock.find('.error-message').remove();\n                $formBtn.prop('disabled', false);\n                $resultBlock.hide();\n            }, 3000);\n\n            setTimeout(() => {\n                $('.cta-newsletter-thanks').hide();\n            }, 9000);\n        });\n\n        return false;\n    });\n})(jQuery);\n"]}