{"version":3,"sources":["webpack:///./src/shared/utilities/screenSize.js","webpack:///./node_modules/process/browser.js","webpack:///./src/components/organisms/onpagenav/item-slider.js","webpack:///./src/components/organisms/onpagenav/onpagenav.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/addListenerOnce.js","webpack:///./src/shared/utilities/effectsEndEventHandler.js","webpack:///./src/shared/utilities/swipe-event-dispatcher.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","ItemSlider","_createClass","slider","options","_classCallCheck","config","_objectSpread","leftSlider","rightSlider","sliderRoot","sliderItems","itemList","from","querySelectorAll","isRtl","itemPaddingSpace","getItemPadding","viewPointers","start","end","checkOverlappingLinkOnRight","changeSlidersState","addEventListeners","key","value","width","style","linkStyle","Number","parseInt","paddingLeft","paddingRight","cb","target","classList","contains","closest","stopPropagation","_this","onPrevious","showNewItems","bind","onNext","swipeEvtHandler","SwipeEventDispatcher","addEventListener","canRun","sum","menuElementWidth","getWidth","link","updatePointer","index","linkElem","isDisabled","add","remove","isNext","disableSliders","incomingObject","getObject","outgoingObject","leftSliderWidth","initialState","leftPositionChange","outgoingLinks","incomingLinks","finalState","getFinalState","updateViewWindow","initial","difference","leftChange","diff","Math","abs","blankViewSpace","getBlankViewSpace","_ref","multipleOutgoingsFromStart","multipleOutgoingsFromEnd","_ref2","multipleIncomingsFromEnd","multipleIncomingsFromStart","val","offsetRight","right","offsetLeft","left","_ref3","_this2","updateLeftPosition","onEffectEndEvent","hideSliderIfAtEdge","hideSlider","showSlider","hasLeftSlider","hasRightSlider","elem","withPadding","withMargin","offsetWidth","parseFloat","marginLeft","marginRight","space","totalViewWidth","visibleItemsWidth","itemSlider","OnPageNav","_BaseBehavior","element","_callSuper","_possibleConstructorReturn","isDesktop","initDomCache","setWidthsToElements","tagName","checked","stickNavigationFlag","dataset","sticky","settings","themeSettings","backgroundColor","stickyBg","defaultBg","default","borderColor","stickyBorderColor","defaultBorderColor","labelColor","stickyLabelColor","defaultLabelColor","linkColor","stickyLinkColor","defaultlinkColor","defaultLinkColor","arrow","stickyFill","defaultFill","subscribe","applyThemeSettings","sessionStorage","setItem","documentElement","_inherits","dom","behaviorName","split","filter","el","forEach","ref","getAttribute","dashCaseToCamelCase","console","error","isAnySliderVisible","mainWidth","label","setWidth","prop","color","linksParent","leftArrow","fill","rightArrow","arrowBar","BaseBehavior","debounce","func","wait","immediate","_len","_key","later","callNow","pubsub","PubSub","subscriptions","topic","_step","_iterator","_createForOfIteratorHelper","s","n","done","fn","err","f","splice","state","events","camelCaseToDashCase","instanceId","generateId","attachInstanceId","partialState","setAttribute","removeAttribute","_this3","delay","breakpoint","publish","debouncedGetBreakpoint","newBreakPoint","event","useCapture","removeEventListener","obj","unsubscribe","navigation","getBoundingClientRect","bottom","scrollY","scroll","reason","promise","log","str","toLowerCase","x","chr","toUpperCase","alphabet","id","charAt","floor","random","addEventListenerOnce","type","listener","effects","transition","endEvent","endEventsList","OTransition","MozTransition","WebkitTransition","animation","OAnimation","MozAnimation","WebkitAnimation","whichEffectEndEvent","createElement","reduce","a","c","callback","evtMap","SWIPE_LEFT","SWIPE_UP","SWIPE_DOWN","SWIPE_RIGHT","xDown","yDown","triggerPercent","evt","handleTouchStart","handleTouchEnd","lcb","data","map","handler","touches","clientX","clientY","deltaX","changedTouches","deltaY","trigger"],"mappings":"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","file":"15-b468ab2d.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 { onEffectEndEvent } from '../../../shared/utilities/effectsEndEventHandler';\r\nimport { SwipeEventDispatcher } from '../../../shared/utilities/swipe-event-dispatcher';\r\n\r\nclass ItemSlider {\r\n\tconstructor(slider, options = {}) {\r\n\t\tthis.config = {\r\n\t\t\t...options,\r\n\t\t\tslider,\r\n\t\t\tleftSlider: slider.querySelector('.v2-item-slider__thumb--left'),\r\n\t\t\trightSlider: slider.querySelector('.v2-item-slider__thumb--right'),\r\n\t\t\tsliderRoot: slider.querySelector('.v2-item-slider__root'),\r\n\t\t\tsliderItems: slider.querySelector('.v2-item-slider__items'),\r\n\t\t\titemList: Array.from(slider.querySelectorAll('.v2-item-slider__item'))\r\n\t\t};\r\n\t\t// check for rtl orientation\r\n\t\tthis.isRtl = document.dir === 'rtl';\r\n\t\tthis.itemList = Array.from(this.config.sliderRoot.querySelectorAll('.v2-item-slider__item'));\r\n\t\tthis.itemPaddingSpace = this.getItemPadding();\r\n\t\tthis.viewPointers = {\r\n\t\t\tstart: 0,\r\n\t\t\tend: this.itemList.length - 1\r\n\t\t};\r\n\t\tthis.checkOverlappingLinkOnRight();\r\n\t\tthis.changeSlidersState();\r\n\t\t// add event listener to sliders\r\n\t\tthis.addEventListeners();\r\n\t}\r\n\r\n\tsetWidth(width) {\r\n\t\tthis.config.slider.style.width = width + 'px';\r\n\t}\r\n\r\n\tgetItemPadding() {\r\n\t\tconst linkStyle = window.getComputedStyle(this.itemList[0]);\r\n\t\treturn this.isRtl\r\n\t\t\t? Number.parseInt(linkStyle.paddingLeft, 10)\r\n\t\t\t: Number.parseInt(linkStyle.paddingRight, 10);\r\n\t}\r\n\r\n\tcanRun(e, cb) {\r\n\t\tconst target = e.target.classList.contains('v2-item-slider__thumb')\r\n\t\t\t? e.target\r\n\t\t\t: e.target.closest('.v2-item-slider__thumb');\r\n\t\ttarget.classList.contains('disabled') ? e.stopPropagation() : cb();\r\n\t}\r\n\r\n\taddEventListeners() {\r\n\t\tconst onPrevious = this.showNewItems.bind(this, false);\r\n\t\tconst onNext = this.showNewItems.bind(this, true);\r\n\t\tconst swipeEvtHandler = new SwipeEventDispatcher(this.config.sliderRoot);\r\n\r\n\t\tswipeEvtHandler.on('SWIPE_LEFT', onNext);\r\n\t\tswipeEvtHandler.on('SWIPE_RIGHT', onPrevious);\r\n\t\tthis.config.leftSlider.addEventListener('click', e => this.canRun(e, onPrevious), false);\r\n\t\tthis.config.rightSlider.addEventListener('click', e => this.canRun(e, onNext), false);\r\n\t}\r\n\r\n\t/*\r\n\t This function checks overlapping on end and update pointers\r\n\t*/\r\n\tcheckOverlappingLinkOnRight() {\r\n\t\tlet sum = 0;\r\n\t\tconst menuElementWidth = this.getWidth(this.config.sliderRoot, true, false);\r\n\t\tfor (let i = this.viewPointers.start; i < this.itemList.length; i++) {\r\n\t\t\tconst link = this.itemList[i];\r\n\t\t\tconst width = this.getWidth(link, true, true);\r\n\t\t\tsum += width;\r\n\t\t\tconst linkVisible = sum <= menuElementWidth;\r\n\t\t\tif (!linkVisible) {\r\n\t\t\t\tif (sum - this.itemPaddingSpace <= menuElementWidth) {\r\n\t\t\t\t\t// visible but padding is overlapping, no need to hide this\r\n\t\t\t\t\tthis.updatePointer('end', i);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// overlapping\r\n\t\t\t\t\tthis.updatePointer('end', i - 1);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tgetObject(index) {\r\n\t\tconst linkElem = this.itemList[index];\r\n\t\treturn {\r\n\t\t\tindex,\r\n\t\t\tlink: linkElem,\r\n\t\t\twidth: this.getWidth(linkElem, true, true)\r\n\t\t};\r\n\t}\r\n\r\n\tdisableSliders(isDisabled) {\r\n\t\tif (isDisabled) {\r\n\t\t\tthis.config.leftSlider.classList.add('disabled');\r\n\t\t\tthis.config.rightSlider.classList.add('disabled');\r\n\t\t} else {\r\n\t\t\tthis.config.leftSlider.classList.remove('disabled');\r\n\t\t\tthis.config.rightSlider.classList.remove('disabled');\r\n\t\t}\r\n\t}\r\n\r\n\tshowNewItems(isNext) {\r\n\t\t// return if already last item\r\n\t\tif (isNext && this.viewPointers.end === this.itemList.length - 1) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t// return if already first item\r\n\t\tif (!isNext && this.viewPointers.start === 0) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t// Disabling controls till animation completes.\r\n\t\tthis.disableSliders(true);\r\n\r\n\t\t// It shows previous items or next items based on click on left arrow or right arrow\r\n\t\tconst incomingObject = isNext\r\n\t\t\t? this.getObject(this.viewPointers.end + 1)\r\n\t\t\t: this.getObject(this.viewPointers.start - 1);\r\n\t\tconst outgoingObject = isNext\r\n\t\t\t? this.getObject(this.viewPointers.start)\r\n\t\t\t: this.getObject(this.viewPointers.end);\r\n\r\n\t\tconst leftSliderWidth = this.getWidth(this.config.leftSlider, true, true);\r\n\r\n\t\tconst initialState = {\r\n\t\t\tleftPositionChange: isNext\r\n\t\t\t\t? outgoingObject.width + leftSliderWidth\r\n\t\t\t\t: incomingObject.width - leftSliderWidth,\r\n\t\t\toutgoingLinks: [outgoingObject],\r\n\t\t\tincomingLinks: [incomingObject]\r\n\t\t};\r\n\r\n\t\tconst finalState = this.getFinalState(initialState, isNext);\r\n\r\n\t\tthis.updateViewWindow(isNext, finalState);\r\n\t}\r\n\r\n\t/*\r\n\t\tThis function calculates shift in leftposition and multiple outgoing items from view area\r\n\t\t - from right when left arrow is pressed\r\n\t\t - from left when right arrow is pressed\r\n\t*/\r\n\tmultipleOutgoingsFromStart(initial, difference) {\r\n\t\tlet leftChange = initial.leftPositionChange;\r\n\t\tlet diff = difference;\r\n\t\tconst start = initial.outgoingLinks[0].index + 1;\r\n\t\tconst end = initial.incomingLinks[0].index;\r\n\t\tlet i;\r\n\t\tfor (i = start; i < end; i++) {\r\n\t\t\tconst outgoingObject = this.getObject(i);\r\n\t\t\tinitial.outgoingLinks.push(outgoingObject);\r\n\r\n\t\t\tdiff -= outgoingObject.width;\r\n\r\n\t\t\tleftChange += outgoingObject.width;\r\n\r\n\t\t\tif (diff <= this.itemPaddingSpace) {\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t}\r\n\t\tthis.updatePointer('start', i + 1);\r\n\t\tthis.updatePointer('end', end);\r\n\r\n\t\treturn { leftPositionChange: leftChange, outgoingLinks: initial.outgoingLinks };\r\n\t}\r\n\r\n\tmultipleOutgoingsFromEnd(initial, difference) {\r\n\t\tconst leftChange = initial.leftPositionChange;\r\n\t\tlet diff = difference;\r\n\t\tconst start = initial.outgoingLinks[0].index - 1;\r\n\t\tconst end = initial.incomingLinks[0].index;\r\n\t\tlet i;\r\n\t\tfor (i = start; i > end; i--) {\r\n\t\t\tconst outgoingObject = this.getObject(i);\r\n\t\t\tinitial.outgoingLinks.push(outgoingObject);\r\n\r\n\t\t\tdiff -= outgoingObject.width;\r\n\r\n\t\t\tif (diff <= this.itemPaddingSpace) {\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tthis.updatePointer('start', end);\r\n\t\tthis.updatePointer('end', i - 1);\r\n\r\n\t\treturn { leftPositionChange: leftChange, outgoingLinks: initial.outgoingLinks };\r\n\t}\r\n\r\n\tmultipleIncomingsFromStart(initial, difference) {\r\n\t\tconst start = initial.incomingLinks[0].index - 1;\r\n\t\tconst end = 0;\r\n\t\tlet leftChange = initial.leftPositionChange;\r\n\t\tlet diff = Math.abs(difference);\r\n\t\tif (start >= 0 && start < this.itemList.length) {\r\n\t\t\t// this is the valid range for new items\r\n\t\t\tfor (let i = start; i >= end; i--) {\r\n\t\t\t\tconst nextIncomingItemWidth = this.getWidth(this.itemList[i], true, true);\r\n\t\t\t\tif (nextIncomingItemWidth > diff) {\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t\tconst incomingObject = this.getObject(i);\r\n\r\n\t\t\t\tleftChange += incomingObject.width;\r\n\t\t\t\tdiff -= Math.abs(initial.leftPositionChange);\r\n\r\n\t\t\t\tinitial.incomingLinks.push(incomingObject);\r\n\t\t\t\tthis.updatePointer('start', i);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn { leftPositionChange: leftChange, incomingLinks: initial.incomingLinks };\r\n\t}\r\n\r\n\tmultipleIncomingsFromEnd(initial, difference) {\r\n\t\tconst start = initial.incomingLinks[0].index + 1;\r\n\t\tconst end = this.itemList.length;\r\n\t\tconst leftChange = initial.leftPositionChange;\r\n\t\tlet diff = difference;\r\n\t\tif (start >= 0 && start < this.itemList.length) {\r\n\t\t\t// this is the valid range for new items\r\n\t\t\tfor (let i = start; i < end; i++) {\r\n\t\t\t\tconst nextIncomingItemWidth = this.getWidth(this.itemList[i], true, true);\r\n\t\t\t\tif (nextIncomingItemWidth > -diff) {\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t\tconst incomingObject = this.getObject(i);\r\n\t\t\t\tdiff += incomingObject.width;\r\n\t\t\t\tinitial.incomingLinks.push(incomingObject);\r\n\t\t\t\tthis.updatePointer('end', i);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn { leftPositionChange: leftChange, incomingLinks: initial.incomingLinks };\r\n\t}\r\n\r\n\t/*\r\n\t\tThis function calculates final state with\r\n\t\tincoming link items, outgoing link items and change in left position for view area\r\n\t\ton click of left and right arrow\r\n\t\tAlso updates pointers.\r\n\t\tparam isNext is true when right arrow is clicked\r\n\t*/\r\n\tgetFinalState(initial, isNext) {\r\n\t\t// check if multiple links needs to be added or removed from view\r\n\t\tconst blankViewSpace = this.getBlankViewSpace(); // o\r\n\t\tconst difference =\r\n\t\t\tinitial.incomingLinks[0].width - (initial.outgoingLinks[0].width + blankViewSpace);\r\n\r\n\t\tisNext\r\n\t\t\t? this.updatePointer('start', this.viewPointers.start + 1)\r\n\t\t\t: this.updatePointer('start', this.viewPointers.start - 1);\r\n\t\tisNext\r\n\t\t\t? this.updatePointer('end', this.viewPointers.end + 1)\r\n\t\t\t: this.updatePointer('end', this.viewPointers.end - 1);\r\n\r\n\t\tif (difference >= 0 && difference <= this.itemPaddingSpace) {\r\n\t\t\treturn initial;\r\n\t\t}\r\n\t\tif (difference > this.itemPaddingSpace) {\r\n\t\t\t// more than one itmes needs to be removed\r\n\t\t\tconst { leftPositionChange, outgoingLinks } = isNext\r\n\t\t\t\t? this.multipleOutgoingsFromStart(initial, difference)\r\n\t\t\t\t: this.multipleOutgoingsFromEnd(initial, difference);\r\n\t\t\treturn {\r\n\t\t\t\tleftPositionChange,\r\n\t\t\t\toutgoingLinks,\r\n\t\t\t\tincomingLinks: initial.incomingLinks\r\n\t\t\t};\r\n\t\t}\r\n\t\t// more than one items may be added in view\r\n\t\tconst { leftPositionChange, incomingLinks } = isNext\r\n\t\t\t? this.multipleIncomingsFromEnd(initial, difference)\r\n\t\t\t: this.multipleIncomingsFromStart(initial, difference);\r\n\r\n\t\treturn {\r\n\t\t\tleftPositionChange,\r\n\t\t\toutgoingLinks: initial.outgoingLinks,\r\n\t\t\tincomingLinks\r\n\t\t};\r\n\t}\r\n\r\n\tupdatePointer(key, val) {\r\n\t\tthis.viewPointers[key] = val;\r\n\t}\r\n\r\n\tupdateLeftPosition(isNext, leftChange) {\r\n\t\tif (!this.isRtl) {\r\n\t\t\tconst { offsetLeft } = this.config.sliderItems;\r\n\t\t\tthis.config.sliderItems.style.left = isNext\r\n\t\t\t\t? `${offsetLeft - leftChange}px`\r\n\t\t\t\t: `${offsetLeft + leftChange}px`;\r\n\t\t} else {\r\n\t\t\tconst offsetRight =\r\n\t\t\t\tparseInt(window.getComputedStyle(this.config.sliderItems).right, 10) +\r\n\t\t\t\tthis.getWidth(this.config.leftSlider, true, true);\r\n\t\t\tthis.config.sliderItems.style.right = isNext\r\n\t\t\t\t? `${offsetRight - leftChange}px`\r\n\t\t\t\t: `${offsetRight + leftChange}px`;\r\n\t\t}\r\n\t}\r\n\r\n\tupdateViewWindow(isNext, { leftPositionChange }) {\r\n\t\tthis.updateLeftPosition(isNext, leftPositionChange);\r\n\t\tonEffectEndEvent(\r\n\t\t\tthis.config.sliderItems,\r\n\t\t\t() => {\r\n\t\t\t\tthis.checkOverlappingLinkOnRight();\r\n\t\t\t\tthis.changeSlidersState();\r\n\t\t\t},\r\n\t\t\t'transition',\r\n\t\t\t0\r\n\t\t);\r\n\t}\r\n\r\n\tchangeSlidersState() {\r\n\t\tthis.hideSliderIfAtEdge();\r\n\t\tthis.disableSliders(false);\r\n\t}\r\n\r\n\thideSliderIfAtEdge() {\r\n\t\tif (this.viewPointers.start === 0) {\r\n\t\t\tthis.hideSlider(this.config.leftSlider);\r\n\t\t} else {\r\n\t\t\tthis.showSlider(this.config.leftSlider);\r\n\t\t}\r\n\r\n\t\t// hide right arrow if last link\r\n\t\tif (this.viewPointers.end === this.itemList.length - 1) {\r\n\t\t\tthis.hideSlider(this.config.rightSlider);\r\n\t\t} else {\r\n\t\t\tthis.showSlider(this.config.rightSlider);\r\n\t\t}\r\n\t}\r\n\r\n\tisAnySliderVisible() {\r\n\t\tconst hasLeftSlider = this.viewPointers.start > 0;\r\n\t\tconst hasRightSlider = this.viewPointers.end < this.itemList.length - 1;\r\n\r\n\t\treturn hasLeftSlider || hasRightSlider;\r\n\t}\r\n\r\n\thideSlider(slider) {\r\n\t\tslider.classList.remove('v2-item-slider__thumb--visible');\r\n\t}\r\n\r\n\tshowSlider(slider) {\r\n\t\tslider.classList.add('v2-item-slider__thumb--visible');\r\n\t}\r\n\r\n\tgetWidth(elem, withPadding, withMargin) {\r\n\t\tconst style = window.getComputedStyle(elem);\r\n\t\tlet width = elem.offsetWidth || Number.parseFloat(style.width);\r\n\t\tif (!withPadding) {\r\n\t\t\twidth = width - Number.parseFloat(style.paddingLeft) - Number.parseFloat(style.paddingRight);\r\n\t\t}\r\n\t\tif (withMargin) {\r\n\t\t\twidth = width + Number.parseFloat(style.marginLeft) + Number.parseFloat(style.marginRight);\r\n\t\t}\r\n\t\treturn width;\r\n\t}\r\n\r\n\tgetBlankViewSpace() {\r\n\t\tconst totalViewWidth = this.getWidth(this.config.sliderRoot, true, false);\r\n\t\tlet visibleItemsWidth = 0;\r\n\t\tlet space = 0;\r\n\t\tfor (let i = this.viewPointers.start; i <= this.viewPointers.end; i++) {\r\n\t\t\tconst link = this.itemList[i];\r\n\t\t\tvisibleItemsWidth += this.getWidth(link, true, true);\r\n\t\t}\r\n\t\tspace = totalViewWidth - visibleItemsWidth;\r\n\t\treturn space < 0 ? this.itemPaddingSpace : space + this.itemPaddingSpace;\r\n\t}\r\n}\r\n\r\nexport const itemSlider = (slider, options) => new ItemSlider(slider, options);\r\n","import BaseBehavior from '../../../framework/base/base';\r\nimport { itemSlider } from './item-slider';\r\nimport { screenGreatOrEqualTo } from '../../../shared/utilities/screenSize';\r\nimport { dashCaseToCamelCase } from '../../../shared/utilities/case';\r\n\r\nexport default class OnPageNav extends BaseBehavior {\r\n\tconstructor(element) {\r\n\t\tsuper(element);\r\n\t\t// don't run behavior for markup intended for dekstop and vice-&-versa.\r\n\t\tif (window.getComputedStyle(this.element).getPropertyValue('display') === 'none') return;\r\n\t\tthis.isDesktop = screenGreatOrEqualTo('sm');\r\n\t\tthis.initDomCache();\r\n\t\t// on page nav is a slider on desktop.\r\n\t\tif (this.isDesktop) {\r\n\t\t\tthis.itemSlider = itemSlider(element.querySelector('.v2-item-slider'));\r\n\t\t\tthis.setWidthsToElements();\r\n\t\t} else {\r\n\t\t\t// on page nav is an accordion on mobile.\r\n\t\t\tthis.addEventListener(this.element, 'click.mobileNav', ({ target }) => {\r\n\t\t\t\tif (target.tagName === 'A') {\r\n\t\t\t\t\tthis.element.querySelector('input').checked = false;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\t/* this.currentDirection = 'down';\r\n\t\tthis.initialTop = null; */\r\n\t\tthis.stickNavigationFlag = this.element.dataset.sticky;\r\n\t\tif (this.stickNavigationFlag === 'true') {\r\n\t\t\tconst settings = this.element.dataset;\r\n\r\n\t\t\tthis.themeSettings = {\r\n\t\t\t\tbackgroundColor: {\r\n\t\t\t\t\tvalue: settings.stickyBg || settings.defaultBg,\r\n\t\t\t\t\tdefault: settings.defaultBg\r\n\t\t\t\t},\r\n\t\t\t\tborderColor: {\r\n\t\t\t\t\tvalue: settings.stickyBorderColor || settings.defaultBorderColor,\r\n\t\t\t\t\tdefault: settings.defaultBorderColor\r\n\t\t\t\t},\r\n\t\t\t\tlabelColor: {\r\n\t\t\t\t\tvalue: settings.stickyLabelColor || settings.defaultLabelColor,\r\n\t\t\t\t\tdefault: settings.defaultLabelColor\r\n\t\t\t\t},\r\n\t\t\t\tlinkColor: {\r\n\t\t\t\t\tvalue: settings.stickyLinkColor || settings.defaultlinkColor,\r\n\t\t\t\t\tdefault: settings.defaultLinkColor\r\n\t\t\t\t},\r\n\t\t\t\tarrow: {\r\n\t\t\t\t\tvalue: settings.stickyFill || settings.defaultFill,\r\n\t\t\t\t\tdefault: settings.defaultFill\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\tthis.subscribe('position/updated', ({ value }) => {\r\n\t\t\t\tthis.isDesktop && this.applyThemeSettings(this.themeSettings, value);\r\n\t\t\t});\r\n\t\t\tthis.subscribe('collapse/navigation-mobile', () => {\r\n\t\t\t\tconst { sessionStorage } = window;\r\n\t\t\t\tthis.element.querySelector('input').checked = false;\r\n\t\t\t\tsessionStorage?.setItem('IsMobileNavigationOpen', 'true');\r\n\t\t\t\tdocument.documentElement.classList.remove('stickyMobileNavOpened');\r\n\t\t\t});\r\n\t\t}\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.split(' ')[0]}]`))\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\tsetWidthsToElements() {\r\n\t\tif (this.itemSlider.isAnySliderVisible()) {\r\n\t\t\t// set main links section width:\r\n\t\t\tconst mainWidth =\r\n\t\t\t\tthis.itemSlider.getWidth(\r\n\t\t\t\t\tthis.element.querySelector('.v2-onpagenav__container'),\r\n\t\t\t\t\tfalse,\r\n\t\t\t\t\tfalse\r\n\t\t\t\t) - (this.dom.label ? this.itemSlider.getWidth(this.dom.label, true, true) : 0);\r\n\t\t\tthis.itemSlider.setWidth(mainWidth);\r\n\t\t}\r\n\t}\r\n\r\n\tapplyThemeSettings(settings, prop) {\r\n\t\tif (settings.backgroundColor[prop]) {\r\n\t\t\tthis.element.style.backgroundColor = settings.backgroundColor[prop];\r\n\t\t}\r\n\t\tif (settings.borderColor[prop]) {\r\n\t\t\tthis.element.style.borderColor = settings.borderColor[prop];\r\n\t\t}\r\n\t\tif (settings.labelColor[prop]) {\r\n\t\t\tthis.dom.label.style.color = settings.labelColor[prop];\r\n\t\t}\r\n\t\tif (settings.linkColor[prop]) {\r\n\t\t\tthis.dom.linksParent.style.color = settings.linkColor[prop];\r\n\t\t}\r\n\t\tif (settings.arrow[prop]) {\r\n\t\t\tif (this.isDesktop) {\r\n\t\t\t\tthis.dom.leftArrow.querySelector('path').style.fill = settings.arrow[prop];\r\n\t\t\t\tthis.dom.rightArrow.querySelector('path').style.fill = settings.arrow[prop];\r\n\t\t\t} else {\r\n\t\t\t\tthis.dom.arrowBar.querySelector('path').style.fill = settings.arrow[prop];\r\n\t\t\t}\r\n\t\t}\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","export const addEventListenerOnce = (element, type, listener) => {\r\n\telement.addEventListener(type, function fn(event) {\r\n\t\telement.removeEventListener(type, fn);\r\n\t\tlistener(event);\r\n\t});\r\n};\r\n","import { addEventListenerOnce } from './addListenerOnce';\r\n\r\nconst TRANSITION_END_EVENTS = {\r\n\ttransition: 'transitionend',\r\n\tOTransition: 'oTransitionEnd',\r\n\tMozTransition: 'transitionend',\r\n\tWebkitTransition: 'webkitTransitionEnd'\r\n};\r\n\r\nconst ANIMATION_END_EVENTS = {\r\n\tanimation: 'animationend',\r\n\tOAnimation: 'oAnimationEnd',\r\n\tMozAnimation: 'animationend',\r\n\tWebkitAnimation: 'webkitAnimationEnd'\r\n};\r\n\r\nexport const effects = {\r\n\ttransition: {\r\n\t\tendEvent: null,\r\n\t\tendEventsList: TRANSITION_END_EVENTS\r\n\t},\r\n\tanimation: {\r\n\t\tendEvent: null,\r\n\t\tendEventsList: ANIMATION_END_EVENTS\r\n\t}\r\n};\r\n\r\nexport const whichEffectEndEvent = (type = 'transition') => {\r\n\tif (effects[type].endEvent !== null) {\r\n\t\treturn effects[type].endEvent;\r\n\t}\r\n\tconst el = document.createElement('fakeelement');\r\n\teffects[type].endEvent = Object.keys(effects[type].endEventsList).reduce(\r\n\t\t(a, c) => a || (typeof el.style[c] !== 'undefined' ? effects[type].endEventsList[c] : a),\r\n\t\tfalse\r\n\t);\r\n\treturn effects[type].endEvent;\r\n};\r\n\r\nexport const onEffectEndEvent = (element, callback, type = 'transition', delay = 300) => {\r\n\tconst endEvent = whichEffectEndEvent(type);\r\n\tif (endEvent) {\r\n\t\taddEventListenerOnce(element, endEvent, callback);\r\n\t\treturn;\r\n\t}\r\n\tsetTimeout(callback, delay);\r\n};\r\n","export class SwipeEventDispatcher {\r\n\tconstructor(element, options = {}) {\r\n\t\tthis.evtMap = {\r\n\t\t\tSWIPE_LEFT: [],\r\n\t\t\tSWIPE_UP: [],\r\n\t\t\tSWIPE_DOWN: [],\r\n\t\t\tSWIPE_RIGHT: []\r\n\t\t};\r\n\r\n\t\tthis.xDown = null;\r\n\t\tthis.yDown = null;\r\n\t\tthis.element = element;\r\n\t\tthis.options = { triggerPercent: 0.3, ...options };\r\n\r\n\t\telement.addEventListener('touchstart', evt => this.handleTouchStart(evt), false);\r\n\t\telement.addEventListener('touchend', evt => this.handleTouchEnd(evt), false);\r\n\t}\r\n\r\n\ton(evt, cb) {\r\n\t\tthis.evtMap[evt].push(cb);\r\n\t}\r\n\r\n\toff(evt, lcb) {\r\n\t\tthis.evtMap[evt] = this.evtMap[evt].filter(cb => cb !== lcb);\r\n\t}\r\n\r\n\ttrigger(evt, data) {\r\n\t\tthis.evtMap[evt].map(handler => handler(data));\r\n\t}\r\n\r\n\thandleTouchStart(evt) {\r\n\t\tthis.xDown = evt.touches[0].clientX;\r\n\t\tthis.yDown = evt.touches[0].clientY;\r\n\t}\r\n\r\n\thandleTouchEnd(evt) {\r\n\t\tconst deltaX = evt.changedTouches[0].clientX - this.xDown;\r\n\t\tconst deltaY = evt.changedTouches[0].clientY - this.yDown;\r\n\t\tconst distMoved = Math.abs(Math.abs(deltaX) > Math.abs(deltaY) ? deltaX : deltaY);\r\n\t\tconst activePct = distMoved / this.element.offsetWidth;\r\n\r\n\t\tif (activePct > this.options.triggerPercent) {\r\n\t\t\tif (Math.abs(deltaX) > Math.abs(deltaY)) {\r\n\t\t\t\tdeltaX < 0 ? this.trigger('SWIPE_LEFT') : this.trigger('SWIPE_RIGHT');\r\n\t\t\t} else {\r\n\t\t\t\tdeltaY > 0 ? this.trigger('SWIPE_UP') : this.trigger('SWIPE_DOWN');\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n\r\nexport default SwipeEventDispatcher;\r\n"],"sourceRoot":""}