{"version":3,"sources":["webpack:///./src/shared/utilities/screenSize.js","webpack:///./node_modules/process/browser.js","webpack:///./src/components/organisms/disclaimer/disclaimer.js","webpack:///./src/shared/utilities/debounce.js","webpack:///./src/shared/utilities/pubsub.js","webpack:///./src/framework/base/base.js","webpack:///./src/shared/utilities/case.ts","webpack:///./src/shared/utilities/id.ts","webpack:///./src/shared/utilities/show-hide.ts","webpack:///./src/shared/utilities/restrict-body-scroll.ts","webpack:///./node_modules/smoothscroll-polyfill/dist/smoothscroll.js"],"names":["defaultWidths","sm","md","lg","xl","getBreakpoint","window","getComputedStyle","document","querySelector","getPropertyValue","replace","screenSmallerThan","size","widths","arguments","length","undefined","Object","prototype","hasOwnProperty","call","Error","concat","keys","join","innerWidth","screenGreatOrEqualTo","cachedSetTimeout","cachedClearTimeout","process","module","exports","defaultSetTimout","defaultClearTimeout","runTimeout","fun","setTimeout","e","this","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","drainQueue","timeout","len","run","marker","runClearTimeout","Item","array","noop","nextTick","args","Array","i","push","apply","title","browser","env","argv","version","versions","on","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","name","binding","cwd","chdir","dir","umask","smoothscroll","polyfill","Disclaimer","_BaseBehavior","element","_this","_classCallCheck","_callSuper","initDomCache","showMoreBtns","querySelectorAll","modifier","info","manage","details","language","deferCookieKey","navStack","popupRendered","timeoutDelay","self","timer","checkDOMReadyState","readyState","addEventListeners","init","cookieDisclaimer","showLess","_inherits","_createClass","key","value","_this2","addEventListener","dom","manageBtn","preventDefault","addIntroToCookiesGroup","showConsentGroupSection","necessaryOnlyBtn","Cookiebot","submitCustomConsent","hidePopup","backBtn","prevState","splice","showSectionsForState","acceptBtn","onAcceptAll","bind","consentAcceptBtn","updateBtn","onUpdate","hasAttribute","cultureSelector","showCountriesSection","target","type","classList","add","dataset","showMoreLink","onShowMore","pubsub","subscribe","wrapper","deferCookieBot","sessionStorage","setItem","navigator","isIOSTrackingPermissionAllowed","adobeDataLayer","event","contains","showPopup","remove","consented","declined","hideonpageload","getItem","checkConsents","showElement","restrictBodyScroll","hideElement","publish","intro","header","innerHTML","headerTitleString","match","trim","dialog","_window$Cookiebot$dia","cookieIntroTypeAdvertising","cookieIntroTypeNecessary","cookieIntroTypePreference","cookieIntroTypeStatistics","cookieHeaderTypeAdvertising","cookieHeaderTypeNecessary","cookieHeaderTypePreference","cookieHeaderTypeStatistics","changeCookiesCategoryValues","nextModifier","prevModifier","scrollTo","extendedMobile","category","_window$Cookiebot$con","consent","preferences","statistics","marketing","inp","checked","_Array$from2","_slicedToArray","from","mobileInp","getInputValue","showMoreLinkValue","_window$Cookiebot$dia2","_window$Cookiebot$dia3","cookieTableNecessary","_window$Cookiebot$dia4","cookieTablePreference","_window$Cookiebot$dia5","cookieTableStatistics","_window$Cookiebot$dia6","cookieTableAdvertising","appendDetails","split","htmlString","_window$Cookiebot$dia7","cookieTableHeaderType","cookieTableHeaderName","cookieTableHeaderExpiry","cookieTableHeaderProvider","forEach","cookieDetail","cookiesDetails","showConsentDetailSection","_window$Cookiebot$con2","setInputValue","BaseBehavior","debounce","func","wait","immediate","_len","_key","later","callNow","PubSub","subscriptions","topic","_step","_iterator","_createForOfIteratorHelper","s","n","done","fn","err","f","index","state","events","behaviorName","camelCaseToDashCase","getAttribute","instanceId","generateId","attachInstanceId","partialState","_objectSpread","setAttribute","removeAttribute","filter","el","closest","ref","dashCaseToCamelCase","console","error","_this3","delay","breakpoint","debouncedGetBreakpoint","newBreakPoint","useCapture","removeEventListener","obj","unsubscribe","navigation","getBoundingClientRect","bottom","scrollY","scroll","reason","promise","log","str","toLowerCase","x","chr","toUpperCase","alphabet","id","charAt","Math","floor","random","restrict","body","w","d","documentElement","style","__forceSmoothScrollPolyfill__","userAgent","Element","HTMLElement","original","scrollBy","elementScroll","scrollElement","scrollIntoView","now","performance","Date","ROUNDING_TOLERANCE","RegExp","test","shouldBailOut","smoothScroll","left","scrollX","pageXOffset","top","pageYOffset","scrollLeft","scrollTop","SyntaxError","behavior","scrollableParent","findScrollableParent","parentRects","clientRects","position","y","firstArg","TypeError","hasScrollableSpace","axis","clientHeight","scrollHeight","clientWidth","scrollWidth","canOverflow","overflowValue","isScrollable","isScrollableY","isScrollableX","parentNode","host","step","context","currentX","currentY","k","elapsed","startTime","cos","PI","startX","startY","method","scrollable","requestAnimationFrame"],"mappings":"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","file":"19-de4bbc4d.js","sourcesContent":["export const defaultWidths = {\r\n\tsm: 768,\r\n\tmd: 1024,\r\n\tlg: 1280,\r\n\txl: 1400\r\n};\r\n\r\n// getBreakpoint :: Void -> String\r\nexport const getBreakpoint = () =>\r\n\twindow\r\n\t\t.getComputedStyle(document.querySelector('body'), ':before')\r\n\t\t.getPropertyValue('content')\r\n\t\t.replace(/\"/g, '');\r\n\r\n// function :: String -> ?Object -> Boolean\r\nexport function screenSmallerThan(size, widths = defaultWidths) {\r\n\tif (!Object.prototype.hasOwnProperty.call(widths, size)) {\r\n\t\tthrow new Error(`size must be one of: ${Object.keys(widths).join(', ')}`);\r\n\t}\r\n\treturn window.innerWidth < widths[size];\r\n}\r\n\r\nexport function screenGreatOrEqualTo(size, widths = defaultWidths) {\r\n\tif (!Object.prototype.hasOwnProperty.call(widths, size)) {\r\n\t\tthrow new Error(`size must be one of: ${Object.keys(widths).join(', ')}`);\r\n\t}\r\n\treturn window.innerWidth >= widths[size];\r\n}\r\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","import smoothscroll from 'smoothscroll-polyfill';\r\nimport { hideElement, showElement } from '../../../shared/utilities/show-hide';\r\nimport restrictBodyScroll from '../../../shared/utilities/restrict-body-scroll';\r\nimport pubsub from '../../../shared/utilities/pubsub';\r\nimport BaseBehavior from '../../../framework/base/base';\r\n\r\n// kick off the polyfill as it is required for element scrollTo method\r\nsmoothscroll.polyfill();\r\n\r\nconst toggleMarker = 'toggled';\r\nconst triggerMarker = 'disclaimer--triggered';\r\nexport default class Disclaimer extends BaseBehavior {\r\n\tconstructor(element) {\r\n\t\tsuper(element);\r\n\t\t// sections\r\n\t\tthis.initDomCache();\r\n\t\tthis.showMoreBtns = this.element.querySelectorAll('[data-show-more-link]');\r\n\t\tthis.modifier = {\r\n\t\t\tinfo: 'disclaimer--info',\r\n\t\t\tmanage: 'disclaimer--consent',\r\n\t\t\tdetails: 'disclaimer--details',\r\n\t\t\tlanguage: 'disclaimer--countries'\r\n\t\t};\r\n\t\tthis.deferCookieKey = 'skip-cookie-bot';\r\n\r\n\t\tthis.navStack = [this.modifier.info]; // initial nav stack item\r\n\t\tthis.popupRendered = false;\r\n\r\n\t\tlet timeoutDelay = 100;\r\n\t\tconst self = this;\r\n\t\tlet timer = setTimeout(function checkDOMReadyState() {\r\n\t\t\tif (document.readyState === 'complete') {\r\n\t\t\t\tself.addEventListeners();\r\n\t\t\t\tself.init();\r\n\t\t\t\tclearTimeout(timer);\r\n\t\t\t} else {\r\n\t\t\t\ttimeoutDelay += 100;\r\n\t\t\t\ttimer = setTimeout(checkDOMReadyState, timeoutDelay);\r\n\t\t\t}\r\n\t\t}, timeoutDelay);\r\n\r\n\t\tthis.cookieDisclaimer = document.querySelector('.v2-cookie-disclaimer');\r\n\t\tthis.showLess();\r\n\t}\r\n\r\n\taddEventListeners() {\r\n\t\twindow.addEventListener(\r\n\t\t\t'CookiebotOnDialogInit',\r\n\t\t\t() => {\r\n\t\t\t\t// ensures Cookiebot laoded\r\n\t\t\t\tthis.init();\r\n\t\t\t},\r\n\t\t\tfalse\r\n\t\t);\r\n\r\n\t\tthis.addEventListener(this.dom.manageBtn, 'click.manage', e => {\r\n\t\t\te.preventDefault();\r\n\t\t\tthis.addIntroToCookiesGroup();\r\n\t\t\tthis.showConsentGroupSection();\r\n\t\t});\r\n\t\tthis.addEventListener(this.dom.necessaryOnlyBtn, 'click', e => {\r\n\t\t\te.preventDefault();\r\n\t\t\t/* istanbul ignore else */\r\n\t\t\tif (window.Cookiebot) {\r\n\t\t\t\twindow.Cookiebot.submitCustomConsent(false, false, false);\r\n\t\t\t}\r\n\t\t\tthis.hidePopup();\r\n\t\t});\r\n\r\n\t\tthis.addEventListener(this.dom.backBtn, 'click.back', e => {\r\n\t\t\te.preventDefault();\r\n\t\t\tconst prevState = this.navStack.splice(-1, 1)[0]; // remove state from stack\r\n\t\t\tthis.showSectionsForState(this.navStack[this.navStack.length - 1], prevState);\r\n\t\t});\r\n\r\n\t\tthis.addEventListener(this.dom.acceptBtn, 'click.accept', this.onAcceptAll.bind(this));\r\n\t\tthis.addEventListener(this.dom.consentAcceptBtn, 'click.accept', this.onAcceptAll.bind(this));\r\n\r\n\t\tthis.addEventListener(this.dom.updateBtn, 'click.update', this.onUpdate.bind(this));\r\n\t\t/* istanbul ignore else */\r\n\t\tif (this.element.hasAttribute('data-has-culture-selector')) {\r\n\t\t\tthis.addEventListener(this.dom.cultureSelector, 'click.culture', e => {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\tthis.showCountriesSection();\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\t// mark checkboxes toggle to select the correct toggled checkbox\r\n\t\tthis.element.querySelector('.disclaimer__consent--cookies-group').addEventListener(\r\n\t\t\t'click',\r\n\t\t\te => {\r\n\t\t\t\tconst { target } = e;\r\n\t\t\t\t/* istanbul ignore else */\r\n\t\t\t\tif (target.type === 'checkbox') {\r\n\t\t\t\t\te.target.classList.add(toggleMarker);\r\n\t\t\t\t} else if (target.dataset.showMoreLink) {\r\n\t\t\t\t\tthis.onShowMore(target.dataset.showMoreLink);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tfalse\r\n\t\t);\r\n\r\n\t\t// subscribe to trigger\r\n\t\tpubsub.subscribe('disclaimer/open', () => {\r\n\t\t\tthis.dom.wrapper.classList.add(triggerMarker);\r\n\t\t\twindow.Cookiebot.process(); // initialize cookiebot.dialog object and raise CookiebotDialogInit event\r\n\t\t});\r\n\r\n\t\t// subscribe to trigger\r\n\t\tpubsub.subscribe('disclaimer/open-with-dependency', () => {\r\n\t\t\twindow.Cookiebot.process(); // initialize cookiebot.dialog object and raise CookiebotDialogInit event\r\n\t\t});\r\n\r\n\t\tthis.addEventListener(this.dom.deferCookieBot, 'click', () => {\r\n\t\t\tsessionStorage.setItem(this.deferCookieKey, 'true');\r\n\t\t\tthis.hidePopup();\r\n\t\t});\r\n\t}\r\n\r\n\tinit() {\r\n\t\tif (window.navigator.isIOSTrackingPermissionAllowed !== undefined) {\r\n\t\t\twindow.navigator.isIOSTrackingPermissionAllowed\r\n\t\t\t\t? window.Cookiebot.submitCustomConsent(true, true, true)\r\n\t\t\t\t: window.Cookiebot.submitCustomConsent(false, false, false);\r\n\t\t\t// Asked by analytics team to add this event here as sometimes the inital page load is not tracked\r\n\t\t\tif (window.adobeDataLayer) {\r\n\t\t\t\twindow.adobeDataLayer.push({ event: 'web.webpagedetails.pageViews' });\r\n\t\t\t}\r\n\t\t}\r\n\t\t/* istanbul ignore else */\r\n\t\tif (this.element.classList.contains('v2-hidden')) {\r\n\t\t\tif (this.dom.wrapper.classList.contains(triggerMarker)) {\r\n\t\t\t\tthis.addIntroToCookiesGroup();\r\n\t\t\t\tthis.showPopup();\r\n\t\t\t\tthis.showConsentGroupSection();\r\n\t\t\t\tthis.dom.wrapper.classList.remove(triggerMarker);\r\n\t\t\t} else if (\r\n\t\t\t\t!window.Cookiebot.consented &&\r\n\t\t\t\t!window.Cookiebot.declined &&\r\n\t\t\t\t!this.element.dataset.hideonpageload\r\n\t\t\t) {\r\n\t\t\t\tthis.showPopup();\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tshowPopup() {\r\n\t\tif (!this.popupRendered && !sessionStorage.getItem(this.deferCookieKey)) {\r\n\t\t\tthis.checkConsents();\r\n\t\t\tshowElement(this.element);\r\n\t\t\tthis.popupRendered = true;\r\n\t\t\trestrictBodyScroll(true);\r\n\t\t}\r\n\t}\r\n\r\n\thidePopup() {\r\n\t\thideElement(this.element);\r\n\t\trestrictBodyScroll(false);\r\n\t\tpubsub.publish('institution-disclaimer/open', true);\r\n\t}\r\n\r\n\tchangeCookiesCategoryValues(type, intro, header) {\r\n\t\tconst regex = /[\\s\\p{Alpha}\\p{M}\\p{Pc}\\p{Join_C}-]+/gu;\r\n\t\tthis.element.querySelector(`.cookies-category-intro--${type}`).innerHTML = intro;\r\n\t\tlet headerTitleString = header.match(regex);\r\n\t\theaderTitleString = headerTitleString ? headerTitleString[0].trim() : '';\r\n\t\tthis.element.querySelector(`.cookies-category-header--${type}`).innerHTML = headerTitleString;\r\n\t}\r\n\r\n\taddIntroToCookiesGroup() {\r\n\t\tif (window.Cookiebot.dialog) {\r\n\t\t\tconst {\r\n\t\t\t\tcookieIntroTypeAdvertising,\r\n\t\t\t\tcookieIntroTypeNecessary,\r\n\t\t\t\tcookieIntroTypePreference,\r\n\t\t\t\tcookieIntroTypeStatistics,\r\n\t\t\t\tcookieHeaderTypeAdvertising,\r\n\t\t\t\tcookieHeaderTypeNecessary,\r\n\t\t\t\tcookieHeaderTypePreference,\r\n\t\t\t\tcookieHeaderTypeStatistics\r\n\t\t\t} = window.Cookiebot.dialog;\r\n\r\n\t\t\tthis.changeCookiesCategoryValues(\r\n\t\t\t\t'necessary',\r\n\t\t\t\tcookieIntroTypeNecessary,\r\n\t\t\t\tcookieHeaderTypeNecessary\r\n\t\t\t);\r\n\t\t\tthis.changeCookiesCategoryValues(\r\n\t\t\t\t'preference',\r\n\t\t\t\tcookieIntroTypePreference,\r\n\t\t\t\tcookieHeaderTypePreference\r\n\t\t\t);\r\n\t\t\tthis.changeCookiesCategoryValues(\r\n\t\t\t\t'statistics',\r\n\t\t\t\tcookieIntroTypeStatistics,\r\n\t\t\t\tcookieHeaderTypeStatistics\r\n\t\t\t);\r\n\t\t\tthis.changeCookiesCategoryValues(\r\n\t\t\t\t'marketing',\r\n\t\t\t\tcookieIntroTypeAdvertising,\r\n\t\t\t\tcookieHeaderTypeAdvertising\r\n\t\t\t);\r\n\t\t}\r\n\t}\r\n\r\n\tshowSectionsForState(nextModifier, prevModifier) {\r\n\t\tthis.dom.wrapper.classList.remove(prevModifier);\r\n\t\tthis.dom.wrapper.classList.add(nextModifier);\r\n\t\t// set scroll to top for content section\r\n\t\tthis.dom.wrapper.querySelector('.disclaimer__content').scrollTo(0, 0);\r\n\t}\r\n\r\n\tshowCountriesSection() {\r\n\t\t// hide cookies and consent sections, btn container, lang selector\r\n\t\tthis.showSectionsForState(this.modifier.language, this.navStack[this.navStack.length - 1]);\r\n\t\tthis.navStack.push(this.modifier.language);\r\n\t}\r\n\r\n\tshowCookiesSection() {\r\n\t\tthis.showSectionsForState(this.modifier.info, this.navStack[this.navStack.length - 1]);\r\n\t\tthis.navStack.push(this.modifier.info);\r\n\t}\r\n\r\n\tshowConsentGroupSection() {\r\n\t\tthis.showSectionsForState(this.modifier.manage, this.navStack[this.navStack.length - 1]);\r\n\t\tthis.navStack.push(this.modifier.manage);\r\n\t}\r\n\r\n\tshowConsentDetailSection() {\r\n\t\tthis.showSectionsForState(this.modifier.details, this.navStack[this.navStack.length - 1]);\r\n\t\tthis.navStack.push(this.modifier.details);\r\n\t}\r\n\r\n\tonAcceptAll(e) {\r\n\t\te.preventDefault();\r\n\t\t// call accept all cookies method\r\n\t\t/* istanbul ignore else */\r\n\t\tif (window.Cookiebot) {\r\n\t\t\twindow.Cookiebot.submitCustomConsent(true, true, true);\r\n\t\t\tthis.hidePopup();\r\n\t\t\tthis.showLess();\r\n\t\t}\r\n\t}\r\n\r\n\tshowLess() {\r\n\t\t/* istanbul ignore else */\r\n\t\tif (this.cookieDisclaimer && this.element.classList.contains('v2-hidden')) {\r\n\t\t\tthis.cookieDisclaimer.classList.add('v2-cookie-disclaimer--accepted');\r\n\t\t\t!this.cookieDisclaimer.dataset.extendedMobile &&\r\n\t\t\t\tthis.cookieDisclaimer.classList.add('v2-cookie-disclaimer--short-show');\r\n\t\t\tthis.cookieDisclaimer.classList.remove('v2-cookie-disclaimer--extended-show');\r\n\t\t\tthis.publish('disclaimer/adjust/height');\r\n\t\t}\r\n\t}\r\n\r\n\tgetInputValue(category) {\r\n\t\tconst { preferences, statistics, marketing } = window.Cookiebot.consent;\r\n\t\tconst inp = this.element.querySelector(`.disclaimer__${category}.${toggleMarker}`);\r\n\t\tif (inp) return inp.checked;\r\n\r\n\t\tswitch (category) {\r\n\t\t\tcase 'preference':\r\n\t\t\t\treturn preferences;\r\n\t\t\tcase 'statistics':\r\n\t\t\t\treturn statistics;\r\n\t\t\tcase 'marketing':\r\n\t\t\t\treturn marketing;\r\n\t\t\tdefault:\r\n\t\t\t\treturn null;\r\n\t\t}\r\n\t}\r\n\r\n\tsetInputValue(category, value) {\r\n\t\tconst [mobileInp, desktopInp] = Array.from(\r\n\t\t\tthis.element.querySelectorAll(`.disclaimer__${category}`)\r\n\t\t);\r\n\t\tdesktopInp.checked = value;\r\n\t\tmobileInp.checked = value;\r\n\t}\r\n\r\n\tonUpdate(e) {\r\n\t\te.preventDefault();\r\n\t\t// call accept all cookies method\r\n\t\t/* istanbul ignore else */\r\n\t\tif (window.Cookiebot) {\r\n\t\t\twindow.Cookiebot.submitCustomConsent(\r\n\t\t\t\tthis.getInputValue('preference'),\r\n\t\t\t\tthis.getInputValue('statistics'),\r\n\t\t\t\tthis.getInputValue('marketing')\r\n\t\t\t);\r\n\t\t\tthis.hidePopup();\r\n\t\t\tthis.showLess();\r\n\t\t}\r\n\t}\r\n\r\n\tonShowMore(showMoreLinkValue) {\r\n\t\tlet details;\r\n\t\tlet type;\r\n\t\t/* istanbul ignore else */\r\n\t\tif (window.Cookiebot.dialog) {\r\n\t\t\tconst {\r\n\t\t\t\tcookieTableNecessary = [],\r\n\t\t\t\tcookieTablePreference = [],\r\n\t\t\t\tcookieTableStatistics = [],\r\n\t\t\t\tcookieTableAdvertising = [],\r\n\t\t\t\tcookieHeaderTypeAdvertising,\r\n\t\t\t\tcookieHeaderTypeNecessary,\r\n\t\t\t\tcookieHeaderTypePreference,\r\n\t\t\t\tcookieHeaderTypeStatistics\r\n\t\t\t} = window.Cookiebot.dialog;\r\n\r\n\t\t\tswitch (showMoreLinkValue) {\r\n\t\t\t\tcase 'necessary':\r\n\t\t\t\t\tdetails = cookieTableNecessary;\r\n\t\t\t\t\ttype = cookieHeaderTypeNecessary;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'preferences':\r\n\t\t\t\t\tdetails = cookieTablePreference;\r\n\t\t\t\t\ttype = cookieHeaderTypePreference;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'statistics':\r\n\t\t\t\t\tdetails = cookieTableStatistics;\r\n\t\t\t\t\ttype = cookieHeaderTypeStatistics;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 'marketing':\r\n\t\t\t\t\tdetails = cookieTableAdvertising;\r\n\t\t\t\t\ttype = cookieHeaderTypeAdvertising;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\t\ttype = 'Unknown';\r\n\t\t\t\t\tdetails = [];\r\n\t\t\t}\r\n\r\n\t\t\tif (details.length) this.appendDetails(details, type.split(' ')[0]);\r\n\t\t}\r\n\t}\r\n\r\n\tappendDetails(details, type) {\r\n\t\tlet htmlString = '';\r\n\t\tconst {\r\n\t\t\tcookieTableHeaderType,\r\n\t\t\tcookieTableHeaderName,\r\n\t\t\tcookieTableHeaderExpiry,\r\n\t\t\tcookieTableHeaderProvider\r\n\t\t} = window.Cookiebot.dialog;\r\n\t\tdetails.forEach(cookieDetail => {\r\n\t\t\thtmlString += `
`;\r\n\t\t});\r\n\t\tthis.element.querySelector('.header-title--text-details').innerHTML = type + ' Cookies';\r\n\t\tthis.dom.cookiesDetails.innerHTML = htmlString;\r\n\t\tthis.showConsentDetailSection();\r\n\t}\r\n\r\n\tcheckConsents() {\r\n\t\tconst { preferences, statistics, marketing } = window.Cookiebot.consent;\r\n\t\t// show checked cookies\r\n\t\tthis.setInputValue('preference', preferences);\r\n\t\tthis.setInputValue('statistics', statistics);\r\n\t\tthis.setInputValue('marketing', marketing);\r\n\t}\r\n}\r\n","// debounce :: Function, Number, Bool -> (Any -> Void)\r\nexport function debounce(func, wait, immediate) {\r\n\tlet timeout;\r\n\treturn function debounced(...args) {\r\n\t\tconst later = () => {\r\n\t\t\ttimeout = null;\r\n\t\t\tif (!immediate) func(args);\r\n\t\t};\r\n\t\tconst callNow = immediate && !timeout;\r\n\t\tclearTimeout(timeout);\r\n\t\ttimeout = setTimeout(later, wait);\r\n\t\tif (callNow) func(args);\r\n\t};\r\n}\r\n","class PubSub {\r\n\tconstructor() {\r\n\t\tthis.subscriptions = {};\r\n\t}\r\n\r\n\tpublish(topic, ...args) {\r\n\t\tif (this.subscriptions[topic]) {\r\n\t\t\t// eslint-disable-next-line no-restricted-syntax\r\n\t\t\tfor (const fn of this.subscriptions[topic]) {\r\n\t\t\t\tfn(...args);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tsubscribe(topic, fn) {\r\n\t\tthis.subscriptions[topic] = this.subscriptions[topic] || [];\r\n\t\tthis.subscriptions[topic].push(fn);\r\n\t}\r\n\r\n\tunsubscribe(topic, fn) {\r\n\t\tif (this.subscriptions[topic]) {\r\n\t\t\tthis.subscriptions[topic].forEach((value, index) => {\r\n\t\t\t\tif (value === fn) {\r\n\t\t\t\t\tthis.subscriptions[topic].splice(index, 1);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n}\r\n\r\nconst pubsub = new PubSub();\r\n\r\nexport default pubsub;\r\n","import pubsub from '../../shared/utilities/pubsub';\r\nimport { generateId } from '../../shared/utilities/id';\r\nimport { camelCaseToDashCase, dashCaseToCamelCase } from '../../shared/utilities/case';\r\nimport { getBreakpoint } from '../../shared/utilities/screenSize';\r\nimport { debounce } from '../../shared/utilities/debounce';\r\n\r\nexport default class BaseBehavior {\r\n\tconstructor(element) {\r\n\t\tthis.element = element;\r\n\t\tthis.state = undefined;\r\n\t\tthis.events = {};\r\n\t\tthis.subscriptions = {};\r\n\t\tthis.behaviorName = camelCaseToDashCase(element.getAttribute('data-behavior'));\r\n\t\tthis.instanceId = generateId();\r\n\t\tthis.attachInstanceId();\r\n\t}\r\n\r\n\tsetState(partialState) {\r\n\t\tObject.keys(partialState).forEach(key => {\r\n\t\t\tif (!{}.hasOwnProperty.call(this.state, key)) {\r\n\t\t\t\tthrow new Error(\r\n\t\t\t\t\t`${this.behaviorName} does not have ${key} on the state object,\r\n\t\t\t\t\tmake sure to define all state properties in the constructor.`\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tthis.state = { ...(this.state || {}), ...partialState };\r\n\t}\r\n\r\n\tattachInstanceId() {\r\n\t\tthis.element.setAttribute('data-instance', `${this.behaviorName}__${this.instanceId}`);\r\n\t\tthis.element.removeAttribute('data-instance-init');\r\n\t}\r\n\r\n\tinitDomCache() {\r\n\t\tthis.dom = {};\r\n\r\n\t\t// Filter out ref's that embedded in another instance of the same behavior.\r\n\t\tArray.from(this.element.querySelectorAll(`[data-ref^=${this.behaviorName}]`))\r\n\t\t\t.filter(el => el.closest(`[data-behavior*=\"${this.behaviorName}\"]`) === this.element)\r\n\t\t\t.forEach(element => {\r\n\t\t\t\tconst ref = element.getAttribute('data-ref');\r\n\t\t\t\tconst key = dashCaseToCamelCase(ref).split('__')[1];\r\n\r\n\t\t\t\tif (key) {\r\n\t\t\t\t\tthis.dom[key] = element;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.error(\r\n\t\t\t\t\t\t`Element cannot be cached. Reference \"${ref}\" should have the format \"behavior-name__element-name\"`\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t}\r\n\r\n\tpublishBreakpointOnResize(delay = 250) {\r\n\t\tif (this.breakpoint) return;\r\n\r\n\t\tthis.breakpoint = getBreakpoint();\r\n\t\tthis.publish('SITE.BREAKPOINT', this.breakpoint);\r\n\r\n\t\tconst debouncedGetBreakpoint = debounce(() => {\r\n\t\t\tconst newBreakPoint = getBreakpoint();\r\n\t\t\tif (this.breakpoint !== newBreakPoint) {\r\n\t\t\t\tthis.publish('SITE.BREAKPOINT', newBreakPoint);\r\n\t\t\t\tthis.breakpoint = newBreakPoint;\r\n\t\t\t}\r\n\t\t}, delay);\r\n\r\n\t\twindow.addEventListener('resize', debouncedGetBreakpoint);\r\n\t}\r\n\r\n\taddEventListener(element, event, fn, useCapture = false) {\r\n\t\tif (element) {\r\n\t\t\tthis.events[event] = fn;\r\n\t\t\telement.addEventListener(event.split('.')[0], this.events[event], useCapture);\r\n\t\t}\r\n\t}\r\n\r\n\tremoveEventListener(element, event) {\r\n\t\telement.removeEventListener(event.split('.')[0], this.events[event]);\r\n\t\tthis.events[event] = null;\r\n\t\tdelete this.events[event];\r\n\t}\r\n\r\n\t// eslint-disable-next-line class-methods-use-this\r\n\tpublish(topic, obj) {\r\n\t\tpubsub.publish(topic, obj);\r\n\t}\r\n\r\n\tsubscribe(topic, fn) {\r\n\t\tthis.subscriptions[topic] = fn;\r\n\t\tpubsub.subscribe(topic, fn);\r\n\t}\r\n\r\n\tunsubscribe(topic) {\r\n\t\tpubsub.unsubscribe(topic, this.subscriptions[topic]);\r\n\t\tthis.subscriptions[topic] = null;\r\n\t\tdelete this.subscriptions[topic];\r\n\t}\r\n}\r\n\r\n// Below code is added for fixing scrolling issue on page refresh.\r\nwindow.addEventListener('load', () => {\r\n\tsetTimeout(() => {\r\n\t\tconst navigation = document.querySelector('#navigation');\r\n\t\t// eslint-disable-next-line\r\n\t\tif (navigation && navigation.getBoundingClientRect().bottom === scrollY) {\r\n\t\t\twindow.scroll(0, 0);\r\n\t\t}\r\n\t}, 0);\r\n});\r\n\r\nprocess.on('unhandledRejection', (reason, promise) => {\r\n\t// eslint-disable-next-line no-console\r\n\tconsole.log('Reason for this failure is : ', reason);\r\n\t// eslint-disable-next-line no-console\r\n\tconsole.log('promise is', promise);\r\n\t// Application specific logging, throwing an error, or other logic here\r\n});\r\n","export function camelCaseToDashCase(str: string): string {\r\n\treturn str.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();\r\n}\r\n\r\nexport function dashCaseToCamelCase(str: string): string {\r\n\treturn str.replace(/\\W+(.)/g, (x, chr) => chr.toUpperCase());\r\n}\r\n","const alphabet = '23456789ABDEGJKMNPQRVWXYZ';\r\n\r\nexport function generateId(length: number = 6): string {\r\n\tlet id:string = '';\r\n\r\n\tfor (let i:number = 0; i < length; i++) {\r\n\t\tid += alphabet.charAt(Math.floor(Math.random() * alphabet.length));\r\n\t}\r\n\r\n\treturn id;\r\n}\r\n","const hiddenClass = 'v2-hidden';\r\nexport const hideElement = (element:HTMLElement):void => element && element.classList.add(hiddenClass);\r\nexport const showElement = (element:HTMLElement):void => element && element.classList.remove(hiddenClass);\r\n","export default function restrictBodyScroll(restrict:boolean): void {\r\n\tif (restrict) {\t\t\r\n\t\tdocument.body.classList.add('v2-overflow-hidden');\r\n\t} else {\r\n\t\tdocument.body.classList.remove('v2-overflow-hidden');\r\n\t}\r\n}\r\n","/* smoothscroll v0.4.4 - 2019 - Dustan Kasten, Jeremias Menichelli - MIT License */\n(function () {\n 'use strict';\n\n // polyfill\n function polyfill() {\n // aliases\n var w = window;\n var d = document;\n\n // return if scroll behavior is supported and polyfill is not forced\n if (\n 'scrollBehavior' in d.documentElement.style &&\n w.__forceSmoothScrollPolyfill__ !== true\n ) {\n return;\n }\n\n // globals\n var Element = w.HTMLElement || w.Element;\n var SCROLL_TIME = 468;\n\n // object gathering original scroll methods\n var original = {\n scroll: w.scroll || w.scrollTo,\n scrollBy: w.scrollBy,\n elementScroll: Element.prototype.scroll || scrollElement,\n scrollIntoView: Element.prototype.scrollIntoView\n };\n\n // define timing method\n var now =\n w.performance && w.performance.now\n ? w.performance.now.bind(w.performance)\n : Date.now;\n\n /**\n * indicates if a the current browser is made by Microsoft\n * @method isMicrosoftBrowser\n * @param {String} userAgent\n * @returns {Boolean}\n */\n function isMicrosoftBrowser(userAgent) {\n var userAgentPatterns = ['MSIE ', 'Trident/', 'Edge/'];\n\n return new RegExp(userAgentPatterns.join('|')).test(userAgent);\n }\n\n /*\n * IE has rounding bug rounding down clientHeight and clientWidth and\n * rounding up scrollHeight and scrollWidth causing false positives\n * on hasScrollableSpace\n */\n var ROUNDING_TOLERANCE = isMicrosoftBrowser(w.navigator.userAgent) ? 1 : 0;\n\n /**\n * changes scroll position inside an element\n * @method scrollElement\n * @param {Number} x\n * @param {Number} y\n * @returns {undefined}\n */\n function scrollElement(x, y) {\n this.scrollLeft = x;\n this.scrollTop = y;\n }\n\n /**\n * returns result of applying ease math function to a number\n * @method ease\n * @param {Number} k\n * @returns {Number}\n */\n function ease(k) {\n return 0.5 * (1 - Math.cos(Math.PI * k));\n }\n\n /**\n * indicates if a smooth behavior should be applied\n * @method shouldBailOut\n * @param {Number|Object} firstArg\n * @returns {Boolean}\n */\n function shouldBailOut(firstArg) {\n if (\n firstArg === null ||\n typeof firstArg !== 'object' ||\n firstArg.behavior === undefined ||\n firstArg.behavior === 'auto' ||\n firstArg.behavior === 'instant'\n ) {\n // first argument is not an object/null\n // or behavior is auto, instant or undefined\n return true;\n }\n\n if (typeof firstArg === 'object' && firstArg.behavior === 'smooth') {\n // first argument is an object and behavior is smooth\n return false;\n }\n\n // throw error when behavior is not supported\n throw new TypeError(\n 'behavior member of ScrollOptions ' +\n firstArg.behavior +\n ' is not a valid value for enumeration ScrollBehavior.'\n );\n }\n\n /**\n * indicates if an element has scrollable space in the provided axis\n * @method hasScrollableSpace\n * @param {Node} el\n * @param {String} axis\n * @returns {Boolean}\n */\n function hasScrollableSpace(el, axis) {\n if (axis === 'Y') {\n return el.clientHeight + ROUNDING_TOLERANCE < el.scrollHeight;\n }\n\n if (axis === 'X') {\n return el.clientWidth + ROUNDING_TOLERANCE < el.scrollWidth;\n }\n }\n\n /**\n * indicates if an element has a scrollable overflow property in the axis\n * @method canOverflow\n * @param {Node} el\n * @param {String} axis\n * @returns {Boolean}\n */\n function canOverflow(el, axis) {\n var overflowValue = w.getComputedStyle(el, null)['overflow' + axis];\n\n return overflowValue === 'auto' || overflowValue === 'scroll';\n }\n\n /**\n * indicates if an element can be scrolled in either axis\n * @method isScrollable\n * @param {Node} el\n * @param {String} axis\n * @returns {Boolean}\n */\n function isScrollable(el) {\n var isScrollableY = hasScrollableSpace(el, 'Y') && canOverflow(el, 'Y');\n var isScrollableX = hasScrollableSpace(el, 'X') && canOverflow(el, 'X');\n\n return isScrollableY || isScrollableX;\n }\n\n /**\n * finds scrollable parent of an element\n * @method findScrollableParent\n * @param {Node} el\n * @returns {Node} el\n */\n function findScrollableParent(el) {\n while (el !== d.body && isScrollable(el) === false) {\n el = el.parentNode || el.host;\n }\n\n return el;\n }\n\n /**\n * self invoked function that, given a context, steps through scrolling\n * @method step\n * @param {Object} context\n * @returns {undefined}\n */\n function step(context) {\n var time = now();\n var value;\n var currentX;\n var currentY;\n var elapsed = (time - context.startTime) / SCROLL_TIME;\n\n // avoid elapsed times higher than one\n elapsed = elapsed > 1 ? 1 : elapsed;\n\n // apply easing to elapsed time\n value = ease(elapsed);\n\n currentX = context.startX + (context.x - context.startX) * value;\n currentY = context.startY + (context.y - context.startY) * value;\n\n context.method.call(context.scrollable, currentX, currentY);\n\n // scroll more if we have not reached our destination\n if (currentX !== context.x || currentY !== context.y) {\n w.requestAnimationFrame(step.bind(w, context));\n }\n }\n\n /**\n * scrolls window or element with a smooth behavior\n * @method smoothScroll\n * @param {Object|Node} el\n * @param {Number} x\n * @param {Number} y\n * @returns {undefined}\n */\n function smoothScroll(el, x, y) {\n var scrollable;\n var startX;\n var startY;\n var method;\n var startTime = now();\n\n // define scroll context\n if (el === d.body) {\n scrollable = w;\n startX = w.scrollX || w.pageXOffset;\n startY = w.scrollY || w.pageYOffset;\n method = original.scroll;\n } else {\n scrollable = el;\n startX = el.scrollLeft;\n startY = el.scrollTop;\n method = scrollElement;\n }\n\n // scroll looping over a frame\n step({\n scrollable: scrollable,\n method: method,\n startTime: startTime,\n startX: startX,\n startY: startY,\n x: x,\n y: y\n });\n }\n\n // ORIGINAL METHODS OVERRIDES\n // w.scroll and w.scrollTo\n w.scroll = w.scrollTo = function() {\n // avoid action when no arguments are passed\n if (arguments[0] === undefined) {\n return;\n }\n\n // avoid smooth behavior if not required\n if (shouldBailOut(arguments[0]) === true) {\n original.scroll.call(\n w,\n arguments[0].left !== undefined\n ? arguments[0].left\n : typeof arguments[0] !== 'object'\n ? arguments[0]\n : w.scrollX || w.pageXOffset,\n // use top prop, second argument if present or fallback to scrollY\n arguments[0].top !== undefined\n ? arguments[0].top\n : arguments[1] !== undefined\n ? arguments[1]\n : w.scrollY || w.pageYOffset\n );\n\n return;\n }\n\n // LET THE SMOOTHNESS BEGIN!\n smoothScroll.call(\n w,\n d.body,\n arguments[0].left !== undefined\n ? ~~arguments[0].left\n : w.scrollX || w.pageXOffset,\n arguments[0].top !== undefined\n ? ~~arguments[0].top\n : w.scrollY || w.pageYOffset\n );\n };\n\n // w.scrollBy\n w.scrollBy = function() {\n // avoid action when no arguments are passed\n if (arguments[0] === undefined) {\n return;\n }\n\n // avoid smooth behavior if not required\n if (shouldBailOut(arguments[0])) {\n original.scrollBy.call(\n w,\n arguments[0].left !== undefined\n ? arguments[0].left\n : typeof arguments[0] !== 'object' ? arguments[0] : 0,\n arguments[0].top !== undefined\n ? arguments[0].top\n : arguments[1] !== undefined ? arguments[1] : 0\n );\n\n return;\n }\n\n // LET THE SMOOTHNESS BEGIN!\n smoothScroll.call(\n w,\n d.body,\n ~~arguments[0].left + (w.scrollX || w.pageXOffset),\n ~~arguments[0].top + (w.scrollY || w.pageYOffset)\n );\n };\n\n // Element.prototype.scroll and Element.prototype.scrollTo\n Element.prototype.scroll = Element.prototype.scrollTo = function() {\n // avoid action when no arguments are passed\n if (arguments[0] === undefined) {\n return;\n }\n\n // avoid smooth behavior if not required\n if (shouldBailOut(arguments[0]) === true) {\n // if one number is passed, throw error to match Firefox implementation\n if (typeof arguments[0] === 'number' && arguments[1] === undefined) {\n throw new SyntaxError('Value could not be converted');\n }\n\n original.elementScroll.call(\n this,\n // use left prop, first number argument or fallback to scrollLeft\n arguments[0].left !== undefined\n ? ~~arguments[0].left\n : typeof arguments[0] !== 'object' ? ~~arguments[0] : this.scrollLeft,\n // use top prop, second argument or fallback to scrollTop\n arguments[0].top !== undefined\n ? ~~arguments[0].top\n : arguments[1] !== undefined ? ~~arguments[1] : this.scrollTop\n );\n\n return;\n }\n\n var left = arguments[0].left;\n var top = arguments[0].top;\n\n // LET THE SMOOTHNESS BEGIN!\n smoothScroll.call(\n this,\n this,\n typeof left === 'undefined' ? this.scrollLeft : ~~left,\n typeof top === 'undefined' ? this.scrollTop : ~~top\n );\n };\n\n // Element.prototype.scrollBy\n Element.prototype.scrollBy = function() {\n // avoid action when no arguments are passed\n if (arguments[0] === undefined) {\n return;\n }\n\n // avoid smooth behavior if not required\n if (shouldBailOut(arguments[0]) === true) {\n original.elementScroll.call(\n this,\n arguments[0].left !== undefined\n ? ~~arguments[0].left + this.scrollLeft\n : ~~arguments[0] + this.scrollLeft,\n arguments[0].top !== undefined\n ? ~~arguments[0].top + this.scrollTop\n : ~~arguments[1] + this.scrollTop\n );\n\n return;\n }\n\n this.scroll({\n left: ~~arguments[0].left + this.scrollLeft,\n top: ~~arguments[0].top + this.scrollTop,\n behavior: arguments[0].behavior\n });\n };\n\n // Element.prototype.scrollIntoView\n Element.prototype.scrollIntoView = function() {\n // avoid smooth behavior if not required\n if (shouldBailOut(arguments[0]) === true) {\n original.scrollIntoView.call(\n this,\n arguments[0] === undefined ? true : arguments[0]\n );\n\n return;\n }\n\n // LET THE SMOOTHNESS BEGIN!\n var scrollableParent = findScrollableParent(this);\n var parentRects = scrollableParent.getBoundingClientRect();\n var clientRects = this.getBoundingClientRect();\n\n if (scrollableParent !== d.body) {\n // reveal element inside parent\n smoothScroll.call(\n this,\n scrollableParent,\n scrollableParent.scrollLeft + clientRects.left - parentRects.left,\n scrollableParent.scrollTop + clientRects.top - parentRects.top\n );\n\n // reveal parent in viewport unless is fixed\n if (w.getComputedStyle(scrollableParent).position !== 'fixed') {\n w.scrollBy({\n left: parentRects.left,\n top: parentRects.top,\n behavior: 'smooth'\n });\n }\n } else {\n // reveal element in viewport\n w.scrollBy({\n left: clientRects.left,\n top: clientRects.top,\n behavior: 'smooth'\n });\n }\n };\n }\n\n if (typeof exports === 'object' && typeof module !== 'undefined') {\n // commonjs\n module.exports = { polyfill: polyfill };\n } else {\n // global\n polyfill();\n }\n\n}());\n"],"sourceRoot":""}