1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7722],{14376:(e,t,n)=>{"use strict";n.d(t,{A:()=>s});var l=n(37876),r=n(89033);function s(){let{t:e}=(0,r.Bd)();return(0,l.jsx)("div",{className:"px-3 py-1 text-right text-xs text-grey-40",children:(0,l.jsx)("a",{href:"https://www.openstreetmap.org/copyright",target:"_blank",rel:"noopener noreferrer",className:"hover:underline",children:e("map_data_attribution")})})}},29366:(e,t,n)=>{"use strict";n.d(t,{pI:()=>c,xs:()=>i});var l=n(80193),r=n(20596);(0,l.QE)("/maplibre/maplibre-gl-worker.mjs");let s={[r.TpE.Us]:{lng:-98.585522,lat:39.8333333},[r.TpE.Ca]:{lng:-97.631456,lat:55.079194},[r.TpE.Mx]:{lng:-102.5528,lat:23.6345},[r.TpE.Gb]:{lng:-3.436,lat:55.3781},[r.TpE.Au]:{lng:133.7751,lat:-25.2744},[r.TpE.Jp]:{lng:138.2529,lat:36.2048}},a={[r.TpE.Us]:3,[r.TpE.Ca]:2.5,[r.TpE.Mx]:4,[r.TpE.Gb]:5,[r.TpE.Au]:3,[r.TpE.Jp]:5},o=s[r.TpE.Us];function i(e,t){var n,l;return{center:null!=(n=s[e])?n:o,zoom:null!=(l=(t?{...a,...t}:a)[e])?l:3}}function c(e,t,n,r){let s=!1!==t.attributionControl,a={Map:l.T5,Marker:l.pH,Popup:l.zD,NavigationControl:l.ov,LngLatBounds:l.UH,style:"https://tiles.openfreemap.org/styles/liberty"},o=new a.Map({container:e,style:a.style,center:t.center,zoom:t.zoom,attributionControl:s});o.on("error",e=>{console.error("MapLibre failed:",e),null==r||r((null==e?void 0:e.error)||Error("MapLibre failed"))}),o.on("load",()=>{n(o,a)})}},70051:(e,t,n)=>{"use strict";n.r(t),n.d(t,{__N_SSG:()=>k,default:()=>C});var l=n(37876),r=n(56557),s=n.n(r),a=n(64301),o=n.n(a),i=n(71576),c=n.n(i),u=n(89033),d=n(77328),p=n.n(d),m=n(14232),f=n(78940),x=n(8267),g=n(14376),h=n(98942),b=n(46637),v=n(20596),w=n(29366),N=n(80213),y=n(50590);s().extend(c()),s().extend(o());let j={[v.TpE.Us]:2.5};function _(e){var t,n;let l=Number.parseFloat(null!=(t=e.longitude)?t:""),r=Number.parseFloat(null!=(n=e.latitude)?n:"");return Number.isFinite(l)&&Number.isFinite(r)?{lng:l,lat:r}:null}function E(e){var t,n;return null!=(n=null!=(t=e.storeId)?t:e.slug)?n:null}function M(e,t){var n;let l=null!=(n=e.distanceInMiles)?n:e.distance;return null==l?null:l>1e3?t("stores:num_thousand_miles_away_abbreviation",{num:(l/1e3).toFixed(1)}):t("stores:num_miles_away_abbreviation",{num:l.toFixed(1)})}function T(){return(0,l.jsx)("svg",{"aria-hidden":"true",className:"text-grey-20 size-5",viewBox:"0 0 20 20",fill:"none",children:(0,l.jsx)("path",{d:"M9.167 15.833a6.667 6.667 0 1 0 0-13.333 6.667 6.667 0 0 0 0 13.333ZM17.5 17.5l-3.625-3.625",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.6"})})}var k=!0;let C=function(e){let{allActiveStores:t}=e,{t:n}=(0,u.Bd)(),{geolocation:r,fetchGeolocation:a,loading:o}=(0,h.m)(),[i,c]=(0,m.useState)(""),[d,v]=(0,m.useState)(i),[k,C]=(0,m.useState)(!1),z=(0,m.useRef)(null),L=(0,m.useRef)(null),B=(0,m.useRef)(null),A=(0,m.useRef)([]),I=(0,m.useRef)(new Map),F=(0,m.useRef)(null),S=(0,m.useRef)(null),H=(0,m.useRef)(""),R=r&&"string"!=typeof r?r:null,{data:O,loading:P}=(0,b.Fi)({searchTerm:d,latitude:null==R?void 0:R.lat,longitude:null==R?void 0:R.lng}),U=(0,m.useMemo)(()=>{var e,t;return(null==O||null==(t=O.stores)||null==(e=t.publicStoreInfoSearch)?void 0:e.map(e=>({distanceInMiles:e.distanceInMiles,...e.store})))||[]},[O]);(0,m.useEffect)(()=>{let e=setTimeout(()=>{v(i)},500);return()=>{clearTimeout(e)}},[i]);let D=(0,m.useMemo)(()=>R?t.map(e=>({...e,distanceInMiles:function(e,t){let n=_(e);if(!n)return null;let l=e=>e*Math.PI/180,r=l(n.lat-t.lat),s=l(n.lng-t.lng),a=Math.sin(r/2)**2+Math.cos(l(t.lat))*Math.cos(l(n.lat))*Math.sin(s/2)**2;return 7917.6*Math.atan2(Math.sqrt(a),Math.sqrt(1-a))}(e,R)})).sort((e,t)=>{var n,l;return(null!=(n=e.distanceInMiles)?n:1/0)-(null!=(l=t.distanceInMiles)?l:1/0)}):t,[t,R]),G=(0,m.useMemo)(()=>((null==U?void 0:U.length)||0)>0?U:D,[D,U]),q=(0,m.useMemo)(()=>{var e;return null!=(e=null==G?void 0:G.filter(e=>e.isSellingSoda))?e:[]},[G]);(0,m.useEffect)(()=>{a()},[a]),(0,m.useEffect)(()=>{if(L.current||!z.current)return;let e=(0,N.o8)(),{center:t,zoom:n}=(0,w.xs)(e,j);return(0,w.pI)(z.current,{center:t,zoom:n,attributionControl:!1},(e,t)=>{e.addControl(new t.NavigationControl),L.current=e,B.current=t,C(!0)}),()=>{var e;null==(e=L.current)||e.remove(),L.current=null,B.current=null,C(!1)}},[]),(0,m.useEffect)(()=>{var e;if(!k||!L.current||!B.current||P)return;let t=B.current,l=q.map(e=>E(e)).join("|"),r=S.current,a=!!R||!!d&&!P&&q.length>0;if(null==(e=F.current)||e.remove(),F.current=null,I.current.clear(),A.current.forEach(e
1=>null==e?void 0:e.remove()),A.current=[],0===q.length){let e=(0,N.o8)(),{center:t,zoom:n}=(0,w.xs)(e,j);H.current="",S.current===r&&(S.current=null),L.current.flyTo({center:t,zoom:n});return}if(a&&l!==H.current){let e=_(q[0]);H.current=l,e&&L.current.flyTo({center:[e.lng,e.lat],zoom:8})}let o=()=>{let e,t=L.current;if(null==t?void 0:t.getBounds){try{e=t.getBounds()}catch(e){return}A.current.forEach(t=>{var n,l;let r=null==(n=t.getElement)?void 0:n.call(t),s=null==(l=t.getLngLat)?void 0:l.call(t);r&&s&&(r.tabIndex=e.contains([s.lng,s.lat])?0:-1)})}};return A.current=q.map(e=>{let l=_(e),a=E(e);if(!l||!a)return null;let o=document.createElement("button"),i=[e.name,e.city,e.state].filter(Boolean).join(", ");o.type="button",o.className="block h-16 w-16 rounded-full bg-contain bg-center bg-no-repeat",o.style.backgroundImage="url(".concat("/images/v2/sodas/soda-map-marker.png",")"),o.setAttribute("aria-label",i||n("stores:store"));let c=new t.Popup({offset:8,anchor:"top",maxWidth:"398px",closeButton:!1,closeOnClick:!0,focusAfterOpen:!1,className:"max-w-[calc(100vw-32px)]"});c.on("close",()=>{F.current===c&&(F.current=null)});let u=()=>{if(!L.current)return;F.current&&F.current!==c&&F.current.remove(),F.current=c,c.setDOMContent(function(e,t){var n,l,r,a,o;let i=document.createElement("div"),c=M(e,t),u=[e.city,e.state].filter(Boolean).join(", "),d=function(e,t,n,l,r){if(null==e||null==t||null==n||null==l)return"";let{dayOfWeek:a,formattedClosingTime:o,formattedOpeningTime:i,hasValidHours:c,isClosedToday:u,isOpen:d,nextOpeningAt:p,viewerTimeZone:m}=(0,y.SE)(n,l),f="SUN"===a,x="12 AM"===o,g=(()=>{if(e)return"<span><b>".concat(r("stores:temporarily_closed"),"</b></span>");if(f)return"<span><b>".concat(r("stores:closed"),"</b> ").concat(r("stores:on_sundays"),"</span>");if(u||!c)return"<span><b>".concat(r("stores:closed"),"</b></span>");if(!d){if(p){let e=p.tz(m),t=s()().tz(m),n=e.format("h A"),l=e.isSame(t,"day")?n:"".concat(e.format("dddd")," ").concat(r("stores:at")," ").concat(n);return"<span><b>".concat(r("stores:closed"),"</b>
1 ").concat(r("stores:until")," ").concat(l,"</span>")}return"<span><b>".concat(r("stores:closed"),"</b> ").concat(r("stores:until")," ").concat(i,"</span>")}return t?x?"<span><b>".concat(r("stores:open_late_caps")," ").concat(r("stores:until_midnight"),"</b></span>"):"<span><b>".concat(r("stores:open_late_caps")," ").concat(r("stores:until")," ").concat(o,"</b></span>"):""})();return g?'\n <div class="flex items-center pt-3">\n <div class="flex">\n <span class="inline-flex items-center -ml-[1px] py-[2px]">\n <span class="inline-flex pl-[8px] pr-[10px] items-center text-[13px] leading-[15px] '.concat(e?"bg-secondary":"bg-primary-light",' h-full rounded-l-sm italic">\n <span class="').concat(e?"":"bg-no-repeat bg-contain w-6 h-6 mr-2 ".concat(t?"bg-[url('/images/moon.svg')]":"bg-[url('/images/clock.svg')]"),'"></span>\n ').concat(g,'\n </span>\n <svg xmlns="http://www.w3.org/2000/svg" width="1em" height="100%" fill="none" viewBox="0 0 9 21" class="bg-white">\n <path fill="#').concat(e?"FCEBD9":"FFE6E5",'" d="M7.826 0H0v21h7.953a1 1 0 0 0 .789-1.615L1.429 10l7.156-8.35A1 1 0 0 0 7.825 0"/>\n </svg>\n </span>\n </div>\n </div>'):""}(e.temporarilyClosed,e.openLate,null==(n=e.storeHours)?void 0:n.periods,(null==(l=e.storeHours)?void 0:l.timezone)||"America/Boise",t);i.setAttribute("role","group"),i.setAttribute("aria-label",(null==(r=e.name)?void 0:r.trim())||t("stores:store")),i.className="_store-popup px-3 py-2 rounded-lg";let p=document.createElement("div");p.className="flex w-full justify-between border-b border-solid items-center pb-2 text-left";let m=document.createElement("span");if(m.className="font-semibold text-xl",m.textContent=null!=(a=e.name)?a:"",p.append(m),c){let e=document.createElement("span");e.className="ml-2 text-sm",e.textContent=c,p.append(e)}if(i.append(p),d){let e=document.createElement("div");e.className="store-hours-html",e.innerHTML=d,i.append(e)}let f=document.createElement("div");f.className="pt-3 flex text-sm",f.innerHTML="<div class=\"bg-[url('/images/store.svg')] bg-no-repeat bg-contain w-6 h-6 mr-2\"></div>";let x=document.createElement("div");x.textContent=[e.street,"".concat(u," ").concat(null!=(o=e.zip)?o:"").trim()].filter(Boolean).join("\n"),x.className="whitespace-pre-line",f.append(x),i.append(f);let g=document.createElement("div");g.className="py-3 flex items-center text-sm",g.innerHTML="<div class=\"bg-[url('/images/mobile.svg')] bg-no-repeat bg-contain w-6 h-6 mr-2\"></div>";let h=document.createElement("span");return h.textContent=e.phone||"No phone number registered",g.append(h),i.append(g),i}(e,n)),L.current.flyTo({center:[l.lng,l.lat],zoom:12});let t=()=>{!L.current||F.current!==c||c.isOpen()||c.setLngLat([l.lng,l.lat]).addTo(L.current)};L.current.once("moveend",t),window.setTimeout(t,500)};o.addEventListener("click",e=>{e.preventDefault(),e.stopPropagation(),window.setTimeout(u,0)}),o.addEventListener("focusin",()=>{let e,t=L.current;if(null==t?void 0:t.getBounds){try{e=t.getBounds()}catch(e){return}e.contains([l.lng,l.lat])||t.easeTo({center:[l.lng,l.lat],duration:450})}});let d=new t.Marker({element:o}).setLngLat([l.lng,l.lat]).addTo(L.current);return I.current.set(a,u),r===a&&window.setTimeout(u,0),d}).filter(e=>!!e),S.current===r&&(S.current=null),o(),L.current.on("moveend",o),L.current.on("zoomend",o),L.current.on("resize",o),()=>{var e,t,n;null==(e=L.current)||e.off("moveend",o),null==(t=L.current)||t.off("zoomend",o),null==(n=L.current)||n.off("resize",o)}},[d,q,R,k,P,n]);let J=(0,m.useCallback)(e=>{let t=E(e);if(!t)return;S.current=t;let n=I.current.get(t);n&&(S.current=null,n())},[]),W=P||o,X=q.slice(0,100);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(p(),{children:(0,l.jsx)("meta",{name:"robots",content:"noindex,nofollow"})}),(0,l.jsxs)("main",{className:"mx-auto flex h-dvh min-h-0 w-full max-w-[430px] flex-col gap-3 overflow-hidden bg-white p-2",children:[(0,l.jsx)("h1",{className:"sr-only",children:n("sodas:now_pouring_near_you")}),(0,l.jsxs)("div",{className:"flex h-[42dvh] min-h-[220px] shrink-0 flex-col",children:[(0,l.jsx)("div",{ref:z,className:"min-h-0 flex-1 overflow-hidden rounded-xl"}),(0,l.jsx)(g.A,{})]}),(0,l.jsxs)("section",{className:"flex min-h-0 flex-1 flex-col overflow-hidden","aria-label":n("sodas:now_pouring_near_you"),children:[(0,l.jsxs)("div",{className:"relative z-[1] flex flex-col gap-4 bg-white",children:[(0,l.jsx)("h2",{className:"font-bold text-[32px] leading-[34px]",children:n("sodas:now_pouring_near_you")}),(0,l.jsx)("label",{className:"sr-only",htmlFor:"dirty-sodas-store-search",children:n("order:search_store")}),(0,l.jsxs)("div",{className:"relative flex h-10 items-center rounded-lg border border-grey-90 bg-white px-3",children:[(0,l.jsx)(T,{}),(0,l.jsx)("input",{id:"dirty-sodas-store-search",className:"h-full min-w-0 flex-1 bg-transparent px-2 text-sm outline-none",value:i,onChange:e=>c(e.target.value),placeholder:n("order:search_store")}),i&&i.length<3?(0,l.jsx)("span",{className:"text-grey-60 text-xs",children:n("stores:keep_typing")}):null]})]}),(0,l.jsxs)("div",{className:"relative min-h-0 flex-1 overflow-hidden",children:[(0,l.jsx)("div",{className:"pointer-events-none absolute left-0 right-0 top-0 z-[1] h-6 bg-gradient-to-b from-white to-transparent"}),(0,l.jsx)("div",{className:"pointer-events-none absolute bottom-0 left-0 right-0 z-[1] h-8 bg-gradient-to-t from-white to-transparent"}),W?(0,l.jsxs)("div",{className:"flex h-full w-full flex-col gap-[15px] pt-[28px]",children:[(0,l.jsx)("div",{className:"h-[80px] w-full animate-pulse rounded-lg bg-gray-200"}),(0,l.jsx)("div",{className:"h-[80px] w-full animate-pulse rounded-lg bg-gray-200"}),(0,l.jsx)("div",{className:"h-[80px] w-full animate-pulse rounded-lg bg-gray-200"}),(0,l.jsx)("div",{className:"h-[80px] w-full animate-pulse rounded-lg bg-gray-100"})]}):(0,l.jsx)("div",{className:"h-full overflow-y-auto pb-5 pt-4",children:X.length>0?(0,l.jsx)("ul",{className:"m-0 list-none p-0",children:X.map(e=>{var t;
1let r=E(e),s=[e.street,e.city,e.state,e.zip].filter(Boolean).join(", "),a=M(e,n),o=!!_(e);return(0,l.jsx)("li",{className:"list-none",children:(0,l.jsx)("button",{type:"button",className:"w-full justify-between border-b p-2 text-left last:border-b-transparent enabled:cursor-pointer enabled:hover:rounded-lg enabled:hover:border-transparent enabled:hover:bg-primary-light enabled:hover:ring-4 enabled:hover:ring-white disabled:opacity-50",disabled:!o,onClick:()=>J(e),children:(0,l.jsxs)("div",{className:"relative flex justify-between",children:[(0,l.jsxs)("div",{className:"flex items-start py-2",children:[(0,l.jsx)("span",{className:"mr-2 flex flex-col",children:(0,l.jsx)(x.A,{width:23,height:23})}),(0,l.jsxs)("span",{className:"flex-grow text-left text-sm",children:[(0,l.jsx)("span",{className:"block font-semibold text-base leading-5",children:e.name}),s?(0,l.jsx)("span",{className:"block text-sm leading-5",children:s}):null,a?(0,l.jsx)("small",{className:"block opacity-50",children:a}):null]})]}),(0,l.jsx)("div",{className:"flex items-center",children:(0,l.jsx)(f.A,{width:23,height:23})})]})})},null!=(t=null!=r?r:e.slug)?t:e.name)})}):(0,l.jsx)("p",{className:"pt-4 font-semibold text-grey-60",children:n("order:no_results_found")})})]})]})]})]})}},77328:(e,t,n)=>{e.exports=n(29269)},94019:(e,t,n)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/dirty-sodas/mobile",function(){return n(70051)}])}},e=>{e.O(0,[2953,6578,636,6593,8792],()=>e(e.s=94019)),_N_E=e.O()}]); 2//# sourceMappingURL=mobile-8365b0870a8904e2.js.map
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.