1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8660],{18660:(e,t,n)=>{n.r(t),n.d(t,{TimeSurface:()=>v});var i=n(39876),l=n(50754),r=n(22039),s=n(55070),a=n(14835),o=n(37620),c=n(95368),d=n(62458),u=n(80621),f=n(83528),m=n(78262),p=n(59944),h=n(19334),x=n(78819),y=n(64542);function g(){return(0,i.jsx)("svg",{className:"h-6 w-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2.5,"aria-hidden":"true",children:(0,i.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6 18L18 6M6 6l12 12"})})}function b(e){try{return(0,d.GP)((0,u.qg)(e,"HH:mm:ss",new Date),"h:mm a")}catch(t){return e}}function v(e){var t,n,v,w,j,T,N;let{props:k}=e,M=(0,m.f)(),{instanceId:_}=(0,p.f5)(),{applyFulfillment:O,fulfillment:H,scheduleWindows:E,isScheduled:A}=(0,l.Hq)(),{activeStore:S,isStoreOpen:C,activeChannelSettings:L,orderingMode:P}=(0,r.y)(),{menu:D}=(0,s.b)(),{cart:G}=(0,a._)(),q=(null==L?void 0:L.is_ordering_enabled)===!1,I=!C||q,B=null==(t=G.data)?void 0:t.eta,z=(null!=(T=E.data)?T:[]).filter(e=>!e.closed_all_day&&e.windows.length>0),W=E.isLoading,[F,R]=(0,c.useState)(null),[$,V]=(0,c.useState)(null),[X,J]=(0,c.useState)(!1),[K,Q]=(0,c.useState)(!1);(0,c.useEffect)(()=>{if(X||K)return;let e=H.schedule;if((null==e?void 0:e.date)&&(null==e?void 0:e.startTime)&&(null==e?void 0:e.endTime)){let t=e.date.split("T")[0];R(t),V({date:t,window:{start_time:e.startTime,end_time:e.endTime,wrap_around:!1}})}else R(z.length>0?z[0].date:null),V(null)},[X,null==(n=H.schedule)?void 0:n.date,null==(v=H.schedule)?void 0:v.startTime,null==(w=H.schedule)?void 0:w.endTime]),(0,c.useEffect)(()=>{z.length>0&&null===F&&R(z[0].date)},[z.length]);let U=null!=(N=null==(j=z.find(e=>e.date===F))?void 0:j.windows)?N:[];async function Y(){if(!$)return;J(!0);let e=await O({schedule:{type:"FIXED_TIME",date:$.date,startTime:$.window.start_time,endTime:$.window.end_time}});if(J(!1),"applied"===e.status){var t;let e=function(e){try{return(0,d.GP)((0,u.qg)(e,"yyyy-MM-dd",new Date),"EEE, MMM d")}catch(t){return e}}($.date);f.oR.success("Order day and time selected",{id:"schedule-selected",description:"".concat(e," \xb7 ").concat(b($.window.start_time))}),M.remove(_,{silent:!0}),null==(t=k.onScheduled)||t.call(k)}}async function Z(){Q(!0);let e=await O({schedule:{type:"ASAP"}});Q(!1),"applied"===e.status&&M.remove(_,{silent:!0})}return(0,i.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col",children:[(0,i.jsxs)("div",{className:"flex flex-shrink-0 items-center justify-between gap-3 px-6 pb-3 pt-6",children:[(0,i.jsx)(x.$,{variant:"chrome",size:"icon-lg",onClick:()=>M.pop(),"aria-label":"Close",children:(0,i.jsx)(g,{})}),(0,i.jsx)(h.A,{hidden:!0,children:"Schedule Order"}),(0,i.jsx)(x.$,{variant:"primary",size:"sm",onClick:Y,disabled:null===$,isLoading:X,loadingText:"Schedulingâ¦",className:"px-5",children:"Schedule"})]}),"CATERING"!==P&&(0,i.jsx)("div",{className:"flex-shrink-0 px-6 pb-4",children:(0,i.jsxs)("button",{type:"button","aria-pressed":!A&&!I,disabled:I||K||X,onClick:()=>{A?Z():M.pop()},className:"flex w-full items-center justify-between gap-3 rounded-full border px-5 py-3.5 text-left transition-colors duration-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand-accent disabled:cursor-not-allowed ".concat(A||I?"border-gray-200 bg-white hover:border-gray-300":"border-gray-900 bg-white"),children:[(0,i.jsx)("span",{className:"font-display text-base uppercase tracking-[-0.01em] ".concat(I?"text-gray-500":"text-gray-900"),children:"ASAP"}),(0,i.jsxs)("span",{className:"flex min-w-0 items-center gap-2.5",children:[(0,i.jsx)("span",{className:"truncate text-sm text-gray-600",children:I?q&&C?"Paused":"Currently closed":K?"Switchingâ¦":null!=B?"~".concat(B," min"):"Order now"}),!A&&!I&&(0,i.jsx)("span",{className:"flex h-5 w-5 flex-shrink-0 items-center justify-center rounded-full bg-black",children:(0,i.jsx)("svg",{className:"h-3 w-3 text-white",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:3,"aria-hidden":"true",children:(0,i.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M5 13l4 4L19 7"})})})]})]})}),W&&(0,i.jsx)("div",{className:"flex items-center justify-center py-16",children:(0,i.jsx)(y.y,{label:"Loading available times",className:"h-5 w-5"})}),!W&&0===z.length&&(0,i.jsxs)("div",{role:"status",className:"flex flex-col items-center justify-center gap-1.5 px-6 py-16 text-center",children:[(0,i.jsx)("p",{className:"font-display text-lg uppercase tracking-[-0.01em] text-gray-900",children:"This store isnât taking scheduled orders right now."}
1),S&&!S.is_open?(0,i.jsxs)("p",{className:"text-sm text-gray-600",children:["Itâs currently closed",(()=>{let e=(0,o.A)(D.data,S.timezone);return e?" â ".concat(e.charAt(0).toLowerCase()).concat(e.slice(1)):""})(),"."]}):(0,i.jsx)("p",{className:"text-sm text-gray-600",children:"Itâs open now â you can still order ASAP."})]}),!W&&z.length>0&&(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)("div",{className:"flex-shrink-0 pb-4",children:(0,i.jsx)("ul",{"aria-label":"Available dates",className:"flex gap-2 overflow-x-auto px-6",style:{scrollbarWidth:"none"},children:z.map(e=>{let t=F===e.date;return(0,i.jsx)("li",{className:"flex-shrink-0",children:(0,i.jsxs)("button",{type:"button","aria-pressed":t,onClick:()=>{R(e.date),V(null)},className:"flex h-16 w-14 flex-col items-center justify-center rounded-full transition-colors duration-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand-accent ".concat(t?"bg-black text-white":"bg-gray-100 text-gray-900 hover:bg-gray-200"),children:[(0,i.jsx)("span",{className:"text-[11px] font-medium uppercase tracking-[0.08em] ".concat(t?"text-white/80":"text-gray-600"),children:function(e){try{return(0,d.GP)((0,u.qg)(e,"yyyy-MM-dd",new Date),"EEE")}catch(t){return e}}(e.date)}),(0,i.jsx)("span",{className:"font-display text-lg leading-tight tracking-[-0.01em]",children:function(e){try{return(0,d.GP)((0,u.qg)(e,"yyyy-MM-dd",new Date),"d")}catch(t){return e}}(e.date)})]})},e.date)})})}),(0,i.jsx)("div",{className:"border-t border-gray-200 flex-shrink-0"}),(0,i.jsx)("div",{className:"overflow-y-auto flex-1 min-h-0",children:0===U.length?(0,i.jsx)("div",{className:"flex items-center justify-center py-12",children:(0,i.jsx)("p",{className:"text-sm text-gray-500",children:"No times available for this day."})}):(0,i.jsx)("ul",{role:"list","aria-label":"Available time slots",className:"grid grid-cols-2 gap-2 px-6 pb-6 pt-4",children:U.map(e=>{let t="".concat(F,"-").concat(e.start_time),n=(null==$?void 0:$.date)===F&&(null==$?void 0:$.window.start_time)===e.start_time;return(0,i.jsx)("li",{children:(0,i.jsxs)("button",{type:"button","aria-pressed":n,onClick:()=>V({date:F,window:e}),className:"w-full rounded-full border px-3 py-3 text-center text-sm font-medium transition-colors duration-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand-accent ".concat(n?"border-black bg-black text-white":"border-gray-200 bg-white text-gray-900 hover:border-gray-400"),children:[b(e.start_time)," â ",b(e.end_time)]})},t)})})})]})]})}},19334:(e,t,n)=>{n.d(t,{A:()=>a});var i=n(39876),l=n(9631),r=n(95368),s=n(41890);function a(e){let{children:t,asChild:n=!1,hidden:a=!1,className:o}=e,{backend:c,titleId:d}=(0,s.B)(),u=a?"sr-only":o;return"vaul"===c?(0,i.jsx)(l._s.Title,{asChild:n,className:u,children:t}):n&&(0,r.isValidElement)(t)?(0,r.cloneElement)(t,{id:d,className:[t.props.className,u].filter(Boolean).join(" ")||void 0}):(0,i.jsx)("h2",{id:d,className:u,children:t})}},37620:(e,t,n)=>{n.d(t,{A:()=>c});var i=n(66634),l=n(12729),r=n(62458),s=n(13299);function a(e){let t=(0,s.L_)(new Date,e);return 60*(0,i.a)(t,void 0).getHours()+(0,i.a)(t,void 0).getMinutes()}function o(e,t){let n=String(t).padStart(2,"0");return"".concat(e%12==0?12:e%12,":").concat(n).concat(e>=12?"PM":"AM")}function c(e,t){let n=function(e){if(!(null==e?void 0:e.hours))return null;let t=e.hours.flat().map(e=>({dayOffset:e.day_offset,openTimeHour:e.open_time.hour,openTimeMinute:e.open_time.minute,closeTimeHour:e.close_time.hour,closeTimeMinute:e.close_time.minute}));return t.length>0?t:null}(e);return n&&t?function(e,t){let n,i=function(e,t){let n;if(!e||0===e.length)return null;let i=[...e].sort((e,t)=>e.dayOffset!==t.dayOffset?e.dayOffset-t.dayOffset:e.openTimeHour!==t.openTimeHour?e.openTimeHour-t.openTimeHour:e.openTimeMinute-t.openTimeMinute),l=a(t);for(let e of i){let t=60*e.openTimeHour+e.openTimeMinute;if(0===e.dayOffset){if(t>l){n=e;break}}else{n=e;break}}if(!n&&i.length>0&&(n=i[0]),!n)return null;let r=60*n.openTimeHour+n.openTimeMinute,s=1440*n.dayOffset+(r-l);return s<0&&(s+=10080),s}(e,t);if(null===i||!e||0===e.length)return null;
1let c=[...e].sort((e,t)=>e.dayOffset!==t.dayOffset?e.dayOffset-t.dayOffset:e.openTimeHour!==t.openTimeHour?e.openTimeHour-t.openTimeHour:e.openTimeMinute-t.openTimeMinute),d=a(t),u=(0,s.L_)(new Date,t);for(let e of c){let t=60*e.openTimeHour+e.openTimeMinute;if(0===e.dayOffset){if(t>d){n=e;break}}else{n=e;break}}if(!n&&c.length>0&&(n=c[0]),!n)return null;let f=Math.floor(i/1440),m=f>=6&&n.dayOffset<f,p=m?n.dayOffset+7:n.dayOffset;if(i<=60)return"Opens ".concat(i,"m");if(0===n.dayOffset&&!m)return"Opens ".concat(o(n.openTimeHour,n.openTimeMinute));if(p<7){let e=(0,l.f)(u,p),t=(0,r.GP)(e,"EEE"),i=o(n.openTimeHour,n.openTimeMinute);return"Opens ".concat(t," ").concat(i)}let h=(0,l.f)(u,p),x=(0,r.GP)(h,"M/d"),y=o(n.openTimeHour,n.openTimeMinute);return"Opens ".concat(x," ").concat(y)}(n,t):null}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.