{"version":3,"file":"chunk.3331.a57caad68d2c4c06db7f.70e19e31.js","mappings":"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","sources":["webpack:///./app/assets/javascripts/site/VControllers/DiscountTimer/App.tsx"],"sourcesContent":["import { h, Component } from 'preact';\nexport class App extends Component {\n constructor() {\n super(...arguments);\n this.state = {\n days: 0,\n hours: 0,\n minutes: 0,\n seconds: 0\n };\n this.updateTimeRemaining = () => {\n const { startsAt, expiresAt } = this.props;\n const startDate = new Date(startsAt);\n const endDate = new Date(expiresAt);\n const now = new Date();\n let timeRemaining = 0;\n if (now < startDate) {\n timeRemaining = Number(startDate) - Number(now);\n }\n else if (now >= startDate && now <= endDate) {\n timeRemaining = Number(endDate) - Number(now);\n }\n if (timeRemaining > 0) {\n this.setState(this.calculateTimeUnits(timeRemaining));\n }\n else {\n clearInterval(this.timerInterval);\n this.setState({\n days: 0,\n hours: 0,\n minutes: 0,\n seconds: 0\n });\n }\n };\n }\n componentDidMount() {\n this.updateTimeRemaining();\n this.timerInterval = setInterval(this.updateTimeRemaining, 1000);\n }\n componentWillUnmount() {\n clearInterval(this.timerInterval);\n }\n calculateTimeUnits(ms) {\n const totalSeconds = Math.floor(ms / 1000);\n const days = Math.floor(totalSeconds / 86400);\n const hours = Math.floor((totalSeconds % 86400) / 3600);\n const minutes = Math.floor((totalSeconds % 3600) / 60);\n const seconds = totalSeconds % 60;\n return { days, hours, minutes, seconds };\n }\n render() {\n const { days, hours, minutes, seconds } = this.state;\n if (this.props.type === 'discountTimer-product')\n return (h(\"div\", { class: 'b-flat-DiscountTimer' },\n h(\"div\", { class: 'b-flat-DiscountTimer_Item __product' },\n h(\"span\", null, days),\n h(\"span\", { class: 'b-flat-DiscountTimer_ItemWrapper __product' }, \"\\u0434\\u043D\\u0438\")),\n h(\"span\", { class: 'b-flat-DiscountTimer_Splitter' }, \":\"),\n h(\"div\", { class: 'b-flat-DiscountTimer_Item __product' },\n h(\"span\", null, hours),\n h(\"span\", { class: 'b-flat-DiscountTimer_ItemWrapper __product' }, \"\\u0447\\u0430\\u0441\\u044B\")),\n h(\"span\", { class: 'b-flat-DiscountTimer_Splitter' }, \":\"),\n h(\"div\", { class: 'b-flat-DiscountTimer_Item __product' },\n h(\"span\", null, minutes),\n h(\"span\", { class: 'b-flat-DiscountTimer_ItemWrapper __product' }, \"\\u043C\\u0438\\u043D\")),\n h(\"span\", { class: 'b-flat-DiscountTimer_Splitter' }, \":\"),\n h(\"div\", { class: 'b-flat-DiscountTimer_Item __product' },\n h(\"span\", null, seconds),\n h(\"span\", { class: 'b-flat-DiscountTimer_ItemWrapper __product' }, \"\\u0441\\u0435\\u043A\"))));\n else if (this.props.type === 'discountTimer-teaser')\n return (h(\"div\", { class: 'b-flat-DiscountTimer' },\n h(\"div\", { class: 'b-flat-DiscountTimer_Item' },\n h(\"span\", null, days),\n h(\"span\", { class: 'b-flat-DiscountTimer_ItemWrapper' }, \"\\u0434\\u043D\\u0438\")),\n h(\"span\", { class: 'b-flat-DiscountTimer_Splitter' }, \":\"),\n h(\"div\", { class: 'b-flat-DiscountTimer_Item' },\n h(\"span\", null, hours),\n h(\"span\", { class: 'b-flat-DiscountTimer_ItemWrapper' }, \"\\u0447\\u0430\\u0441\\u044B\")),\n h(\"span\", { class: 'b-flat-DiscountTimer_Splitter' }, \":\"),\n h(\"div\", { class: 'b-flat-DiscountTimer_Item' },\n h(\"span\", null, minutes),\n h(\"span\", { class: 'b-flat-DiscountTimer_ItemWrapper' }, \"\\u043C\\u0438\\u043D\")),\n h(\"span\", { class: 'b-flat-DiscountTimer_Splitter' }, \":\"),\n h(\"div\", { class: 'b-flat-DiscountTimer_Item' },\n h(\"span\", null, seconds),\n h(\"span\", { class: 'b-flat-DiscountTimer_ItemWrapper' }, \"\\u0441\\u0435\\u043A\"))));\n else if (this.props.type === 'discountTimer-glass')\n return (h(\"div\", { class: 'b-glass-DiscountTimer' },\n h(\"p\", { class: 'b-glass-DiscountTimer_title' }, \"\\u0420\\u0430\\u0441\\u043F\\u0440\\u043E\\u0434\\u0430\\u0436\\u0430\"),\n h(\"div\", { class: 'b-glass-DiscountTimer_ItemWrapper' },\n h(\"span\", null, \"\\u041A\\u043E\\u043D\\u0435\\u0446 \\u0447\\u0435\\u0440\\u0435\\u0437\\u00A0 \"),\n h(\"div\", null,\n h(\"span\", null,\n \" \",\n days),\n \" : \",\n h(\"span\", null, hours),\n \" : \",\n h(\"span\", null, minutes),\n \" :\",\n h(\"span\", null,\n \" \",\n seconds)))));\n else\n return (h(\"div\", { class: 'b-DiscountTimer' },\n h(\"div\", { class: 'b-DiscountTimer_Item' },\n h(\"span\", null, days),\n h(\"span\", { class: 'b-DiscountTimer_ItemWrapper' }, \"\\u0434\\u043D\\u0438\")),\n h(\"span\", { class: 'b-DiscountTimer_Splitter' }, \":\"),\n h(\"div\", { class: 'b-DiscountTimer_Item' },\n h(\"span\", null, hours),\n h(\"span\", { class: 'b-DiscountTimer_ItemWrapper' }, \"\\u0447\\u0430\\u0441\\u044B\")),\n h(\"span\", { class: 'b-DiscountTimer_Splitter' }, \":\"),\n h(\"div\", { class: 'b-DiscountTimer_Item' },\n h(\"span\", null, minutes),\n h(\"span\", { class: 'b-DiscountTimer_ItemWrapper' }, \"\\u043C\\u0438\\u043D\")),\n h(\"span\", { class: 'b-DiscountTimer_Splitter' }, \":\"),\n h(\"div\", { class: 'b-DiscountTimer_Item' },\n h(\"span\", null, seconds),\n h(\"span\", { class: 'b-DiscountTimer_ItemWrapper' }, \"\\u0441\\u0435\\u043A\"))));\n }\n}\n"],"names":["App","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","apply","arguments","state","days","hours","minutes","seconds","updateTimeRemaining","_this$props","props","startsAt","expiresAt","startDate","Date","endDate","now","timeRemaining","Number","setState","calculateTimeUnits","clearInterval","timerInterval","key","value","this","setInterval","ms","totalSeconds","Math","floor","_this$state","type","h","class","Component"],"sourceRoot":""}