{"version":3,"sources":["webpack:///./source/components/quick-capture/index.js","webpack:///./node_modules/body-scroll-lock/lib/bodyScrollLock.min.js"],"names":["__webpack_require__","r","__webpack_exports__","wee_routes__WEBPACK_IMPORTED_MODULE_0__","wee_events__WEBPACK_IMPORTED_MODULE_1__","wee_dom__WEBPACK_IMPORTED_MODULE_2__","body_scroll_lock__WEBPACK_IMPORTED_MODULE_3__","RouteHandler","init","$formSelect","$","$quickCaptureButton","$quickCaptureModal","$quickCaptureClose","$quickCaptureForm","$formContainer","$formInputs","$lastFocusableElement","$modalTitle","$body","activeEl","popupTimeout","dropdownOption","stopTimeout","clearTimeout","showModal","disableBodyScroll","show","addClass","document","activeElement","focus","attr","hideModal","e","key","enableBodyScroll","hide","removeClass","$events","on",":js-quick-capture","click","preventDefault",":js-modal-close",":js-modal","target","this","keydown","keyCode","shiftKey","addEventListener","selectIndex","value","selectOption","children","innerHTML","event","window","dataLayer","push","formId","data","replaceWith","errors","hasOwnProperty","messages","errorsList","createElement","messageIndex","length","message","listItem","appendChild","createTextNode","inputList","querySelectorAll","inputIndex","input","after","setTimeout","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","t","exports","apply","undefined","module","i","Array","isArray","o","from","Object","defineProperty","l","passive","removeEventListener","d","u","some","options","allowTouchMove","c","touches","m","body","style","paddingRight","f","overflow","a","navigator","platform","test","maxTouchPoints","s","v","console","error","targetElement","concat","ontouchstart","targetTouches","clientY","ontouchmove","n","scrollTop","scrollHeight","clientHeight","stopPropagation","reserveScrollBarGap","innerWidth","documentElement","clientWidth","clearAllBodyScrollLocks","forEach","filter"],"mappings":"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","file":"quick-capture.bundle.3d3c99de.js","sourcesContent":["import { RouteHandler } from 'wee-routes';\nimport $events from 'wee-events';\nimport $ from 'wee-dom';\nimport { disableBodyScroll, enableBodyScroll } from 'body-scroll-lock';\n\nexport default new RouteHandler({\n init() {\n const $formSelect = $('.js-select');\n const $quickCaptureButton = $(':js-quick-capture');\n const $quickCaptureModal = $(':js-modal');\n const $quickCaptureClose = $(':js-modal-close');\n const $quickCaptureForm = $('.quick-capture-form');\n const $formContainer = $(':form-container');\n const $formInputs = $('.quick-capture-form__input');\n const $lastFocusableElement = $('.quick-capture-form__submit');\n const $modalTitle = $(':js-modal-title');\n const $body = $(':body');\n let activeEl = null;\n let popupTimeout = '';\n let dropdownOption = '';\n\n const stopTimeout = () => {\n clearTimeout(popupTimeout);\n };\n\n const showModal = () => {\n disableBodyScroll($body);\n stopTimeout();\n $quickCaptureModal.show();\n $quickCaptureModal.addClass('-open');\n activeEl = document.activeElement;\n $formInputs[0].focus();\n $quickCaptureForm.attr('aria-hidden', 'false');\n };\n\n // Toggle pop-up\n const triggerTimeout = () => {\n if ($quickCaptureButton.attr('data-toggle')) {\n popupTimeout = window.setTimeout(() => { showModal(); }, 45000);\n }\n };\n\n const hideModal = (e) => {\n if (e && e.key === 'Escape') {\n activeEl.focus();\n }\n enableBodyScroll($body);\n $quickCaptureModal.hide();\n $quickCaptureModal.removeClass('-open');\n $quickCaptureForm.attr('aria-hidden', 'true');\n };\n\n $events.on({\n ':js-quick-capture': {\n click(e) {\n e.preventDefault();\n showModal();\n },\n },\n ':js-modal-close': {\n click() {\n hideModal();\n },\n },\n ':js-modal': {\n click(e) {\n if (e.target !== this) return;\n hideModal();\n },\n keydown(e) {\n if (e.keyCode === 27) {\n hideModal(e);\n }\n if (e.shiftKey && e.keyCode === 9) {\n if (document.activeElement === $quickCaptureClose[0]) {\n $lastFocusableElement[0].focus();\n e.preventDefault();\n }\n } else if (e.keyCode === 9) {\n if (document.activeElement === $lastFocusableElement[0]) {\n $quickCaptureClose[0].focus();\n e.preventDefault();\n }\n }\n },\n },\n });\n\n // Custom form events - Ajax submission\n $quickCaptureForm[0].addEventListener('submit', () => {\n // Capture dropdown selection for GTM\n const selectIndex = ($formSelect[0].value);\n const selectOption = $formSelect.children('option')[selectIndex];\n dropdownOption = selectOption.innerHTML;\n });\n\n $quickCaptureForm[0].addEventListener('freeform-render-success', (event) => {\n // Custom GTM event to account for Ajax submission\n if (window.dataLayer) {\n window.dataLayer = window.dataLayer || [];\n window.dataLayer.push({\n event: 'quickCaptureSubmissionSuccess',\n formId: 'quickCaptureForm',\n data: dropdownOption,\n });\n }\n event.preventDefault();\n $formContainer.hide();\n $quickCaptureModal.addClass('-success');\n $modalTitle.replaceWith('

Thank you for your interest in Bethel!

Someone will be in touch with you soon.

');\n });\n\n $quickCaptureForm[0].addEventListener('freeform-render-field-errors', (event) => {\n event.preventDefault();\n\n const { errors } = event;\n // eslint-disable-next-line no-restricted-syntax\n for (const key in errors) {\n // eslint-disable-next-line no-prototype-builtins\n if (!errors.hasOwnProperty(key) || !key) {\n // eslint-disable-next-line no-continue\n continue;\n }\n\n const messages = errors[key];\n const errorsList = document.createElement('ul');\n $(errorsList).addClass('errors');\n\n for (let messageIndex = 0; messageIndex < messages.length; messageIndex++) {\n const message = messages[messageIndex];\n const listItem = document.createElement('li');\n listItem.appendChild(document.createTextNode(message));\n errorsList.appendChild(listItem);\n }\n\n const inputList = $quickCaptureForm[0].querySelectorAll('*[name=' + key + \"], *[name='\" + key + \"[]']\");\n for (let inputIndex = 0; inputIndex < inputList.length; inputIndex++) {\n const input = inputList[inputIndex];\n $(input).addClass('this-field-has-errors');\n $(input).after($(errorsList));\n }\n }\n });\n\n $quickCaptureForm[0].addEventListener('freeform-ajax-after-submit', () => {\n stopTimeout();\n });\n\n triggerTimeout();\n },\n});\n","!function(e,t){if(\"function\"==typeof define&&define.amd)define([\"exports\"],t);else if(\"undefined\"!=typeof exports)t(exports);else{var o={};t(o),e.bodyScrollLock=o}}(this,function(exports){\"use strict\";function i(e){if(Array.isArray(e)){for(var t=0,o=Array(e.length);t