{"version":3,"file":"chunks/f2d60f1e85bdbf.js","mappings":"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","sources":["webpack:///./resources/js/components/generic/reminder-popup.ts"],"sourcesContent":["import storage from \"../../utils/storage\";\nimport tracking from '../../utils/tracking';\n\nclass ReminderPopup {\n constructor(domRoot, params) {\n this.domRoot = domRoot;\n this.containerElement = domRoot;\n this.params = params;\n this.hasStopped = false;\n this.logic = params.logic;\n this.modalWidth = params.modalWidth;\n this.delay = Number(params.delay);\n this.behavior = params.behavior;\n this.transition = params.transition;\n this.countdownDate = new Date(this.params.countdownClock);\n this.cookieKey = params.cookieKey;\n this.cookieValue = params.cookieValue;\n this.cookieEquiv = params.cookieEquiv;\n this.includeCountdown = params.includeCountdown == \"yes\";\n this.labels = {\n day: params.labelDay,\n days: params.labelDays,\n hour: params.labelHour,\n hours: params.labelHours,\n minute: params.labelMinute,\n minutes: params.labelMinutes,\n second: params.labelSecond,\n seconds: params.labelSeconds\n }\n this.init();\n }\n\n init() {\n if (this.shouldReveal()) {\n if (this.behavior == \"modal\" || this.behavior == \"toaster\") {\n setTimeout(() => {\n let modalContainer = document.createElement('div');\n modalContainer.appendChild(this.domRoot);\n document.body.appendChild(modalContainer);\n this.containerElement = modalContainer;\n setTimeout(() => {\n this.domRoot.firstElementChild.style.bottom = 0;\n }, 100);\n this.domRoot.classList.remove('hide-all');\n this.domRoot.querySelector(\".reminder-outer\").focus();\n }, this.delay * 1000);\n } else {\n this.domRoot.classList.remove('hide-all');\n }\n }\n let clickCloses = Array.from(this.containerElement.querySelectorAll('.close-reminder-modal'));\n clickCloses.forEach(closer => {\n closer.addEventListener('click', () => {\n let multiplier = this.transition == \"immediate\" ? 0 : 1;\n this.domRoot.querySelector(\".reminder-outer\").classList.add('reverse-transition');\n setTimeout(() => {\n this.containerElement.classList.add('hide-all');\n this.hasStopped = true;\n tracking.trackEvent(\"clicked\", {\n event: \"clicked\",\n eventComponent: \"closeModalButton\"\n });\n }, multiplier * 500)\n })\n })\n if (this.includeCountdown) {\n this.runClock();\n }\n }\n\n runClock() {\n const countdownArea = this.containerElement.querySelector('.countdown-area');\n const countDownTime = this.countdownDate.getTime();\n let timeInterval = setInterval(() => {\n if (this.hasStopped) {\n clearInterval(timeInterval);\n }\n let now = Date.now();\n let timeLeft = countDownTime - now;\n if (timeLeft < 1) {\n timeLeft = 0;\n clearInterval(timeInterval);\n }\n let days = Math.floor(timeLeft / (1000 * 60 * 60 * 24));\n let hours = Math.floor((timeLeft % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));\n let minutes = Math.floor((timeLeft % (1000 * 60 * 60)) / (1000 * 60));\n let seconds = Math.floor((timeLeft % (1000 * 60)) / 1000);\n\n let countdownHTML = days > 0 ? this.timeUnit(days, 'day') : '';\n\n countdownHTML += this.timeUnit(hours, \"hour\") + this.timeUnit(minutes, \"minute\") + this.timeUnit(seconds, \"second\");\n countdownArea.innerHTML = countdownHTML;\n \n }, 1000);\n }\n\n timeUnit(amount, type) {\n let finalType = amount == 1 ? type : type + \"s\";\n return `