1;!function(){try { var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&((e._debugIds|| (e._debugIds={}))[n]="ad88d89d-901f-bdfa-68f2-72f5c3dcfd6c")}catch(e){}}(); 2(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,3303,(e,t,r)=>{t.exports=e.r(479520)},488143,(e,t,r)=>{"use strict";function a({widthInt:e,heightInt:t,blurWidth:r,blurHeight:i,blurDataURL:s,objectFit:n}){let l=r?40*r:e,o=i?40*i:t,d=l&&o?`viewBox='0 0 ${l} ${o}'`:"";return`%3Csvg xmlns='http://www.w3.org/2000/svg' ${d}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${d?"none":"contain"===n?"xMidYMid":"cover"===n?"xMidYMid slice":"none"}' style='filter: url(%23b);' href='${s}'/%3E%3C/svg%3E`}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImageBlurSvg",{enumerable:!0,get:function(){return a}})},987690,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={VALID_LOADERS:function(){return s},imageConfigDefault:function(){return n}};for(var i in a)Object.defineProperty(r,i,{enumerable:!0,get:a[i]});let s=["default","imgix","cloudinary","akamai","custom"],n={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:14400,formats:["image/webp"],maximumDiskCacheSize:void 0,maximumRedirects:3,maximumResponseBody:5e7,dangerouslyAllowLocalIP:!1,dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:[75],unoptimized:!1,customCacheHandler:!1}},908927,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImgProps",{enumerable:!0,get:function(){return d}}),e.r(233525);let a=e.r(543369),i=e.r(488143),s=e.r(987690),n=["-moz-initial","fill","none","scale-down",void 0];function l(e){return void 0!==e.default}function o(e){return void 0===e?e:"number"==typeof e?Number.isFinite(e)?e:NaN:"string"==typeof e&&/^[0-9]+$/.test(e)?parseInt(e,10):NaN}function d({src:e,sizes:t,unoptimized:r=!1,priority:c=!1,preload:u=!1,loading:h,className:g,quality:p,width:m,height:f,fill:y=!1,style:C,overrideSrc:b,onLoad:v,onLoadingComplete:x,placeholder:S="empty",blurDataURL:O,fetchPriority:w,decoding:M="async",layout:j,objectFit:P,objectPosition:E,lazyBoundary:N,lazyRoot:L,...A},I){var _;let R,k,F,{imgConf:T,showAltText:D,blurComplete:$,defaultLoader:z}=I,G=T||s.imageConfigDefault;if("allSizes"in G)R=G;else{let e=[...G.deviceSizes,...G.imageSizes].sort((e,t)=>e-t),t=G.deviceSizes.sort((e,t)=>e-t),r=G.qualities?.sort((e,t)=>e-t);R={...G,allSizes:e,deviceSizes:t,qualities:r}}if(void 0===z)throw Object.defineProperty(Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"),"__NEXT_ERROR_CODE",{value:"E163",enumerable:!1,configurable:!0});let B=A.loader||z;delete A.loader,delete A.srcSet;let U="__next_img_default"in B;if(U){if("custom"===R.loader)throw Object.defineProperty(Error(`Image with src "${e}" is missing "loader" prop. 3Read more: https://nextjs.org/docs/messages/next-image-missing-loader`),"__NEXT_ERROR_CODE",{value:"E252",enumerable:!1,configurable:!0})}else{let e=B;B=t=>{let{config:r,...a}=t;return e(a)}}if(j){"fill"===j&&(y=!0);let e={intrinsic:{maxWidth:"100%",height:"auto"},responsive:{width:"100%",height:"auto"}}[j];e&&(C={...C,...e});let r={responsive:"100vw",fill:"100vw"}[j];r&&!t&&(t=r)}let W="",q=o(m),H=o(f);if((_=e)&&"object"==typeof _&&(l(_)||void 0!==_.src)){let t=l(e)?e.default:e;if(!t.src)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received ${JSON.stringify(t)}
3`),"__NEXT_ERROR_CODE",{value:"E460",enumerable:!1,configurable:!0});if(!t.height||!t.width)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E48",enumerable:!1,configurable:!0});if(k=t.blurWidth,F=t.blurHeight,O=O||t.blurDataURL,W=t.src,!y)if(q||H){if(q&&!H){let e=q/t.width;H=Math.round(t.height*e)}else if(!q&&H){let e=H/t.height;q=Math.round(t.width*e)}}else q=t.width,H=t.height}let K=!c&&!u&&("lazy"===h||void 0===h);(!(e="string"==typeof e?e:W)||e.startsWith("data:")||e.startsWith("blob:"))&&(r=!0,K=!1),R.unoptimized&&(r=!0),U&&!R.dangerouslyAllowSVG&&e.split("?",1)[0].endsWith(".svg")&&(r=!0);let J=o(p),V=Object.assign(y?{position:"absolute",height:"100%",width:"100%",left:0,top:0,right:0,bottom:0,objectFit:P,objectPosition:E}:{},D?{}:{color:"transparent"},C),X=$||"empty"===S?null:"blur"===S?`url("data:image/svg+xml;charset=utf-8,${(0,i.getImageBlurSvg)({widthInt:q,heightInt:H,blurWidth:k,blurHeight:F,blurDataURL:O||"",objectFit:V.objectFit})}")`:`url("${S}")`,Y=n.includes(V.objectFit)?"fill"===V.objectFit?"100% 100%":"cover":V.objectFit,Q=X?{backgroundSize:Y,backgroundPosition:V.objectPosition||"50% 50%",backgroundRepeat:"no-repeat",backgroundImage:X}:{},Z=function({config:e,src:t,unoptimized:r,width:i,quality:s,sizes:n,loader:l}){if(r){if(t.startsWith("/")&&!t.startsWith("//")){let e=(0,a.getDeploymentId)();if(e){let r=t.indexOf("?");if(-1!==r){let a=new URLSearchParams(t.slice(r+1));a.get("dpl")||(a.append("dpl",e),t=t.slice(0,r)+"?"+a.toString())}else t+=`?dpl=${e}`}}return{src:t,srcSet:void 0,sizes:void 0}}let{widths:o,kind:d}=function({deviceSizes:e,allSizes:t},r,a){if(a){let r=/(^|\s)(1?\d?\d)vw/g,i=[];for(let e;e=r.exec(a);)i.push(parseInt(e[2]));if(i.length){let r=.01*Math.min(...i);return{widths:t.filter(t=>t>=e[0]*r),kind:"w"}}return{widths:t,kind:"w"}}return"number"!=typeof r?{widths:e,kind:"w"}:{widths:[...new Set([r,2*r].map(e=>t.find(t=>t>=e)||t[t.length-1]))],kind:"x"}}(e,i,n),c=o.length-1;return{sizes:n||"w"!==d?n:"100vw",srcSet:o.map((r,a)=>`${l({config:e,src:t,quality:s,width:r})} ${"w"===d?r:a+1}${d}`).join(", "),src:l({config:e,src:t,quality:s,width:o[c]})}}({config:R,src:e,unoptimized:r,width:q,quality:J,sizes:t,loader:B}),ee=K?"lazy":h;return{props:{...A,loading:ee,fetchPriority:w,width:q,height:H,decoding:M,className:g,style:{...V,...Q},sizes:Z.sizes,srcSet:Z.srcSet,src:b||Z.src},meta:{unoptimized:r,preload:u||c,placeholder:S,fill:y}}}},898879,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return l}});let a=e.r(271645),i="u"<typeof window,s=i?()=>{}:a.useLayoutEffect,n=i?()=>{}:a.useEffect;function l(e){let{headManager:t,reduceComponentsToState:r}=e;function l(){if(t&&t.mountedInstances){let e=a.Children.toArray(Array.from(t.mountedInstances).filter(Boolean));t.updateHead(r(e))}}return i&&(t?.mountedInstances?.add(e.children),l()),s(()=>(t?.mountedInstances?.add(e.children),()=>{t?.mountedInstances?.delete(e.children)})),s(()=>(t&&(t._pendingUpdate=l),()=>{t&&(t._pendingUpdate=l)})),n(()=>(t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null),()=>{t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null)})),null}},325633,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={default:function(){return m},defaultHead:function(){return u}};for(var i in a)Object.defineProperty(r,i,{enumerable:!0,get:a[i]});let s=e.r(555682),n=e.r(190809),l=e.r(843476),o=n._(e.r(271645)),d=s._(e.r(898879)),c=e.r(742732);function u(){return[(0,l.jsx)("meta",{charSet:"utf-8"},"charset"),(0,l.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")]}function h(e,t){return"string"==typeof t||"number"==typeof t?e:t.type===o.default.Fragment?e.concat(o.default.Children.toArray(t.props.children).reduce((e,t)=>"string"==typeof t||"number"==typeof t?e:e.concat(t),[])):e.concat(t)}e.r(233525);let g=["name","httpEquiv","charSet","itemProp"];function p(e){let t,r,a,i;return e.reduce(h,[]).reverse().concat(u().reverse()).filter((t=new Set,r=new Set,a=new Set,i={},e=>{let s=!0,n=!1;if(e.key&&"number"!=typeof e.key&&e.key.indexOf("$")>0){n=!0;let r=e.key.slice(e.key.indexOf("$")+1);t.has(r)?s=!1:t.add(r)}switch(e.type){case"title":case"base":r.has(e.type)?s=!1:r.add(e.type);break;case"meta":for(let t=0,r=g.length;t<r;t++){let r=g[t];if(e.props.hasOwnProperty(r))if("charSet"===r)a.has(r)?s=!1:a.add(r);else{let t=e.props[r],a=i[r]||new Set;("name"!==r||!n)&&a.has(t)?s=!1:(a.add(t),i[r]=a)}}}return s})).reverse().map((e,t)=>{let r=e.key||t;return o.default.cloneElement(e,{key:r})})}let m=function({children:e}){let t=(0,o.useContext)(c.HeadManagerContext);return(0,l.jsx)(d.default,{reduceComponentsToState:p,headManager:t,children:e})};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esMo
3dule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},918556,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ImageConfigContext",{enumerable:!0,get:function(){return s}});let a=e.r(555682)._(e.r(271645)),i=e.r(987690),s=a.default.createContext(i.imageConfigDefault)},670965,(e,t,r)=>{"use strict";function a(e,t){let r=e||75;return t?.qualities?.length?t.qualities.reduce((e,t)=>Math.abs(t-r)<Math.abs(e-r)?t:e,t.qualities[0]):r}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"findClosestQuality",{enumerable:!0,get:function(){return a}})},1948,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return n}});let a=e.r(670965),i=e.r(543369);function s({config:e,src:t,width:r,quality:n}){let l=(0,i.getDeploymentId)();if(t.startsWith("/")&&!t.startsWith("//")){let e=t.indexOf("?");if(-1!==e){let r=new URLSearchParams(t.slice(e+1)),a=r.get("dpl");if(a){l=a,r.delete("dpl");let i=r.toString();t=t.slice(0,e)+(i?"?"+i:"")}}}if(t.startsWith("/")&&t.includes("?")&&e.localPatterns?.length===1&&"**"===e.localPatterns[0].pathname&&""===e.localPatterns[0].search)throw Object.defineProperty(Error(`Image with src "${t}" is using a query string which is not configured in images.localPatterns. 4Read more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`),"__NEXT_ERROR_CODE",{value:"E871",enumerable:!1,configurable:!0});let o=(0,a.findClosestQuality)(n,e);return`${e.path}?url=${encodeURIComponent(t)}&w=${r}&q=${o}${t.startsWith("/")&&l?`&dpl=${l}`:""}`}s.__next_img_default=!0;let n=s},605500,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"Image",{enumerable:!0,get:function(){return v}});let a=e.r(555682),i=e.r(190809),s=e.r(843476),n=i._(e.r(271645)),l=a._(e.r(174080)),o=a._(e.r(325633)),d=e.r(908927),c=e.r(987690),u=e.r(918556);e.r(233525);let h=e.r(65856),g=a._(e.r(1948)),p=e.r(818581),m={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1};function f(e,t,r,a,i,s,n){let l=e?.src;e&&e["data-loaded-src"]!==l&&(e["data-loaded-src"]=l,("decode"in e?e.decode():Promise.resolve()).catch(()=>{}).then(()=>{if(e.parentElement&&e.isConnected){if("empty"!==t&&i(!0),r?.current){let t=new Event("load");Object.defineProperty(t,"target",{writable:!1,value:e});let a=!1,i=!1;r.current({...t,nativeEvent:t,currentTarget:e,target:e,isDefaultPrevented:()=>a,isPropagationStopped:()=>i,persist:()=>{},preventDefault:()=>{a=!0,t.preventDefault()},stopPropagation:()=>{i=!0,t.stopPropagation()}})}a?.current&&a.current(e)}}))}function y(e){return n.use?{fetchPriority:e}:{fetchpriority:e}}"u"<typeof window&&(globalThis.__NEXT_IMAGE_IMPORTED=!0);let C=(0,n.forwardRef)(({src:e,srcSet:t,sizes:r,height:a,width:i,decoding:l,className:o,style:d,fetchPriority:c,placeholder:u,loading:h,unoptimized:g,fill:m,onLoadRef:C,onLoadingCompleteRef:b,setBlurComplete:v,setShowAltText:x,sizesInput:S,onLoad:O,onError:w,...M},j)=>{let P=(0,n.useCallback)(e=>{e&&(w&&(e.src=e.src),e.complete&&f(e,u,C,b,v,g,S))},[e,u,C,b,v,w,g,S]),E=(0,p.useMergedRef)(j,P);return(0,s.jsx)("img",{...M,...y(c),loading:h,width:i,height:a,decoding:l,"data-nimg":m?"fill":"1",className:o,style:d,sizes:r,srcSet:t,src:e,ref:E,onLoad:e=>{f(e.currentTarget,u,C,b,v,g,S)},onError:e=>{x(!0),"empty"!==u&&v(!0),w&&w(e)}})});function b({isAppRouter:e,imgAttributes:t}){let r={as:"image",imageSrcSet:t.srcSet,imageSizes:t.sizes,crossOrigin:t.crossOrigin,referrerPolicy:t.referrerPolicy,...y(t.fetchPriority)};return e&&l.default.preload?(l.default.preload(t.src,r),null):(0,s.jsx)(o.default,{children:(0,s.jsx)("link",{rel:"preload",href:t.srcSet?void 0:t.src,...r},"__nimg-"+t.src+t.srcSet+t.sizes)})}let v=(0,n.forwardRef)((e,t)=>{let r=(0,n.useContext)(h.RouterContext),a=(0,n.useContext)(u.ImageConfigContext),i=(0,n.useMemo)(()=>{let e=m||a||c.imageConfigDefault,t=[...e.deviceSizes,...e.imageSizes].sort((e,t)=>
4e-t),r=e.deviceSizes.sort((e,t)=>e-t),i=e.qualities?.sort((e,t)=>e-t);return{...e,allSizes:t,deviceSizes:r,qualities:i,localPatterns:"u"<typeof window?a?.localPatterns:e.localPatterns}},[a]),{onLoad:l,onLoadingComplete:o}=e,p=(0,n.useRef)(l);(0,n.useEffect)(()=>{p.current=l},[l]);let f=(0,n.useRef)(o);(0,n.useEffect)(()=>{f.current=o},[o]);let[y,v]=(0,n.useState)(!1),[x,S]=(0,n.useState)(!1),{props:O,meta:w}=(0,d.getImgProps)(e,{defaultLoader:g.default,imgConf:i,blurComplete:y,showAltText:x});return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(C,{...O,unoptimized:w.unoptimized,placeholder:w.placeholder,fill:w.fill,onLoadRef:p,onLoadingCompleteRef:f,setBlurComplete:v,setShowAltText:S,sizesInput:e.sizes,ref:t}),w.preload?(0,s.jsx)(b,{isAppRouter:!r,imgAttributes:O}):null]})});("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},794909,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var a={default:function(){return c},getImageProps:function(){return d}};for(var i in a)Object.defineProperty(r,i,{enumerable:!0,get:a[i]});let s=e.r(555682),n=e.r(908927),l=e.r(605500),o=s._(e.r(1948));function d(e){let{props:t}=(0,n.getImgProps)(e,{defaultLoader:o.default,imgConf:{deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1}});for(let[e,r]of Object.entries(t))void 0===r&&delete t[e];return{props:t}}let c=l.Image},657688,(e,t,r)=>{t.exports=e.r(794909)},55397,e=>{"use strict";var t=e.i(843476),r=e.i(618566),a=e.i(271645),i=e.i(167881);e.i(758056),e.i(722009),e.i(136731),e.i(541257),e.i(106434),e.i(280204),e.i(113777),e.i(945100),e.i(183819),e.i(306181),e.i(675153),e.i(9865),e.i(779608),e.i(493028),e.i(757218);var s=e.i(719658);e.i(447657),e.i(401317),e.i(189807),e.i(817530),e.i(403187),e.i(672641),e.i(376931),e.i(972252),e.i(360189);var n=e.i(936479);e.i(462972),e.i(835362),e.i(87947),e.i(508208),e.i(925725),e.i(3898),e.i(764138),e.i(313253),e.i(674142),e.i(35304),e.i(572409),e.i(603265),e.i(838902),e.i(107097),e.i(591990),e.i(676461),e.i(461752),e.i(474041),e.i(441895),e.i(878673);var l=e.i(781127),o=e.i(391297),o=o;e.i(565909),e.i(900869),e.i(917e3),e.i(287106),e.i(264936),e.i(612288),e.i(3303),(0,o.i)({packageName:"@clerk/nextjs"}),(0,l.setClerkJSLoadingErrorPackageName)("@clerk/nextjs");let d=e.i(779222).Show;var c=e.i(522016),u=e.i(657688);let h=[{href:"/privacy",label:"Privacy"},{href:"/terms",label:"Terms"},{href:"/contact",label:"Contact"}];e.s(["default",0,function(){let e=(0,r.usePathname)(),[l,o]=(0,a.useState)(!1);return(0,t.jsxs)("header",{className:"w-full bg-white border-b border-gray-200 sticky top-0 z-50 md:static md:top-auto",children:[(0,t.jsxs)("div",{className:"relative w-full px-4 flex items-center h-14",children:[(0,t.jsxs)(c.default,{href:"/","aria-label":"UA Near Me home",className:"flex items-center gap-2 hover:opacity-80 transition-opacity",children:[(0,t.jsx)(u.default,{src:"/icons/ua-logo.svg",alt:"",width:36,height:36,priority:!0}),(0,t.jsx)("span",{className:"font-bold text-blue-600 text-base tracking-tight",children:"UA Near Me"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-3 ml-auto",children:[(0,t.jsxs)("div",{className:"hidden md:block",children:[(0,t.jsx)(d,{when:"signed-in",children:(0,t.jsx)(n.UserButton,{})}),(0,t.jsx)(d,{when:"signed-out",children:(0,t.jsx)(i.Button,{variant:"outline",size:"sm",asChild:!0,children:(0,t.jsx)(s.SignInButton,{mode:"modal"})})})]}),(0,t.jsxs)("button",{className:"md:hidden flex flex-col justify-center items-center w-8 h-8 gap-1.5",onClick:()=>o(!l),"aria-label":"Toggle menu",children:[(0,t.jsx)("span",{className:`block w-5 h-0.5 bg-gray-700 transition-all duration-200 ${l?"rotate-45 translate-y-2":""}`}),(0,t.jsx)("span",{className:`block w-5 h-0.5 bg-gray-700 transition-all duration-200 ${l?"opacity-0":""}`}),(0,t.jsx)("span",{className:`block w-5 h-0.5 bg-gray-700 transition-all duration-200 ${l?"-rotate-45 -translate-y-2":""}`})]})]})]}),l&&(0,t.jsx)("div",{className:"md:hidden bg-white border-t border-gray-200 shadow-lg",children:(0,t.jsxs)("nav",{className:"flex flex-col px-4 py-4 gap-3",children:[h.map(r=>(0,t.jsx)(c.default,{href:r.href,onClick:()=>o(!1),className:`text-base font-medium py-2 transition-colors hover:text-blue-600 ${e===r.href?"text-blue-600":"text-gray-700"}`,children:r.label},r.href)),(0,t.jsxs)("div",{className:"pt-3 border-t border-gray-100",children:[(0,t.jsx)(d,{when:"signed-in",children:(0,t.jsx)(n.UserButton,{})}),(0,t.jsx)(d,{when:"signed-out",children:(0,t.jsx)(i.Button,{variant:"outline",className:"w-full",asChild:!0,children:(0,t.jsx)(s.SignInButton,{mode:"modal"})})})]})]})})]})}],55397)},343432,e=>{"use strict";let t=(0,e.i(475254).default)("Phone",[["path",{d:"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z",key:"foiqr5"}]]);e.s(["Phone",0,t],343432)},503116,e=>{"use strict";let t=(0,e.i(475254).default)("Clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);e.s(["Clock",0,t],503116)},555436,e=>{"use strict";let t=(0,e.i(475254).default)("Search",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]]);e.s(["Search",0,t],555436)},346897,e=>{"use strict";let t=(0,e.i(475254).default)("MapPin",[["path",{d:"M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0",key:"1r0f0z"}],["circle",{cx:"12",cy:"10",r:"3",key:"ilqhr7"}]]);e.s(["MapPin",0,t],346897)},982587,e=>{"use strict";var t,r,a,i,s,n=e.i(843476),l=e.i(271645),o=e.i(522016),d=e.i(346897),c=e.i(343432),u=e.i(503116),h=e.i(475254);let g=(0,h.default)("Star",[["path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z",key:"r04s7s"}]]),p=(0,h.default)("Navigation",[["polygon",{points:"3 11 22 2 13 21 11 13 3 11",key:"1ltx0t"}]]);var m=e.i(555436);let f=[{id:"1",name:"Boulder Office",address:"5600 Arapahoe Ave, Boulder, CO 80303",phone:"(303) 544-1840",hours:"M-F 7:00 AM - 4:00 PM (Closed 12:00 PM - 1:00 PM for lunch)",lat:40.01435360000001,lng:-105.2237234,state:"CO"},{id:"2",name:"Brighton Office",address:"647 E. Bridge Street, Brighton, CO 80601",phone:"(303) 654-0555",hours:"M-F 8:00 AM - 5:00 PM (Closed 12:00 PM - 1:00 PM for lunch)",lat:39.98714409999999,lng:-104.8147167,state:"CO"},{id:"3",name:"Golden Office",address:"17301 W. Colfax Ave, Suite 265, Golden, CO 80401",phone:"(303) 278-9600",hours:"M-F 8:00 AM - 5:00 PM (Closed 12:00 PM - 1:00 PM for lunch)",lat:39.7240545,lng:-105.1953408,state:"CO"},{id:"4",name:"Greeley Office",address:"920 11th Ave, Greeley, CO 80631",phone:"(970) 584-2500",hours:"M-F 7:00 AM - 6:00 PM",lat:40.4231062,lng:-104.6959841,state:"CO"},{id:"5",name:"ICCS - Kendall (Monitoring Only)",address:"1651 Kendall Street, Lakewood, CO 80214",phone:"(720) 544-5547",hours:"Monitoring: 3:30 PM - 12:00 AM, Must be signed in by 11:00 PM",lat:39.74340240000001,lng:-105.0669617,state:"CO"},{id:"6",name:"ICCS - Pueblo (Monitoring Only)",address:"1901 N. Hudson, Pueblo,
4CO 81001",phone:"(719) 569-3020",hours:"M-F: 6:00 PM - 11:30 PM, Sat-Sun: 8:00 AM - 11:30 PM",lat:38.2844925,lng:-104.5964942,state:"CO"},{id:"7",name:"ICCS - Weld (Monitoring Only)",address:"1101 H Street, Greeley, CO 80631",phone:"(970) 584-2520",hours:"Monitoring: 6:00 PM - 9:00 PM, Must be signed in by 8:30 PM",lat:40.4447494,lng:-104.6975254,state:"CO"},{id:"8",name:"Longmont Office",address:"390 Lashley Street, Longmont, CO 80504",phone:"(303) 772-4494",hours:"M-F 7:00 AM - 5:00 PM (Monitoring Only) 7:00 AM - 4:00 PM (Closed 12:00 PM - 1:00 PM for lunch)",lat:40.1648571,lng:-105.0876633,state:"CO"},{id:"9",name:"Pueblo Office",address:"801 W. 4th Street, Suite 101, Pueblo, CO 81003",phone:"(719) 543-1000",hours:"M-F 7:30 AM - 5:30 PM",lat:38.2714226,lng:-104.6173791,state:"CO"},{id:"10",name:"Thornton Office",address:"12130 Pennsylvania Street, Suite 102, Thornton, CO 80241",phone:"(303) 450-6000",hours:"M-F 7:30 AM - 5:00 PM (Closed 12:00 PM - 12:30 PM for lunch)",lat:39.9161605,lng:-104.9807914,state:"CO"},{id:"11",name:"KCG Drug Alcohol Solution",address:"8120 Sheridan Blvd B-107, Arvada, CO",phone:"303-261-8190",hours:"M-F 8:30-4:30pm",lat:39.8438572,lng:-105.0525371,state:"CO"},{id:"12",name:"RMS ALAMOSA",address:"626 4TH ST, Alamosa, CO",phone:"719-589-3243",hours:"M-F 8-5, CLOSED 12-1",lat:37.4690902,lng:-105.8666247,state:"CO"},{id:"13",name:"RMS AURORA",address:"14707 E. 2nd Ave 100 #340, Aurora, CO",phone:"303-367-1678",hours:"M-F 7-7 / Sat 8-12",lat:39.7202127,lng:-104.8170536,state:"CO"},{id:"14",name:"RMS BRIGHTON",address:"191 Telluride St 96, Brighton, CO",phone:"303-659-8662",hours:"M-F 8:30am-5:30pm, CLOSED 12-1",lat:39.9842837,lng:-104.7812198,state:"CO"},{id:"15",name:"LIABACO BOULDER",address:"2850 Iris Ave Suite N, Boulder, CO",phone:"970-292-8882",hours:"M-S 11-9; Sun 11-6",lat:40.0352191,lng:-105.2566732,state:"CO"},{id:"16",name:"RMS CASTLE ROCK",address:"1750 Deacoro Ln., Building 1, Suite 140, Castle Rock, CO",phone:"303-325-2730",hours:"M-F 8am-5pm, CLOSED 12-1",lat:39.3722121,lng:-104.8560902,state:"CO"},{id:"17",name:"A Turning Point of Colorado Springs",address:"5160 N. Union Blvd, Colorado Springs, CO",phone:"719-550-1011",hours:"M-Thur 8am-8pm; Fri 10a, 6pm; Sat 8am; Sun: CLOSED",lat:38.90544879999999,lng:-104.7758663,state:"CO"},{id:"18",name:"Heritage Outpatient Treatment",address:"1602 S. Parker Rd Ste 214, Denver, CO",phone:"720-748-0523",hours:"Mon, Tues, Thurs 4-5:30pm, 7:30-8pm; Wed, Fri 4pm-8pm; Sat: 1pm-5pm",lat:39.68738889999999,lng:-104.8861054,state:"CO"},{id:"19",name:"RMS DENVER",address:"930 W 7th Ave Suite A, Denver, CO",phone:"303-825-3061",hours:"M-F 10AM - 7PM",lat:39.7270748,lng:-104.9992406,state:"CO"},{id:"20",name:"SPANISH CLINIC (Spanish Speaking)",address:"4200 Morrison Rd Unit B, Denver, CO",phone:"303-934-1840",hours:"M-TH 9-6/F 7-3-6 (Closed Daily 1-2)",lat:39.7044327,lng:-105.0420244,state:"CO"},{id:"21",name:"RMS CENTENNIAL",address:"14485 E Fremont Ave, Englewood, CO",phone:"303-858-8550",hours:"M-F 8-5, CLOSED 1-2",lat:39.588256,lng:-104.8208836,state:"CO"},{id:"22",name:"KCG Drug Alcohol Solution Evergreen",address:"28577 Buffalo Park Rd # 110, Evergreen, CO",phone:"303-670-2269",hours:"M-F 8:30-1",lat:39.625168,lng:-105.325638,state:"CO"},{id:"23",name:"CCCD DAY REPORTING CENTER",address:"2255 Midpoint Dr, Fort Collins, CO",phone:"970-498-7510",hours:"M-F 10-45, Sat/Sun: 8-3:45",lat:40.565013,lng:-105.0363962,state:"CO"},{id:"24",name:"RMS FT. COLLINS",address:"3000 S. College #104, Ft. Collins, CO",phone:"970-206-9342",hours:"M-F 9-6, CLOSED 1-2",lat:40.546932,lng:-105.076555,state:"CO"},{id:"25",name:"LIABACO FT. COLLINS",address:"116 W Harvard St #3, Ft. Collins, CO",phone:"970-292-8882",hours:"M-S 11-8:50; Sun 11-5:50",lat:40.5493174,lng:-105.078802,state:"CO"},{id:"26",name:"Alpine Springs Counseling & Testing Center Glenwood",address:"319 14th St, Glenwood, CO",phone:"970-945-7858",hours:"Open M-F 4:00-7:00 PM, call ahead",lat:39.5392042,lng:-107.3242215,state:"CO"},{id:"27",name:"MCC Drug & Alcohol Screening Glenwood Springs",address:"2001 Blake Ave 2D, Glenwood Springs, CO",phone:"970-945-
47772",hours:"M-Thur 8am-5pm, Fri 8am-4pm",lat:39.5319195,lng:-107.323135,state:"CO"},{id:"28",name:"LIABACO Greeley",address:"3400 W 16th St Bld 1 #1-D, Greeley, CO",phone:"970-292-8882",hours:"M-F 11-8:50",lat:40.41399759999999,lng:-104.7345256,state:"CO"},{id:"29",name:"MCC Drug & Alcohol Screening Grand Junction",address:"1330 N. 12th St, Grand Junction, CO",phone:"970-256-7772",hours:"M-Thur 8am-5pm, Fri 8am-4pm",lat:39.0798245,lng:-108.5519058,state:"CO"},{id:"30",name:"RMS - Grand Junction",address:"2531 W Pinyon Ave, Grand Junction, CO",phone:"970-245-5119",hours:"M, W, F - 7 - 4; T/Th - 8:30 - 5:30 (closed 1-2)",lat:39.0856204,lng:-108.583276,state:"CO"},{id:"31",name:"5280 Drug Testing",address:"6053 S Quebec St #101, Greenwood Village, CO",phone:"720-476-4970",hours:"M-F 9-7:30",lat:39.6065872,lng:-104.9045354,state:"CO"},{id:"32",name:"Men & Women Seeking Empowerment",address:"1300 Plaza Ct N #102, Lafayette, CO",phone:"303-665-7037",hours:"Males - M-F 1pm-7:00 Females - M-F 8AM-2PM",lat:39.9860039,lng:-105.1084427,state:"CO"},{id:"33",name:"You're In Luck Drug and Alcohol Testing, LLC - Lakewood",address:"1864 s Wadsworth Blvd Unit 3, Lakewood, CO",phone:"303-670-2269",hours:"M-F 9:30am-6pm, Sat & Sun by Appt",lat:39.6835989,lng:-105.0794382,state:"CO"},{id:"34",name:"GENESIS COUNSELING",address:"8 W Dry Creek Circle Ste 155, Littleton, CO",phone:"720-309-1588",hours:"FEMALES ONLY M-12P-4:30P; T-Thurs 9A-4:30P; Fri 9A-1P",lat:39.5829601,lng:-104.9891779,state:"CO"},{id:"35",name:"RMS LITTLETON",address:"191 E. Orchard Rd #205, Littleton, CO",phone:"303-789-9800",hours:"M-F 8-5, CLOSED 12-1",lat:39.6099755,lng:-104.9863353,state:"CO"},{id:"36",name:"RMS LONGMONT",address:"1630 N Main St., Suite 103, Longmont, CO",phone:"303-485-6896",hours:"M-F 9-6, CLOSED 1-2",lat:40.18736850000001,lng:-105.1015681,state:"CO"},{id:"37",name:"LIABACO LONGMONT",address:"700 Ken Pratt Blvd #121, Longmont, CO",phone:"970-292-8882",hours:"M-S 11-8:50; Sun 11-5:50",lat:40.15404669999999,lng:-105.1060443,state:"CO"},{id:"38",name:"LIABACO LOVELAND",address:"1907 Boise Ave #2, Loveland, CO",phone:"970-292-8882",hours:"M-S 11-8:50; Sun 11-5:50",lat:40.4129535,lng:-105.0542502,state:"CO"},{id:"39",name:"ACACIA COUNSELING",address:"11150 Huron Street #207, Northglenn, CO",phone:"303-438-9730",hours:"Hours vary, call ahead for UA test CLOSED Fri and Sun",lat:39.8985079,lng:-104.9961735,state:"CO"},{id:"40",name:"RMS NORTHGLENN",address:"2100 E. 112th Avenue Unit 1, Northglenn, CO",phone:"303-657-1405",hours:"M-F 7-7, SAT 8am-12pm",lat:39.89900170000001,lng:-104.963356,state:"CO"},{id:"41",name:"RMS PUEBLO",address:"807 W 4th St, Pueblo, CO",phone:"719-543-7835",hours:"M-F 8-6 / Sat 9:30-6, CLOSED 1:30-2",lat:38.2709969,lng:-104.6176118,state:"CO"},{id:"42",name:"Alpine Springs Counseling & Testing Center Rifle",address:"1530 Railroad Ave Suite A, Rifle, CO",phone:"720-735-5275",hours:"Open M-F 4:00-7:00 PM, call ahead",lat:39.5436718,lng:-107.7825131,state:"CO"}],y={CO:"Colorado"},C={"Ft. Collins":"Fort Collins","Ft Collins":"Fort Collins",Glenwood:"Glenwood Springs"};function b(e){return e.toLowerCase().replace(/\./g,"").replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")}let v=f.map(e=>{let t,r,a=C[r=(t=e.address.split(",").map(e=>e.trim())).length>=2?t[t.length-2]:""]??r;return{...e,city:a,citySlug:b(a),siteSlug:b(e.name),stateSlug:e.state.toLowerCase(),stateName:y[e.state]??e.state}}).filter(e=>e.city.length>0);function x(e,t,r){return`/testing-sites/${e}/${t}/${r}`}[...new Set(Object.values(v.reduce((e,t)=>{let r=`${t.stateSlug}/${t.citySlug}`;return e[r]??={city:t.city,citySlug:t.citySlug,state:t.state,stateSlug:t.stateSlug,stateName:t.stateName,sites:[]},e[r].sites.push(t),e},{})).sort((e,t)=>e.stateSlug.localeCompare(t.stateSlug)||e.city.localeCompare(t.city)).map(e=>e.stateSlug))].sort(),e.i(247167),"function"==typeof SuppressedError&&SuppressedError;var S=(t=i?a:(i=1,a=function e(t,r){if(t===r)return!0;if(t&&r&&"object"==typeof t&&"object"==typeof r){if(t.constructor!==r.constructor)return!1;if(Array.isArray(t)){if((a=t.length)!=r.length)return!1;for(i=a;0!=i--;)if(!e(t[i],r[i]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if((a=(s=Object.keys(t)).length)!==Object.keys(r).length)return!1;for(i=a;0!=i--;)if(!Object.prototype.hasOwnProperty.call(r,s[i]))return!1;for(i=a;0!=i--;){var a,i,s,n=s[i];if(!e(t[n],r[n]))return!1}return!0}return t!=t&&r!=r}))&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t;let O="__googleMapsScriptId";(r=s||(s={}))[r.INITIALIZED=0]="INITIALIZED",r[r.LOADING=1]="LOADING",r[r.SUCCESS=2]="SUCCESS",r[r.FAILURE=3]="FAILURE";class w{constructor({apiKey:e,authReferrerPolicy:t,channel:r,client:a,id:i=O,language:s,libraries:n=[],mapIds:l,nonce:o,region:d,retries:c=3,url:u="https://maps.googleapis.com/ma
4ps/api/js",version:h}){if(this.callbacks=[],this.done=!1,this.loading=!1,this.errors=[],this.apiKey=e,this.authReferrerPolicy=t,this.channel=r,this.client=a,this.id=i||O,this.language=s,this.libraries=n,this.mapIds=l,this.nonce=o,this.region=d,this.retries=c,this.url=u,this.version=h,w.instance){if(!S(this.options,w.instance.options))throw Error(`Loader must not be called again with different options. ${JSON.stringify(this.options)} !== ${JSON.stringify(w.instance.options)}`);return w.instance}w.instance=this}get options(){return{version:this.version,apiKey:this.apiKey,channel:this.channel,client:this.client,id:this.id,libraries:this.libraries,language:this.language,region:this.region,mapIds:this.mapIds,nonce:this.nonce,url:this.url,authReferrerPolicy:this.authReferrerPolicy}}get status(){return this.errors.length?s.FAILURE:this.done?s.SUCCESS:this.loading?s.LOADING:s.INITIALIZED}get failed(){return this.done&&!this.loading&&this.errors.length>=this.retries+1}createUrl(){let e=this.url;return e+="?callback=__googleMapsCallback&loading=async",this.apiKey&&(e+=`&key=${this.apiKey}`),this.channel&&(e+=`&channel=${this.channel}`),this.client&&(e+=`&client=${this.client}`),this.libraries.length>0&&(e+=`&libraries=${this.libraries.join(",")}`),this.language&&(e+=`&language=${this.language}`),this.region&&(e+=`®ion=${this.region}`),this.version&&(e+=`&v=${this.version}`),this.mapIds&&(e+=`&map_ids=${this.mapIds.join(",")}`),this.authReferrerPolicy&&(e+=`&auth_referrer_policy=${this.authReferrerPolicy}`),e}deleteScript(){let e=document.getElementById(this.id);e&&e.remove()}load(){return this.loadPromise()}loadPromise(){return new Promise((e,t)=>{this.loadCallback(r=>{r?t(r.error):e(window.google)})})}importLibrary(e){return this.execute(),google.maps.importLibrary(e)}loadCallback(e){this.callbacks.push(e),this.execute()}setScript(){var e,t;let r,a,i,s,n,l,o,d,c,u,h;if(document.getElementById(this.id))return void this.callback();let g={key:this.apiKey,channel:this.channel,client:this.client,libraries:this.libraries.length&&this.libraries,v:this.version,mapIds:this.mapIds,language:this.language,region:this.region,authReferrerPolicy:this.authReferrerPolicy};Object.keys(g).forEach(e=>!g[e]&&delete g[e]),(null==(t=null==(e=null==window?void 0:window.google)?void 0:e.maps)?void 0:t.importLibrary)||(s="google",n="importLibrary",l=document,d=(o=(o=window)[s]||(o[s]={})).maps||(o.maps={}),c=new Set,u=new URLSearchParams,h=()=>r||(r=new Promise((e,t)=>{var n,o,h,p;return n=this,o=void 0,h=void 0,p=function*(){var n;for(i in yield a=l.createElement("script"),a.id=this.id,u.set("libraries",[...c]+""),g)u.set(i.replace(/[A-Z]/g,e=>"_"+e[0].toLowerCase()),g[i]);u.set("callback",s+".maps.__ib__"),a.src=this.url+"?"+u,d.__ib__=e,a.onerror=()=>r=t(Error("The Google Maps JavaScript API could not load.")),a.nonce=this.nonce||(null==(n=l.querySelector("script[nonce]"))?void 0:n.nonce)||"",l.head.append(a)},new(h||(h=Promise))(function(e,t){function r(e){try{i(p.next(e))}catch(e){t(e)}}function a(e){try{i(p.throw(e))}catch(e){t(e)}}function i(t){var i;t.done?e(t.value):((i=t.value)instanceof h?i:new h(function(e){e(i)})).then(r,a)}i((p=p.apply(n,o||[])).next())})})),d[n]?console.warn("The Google Maps JavaScript API only loads once. Ignoring:",g):d[n]=(e,...t)=>c.add(e)&&h().then(()=>d[n](e,...t)));let p=this.libraries.map(e=>this.importLibrary(e));p.length||p.push(this.importLibrary("core")),Promise.all(p).then(()=>this.callback(),e=>{let t=new ErrorEvent("error",{error:e});this.loadErrorCallback(t)})}reset(){this.deleteScript(),this.done=!1,this.loading=!1,this.errors=[],this.onerrorEvent=null}resetIfRetryingFailed(){this.failed&&this.reset()}loadErrorCallback(e){if(this.errors.push(e),this.errors.length<=this.retries){let e=this.errors.length*Math.pow(2,this.errors.length);console.error(`Failed to load Google Maps script, retrying in ${e} ms.`),setTimeout(()=>{this.deleteScript(),this.setScript()},e)}else this.onerrorEvent=e,this.callback()}callback(){this.done=!0,this.loading=!1,this.callbacks.forEach(e=>{e(this.onerrorEvent)}),this.callbacks=[]}execute(){if(this.resetIfRetryingFailed(),!this.loading)if(this.done)this.callback();else{if(window.google&&window.google.maps&&window.google.maps.version){console.warn("Google Maps already loaded outside @googlemaps/js-api-loader. This may result in undesirable behavior as options and script parameters may not match."),this.callback();return}this.loading=!0,this.setScript()}}}let M=new Map(v.map(e=>
4[e.id,x(e.stateSlug,e.citySlug,e.siteSlug)])),j={CO:{center:{lat:39.7392,lng:-104.9903},zoom:8},all:{center:{lat:39.75,lng:-95.5},zoom:5}};function P({state:e="CO",initialLat:t,initialLng:r}){let a=(0,l.useRef)(null),[i,s]=(0,l.useState)(t&&r?{lat:t,lng:r}:null);return(0,l.useEffect)(()=>{navigator.geolocation&&navigator.geolocation.getCurrentPosition(e=>{s({lat:e.coords.latitude,lng:e.coords.longitude})},()=>{})},[]),(0,l.useEffect)(()=>{(async()=>{let t=new w({apiKey:"AIzaSyAUSqSQq1bPuJcH5-PRb7a-lGpeGfIU-dQ",version:"weekly"});try{let{Map:r}=await t.importLibrary("maps");if(!a.current)return;let s=j[e]||j.CO,n=new r(a.current,{center:s.center,zoom:s.zoom,styles:[{featureType:"poi",elementType:"labels",stylers:[{visibility:"off"}]}]});i&&new google.maps.Marker({position:i,map:n,title:"Your Location",icon:{path:google.maps.SymbolPath.CIRCLE,scale:10,fillColor:"#2563eb",fillOpacity:1,strokeColor:"#ffffff",strokeWeight:3}});let l=("all"===e?f:f.filter(t=>t.state===e)).map(e=>{var t,r,a,s;let l,o=i?(t=i.lat,r=i.lng,a=e.lat,s=e.lng,l=Math.sin((a-t)*Math.PI/180/2)**2+Math.cos(t*Math.PI/180)*Math.cos(a*Math.PI/180)*Math.sin((s-r)*Math.PI/180/2)**2,7918*Math.atan2(Math.sqrt(l),Math.sqrt(1-l))):void 0,d=new google.maps.Marker({position:{lat:e.lat,lng:e.lng},map:n,title:e.name,icon:{path:google.maps.SymbolPath.CIRCLE,scale:8,fillColor:"#dc2626",fillOpacity:1,strokeColor:"#ffffff",strokeWeight:2}}),c=new google.maps.InfoWindow({content:` 5 <div style="padding: 8px; max-width: 250px;"> 6 <h3 style="margin: 0 0 8px 0; font-size: 14px; font-weight: bold; color: #1f2937;">${e.name}</h3> 7 <p style="margin: 0 0 4px 0; font-size: 12px; color: #6b7280;">${e.address}</p> 8 <p style="margin: 0; font-size: 12px; color: #2563eb;">${e.phone}</p> 9 ${void 0!==o?`<p style="margin: 4px 0 0 0; font-size: 11px; color: #059669; font-weight: 500;">${o.toFixed(1)} miles away</p>`:""} 10 ${M.get(e.id)?`<p style="margin: 8px 0 0 0; font-size: 12px;"><a href="${M.get(e.id)}" style="color: #2563eb; font-weight: 600; text-decoration: none;">View details →</a></p>`:""} 11 </div> 12 `});return d.addListener("click",()=>{c.open(n,d)}),{...e,distance:o}});if(i&&l.length>0){let e=l.filter(e=>void 0!==e.distance).sort((e,t)=>(e.distance||0)-(t.distance||0)).slice(0,3);if(e.length>0){let t=new google.maps.LatLngBounds;t.extend(new google.maps.LatLng(i.lat,i.lng)),e.forEach(e=>{t.extend(new google.maps.LatLng(e.lat,e.lng))}),n.fitBounds(t)}}}catch(e){console.error("Error loading Google Maps:",e)}})()},[i,e]),(0,n.jsx)("div",{ref:a,className:"w-full h-full rounded-lg",style:{minHeight:"400px"}})}let E=[{code:"CO",name:"Colorado"}],N={CO:["Denver","Colorado Springs","Aurora","Fort Collins","Lakewood","Thornton","Arvada","Westminster","Pueblo","Centennial","Boulder","Greeley","Longmont","Loveland","Grand Junction"]},L=new Map(v.map(e=>[e.id,x(e.stateSlug,e.citySlug,e.siteSlug)]));e.s(["default",0,()=>{let[e,t]=(0,l.useState)([]),[r,a]=(0,l.useState)(!1),[i,s]=(0,l.useState)(""),[h,y]=(0,l.useState)("CO"),[C,b]=(0,l.useState)("Denver"),[v,x]=(0,l.useState)(null),S=f.filter(e=>e.state===h),O=e=>Math.PI/180*e,w=(e,t)=>e.map(e=>{var r,a,i,s;let n,l,o,d=(r=t.lat,a=t.lng,i=e.lat,s=e.lng,n=O(i-r),l=O(s-a),3959*(2*Math.atan2(Math.sqrt(o=Math.sin(n/2)*Math.sin(n/2)+Math.cos(O(r))*Math.cos(O(i))*Math.sin(l/2)*Math.sin(l/2)),Math.sqrt(1-o))));return{...e,distance:`${d.toFixed(1)} miles`}}),M=e=>e.filter((e,t,r)=>t===r.findIndex(t=>t.name.toLowerCase()===e.name.toLowerCase()||t.address.toLowerCase()===e.address.toLowerCase())),j=e=>e.sort((e,t)=>e.distance&&t.distance?parseFloat(e.distance.replace(" miles",""))-parseFloat(t.distance.replace(" miles","")):0);(0,l.useEffect)(()=>{navigator.geolocation&&navigator.geolocation.getCurrentPosition(e=>{x({lat:e.coords.latitude,lng:e.coords.longitude})},e=>{console.log("Location access denied")})},[]),(0,l.useEffect)(()=>{b((N[h]||[])[0]||"")},[h]),(0,l.useEffect)(()=>{I()},[C,h]);let A={CO:"Colorado"},I=async()=>{a(!0);try{let e=A[h]||"Colorado",r=await fetch(`/api/places?city=${encodeURIComponent(C)}&state=${encodeURIComponent(e)}`),a=await r.json();if(a.results&&a.results.length>0){let e=[...a.results,...S],r=M(e);t(r)}else console.log("No Google Places results, using hardcoded sites"),t(S)}catch(e){console.error("Error loading testing sites:",e),t(S)}a(!1)},_=async()=>
12{if(!v)return void alert("Please enable location access to find nearby sites");a(!0);try{let e=await fetch(`/api/places?lat=${v.lat}&lng=${v.lng}`),r=await e.json();if(r.results&&r.results.length>0){let e=w(S,v),a=[...r.results,...e],i=M(a),s=j(i);t(s)}else{console.log("No nearby Google Places results, calculating distances for hardcoded sites");let e=w(S,v),r=j(e);t(r)}}catch(e){console.error("Error finding nearby sites:",e),t(j(w(S,v)))}a(!1)},R=e.filter(e=>e.name.toLowerCase().includes(i.toLowerCase())||e.address.toLowerCase().includes(i.toLowerCase()));return(0,n.jsxs)("div",{children:[(0,n.jsx)("div",{className:"flex space-x-1 mb-6 bg-gray-100 rounded-lg p-1 w-fit",children:E.map(({code:e,name:t})=>(0,n.jsx)("button",{onClick:()=>y(e),className:`px-6 py-2 rounded-md text-sm font-medium transition-colors ${h===e?"bg-white text-blue-600 shadow-sm":"text-gray-600 hover:text-gray-900"}`,children:t},e))}),(0,n.jsx)("div",{className:"mb-8 rounded-lg overflow-hidden shadow-lg border-4 border-white h-[400px]",children:(0,n.jsx)(P,{state:h})}),(0,n.jsx)("div",{className:"bg-white rounded-lg shadow-sm border p-6 mb-8",children:(0,n.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-4 gap-4",children:[(0,n.jsx)("div",{className:"md:col-span-2",children:(0,n.jsxs)("div",{className:"relative",children:[(0,n.jsx)(m.Search,{className:"absolute left-3 top-1/2 transform -translate-y-1/2 h-5 w-5 text-gray-400"}),(0,n.jsx)("input",{type:"text",placeholder:"Search by name, address, or service type...",value:i,onChange:e=>s(e.target.value),className:"w-full pl-10 pr-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-blue-500"})]})}),(0,n.jsx)("div",{children:(0,n.jsx)("select",{value:C,onChange:e=>b(e.target.value),className:"w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-blue-500",children:(N[h]||[]).map(e=>(0,n.jsx)("option",{value:e,children:e},e))})}),(0,n.jsx)("div",{children:(0,n.jsxs)("button",{onClick:_,disabled:r,className:"w-full bg-blue-600 text-white py-3 px-4 rounded-lg hover:bg-blue-700 transition-colors flex items-center justify-center disabled:bg-blue-400",children:[(0,n.jsx)(p,{className:"h-5 w-5 mr-2"}),"Find Nearby"]})})]})}),(0,n.jsx)("div",{className:"space-y-4",children:r?(0,n.jsxs)("div",{className:"text-center py-12",children:[(0,n.jsx)("div",{className:"animate-spin rounded-full h-12 w-12 border-b-2 border-blue-600 mx-auto mb-4"}),(0,n.jsx)("p",{className:"text-gray-600",children:"Loading testing sites..."})]}):0===R.length?(0,n.jsxs)("div",{className:"text-center py-12 bg-white rounded-lg border",children:[(0,n.jsx)(d.MapPin,{className:"h-12 w-12 text-gray-400 mx-auto mb-4"}),(0,n.jsx)("h3",{className:"text-lg font-medium text-gray-900 mb-2",children:"No testing sites found"}),(0,n.jsx)("p",{className:"text-gray-600",children:"Try adjusting your search or location filters"})]}):R.map(e=>{let t=L.get(e.id);return(0,n.jsx)("div",{className:"relative bg-white rounded-lg shadow-sm border p-6 hover:shadow-md transition-shadow",children:(0,n.jsxs)("div",{className:"flex flex-col md:flex-row md:items-start md:justify-between",children:[(0,n.jsxs)("div",{className:"flex-1",children:[(0,n.jsxs)("div",{className:"flex items-start justify-between mb-2",children:[(0,n.jsx)("h3",{className:"text-lg font-semibold text-gray-900",children:t?(0,n.jsx)(o.default,{href:t,className:"hover:text-blue-600 after:absolute after:inset-0 after:content-['']",children:e.name}):e.name}),(0,n.jsx)("div",{className:"flex items-center ml-4",children:e.rating&&(0,n.jsxs)("div",{className:"flex items-center",children:[(0,n.jsx)(g,{className:"h-4 w-4 text-yellow-400 fill-current"}),(0,n.jsx)("span",{className:"ml-1 text-sm text-gray-600",children:e.rating})]})})]}),(0,n.jsxs)("div",{className:"flex items-center text-gray-600 mb-2",children:[(0,n.jsx)(d.MapPin,{className:"h-4 w-4 mr-2 flex-shrink-0"}),(0,n.jsx)("span",{className:"text-sm",children:e.address}),e.distance&&(0,n.jsxs)("span",{className:"ml-2 text-sm font-medium text-blue-600",children:["⢠",e.distance]})]}),e.hours&&(0,n.jsxs)("div",{className:"flex items-center text-gray-600 mb-2",children:[(0,n.jsx)(u.Clock,{className:"h-4 w-4 mr-2 flex-shrink-0"}),(0,n.jsx)("span",{className:"text-sm text-gray-600",children:e.hours})]})]}),(0,n.jsxs)("div",{className:"relative z-10 flex flex-col space-y-2 md:ml-6",children:[(0,n.jsxs)("button",{onClick:()=>{let t;return t=encodeURIComponent(e.address),void window.open(`https://www.google.com/maps/search/?api=1&query=${t}`,"_blank")},className:"px-4 py-2 bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition-colors flex items-center justify-center",children:[(0,n.jsx)(d.MapPin,{className:"h-4 w-4 mr-2"}),"Directions"]}),e.phone&&(0,n.jsxs)("button",{onClick:()=>{var t;return t=e.phone,void window.open(`tel:${t}`)},className:"px-4 py-2 bg-green-600 text-white rounded-lg hover:bg-green-700 transition-colors flex items-center justify-center",children:[(0,n.jsx)(c.Phone,{className:"h-4 w-4 mr-2"}),"Call"]})]})]})},e.id)})})]})}],982587)}]); 13 14//# debugId=ad88d89d-901f-bdfa-68f2-72f5c3dcfd6c
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.