"use strict";(self.webpackChunkui=self.webpackChunkui||[]).push([[20],{47:function(e,o,t){var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(o,"__esModule",{value:!0}),o.CouponCheckbox=function({couponExpiration:e,couponCheckbox:o,couponApplied:t}){const{disableCheckbox:n,applyCoupon:d,timeLeft:r,status:h}=function({couponExpiration:e,couponCheckbox:o,couponApplied:t}){var n;const[i,a]=(0,s.useState)(t?"applied":"available"),l=Date.now()+1e3*(null!==(n=null==o?void 0:o.countdown_minutes)&&void 0!==n?n:0)*60,u=Math.round(((null!=e?e:l)-Date.now())/1e3),[d,{startCountdown:r}]=(0,p.useCountdown)({countStart:u});if(!o||(null==o?void 0:o.disable_checkbox)||d<=0)return{disableCheckbox:!0,timeLeft:0,status:"disabled",applyCoupon(){}};(0,s.useEffect)((()=>{if(null==o?void 0:o.countdown_minutes){if(!e){const e=new Date(l);(0,c.setCookie)("__orly_checkbox_exp",e.toISOString())}r()}}),[]);return{disableCheckbox:!1,applyCoupon:()=>{function e(){a("available"),alert("There was an error applying coupon, please try again.")}"available"===i&&(a("pending"),fetch(`/discount/${null==o?void 0:o.coupon_code_to_apply}`).then((o=>{[200,301,302].includes(o.status)?((0,c.setCookie)("__orly_checkbox_applied","applied"),a("applied")):e()})).catch((o=>{e()})))},timeLeft:d,status:i}}({couponExpiration:e,couponCheckbox:o,couponApplied:t}),f=(0,u.useIsHydrated)();return n?(0,i.jsx)(a.Fragment,{}):(0,i.jsxs)("div",{class:l.default.coupon,onClick:e=>{d()},children:[(0,i.jsx)("div",{class:l.default.couponLabel,children:"COUPON"}),(0,i.jsxs)("div",{class:l.default.details,children:[(0,i.jsx)("input",{type:"checkbox",disabled:"applied"!==h&&(!f||"pending"===h),class:l.default.checkbox,checked:"applied"===h,onClick:e=>{e.preventDefault(),d()}}),(0,i.jsxs)("div",{children:[(0,i.jsx)("div",{class:l.default.text,children:"applied"===h?null==o?void 0:o.checked_message:"pending"===h?"Coupon is being applied...":null==o?void 0:o.initial_message}),(0,i.jsxs)("div",{class:l.default.expireTime,children:[null==o?void 0:o.expires_message," ",(e=>{const o=Math.floor(e/3600),t=Math.floor(e%3600/60),n=e%60;return`${o.toString().padStart(2,"0")}:${t.toString().padStart(2,"0")}:${n.toString().padStart(2,"0")}`})(r)]})]})]})]})};const i=t(0),a=t(3),l=n(t(54)),s=t(2),u=t(39),c=t(12),p=t(78)}}]);