1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8806],{88806:(e,t,a)=>{a.r(t),a.d(t,{default:()=>u});var o=a(41140),n=a(11960),s=a(69671),i=a(89752),c=a(72196),l=a(68096);let r=(0,a(87982).A)("ExternalLink",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);var d=a(7288),p=a(48042);function u(e){let{isOpen:t,onClose:a,locations:u,modalTitle:m="Select Location",modalDescription:x,modalFooterNote:f}=e,h=(0,d.useId)(),b="screaminpeach-book-now-location-picker-desc-".concat(h),_=(null==m?void 0:m.trim())||"Select location";return(0,o.jsx)(i.bL,{open:t,onOpenChange:e=>{e||a()},children:(0,o.jsxs)(i.ZL,{children:[(0,o.jsx)(i.hJ,{className:(0,s.cn)("".concat(p.p,"__overlay"),"fixed inset-0 z-50 bg-black/55 backdrop-blur-sm","data-[state=open]:animate-in data-[state=closed]:animate-out","data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0")}),(0,o.jsxs)(i.UC,{className:(0,s.cn)("".concat(p.p,"__content"),"fixed left-1/2 top-1/2 z-[51] grid w-[calc(100%-2rem)] max-w-md -translate-x-1/2 -translate-y-1/2 gap-0 overflow-hidden rounded-2xl border border-border bg-background p-0 shadow-2xl outline-none","duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out","data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0","data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95","data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%]","data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%]"),children:[(0,o.jsx)(i.hE,{className:"".concat(p.p,"__dialog-title sr-only"),children:_}),(0,o.jsx)("div",{className:"".concat(p.p,"__header border-b border-border p-6 pb-4"),children:(0,o.jsxs)("div",{className:"".concat(p.p,"__header-inner flex items-start justify-between gap-4"),children:[(0,o.jsxs)("div",{className:"".concat(p.p,"__header-text min-w-0 pr-2"),children:[(0,o.jsx)("p",{className:"".concat(p.p,"__title-visible text-2xl font-medium leading-tight text-foreground"),"aria-hidden":"true",children:_}),x?(0,o.jsx)(i.VY,{id:b,className:"".concat(p.p,"__description mt-1 text-sm text-muted-foreground"),children:x}):(0,o.jsx)(i.VY,{id:b,className:"sr-only",children:"Select a location. Booking opens in a new browser tab."})]}),(0,o.jsx)(i.bm,{type:"button",className:(0,s.cn)("".concat(p.p,"__close"),"flex size-10 shrink-0 items-center justify-center rounded-full bg-muted text-muted-foreground","transition-colors hover:bg-muted/80","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2"),"aria-label":"Close location picker",children:(0,o.jsx)(c.A,{className:"".concat(p.p,"__close-icon size-5"),"aria-hidden":!0})})]})}),(0,o.jsx)("ul",{className:"".concat(p.p,"__list max-h-[min(60vh,28rem)] list-none overflow-y-auto p-4"),"aria-label":"Booking locations",children:u.map((e,t)=>{var a,i,c;return e.bookingLink?(0,o.jsx)("li",{className:"".concat(p.p,"__list-item"),children:(0,o.jsxs)(n.A,{link:e.bookingLink,classNames:(0,s.cn)("".concat(p.p,"__location-link"),"group flex w-full items-start gap-4 roun
1ded-xl p-4 text-left transition-colors","hover:bg-muted/50 focus-visible:bg-muted/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2"),title:null!=(i=e.name)?i:void 0,children:[(0,o.jsx)("div",{className:"".concat(p.p,"__location-icon-wrap flex size-10 shrink-0 items-center justify-center rounded-full bg-primary/10 transition-colors group-hover:bg-primary/20"),children:(0,o.jsx)(l.A,{className:"".concat(p.p,"__location-icon size-5 text-primary"),"aria-hidden":!0})}),(0,o.jsxs)("div",{className:"".concat(p.p,"__location-body min-w-0 flex-1"),children:[(0,o.jsx)("span",{className:"".concat(p.p,"__location-name block font-medium text-foreground transition-colors group-hover:text-primary"),children:e.name}),e.address?(0,o.jsx)("span",{className:"".concat(p.p,"__location-address mt-0.5 block truncate text-sm text-muted-foreground"),children:e.address}):null,(null==(a=e.cityStateZip)?void 0:a.trim())?(0,o.jsx)("span",{className:"".concat(p.p,"__location-city-state-zip mt-0.5 block truncate text-sm text-muted-foreground"),children:e.cityStateZip}):null]}),(0,o.jsx)(r,{className:"".concat(p.p,"__location-external mt-1 size-4 shrink-0 text-muted-foreground opacity-0 transition-opacity group-hover:opacity-100 group-focus-visible:opacity-100"),"aria-hidden":!0})]})},null!=(c=e._key)?c:"".concat(e.name,"-").concat(t)):null})}),f?(0,o.jsx)("div",{className:"".concat(p.p,"__footer border-t border-border bg-muted/30 px-6 py-4"),children:(0,o.jsx)("p",{className:"".concat(p.p,"__footer-text text-center text-xs text-muted-foreground"),children:f})}):null]})]})})}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.