{"version":3,"file":"countDown-built.js","mappings":"mBA4BA,SAASA,EACLC,EACAC,GAIF,IAHEC,IAGF,yDAFEC,EAEF,uDAFgC,GAC9BC,EACF,wDACQC,EAAmBC,EAAEN,GAE3B,GAAgC,IAA5BK,EAAiBE,OAIrB,IAAMC,EAAWH,EAAiBI,KAAK,iBAEjCC,EAAIC,aAAY,WAClB,IAAMC,GAAM,IAAIC,MAAOC,UAGjBC,EAAgBP,EAAWI,EAG3BI,EAAQC,KAAKC,MACdH,EAAgB,MAAjB,MAEEI,EAAUF,KAAKC,MAChBH,EAAgB,KAAjB,KAEEK,EAAUH,KAAKC,MAAOH,EAAgB,IAAe,KAGvDM,GACCL,EAAQ,GAHA,IAGYA,EAAQA,IAC5BZ,EAAkB,IAAM,OACxBe,EAAU,GALF,IAKcA,EAAUA,IAChCf,EAAkB,IAAM,OACxBgB,EAAU,GAPF,IAOcA,EAAUA,IAChChB,EAAkB,GAAK,KAE5B,GAAIF,EAAS,CACT,IAAMoB,EAAOL,KAAKC,MAAMH,EAAgB,OACxCM,GAAoBC,EAAO,EAAIA,EAAO,KAAO,IAAMD,CACtD,CAMD,GAHAhB,EAAiBkB,KAAKF,GAGlBN,EAAgB,EAAG,CAGnB,GAFAS,cAAcd,GAEsB,KAAhCP,EAEA,YADAE,EAAiBkB,KAAKtB,GAI1BK,EAAEH,GAA6BoB,KAAKtB,EACvC,CACJ,GAAE,GACN,CA9EDF,EAAgB,oBAAqB,uCACrCA,EAAgB,qBAAsB,gBACtCA,EAAgB,qBAAsB,gBACtCA,EACI,uBACA,wCACA,EACA,mBACA,E","sources":["webpack://modz/./src/Layout/countDown.js"],"sourcesContent":["'use strict'\r\n\r\n/**\r\n * Composant Count Down dans les partials\r\n *\r\n * Doc : https://www.w3schools.com/howto/howto_js_countdown.asp\r\n */\r\n\r\n// Appels des différents compteurs\r\nhandleCountDown('#j_countdown_jhms', \"Dommage, l'offre n'est plus valable\")\r\nhandleCountDown('#j_countdown_jhms2', '00h 00m 00s.')\r\nhandleCountDown('#j_countdown_jhms3', '00h 00m 00s.')\r\nhandleCountDown(\r\n '#j_countdown_digital',\r\n 'Article expédié en 24h',\r\n false,\r\n '.j_libcountdown',\r\n true\r\n)\r\n\r\n/**\r\n * Méthode qui gère la mise à jour du count down\r\n * @param {string} selector Sélecteur CSS du count down\r\n * @param {string} endingMessage Message de fin de count down\r\n * @param {boolean} hasDays Si le count down affiche des jours\r\n * @param {string} endMessageContainerSelector Sélecteur CSS pour le message de fin\r\n * @param {boolean} hasLigthDisplay Affichage sans h et m\r\n */\r\nfunction handleCountDown(\r\n selector,\r\n endingMessage,\r\n hasDays = true,\r\n endMessageContainerSelector = '',\r\n hasLigthDisplay = false\r\n) {\r\n const countDownElement = $(selector)\r\n\r\n if (countDownElement.length === 0) {\r\n return\r\n }\r\n\r\n const deadline = countDownElement.attr('data-deadline')\r\n\r\n const x = setInterval(function () {\r\n const now = new Date().getTime()\r\n\r\n // Temps restant\r\n const remainingTime = deadline - now\r\n\r\n // Calculs des jours, heures, minutes et secondes\r\n const hours = Math.floor(\r\n (remainingTime % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)\r\n )\r\n const minutes = Math.floor(\r\n (remainingTime % (1000 * 60 * 60)) / (1000 * 60)\r\n )\r\n const seconds = Math.floor((remainingTime % (1000 * 60)) / 1000)\r\n const zero = '0'\r\n\r\n let countDownContent =\r\n (hours < 10 ? zero + hours : hours) +\r\n (hasLigthDisplay ? ':' : 'h ') +\r\n (minutes < 10 ? zero + minutes : minutes) +\r\n (hasLigthDisplay ? ':' : 'm ') +\r\n (seconds < 10 ? zero + seconds : seconds) +\r\n (hasLigthDisplay ? '' : 's')\r\n\r\n if (hasDays) {\r\n const days = Math.floor(remainingTime / (1000 * 60 * 60 * 24))\r\n countDownContent = (days > 0 ? days + 'j ' : '') + countDownContent\r\n }\r\n\r\n // Affichage du temps restant\r\n countDownElement.html(countDownContent)\r\n\r\n // If the count down is finished, write some text\r\n if (remainingTime < 0) {\r\n clearInterval(x)\r\n\r\n if (endMessageContainerSelector === '') {\r\n countDownElement.html(endingMessage)\r\n return\r\n }\r\n\r\n $(endMessageContainerSelector).html(endingMessage)\r\n }\r\n }, 10)\r\n}\r\n"],"names":["handleCountDown","selector","endingMessage","hasDays","endMessageContainerSelector","hasLigthDisplay","countDownElement","$","length","deadline","attr","x","setInterval","now","Date","getTime","remainingTime","hours","Math","floor","minutes","seconds","countDownContent","days","html","clearInterval"],"sourceRoot":""}