{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./cartridges/app_custom_basicfit/cartridge/client/default/js/components/loader.js","webpack:///./cartridges/app_custom_basicfit/cartridge/client/default/js/gtm/gtmParametersBuilder.js","webpack:///./cartridges/app_custom_basicfit/cartridge/client/default/js/leadGenClub.js","webpack:///./cartridges/app_custom_basicfit/cartridge/client/default/js/modals.js","webpack:///./cartridges/app_custom_basicfit/cartridge/client/default/js/util.js","webpack:///./node_modules/get-youtube-id/index.js","webpack:///./node_modules/tingle.js/dist/tingle.min.js"],"names":["addLoader","$target","each","setLoadingClass","$","hasClass","$tempDiv","join","append","addClass","removeLoader","$loader","length","removeClass","find","remove","fn","loader","loaderFn","$element","LoaderFn","start","stop","pageLoaderFn","PageLoaderFn","GtmParametersBuilder","gtmParameters","prototype","withEvent","value","event","withEventCategory","eventCategory","withEventAction","eventAction","withEventLabel","eventLabel","withEcommerce","ecommerce","withUser","user","withParameter","name","withPage","data","country","locale","split","toUpperCase","language","page","page_type","type","page_country","page_location","location","page_title","title","page_language","withTraffic","traffictype","platform","ip_address","ip","withError","error","build","module","exports","require","LeadGenClub","sendSubscriptionGtmEvent","emailHashed","storeName","window","dataLayer","user_hashed_email","push","initializeListeners","on","e","$button","currentTarget","$subscriptionWrapper","closest","$input","$checkbox","$emailValidationWrapper","$checkboxValidationWrapper","$formContent","$formContentPage","$responseContent","$subscriptionSuccessModal","$subscriptionModal","$subscriptionWinModal","$errorMsgs","requiredMessage","invalidMessage","invalidCheckboxMessage","url","accountID","email","val","isError","empty","hide","show","text","validateEmail","is","attr","handleContentAfterAjax","ajax","success","response","errorMessage","sessionStorage","setItem","modalTrigger","navigator","clipboard","writeText","setTimeout","initializeModalTriggers","init","modalAutoOpen","element","state","ani","bodyModalCLass","css","scrollLock","isInViewport","ele","top","bottom","getBoundingClientRect","vHeight","innerHeight","document","documentElement","clientHeight","getItem","timerFinished","time","parseInt","showModal","sub1","querySelector","sub2","modalsOpen","winModalSeen","addEventListener","modalPdAutoOpen","$daysLeft","defaulTimer","timeInput","isNaN","winPdModalSeen","smallDesktopMin","mobileViewMax","tabletViewMin","tabletViewMax","processInclude","include","Object","keys","forEach","key","formatName","product","category","toLowerCase","getScreenSizeType","innerWidth","getScreenSize","mediaQuery","matchMedia","matches","isElementInViewport","rect","windowHeight","windowWidth","clientWidth","vertInView","height","horInView","left","width","isDOMElementInViewport","bounding","addClassWhenInViewport","className","classList","add","currentPageScrollPosition","onoff","$body","scrollY","style","overflow","position","removeProperty","scrollTo","createErrorNotification","message","errorHtml","appendToUrl","params","newUrl","indexOf","map","encodeURIComponent","openVideoInModal","videoUrl","videoId","getYouTubeID","iframeVimeo","videoInModal","tingle","modal","cssClass","closeLabel","onClose","destroy","setContent","open","scrollToAnchor","anchor","defaultOptions","headerElemHeight","extraMargin","duration","scrollPos","offset","animate","scrollTop","setEqualHeights","arrayItems","count","undefined","maxH","arrays","splice","i","j","currentH","outerHeight","k","currentH2","fontSizeReduced","pages","querySelectorAll","titleContainer","fontReduceComponent","component","offsetWidth","checkForContent","elements","item","hasChildNodes","regex","test","calculateTitleHeight","heroBannerTitle","heroBannerImg","marginTop","offsetHeight","display","opacity","openTabs","tabSelector","tabContentSelector","tab","tabContent","removeActive","current","currentID","getAttribute","getElementById","readMoreButton","content","btnText","btnLessText","btnClassName","num","readLess","readMoreBtn","createElement","innerHTML","index","appendChild","toggle","contains","imageResizeiOSFix","$img","backToTop","$backToTop","$scrollPos","pageYOffset","preventDefault","customStickyPosition","stickyElement","elementOne","elementTwo","elementThree","stickyEl","offSetOne","offSetTwo","offSetThree","dynamicCountdown","timeLeftSeconds","parseFloat","self","timer","setInterval","hours","Math","floor","minutes","seconds","remainingTime","clearInterval","spinner","removeHiddenAssets","$Selector","parentToRemoveSelector"],"mappings":"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","file":"default/js/leadGenClub.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"./cartridges/app_custom_basicfit/cartridge/client/default/js/leadGenClub.js\");\n","/**\n * Show a loader inside a given element\n * @param {HTMLElement} $target - Element to add loader to. Pass body to block the whole page.\n */\nfunction addLoader($target) {\n $target.each(function setLoadingClass() {\n if ($(this).hasClass('loading')) return;\n\n const $tempDiv = [\n '
',\n '',\n '',\n '',\n '',\n '
',\n ].join('');\n\n $(this).append($tempDiv);\n $(this).addClass('loading');\n });\n}\n\n/**\n * Remove existing loader\n * @param {HTMLElement} $loader - jQuery pointer to the loader element\n */\nfunction removeLoader($loader) {\n if (!$loader.length && $('body').hasClass('loading')) {\n $('body').removeClass('loading');\n $('body').find('temp-loader').remove();\n return;\n }\n\n if ($loader.find('.temp-loader').length) {\n $loader.find('.temp-loader').remove();\n $loader.removeClass('loading');\n return;\n }\n}\n\n// element-level loader\n$.fn.loader = function loaderFn() {\n const $element = $(this);\n\n const LoaderFn = function LoaderFn() {\n this.start = function start() {\n if ($element.length) {\n addLoader($element);\n }\n };\n\n this.stop = function stop() {\n if ($element.length) {\n const $loader = $('.loading');\n removeLoader($loader);\n }\n };\n };\n\n return new LoaderFn();\n};\n\n// page-level loader\n$.loader = function pageLoaderFn() {\n const PageLoaderFn = function PageLoaderFn() {\n this.start = function start() {\n addLoader($('body'));\n };\n\n this.stop = function stop() {\n removeLoader($('.loading'));\n };\n };\n\n return new PageLoaderFn();\n};\n\n","/* eslint-disable func-names */\n/* eslint-disable no-var */\n/* eslint-disable strict */\n\n'use strict';\n\nfunction GtmParametersBuilder() {\n this.gtmParameters = {};\n}\n\nGtmParametersBuilder.prototype.withEvent = function (value) {\n this.gtmParameters.event = value;\n return this;\n};\n\nGtmParametersBuilder.prototype.withEventCategory = function (value) {\n this.gtmParameters.eventCategory = value;\n return this;\n};\n\nGtmParametersBuilder.prototype.withEventAction = function (value) {\n this.gtmParameters.eventAction = value;\n return this;\n};\n\nGtmParametersBuilder.prototype.withEventLabel = function (value) {\n this.gtmParameters.eventLabel = value;\n return this;\n};\n\nGtmParametersBuilder.prototype.withEcommerce = function (value) {\n this.gtmParameters.ecommerce = value;\n return this;\n};\n\nGtmParametersBuilder.prototype.withUser = function (value) {\n this.gtmParameters.user = value;\n return this;\n};\n\nGtmParametersBuilder.prototype.withParameter = function (name, value) {\n this.gtmParameters[name] = value;\n return this;\n};\n\nGtmParametersBuilder.prototype.withPage = function (data) {\n const country = data.locale.split('_')[1].toUpperCase();\n const language = data.locale.split('_')[0].toUpperCase();\n this.gtmParameters.page = {\n page_type: data.type,\n page_country: country,\n page_location: data.location,\n page_title: data.title,\n page_language: language,\n };\n return this;\n};\n\nGtmParametersBuilder.prototype.withTraffic = function (data) {\n this.gtmParameters.traffictype = {\n platform: 'web',\n ip_address: data.ip,\n };\n return this;\n};\n\nGtmParametersBuilder.prototype.withError = function (value) {\n this.gtmParameters.error = value;\n return this;\n};\n\nGtmParametersBuilder.prototype.build = function () {\n return this.gtmParameters;\n};\n\nmodule.exports = GtmParametersBuilder;\n","import { validateEmail } from './util';\nimport GtmParametersBuilder from './gtm/gtmParametersBuilder';\nimport { modalTrigger, modalAutoOpen } from './modals';\n\nrequire('./components/loader');\n\nconst LeadGenClub = (() => {\n /**\n * Sends a GTM event with the subscription data\n * @param {string} emailHashed - Hashed Email\n * @param {string} storeName - Store Name\n */\n const sendSubscriptionGtmEvent = (emailHashed, storeName) => {\n window.dataLayer = window.dataLayer || [];\n\n const event = new GtmParametersBuilder()\n .withEvent('generate_lead')\n .withParameter('method', 'email subscription')\n .withParameter('lead_category', 'upcoming club')\n .withParameter('item_brand', storeName)\n .withParameter('user', {\n user_hashed_email: emailHashed,\n })\n .build();\n\n window.dataLayer.push(event);\n };\n\n /**\n * Initializes the event listeners for the lead generation club page\n */\n const initializeListeners = () => {\n $('.js-lead-gen-subscription-button-1, .js-lead-gen-subscription-button-2, .js-lead-gen-subscription-button-modal').on('click', e => {\n const $button = $(e.currentTarget);\n const $subscriptionWrapper = $button.closest('.js-lead-gen-subscription-wrapper');\n const $input = $subscriptionWrapper.find('.js-lead-gen-subscription-input');\n const $checkbox = $subscriptionWrapper.find('.js-lead-gen-subscription-checkbox');\n const $emailValidationWrapper = $subscriptionWrapper.find('.js-lead-gen-validation-error');\n const $checkboxValidationWrapper = $subscriptionWrapper.find('.js-lead-gen-validation-error-checkbox');\n const $formContent = $('.lead-gen-subscription__content');\n const $formContentPage = $('.lead-gen-subscription .lead-gen-subscription__content');\n const $responseContent = $('.lead-gen-subscription__response');\n const $subscriptionSuccessModal = $('.js-subscription-success-modal');\n const $subscriptionModal = $('.subscription-modal');\n const $subscriptionWinModal = $('.js-subscription-win-modal');\n const $errorMsgs = $subscriptionWrapper.find('.js-lead-gen-response-error');\n const requiredMessage = $emailValidationWrapper.data('validation-email-required');\n const invalidMessage = $emailValidationWrapper.data('validation-email-invalid');\n const invalidCheckboxMessage = $checkboxValidationWrapper.data('checkbox-validation-msg');\n const url = $button.data('url');\n const storeName = $button.data('store-name');\n const accountID = $button.data('account-id');\n const email = $input.val();\n let isError = false;\n\n $errorMsgs.empty().hide();\n $emailValidationWrapper.empty();\n $checkboxValidationWrapper.empty();\n $input.removeClass('error');\n $emailValidationWrapper.removeClass('error');\n $checkbox.removeClass('error');\n\n if (!email) {\n $emailValidationWrapper.show().text(requiredMessage);\n $emailValidationWrapper.addClass('error');\n $input.addClass('error');\n isError = true;\n } else if (!validateEmail(email)) {\n $emailValidationWrapper.show().text(invalidMessage);\n $emailValidationWrapper.addClass('error');\n isError = true;\n }\n\n if (!$checkbox.is(':checked')) {\n $checkboxValidationWrapper.show().text(invalidCheckboxMessage);\n $checkbox.addClass('error');\n isError = true;\n }\n\n if (isError) {\n return;\n }\n\n $button.attr('disabled', true);\n $formContent.loader().start();\n\n /**\n * Handles the form content after the AJAX request is done\n */\n const handleContentAfterAjax = () => {\n $button.attr('disabled', false);\n $formContent.loader().stop();\n };\n\n $.ajax({\n url,\n type: 'POST',\n data: {\n email,\n accountID,\n },\n success: response => {\n handleContentAfterAjax();\n\n if (response.error) {\n if (response.errorMessage) {\n $errorMsgs.empty().text(response.errorMessage).show();\n }\n return;\n }\n\n $formContentPage.hide();\n window.sessionStorage.setItem('winModalSeen', 'yes');\n $responseContent.show();\n $errorMsgs.empty().hide();\n sendSubscriptionGtmEvent(response.emailHashed, storeName);\n modalTrigger($subscriptionModal, 'close');\n modalTrigger($subscriptionWinModal, 'close');\n modalTrigger($subscriptionSuccessModal, 'open');\n },\n error: handleContentAfterAjax\n });\n });\n\n $('.js-subscription-success-copy-url').on('click', e => {\n const $button = $(e.currentTarget);\n\n navigator.clipboard.writeText($button.data('referrerUrl'));\n\n $('.js-copy-button-hint').removeClass('visible');\n $('.js-copy-button-copied').addClass('visible');\n\n setTimeout(() => {\n $('.js-copy-button-copied').removeClass('visible');\n }, 3000);\n });\n\n $('.js-subscription-success-copy-url').on('mouseover', () => {\n $('.js-copy-button-hint').removeClass('visible');\n $('.js-copy-button-hint').addClass('visible');\n });\n\n $('.js-subscription-success-copy-url').on('mouseout', () => {\n $('.js-copy-button-hint').removeClass('visible');\n });\n };\n\n /**\n * Set up Modals\n */\n const initializeModalTriggers = () => {\n const $subscriptionSuccessModal = $('.js-subscription-success-modal');\n const $subscriptionModal = $('.subscription-modal');\n\n $('.modal-close').on('click', () => {\n modalTrigger($subscriptionSuccessModal, 'close', 'up-down');\n modalTrigger($subscriptionModal, 'close', 'up-down');\n });\n\n $('.modal-backdrop').on('click', () => {\n modalTrigger($subscriptionSuccessModal, 'close', 'up-down');\n modalTrigger($subscriptionModal, 'close', 'up-down');\n });\n\n $('.js-lead-gen-subscribe-now').on('click', () => {\n modalTrigger($subscriptionModal, 'open', 'up-down');\n });\n };\n\n return {\n init() {\n initializeListeners();\n initializeModalTriggers();\n modalAutoOpen('.js-subscription-win-modal');\n },\n };\n})();\n\nexport default (() => {\n $(LeadGenClub.init);\n})();\n","\nimport { scrollLock } from './util';\n\n/**\n * Triggers open/closed state of modals\n * @param {string} element - modal element\n * @param {string} state - open or close\n * @param {string} ani - animation; up-down or nothing (for now)\n * @param {string} bodyModalCLass - class added to the body to show hide a particular backdrop if needed\n*/\n\nfunction modalTrigger(element, state, ani, bodyModalCLass = 'modal-overlay') {\n if ($(element).length === 0) {\n return;\n }\n\n // before hide or show add or remove animation props\n if (ani === 'up-down') {\n $(element).addClass('fade-up-down');\n } else {\n $(element).removeClass('fade-up-down');\n }\n\n if (ani === 'from-side') {\n $(element).addClass('from-side');\n } else {\n $(element).removeClass('from-side');\n }\n\n // timeouts needed for animation to follow\n setTimeout(() => {\n if (state === 'open') {\n // element needs to be set visible before adding class\n $(element).css('display', 'flex');\n $('body').addClass(bodyModalCLass);\n\n // timeouts needed for animation to follow\n setTimeout(() => {\n $(element).addClass('show');\n }, 10);\n scrollLock('on');\n } else if (state === 'close') {\n $(element).removeClass('show');\n $('body').removeClass(bodyModalCLass);\n\n // set to animation out time in css\n setTimeout(() => {\n $(element).css('display', 'none');\n // remove possible animation class, left behind\n $(element).removeClass('fade-up-down');\n }, 500);\n scrollLock('off');\n }\n }, 10);\n}\n\n/**\n * Checks if Item is in view\n * @param {string} ele - any element\n * @returns {boolean} - true if the element is in the viewport, otherwise false\n */\nfunction isInViewport(ele) {\n const { top, bottom } = ele.getBoundingClientRect();\n const vHeight = (window.innerHeight || document.documentElement.clientHeight);\n\n if ((top > 0 || bottom > 0) && top < vHeight) {\n return true;\n }\n return false;\n}\n\n/**\n * Auto Triggers open state of modal after leadGenWinModalTimer when subscription boxes are not in viewport\n * @param {string} element - modal element\n * @param {string} ani - up-down or nothing\n*/\n\nfunction modalAutoOpen(element, ani) {\n if ($(element).length === 0) {\n return;\n }\n\n if (!window.sessionStorage.getItem('winModalSeen')) {\n window.sessionStorage.setItem('winModalSeen', 'no');\n }\n\n let timerFinished = false;\n const time = parseInt($('#winModalTime').val(), 10) * 1000;\n\n function showModal() {\n const sub1 = document.querySelector('.js-lead-gen-subscription-wrapper.subscription-1');\n const sub2 = document.querySelector('.js-lead-gen-subscription-wrapper.subscription-2');\n const modalsOpen = document.querySelector('body.modal-overlay');\n const winModalSeen = window.sessionStorage.getItem('winModalSeen');\n\n\n if (!isInViewport(sub1) && !isInViewport(sub2) && modalsOpen === null && timerFinished && winModalSeen === 'no') {\n // open modal\n modalTrigger(element, 'open', ani);\n // set session\n $('.modal-close').on('click', () => {\n modalTrigger(element, 'close', ani);\n window.sessionStorage.setItem('winModalSeen', 'yes');\n });\n\n $('.modal-backdrop').on('click', () => {\n modalTrigger(element, 'close', ani);\n window.sessionStorage.setItem('winModalSeen', 'yes');\n });\n }\n }\n\n window.addEventListener('load', () => {\n setTimeout(() => {\n timerFinished = true;\n showModal();\n }, time);\n }, false);\n\n window.addEventListener('scroll', () => {\n showModal();\n }, false);\n}\n\nfunction modalPdAutoOpen(element, ani) {\n if ($(element).length === 0) {\n return;\n }\n\n const $daysLeft = $(element).find('#daysLeft');\n\n if ($daysLeft.length && parseInt($daysLeft.val(), 10) === 0) {\n return;\n }\n\n if (!window.sessionStorage.getItem('winPdModalSeen')) {\n window.sessionStorage.setItem('winPdModalSeen', 'no');\n }\n\n const defaulTimer = 30; // default seconds if input is left empty\n const timeInput = $('#modalPdTime').val();\n let timerFinished = false;\n let time;\n if (isNaN(timeInput)) {\n time = defaulTimer * 1000;\n } else {\n time = parseInt($('#modalPdTime').val(), 10) * 1000;\n }\n\n function showModal() {\n const winPdModalSeen = window.sessionStorage.getItem('winPdModalSeen');\n\n if (timerFinished === true && winPdModalSeen === 'no') {\n // open modal\n modalTrigger(element, 'open', ani);\n // set session\n $('.modal-close').on('click', () => {\n modalTrigger(element, 'close', 'up-down');\n window.sessionStorage.setItem('winPdModalSeen', 'yes');\n });\n\n $('.modal-backdrop').on('click', () => {\n modalTrigger(element, 'close', 'up-down');\n window.sessionStorage.setItem('winPdModalSeen', 'yes');\n });\n }\n }\n\n window.addEventListener('load', () => {\n setTimeout(() => {\n timerFinished = true;\n showModal();\n }, time);\n }, false);\n}\n\nexport {\n modalTrigger,\n modalAutoOpen,\n modalPdAutoOpen,\n};\n","\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 `
\n \n ${message}\n
`;\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 = ``;\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/\n /\\?v=([^#\\&\\?]{11})/, // ?v=\n /\\&v=([^#\\&\\?]{11})/, // &v=\n /embed\\/([^#\\&\\?]{11})/, // embed/\n /\\/v\\/([^#\\&\\?]{11})/ // /v/\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',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