PageSourceSearch

https://www.jointcommerce.com/_next/static/chunks/2658d420b4607485.js

js jointcommerce.com collected 2026-09-24 10:04:42 UTC 43,760 bytes, 1 lines download raw bytes

1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,153103,60529,100290,e=>{"use strict";let a=[{name:"Alaska",abbreviation:"AK",slug:"alaska",legalizedYear:2014,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Alcohol and Marijuana Control Office (AMCO)",keyFact:"Alaska was the third state to legalize recreational cannabis, with retail sales beginning in 2016."},{name:"Arizona",abbreviation:"AZ",slug:"arizona",legalizedYear:2020,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Arizona Department of Health Services (ADHS)",keyFact:"Arizona voters approved Proposition 207 in 2020, legalizing recreational cannabis for adults 21 and older."},{name:"California",abbreviation:"CA",slug:"california",legalizedYear:2016,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Department of Cannabis Control (DCC)",keyFact:"California is the largest legal cannabis market in the world, with over $5 billion in annual sales."},{name:"Colorado",abbreviation:"CO",slug:"colorado",legalizedYear:2012,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Marijuana Enforcement Division (MED)",keyFact:"Colorado was one of the first two states to legalize recreational cannabis and has generated over $2 billion in tax revenue since 2014."},{name:"Connecticut",abbreviation:"CT",slug:"connecticut",legalizedYear:2021,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Department of Consumer Protection",keyFact:"Connecticut legalized recreational cannabis through the legislature rather than a ballot initiative, with equity provisions built into the law."},{name:"Delaware",abbreviation:"DE",slug:"delaware",legalizedYear:2023,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Office of the Marijuana Commissioner",keyFact:"Delaware legalized recreational cannabis in 2023, becoming the first state to do so through legislative action without a prior ballot measure."},{name:"Florida",abbreviation:"FL",slug:"florida",legalizedYear:2016,isRecreational:!1,isMedical:!0,ageRequirement:18,regulatoryBody:"Office of Medical Marijuana Use (OMMU)",keyFact:"Florida has one of the largest medical cannabis programs in the country with over 800,000 registered patients."},{name:"Illinois",abbreviation:"IL",slug:"illinois",legalizedYear:2019,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Illinois Department of Financial and Professional Regulation (IDFPR)",keyFact:"Illinois was the first state to legalize recreational cannabis entirely through the legislative process, with a strong focus on social equity."},{name:"Maine",abbreviation:"ME",slug:"maine",legalizedYear:2016,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Office of Cannabis Policy",keyFact:"Maine allows adults to cultivate up to three flowering plants at home for personal use."},{name:"Maryland",abbreviation:"MD",slug:"maryland",legalizedYear:2022,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Maryland Cannabis Administration",keyFact:"Maryland voters approved recreational cannabis in 2022 with one of the strongest social equity programs in the nation."},{name:"Massachusetts",abbreviation:"MA",slug:"massachusetts",legalizedYear:2016,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Cannabis Control Commission (CCC)",keyFact:"Massachusetts was the first East Coast state to open recreational dispensaries, starting sales in November 2018."},{name:"Michigan",abbreviation:"MI",slug:"michigan",legalizedYear:2018,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Cannabis Regulatory Agency (CRA)",keyFact:"Michigan has one of the most competitive cannabis markets in the country, with over 500 licensed dispensaries."},{name:"Minnesota",abbreviation:"MN",slug:"minnesota",legalizedYear:2023,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Office of Cannabis Management",keyFact:"Minnesota legalized recreational cannabis in 2023 with comprehensive social equity provisions and automatic expungement of prior convictions."},{name:"Missouri",abbreviation:"MO",slug:"missouri",legalizedYear:2022,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Division of Cannabis Regulation",keyFact:"Missouri voters approved Amendment 3 in 2022, making it the first state in the Midwest to legalize recreational cannabis by ballot initiative."},{name:"Montana",abbreviation:"MT",slug:"montana",legalizedYear:2020,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Montana Department of Revenue",ke
1yFact:"Montana approved recreational cannabis in 2020, with sales beginning in January 2022."},{name:"Nevada",abbreviation:"NV",slug:"nevada",legalizedYear:2016,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Cannabis Compliance Board (CCB)",keyFact:"Nevada generated over $1 billion in cannabis sales in its first year of recreational legalization, driven in part by Las Vegas tourism."},{name:"New Jersey",abbreviation:"NJ",slug:"new-jersey",legalizedYear:2020,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Cannabis Regulatory Commission (CRC)",keyFact:"New Jersey launched recreational sales in April 2022, becoming a major market in the densely populated Northeast corridor."},{name:"New Mexico",abbreviation:"NM",slug:"new-mexico",legalizedYear:2021,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Cannabis Control Division",keyFact:"New Mexico began recreational sales on April 1, 2022, allowing micro-businesses and home cultivation."},{name:"New York",abbreviation:"NY",slug:"new-york",legalizedYear:2021,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Office of Cannabis Management (OCM)",keyFact:"New York is building its recreational program with a priority on social equity licenses for communities most impacted by cannabis prohibition."},{name:"Ohio",abbreviation:"OH",slug:"ohio",legalizedYear:2023,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Division of Cannabis Control",keyFact:"Ohio voters approved Issue 2 in 2023, legalizing recreational cannabis and allowing adults to possess up to 2.5 ounces."},{name:"Oklahoma",abbreviation:"OK",slug:"oklahoma",legalizedYear:2018,isRecreational:!1,isMedical:!0,ageRequirement:18,regulatoryBody:"Oklahoma Medical Marijuana Authority (OMMA)",keyFact:"Oklahoma has one of the most open medical cannabis programs, with over 380,000 patient cardholders and thousands of licensed dispensaries."},{name:"Oregon",abbreviation:"OR",slug:"oregon",legalizedYear:2014,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Oregon Liquor and Cannabis Commission (OLCC)",keyFact:"Oregon was an early pioneer in cannabis legalization and is known for its craft cannabis culture and competitive pricing."},{name:"Vermont",abbreviation:"VT",slug:"vermont",legalizedYear:2018,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Cannabis Control Board",keyFact:"Vermont was the first state to legalize cannabis through the legislature rather than a ballot initiative, though retail sales did not begin until 2022."},{name:"Virginia",abbreviation:"VA",slug:"virginia",legalizedYear:2021,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Virginia Cannabis Control Authority",keyFact:"Virginia legalized personal possession and home cultivation in 2021, but retail sales are expected to begin in late 2024."},{name:"Washington",abbreviation:"WA",slug:"washington",legalizedYear:2012,isRecreational:!0,isMedical:!0,ageRequirement:21,regulatoryBody:"Liquor and Cannabis Board (LCB)",keyFact:"Washington was one of the first two states to legalize recreational cannabis and has a mature market with over 500 licensed retailers."}],t=new Map,r=new Map;for(let e of a)t.set(e.slug,e),r.set(e.abbreviation.toUpperCase(),e);function i(e){return r.get(e.toUpperCase())}function n(){return a}function s(e){let{type:a,stateName:t,cityName:r,zipCode:i,dispensaryCount:n,stateInfo:s}=e,l="city"===a||"best_in"===a,o="zip"===a?`near ${i}`:l?`in ${r}`:`in ${t}`,c=l?t?`${r}, ${t}`:`${r}`:"zip"===a?`${i} (${r??t})`:t,d=[{question:`How many dispensaries are ${o}?`,answer:`There are currently ${n} cannabis dispensaries listed ${o}. This number is updated regularly as new dispensaries open and existing ones update their listings on JointCommerce. You can browse all locations, compare ratings, and read customer reviews to find the best option for your needs.`},{question:`What do I need to visit a dispensary ${o}?`,answer:`To visit a dispensary ${o}, you will need a valid government-issued photo ID proving you are at least ${s?.ageRequirement??21} years old. ${s?.isMedical&&!s?.isRecreational?"You will also need a valid medical marijuana card issued by your state.":s?.isMedical?"For medical dispensaries, you may also need a valid medical marijuana card. Recreational dispensaries are open to all adults of legal age.":"Most dispensaries accept state IDs, driver's licenses, and passports."}`},{question:`Can I order cannabis online for pickup or delivery ${o}?`,answer:`Many dispensaries ${o} offer online ordering for both pickup and delivery through JointCommerce. You can browse menus, add items to your cart, and place your order directly from the dispensary's listing page. Delivery availability depends on local regulations and each dispensary's service area. Check individual dispensary listings for their available ordering options.`},{question:`What types of cannabis products are available at dispensaries in ${c}?`,answer:`Dispensaries in ${c} typically carry a wide variety of cannabis products including flower, pre-rolls, edibles, concentrates, vaporizers, tinctures, topicals, and accessories. Product availability varies by location and is subject to state regulations. Use JointCommerce to browse dispensary menus and compare product selections, prices, and availability before you visit.`}];return"state"===a&&s&&d.push({question:`Is cannabis legal in ${t}
1?`,answer:`Yes, cannabis is legal in ${t}. ${s.isRecreational?`Recreational cannabis was legalized in ${s.legalizedYear}`:`Medical cannabis is legal in ${t}`}. The cannabis program is regulated by the ${s.regulatoryBody}. ${s.isRecreational?"Adults 21 and older can purchase cannabis from licensed dispensaries without a medical card.":"Patients with qualifying conditions can obtain a medical card to purchase cannabis from licensed dispensaries."}`}),d}e.s(["getAllStates",()=>n,"getStateByAbbreviation",()=>i],60529),e.s(["generateGeoFaqs",()=>s],100290),e.s([],153103)},95187,(e,a,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r={callServer:function(){return n.callServer},createServerReference:function(){return l.createServerReference},findSourceMapURL:function(){return s.findSourceMapURL}};for(var i in r)Object.defineProperty(t,i,{enumerable:!0,get:r[i]});let n=e.r(132120),s=e.r(92245),l=e.r(235326)},339326,e=>{"use strict";var a=e.i(271645),t=e.i(618566),r=e.i(95187);let i=(0,r.createServerReference)("70c84b570cd46f008b7146f4313c85d07f3a52aa81",r.callServer,void 0,r.findSourceMapURL,"socialTokenLogin");var n=e.i(261238),s=e.i(308069);e.i(716787);var l=e.i(673635);function o(){let e=(0,t.useRouter)(),{addToast:r}=(0,l.useToast)(),o=(0,a.useRef)(!1);return(0,a.useEffect)(()=>{let a=new URLSearchParams(window.location.search).get("code");async function t(){try{let t=(0,n.getBaseUrl)(),l=await fetch(`${t}${s.API_ENDPOINTS.auth.exchangeCode}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:a})});if(!l.ok)throw Error(`Exchange failed with status ${l.status}`);let o=await l.json();localStorage.setItem("access_token",o.access),localStorage.setItem("refresh_token",o.refresh);let c=await i(o.access,o.refresh,o.user);c?.ok?(e.replace("/directory"),e.refresh()):(localStorage.removeItem("access_token"),localStorage.removeItem("refresh_token"),console.error("[GoogleOAuthHandler] socialTokenLogin failed:",c?.error),r({variant:"error",title:"Sign in failed",message:"An error occurred during social login. Please try again."}),e.replace("/directory"))}catch(a){localStorage.removeItem("access_token"),localStorage.removeItem("refresh_token"),console.error("[GoogleOAuthHandler] code exchange failed:",a),r({variant:"error",title:"Sign in failed",message:"An error occurred during social login. Please try again."}),e.replace("/directory")}}a&&!o.current&&(o.current=!0,t())},[]),null}e.s(["GoogleOAuthHandler",()=>o],339326)},983622,e=>{"use strict";var a=e.i(271645);let t=a.forwardRef(function({title:e,titleId:t,...r},i){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?a.createElement("title",{id:t},e):null,a.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6.633 10.25c.806 0 1.533-.446 2.031-1.08a9.041 9.041 0 0 1 2.861-2.4c.723-.384 1.35-.956 1.653-1.715a4.498 4.498 0 0 0 .322-1.672V2.75a.75.75 0 0 1 .75-.75 2.25 2.25 0 0 1 2.25 2.25c0 1.152-.26 2.243-.723 3.218-.266.558.107 1.282.725 1.282m0 0h3.126c1.026 0 1.945.694 2.054 1.715.045.422.068.85.068 1.285a11.95 11.95 0 0 1-2.649 7.521c-.388.482-.987.729-1.605.729H13.48c-.483 0-.964-.078-1.423-.23l-3.114-1.04a4.501 4.501 0 0 0-1.423-.23H5.904m10.598-9.75H14.25M5.904 18.5c.083.205.173.405.27.602.197.4-.078.898-.523.898h-.908c-.889 0-1.713-.518-1.972-1.368a12 12 0 0 1-.521-3.507c0-1.553.295-3.036.831-4.398C3.387 9.953 4.167 9.5 5 9.5h1.053c.472 0 .745.556.5.96a8.958 8.958 0 0 0-1.302 4.665c0 1.194.232 2.333.654 3.375Z"}))});e.s(["HandThumbUpIcon",0,t],983622)},507153,e=>{"use strict";var a=e.i(271645);let t=a.forwardRef(function({title:e,titleId:t,...r},i){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?a.createElement("title",{id:t},e):null,a.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M9 12.75 11.25 15 15 9.75M21 12c0 1.268-.63 2.39-1.593 3.068a3.745 3.745 0 0 1-1.043 3.296 3.745 3.745 0 0 1-3.296 1.043A3.745 3.745 0 0 1 12 21c-1.268 0-2.39-.63
1-3.068-1.593a3.746 3.746 0 0 1-3.296-1.043 3.745 3.745 0 0 1-1.043-3.296A3.745 3.745 0 0 1 3 12c0-1.268.63-2.39 1.593-3.068a3.745 3.745 0 0 1 1.043-3.296 3.746 3.746 0 0 1 3.296-1.043A3.746 3.746 0 0 1 12 3c1.268 0 2.39.63 3.068 1.593a3.746 3.746 0 0 1 3.296 1.043 3.746 3.746 0 0 1 1.043 3.296A3.745 3.745 0 0 1 21 12Z"}))});e.s(["CheckBadgeIcon",0,t],507153)},579084,e=>{"use strict";var a=e.i(843476),t=e.i(271645),r=e.i(549838);let i="M11.48 3.499a.562.562 0 011.04 0l2.125 5.111a.563.563 0 00.475.345l5.518.442c.499.04.701.663.321.988l-4.204 3.602a.563.563 0 00-.182.557l1.285 5.385a.562.562 0 01-.84.61l-4.725-2.885a.563.563 0 00-.586 0L6.982 20.54a.562.562 0 01-.84-.61l1.285-5.386a.562.562 0 00-.182-.557l-4.204-3.602a.563.563 0 01.321-.988l5.518-.442a.563.563 0 00.475-.345L11.48 3.5z",n={xs:"h-3 w-3",sm:"h-3.5 w-3.5",md:"h-4 w-4",lg:"h-5 w-5"},s=t.default.forwardRef(function({rating:e,reviewCount:s,size:l="md",showValue:o=!1,className:c},d){let u=(0,t.useId)(),m=Math.max(0,Math.min(5,e)),g=Array.from({length:5},(e,a)=>({fillPercentage:Math.max(0,Math.min(100,100*(m-a))),index:a})),f=n[l];return(0,a.jsxs)("div",{ref:d,className:(0,r.cn)("flex items-center gap-1",c),children:[(0,a.jsx)("div",{className:"flex",role:"img","aria-label":`${m.toFixed(1)} out of 5 stars`,children:g.map(({fillPercentage:e,index:t})=>{let n=`${u}-star-gradient-${t}`;return(0,a.jsxs)("svg",{className:(0,r.cn)(f),viewBox:"0 0 24 24","aria-hidden":"true",children:[(0,a.jsx)("defs",{children:(0,a.jsxs)("linearGradient",{id:n,children:[(0,a.jsx)("stop",{offset:`${e}%`,stopColor:"currentColor",className:"text-warning"}),(0,a.jsx)("stop",{offset:`${e}%`,stopColor:"transparent"})]})}),(0,a.jsx)("path",{d:i,fill:"none",stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round",className:"text-border"}),(0,a.jsx)("path",{d:i,fill:`url(#${n})`,stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round",className:"text-warning"})]},t)})}),o&&(0,a.jsx)("span",{className:(0,r.cn)("font-medium text-text","xs"===l||"sm"===l?"text-xs":"lg"===l?"text-base":"text-sm"),children:m.toFixed(1)}),void 0!==s&&s>0&&(0,a.jsxs)("span",{className:(0,r.cn)("text-text-muted","xs"===l||"sm"===l?"text-xs":"lg"===l?"text-base":"text-sm"),children:["(",s.toLocaleString(),")"]})]})});s.displayName="RatingStars";let l=(0,t.memo)(s);l.displayName="RatingStars",e.s(["RatingStars",0,l])},667585,(e,a,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"BailoutToCSR",{enumerable:!0,get:function(){return i}});let r=e.r(132061);function i({reason:e,children:a}){if("u"<typeof window)throw Object.defineProperty(new r.BailoutToCSRError(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return a}},309885,(e,a,t)=>{"use strict";function r(e){return e.split("/").map(e=>encodeURIComponent(e)).join("/")}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"encodeURIPath",{enumerable:!0,get:function(){return r}})},652157,(e,a,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"PreloadChunks",{enumerable:!0,get:function(){return o}});let r=e.r(843476),i=e.r(174080),n=e.r(563599),s=e.r(309885),l=e.r(543369);function o({moduleIds:e}){if("u">typeof window)return null;let a=n.workAsyncStorage.getStore();if(void 0===a)return null;let t=[];if(a.reactLoadableManifest&&e){let r=a.reactLoadableManifest;for(let a of e){if(!r[a])continue;let e=r[a].files;t.push(...e)}}if(0===t.length)return null;let o=(0,l.getDeploymentIdQueryOrEmptyString)();return(0,r.jsx)(r.Fragment,{children:t.map(e=>{let t=`${a.assetPrefix}/_next/${(0,s.encodeURIPath)(e)}${o}`;return e.endsWith(".css")?(0,r.jsx)("link",{precedence:"dynamic",href:t,rel:"stylesheet",as:"style",nonce:a.nonce},e):((0,i.preload)(t,{as:"script",fetchPriority:"low",nonce:a.nonce}),null)})})}},869093,(e,a,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return c}});let r=e.r(843476),i=e.r(271645),n=e.r(667585),s=e.r(652157);function l(e){return{default:e&&"default"in e?e.default:e}}let o={loader:()=>Promise.resolve(l(()=>null)),loading:null,ssr:!0},c=function(e){let a={...o,...e},t=(0,i.lazy)(()=>a.loader().then(l)),c=a.loading;function d(e){let l=c?(0,r.jsx)(c,{isLoading:!0,pastDelay:!0,error:null}):null,o=!a.ssr||!!a.loading,d=o?i.Suspense:i.Fragment,u=a.ssr?(0,r.jsxs)(r.Fragment,{children:["u"<typeof window?(0,r.jsx)(s.PreloadChunks,{moduleIds:a.modules}):null,(0,r.jsx)(t,{...e})]}):(0,r.jsx)(n.BailoutToCSR,{reason:"next/dynamic",children:(0,r.jsx)(t,{...e})});return(0,r.jsx)(d,{...o?{fallback:l}:{},children:u})}return d.displayName="LoadableComponent",d}},770703,(e,a,t)=>{"use strict";
1Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return i}});let r=e.r(563141)._(e.r(869093));function i(e,a){let t={};"function"==typeof e&&(t.loader=e);let i={...t,...a};return(0,r.default)({...i,modules:i.loadableGenerated?.modules})}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),a.exports=t.default)},491160,e=>{"use strict";var a=e.i(271645);let t=a.forwardRef(function({title:e,titleId:t,...r},i){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?a.createElement("title",{id:t},e):null,a.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m16.862 4.487 1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L10.582 16.07a4.5 4.5 0 0 1-1.897 1.13L6 18l.8-2.685a4.5 4.5 0 0 1 1.13-1.897l8.932-8.931Zm0 0L19.5 7.125M18 14v4.75A2.25 2.25 0 0 1 15.75 21H5.25A2.25 2.25 0 0 1 3 18.75V8.25A2.25 2.25 0 0 1 5.25 6H10"}))});e.s(["PencilSquareIcon",0,t],491160)},460759,e=>{"use strict";var a=e.i(271645);let t=a.forwardRef(function({title:e,titleId:t,...r},i){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?a.createElement("title",{id:t},e):null,a.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m14.74 9-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 0 0-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 0 0-7.5 0"}))});e.s(["TrashIcon",0,t],460759)},685249,e=>{"use strict";var a=e.i(271645);let t=a.forwardRef(function({title:e,titleId:t,...r},i){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?a.createElement("title",{id:t},e):null,a.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M9 12.75 11.25 15 15 9.75m-3-7.036A11.959 11.959 0 0 1 3.598 6 11.99 11.99 0 0 0 3 9.749c0 5.592 3.824 10.29 9 11.623 5.176-1.332 9-6.03 9-11.622 0-1.31-.21-2.571-.598-3.751h-.152c-3.196 0-6.1-1.248-8.25-3.285Z"}))});e.s(["ShieldCheckIcon",0,t],685249)},951467,e=>{"use strict";var a=e.i(271645);let t=a.forwardRef(function({title:e,titleId:t,...r},i){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?a.createElement("title",{id:t},e):null,a.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 9v3.75m9-.75a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9 3.75h.008v.008H12v-.008Z"}))});e.s(["ExclamationCircleIcon",0,t],951467)},126568,(e,a,t)=>{"use strict";var r=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,i=/\n/g,n=/^\s*/,s=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,l=/^:\s*/,o=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,c=/^[;\s]*/,d=/^\s+|\s+$/g;function u(e){return e?e.replace(d,""):""}a.exports=function(e,a){if("string"!=typeof e)throw TypeError("First argument must be a string");if(!e)return[];a=a||{};var t=1,d=1;function m(e){var a=e.match(i);a&&(t+=a.length);var r=e.lastIndexOf("\n");d=~r?e.length-r:d+e.length}function g(){var e={line:t,column:d};return function(a){return a.position=new f(e),h(n),a}}function f(e){this.start=e,this.end={line:t,column:d},this.source=a.source}function p(r){var i=Error(a.source+":"+t+":"+d+": "+r);if(i.reason=r,i.filename=a.source,i.line=t,i.column=d,i.source=e,a.silent);else throw i}function h(a){var t=a.exec(e);if(t){var r=t[0];return m(r),e=e.slice(r.length),t}}function x(e){var a;for(e=e||[];a=b();)!1!==a&&e.push(a);return e}function b(){var a=g();if("/"==e.charAt(0)&&"*"==e.charAt(1)){for(var t=2;""!=e.charAt(t)&&("*"!=e.charAt(t)||"/"!=e.charAt(t+1));)++t;if(t+=2,""===e.charAt(t-1))return p("End of comment missing");var r=e.slice(2,t-2);return d+=2,m(r),e=e.slice(t),d+=2,a({type:"comment",comment:r})}}f.prototype.content=e,h(n);var v,y=[];for(x(y);v=function(){var e=g(),a=h(s);if(a){if(b(),!h(l))return p("property missing ':'");var t=h(o),i=e({type:"declaration",property:u(a[0].replace(r,"")),value:t?u(t[0].replace(r,"")):""});return h(c),i}}();)!1!==v&&(y.push(v),x(y));return y}},270454,(e,a,t)=>{"use strict";
1var r=e.e&&e.e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,a){let t=null;if(!e||"string"!=typeof e)return t;let r=(0,i.default)(e),n="function"==typeof a;return r.forEach(e=>{if("declaration"!==e.type)return;let{property:r,value:i}=e;n?a(r,i,e):i&&((t=t||{})[r]=i)}),t};let i=r(e.r(126568))},965185,(e,a,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.camelCase=void 0;var r=/^--[a-zA-Z0-9_-]+$/,i=/-([a-z])/g,n=/^[^-]+$/,s=/^-(webkit|moz|ms|o|khtml)-/,l=/^-(ms)-/,o=function(e,a){return a.toUpperCase()},c=function(e,a){return"".concat(a,"-")};t.camelCase=function(e,a){var t;return(void 0===a&&(a={}),!(t=e)||n.test(t)||r.test(t))?e:(e=e.toLowerCase(),(e=a.reactCompat?e.replace(l,c):e.replace(s,c)).replace(i,o))}},515511,(e,a,t)=>{"use strict";var r=(e.e&&e.e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}})(e.r(270454)),i=e.r(965185);function n(e,a){var t={};return e&&"string"==typeof e&&(0,r.default)(e,function(e,r){e&&r&&(t[(0,i.camel
1Case)(e,a)]=r)}),t}n.default=n,a.exports=n},315671,e=>{"use strict";var a=e.i(271645);let t=a.forwardRef(function({title:e,titleId:t,...r},i){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?a.createElement("title",{id:t},e):null,a.createElement("path",{fillRule:"evenodd",d:"M10.788 3.21c.448-1.077 1.976-1.077 2.424 0l2.082 5.006 5.404.434c1.164.093 1.636 1.545.749 2.305l-4.117 3.527 1.257 5.273c.271 1.136-.964 2.033-1.96 1.425L12 18.354 7.373 21.18c-.996.608-2.231-.29-1.96-1.425l1.257-5.273-4.117-3.527c-.887-.76-.415-2.212.749-2.305l5.404-.434 2.082-5.005Z",clipRule:"evenodd"}))});e.s(["StarIcon",0,t],315671)},387257,e=>{"use strict";var a=e.i(271645);let t=a.forwardRef(function({title:e,titleId:t,...r},i){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?a.createElement("title",{id:t},e):null,a.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M15.75 10.5V6a3.75 3.75 0 1 0-7.5 0v4.5m11.356-1.993 1.263 12c.07.665-.45 1.243-1.119 1.243H4.25a1.125 1.125 0 0 1-1.12-1.243l1.264-12A1.125 1.125 0 0 1 5.513 7.5h12.974c.576 0 1.059.435 1.119 1.007ZM8.625 10.5a.375.375 0 1 1-.75 0 .375.375 0 0 1 .75 0Zm7.5 0a.375.375 0 1 1-.75 0 .375.375 0 0 1 .75 0Z"}))});e.s(["ShoppingBagIcon",0,t],387257)},642096,e=>{"use strict";var a=e.i(271645);let t=a.forwardRef(function({title:e,titleId:t,...r},i){return a.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":t},r),e?a.createElement("title",{id:t},e):null,a.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M8.25 18.75a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h6m-9 0H3.375a1.125 1.125 0 0 1-1.125-1.125V14.25m17.25 4.5a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h1.125c.621 0 1.129-.504 1.09-1.124a17.902 17.902 0 0 0-3.213-9.193 2.056 2.056 0 0 0-1.58-.86H14.25M16.5 18.75h-2.25m0-11.177v-.958c0-.568-.422-1.048-.987-1.106a48.554 48.554 0 0 0-10.026 0 1.106 1.106 0 0 0-.987 1.106v7.635m12-6.677v6.677m0 4.5v-4.5m0 0h-12"}))});e.s(["TruckIcon",0,t],642096)},938934,821043,619415,101506,e=>{"use strict";var a=e.i(843476),t=e.i(271645),r=e.i(522016),i=e.i(660595),n=e.i(549838);let s=[{bg:"bg-emerald-100 dark:bg-emerald-900/40",text:"text-emerald-700 dark:text-emerald-300"},{bg:"bg-sky-100 dark:bg-sky-900/40",text:"text-sky-700 dark:text-sky-300"},{bg:"bg-violet-100 dark:bg-violet-900/40",text:"text-violet-700 dark:text-violet-300"},{bg:"bg-amber-100 dark:bg-amber-900/40",text:"text-amber-700 dark:text-amber-300"},{bg:"bg-rose-100 dark:bg-rose-900/40",text:"text-rose-700 dark:text-rose-300"},{bg:"bg-teal-100 dark:bg-teal-900/40",text:"text-teal-700 dark:text-teal-300"},{bg:"bg-indigo-100 dark:bg-indigo-900/40",text:"text-indigo-700 dark:text-indigo-300"},{bg:"bg-orange-100 dark:bg-orange-900/40",text:"text-orange-700 dark:text-orange-300"}];function l({name:e,size:t="md",className:r}){let i=(e?.charAt(0)||"?").toUpperCase(),l=function(e){let a=0;for(let t=0;t<e.length;t++)a=(a<<5)-a+e.charCodeAt(t)|0;return s[Math.abs(a)%s.length]}(e||"");return(0,a.jsx)("div",{className:(0,n.cn)("flex items-center justify-center font-bold select-none",{sm:"h-9 w-9 text-sm",md:"h-10 w-10 text-base",compact:"h-12 w-12 text-lg",lg:"h-full w-full text-2xl",fill:"h-full w-full text-lg"}[t],l.bg,l.text,"lg"===t||"fill"===t?"rounded-none":"rounded-xl",r),"aria-hidden":"true",children:i})}e.s(["default",()=>l],821043);var o=e.i(560539),c=e.i(247103),d=e.i(642096),u=e.i(387257);let m=t.forwardRef(function({title:e,titleId:a,...r},i){return t.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:i,"aria-labelledby":a},r),e?t.createElement("title",{id:a},e):null,t.createElement("path",{fillRule:"evenodd",d:"M16.403 12.652a3 3 0 0 0 0-5.304 3 3 0 0 0-3.75-3.751 3 3 0 0 0-5.305 0 3 3 0 0 0-3.751 3.75 3 3 0 0 0 0 5.305 3 3 0 0 0 3.75 3.751 3 3 0 0 0 5.305 0 3 3 0 0 0 3.751-3.75Zm-2.546-4.46a.75.75 0 0 0-1.214-.883l-3.483 4.79-1.88-1.88a.75.75 0 1 0-1.06 1.061l2.5 2.5a.75.75 0 0 0 1.137-.089l4-5.5Z",clipRule:"evenodd"}))});e.s(["CheckBadgeIcon",0,m],619415);var g=e.i(315671);function f({rating:e,count:t,size:r="sm",className:i}){if(null==e)return null;let n=function(e){switch(e){case"md":return{star:"h-4 w-4",text:"text-sm"};case"sm":return{star:"h-3.5 w-3.5",text:"text-[11px]"};default:return{star:"h-3 w-3",text:"text-[11px]"}}}(r);return(0,a.jsxs)("div",{className:`flex items-center gap-1 ${i??""}`,children:[(0,a.jsx)(g.StarIcon,{className:`${n.star} text-warning`,"aria-hidden":"true"}),(0,a.jsxs)("span",{className:`font-semibold text-text ${n.text}`,children:[e,null!=t&&t>0&&(0,a.jsxs)("span",{className:"font-normal text-text-muted",children:[" (",t.toLocaleStr
1ing(),")"]})]})]})}e.s(["default",()=>f],101506),e.i(716787);var p=e.i(487486);e.i(879121);var h=e.i(370799);function x(e){return`/dispensaries/${e.slug}/`}function b(){return(0,a.jsx)(m,{className:"h-3.5 w-3.5 shrink-0 text-primary-accent","aria-hidden":"true"})}function v({distance:e}){let t=(0,h.getDistanceVariant)(e);return(0,a.jsxs)("span",{className:(0,n.cn)("inline-flex items-center gap-0.5 rounded-full px-1.5 py-px","text-[10px] font-semibold whitespace-nowrap leading-none","near"===t&&"bg-(--success-alpha-15) text-success","medium"===t&&"bg-(--warning-alpha-15) text-warning-dark","far"===t&&"bg-surface text-text-muted dark:bg-surface-secondary"),children:[(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:2,stroke:"currentColor",className:"h-2.5 w-2.5 shrink-0","aria-hidden":"true",children:[(0,a.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M15 10.5a3 3 0 11-6 0 3 3 0 016 0z"}),(0,a.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M19.5 10.5c0 7.142-7.5 11.25-7.5 11.25S4.5 17.642 4.5 10.5a7.5 7.5 0 1115 0z"})]}),e.toFixed(1)," mi"]})}function y({dispensary:e,className:t,badge:s}){return e.is_open,(0,a.jsxs)(r.default,{href:x(e),className:(0,n.cn)("group block overflow-hidden rounded-xl border border-border bg-surface-primary","transition-all duration-200 hover:shadow-sm hover:border-text-muted/30 motion-reduce:transition-none","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2","dark:bg-surface dark:border-border dark:hover:border-border-muted",t),"aria-label":`${e.name} - ${e.city}, ${e.state}`,children:[(0,a.jsxs)("div",{className:"relative aspect-square w-full overflow-hidden bg-surface-secondary",children:[e.logo?(0,a.jsx)(i.default,{src:e.logo,alt:e.name,fill:!0,className:"transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none motion-reduce:group-hover:scale-100",sizes:"(max-width: 480px) 100vw, (max-width: 1024px) 50vw, 33vw",fallback:(0,a.jsx)(l,{name:e.name,size:"lg"})}):(0,a.jsx)(l,{name:e.name,size:"lg"}),e.is_premium&&(0,a.jsx)(p.Badge,{variant:"featured",size:"xs",className:"absolute left-(--space-3) top-3",children:"Featured"}),s&&(0,a.jsx)("div",{className:"absolute right-3 top-3",children:s})]}),(0,a.jsxs)("div",{className:"p-4",children:[(0,a.jsxs)("div",{className:"flex items-start gap-2",children:[(0,a.jsx)("h3",{className:"truncate text-(--text-lg) font-bold leading-tight group-hover:text-secondary",children:e.name}),e.is_claimed&&(0,a.jsx)(b,{})]}),(e.review_count??0)>0&&(0,a.jsx)(f,{rating:e.rating??0,count:e.review_count??0,size:"sm",className:"mt-1"}),(0,a.jsxs)("div",{className:"mt-(--space-2) flex flex-wrap items-center gap-2",children:[(0,a.jsx)(w,{type:e}),(0,a.jsx)(j,{hasDelivery:e.has_delivery,hasPickup:e.has_pickup,deliveryTime:e.estimated_delivery_time,dispensaryType:e.dispensary_type}),void 0!==e.distance&&(0,a.jsx)(v,{distance:e.distance})]}),e.address||e.city||e.state?(0,a.jsxs)("div",{className:"mt-(--space-2) flex items-start gap-1",children:[(0,a.jsx)(o.MapPinIcon,{className:"mt-0.5 h-3.5 w-3.5 shrink-0 text-text-muted","aria-hidden":"true"}),(0,a.jsxs)("div",{className:"min-w-0 text-(--text-sm) leading-normal",children:[e.address&&(0,a.jsx)("span",{className:"font-medium text-text",children:e.address}),(e.city||e.state)&&(0,a.jsxs)("span",{className:"text-text-muted",children:[e.address?", ":"",e.city,e.city&&e.state?", ":"",e.state]})]})]}):null,(0,a.jsx)("div",{className:"mt-(--space-3) flex items-center justify-between min-h-6",children:(0,a.jsx)("span",{className:"text-(--text-xs) font-bold group-hover:underline",children:e.is_claimed?e.has_delivery?"Order Delivery →":e.has_pickup?"Order Pickup →":"View Menu →":"View Info →"})})]})]})}function w({type:e}){if(!e)return null;let t="string"==typeof e?e:e.title;if(!t)return null;let r=t.trim();if(/^\d+$/.test(r))return null;let i=r.toLowerCase(),s=r,l="bg-surface-secondary text-text-muted";return i.includes("rec")&&i.includes("med")?(s="Rec & Med",l="bg-[var(--info-alpha-15,rgba(59,130,246,0.1))] text-[var(--info,#3b82f6)]"):i.includes("rec")?(s="Recreational",l="bg-[var(--success-alpha-15)] text-success"):i.includes("med")?(s="Medical",l="bg-[var(--warning-alpha-15)] text-warning-dark"):i.includes("delivery")?(s="Delivery",l="bg-[var(--success-alpha-15)] text-success"):(i.includes("store")||i.includes("retail"))&&(s="Storefront",l="bg-surface-secondary text-text-muted"),(0,a.jsx)("span",{className:(0,n.cn)("inline-flex items-center gap-1 rounded-full px-1.5 py-0.5","text-[9px] font-bold uppercase tracking-wide whitespace-nowrap leading-none",l),children:s})}function j({hasDelivery:e,hasPickup:t,deliveryTime:r,dispensaryType:i}){let n=i&&/delivery/i.test(i),s=e&&!n;return s||t?(0,a.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5",children:[s&&(0,a.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full bg-surface-secondary px-1.5 py-0.5 text-[9px] font-bold uppercase tracking-wide text-text-muted leading-none whitespace-nowrap",children:[(0,a.jsx)(d.TruckIcon,{className:"h-2.5 w-2.5 shrink-0","aria-hidden":"true"}),(0,a.jsx)("span",{className:"translate-y-[0.5px]",children:r||"Delivery"})]}),t&&(0,a.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full bg-surface-secondary px-1.5 py-0.5 text-[9px] font-bold uppercase tracking-wide text-text-muted leading-none whitespace-nowrap",children:[(0,a.jsx)(u.ShoppingBagIcon,{className:"h-2.5 w-2.5 shrink-0","aria-hidden":"true"}),(0,a.jsx)("span",{className:"translate-y-[0.5px]",children:"Pickup"})]})]}):null}function k({dispensary:e,className:t}){e.is_open;let s=e.is_premium||e.has_star_marker;return(0,a.jsxs)(r.default,{href:x(e),className:(0,n.cn)("group relative flex items-start gap-2.5 rounded-lg border bg-surface-primary","px-3 py-1.5",s?"border-(--warning,#f59e0b)/40 bg-(--warning,#f59e0b)/3 dark:bg-(--warning,#f59e0b)/6":"border-border","transition-all duration-200 hover:shadow-sm hover:border-text-muted/30 motion-reduce:transition-none","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2","dark:bg-surface dark:border-border dark:hover:border-border-muted",s&&"dark:border-(--warning,#f59e0b)/30 dark:hover:border-(--warning,#f59e0b)/50",t),"aria-label":`${e.name} - ${e.city}, ${e.state}${s?" - Featured":""}`,children:[s&&(0,a.jsx)("div",{className:"absolute left-0 top-2 bottom-2 w-0.75 rounded-full bg-(--warning,#f59e0b)","aria-hidden":"true"}),(0,a.jsx)("div",{className:(0,n.cn)("flex h-10 w-10 shrink-0 items-center justify-center overflow-hidden rounded-lg","border border-border/50 dark:border-border/30","transition-all duration-(--transition-base) motion-reduce:transition-none",e.logo?"bg-white dark:bg-surface-secondary":""),children:e.logo?(0,a.jsx)(i.default,{src:e.logo,alt:e.name,width:40,height:40,className:"aspect-square h-full w-full",fallback:(0,a.jsx)(l,{name:e.name,size:"lg"})}):(0,a.jsx)(l,{name:e.name,size:"lg"})}),(0,a.jsxs)("div",{className:"min-w-0 flex-1 flex flex-col",children:[(0,a.jsx)("div",{className:"flex items-start gap-1",children:(0,a.jsx)("div",{className:"min-w-0 flex-1",children:(0,a.jsxs)("div",{className:"flex flex-wrap items-center gap-1",children:[(0,a.jsx)("h3",{className:"text-[13px] font-semibold leading-4.5 tracking-[-0.01em] text-text",children:e.name}),e.is_claimed&&(0,a.jsx)(b,{}),s&&(0,a.jsxs)("span",{className:"inline-flex items-center gap-0.5 rounded-full bg-(--warning,#f59e0b)/10 px-1 py-px text-[8px] font-bold uppercase tracking-wider text-(--warning,#f59e0b) whitespace-nowrap leading-none",children:[(0,a.jsx)("svg",{className:"h-2 w-2",viewBox:"0 0 24 24",fill:"
1currentColor","aria-hidden":"true",children:(0,a.jsx)("path",{d:"M11.48 3.499a.562.562 0 011.04 0l2.125 5.111a.563.563 0 00.475.345l5.518.442c.499.04.701.663.321.988l-4.204 3.602a.563.563 0 00-.182.557l1.285 5.385a.562.562 0 01-.84.61l-4.725-2.885a.563.563 0 00-.586 0L6.982 20.54a.562.562 0 01-.84-.61l1.285-5.386a.562.562 0 00-.182-.557l-4.204-3.602a.563.563 0 01.321-.988l5.518-.442a.563.563 0 00.475-.345L11.48 3.5z"})}),"Featured"]})]})})}),(e.review_count??0)>0&&(0,a.jsx)(f,{rating:e.rating??0,count:e.review_count??0,size:"xs"}),(0,a.jsxs)("div",{className:"flex flex-wrap items-center gap-1.5 min-h-[14px] py-0.5",children:[(0,a.jsx)(w,{type:e.dispensary_type}),(0,a.jsx)(j,{hasDelivery:e.has_delivery,hasPickup:e.has_pickup,deliveryTime:e.estimated_delivery_time,dispensaryType:e.dispensary_type})]}),(0,a.jsxs)("div",{className:"flex items-start gap-1",children:[e.address||e.city||e.state?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(o.MapPinIcon,{className:"mt-0.5 h-2.5 w-2.5 shrink-0 text-text-muted","aria-hidden":"true"}),(0,a.jsxs)("p",{className:"text-[11px] leading-3.75 text-text-muted",children:[e.address,e.city?e.address?`, ${e.city}`:e.city:"",e.state?e.address||e.city?`, ${e.state}`:e.state:""]})]}):null,(0,a.jsxs)("div",{className:"ml-auto flex shrink-0 items-center gap-1",children:[void 0!==e.distance&&(0,a.jsx)(v,{distance:e.distance}),(0,a.jsx)("span",{className:"flex items-center text-text-muted transition-all duration-(--transition-fast) group-hover:text-text group-hover:translate-x-0.5 motion-reduce:transition-none motion-reduce:group-hover:transform-none","aria-hidden":"true",children:(0,a.jsx)(c.ChevronRightIcon,{className:"h-3.5 w-3.5"})})]})]})]})]})}function M({dispensary:e,className:t}){return e.is_open,(0,a.jsxs)(r.default,{href:x(e),className:(0,n.cn)("group flex w-52 shrink-0 flex-col overflow-hidden rounded-xl border border-border bg-surface-primary","transition-all hover:-translate-y-0.5 hover:shadow-md hover:border-primary-dark","motion-reduce:hover:transform-none motion-reduce:transition-none","dark:bg-surface dark:border-border dark:hover:border-border-muted",t),"aria-label":`${e.name} - ${e.city}, ${e.state}`,children:[(0,a.jsx)("div",{className:"relative aspect-4/3 w-full overflow-hidden bg-surface-secondary",children:e.logo?(0,a.jsx)(i.default,{src:e.logo,alt:e.name,fill:!0,className:"object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none aspect-square h-full w-full",sizes:"208px",fallback:(0,a.jsx)(l,{name:e.name,size:"lg"})}):(0,a.jsx)(l,{name:e.name,size:"lg"})}),(0,a.jsxs)("div",{className:"flex flex-1 flex-col gap-1 p-3",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1",children:[(0,a.jsx)("h3",{className:"truncate text-sm font-bold text-text group-hover:text-secondary",children:e.name}),e.is_claimed&&(0,a.jsx)(b,{})]}),(e.review_count??0)>0&&(0,a.jsx)(f,{rating:e.rating??0,count:e.review_count??0,size:"xs"}),(0,a.jsxs)("p",{className:"mt-auto flex items-start gap-1 text-[11px] text-text-muted leading-snug",children:[(0,a.jsx)(o.MapPinIcon,{className:"mt-px h-3 w-3 shrink-0","aria-hidden":"true"}),(0,a.jsxs)("span",{className:"truncate",children:[e.city,", ",e.state]})]})]})]})}function N({dispensary:e,className:t}){return e.is_open,(0,a.jsxs)(r.default,{href:x(e),className:(0,n.cn)("group flex items-center gap-4 overflow-hidden rounded-xl border border-border bg-surface-primary","transition-all duration-200 hover:shadow-sm hover:border-text-muted/30","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-dark focus-visible:ring-offset-2","motion-reduce:transition-none px-4 py-3",t),"aria-label":`${e.name} - ${e.city}, ${e.state}`,children:[(0,a.jsx)("div",{className:"relative h-24 w-24 shrink-0 overflow-hidden rounded-lg border border-border bg-surface-secondary",children:(0,a.jsx)(i.default,{src:e.logo||"",alt:e.name,fill:!0,className:"object-cover h-full w-full",sizes:"96px",skipTransition:!0,fallback:(0,a.jsx)(l,{name:e.name,size:"lg"})})}),(0,a.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-1 py-1",children:[(0,a.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,a.jsx)("h3",{className:"truncate text-base font-bold leading-tight text-text",children:e.name}
1),(0,a.jsx)(w,{type:e.dispensary_type})]}),(0,a.jsx)("div",{className:"flex items-center gap-1.5 text-xs text-text-muted",children:(0,a.jsx)(j,{hasDelivery:e.has_delivery,hasPickup:e.has_pickup,deliveryTime:e.estimated_delivery_time,dispensaryType:e.dispensary_type})}),(e.review_count??0)>0&&(0,a.jsx)(f,{rating:e.rating??0,count:e.review_count??0,size:"sm"}),(0,a.jsx)("div",{className:"flex items-start gap-1",children:e.address||e.city||e.state?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(o.MapPinIcon,{className:"mt-0.5 h-3.5 w-3.5 shrink-0 text-text-muted","aria-hidden":"true"}),(0,a.jsxs)("p",{className:"truncate text-xs leading-5 text-text-muted",children:[e.address,e.city?e.address?`, ${e.city}`:e.city:"",e.state?e.address||e.city?`, ${e.state}`:e.state:""]})]}):null}),(0,a.jsx)("div",{className:"mt-1 flex items-center justify-between min-h-6",children:(0,a.jsx)("span",{className:"text-xs font-bold text-primary-accent group-hover:underline",children:"View Info →"})})]})]})}let C=(0,t.memo)(t.default.forwardRef(function({dispensary:e,variant:t="default",className:r,badge:i},n){return(0,a.jsx)("div",{ref:n,className:"mt-1",children:"mini"===t?(0,a.jsx)(M,{dispensary:e,className:r}):"compact"===t?(0,a.jsx)(k,{dispensary:e,className:r}):"list"===t?(0,a.jsx)(N,{dispensary:e,className:r}):(0,a.jsx)(y,{dispensary:e,className:r,badge:i})})}));C.displayName="DispensaryCard",e.s(["DispensaryCard",0,C,"getDispensaryHref",()=>x],938934)}]);

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.