{"version":3,"file":"js/rotater.js","mappings":"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","sources":["webpack://clienti-baseline-webpack/./src/scripts/partials/clientiRotator.js","webpack://clienti-baseline-webpack/./node_modules/component-emitter/index.js","webpack://clienti-baseline-webpack/./node_modules/component-event/index.js","webpack://clienti-baseline-webpack/./node_modules/eventwheel/index.js","webpack://clienti-baseline-webpack/webpack/bootstrap","webpack://clienti-baseline-webpack/webpack/runtime/compat get default export","webpack://clienti-baseline-webpack/webpack/runtime/define property getters","webpack://clienti-baseline-webpack/webpack/runtime/hasOwnProperty shorthand","webpack://clienti-baseline-webpack/./src/scripts/rotator.js"],"sourcesContent":["'use strict';\r\nvar Emitter = require('component-emitter');\r\nvar wheel = require('eventwheel');\r\n\r\nmodule.exports = Rotator;\r\n\r\nfunction Rotator(el) {\r\n if (!(this instanceof Rotator)) return new Rotator(el);\r\n if (typeof el === 'string') el = document.querySelector(el);\r\n this.el = el;\r\n this.current = 0;\r\n this.cycle(true);\r\n this.interval(75);\r\n this.start(0);\r\n this.onTouchStart = this.onTouchStart.bind(this);\r\n this.onTouchMove = this.onTouchMove.bind(this);\r\n this.onTouchEnd = this.onTouchEnd.bind(this);\r\n this.onWheel = this.onWheel.bind(this);\r\n this.bind();\r\n}\r\n\r\nEmitter(Rotator.prototype);\r\n\r\nRotator.prototype.scroll = function (n) {\r\n if (this._scroll === n) return this;\r\n this._scroll = n;\r\n\r\n if (this._scroll) {\r\n wheel.bind(this.el, this.onWheel);\r\n } else {\r\n wheel.unbind(this.el, this.onWheel);\r\n }\r\n\r\n return this;\r\n};\r\n\r\nRotator.prototype.vertical = function (n) {\r\n this._vertical = n;\r\n return this;\r\n};\r\n\r\nRotator.prototype.reverse = function (n) {\r\n this._reverse = n;\r\n return this;\r\n};\r\n\r\nRotator.prototype.cycle = function (n) {\r\n this._cycle = n;\r\n return this;\r\n};\r\n\r\nRotator.prototype.interval = function (ms) {\r\n this._interval = ms;\r\n return this;\r\n};\r\n\r\nRotator.prototype.start = function (n) {\r\n const children = this.children();\r\n this.el.style.position = 'relative';\r\n this.el.style.width = '100%';\r\n\r\n for (let child of children) {\r\n child.style.display = 'none';\r\n child.style.width = '100%';\r\n }\r\n\r\n this.moving(n);\r\n return this;\r\n};\r\n\r\nRotator.prototype.play = function (n) {\r\n if (this.timer) return;\r\n const self = this;\r\n n = parseInt(n);\r\n\r\n function timer() {\r\n if (n === undefined || n > self.current) self.next();\r\n if (n < self.current) self.prev();\r\n\r\n if (n === self.current) self.stop();\r\n }\r\n\r\n this.timer = setInterval(timer, this._interval);\r\n return this;\r\n};\r\n\r\nRotator.prototype.stop = function () {\r\n clearInterval(this.timer);\r\n this.timer = null;\r\n return this;\r\n};\r\n\r\nRotator.prototype.prev = function () {\r\n return this.moving(this.current - 1);\r\n};\r\n\r\nRotator.prototype.next = function () {\r\n return this.moving(this.current + 1);\r\n};\r\n\r\nvar changeTimer;\r\nRotator.prototype.moving = function (n) {\r\n const children = this.children();\r\n if (children && children.length > 0) {\r\n const len = children.length - 1;\r\n if (n < 0) n = this._cycle ? n + len : 0;\r\n if (n > len - 1) n = this._cycle ? n - len : len - 1;\r\n children[this.current].style.display = 'none';\r\n children[n].style.display = 'block';\r\n if (n !== this.current) {\r\n this.emit('moving', n, len);\r\n const that = this;\r\n clearTimeout(changeTimer);\r\n changeTimer = setTimeout(function () {\r\n that.emit('moveEnd', n, children[n]);\r\n }, 1000);\r\n }\r\n this.current = n;\r\n }\r\n\r\n return this;\r\n};\r\n\r\nRotator.prototype.bind = function () {\r\n this.el.addEventListener('touchstart', this.onTouchStart, false);\r\n this.el.addEventListener('touchmove', this.onTouchMove, false);\r\n this.el.addEventListener('touchend', this.onTouchEnd, false);\r\n this.el.addEventListener('mousedown', this.onTouchStart, false);\r\n this.el.addEventListener('mousemove', this.onTouchMove, false);\r\n document.addEventListener('mouseup', this.onTouchEnd, false);\r\n if (this._scroll) wheel.bind(this.el, this.onWheel);\r\n};\r\n\r\nRotator.prototype.unbind = function () {\r\n this.el.removeEventListener('touchstart', this.onTouchStart, false);\r\n this.el.removeEventListener('touchmove', this.onTouchMove, false);\r\n this.el.removeEventListener('touchend', this.onTouchEnd, false);\r\n this.el.removeEventListener('mousedown', this.onTouchStart, false);\r\n this.el.removeEventListener('mousemove', this.onTouchMove, false);\r\n document.removeEventListener('mouseup', this.onTouchEnd, false);\r\n if (this._scroll) wheel.unbind(this.el, this.onWheel);\r\n};\r\n\r\nRotator.prototype.onTouchStart = function (event) {\r\n if (this.timer) this.stop();\r\n event.preventDefault();\r\n this.touch = this.getTouch(event);\r\n this.currentTouched = this.current;\r\n};\r\n\r\nRotator.prototype.onTouchMove = function (event) {\r\n if (typeof this.touch !== 'number') return;\r\n event.preventDefault();\r\n const touch = this.getTouch(event);\r\n const len = this.children().length;\r\n const max = this.el[this._vertical ? 'clientHeight' : 'clientWidth'];\r\n let offset = touch - this.touch;\r\n offset = this._reverse ? -offset : offset;\r\n offset = Math.floor(offset / max * len);\r\n this.emit('dragging', offset);\r\n\r\n this.moving(this.currentTouched + offset);\r\n};\r\n\r\nRotator.prototype.onTouchEnd = function (event) {\r\n if (typeof this.touch !== 'number') return;\r\n event.preventDefault();\r\n this.emit('dragEnd', this.current);\r\n this.touch = null;\r\n};\r\n\r\nRotator.prototype.onWheel = function (event) {\r\n if (this.timer) this.stop();\r\n event.preventDefault();\r\n let delta = event.deltaY || event.detail || (-event.wheelDelta);\r\n delta = delta !== 0 ? delta / Math.abs(delta) : delta;\r\n delta = this._reverse ? -delta : delta;\r\n this[delta > 0 ? 'next' : 'prev']();\r\n};\r\n\r\nRotator.prototype.children = function () {\r\n const nodes = this.el.childNodes;\r\n const elements = [];\r\n\r\n for (let node of nodes) {\r\n if (node.nodeType === 1) elements.push(node);\r\n }\r\n\r\n return elements;\r\n};\r\n\r\nRotator.prototype.getTouch = function (event) {\r\n event = /^touch/.test(event.type) ? event.changedTouches[0] : event;\r\n\r\n return this._vertical ?\r\n event.clientY - this.el.offsetTop :\r\n event.clientX - this.el.offsetLeft;\r\n};","\r\n/**\r\n * Expose `Emitter`.\r\n */\r\n\r\nif (typeof module !== 'undefined') {\r\n module.exports = Emitter;\r\n}\r\n\r\n/**\r\n * Initialize a new `Emitter`.\r\n *\r\n * @api public\r\n */\r\n\r\nfunction Emitter(obj) {\r\n if (obj) return mixin(obj);\r\n};\r\n\r\n/**\r\n * Mixin the emitter properties.\r\n *\r\n * @param {Object} obj\r\n * @return {Object}\r\n * @api private\r\n */\r\n\r\nfunction mixin(obj) {\r\n for (var key in Emitter.prototype) {\r\n obj[key] = Emitter.prototype[key];\r\n }\r\n return obj;\r\n}\r\n\r\n/**\r\n * Listen on the given `event` with `fn`.\r\n *\r\n * @param {String} event\r\n * @param {Function} fn\r\n * @return {Emitter}\r\n * @api public\r\n */\r\n\r\nEmitter.prototype.on =\r\nEmitter.prototype.addEventListener = function(event, fn){\r\n this._callbacks = this._callbacks || {};\r\n (this._callbacks['$' + event] = this._callbacks['$' + event] || [])\r\n .push(fn);\r\n return this;\r\n};\r\n\r\n/**\r\n * Adds an `event` listener that will be invoked a single\r\n * time then automatically removed.\r\n *\r\n * @param {String} event\r\n * @param {Function} fn\r\n * @return {Emitter}\r\n * @api public\r\n */\r\n\r\nEmitter.prototype.once = function(event, fn){\r\n function on() {\r\n this.off(event, on);\r\n fn.apply(this, arguments);\r\n }\r\n\r\n on.fn = fn;\r\n this.on(event, on);\r\n return this;\r\n};\r\n\r\n/**\r\n * Remove the given callback for `event` or all\r\n * registered callbacks.\r\n *\r\n * @param {String} event\r\n * @param {Function} fn\r\n * @return {Emitter}\r\n * @api public\r\n */\r\n\r\nEmitter.prototype.off =\r\nEmitter.prototype.removeListener =\r\nEmitter.prototype.removeAllListeners =\r\nEmitter.prototype.removeEventListener = function(event, fn){\r\n this._callbacks = this._callbacks || {};\r\n\r\n // all\r\n if (0 == arguments.length) {\r\n this._callbacks = {};\r\n return this;\r\n }\r\n\r\n // specific event\r\n var callbacks = this._callbacks['$' + event];\r\n if (!callbacks) return this;\r\n\r\n // remove all handlers\r\n if (1 == arguments.length) {\r\n delete this._callbacks['$' + event];\r\n return this;\r\n }\r\n\r\n // remove specific handler\r\n var cb;\r\n for (var i = 0; i < callbacks.length; i++) {\r\n cb = callbacks[i];\r\n if (cb === fn || cb.fn === fn) {\r\n callbacks.splice(i, 1);\r\n break;\r\n }\r\n }\r\n\r\n // Remove event specific arrays for event types that no\r\n // one is subscribed for to avoid memory leak.\r\n if (callbacks.length === 0) {\r\n delete this._callbacks['$' + event];\r\n }\r\n\r\n return this;\r\n};\r\n\r\n/**\r\n * Emit `event` with the given args.\r\n *\r\n * @param {String} event\r\n * @param {Mixed} ...\r\n * @return {Emitter}\r\n */\r\n\r\nEmitter.prototype.emit = function(event){\r\n this._callbacks = this._callbacks || {};\r\n\r\n var args = new Array(arguments.length - 1)\r\n , callbacks = this._callbacks['$' + event];\r\n\r\n for (var i = 1; i < arguments.length; i++) {\r\n args[i - 1] = arguments[i];\r\n }\r\n\r\n if (callbacks) {\r\n callbacks = callbacks.slice(0);\r\n for (var i = 0, len = callbacks.length; i < len; ++i) {\r\n callbacks[i].apply(this, args);\r\n }\r\n }\r\n\r\n return this;\r\n};\r\n\r\n/**\r\n * Return array of callbacks for `event`.\r\n *\r\n * @param {String} event\r\n * @return {Array}\r\n * @api public\r\n */\r\n\r\nEmitter.prototype.listeners = function(event){\r\n this._callbacks = this._callbacks || {};\r\n return this._callbacks['$' + event] || [];\r\n};\r\n\r\n/**\r\n * Check if this emitter has `event` handlers.\r\n *\r\n * @param {String} event\r\n * @return {Boolean}\r\n * @api public\r\n */\r\n\r\nEmitter.prototype.hasListeners = function(event){\r\n return !! this.listeners(event).length;\r\n};\r\n","var bind = window.addEventListener ? 'addEventListener' : 'attachEvent',\n unbind = window.removeEventListener ? 'removeEventListener' : 'detachEvent',\n prefix = bind !== 'addEventListener' ? 'on' : '';\n\n/**\n * Bind `el` event `type` to `fn`.\n *\n * @param {Element} el\n * @param {String} type\n * @param {Function} fn\n * @param {Boolean} capture\n * @return {Function}\n * @api public\n */\n\nexports.bind = function(el, type, fn, capture){\n el[bind](prefix + type, fn, capture || false);\n return fn;\n};\n\n/**\n * Unbind `el` event `type`'s callback `fn`.\n *\n * @param {Element} el\n * @param {String} type\n * @param {Function} fn\n * @param {Boolean} capture\n * @return {Function}\n * @api public\n */\n\nexports.unbind = function(el, type, fn, capture){\n el[unbind](prefix + type, fn, capture || false);\n return fn;\n};","\n'use strict';\n\n/**\n * Module dependencies\n */\n\ntry {\n var events = require('event');\n} catch (err) {\n var events = require('component-event');\n}\n\n/**\n * Wheel events\n */\n\nvar wheelEventsMap = [\n 'wheel',\n 'mousewheel',\n 'scroll',\n 'DOMMouseScroll'\n];\n\n/**\n * Wheel event name\n */\n\nvar wheelEvent = 'mousewheel';\n\nif (window.addEventListener) {\n for (var e = 0; e < wheelEventsMap.length; e++) {\n if ('on' + wheelEventsMap[e] in window) {\n wheelEvent = wheelEventsMap[e];\n break;\n }\n }\n}\n\n/**\n * Expose bind\n */\n\nmodule.exports = bind.bind = bind;\n\n/**\n * Bind\n *\n * @param {Element} element\n * @param {Function} fn\n * @param {Boolean} capture\n * @return {Function}\n * @api public\n */\n\n\nfunction bind(element, fn, capture) {\n return events.bind(element, wheelEvent, fn, capture || false);\n}\n\n/**\n * Expose unbind\n *\n * @param {Element} element\n * @param {Function} fn\n * @param {Boolean} capture\n * @return {Function}\n * @api public\n */\n\nmodule.exports.unbind = function(element, fn, capture) {\n return events.unbind(element, wheelEvent, fn, capture || false);\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","/*************************************************/\r\n/* Partials */\r\n/*************************************************/\r\nimport Rotator from \"./partials/clientiRotator.js\";\r\n\r\n/*************************************************/\r\n/* Init */\r\n/*************************************************/\r\nconst rotatorElementsSelector = '.rotate-image__images';\r\nconst poiTriggerElementSelector = '.rotate-image__list-item';\r\nconst poiTriggerElementParentSelector = '.rotate-image__inner-list';\r\n\r\nlet rotators = [];\r\nconst ready = callback => {\r\n if (document.readyState != 'loading') callback();\r\n else document.addEventListener('DOMContentLoaded', callback);\r\n}\r\n\r\nready(() => {\r\n //Magic\r\n const rotatorElements = document.querySelectorAll(rotatorElementsSelector);\r\n if (rotatorElements) {\r\n rotatorElements.forEach(element => {\r\n const rotator = {\r\n 'Id': element.id,\r\n 'Rotator': Rotator(element)\r\n .interval(10)\r\n .reverse(true)\r\n .on(\"dragEnd\", (n) => {\r\n const vm = rotator;\r\n let reverse = true;\r\n const goal = n;\r\n const poisElements = [...element.closest(\".rotate-image__inner \").querySelectorAll(\".rotate-image__list-item\")];\r\n const pois = poisElements.map((x) => x.dataset.poiValue);\r\n if (vm.dragDirection == \"left\") {\r\n reverse = false;\r\n }\r\n \r\n var closest = pois.reduce(function (prev, curr) {\r\n return Math.abs(curr - goal) < Math.abs(prev - goal) ? curr : prev;\r\n });\r\n vm.currentPoi = pois.find((x) => x == closest);\r\n\r\n vm.Rotator.reverse(reverse);\r\n vm.Rotator.play(closest);\r\n vm.Rotator.reverse(true);\r\n })\r\n };\r\n rotators.push(rotator);\r\n });\r\n }\r\n\r\n const poiTriggerElements = document.querySelectorAll(poiTriggerElementSelector);\r\n if (poiTriggerElements) {\r\n poiTriggerElements.forEach(trigger => {\r\n trigger.addEventListener('click', e => {\r\n poiTriggerElements.forEach(poi => {\r\n poi.classList.remove(\"active-poi\");\r\n })\r\n const rotatorId = trigger.closest(poiTriggerElementParentSelector).dataset.rotatorId;\r\n const poiValue = trigger.dataset.poiValue;\r\n const rotator = rotators.find(x => x.Id == rotatorId).Rotator;\r\n\r\n trigger.classList.add(\"active-poi\");\r\n\r\n rotator.reverse(false);\r\n rotator.play(poiValue);\r\n rotator.reverse(true);\r\n\r\n return false;\r\n });\r\n });\r\n }\r\n\r\n});"],"names":["changeTimer","Emitter","require","wheel","Rotator","el","this","document","querySelector","current","cycle","interval","start","onTouchStart","bind","onTouchMove","onTouchEnd","onWheel","module","exports","prototype","scroll","n","_scroll","unbind","vertical","_vertical","reverse","_reverse","_cycle","ms","_interval","children","style","position","width","child","display","moving","play","timer","self","parseInt","setInterval","undefined","next","prev","stop","clearInterval","length","len","emit","that","clearTimeout","setTimeout","addEventListener","removeEventListener","event","preventDefault","touch","getTouch","currentTouched","max","offset","Math","floor","delta","deltaY","detail","wheelDelta","abs","elements","childNodes","node","nodeType","push","test","type","changedTouches","clientY","offsetTop","clientX","offsetLeft","obj","key","mixin","on","fn","_callbacks","once","off","apply","arguments","removeListener","removeAllListeners","cb","callbacks","i","splice","args","Array","slice","listeners","hasListeners","window","prefix","capture","events","err","wheelEventsMap","wheelEvent","e","element","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","getter","__esModule","d","a","definition","o","Object","defineProperty","enumerable","get","prop","hasOwnProperty","call","callback","rotators","rotatorElements","querySelectorAll","forEach","rotator","id","vm","goal","pois","closest","map","x","dataset","poiValue","dragDirection","reduce","curr","currentPoi","find","poiTriggerElements","trigger","poi","classList","remove","rotatorId","Id","add","readyState"],"sourceRoot":""}