{"version":3,"file":"conversational.js","mappings":"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","sources":["webpack://app_custom_basicfit/./cartridges/app_custom_basicfit/cartridge/client/default/js/util.js","webpack://app_custom_basicfit/./node_modules/get-youtube-id/index.js","webpack://app_custom_basicfit/./node_modules/tingle.js/dist/tingle.min.js","webpack://app_custom_basicfit/webpack/bootstrap","webpack://app_custom_basicfit/webpack/runtime/compat get default export","webpack://app_custom_basicfit/webpack/runtime/define property getters","webpack://app_custom_basicfit/webpack/runtime/hasOwnProperty shorthand","webpack://app_custom_basicfit/webpack/runtime/make namespace object","webpack://app_custom_basicfit/./cartridges/app_custom_basicfit/cartridge/client/default/js/conversational.js"],"sourcesContent":["\nimport tingle from 'tingle.js';\nimport getYouTubeID from 'get-youtube-id';\nexport const smallDesktopMin = 1025;\nexport const mobileViewMax = 767;\nexport const tabletViewMin = 901;\nexport const tabletViewMax = 1024;\n\nfunction processInclude(include) {\n if (typeof include === 'function') {\n include();\n } else if (typeof include === 'object') {\n Object.keys(include).forEach((key) => {\n if (typeof include[key] === 'function') {\n include[key]();\n }\n });\n }\n}\n\n// Format name for ecommerce\nfunction formatName(product) {\n if (product.category === 'subscription') {\n product.name = `basic-fit ${product.name.toLowerCase()}`;\n } else {\n product.name = product.name.toLowerCase();\n }\n return product;\n}\n\nfunction getScreenSizeType() {\n const innerWidth = window.innerWidth;\n\n if (innerWidth <= mobileViewMax) {\n return ['mobile-pt'];\n } else if (innerWidth > mobileViewMax && innerWidth <= 900) {\n return ['mobile-ls', 'tablet-pt'];\n } else if (innerWidth > 900 && innerWidth <= tabletViewMax) {\n return ['tablet-ls'];\n } else if (innerWidth > tabletViewMax) {\n return ['desktop'];\n }\n}\n\n// Better in terms of modularity than getScreenSizeType()\nfunction getScreenSize(mediaQuery) {\n return window.matchMedia(mediaQuery).matches;\n}\n\n// Check if element is in viewport\n\nfunction isElementInViewport(element) {\n const rect = document.querySelector(element).getBoundingClientRect();\n const windowHeight = (window.innerHeight || document.documentElement.clientHeight);\n const windowWidth = (window.innerWidth || document.documentElement.clientWidth);\n const vertInView = (rect.top < windowHeight) && ((rect.top + rect.height) > 0);\n const horInView = (rect.left < windowWidth) && ((rect.left + rect.width) > 0);\n\n return (vertInView && horInView);\n}\n\nfunction isDOMElementInViewport(element) {\n const bounding = element.getBoundingClientRect();\n const windowHeight = (window.innerHeight || document.documentElement.clientHeight);\n const windowWidth = (window.innerWidth || document.documentElement.clientWidth);\n const vertInView = (bounding.top < windowHeight) && ((bounding.top + bounding.height) > 0);\n const horInView = (bounding.left < windowWidth) && ((bounding.left + bounding.width) > 0);\n\n return (vertInView && horInView);\n}\n\nfunction addClassWhenInViewport(element, className) {\n const $element = document.querySelector(element);\n\n if (document.querySelector(element)) {\n if (isElementInViewport(element)) {\n $element.classList.add(className);\n } else {\n $element.classList.remove(className);\n }\n }\n}\n\n/**\n* Prevents body scroll in a way that IOS accepts it as well\n* styles need to be written inline to work properly\n* the added class is for adressing nesting inheritance\n*/\n\nlet currentPageScrollPosition = 0;\n\nfunction scrollLock(onoff) {\n const $body = document.querySelector('body');\n\n if (onoff === 'on') {\n currentPageScrollPosition = window.scrollY;\n $body.classList.add('scroll-lock');\n $body.style.overflow = 'hidden';\n $body.style.position = 'fixed';\n $body.style.top = `-${currentPageScrollPosition}px`;\n $body.style.width = '100%';\n } else if (onoff === 'off') {\n $body.classList.remove('scroll-lock');\n $body.style.removeProperty('overflow');\n $body.style.removeProperty('position');\n $body.style.removeProperty('top');\n $body.style.removeProperty('width');\n window.scrollTo(0, currentPageScrollPosition);\n }\n}\n\n/**\n * Create an alert to display the error message\n * @param {Object} message - Error message to display\n */\nfunction createErrorNotification(message) {\n const errorHtml =\n `<div class=\"alert alert-danger alert-dismissible valid-cart-error fade show\" role=\"alert\">\n <button type=\"button\" class=\"close\" data-dismiss=\"alert\" aria-label=\"Close\">\n <span aria-hidden=\"true\">×</span>\n </button>\n ${message}\n </div>`;\n\n $('.error-messaging').append(errorHtml);\n}\n\nfunction appendToUrl(url, params) {\n let newUrl = url;\n\n if (params) {\n newUrl += (newUrl.indexOf('?') !== -1 ? '&' : '?') + Object.keys(params).map((key) => `${key}=${encodeURIComponent(params[key])}`).join('&');\n }\n\n return newUrl;\n}\n\nfunction openVideoInModal(videoUrl) {\n const videoId = getYouTubeID(videoUrl);\n\n const iframeVimeo = `<iframe width=\"100%\" height=\"400\" src=\"https://www.youtube.com/embed/${videoId}?rel=0&showinfo=0&controls=1&autoplay=1\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen></iframe>`;\n\n const videoInModal = new tingle.modal({\n cssClass: ['modal-wrapper', 'modal-wrapper--video'],\n closeLabel: '',\n onClose() {\n this.destroy();\n },\n });\n\n videoInModal.setContent(iframeVimeo);\n videoInModal.open();\n}\n\nfunction scrollToAnchor(anchor, params = {}) {\n const defaultOptions = {\n headerElemHeight: params.headerElemHeight || 0,\n extraMargin: params.extraMargin || 0,\n duration: params.duration || 400,\n };\n const { headerElemHeight, extraMargin, duration } = defaultOptions;\n const scrollPos = parseInt($(anchor).offset().top - headerElemHeight - extraMargin);\n\n $('html, body').animate({\n scrollTop: scrollPos,\n }, duration);\n}\n\nfunction setEqualHeights (arrayItems, count) {\n if(arrayItems !== undefined && arrayItems.length > 0) {\n arrayItems.height('');\n\n var maxH = 0;\n\n if(count) {\n var arrays = [];\n while(arrayItems.length > 0) {\n arrays.push(arrayItems.splice(0, count));\n }\n\n for(var i = 0; i < arrays.length; i += 1) {\n var data = arrays[i];\n maxH = 0;\n for(var j = 0; j < data.length; j += 1) {\n var currentH = $(data[j]).outerHeight();\n if(currentH > maxH) {\n maxH = currentH;\n }\n }\n\n for(var k = 0; k < data.length; k += 1) {\n $(data[k]).css('height', maxH);\n }\n }\n } else {\n arrayItems.each(function() {\n var currentH2 = $(this).outerHeight();\n if(currentH2 > maxH) {\n maxH = currentH2;\n }\n });\n\n arrayItems.css('height', maxH);\n }\n }\n}\n\nfunction fontSizeReduced() {\n var pages = document.querySelectorAll('.page');\n var titleContainer = document.querySelector('.js-text-col');\n var fontReduceComponent = document.querySelectorAll('.js-font-component');\n\n pages.forEach((page) => {\n fontReduceComponent.forEach((component) => {\n if(component.offsetWidth > page.offsetWidth || component.offsetWidth > titleContainer.offsetWidth) {\n component.classList.add('font-smaller');\n }\n });\n });\n}\n\nfunction checkForContent(elements) {\n elements.forEach(function (item) {\n if(!item.hasChildNodes()) {\n item.remove();\n }\n });\n}\n\n/**\n * Checks if the email value entered is correct format\n * @param {string} email - email string to check if valid\n * @returns {boolean} Whether email is valid\n */\nfunction validateEmail(email) {\n var regex = /^[\\w.%+-]+@[\\w.-]+\\.[\\w]{2,6}$/;\n return regex.test(email);\n}\n\nfunction calculateTitleHeight() {\n const innerWidth = window.innerWidth;\n var heroBannerTitle = document.querySelector('.js-main-title-hero-wrapper');\n var heroBannerImg = document.querySelector('.js-hero-wrapper-content-img');\n\n if (heroBannerImg) {\n if (innerWidth < smallDesktopMin) {\n heroBannerImg.style.marginTop = heroBannerTitle.offsetHeight + 30 + 'px';\n }\n heroBannerImg.style.display = 'block';\n heroBannerImg.style.opacity = 1;\n } else {\n return;\n }\n}\n\nfunction openTabs(tabSelector, tabContentSelector) {\n const tab = tabSelector;\n const tabContent = tabContentSelector;\n\n function removeActive() {\n tab.forEach(function(element) {\n element.classList.remove('active');\n });\n\n tabContent.forEach(function(element) {\n element.style.display = 'none';\n });\n }\n\n tab.forEach(function(element) {\n element.addEventListener('click', function(e) {\n removeActive();\n\n let current = e.currentTarget;\n let currentID = e.currentTarget.getAttribute('data-id');\n let tabContent = document.getElementById(currentID);\n\n current.classList.add('active');\n tabContent.style.display = 'block';\n });\n });\n}\n\n//requires to define two hidden input fields that contains text for buttons\nfunction readMoreButton(content, arrayItems, btnText, btnLessText, btnClassName, num, readLess) {\n var readMoreBtn = document.createElement('button');\n\n readMoreBtn.innerHTML = btnText.value;\n readMoreBtn.classList.add(btnClassName);\n\n //elements that needs to be hidden\n arrayItems.forEach((item, index) => {\n //from which element to show read more button\n if(index > num) {\n item.classList.add('hidden');\n\n //where to append btn\n content.appendChild(readMoreBtn);\n\n //logic for read more/less button\n readMoreBtn.addEventListener('click', function() {\n if(!readLess) {\n item.classList.remove('hidden');\n this.style.display = 'none';\n } else {\n item.classList.toggle('hidden');\n }\n\n //changing text of the button\n if(item.classList.contains('hidden')) {\n this.innerHTML = btnText.value;\n } else {\n this.innerHTML = btnLessText.value;\n }\n });\n }\n });\n}\n\nfunction imageResizeiOSFix() {\n const $img = $('.js-hero-wrapper-content-img img');\n if ($img) {\n $img.addClass('resize-fix');\n }\n}\n\nfunction backToTop(element) {\n const $backToTop = element;\n\n $(window).on('scroll', function() {\n var $scrollPos = window.pageYOffset;\n\n // 100 = one scroll\n if ($scrollPos > 100) {\n $backToTop.addClass('show');\n } else {\n $backToTop.removeClass('show');\n }\n });\n\n $backToTop.on('click', function(e) {\n e.preventDefault();\n\n $('html, body').animate({\n scrollTop: 0\n }, 500);\n });\n}\n\nfunction customStickyPosition(stickyElement, elementOne, elementTwo, elementThree) {\n let stickyEl = stickyElement;\n let offSetOne = 0;\n let offSetTwo = 0;\n let offSetThree = 0;\n\n if(elementOne) {\n offSetOne += elementOne.offsetHeight;\n }\n\n if(elementTwo) {\n offSetTwo += elementTwo.offsetHeight;\n }\n\n if(elementThree) {\n offSetThree += elementThree.offsetHeight;\n }\n\n stickyEl.style.top = offSetOne + offSetTwo + offSetThree + 'px';\n}\n\nfunction dynamicCountdown() {\n $('.js-promotion-text').each(function() {\n //get minutes from each promotion\n let timeLeftSeconds = parseFloat($(this).text(), 10) * 60;\n\n let self = $(this);\n\n var timer = setInterval(function(){\n //get hours\n let hours = Math.floor(timeLeftSeconds / 3600);\n //get minutes\n let minutes = Math.floor((timeLeftSeconds - (hours * 3600)) / 60);\n //get seconds\n let seconds = timeLeftSeconds - (hours * 3600) - (minutes * 60);\n\n hours < 10 ? hours = '0' + hours : '';\n minutes < 10 ? minutes = '0' + minutes : '';\n seconds < 10 ? seconds = '0' + seconds : '';\n\n let remainingTime = hours + ':' + minutes + ':' + seconds;\n\n if(timeLeftSeconds <= 0){\n clearInterval(timer);\n }\n\n //when string concatenate pump text\n if (remainingTime) {\n //set remaining time to each label\n self.text(remainingTime);\n if(!$(\".discount-label__promotion\").hasClass(\"js-loaded\")) {\n $('.discount-label__promotion').addClass('js-loaded');\n $.spinner().stop();\n }\n }\n\n timeLeftSeconds -= 1;\n }, 1000);\n });\n}\n\n/**\n * @description Should be done before slider init to remove slides so we can use different number of slider assets per locale, for non sliders it should alse be removed at the beginning.\n * @param {jQuery} $Selector - selector of element that has childred to hide\n * @param {string} parentToRemoveSelector - selector of parent element that should be removed.\n */\nfunction removeHiddenAssets($Selector, parentToRemoveSelector) {\n if ($Selector.find('.js-remove-element')) {\n $Selector.find('.js-remove-element').closest(parentToRemoveSelector).remove();\n }\n}\n\nexport {\n processInclude,\n getScreenSizeType,\n isElementInViewport,\n isDOMElementInViewport,\n addClassWhenInViewport,\n appendToUrl,\n createErrorNotification,\n getScreenSize,\n openVideoInModal,\n scrollToAnchor,\n formatName,\n setEqualHeights,\n fontSizeReduced,\n calculateTitleHeight,\n validateEmail,\n openTabs,\n readMoreButton,\n checkForContent,\n backToTop,\n imageResizeiOSFix,\n customStickyPosition,\n dynamicCountdown,\n scrollLock,\n removeHiddenAssets,\n};\n","\n(function (root, factory) {\n if (typeof exports === 'object') {\n module.exports = factory();\n } else if (typeof define === 'function' && define.amd) {\n define(factory);\n } else {\n root.getYouTubeID = factory();\n }\n}(this, function (exports) {\n\n return function (url, opts) {\n if (opts == undefined) {\n opts = {fuzzy: true};\n }\n\n if (/youtu\\.?be/.test(url)) {\n\n // Look first for known patterns\n var i;\n var patterns = [\n /youtu\\.be\\/([^#\\&\\?]{11})/, // youtu.be/<id>\n /\\?v=([^#\\&\\?]{11})/, // ?v=<id>\n /\\&v=([^#\\&\\?]{11})/, // &v=<id>\n /embed\\/([^#\\&\\?]{11})/, // embed/<id>\n /\\/v\\/([^#\\&\\?]{11})/ // /v/<id>\n ];\n\n // If any pattern matches, return the ID\n for (i = 0; i < patterns.length; ++i) {\n if (patterns[i].test(url)) {\n return patterns[i].exec(url)[1];\n }\n }\n\n if (opts.fuzzy) {\n // If that fails, break it apart by certain characters and look \n // for the 11 character key\n var tokens = url.split(/[\\/\\&\\?=#\\.\\s]/g);\n for (i = 0; i < tokens.length; ++i) {\n if (/^[^#\\&\\?]{11}$/.test(tokens[i])) {\n return tokens[i];\n }\n }\n }\n }\n\n return null;\n };\n\n}));\n","!function(t,o){\"function\"==typeof define&&define.amd?define(o):\"object\"==typeof exports?module.exports=o():t.tingle=o()}(this,function(){var o=!1;function t(t){this.opts=function(){for(var t=1;t<arguments.length;t++)for(var o in arguments[t])arguments[t].hasOwnProperty(o)&&(arguments[0][o]=arguments[t][o]);return arguments[0]}({},{onClose:null,onOpen:null,beforeOpen:null,beforeClose:null,stickyFooter:!1,footer:!1,cssClass:[],closeLabel:\"Close\",closeMethods:[\"overlay\",\"button\",\"escape\"]},t),this.init()}function e(){this.modalBoxFooter&&(this.modalBoxFooter.style.width=this.modalBox.clientWidth+\"px\",this.modalBoxFooter.style.left=this.modalBox.offsetLeft+\"px\")}return t.prototype.init=function(){if(!this.modal)return function(){this.modal=document.createElement(\"div\"),this.modal.classList.add(\"tingle-modal\"),0!==this.opts.closeMethods.length&&-1!==this.opts.closeMethods.indexOf(\"overlay\")||this.modal.classList.add(\"tingle-modal--noOverlayClose\");this.modal.style.display=\"none\",this.opts.cssClass.forEach(function(t){\"string\"==typeof t&&this.modal.classList.add(t)},this),-1!==this.opts.closeMethods.indexOf(\"button\")&&(this.modalCloseBtn=document.createElement(\"button\"),this.modalCloseBtn.type=\"button\",this.modalCloseBtn.classList.add(\"tingle-modal__close\"),this.modalCloseBtnIcon=document.createElement(\"span\"),this.modalCloseBtnIcon.classList.add(\"tingle-modal__closeIcon\"),this.modalCloseBtnIcon.innerHTML='<svg viewBox=\"0 0 10 10\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M.3 9.7c.2.2.4.3.7.3.3 0 .5-.1.7-.3L5 6.4l3.3 3.3c.2.2.5.3.7.3.2 0 .5-.1.7-.3.4-.4.4-1 0-1.4L6.4 5l3.3-3.3c.4-.4.4-1 0-1.4-.4-.4-1-.4-1.4 0L5 3.6 1.7.3C1.3-.1.7-.1.3.3c-.4.4-.4 1 0 1.4L3.6 5 .3 8.3c-.4.4-.4 1 0 1.4z\" fill=\"#000\" fill-rule=\"nonzero\"/></svg>',this.modalCloseBtnLabel=document.createElement(\"span\"),this.modalCloseBtnLabel.classList.add(\"tingle-modal__closeLabel\"),this.modalCloseBtnLabel.innerHTML=this.opts.closeLabel,this.modalCloseBtn.appendChild(this.modalCloseBtnIcon),this.modalCloseBtn.appendChild(this.modalCloseBtnLabel));this.modalBox=document.createElement(\"div\"),this.modalBox.classList.add(\"tingle-modal-box\"),this.modalBoxContent=document.createElement(\"div\"),this.modalBoxContent.classList.add(\"tingle-modal-box__content\"),this.modalBox.appendChild(this.modalBoxContent),-1!==this.opts.closeMethods.indexOf(\"button\")&&this.modal.appendChild(this.modalCloseBtn);this.modal.appendChild(this.modalBox)}.call(this),function(){this._events={clickCloseBtn:this.close.bind(this),clickOverlay:function(t){var o=this.modal.offsetWidth-this.modal.clientWidth,e=t.clientX>=this.modal.offsetWidth-15,s=this.modal.scrollHeight!==this.modal.offsetHeight;if(\"MacIntel\"===navigator.platform&&0==o&&e&&s)return;-1!==this.opts.closeMethods.indexOf(\"overlay\")&&!function(t,o){for(;(t=t.parentElement)&&!t.classList.contains(o););return t}(t.target,\"tingle-modal\")&&t.clientX<this.modal.clientWidth&&this.close()}.bind(this),resize:this.checkOverflow.bind(this),keyboardNav:function(t){-1!==this.opts.closeMethods.indexOf(\"escape\")&&27===t.which&&this.isOpen()&&this.close()}.bind(this)},-1!==this.opts.closeMethods.indexOf(\"button\")&&this.modalCloseBtn.addEventListener(\"click\",this._events.clickCloseBtn);this.modal.addEventListener(\"mousedown\",this._events.clickOverlay),window.addEventListener(\"resize\",this._events.resize),document.addEventListener(\"keydown\",this._events.keyboardNav)}.call(this),document.body.appendChild(this.modal,document.body.firstChild),this.opts.footer&&this.addFooter(),this},t.prototype._busy=function(t){o=t},t.prototype._isBusy=function(){return o},t.prototype.destroy=function(){null!==this.modal&&(this.isOpen()&&this.close(!0),function(){-1!==this.opts.closeMethods.indexOf(\"button\")&&this.modalCloseBtn.removeEventListener(\"click\",this._events.clickCloseBtn);this.modal.removeEventListener(\"mousedown\",this._events.clickOverlay),window.removeEventListener(\"resize\",this._events.resize),document.removeEventListener(\"keydown\",this._events.keyboardNav)}.call(this),this.modal.parentNode.removeChild(this.modal),this.modal=null)},t.prototype.isOpen=function(){return!!this.modal.classList.contains(\"tingle-modal--visible\")},t.prototype.open=function(){if(!this._isBusy()){this._busy(!0);var t=this;return\"function\"==typeof t.opts.beforeOpen&&t.opts.beforeOpen(),this.modal.style.removeProperty?this.modal.style.removeProperty(\"display\"):this.modal.style.removeAttribute(\"display\"),this._scrollPosition=window.pageYOffset,document.body.classList.add(\"tingle-enabled\"),document.body.style.top=-this._scrollPosition+\"px\",this.setStickyFooter(this.opts.stickyFooter),this.modal.classList.add(\"tingle-modal--visible\"),\"function\"==typeof t.opts.onOpen&&t.opts.onOpen.call(t),t._busy(!1),this.checkOverflow(),this}},t.prototype.close=function(t){if(!this._isBusy()){if(this._busy(!0),!1,\"function\"==typeof this.opts.beforeClose)if(!this.opts.beforeClose.call(this))return void this._busy(!1);document.body.classList.remove(\"tingle-enabled\"),document.body.style.top=null,window.scrollTo({top:this._scrollPosition,behavior:\"instant\"}),this.modal.classList.remove(\"tingle-modal--visible\");var o=this;o.modal.style.display=\"none\",\"function\"==typeof o.opts.onClose&&o.opts.onClose.call(this),o._busy(!1)}},t.prototype.setContent=function(t){return\"string\"==typeof t?this.modalBoxContent.innerHTML=t:(this.modalBoxContent.innerHTML=\"\",this.modalBoxContent.appendChild(t)),this.isOpen()&&this.checkOverflow(),this},t.prototype.getContent=function(){return this.modalBoxContent},t.prototype.addFooter=function(){return function(){this.modalBoxFooter=document.createElement(\"div\"),this.modalBoxFooter.classList.add(\"tingle-modal-box__footer\"),this.modalBox.appendChild(this.modalBoxFooter)}.call(this),this},t.prototype.setFooterContent=function(t){return this.modalBoxFooter.innerHTML=t,this},t.prototype.getFooterContent=function(){return this.modalBoxFooter},t.prototype.setStickyFooter=function(t){return this.isOverflow()||(t=!1),t?this.modalBox.contains(this.modalBoxFooter)&&(this.modalBox.removeChild(this.modalBoxFooter),this.modal.appendChild(this.modalBoxFooter),this.modalBoxFooter.classList.add(\"tingle-modal-box__footer--sticky\"),e.call(this),this.modalBoxContent.style[\"padding-bottom\"]=this.modalBoxFooter.clientHeight+20+\"px\"):this.modalBoxFooter&&(this.modalBox.contains(this.modalBoxFooter)||(this.modal.removeChild(this.modalBoxFooter),this.modalBox.appendChild(this.modalBoxFooter),this.modalBoxFooter.style.width=\"auto\",this.modalBoxFooter.style.left=\"\",this.modalBoxContent.style[\"padding-bottom\"]=\"\",this.modalBoxFooter.classList.remove(\"tingle-modal-box__footer--sticky\"))),this},t.prototype.addFooterBtn=function(t,o,e){var s=document.createElement(\"button\");return s.innerHTML=t,s.addEventListener(\"click\",e),\"string\"==typeof o&&o.length&&o.split(\" \").forEach(function(t){s.classList.add(t)}),this.modalBoxFooter.appendChild(s),s},t.prototype.resize=function(){console.warn(\"Resize is deprecated and will be removed in version 1.0\")},t.prototype.isOverflow=function(){return window.innerHeight<=this.modalBox.clientHeight},t.prototype.checkOverflow=function(){this.modal.classList.contains(\"tingle-modal--visible\")&&(this.isOverflow()?this.modal.classList.add(\"tingle-modal--overflow\"):this.modal.classList.remove(\"tingle-modal--overflow\"),!this.isOverflow()&&this.opts.stickyFooter?this.setStickyFooter(!1):this.isOverflow()&&this.opts.stickyFooter&&(e.call(this),this.setStickyFooter(!0)))},{modal:t}});","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { mobileViewMax } from './util';\n\nconst windowWidth = window.innerWidth;\nconst descriptionMarginHandler = (() => {\n if (windowWidth < mobileViewMax) {\n const faqHeaderImage = document.querySelector('.js-faq-header__image');\n const faqHeaderDescription = document.querySelector('.faq-header--mobile .js-faq-header__description');\n faqHeaderDescription.style.marginTop = `${faqHeaderImage.offsetHeight}px`;\n }\n});\n\n// init the FAQ\nconst initChatFaq = (() => {\n const locale = $('.conversational-wrapper').data('locale');\n window.seamly = window.seamly || [];\n window.seamly.push({\n action: 'init',\n args: {\n parentElement: document.querySelector('.conversational-wrapper .conversational-placeholder'),\n layoutMode: 'window',\n defaults: {\n visible: 'minimized',\n },\n locale,\n },\n });\n})();\n\n// init the chat\nconst initAccordionFaq = (() => {\n let locale = $('.conversational-wrapper').data('locale');\n window.seamlyFaqTree = window.seamlyFaqTree || [];\n\n const usedLanguage = locale.split('-')[0].trim().toLowerCase();\n\n // if usedLanguage is 'en' script requires 'en-en' as locale\n if (usedLanguage === 'en') {\n locale = 'en-en';\n }\n\n window.seamlyFaqTree.push({\n action: 'init',\n args: {\n parentElement: document.querySelector('.seamly-faq-placeholder'),\n locale,\n },\n });\n})();\n\n// pushing messages Seamly needs directly to them\nconst liveChatEvent = (name, message) => {\n window.seamly.push({\n action: 'setTopic',\n args: {\n name,\n fallbackMessage: message,\n },\n });\n};\n\n// trigger for buttons that need to open the chat window from outside\nconst openChatWindow = () => {\n window.seamly.push({\n action: 'setVisibility',\n args: 'open',\n });\n};\n\n// bind buttons\ndocument.buttonSendMessage = () => {\n openChatWindow();\n\n window.seamly = window.seamly || [];\n const locale = $('.conversational-wrapper').data('locale');\n const usedLanguage = locale.split('-')[0].trim().toUpperCase();\n const name = 'Click_email_button';\n let message = '';\n switch (usedLanguage) {\n case 'NL':\n message = 'Hi, ik ben Ruby! wat kan ik voor je doen';\n liveChatEvent(name, message);\n break;\n case 'FR':\n message = \"Bonjour, je suis Ruby. le chatbot de Basic-Fit. je peux t'aider pour quelque chose?\";\n liveChatEvent(name, message);\n break;\n case 'ES':\n message = 'Hola, soy Ruby. En qué puedo ayudarte?';\n liveChatEvent(name, message);\n break;\n case 'DE':\n message = 'Hallo, ich bin Ruby! Bevor ich Ihnen besser helfen kann, habe ich eine Frage?';\n liveChatEvent(name, message);\n break;\n default:\n message = \"Hi, I'm Ruby! what can I do for you\";\n liveChatEvent(name, message);\n break;\n }\n};\n\ndocument.buttonLiveChat = () => {\n openChatWindow();\n\n window.seamly = window.seamly || [];\n const locale = $('.conversational-wrapper').data('locale');\n const usedLanguage = locale.split('-')[0].trim().toUpperCase();\n let name = '';\n let message = '';\n switch (usedLanguage) {\n case 'NL':\n name = 'Click_livechat_button';\n message = 'Hi, ik ben Ruby! wat kan ik voor je doen';\n liveChatEvent(name, message);\n break;\n case 'FR':\n name = 'Start_Je_veux_discuter_';\n message = \"Bonjour, je suis Ruby. le chatbot de Basic-Fit. je peux t'aider pour quelque chose?\";\n liveChatEvent(name, message);\n break;\n case 'ES':\n name = 'Click_quiero_chatear_button';\n message = 'Hola, soy Ruby. En qué puedo ayudarte?';\n liveChatEvent(name, message);\n break;\n case 'DE':\n name = 'Click_livechat_button';\n message = 'Hallo, ich bin Ruby! Bevor ich Ihnen besser helfen kann, habe ich eine Frage?';\n liveChatEvent(name, message);\n break;\n default:\n name = 'Click_livechat_button';\n message = \"Hi, I'm Ruby! what can I do for you\";\n liveChatEvent(name, message);\n break;\n }\n};\n\n// see if we landed here with a question in the URL\nconst checkForQuestionInUrl = () => {\n const { hash } = window.location;\n\n if (hash.startsWith('#!question=')) {\n let urlQuestion = hash.split('#!question=')[1];\n\n // replace + with spaces\n urlQuestion = decodeURIComponent(urlQuestion).replace(/\\+/g, ' ');\n\n window.seamly.push({\n action: 'setVisibility',\n args: 'open',\n });\n\n window.seamly.push({\n action: 'askText',\n args: urlQuestion,\n });\n }\n};\n\n// moving the chat to a different position then the default injection spot (for sake of scrolling behavior)\nconst moveChatPosition = () => {\n const targetNode = document.body; // let's wait for that thing to be written/injected in here, and move it where we want it\n const observerConfig = { childList: true, subtree: true };\n\n const observer = new MutationObserver((mutations, obs) => {\n const chatPlaceholder = document.getElementById('seamly-placeholder');\n if (chatPlaceholder) {\n $('.main-content').append(chatPlaceholder);\n obs.disconnect();\n // after the move, let's see if we got here through a search\n checkForQuestionInUrl();\n }\n });\n\n observer.observe(targetNode, observerConfig);\n};\n\nexport default (() => {\n $(document).ready(() => {\n moveChatPosition();\n initChatFaq();\n initAccordionFaq();\n });\n $(window).on('resize', descriptionMarginHandler(windowWidth));\n})();\n"],"names":["tingle","getYouTubeID","smallDesktopMin","mobileViewMax","tabletViewMin","tabletViewMax","processInclude","include","Object","keys","forEach","key","formatName","product","category","name","toLowerCase","getScreenSizeType","innerWidth","window","getScreenSize","mediaQuery","matchMedia","matches","isElementInViewport","element","rect","document","querySelector","getBoundingClientRect","windowHeight","innerHeight","documentElement","clientHeight","windowWidth","clientWidth","vertInView","top","height","horInView","left","width","isDOMElementInViewport","bounding","addClassWhenInViewport","className","$element","classList","add","remove","currentPageScrollPosition","scrollLock","onoff","$body","scrollY","style","overflow","position","removeProperty","scrollTo","createErrorNotification","message","errorHtml","$","append","appendToUrl","url","params","newUrl","indexOf","map","encodeURIComponent","join","openVideoInModal","videoUrl","videoId","iframeVimeo","videoInModal","modal","cssClass","closeLabel","onClose","destroy","setContent","open","scrollToAnchor","anchor","defaultOptions","headerElemHeight","extraMargin","duration","scrollPos","parseInt","offset","animate","scrollTop","setEqualHeights","arrayItems","count","undefined","length","maxH","arrays","push","splice","i","data","j","currentH","outerHeight","k","css","each","currentH2","fontSizeReduced","pages","querySelectorAll","titleContainer","fontReduceComponent","page","component","offsetWidth","checkForContent","elements","item","hasChildNodes","validateEmail","email","regex","test","calculateTitleHeight","heroBannerTitle","heroBannerImg","marginTop","offsetHeight","display","opacity","openTabs","tabSelector","tabContentSelector","tab","tabContent","removeActive","addEventListener","e","current","currentTarget","currentID","getAttribute","getElementById","readMoreButton","content","btnText","btnLessText","btnClassName","num","readLess","readMoreBtn","createElement","innerHTML","value","index","appendChild","toggle","contains","imageResizeiOSFix","$img","addClass","backToTop","$backToTop","on","$scrollPos","pageYOffset","removeClass","preventDefault","customStickyPosition","stickyElement","elementOne","elementTwo","elementThree","stickyEl","offSetOne","offSetTwo","offSetThree","dynamicCountdown","timeLeftSeconds","parseFloat","text","self","timer","setInterval","hours","Math","floor","minutes","seconds","remainingTime","clearInterval","hasClass","spinner","stop","removeHiddenAssets","$Selector","parentToRemoveSelector","find","closest","descriptionMarginHandler","faqHeaderImage","faqHeaderDescription","initChatFaq","locale","seamly","action","args","parentElement","layoutMode","defaults","visible","initAccordionFaq","seamlyFaqTree","usedLanguage","split","trim","liveChatEvent","fallbackMessage","openChatWindow","buttonSendMessage","toUpperCase","buttonLiveChat","checkForQuestionInUrl","hash","location","startsWith","urlQuestion","decodeURIComponent","replace","moveChatPosition","targetNode","body","observerConfig","childList","subtree","observer","MutationObserver","mutations","obs","chatPlaceholder","disconnect","observe","ready"],"sourceRoot":""}