{"version":3,"sources":["webpack:///./src/js/modules/legacy/countdownClock.js"],"names":["Module","this","dom","header","el","querySelector","countdown","timerDays","timerHours","timerMinutes","timerSeconds","handleHour","handleMinute","handleSecond","openingDate","dataset","titleTimeover","a","split","s","timerDate","Date","timezoneOffsetMs","getTimezoneOffset","parseInt","mouseOver","watchStarted","setTimeout","initialize","window","setInterval","update","bind","getSecDiff","updateDayCounter","remove","innerHTML","currentTime","setSeconds","getSeconds","h","getHours","m","getMinutes","ms","getMilliseconds","hours","minutes","seconds","setHandle","element","angle","style","transform","e","t","n","r","calculate","formatNumber","days","getTime","calculateUnit","Math","floor","toString","Component"],"mappings":"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","file":"66.6bdfe075459a45961026.js","sourcesContent":["import { Component } from '@verndale/core';\n\nclass Module extends Component {\n setupDefaults() {\n this.dom = {\n header: this.el.querySelector('.countdown-clock__header'),\n countdown: this.el.querySelector('.countdown-clock__timer'),\n timerDays: this.el.querySelector('.countdown-clock__timer-days'),\n timerHours: this.el.querySelector('.countdown-clock__timer-hours'),\n timerMinutes: this.el.querySelector('.countdown-clock__timer-minutes'),\n timerSeconds: this.el.querySelector('.countdown-clock__timer-seconds'),\n handleHour: this.el.querySelector('.countdown-clock__handle--hour'),\n handleMinute: this.el.querySelector('.countdown-clock__handle--minute'),\n handleSecond: this.el.querySelector('.countdown-clock__handle--second')\n };\n\n const { openingDate } = this.el.dataset;\n this.titleTimeover = this.el.dataset.titleTimeover;\n const a = openingDate.split('TZ');\n const s = a[0].split(/\\D/);\n this.timerDate = new Date(s[0], --s[1], s[2], s[3], s[4]);\n this.timezoneOffsetMs =\n 1e3 * (60 * new Date().getTimezoneOffset() + 3600 * parseInt(a[1]));\n this.mouseOver = false;\n this.watchStarted = false;\n\n setTimeout(this.initialize(), 500);\n }\n\n initialize() {\n window.setInterval(this.update.bind(this), 100);\n\n if (this.getSecDiff() >= 0) {\n this.updateDayCounter();\n window.setInterval(this.updateDayCounter.bind(this), 100);\n } else {\n this.dom.countdown.remove();\n this.dom.header.innerHTML = this.titleTimeover;\n }\n }\n\n update() {\n const currentTime = new Date();\n if (!this.watchStarted) {\n currentTime.setSeconds(currentTime.getSeconds() + 1);\n }\n const h = currentTime.getHours();\n const m = currentTime.getMinutes();\n const s = currentTime.getSeconds();\n const ms = currentTime.getMilliseconds();\n const hours = 360 * (((h % 12) + m / 60) / 12);\n const minutes = 6 * (m + (s + ms * 0.001) / 60);\n const seconds = 6 * (s + ms * 0.001);\n\n this.setHandle(this.dom.handleHour, hours);\n this.setHandle(this.dom.handleMinute, minutes);\n this.setHandle(this.dom.handleSecond, seconds);\n\n this.watchStarted = true;\n }\n\n setHandle(element, angle) {\n element.style.transform = `rotate(${angle}deg)`;\n }\n\n updateDayCounter() {\n let e,\n t = 0,\n n = 0,\n r = 0,\n s = 0;\n const a = this.getSecDiff();\n\n if (a > 0) {\n e = this.calculate(a);\n t = this.formatNumber(e.days);\n n = this.formatNumber(e.hours);\n r = this.formatNumber(e.minutes);\n s = this.formatNumber(e.seconds);\n\n this.dom.timerDays.innerHTML = t;\n this.dom.timerHours.innerHTML = n;\n this.dom.timerMinutes.innerHTML = r;\n this.dom.timerSeconds.innerHTML = s;\n }\n\n if (this.getSecDiff() < 0) {\n this.dom.countdown.remove();\n this.dom.header.innerHTML = this.titleTimeover;\n }\n }\n\n getSecDiff() {\n return (\n (this.timerDate.getTime() -\n new Date().getTime() -\n this.timezoneOffsetMs) /\n 1e3\n );\n }\n\n calculate(e) {\n const t = this.calculateUnit(e, 86400, 0);\n const n = this.calculateUnit(e - 86400 * t, 3600, 0);\n const r = this.calculateUnit(e - 86400 * t - 3600 * n, 60, 0);\n const s = this.calculateUnit(e - 86400 * t - 3600 * n - 60 * r, 1, 0);\n\n return { days: t, hours: n, minutes: r, seconds: s };\n }\n\n calculateUnit(e, t, n) {\n return t > e ? n : Math.floor(e / t);\n }\n\n formatNumber(e) {\n if (e < 10) {\n return `0${e.toString()}`;\n }\n return e.toString();\n }\n}\n\nexport default Module;\n"],"sourceRoot":""}