"use strict";(self.webpackChunkui=self.webpackChunkui||[]).push([[22],{68:(e,n,o)=>{o.d(n,{a:()=>d});var t=o(0),a=o(4),i=o(46),l=o(2),p=o(35),c=o(28),s=o(78);function d({couponExpiration:e,couponCheckbox:n,couponApplied:o}){var d,u;const{disableCheckbox:r,applyCoupon:h,timeLeft:b,status:v}=function({couponExpiration:e,couponCheckbox:n,couponApplied:o}){var t;const[a,i]=(0,l.useState)(o?"applied":"available"),p=Math.min(...0!==(null==n?void 0:n.countdown_minutes)?[Date.now()+1e3*(null!==(t=null==n?void 0:n.countdown_minutes)&&void 0!==t?t:0)*60]:[],...(null==n?void 0:n.countdown_timestamp)?[new Date(n.countdown_timestamp).getTime()]:[]),d=Math.round(((null!=e?e:p)-Date.now())/1e3),[u,{startCountdown:r}]=(0,s.a)({countStart:d});if(!n||(null==n?void 0:n.disable_checkbox)||u<=0)return{disableCheckbox:!0,timeLeft:0,status:"disabled",applyCoupon(){}};(0,l.useEffect)((()=>{if((null==n?void 0:n.countdown_minutes)||n.countdown_timestamp){if(!e){const e=new Date(p);(0,c.b)("__orly_checkbox_exp",e.toISOString())}r()}}),[]);return{disableCheckbox:!1,applyCoupon:()=>{function e(){i("available"),alert("There was an error applying coupon, please try again.")}"available"===a&&(i("pending"),fetch(`/discount/${null==n?void 0:n.coupon_code_to_apply}`).then((n=>{[200,301,302].includes(n.status)?((0,c.b)("__orly_checkbox_applied","applied"),i("applied")):e()})).catch((n=>{e()})))},timeLeft:u,status:a}}({couponExpiration:e,couponCheckbox:n,couponApplied:o}),x=(0,p.a)();return r?(0,t.jsx)(a.Fragment,{}):(0,t.jsxs)("div",{id:null==n?void 0:n.handle,class:i.a.coupon,onClick:e=>{h()},children:[(0,t.jsx)("div",{class:i.a.couponLabel,children:"COUPON"}),(0,t.jsxs)("div",{class:i.a.details,children:[(0,t.jsx)("input",{type:"checkbox",disabled:"applied"!==v&&(!x||"pending"===v),class:i.a.checkbox,checked:"applied"===v,onClick:e=>{e.preventDefault(),h()}}),(0,t.jsxs)("div",{children:[(0,t.jsx)("div",{class:i.a.text,dangerouslySetInnerHTML:{__html:"applied"===v?null!==(d=null==n?void 0:n.checked_message)&&void 0!==d?d:"":"pending"===v?"Coupon is being applied...":null!==(u=null==n?void 0:n.initial_message)&&void 0!==u?u:""}}),(0,t.jsx)("div",{class:i.a.expireTime,dangerouslySetInnerHTML:{__html:`${null==n?void 0:n.expires_message.replace("{countdown}",(e=>{const n=Math.floor(e/86400),o=Math.floor(e%86400/3600),t=Math.floor(e%3600/60),a=e%60;return`${n.toString().padStart(2,"0")}:${o.toString().padStart(2,"0")}:${t.toString().padStart(2,"0")}:${a.toString().padStart(2,"0")}`})(b))}`}})]})]})]})}}}]);