PageSourceSearch

https://spothero.com/consumer-seo/_next/static/chunks/1356-5a73f0156426cd46.js

js spothero.com collected 2026-09-24 08:31:02 UTC 98,440 bytes, 1 lines download raw bytes

1!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="a7d6ff53-03e6-4ba3-b2ca-4ffbf7f9bb6a",e._sentryDebugIdIdentifier="sentry-dbid-a7d6ff53-03e6-4ba3-b2ca-4ffbf7f9bb6a")}catch(e){}}(),(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1356],{15263:function(e,t,r){"use strict";r.d(t,{XE:function(){return getSearchPerformers},$G:function(){return getTransientFacilities}});var n=r(88986),i=r.n(n),a=r(43678),o=r(30379),l=r(89618),s=r(18870);a.ZP.extend(i());var c=r(86709),d=r(36474),u=r(53617),h=r(92783);async function getTransientFacilities(e){let{params:t,formatOptions:r,craigUrl:n=d.craigUrl}=e,i=(0,c.I)("".concat(n,"/search/transient"),{oversize:!1,...t}),h=await fetch(i.href),g=await (0,u.L)(h).json();return function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=e.map(e=>(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{userRequestedStarts:r,userRequestedEnds:n,eventId:i,timezone:c,rebookId:d}=t,u=o.default.camelizeKeys(e),{availability:h,distance:g,facility:{common:f,transient:p},rates:m}=u,{id:x,slug:v,hoursOfOperation:y}=f,b=m.map(e=>{let{quote:t,transient:o}=e;return function(e){let{quote:{order:t,advertisedPrice:r},additionalRateDetails:n,userRequestedStarts:i,userRequestedEnds:o,timezone:c}=e,d=t[0],{starts:u,ends:h}=d,g=(0,s.o0)(u,c),f=(0,s.o0)(h,c),p=d.items.some(e=>"oversize_vehicle_fee_flat"===e.type),{isExtended:m}=(0,l.XM)({actualStartDateTimeObj:(0,a.ZP)(g),actualEndDateTimeObj:(0,a.ZP)(f),requestedStartDateTimeObj:(0,a.ZP)(i),requestedEndDateTimeObj:(0,a.ZP)(o),isMonthly:!1}),x={...n,...d,hasOversizedFee:p,isAutoExtended:m};return{...x,advertisedPrice:r}}({spotId:x,facilitySlug:v,quote:t,additionalRateDetails:o,userRequestedStarts:r,userRequestedEnds:n,eventId:i,timezone:c,rebookId:d})});return{isV2:!0,...f,...p,images:f.images.map(s.G0),spotId:x,availability:h,distance:(0,s.Bb)(g),rates:b,selectedRate:b[0],allAmenities:(0,s.DA)(b),hoursOfOperation:(0,s.en)(y)}})(e,{...t,isFacilitySummary:!0}));return r}(g.results,r)}async function getSearchPerformers(e){let{params:t,craigUrl:r=d.craigUrl}=e;try{let e=(0,c.I)("".concat(r,"/performers/search"),{...t}),n=await fetch(e.href),i=await (0,u.L)(n).json();return(null==i?void 0:i.results)||[]}catch(e){return h.Tb(e),console.error("Failed to fetch search performers",e),[]}}},47706:function(e,t,r){"use strict";r.d(t,{Z:function(){return star_rating_StarRating}});var n=r(97458);r(52983);var i=r(11234),a=r(89659);let o={fontSize:"xs",margin:0,verticalAlign:"top",lineHeight:3};var star_rating_StarRating=e=>{let{stars:t=0,color:r="yellow.default"}=e;return(0,n.jsx)(a.xu,{...o,children:Array.from({length:5},(e,a)=>{let o=a+1,l=a+.5;return(0,n.jsx)(i.Z,{state:t>=o?"filled":t>=l?"half":"empty",color:r},a)})})}},11234:function(e,t,r){"use strict";r.d(t,{Z:function(){return star_StarRatingStar}});var n=r(97458);r(52983);var i=r(21934),a=r(68723),o=r(54186),l=r(89659),s=r(4233);let c={empty:{icon:o.Z,testId:"StarRating-Star-empty",styles:{}},half:{icon:a.Z,testId:"StarRating-Star-half-empty",styles:{top:{base:"0",tablet:"0"},left:{base:"-3px",tablet:"-3px"}}},filled:{icon:i.Z,testId:"StarRating-Star-filled",styles:{}}};var star_StarRatingStar=e=>{let{state:t,color:r="yellow.default"}=e,i=c[t];return(0,n.jsx)(l.xu,{display:"inline-block",verticalAlign:"middle",position:"relative",children:(0,n.jsx)(s.J,{as:i.icon,name:"star-icon",width:"3.5",height:"3.5",color:r,"data-testid":i.testId,...i.styles})})}},24543:function(e,t,r){"use strict";r.d(t,{G:function(){return n}});let n=3e5},90814:function(e,t,r){"use strict";r.d(t,{C1:function(){return toFacilitySlug},T3:function(){return n},Z2:function(){return getCanonicalUrl},gH:function(){return isMidFunnelPage}});let n=Object.freeze({PAGE_NOT_FOUND:"page_not_found",AIRPORT:"airport",CATEGORY:"category",CHECKOUT:"checkout",CITY:"city",COLONIAL:"colonial",DISTRICT_DETROIT:"parkdistrictdetroit",CONFIRMATION:"confirmation",DESTINATION:"destination",EVENT:"event",EVENT_PACKAGES_VENUE:"event_packages_venue",EVENT_PACKAGES_SEARCH:"event_packages_search",FACILITY:"facility",HOME:"home",LEGAL:"legal",MID_FUNNEL:"mid_funnel",MARKETING:"marketing",NOT_FOUND:"not_found",PRESS_RELEASE:"press_release",REDIRECT:"redirect",SEARCH:"search",VENUE:"venue",PERFORMERS:"performers"}),toFacilitySlug=e=>"".concat(e,"-parking");function isMidFunnelPage(e){let t=[n.AIRPORT,n.CITY,n.DESTINATION,n.MID_FUNNEL];return t.includes(e)}function getCanonicalUrl(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=e.split("?")[0],n=r.replace(/\/$/,"").toLowerCase();return t&&!n.endsWith("-parking")&&(n="".concat(n,"-parking")),n}},80122:function(e,t,r){"use strict";function getCapturedReferrer(){try{var e,t,r;let n=null!==(r=null===(e=window.__SPOTHERO)||void 0===e?void 0:e.capturedReferrer)&&void 0!==r?r:null===(t=window.document)||void 0===t?void 0:t.referrer;return n||null}catch(e){return null}}r.d(t,{T:function(){return getCapturedReferrer}})},36944:function(e,t,r){"use strict";r.d(t,{C:function(){return o}});var n=r(68690),i=r(4462),a=r(21423);let o={SEARCH:"SEARCH",DATE_CHANGED:"DATE_CHANGED"},l=[o.SEARCH,o.DATE_CHANGED];t.Z={updateAction(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.SEARCH;i.default.remove(a.BU.SEARCH_TRACKING.COOKIES.ACTION_UUID_COOKIE,a.f5.COOKIE),l.find(t=>t===e)&&i.default.remove(a.BU.SEARCH_TRACKING.COOKIES.SEARCH_UUID_COOKIE,a.f5.COOKIE),i.default.set(a.BU.SEARCH_TRACKING.COOKIES.ACTION_COOKIE,e,a.f5.COOKIE,a.xR.HALF_HOUR_IN_DAYS)},getValues(){let e=i.default.get(a.BU.SEARCH_TRACKING.COOKIES.SESSION_UUID_COOKIE,a.f5.COOKIE),t=i.default.get(a.BU.SEARCH_TRACKING.COOKIES.SEARCH_UUID_COOKIE,a.f5.COOKIE),r=i.default.get(a.BU.SEARCH_TRACKING.COOKIES.ACTION_UUID_COOKIE,a.f5.COOKIE),l=i.default.get(a.BU.SEARCH_TRACKING.COOKIES.ACTION_COOKIE,a.f5.COOKIE),s=e||(0,n.Z)(),c=e&&t&&/\S/.test(t)?t:(0,n.Z)(),d=e&&t&&r?r:(0,n.Z)(),u=l||o.SEARCH;return i.default.set(a.BU.SEARCH_TRACKING.COOKIES.SESSION_UUID_COOKIE,s,a.f5.COOKIE,a.xR.HALF_HOUR_IN_DAYS),i.default.set(a.BU.SEARCH_TRACKING.COOKIES.SEARCH_UUID_COOKIE,c,a.f5.COOKIE,a.xR.HALF_HOUR_IN_DAYS),i.default.set(a.BU.SEARCH_TRACKING.COOKIES.ACTION_UUID_COOKIE,d,a.f5.COOKIE,a.xR.HALF_HOUR_IN_DAYS),i.default.set(a.BU.SEARCH_TRACKING.COOKIES.ACTION_COOKIE,u,a.f5.COOKIE,a.xR.HALF_HOUR_IN_DAYS),{sessionUUID:s,searchUUID:c,actionUUID:d,action:u}}}},14587:function(e,t,r){"use strict";r.d(t,{Z:function(){return trackPageLanding}});var n=r(91581),i=r(90814),a=r(80122);let mapToSegmentEvent=e=>e===i.T3.PAGE_NOT_FOUND?"Page Not Found":e===i.T3.MARKETING?"Marketing Landing":e===i.T3.CATEGORY?"Category Landing":"Mid Funnel Landing";function trackPageLanding(e){let{pageType:t,page:r,city:i,destination:o,airportCode:l,destinationID:s,destinationCategoryTitle:c,extraProperties:d={}}=e,u=(0,a.T)(),h={referrer:u,page_type:t,...i&&{city:i},...o&&{destination:o},...r&&{page:r},...s&&{destination_id:s},...l&&{airport_code:l},...c&&{destination_category:c},...d};n.Z.page({name:mapToSegmentEvent(t),properties:h})}},18764:function(e,t,r){"use strict";r.d(t,{Z:function(){return components_WalkingDistanceDisplay}});var n=r(97458);r(52983);var i=r(50899);let parseWalkingDuration=e=>{let{duration:t}=e;return"".concat(Math.floor(t/60)||"<1"," min")},a={short:"mi",long:"miles"},o={short:"ft",long:"feet"},parseDistance=e=>{let{linearMeters:t,walkingMeters:r,country:n,format:i="short",showFeetOrMeters:l=!0}=e,s=(n||"US").toUpperCase(),c=r||t;if("CA"===s){let e="".concat((c/1e3).toFixed(1)," km");return l&&c<1e3?"".concat(c.toFixed(0)," m"):e}let d=c/1609,u="".concat(d.toFixed(1)," ").concat(a[i]);return l&&d<=.1?"".concat(Math.round(5280*d)," ").concat(o[i]):u},parseWalkingDistanceAndDuration=e=>{let{linearMeters:t,walkingMeters:r,walkingDuration:n,countryCode:i}=e,a=n?parseWalkingDuration({duration:n}):null,o=parseDistance({linearMeters:t,walkingMeters:r,country:i,showFeetOrMeters:!0});return{duration:a,distance:o}};var l=r(41483),s=r(4233),c=r(92593),components_WalkingDistanceDisplay=e=>{let{linearMeters:t,walkingMeters:r,walkingDuration:a,countryCode:o,color:d="gray.dark"}=e,{duration:u,distance:h}=parseWalkingDistanceAndDuration({linearMeters:t,walkingMeters:r,walkingDuration:a,countryCode:o});return(0,n.jsxs)(l.k,{alignItems:"center","data-testid":"walking-distance-display",children:[(0,n.jsx)(s.J,{alt:"Walking Man",h:5,w:5,color:d,paddingRight:1,children:(0,n.jsx)(i.Z,{})}),u&&(0,n.jsx)(c.xv,{as:"span",color:"black",paddingRight:1,fontWeight:"semibold",fontSize:"sm","data-testid":"walking-distance-duration",children:u}),(0,n.jsxs)(c.xv,{as:"span",color:d,fontSize:"sm","data-testid":"walking-distance",children:["(",h,")"]})]})}},47235:function(e,t,r){"use strict";var n=r(52983),i=r(13522),a=r(32768);t.Z=e=>
1{let t=a.default.isMobileDevice(e||""),[r,o]=(0,n.useState)(!1);(0,n.useEffect)(()=>{o(!0)},[]);let l=(0,i.S)({base:!0,tablet:!1});return r?l:t}},93061:function(e,t,r){"use strict";r.d(t,{Z:function(){return use_page_not_found_analytics}});var n=r(52983),i=r(58428),a=r(51375),o=r(14587),l=r(90814),s=r(91581),use_page_not_found_analytics=e=>{let t=(0,i.useRouter)(),r=(0,n.useRef)(!1);(0,n.useEffect)(()=>{e&&(0,o.Z)({pageType:l.T3.PAGE_NOT_FOUND,page:window.location.href})},[e]),(0,n.useEffect)(()=>{e&&(!r.current&&(t.asPath.includes("s2p")||t.asPath.includes("49584"))&&a.Z.data((e,t)=>{var r,n,i;let a=(null==t?void 0:null===(i=t.data_parsed)||void 0===i?void 0:null===(n=i["~referring_link"])||void 0===n?void 0:null===(r=n.split("~"))||void 0===r?void 0:r[0])||"Link not found";!function(e){let{branchLink:t}=e;s.Z.track({event:"Scan2Pay 404 Viewed",properties:{branchLink:t},additionalOptions:{context:{protocols:{event_version:1}}}})}({branchLink:a})}),r.current=!0)},[e,t])}},11356:function(e,t,r){"use strict";r.d(t,{Z:function(){return components_Facility}});var n=r(97458),i=r(52983),a=r(4462),o=r(23537),l=r(92593),s=r(22866),c=r(79606),d=r.n(c),u=r(49157),h=r(89659),g=r(4233),f=r(77257),p=r(29009),m=r(61668);let x={SINGLE:"single",MEDIUM:"medium",WIDE:"wide"},ImageCarousel=e=>{let{images:t,width:r,height:a,variant:o=x.SINGLE,reinitialize:s=!1,...c}=e,d=r?"".concat(r,"rem"):"100%",v="".concat(a,"rem"),{colors:y,shadows:b}=(0,u.F)(),j=Object.values(x).includes(o)?o:x.SINGLE,w=j===x.WIDE,_=j===x.MEDIUM,k=j===x.SINGLE,O=w?"36%":_?"75%":"100%",S=w?6:_?2:0,I=k?"0":"1rem",C=(0,i.useMemo)(()=>({skipSnaps:!1,loop:!0,slidesToScroll:1,align:k?"center":"start"}),[k]),[A,E]=(0,f.Z)(C),[R,T]=(0,i.useState)(0),P=(0,i.useCallback)(()=>E&&E.scrollPrev(),[E]),N=(0,i.useCallback)(()=>E&&E.scrollNext(),[E]),z=(0,i.useCallback)(()=>{E&&T(E.selectedScrollSnap())},[E,T]);(0,i.useEffect)(()=>{E&&(z(),E.on("select",z))},[E,z]),(0,i.useEffect)(()=>{s&&E&&E.reInit(C)},[E,C,s]);let D={display:"flex",justifyContent:"center",alignItems:"center",width:"70%",height:"65%",background:"white",borderRadius:"2xl"},F={background:"gray.200",borderRadius:k?"0":"2xl",display:"flex",justifyContent:"center",alignItems:"center"};if(1===t.length){let e=t[0];return e.isLogo?(0,n.jsx)(h.xu,{width:O,...F,height:v,children:(0,n.jsx)(h.xu,{...D,children:(0,n.jsx)(l.Ee,{borderRadius:I,objectFit:"cover",width:"50%",src:e.src,alt:e.alt})})}):(0,n.jsx)(h.xu,{width:d,height:v,...c,children:(0,n.jsx)(l.Ee,{width:O,borderRadius:I,height:"100%",objectFit:"cover",src:e.src,alt:e.alt})})}return(0,n.jsxs)(h.xu,{as:"section",position:"relative",overflow:"hidden",width:d,borderRadius:I,...c,"data-testid":"ImageCarousel",children:[(0,n.jsx)(h.xu,{ref:A,children:(0,n.jsx)(h.xu,{display:"flex",role:"group",children:t.map((e,r)=>(0,n.jsxs)(h.xu,{position:"relative",flex:"0 0 ".concat(O),marginRight:w&&3===t.length&&r===t.length-1?0:S,"aria-label":"Slide ".concat(r+1," of ").concat(t.length),...e.isLogo&&F,children:[(0,n.jsx)(h.xu,{position:"relative",height:v,...e.isLogo&&D,"data-testid":"ImageCarousel-imagecontainer",children:(0,n.jsx)(l.Ee,{borderRadius:I,width:e.isLogo?"50%":"100%",height:!e.isLogo&&"100%",objectFit:"cover",src:e.src,alt:e.alt})}),k?null:(0,n.jsxs)(h.xu,{color:"white",borderRadius:"1rem",bgColor:"black",opacity:"0.6",paddingX:3,paddingY:1,fontSize:"xs",position:"absolute",top:3,right:3,children:[r+1,"/",t.length]})]},r))})}),(0,n.jsx)(l.zx,{onClick:P,width:"16",height:"100%",position:"absolute",left:"0",top:"0",bg:"none",borderRadius:"0",border:"0",_hover:{bg:k?"none":"linear-gradient(90deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.318944) 20.83%, rgba(0, 0, 0, 0.204399) 41.67%, rgba(0, 0, 0, 0.0807292) 72.4%, rgba(0, 0, 0, 0) 100%);",border:0},background:"none",_focus:{boxShadow:"none"},_focusVisible:{">div":{border:"2px solid ".concat(y.gray["50"]),boxShadow:b.outline}},padding:"3",sx:{"@media print":{display:"none"}},children:(0,n.jsx)(h.xu,{border:"2px solid rgba(0,0,0,0.6)",padding:2.5,paddingLeft:"0.5625rem",paddingRight:"0.6875rem",borderRadius:"50%",bgColor:"black",opacity:"0.6",children:(0,n.jsx)(g.J,{as:p.Z,width:4,height:"auto",color:"white"})})}),(0,n.jsx)(l.zx,{onClick:N,width:"16",height:"100%",position:"absolute",right:"0",top:"0",bg:"none",borderRadius:"0",border:"0",_hover:{bg:k?"none":"linear-gradient(270deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.318944) 20.83%, rgba(0, 0, 0, 0.204399) 41.67%, rgba(0, 0, 0, 0.0807292) 72.4%, rgba(0, 0, 0, 0) 100%);",border:0},background:k?"none":"linear-gradient(270deg, rgba(255, 255, 255, 0.83) 0%, rgba(255, 255, 255, 0.637889) 14.49%, rgba(255, 255, 255, 0.408798) 28.97%, rgba(255, 255, 255, 0.161458) 50.34%, rgba(255, 255, 255, 0) 69.53%)",_focus:{boxShadow:"none"},_focusVisible:{">
1div":{border:"2px solid ".concat(y.gray["50"]),boxShadow:b.outline}},padding:"3",sx:{"@media print":{display:"none"}},children:(0,n.jsx)(h.xu,{borderRadius:"50%",bgColor:"black",opacity:"0.6",border:"2px solid rgba(0,0,0,0.6)",padding:2.5,paddingRight:"0.5625rem",paddingLeft:"0.6875rem",children:(0,n.jsx)(g.J,{as:m.Z,width:4,height:"auto",color:"white"})})}),k&&(0,n.jsxs)(h.xu,{color:"white",borderRadius:"1rem",bgColor:"black",opacity:"0.6",paddingX:3,paddingY:1,fontSize:"xs",position:"absolute",bottom:3,left:"50%",transform:"translateX(-50%)",className:"ImageCarousal-image-count",children:[R+1,"/",t.length]})]})};var v=r(47235),y=r(41483),b=r(14289),j=r(77177);let w=(0,i.forwardRef)((e,t)=>{let{hasInOutAmenity:r,iconStyles:i,spanStyles:a,...o}=e,s={true:{color:"black",icon:b.default.getIcon("in-out"),fontWeight:"semibold",text:"In & Out Allowed"},false:{color:"black",icon:j.wE8,fontWeight:"normal",text:"No In & Out"}},{color:c,icon:d,fontWeight:u,text:h}=s["".concat(r)];return(0,n.jsxs)(y.k,{...o,ref:t,children:[(0,n.jsx)(g.J,{as:d,h:5,w:5,color:c,paddingRight:1,...i}),(0,n.jsx)(l.xv,{as:"span",variant:"body2",color:c,fontWeight:u,...a,children:h})]})});w.displayName="AmenitiesInOutSummary";let AboveTheFold=e=>{let{images:t,address:r,amenities:i=[],title:a,scrollToGettingThere:o}=e,s=(0,v.Z)(),c=!!i.find(e=>"in-out"===e.type);return(0,n.jsxs)(h.xu,{children:[(0,n.jsx)(ImageCarousel,{images:t,variant:s?x.SINGLE:x.MEDIUM,height:s?16:20}),(0,n.jsxs)(l.X6,{as:"h2",marginTop:8,"data-testid":"facility-title",children:["Reserve parking at ",a]}),(0,n.jsxs)(l.zx,{variant:"tertiary",marginTop:6,alignItems:"center",gap:.5,color:"text.primary",onClick:o,children:[(0,n.jsx)(g.J,{display:"inline-block",name:"location",as:j.lO8}),(0,n.jsxs)(l.X6,{as:"h5",display:"inline-block",textDecoration:"underline",children:[null==r?void 0:r.street_address,", ",null==r?void 0:r.city,", ",null==r?void 0:r.state," ",null==r?void 0:r.postal_code]})]}),(0,n.jsx)(y.k,{alignItems:"end",marginTop:"8",children:(0,n.jsx)(w,{hasInOutAmenity:c})})]})};var _=r(76833),k=r(2781),O=r(44717);async function fetchReviews(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,n="".concat(t,"/reviews/?facility_id=").concat(e,"&page=").concat(r),i=await fetch(n,{headers:{"Content-Type":"application/json"}});if(!i.ok)throw Error("Failed to fetch reviews: ".concat(i.statusText));return i.json()}let useReviews=e=>{let{facilityId:t,enabled:r,apiBaseUrl:n,page:a=1}=e,[o,l]=(0,i.useState)([]),[s,c]=(0,i.useState)(!1),[d,u]=(0,i.useState)(!1),[h,g]=(0,i.useState)(null),[f,p]=(0,i.useState)(a),[m,x]=(0,i.useState)(!1),v=(0,i.useRef)(!1);(0,i.useEffect)(()=>
1{l([]),p(a),x(!1),g(null),c(!1),u(!1),v.current=!1},[t,a]),(0,i.useEffect)(()=>{r&&t&&0===o.length&&(c(!0),g(null),v.current=!0,fetchReviews(t,n,a).then(e=>{l(e.results),x(null!==e.next),p(a),c(!1),v.current=!1}).catch(()=>{g("Failed to load reviews. Please try again."),c(!1),v.current=!1}))},[r,t,n,a,o.length]);let y=(0,i.useCallback)(()=>{if(!m||d||v.current)return;u(!0),g(null),v.current=!0;let e=f+1;fetchReviews(t,n,e).then(t=>{l(e=>[...e,...t.results]),x(null!==t.next),p(e),u(!1),v.current=!1}).catch(()=>{g("Failed to load more reviews. Please try again."),u(!1),v.current=!1})},[m,d,f,t,n]);return{reviews:o,loading:s,isLoadingMore:d,error:h,hasMore:m,loadMore:y}},useInfiniteScroll=e=>{let{onLoadMore:t,hasMore:r,isLoading:n,rootMargin:a="100px",root:o}=e,l=(0,i.useRef)(null),s=(0,i.useRef)(null);return(0,i.useEffect)(()=>{let e=l.current,i=null==o?void 0:o.current;if(e&&(!o||i))return s.current=new IntersectionObserver(e=>{let[i]=e;i.isIntersecting&&r&&!n&&t()},{root:i||null,rootMargin:a}),s.current.observe(e),()=>{s.current&&s.current.disconnect()}},[t,r,n,a,null==o?void 0:o.current]),{sentinelRef:l}},useModalInfiniteScroll=e=>{let{onLoadMore:t,hasMore:r,isLoading:n,isOpen:a,scrollContainerId:o,rootMargin:l="100px"}=e,[s,c]=(0,i.useState)(null);(0,i.useEffect)(()=>{if(!a){c(null);return}let e=null,t=0,findModalContent=()=>{let r=document.getElementById(o);if(r){c(r);return}(t+=1)<60&&(e=window.requestAnimationFrame(findModalContent))};return findModalContent(),()=>{null!==e&&window.cancelAnimationFrame(e)}},[a,o]);let d=(0,i.useRef)(null);d.current=s;let{sentinelRef:u}=useInfiniteScroll({onLoadMore:t,hasMore:r,isLoading:n,rootMargin:l,root:d});return{sentinelRef:u}};var S=r(82378),I=r(21934),C=r(54186);let ReviewStarRating=e=>{let{rating:t}=e;return(0,n.jsxs)(y.k,{alignItems:"center",gap:1,children:[[1,2,3,4,5].map(e=>(0,n.jsx)(g.J,{as:e<=t?I.Z:C.Z,width:"4",height:"4",color:"black"},e)),(0,n.jsxs)(l.xv,{fontWeight:"semibold",fontSize:"lg",ml:1,children:[t,"/5"]})]})};var A=r(44713),E=r(9939),R=r(78692);let ReviewRentalDetails=e=>{let{vehicleType:t,duration:r,destination:i}=e;return(0,n.jsxs)(y.k,{gap:4,mb:3,flexWrap:"wrap",children:[(0,n.jsxs)(y.k,{alignItems:"center",gap:1,children:[(0,n.jsx)(g.J,{as:E.Z,width:"3",height:"3",color:"gray.500"}),(0,n.jsx)(l.xv,{fontSize:"xs",children:r})]}),t&&(0,n.jsxs)(y.k,{alignItems:"center",gap:1,children:[(0,n.jsx)(g.J,{as:A.Z,width:"3",height:"3",color:"gray.500"}),(0,n.jsx)(l.xv,{fontSize:"xs",children:t})]}),i&&(0,n.jsxs)(y.k,{alignItems:"center",gap:1,children:[(0,n.jsx)(g.J,{as:R.Z,width:"3",height:"3",color:"gray.500"}),(0,n.jsx)(l.xv,{fontSize:"xs",children:i})]})]})},ReviewPromptsList=e=>{let{prompts:t}=e;return 0===t.length?null:(0,n.jsx)(y.k,{gap:2,flexWrap:"wrap",children:t.map(e=>(0,n.jsxs)(y.k,{alignItems:"center",gap:1,p:2,borderRadius:"lg",background:"gray.light",children:[(0,n.jsx)(l.xv,{fontSize:"xs",children:e.emoji}),(0,n.jsx)(l.xv,{fontSize:"xs",children:e.prompt_text})]},e.id))})};var T=r(89618);let ReviewItem=e=>{let{review:t}=e,{star_rating:r,rental:i,prompts:a}=t,o=(0,S.Z)(i.created).format("MMMM D, YYYY"),s=(0,T.Xh)((0,S.Z)(i.ends).diff((0,S.Z)(i.starts)));return(0,n.jsxs)(h.xu,{border:"1px solid",borderColor:"gray.200",borderRadius:"md",p:4,children:[(0,n.jsxs)(y.k,{justifyContent:"space-between",alignItems:"flex-start",mb:2,children:[(0,n.jsx)(ReviewStarRating,{rating:r}),(0,n.jsx)(l.xv,{fontSize:"xs",color:"gray.dark",children:o})]}),(0,n.jsx)(ReviewRentalDetails,{vehicleType:i.make_model,duration:s,destination:i.venue}),(0,n.jsx)(ReviewPromptsList,{prompts:a})]})};var P=r(65845),N=r(12152);let SEOTooltip=e=>{let{children:t,ariaLabel:r}=e;return(0,n.jsxs)(l.J2,{placement:"bottom",variant:"dark",isLazy:!0,modifiers:[{name:"zIndex",enabled:!0,phase:"write",fn(e){let{state:t}=e;return t.styles.popper.zIndex=1e4,t}}],children:[(0,n.jsx)(P.x,{children:(0,n.jsx)(h.xu,{as:"button",cursor:"pointer",display:"inline-flex",alignItems:"center","aria-label":r,children:(0,n.jsx)(g.J,{as:N.Z,boxSize:4,color:"gray.600"})})}),(0,n.jsxs)(l.yk,{children:[(0,n.jsx)(l.QH,{}),t]})]})};var rating_reviews_ReviewsModal=e=>{let{isOpen:t,onClose:r,facilityId:i,apiBaseUrl:a}=e,{reviews:o,loading:s,isLoadingMore:c,error:d,hasMore:u,loadMore:g}=useReviews({facilityId:i,enabled:t,apiBaseUrl:a,page:1}),{sentinelRef:f}=useModalInfiniteScroll({onLoadMore:g,hasMore:u,isLoading:c,isOpen:t,rootMargin:"100px",scrollC
1ontainerId:"reviews-modal-content"});return(0,n.jsxs)(l.u_,{isOpen:t,onClose:r,hasHeader:!0,size:"lg","data-testid":"reviews-modal",children:[(0,n.jsx)(k.x,{fontSize:"xl",children:"Reviews"}),(0,n.jsxs)(y.k,{gap:1,marginBottom:3,marginX:4,children:[(0,n.jsx)(l.xv,{fontSize:"sm",fontWeight:"semibold",children:"Reservation Details"}),(0,n.jsx)(SEOTooltip,{ariaLabel:"Reservation Details",children:"View reservation details for each rating, including duration, vehicle type, and whether it was for an event. Sorted by most recent review created date."})]}),(0,n.jsxs)(O.f,{id:"reviews-modal-content",maxHeight:{base:"100%",tablet:"65vh"},overflowY:"auto",children:[s&&0===o.length&&(0,n.jsx)(y.k,{justifyContent:"center",width:"100%",py:8,children:(0,n.jsx)(l.$j,{})}),d&&0===o.length&&(0,n.jsx)(h.xu,{py:8,children:(0,n.jsx)(l.xv,{color:"red.default",textAlign:"center",children:d})}),!s&&!d&&0===o.length&&(0,n.jsx)(h.xu,{py:8,children:(0,n.jsx)(l.xv,{color:"gray.dark",textAlign:"center",children:"No reviews available."})}),o.length>0&&(0,n.jsxs)(y.k,{gap:4,direction:"column",width:"100%",children:[o.map(e=>(0,n.jsx)(ReviewItem,{review:e},e.id)),u&&(0,n.jsx)(h.xu,{ref:f,height:"1px",width:"100%",minHeight:"1px","aria-hidden":"true"}),c&&(0,n.jsx)(y.k,{justifyContent:"center",py:4,children:(0,n.jsx)(l.$j,{})}),d&&o.length>0&&(0,n.jsx)(h.xu,{py:4,children:(0,n.jsx)(l.xv,{color:"red.default",textAlign:"center",children:d})})]})]})]})},z=r(28840);let RatingSummary=e=>{let{average:t,count:r}=e,i=Number.isInteger(t)?t:t.toFixed(1);return(0,n.jsxs)(y.k,{alignItems:"center",gap:2,mb:4,children:[(0,n.jsx)(g.J,{as:I.Z,width:"3.5",height:"3.5",color:"black"}),(0,n.jsx)(l.xv,{fontWeight:"semibold",fontSize:"base",children:i}),(0,n.jsx)(l.xv,{color:"gray.100",children:"|"}),(0,n.jsx)(l.xv,{fontWeight:"semibold",fontSize:"sm",children:z.Z.formatCount(r,"rating")}),(0,n.jsx)(SEOTooltip,{ariaLabel:"Rating information",children:"After your reservation ends, you can rate your experience from 1–5 stars. You have 30 days to submit a rating, and your score is averaged with other drivers' ratings to determine the location's overall rating."})]})},RatingDistributionBar=e=>{let{stars:t,percentage:r}=e;return(0,n.jsxs)(y.k,{alignItems:"center",gap:3,mb:1,children:[(0,n.jsx)(l.xv,{fontSize:"xs",minWidth:2,children:t}),(0,n.jsx)(h.xu,{flex:"1",height:2,bg:"gray.light",borderRadius:"full",children:(0,n.jsx)(h.xu,{height:"100%",width:"".concat(r,"%"),bg:"gray.dark",borderRadius:"full",transition:"width 0.3s ease"})}),(0,n.jsxs)(l.xv,{fontSize:"xs",color:"gray.dark",minWidth:9,textAlign:"right",children:[r,"%"]})]})},RatingDistributionList=e=>{let{distribution:t}=e;return 0===t.length?null:(0,n.jsx)(h.xu,{mb:6,children:t.map(e=>{let{stars:t,percentage:r}=e;return(0,n.jsx)(RatingDistributionBar,{stars:t,percentage:r},t)})})},DriverTagChip=e=>{let{emoji:t,name:r,count:i}=e;return(0,n.jsxs)(y.k,{alignItems:"center",gap:4,p:2,borderRadius:"lg",background:"gray.light",children:[(0,n.jsx)(l.xv,{fontSize:"lg",lineHeight:"1",children:t}),(0,n.jsx)(l.xv,{fontSize:"xs",fontWeight:"normal",children:r}),(0,n.jsx)(l.xv,{fontSize:"xs",color:"gray.dark",fontWeight:"normal",children:i})]})},DriverTagsList=e=>{let{prompt_counts:t=[]}=e;return Array.isArray(t)&&0!==t.length?(0,n.jsxs)(h.xu,{mb:6,children:[(0,n.jsx)(l.X6,{as:"h6",fontSize:"sm",mb:3,children:"What Drivers Like"}),(0,n.jsx)(y.k,{flexWrap:"wrap",gap:2,children:t.map(e=>(0,n.jsx)(DriverTagChip,{...e},e.name))})]}):null},getAreReviewsVisible=e=>e.count>=10,RatingReviews=e=>{let{facilityId:t,rating:r,config:i,showHeading:a=!0}=e,{average:s,count:c}=r,{isOpen:d,onOpen:u,onClose:g}=(0,o.q)(),f=function(e){var t,r,n,i,a;let o=[{stars:5,count:null!==(t=e.five_star_count)&&void 0!==t?t:0},{stars:4,count:null!==(r=e.four_star_count)&&void 0!==r?r:0},{stars:3,count:null!==(n=e.three_star_count)&&void 0!==n?n:0},{stars:2,count:null!==(i=e.two_star_count)&&void 0!==i?i:0},{stars:1,count:null!==(a=e.one_star_count)&&void 0!==a?a:0}],l=e.count||1;return o.map(e=>{let{stars:t,count:r}=e;return{stars:t,percentage:Math.round(r/l*100)}})}(r);
1return(0,n.jsxs)(h.xu,{"data-testid":"rating-reviews",mb:a?6:0,children:[a&&(0,n.jsx)(l.X6,{as:"h3",mb:4,children:"Reviews"}),(0,n.jsx)(RatingSummary,{average:s,count:c}),(0,n.jsx)(RatingDistributionList,{distribution:f}),(0,n.jsx)(DriverTagsList,{prompt_counts:r.prompt_counts}),(0,n.jsx)(l.zx,{onClick:u,variant:"secondary",width:"100%",children:"See all reviews"}),(0,n.jsx)(rating_reviews_ReviewsModal,{isOpen:d,onClose:g,facilityId:t,apiBaseUrl:i.spotheroV1ApiUrl})]})};var D=r(28977),F=r.n(D);let formatAccessHours=e=>{let t=[],r=!1;e.always_open&&(r=!0),!r&&e.text&&e.text.length>0&&"This facility is open 24/7."===e.text[0]&&(r=!0);let n=e.periods;if(!r&&n&&n.length>0){let e=n[0];e.first_day===e.last_day&&e.start_time===e.end_time&&(r=!0)}return r?t.push({type:"247"}):null==n||n.forEach(e=>{let r,n=e.first_day;if(e.first_day!==e.last_day&&(n="".concat(e.first_day," – ").concat(e.last_day)),e.start_time&&e.end_time){let t="YYYY-MM-DD HH:mm:ss",n="h:mma";r="".concat(F()("2025-01-01 ".concat(e.start_time),t).format(n)," – ").concat(F()("2025-01-01 ".concat(e.end_time),t).format(n))}else e.hours_type&&(r=e.hours_type);t.push({days:n,value:r,type:e.hours_type})}),t}
1,getAreAccessHoursVisible=e=>{let t=formatAccessHours(e);return null!==t&&t.length>0},AccessHours=e=>{var t;let{facility:r,showHeading:i=!0}=e,a=formatAccessHours(r.hoursOfOperation);return(0,n.jsxs)(h.xu,{"data-testid":"AccessHours",mb:i?6:0,children:[i&&(0,n.jsx)(l.X6,{as:"h3",mb:4,children:"Access Hours"}),(null===(t=a[0])||void 0===t?void 0:t.type)==="247"?(0,n.jsx)(l.xv,{fontSize:"sm",children:"This facility is open 24/7."}):(0,n.jsx)(y.k,{direction:"column",gap:2,children:a.map((e,t)=>(0,n.jsxs)(y.k,{justifyContent:"space-between","data-testid":"access-hours-period",children:[(0,n.jsx)(l.xv,{fontSize:"sm",fontWeight:"semibold",children:e.days}),(0,n.jsx)(l.xv,{fontSize:"sm",children:e.value})]},t))})]})};var H=r(78251),M=r(97452);let getVisibleRestrictions=(e,t)=>e&&Array.isArray(e)&&0!==e.length?e.filter(e=>!(t&&"This facility does NOT allow in/out privileges. You CANNOT enter & exit more than once."===e)):[],ThingsYouShouldKnow=e=>{let{restrictions:t,hasInOutAmenity:r=!1,showHeading:i=!0}=e,a=getVisibleRestrictions(t,r);return(0,n.jsxs)(h.xu,{"data-testid":"ThingsYouShouldKnow",mb:i?6:0,children:[i&&(0,n.jsx)(l.X6,{as:"h3",mb:4,children:"Things You Should Know"}),(0,n.jsx)(l.aV,{spacing:2,styleType:"disc",stylePosition:"inside",children:a.map((e,t)=>{let r=e.includes("VIP"),i=M.ZP.sanitize(e,{ALLOWED_TAGS:["strong","em","b","i"],ALLOWED_ATTR:[]});return(0,n.jsx)(H.HC,{paddingLeft:5,textIndent:"-1.25rem",children:(0,n.jsx)(l.xv,{as:"span",fontSize:"sm",color:r?"red.default":"inherit",dangerouslySetInnerHTML:{__html:i}})},"restriction-".concat(t))})})]})},AmenityItem=e=>{let{amenity:t}=e,r=b.default.getIcon(t.type);return(0,n.jsxs)(y.k,{alignItems:"center",gap:2,"data-testid":"amenity-item",children:[r&&(0,n.jsx)(g.J,{as:r,width:"20px",height:"20px","data-testid":"amenity-icon-".concat(t.type)}),(0,n.jsx)(l.xv,{fontSize:"sm",children:t.display_name}),"touchless"===t.type&&(0,n.jsx)(SEOTooltip,{ariaLabel:"More info about touchless redemption",children:"This is a self-park facility that doesn't require you to touch buttons or surfaces to redeem your reservation."})]})},getAreAmenitiesVisible=e=>Array.isArray(e)&&e.length>0,Amenities=e=>{let{amenities:t,showHeading:r=!0}=e;return(0,n.jsxs)(h.xu,{"data-testid":"Amenities",mb:r?6:0,children:[r&&(0,n.jsx)(l.X6,{as:"h3",mb:4,children:"Amenities"}),(0,n.jsx)(l.aV,{spacing:3,children:t.map((e,t)=>(0,n.jsx)(H.HC,{children:(0,n.jsx)(AmenityItem,{amenity:e})},t))})]})};var L=r(8542),B=r.n(L),Z=r(42958);let FacilityMap=e=>{let{latitude:t,longitude:r}=e,i=(0,Z.Z)(),a=(0,v.Z)();if(!(null==i?void 0:i.googlemapApiKey))return null;let o="".concat(t,",").concat(r),l="color:red|".concat(t,",").concat(r),s=new URLSearchParams({center:o,zoom:a?"18":"16",size:"640x640",scale:"2",markers:l,key:i.googlemapApiKey}),c="https://maps.googleapis.com/maps/api/staticmap?".concat(s.toString());return(0,n.jsx)(y.k,{height:48,width:"100%",overflow:"hidden",alignItems:"center",children:(0,n.jsx)(B(),{src:c,alt:"Facility location map",width:640,height:640,unoptimized:!0,priority:!1})})},W=["br","strong","em","b","i","p"],sanitizeHtml=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:M.ZP;return t.sanitize(e,{ALLOWED_TAGS:W,ALLOWED_ATTR:[]})},sanitizeTextWithLineBreaks=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:M.ZP,r=e.replace(/\r?\n/g,"<br>");return sanitizeHtml(r,t)},getIsGettingThereVisible=(e,t)=>Number.isFinite(e)&&Number.isFinite(t),GettingThere=e=>{let{latitude:t,longitude:r,instructions:a,showHeading:o=!0}=e,s=(0,i.useMemo)(()=>a?sanitizeTextWithLineBreaks(a):null,[a]);return(0,n.jsxs)(h.xu,{"data-testid":"GettingThere",mb:o?6:0,children:[o&&(0,n.jsx)(l.X6,{as:"h3",mb:4,children:"Getting There"}),(0,n.jsx)(FacilityMap,{latitude:t,longitude:r}),s&&(0,n.jsx)(l.xv,{fontSize:"sm",mt:4,dangerouslySetInnerHTML:{__html:s}})]})},InstructionItem=e=>{var t;let{instruction:r,displayImages:i,index:a}=e,o=(null===(t=r.illustration)||void 0===t?void 0:t.url)?r.illustration.url:r.illustration_id?"".concat("https://res.cloudinary.com/spothero/image/upload/c_fill,dpr_2.0,h_141,w_200,q_50,f_auto/").concat(r.illustration_id):null,
1s=sanitizeTextWithLineBreaks(r.text);return(0,n.jsx)(H.HC,{display:"list-item",fontSize:"sm",children:(0,n.jsxs)(h.xu,{display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"flex-start",width:"100%",children:[(0,n.jsx)(h.xu,{flex:1,mr:o&&i?4:0,children:(0,n.jsx)(l.xv,{as:"span",fontSize:"sm",dangerouslySetInnerHTML:{__html:s}})}),o&&i&&(0,n.jsx)(h.xu,{flexShrink:0,maxWidth:"200px",maxHeight:"141px",children:(0,n.jsx)(l.Ee,{src:o,alt:"",width:"70px",height:"auto",maxWidth:"unset"})})]})})},InstructionSection=e=>{let{title:t,instructions:r,displayImages:i,showHeading:a=!0}=e,o=r.length>=2;return(0,n.jsxs)(h.xu,{"data-testid":"HowToRedeem-".concat(t),mb:6,children:[a&&(0,n.jsx)(l.X6,{as:"h3",mb:4,children:t}),(0,n.jsx)(l.aV,{as:o?"ol":"ul",spacing:4,listStyleType:o?"decimal":"none",listStylePosition:"outside",paddingLeft:o?4:0,children:r.map((e,t)=>(0,n.jsx)(InstructionItem,{instruction:e,displayImages:i,index:t},e.id||"instruction-".concat(t)))})]})},getIsHowToRedeemVisible=(e,t)=>{let r=e&&e.length>0;return r||!!t},HowToRedeem=e=>{let{redemptionInstructions:t,postPurchaseInstructions:r,displayImages:i=!0,showHeading:a=!0}=e,o=t&&t.length>0;return(0,n.jsxs)(n.Fragment,{children:[o&&(0,n.jsx)(InstructionSection,{title:"How to Redeem",instructions:t,displayImages:i,showHeading:a}),!o&&r&&(0,n.jsxs)(h.xu,{"data-testid":"PostPurchaseInstructions",mb:6,children:[a&&(0,n.jsx)(l.X6,{as:"h3",mb:4,children:"How to Redeem"}),(0,n.jsx)(l.xv,{as:"span",dangerouslySetInnerHTML:{__html:sanitizeHtml(r)}})]})]})};var U=r(89384),V=r(47706);let TopRated=e=>{let{rating:t,reviewCount:r,onScrollToReviews:i}=e;if(t<4.5||r<10)return null;let a=Number.isInteger(t)?t:t.toFixed(1);return(0,n.jsxs)(y.k,{"data-testid":"top-rated",gap:3,alignItems:{base:"center"},backgroundColor:"gray.light",borderRadius:"md",padding:4,marginTop:4,cursor:"pointer",onClick:i,onKeyDown:e=>{("Enter"===e.key||" "===e.key)&&(e.preventDefault(),i())},role:"button",tabIndex:0,_hover:{backgroundColor:"gray.200"},transition:"background-color 0.2s",children:[(0,n.jsx)(h.xu,{flexShrink:0,width:{base:"54px",mobileXL:"76px"},height:{base:"35px",mobileXL:"56px"},children:(0,n.jsx)(U.Z,{src:"front-end/trophy.svg",alt:"",width:76,height:56,"aria-hidden":"true"})}),(0,n.jsxs)(y.k,{flex:"1",direction:"column",gap:1,children:[(0,n.jsx)(l.xv,{fontWeight:"semibold",fontSize:"sm",whiteSpace:"nowrap",children:"Top rated facility"}),(0,n.jsx)(l.xv,{fontSize:"xs",display:{base:"none",mobileXL:"inline"},children:"One of the highest rated facilities by drivers."})]}),(0,n.jsxs)(y.k,{flexDirection:{base:"row-reverse",mobileXL:"row"},alignItems:"center",gap:2,flexShrink:0,children:[(0,n.jsx)(l.xv,{fontWeight:{base:"bold",mobileXL:"semibold"},fontSize:{base:"base",mobileXL:"3xl"},children:a}),(0,n.jsx)(g.J,{display:{base:"block",mobileXL:"none"},as:I.Z,width:"5",height:"5",color:"black"}),(0,n.jsxs)(y.k,{flexDirection:"column",gap:1,children:[(0,n.jsx)(l.xv,{fontSize:"xs",children:z.Z.formatCount(r,"review")}),(0,n.jsx)(h.xu,{display:{base:"none",mobileXL:"block"},children:(0,n.jsx)(V.Z,{stars:t,color:"black"})})]})]})]})},useFacilityIndexing=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return e&&"on_sales_allowed"===t};var G=r(93061),K=r(46193);let FacilityNotFound=()=>{let{segmentApiKey:e}=(0,Z.Z)();return(0,G.Z)(e),(0,n.jsxs)(y.k,{as:"main",marginTop:{base:14,desktop:0},minHeight:{base:"calc(100vh - 3.5rem)",desktop:"calc(100vh - 4rem)"},flexDirection:"row",backgroundColor:"gray.50",children:[(0,n.jsx)(d(),{children:(0,n.jsx)("title",{children:"Whoops, our bad"})}),(0,n.jsx)(y.k,{flexDirection:"column",flexGrow:1,margin:{base:4,mobileXL:8,desktop:40},marginBottom:{base:20,mobileXL:64,desktop:40},padding:8,alignItems:"center",justifyContent:"center",background:"white",borderRadius:"lg",children:(0,n.jsxs)(y.k,{flexDirection:"column",gap:4,textAlign:"center",children:[(0,n.jsx)(h.xu,{textAlign:"center",children:(0,n.jsx)(K.Z,{src:"front-end/magnifying-glass.svg",width:120,height:120,alt:""})}),(0,n.jsx)(l.X6,{as:"h3",children:"Oops, this facility isn’t here."}),(0,n.jsx)(l.xv,{maxWidth:96,color:"text.secondary.light",children:"It may have been removed, renamed, or the link might be outdated. Let’s help you find nearby parking instead."}),(0,n.jsx)(h.xu,{paddingTop:4,children:(0,n.jsx)(l.zx,{as:"a",href:"/search",children:"Find Parking"})})]})})]})};var X=r(90041),Y=(r(55338),r(36474)),q=r(46822);let pluralize=(e,t,r)=>1===e?t:r,getDurationString=e=>{let{starts:t,ends:r,timezone:n}=e,i=(0,q.Z)(t).tz(n),a=(0,q.Z)(r).tz(n),o=Math.round(q.Z.duration(a.diff(i)).asMinutes()),l=Math.floor(o/1440),s=o%1440,c=Math.floor(s/60),d=Math.floor(s%60),u=l>=1?"".concat(l," ").concat(pluralize(l,"day","days")):"",h=c>=1?"".concat(c," ").concat(pluralize(c,"hour","hours")):"",g=d>=1?"".concat(d," ").concat(pluralize(d,"minute","minutes")):"",f=u.length&&(h.length||g.length)?", ":"",p=h.length&&g.length?", ":"";
1return"".concat(u).concat(f).concat(h).concat(p).concat(g)};var J=r(90814);let Q=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],$=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"];var map_facility_data_schema=function(e){var t,r;let n=(0,J.C1)(e.slug),i="".concat("https://spothero.com","/facility/").concat(e.id,"/").concat(n),a={"@context":"https://schema.org","@type":"ParkingFacility","@id":i,url:i,name:e.title,openingHoursSpecification:(r=e.hoursOfOperation).always_open?[{"@type":"OpeningHoursSpecification",dayOfWeek:[...$],opens:"00:00",closes:"23:59"}]:r.periods.filter(e=>"open"===e.hours_type).map(e=>({"@type":"OpeningHoursSpecification",dayOfWeek:function(e,t){let r=Q.indexOf(e),n=Q.indexOf(t);return -1===r||-1===n?[]:Array.from({length:n-r+1},(e,t)=>$[r+t])}(e.first_day,e.last_day),opens:e.start_time.slice(0,5),closes:e.end_time.slice(0,5)}))},o=null===(t=e.images)||void 0===t?void 0:t[0];return(null==o?void 0:o.url)&&(a.image=o.url),e.address&&(a.address={"@type":"PostalAddress",streetAddress:e.address.street_address,addressLocality:e.address.city,addressRegion:e.address.state,postalCode:e.address.postal_code,addressCountry:e.address.country}),null!==e.latitude&&null!==e.longitude&&(a.geo={"@type":"GeoCoordinates",latitude:e.latitude,longitude:e.longitude}),e.rating.count>0&&(a.aggregateRating={"@type":"AggregateRating",ratingValue:String(e.rating.average),reviewCount:String(e.rating.count),bestRating:"5",worstRating:"1"}),e.amenities.length>0&&(a.amenityFeature=e.amenities.map(e=>({"@type":"LocationFeatureSpecification",name:e.display_name,value:!0}))),a},ee=r(18870);let mapFacilityData=e=>{var t,r,n,i,a,o,l,s,c,d,u,h,g,f;let p=e.rates||[],m=e.facility.common,x=m.city,v=e.facility.transient||{},y=function(e){let t=new Map;return e.forEach(e=>{var r;let n=(null==e?void 0:null===(r=e.transient)||void 0===r?void 0:r.amenities)||(null==e?void 0:e.amenities);Array.isArray(n)&&n.forEach(e=>{e.type&&t.set(e.type,e)})}),Array.from(t.values()).map(ee.dF)}(p),b=null===(t=m.addresses)||void 0===t?void 0:t[0],j=null!==(l=null==b?void 0:b.latitude)&&void 0!==l?l:null,w=null!==(s=null==b?void 0:b.longitude)&&void 0!==s?s:null,_=(null===(r=v.redemption_instructions)||void 0===r?void 0:r.drive_up)||null,k=null!==(c=m.navigation_tip)&&void 0!==c?c:null,O=null!==(d=null===(n=p[0])||void 0===n?void 0:n.quote)&&void 0!==d?d:null,S=null!==(u=null==O?void 0:null===(i=O.order)||void 0===i?void 0:i[0])&&void 0!==u?u:null,I=null==S?void 0:S.rate_id,C=(null==O?void 0:O.items.map(e=>({...e,price:{value:e.price.value,currency_code:e.price.currency_code}})))||[],A={id:m.id,title:m.title,slug:m.slug,images:m.images,fullFacilityData:e.facility,rating:{...null!==(h=m.rating)&&void 0!==h?h:{average:0,count:0},prompt_counts:null!==(g=m.prompt_counts)&&void 0!==g?g:[]},operatorId:null!==(f=m.operator_id)&&void 0!==f?f:null,cancellationAllowed:(null===(a=m.cancellation)||void 0===a?void 0:a.allowed_by_customer)||(null===(o=m.cancellation)||void 0===o?void 0:o.allowed_by_spothero_customer_service)||!1,restrictions:Array.isArray(m.restrictions)?m.restrictions:[],amenities:y,hoursOfOperation:m.hoursOfOperation||m.hours_of_operation||{always_open:!1,text:[],periods:[]},latitude:j,longitude:w,gettingHere:k,redemptionInstructions:_,address:b||null,postPurchaseInstructions:null,status:m.status||"",city:null!=x?x:null,firstRateInfo:p.length>0?{cost:{value:O.advertised_price.value,currencyCode:O.advertised_price.currency_code},duration:getDurationString({starts:S.starts,ends:S.ends,timezone:b.time_zone}),start:S.starts,end:S.ends,total:{value:O.total_price.value,currencyCode:O.total_price.currency_code},timezone:b.time_zone,priceBreakdown:C,rateId:I}:null};return{...A,schema:map_facility_data_schema(A)}};async function facility_getFacilityById(e){let{facilityId:t,starts:r,ends:n}=e,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Y.craigUrl,a=new URLSearchParams(r&&n?{starts:r,ends:n}:{}).toString(),o="".concat(i,"/search/transient/").concat(t).concat(a?"?".concat(a):""),l=globalThis.fetch,s=await l(o,{});if(404===s.status)return null;if(!s.ok)throw Error("Failed to fetch facility ".concat(t,": ").concat(s.status," ").concat(s.statusText));let c=await s.json();return mapFacilityData(c.result)}var et=r(58428);let useFacilityId=()=>{let{query:e}=(0,et.useRouter)();return e.id};var er=r(24543);let en="facility";function useFacilityQuery(){let e=useFacilityId(),{craigUrl:t}=(0,Z.Z)();return(0,X.a)({queryKey:[en,e],queryFn:()=>facility_getFacilityById({facilityId:e},t),staleTime:er.G,enabled:!!e,retry:!1})}var ei=r(95720),ea=r(5186),eo=r(62991);let stripToDigits=e=>e.replace(/\D/g,""),cleanPhoneNumber=e=>{if(!e)return"";let t=stripToDigits(e);return t.length>
110&&(t=t.slice(-10)),t},formatPhoneNumber=e=>{if("string"!=typeof e)return"";let t=cleanPhoneNumber(e);return t?t.replace(/^(\d{3})(\d{3})(\d{4})/,"($1) $2-$3"):""},formatPhoneNumberForTel=e=>{if(!e)return"";let t=stripToDigits(e);return t?e.trim().startsWith("+")?"+".concat(t):t.length>10?t.slice(-10):t:""},PhoneLink=e=>{let{phoneNumber:t,...r}=e,i=cleanPhoneNumber(t),a=formatPhoneNumber(t),o=a||t,l=formatPhoneNumberForTel(t);return i?(0,n.jsx)(ei.r,{...r,href:"tel:".concat(l),children:o}):(0,n.jsx)(n.Fragment,{children:o})},el={phone:"+18443247768",email:"[email protected]"},CustomerSupport=e=>{let{showHeading:t=!0}=e;return(0,n.jsxs)(h.xu,{children:[t&&(0,n.jsx)(l.X6,{as:"h3",mb:4,children:"365-Day Customer Support"}),(0,n.jsx)(l.xv,{fontSize:"sm",my:4,children:"SpotHero has your back. If you have any issues with parking, get in touch with our Customer Heroes immediately. We're here 365 days a year, 6am - 11pm CDT."}),(0,n.jsxs)(y.k,{gap:8,flexDirection:{base:"column",mobileXL:"row"},children:[(0,n.jsx)(h.xu,{borderWidth:1,borderColor:"gray.medium",background:"gray.light",borderRadius:"md",padding:3,maxWidth:"439px",children:(0,n.jsxs)(y.k,{gap:4,alignItems:"flex-start",flexDirection:{base:"row",desktop:"column"},children:[(0,n.jsx)(g.J,{as:eo.Z,width:10,height:10,flexShrink:0}),(0,n.jsxs)(h.xu,{children:[(0,n.jsx)(l.X6,{as:"h5",children:"Parking help and support"}),(0,n.jsxs)(l.xv,{fontSize:"sm",marginTop:4,children:["If you have any issues with parking, get in touch with our Customer Heroes immediately at"," ",(0,n.jsx)(l.xv,{as:"span",fontSize:"sm",fontWeight:"semibold",children:(0,n.jsx)(PhoneLink,{color:"black",phoneNumber:el.phone})}),"."]})]})]})}),(0,n.jsx)(h.xu,{borderWidth:1,borderColor:"gray.medium",background:"gray.light",borderRadius:"md",padding:3,maxWidth:"439px",children:(0,n.jsxs)(y.k,{gap:4,alignItems:"flex-start",flexDirection:{base:"row",desktop:"column"},children:[(0,n.jsx)(g.J,{as:ea.Z,width:10,height:10,flexShrink:0}),(0,n.jsxs)(h.xu,{children:[(0,n.jsx)(l.X6,{as:"h5",children:"Non-urgent issues"}),(0,n.jsxs)(l.xv,{fontSize:"sm",marginTop:4,children:["For non-urgent issues, shoot us an email at",(0,n.jsxs)(l.xv,{as:"span",fontWeight:"semibold",fontSize:"sm",children:[" ",(0,n.jsx)(ei.r,{color:"black",href:"mailto:".concat(el.email),children:el.email})]}),". We'll get back to you within 24 hours."]})]})]})})]})]})},FreeCancellationPolicy=e=>{let{showHeading:t=!0}=e;return(0,n.jsxs)(h.xu,{children:[t&&(0,n.jsx)(l.X6,{as:"h3",mb:4,children:"Free Cancellation Policy"}),(0,n.jsx)(l.xv,{fontSize:"sm",mb:4,children:"At this facility, you have up until the minute your reservation begins to cancel your parking for a full refund. You can cancel your reservation on the SpotHero website or app."}),(0,n.jsx)(l.xv,{fontSize:"sm",children:"If you're having trouble with your reservation and it's after the start time, please reach out to our Customer Heroes who are more than happy to help rectify any situation!"})]})},GuaranteedParking=e=>{let{showHeading:t=!0}=e;return(0,n.jsxs)(h.xu,{children:[t&&(0,n.jsx)(l.X6,{as:"h3",mb:4,children:"Guaranteed Parking by SpotHero"}),(0,n.jsx)(l.xv,{fontSize:"sm",mb:4,children:"When you pay with SpotHero, we guarantee you will have a spot to park in, at the price you paid, or your money back."}),(0,n.jsx)(l.xv,{fontSize:"sm",mb:4,children:"If a parking facility is ever full when you arrive, call us immediately! We'll rebook your parking at the closest available nearby facility at no extra charge, or give you a full refund. We'll also reach out to our partner to prevent this from happening again."}),(0,n.jsxs)(l.xv,{fontSize:"sm",children:["For specifics, please refer to the"," ",(0,n.jsx)(ei.r,{href:"/about/parking-guarantee",children:"SpotHero Parking Guarantee"}),"."]})]})},ListItem=e=>{let{imageUrl:t,heading:r,description:i}=e;return(0,n.jsxs)(y.k,{"data-testid":"ListItem-".concat(r.replace(/\s+/g,"-")),flexDirection:"column",justifyContent:"center",alignItems:"center",children:[(0,n.jsx)(h.xu,{mb:4,width:"100%",maxWidth:{base:155,mobileXL:202},height:{base:154,mobileXL:200},position:"relative",children:(0,n.jsx)(K.Z,{src:t,alt:r,layout:"fill",isLazyLoaded:!0,isSvg:!0})}),(0,n.jsx)(y.k,{flexDirection:"column",alignItems:"center",justifyContent:"center",children:(0,n.jsxs)(h.xu,{maxWidth:{base:155,mobileXL:202},textAlign:"center",children:[(0,n.jsx)(l.X6,{as:"h4",fontSize:{base:"sm",mobileXL:"lg",desktop:"xl"},mb:2,children:r}),(0,n.jsx)(l.xv,{fontSize:{base:"xs",mobileXL:"base"},children:i})]})})]})},HowSpotHeroWorks=e=>{let{showHeading:t=!0}=e;return(0,n.jsxs)(h.xu,{mb:t?6:0,children:[t&&(0,n.jsx)(l.X6,{as:"h3",mb:6,children:"How SpotHero Works"}
1),(0,n.jsxs)(l.rj,{columnGap:6,rowGap:10,gridTemplateColumns:{base:"repeat(2, minmax(0, 1fr))",desktop:"repeat(4, minmax(0, 1fr))"},mt:0,mb:6,children:[(0,n.jsx)(ListItem,{imageUrl:"front-end/calendar.svg",heading:"Enter Dates",description:"Enter the date and times you need parking."}),(0,n.jsx)(ListItem,{imageUrl:"front-end/facility.svg",heading:"Search",description:"Browse parking facilities near your destination."}),(0,n.jsx)(ListItem,{imageUrl:"front-end/reserved.svg",heading:"Reserve",description:"Book your parking spot online or with our app."}),(0,n.jsx)(ListItem,{imageUrl:"front-end/travel.svg",heading:"Enjoy",description:"Travel with peace of mind knowing your car is safe."})]})]})};var es=r(80363);let useFacilitySearchQuery=(e,t)=>{let r=useFacilityId(),{craigUrl:n}=(0,Z.Z)(),a=(0,es.NL)(),o=e?(0,S.Z)(e).format():void 0,l=t?(0,S.Z)(t).format():void 0,s=(0,X.a)({queryKey:[en,r,"search",o,l],queryFn:()=>facility_getFacilityById({facilityId:r,starts:o,ends:l},n),staleTime:er.G,enabled:!!r&&!!o&&!!l});return(0,i.useEffect)(()=>{s.data&&a.setQueryData([en,r],s.data)},[s.data,a,r]),s};var ec=r(83849),ed=r.n(ec),price_price=e=>{let{className:t,amount:r,currencyType:i,showCents:a,textToAppend:o="",styleProps:l={}}=e,s=ed()("Price",t),c=z.Z.currencySymbol(i),{dollars:d,cents:u}=z.Z.price(r),g=a&&!u?"00":u,f=r<0;return(0,n.jsxs)(h.xu,{as:"span",className:s,...l,children:[f&&"-",c,d.replace("-",""),a&&g?".".concat(g):"",o]})};let useDuration=()=>{let{startDate:e,endDate:t,timezone:r}=(0,s.useFindParkingSpotsButtonPartialStore)();return e&&t&&r?getDurationString({starts:e,ends:t,timezone:r}):null},usePrice=()=>{var e,t;let{data:r}=useFacilityQuery(),n=null!==(t=null==r?void 0:null===(e=r.firstRateInfo)||void 0===e?void 0:e.total)&&void 0!==t?t:{currencyCode:null,value:null};return n};var info_BookingUnavailable=()=>(0,n.jsx)(l.bZ,{marginTop:"4",alignItems:"center",status:"error","data-testid":"booking-unavailable-alert",title:"Sorry, selected times are unavailable",description:"Choose another time or try nearby spots"});let useAvailable=()=>{var e,t,r,n;let{data:i,isLoading:a}=useFacilityQuery(),o=null!==(r=null==i?void 0:null===(e=i.firstRateInfo)||void 0===e?void 0:e.total.value)&&void 0!==r?r:null,l=null!==(n=null==i?void 0:null===(t=i.firstRateInfo)||void 0===t?void 0:t.duration)&&void 0!==n?n:null;return!!a||null!=o&&null!=l},BookNowInfo=e=>{let{TitleIcon:t,title:r,content:i}=e;return(0,n.jsxs)(y.k,{justifyContent:"space-between",alignItems:"center",marginTop:"4",children:[(0,n.jsxs)(y.k,{alignItems:"center",children:[(0,n.jsx)(g.J,{as:t,boxSize:5}),(0,n.jsx)(l.xv,{marginLeft:"1",variant:"body2",children:r})]}),i]})},BookNowInfoWrapper=e=>{let{onOpenPriceBreakdown:t}=e,{startDate:r,endDate:i}=(0,s.useFindParkingSpotsButtonPartialStore)(),{isLoading:a}=useFacilitySearchQuery(r,i),o=useDuration(),c=usePrice(),d=useAvailable(),u={TitleIcon:j.SUY,title:"Duration",content:(0,n.jsx)(l.xv,{fontWeight:"semibold","data-testid":"facility-duration",children:null!=o?o:"N/A"})},g={TitleIcon:j.RFQ,title:"Total",content:(0,n.jsx)(l.zx,{variant:"tertiary",color:"black",textDecoration:"underline",fontWeight:"semibold",fontSize:"xl",onClick:t,"data-testid":"facility-total-price",children:!a&&(null==c?void 0:c.value)?(0,n.jsx)(price_price,{currencyType:null==c?void 0:c.currencyCode,amount:null==c?void 0:c.value,showCents:!0}):(0,n.jsx)(l.xv,{as:"span",children:"-"})}),action:t};return(0,n.jsxs)(h.xu,{children:[!d&&!a&&(0,n.jsx)(info_BookingUnavailable,{}),[u,g].map((e,t)=>(0,n.jsx)(BookNowInfo,{...e},"bookNowInfo-".concat(t)))]})};var eu=r(91581),eh=r(91699),eg=r(21423),ef=r(48389);let createBaseSearchUrl=(e,t,r)=>{let n=new URL("/search",window.location.origin),i=(0,S.Z)(e).tz(r).format(ef.Ak),a=(0,S.Z)(t).tz(r).format(ef.Ak);return n.searchParams.set("starts",i),n.searchParams.set("ends",a),n},formatAddressString=e=>{if(!e)return"";let t=[e.street_address,e.city,e.state,e.postal_code].filter(Boolean);return t.join(", ")},addAddressParameters=(e,t)=>{e.searchParams.set("kind","address"),null!==t.latitude&&e.searchParams.set("latitude",String(t.latitude)),null!==t.longitude&&e.searchParams.set("longitude",String(t.longitude));let r=formatAddressString(t.address);r&&e.searchParams.set("search_string",r)}
1,useSearchNavigation=()=>{let{data:e}=useFacilityQuery(),{startDate:t,endDate:r,timezone:n}=(0,s.useFindParkingSpotsButtonPartialStore)(),a=(0,i.useCallback)(()=>{if(!e)return;let i=createBaseSearchUrl(t,r,n);addAddressParameters(i,e),window.open(i.href,"_blank")},[e,t,r,n]);return{navigateToSearch:a}},ViewNearbyParking=()=>{let e=useFacilityId(),{navigateToSearch:t}=useSearchNavigation();return(0,n.jsx)(l.zx,{variant:"secondary",onClick:()=>{e&&(function(e){let{spotId:t}=e;try{let e={partner_affiliate:(0,eg.Mo)(),facility_id:parseInt(t,10)};eu.Z.track({event:"Facility Details View Nearby Spots Clicked",properties:e,additionalOptions:{context:{protocols:{event_version:1}}}})}catch(e){eh.Z.sendSentryMessage({error:e,customErrorMessage:"Segment Event Failed - facilityDetailsViewNearbyClicked"})}}({spotId:e}),t())},flexBasis:"50%",flexGrow:"0",paddingX:"2","data-testid":"facility-view-nearby-button",children:"View Nearby Spots"})},useFacilityQueryParams=()=>{var e;let{query:t}=(0,et.useRouter)();return{partner:null!==(e=t.partner)&&void 0!==e?e:null,isFacilityMode:"true"===t.facility}};var button_group_CheckoutButton=()=>{let{data:e}=useFacilityQuery(),{id:t,firstRateInfo:r}=e||{},{rateId:i,timezone:a}=r||{},{isFacilityMode:o}=useFacilityQueryParams(),{startDate:c,endDate:d}=(0,s.useFindParkingSpotsButtonPartialStore)();if(!c||!d||!t||!i||!a)return null;let u=(0,ee.hN)({spotId:t,rateId:i,starts:(0,S.Z)(c).tz(a).format(ef.Ak),ends:(0,S.Z)(d).tz(a).format(ef.Ak),timezone:a});return(0,n.jsx)(l.zx,{asAnchor:!0,flexBasis:o?"100%":"50%",flexGrow:"0",href:u,paddingX:"2","data-testid":"facility-checkout-button",children:"Checkout"})};let OpenDisclosureButton=e=>{let{disclosure:t,children:r,isFacilityMode:i}=e;return(0,n.jsx)(l.zx,{flexBasis:i?"100%":"50%",flexGrow:"0",paddingX:"2",onClick:t.onOpen,"data-testid":"facility-check-availability-button",children:r})},BookNowButtonGroup=e=>{let{disclosure:t,isFacilityMode:r}=e,i=useAvailable();return(0,n.jsxs)(y.k,{gap:"4",marginTop:"4",children:[!r&&(0,n.jsx)(ViewNearbyParking,{}),i?(0,n.jsx)(button_group_CheckoutButton,{}):(0,n.jsx)(OpenDisclosureButton,{disclosure:t,isFacilityMode:r,children:"Check Availability"})]})},BookNowButtonGroupMobile=e=>{let{disclosure:t,isFacilityMode:r}=e,i=useAvailable();return(0,n.jsxs)(y.k,{gap:"4",marginTop:"4",children:[!r&&(0,n.jsx)(ViewNearbyParking,{}),(0,n.jsx)(OpenDisclosureButton,{disclosure:t,isFacilityMode:r,children:i?"Confirm Times":"Check Availability"})]})},FacilityPrice=()=>{let e=usePrice();return(0,n.jsx)(price_price,{currencyType:null==e?void 0:e.currencyCode,amount:null==e?void 0:e.value,showCents:!0,styleProps:{fontSize:"xl",fontWeight:"semibold"}})},FooterInformation=e=>{let{onOpenPriceBreakdown:t}=e,r=useDuration();return(0,n.jsxs)(y.k,{justifyContent:"space-between",alignItems:"center",children:[(0,n.jsx)(FacilityPrice,{}),(0,n.jsxs)(y.k,{gap:1,children:[(0,n.jsx)(l.zx,{variant:"tertiary",color:"grey.dark",fontWeight:"normal",textDecoration:"underline",fontSize:"sm",onClick:t,children:"Total"}),(0,n.jsxs)(l.xv,{color:"grey.dark",fontSize:"sm",children:["for ",null!=r?r:"N/A"]})]})]})},BookNowMobileFooter=e=>{let{disclosure:t,priceBreakdownDisclosure:r,isFacilityMode:i}=e,a=useAvailable();return(0,n.jsxs)(h.xu,{position:"fixed",bottom:0,left:0,right:0,backgroundColor:"white",padding:"6",width:"100%",zIndex:"layer1",boxShadow:"0 -4px 6px -1px rgba(0, 0, 0, 0.10), 0 -2px 4px -2px rgba(0, 0, 0, 0.10)",children:[a?(0,n.jsx)(FooterInformation,{onOpenPriceBreakdown:r.onOpen}):(0,n.jsx)(l.xv,{children:"Selected times are unavailable."}),(0,n.jsx)(BookNowButtonGroupMobile,{disclosure:t,isFacilityMode:i})]})};var ep=r(60513),em=r(95311),ex=r(98232),ev=r(85141),ey=r(76100),total_price_breakdown_item_TotalPriceBreakdownItem=e=>{let{item:t}=e;return(0,n.jsxs)(y.k,{justifyContent:"space-between",marginY:2,children:[t.full_description?(0,n.jsxs)(em.Q,{border:"none",children:[(0,n.jsx)(l.X6,{as:"h2",fontFamily:"body",children:(0,n.jsxs)(ex.K,{paddingX:0,paddingY:0,gridGap:1,border:"none",_hover:{backgroundColor:"none"},sx:{".chakra-accordion__icon":{color:"black"}},children:[(0,n.jsx)(h.xu,{textAlign:"left",fontWeight:"normal",children:(0,n.jsx)(l.xv,{fontSize:"sm",children:t.short_description})}),(0,n.jsx)(ev.X,{fontSize:"xl"})]})}),(0,n.jsx)(ey.H,{paddingX:0,paddingTop:0,paddingBottom:1,color:"gray.dark",fontSize:"xs",children:t.full_description})]}):(0,n.jsx)(l.xv,{fontSize:"sm",children:t.short_description}),(0,n.jsx)(price_price,{amount:t.price.value,currencyType:t.price.currency_code,showCents:!0})]})};let PriceBreakdownModal=e=>{var t,r;let{disclosure:a}=e,{isOpen:o,onClose:s}=a,{data:c}=useFacilityQuery(),d=null!==(r=null==c?void 0:null===(t=c.firstRateInfo)||void 0===t?void 0:t.priceBreakdown)&&void 0!==r?r:null,{currencyCode:u,value:h}
1=usePrice(),g=Array.isArray(d),f=(0,i.useMemo)(()=>g?null==d?void 0:d.map((e,t)=>(0,n.jsx)(total_price_breakdown_item_TotalPriceBreakdownItem,{item:e,currencyType:u},e.short_description+t)):null,[d,u,g]);return Array.isArray(d)&&0!==d.length?(0,n.jsxs)(l.u_,{hasHeader:!0,size:"sm",isOpen:o,onClose:s,children:[(0,n.jsx)(k.x,{fontSize:"lg",children:"Price Breakdown"}),(0,n.jsxs)(O.f,{flexDirection:"column",paddingX:6,overflow:"visible",children:[(0,n.jsx)(ep.U,{allowToggle:!0,children:f}),(0,n.jsx)(l.iz,{}),(0,n.jsxs)(y.k,{justifyContent:"space-between",paddingBottom:10,fontWeight:"bold",marginY:2,children:[(0,n.jsx)(l.xv,{fontWeight:"bold",children:"Total"}),(0,n.jsx)(price_price,{amount:h,currencyType:u,showCents:!0})]})]})]}):null};var eb=r(36944);function calculateTimeDifference(e){let{starts:t,ends:r,unit:n="hour",isFloatingPointNumber:i=!0}=e,a=(0,S.Z)(t),o=(0,S.Z)(r);return o.diff(a,n,i)||0}let useProductsSearchedTracking=()=>{let{data:e}=useFacilityQuery(),t=(0,i.useRef)(!0),r=(0,i.useRef)(null),n=(0,i.useRef)(!1);(0,i.useEffect)(()=>{var i;if(!(null==e?void 0:e.id)||!e.firstRateInfo)return;let a="".concat(e.firstRateInfo.start,"-").concat(e.firstRateInfo.end);if(!n.current){n.current=!0;return}if(r.current===a)return;r.current=a;let o=e.firstRateInfo.start,l=e.firstRateInfo.end,s=(null===(i=e.address)||void 0===i?void 0:i.time_zone)||"UTC";eb.Z.updateAction(t.current?eb.C.SEARCH:eb.C.DATE_CHANGED),function(e){try{var t,r,n,i,a,o,l,s,c;let{starts:d,ends:u,facility:h,timezone:g,noResults:f}=e,{sessionUUID:p,searchUUID:m,actionUUID:x,action:v}=eb.Z.getValues(),y={page_type:J.T3.FACILITY,action_id:x,action_type:v,city:null!==(l=null===(t=h.address)||void 0===t?void 0:t.city)&&void 0!==l?l:null,state:null!==(s=null===(r=h.address)||void 0===r?void 0:r.state)&&void 0!==s?s:null,filters:[],map_center:{latitude:h.latitude,longitude:h.longitude},parking_type:"transient",query:"",search_api_version:2,search_end_time_utc:(0,S.Z)(u).toISOString(),search_id:m,search_lead_time:calculateTimeDifference({starts:(0,S.Z)().tz(g),ends:(0,S.Z)(d).tz(g,!0),unit:"minute"}),search_length:calculateTimeDifference({starts:d,ends:u}),search_source:"product_details",search_start_time_utc:(0,S.Z)(d).toISOString(),session_id:p,sort_by:"n/a",top_search_results_list:f?[]:[{visual_flags:[],display_price:null!==(c=null===(i=h.firstRateInfo)||void 0===i?void 0:null===(n=i.cost)||void 0===n?void 0:n.value)&&void 0!==c?c:void 0,facility_id:"".concat(h.id),rank:1,number_of_hours:calculateTimeDifference({starts:d,ends:u}),official_parking:!1,spots_left_displayed:!1,star_rating:{average:null===(a=h.rating)||void 0===a?void 0:a.average,count:null===(o=h.rating)||void 0===o?void 0:o.count},tag_displayed_in_search:!1}],power_booking:!1,view:"facility_details",partner_affiliate:(0,eg.Mo)()};eu.Z.track({event:"Products Searched",properties:y,additionalOptions:{context:{protocols:{event_version:25}}}})}catch(e){eh.Z.sendSentryMessage({error:e,customErrorMessage:"Segment Event Failed - trackFacilityDetailsProductsSearched"})}}({starts:o,ends:l,facility:e,timezone:s}),t.current=!1},[e])},ej={".SearchWidget-popover-date-input":{borderLeft:"1px solid",borderColor:"grey.medium",borderRadius:"md"}},BookParkingNow=e=>{let{isFacilityMode:t}=e,r=(0,v.Z)(),i=useAvailable(),{startDate:a,endDate:c}=(0,s.useFindParkingSpotsButtonPartialStore)(),{isLoading:d}=useFacilitySearchQuery(a,c),u=(0,o.q)(),g=(0,o.q)();return useProductsSearchedTracking(),(0,n.jsxs)(h.xu,{width:"100%",padding:{base:"1",tablet:"6"},borderWidth:{tablet:"1px",base:"0"},borderStyle:"solid",borderColor:"grey.medium",borderRadius:"lg",overflow:"auto",sx:ej,"data-testid":"facility-book-parking-widget",children:[(0,n.jsxs)(l.X6,{display:{base:"none",tablet:"block"},as:"h4",marginBottom:"8","data-testid":"facility-book-parking-heading",children:["Book Parking Now"," "]}),(0,n.jsx)(s.SEOFacilityBookParkingNow,{datePopoverDisclosure:u,inputErrorType:d||i?null:"UNAVAILABLE",children:(0,n.jsxs)(y.k,{flexDirection:"column",gap:"4",justifyContent:"space-between",height:"100%",children:[(0,n.jsx)(BookNowInfoWrapper,{onOpenPriceBreakdown:g.onOpen}),(0,n.jsx)(BookNowButtonGroup,{isFacilityMode:t,disclosure:u})]})}),r?(0,n.jsx)(BookNowMobileFooter,{disclosure:u,priceBreakdownDisclosure:g,isFacilityMode:t}):(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(BookNowInfoWrapper,{onOpenPriceBreakdown:g.onOpen}),(0,n.jsx)(BookNowButtonGroup,{isFacilityMode:t,disclosure:u})]}),(0,n.jsx)(PriceBreakdownModal,{disclosure:g})]})};var ew=r(13522);let e_={borderTopWidth:{base:0,mobileXL:1},borderTopColor:"gray.100",mt:{base:0,mobileXL:8},pt:{base:0,mobileXL:6}},MobileAccordionSection=e=>{let{title:t,children:r,testId:a,defaultOpen:o=!1}=e,s=(0,ew.S)({base:!0,mobileXL:!1});if(!r)return null;if(s){let e=(0,i.isValidElement)(r)&&"string"!=typeof r.type?(0,i.cloneElement)(r,{showHeading:!1}):r;return(0,n.jsx)(ep.U,{allowToggle:!0,defaultIndex:o?[0]:[],children:(0,n.jsxs)(em.Q,{"data-testid":a,sx:{"&:last-of-type":{borderBottomWidth:0}},children:[(0,n.jsxs)(ex.K,{py:4,sx:{"&:hover":{backgroundColor:"white"}},children:[(0,n.jsx)(l.xv,{as:"span",flex:"1",textAlign:"left",fontSize:"base",fontWeight:"semibold",fontFamily:"body",children:t}),(0,n.jsx)(ev.X,{})]}),(0,n.jsx)(ey.H,{pb:4,children:e})]})})}return(0,n.jsx)(h.xu,{"data-testid":a,...e_,children:r})};var ek=r(94620);let eO={GUARANTEED_PARKING:{title:"Guaranteed Parking by SpotHero",calloutText:"Guaranteed parking by SpotHero"},FREE_CANCELLATION:{title:"Free Cancellation Policy",calloutText:"Free cancellations before your booking"},ICON_SIZE:{mobile:5,desktop:6}},PolicySection=e=>{let{title:t,children:r,testId:i,shouldShow:a,isMobile:o}=e;return a&&o?(0,n.jsx)(MobileAccordionSection,{title:(0,n.jsxs)(y.k,{alignItems:"center",gap:2,as:"span",display:"inline-flex",children:[t,(0,n.jsx)(g.J,{as:ek.Z,width:eO.ICON_SIZE.mobile,height:eO.ICON_SIZE.mobile,color:"black"})]}),testId:i,defaultOpen:!1,children:r}):null},PolicyCallout=e=>{let{text:t,onLearnMoreClick:r}=e;return(0,n.jsxs)(y.k,{alignItems:"center",justifyContent:"space-between",gap:3,backgroundColor:"gray.50",paddingX:3,paddingY:2,borderRadius:"md",marginBottom:4,children:[(0,n.jsxs)(y.k,{alignItems:"center",gap:2,children:[(0,n.jsx)(g.J,{as:ek.Z,width:6,height:6,color:"black",flexShrink:0}),(0,n.jsx)(l.xv,{fontSize:"sm",fontWeight:"semibold",children:t})]}),(0,n.jsx)(l.zx,{variant:"tertiary",onClick:r,size:"sm",flexShrink:0,children:"Learn more"})]})},PolicyCalloutGroup=e=>{let{guaranteedParkingDisclosure:t,cancellationPolicyDisclosure:r,showCancellationPolicy:i}=e;return(0,n.jsxs)(y.k,{flexDirection:"column",mt:4,gap:0,children:[(0,n.jsx)(PolicyCallout,{text:eO.GUARANTEED_PARKING.calloutText,onLearnMoreClick:t.onOpen}),i&&(0,n.jsx)(PolicyCallout,{text:eO.FREE_CANCELLATION.calloutText,onLearnMoreClick:r.onOpen})]})},PolicyModal=e=>{let{isOpen:t,onClose:r,title:i,children:a}=e;return(0,n.jsxs)(l.u_,{isOpen:t,onClose:r,hasHeader:!0,size:"sm",children:[(0,n.jsx)(k.x,{children:i}),(0,n.jsx)(O.f,{children:a})]})},PolicyModals=e=>{let{guaranteedParkingDisclosure:t,cancellationPolicyDisclosure:r,showCancellationPolicy:i}=e;return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(PolicyModal,{isOpen:t.
1isOpen,onClose:t.onClose,title:eO.GUARANTEED_PARKING.title,children:(0,n.jsx)(GuaranteedParking,{showHeading:!1})}),i&&(0,n.jsx)(PolicyModal,{isOpen:r.isOpen,onClose:r.onClose,title:eO.FREE_CANCELLATION.title,children:(0,n.jsx)(FreeCancellationPolicy,{showHeading:!1})})]})},getAreNearbySpotsVisible=e=>e.length>0,getFacilityVisibility=(e,t,r)=>{let n=getVisibleRestrictions(e.restrictions,t);return{areRestrictionsVisible:n.length>0,areAmenitiesVisible:getAreAmenitiesVisible(e.amenities),areAccessHoursVisible:getAreAccessHoursVisible(e.hoursOfOperation),areReviewsVisible:getAreReviewsVisible(e.rating),isGettingThereVisible:getIsGettingThereVisible(e.latitude,e.longitude),isHowToRedeemVisible:getIsHowToRedeemVisible(e.redemptionInstructions,e.postPurchaseInstructions),areNearbySpotsVisible:getAreNearbySpotsVisible(r)}};var eS=r(18764);let SpotPriceDisplay=e=>{let{price:t,currencyCode:r}=e;return(0,n.jsxs)(y.k,{flexFlow:"column",alignItems:"flex-end",flexShrink:"0",children:[(0,n.jsx)(l.xv,{fontSize:"sm",color:"gray.600",children:"Starting at"}),(0,n.jsx)(l.xv,{"data-testid":"NearbySpotCardPrice",fontSize:"sm",fontWeight:"semibold",children:(0,n.jsx)(price_price,{amount:t,currencyType:r,showCents:!1})})]})};var eI=r(11234);let CompactRatingSummary=e=>{let{rating:t,reviewCount:r}=e;if(r<10)return null;let i=t.toFixed(1);return(0,n.jsxs)(y.k,{alignItems:"center",gap:1,children:[(0,n.jsx)(eI.Z,{state:"filled"},"star"),(0,n.jsx)(l.xv,{fontSize:"sm",fontWeight:"medium",children:i}),(0,n.jsxs)(l.xv,{fontSize:"sm",color:"gray.600",children:["(",z.Z.formatCount(r),")"]})]})},Pill=e=>{let{children:t}=e;return(0,n.jsx)(y.k,{paddingX:2,paddingY:1,borderRadius:"full",border:"1px solid",borderColor:"gray.medium",alignItems:"center",justifyContent:"center",fontSize:"xs",fontWeight:"semibold",lineHeight:"1",children:t})},SpotAmenities=e=>{let{amenities:t}=e;if(!t||0===t.length)return null;let r=t.sort((e,t)=>e.displayName.length-t.displayName.length).slice(0,2),i=t.length-2;return(0,n.jsxs)(y.k,{gap:2,alignItems:"center","data-testid":"SpotAmenities",children:[r.map(e=>(0,n.jsx)(Pill,{children:e.displayName},e.type)),i>0&&(0,n.jsx)(Pill,{children:(0,n.jsxs)(y.k,{alignItems:"center",children:[(0,n.jsx)(h.xu,{paddingBottom:.5,children:"+"}),i]})},"remaining")]})};var nearby_spots_NearbySpotCard=e=>{let{spot:t,onClick:r}=e,{siteUrl:i,cloudfrontViewerCountryCode:a}=(0,Z.Z)(),{startDate:o,endDate:c,timezone:d}=(0,s.useFindParkingSpotsButtonPartialStore)(),{spotId:u,title:g,distance:f,rating:{average:p,count:m},images:x,selectedRate:v,allAmenities:b,addresses:j}=t,getSpotUrl=()=>{let e=new URL("/facility/".concat(u,"/").concat(t.slug,"-parking"),i);return e.href},buildAddressSearchUrl=()=>{let e=new URL("/search",window.location.origin),t=(0,S.Z)(o).tz(d).format(ef.Ak),r=(0,S.Z)(c).tz(d).format(ef.Ak);e.searchParams.set("starts",t),e.searchParams.set("ends",r),e.searchParams.set("kind","address");let n=null==j?void 0:j[0];if(n){null!==n.latitude&&e.searchParams.set("latitude",String(n.latitude)),null!==n.longitude&&e.searchParams.set("longitude",String(n.longitude));let t=[n.streetAddress,n.city,n.state,n.postalCode].filter(Boolean);t.length>0&&e.searchParams.set("search_string",t.join(", "))}return e.searchParams.set("spot-id",u),e.href},navigateToSpot=e=>{r(e,u),window.open(getSpotUrl(),"_blank")},w={quality:200,alt:"Photo of ".concat(g),isLazyLoaded:!0,loader:x.length?void 0:()=>"".concat(i,"/img/missing-image.png"),src:x.length?x[0].parsedURLforNextImg:"".concat(i,"/img/missing-image.png")};return(0,n.jsxs)(l.Zb,{padding:"none",overflow:"hidden",boxShadow:"base",border:"1px solid",borderColor:"gray.medium",_hover:{boxShadow:"lg"},transition:"box-shadow 250ms ease-in-out",cursor:"pointer",display:"flex",flexDirection:"column",onClick:e=>{e.target instanceof HTMLElement&&("A"===e.target.tagName||"BUTTON"===e.target.tagName)||navigateToSpot(e)},onKeyDown:e=>{"Enter"!==e.key&&" "!==e.key||e.target instanceof HTMLElement&&("A"===e.target.tagName||"BUTTON"===e.target.tagName)||(e.preventDefault(),navigateToSpot(e))},tabIndex:0,role:"button","aria-label":"View parking details for ".concat(g),children:[(0,n.jsx)(h.xu,{background:"gray.medium",position:"relative",minHeight:{base:"12rem",tablet:"15rem"},sx:{".Image":{height:{base:"12rem",tablet:"15rem"}}}
1,children:(0,n.jsx)(U.Z,{alt:"Background Image",...w,layout:"fill",objectFit:"cover",objectPosition:"center"})}),(0,n.jsxs)(y.k,{padding:4,justifyContent:"space-between",alignItems:"baseline",gap:4,"data-testid":"nearby-spot-card",children:[(0,n.jsxs)(y.k,{flexFlow:"column",gap:1,children:[(0,n.jsx)(h.xu,{as:"a",href:getSpotUrl(),textDecoration:"underline",fontWeight:"semibold",fontSize:"base",color:"black","data-testid":"NearbySpotCardHeading",title:g,onClick:e=>e.stopPropagation(),_hover:{color:"blue.dark"},children:g.length<=25?g:g.slice(0,25)+"..."}),(0,n.jsxs)(y.k,{gap:4,alignItems:"center",children:[f?(0,n.jsx)(eS.Z,{linearMeters:f.linearMeters,walkingMeters:f.walkingMeters,walkingDuration:f.durationSeconds,countryCode:a,color:"black"}):null,(0,n.jsx)(CompactRatingSummary,{rating:p,reviewCount:m})]}),(0,n.jsx)(SpotAmenities,{amenities:b})]}),v&&(0,n.jsx)(SpotPriceDisplay,{price:v.totalPrice.value,currencyCode:v.totalPrice.currencyCode})]}),(0,n.jsx)(l.zx,{display:{base:"none",mobileXL:"block"},marginX:4,marginBottom:3,onClick:e=>{e.stopPropagation(),r(e,u),window.open(buildAddressSearchUrl(),"_blank")},children:"Book Now"})]},u)};function trackFacilityNearbySpotsClicked(e){let{viewAll:t=!1,spotId:r}=e;try{eu.Z.track({event:"Facility Nearby Spots Clicked",properties:{viewAll:t,spotId:r},additionalOptions:{context:{protocols:{event_version:1}}}})}catch(e){eh.Z.sendSentryMessage({error:e,customErrorMessage:"Segment Event Failed - trackFacilityNearbySpotsClicked"})}}let NearbySpots=e=>{let{showHeading:t=!0,spots:r}=e,{navigateToSearch:i}=useSearchNavigation(),onSpotClick=(e,t)=>{trackFacilityNearbySpotsClicked({spotId:t,viewAll:!1})};return(0,n.jsxs)(h.xu,{mb:t?6:0,children:[t&&(0,n.jsx)(l.X6,{as:"h3",marginBottom:4,children:"Reserve a Parking Spot Nearby"}),(0,n.jsx)(l.rj,{gridTemplateColumns:{base:"1fr",tablet:"repeat(2, 1fr)",desktop:"repeat(3, 1fr)"},gap:4,marginBottom:4,children:r.map(e=>(0,n.jsx)(nearby_spots_NearbySpotCard,{spot:e,onClick:onSpotClick},e.spotId))}),(0,n.jsx)(y.k,{justifyContent:"center",children:(0,n.jsx)(l.zx,{variant:"secondary",onClick:()=>{trackFacilityNearbySpotsClicked({viewAll:!0,spotId:null}),i()},children:"View All Spots"})})]})};var eC=r(20434);let BackToTop=()=>(0,n.jsx)(h.xu,{textAlign:"center",marginTop:16,marginBottom:8,children:(0,n.jsxs)(l.zx,{variant:"tertiary",onClick:()=>{window.scrollTo({top:0,behavior:"smooth"})},fontWeight:"semibold","aria-label":"Scroll to top of page",children:[(0,n.jsx)(g.J,{as:eC.Z,width:4,height:4,marginRight:2}),"Back to top"]})});var eA=r(15263);let nearby_spots_getNearbySpots=async e=>{let{latitude:t,longitude:r,timezone:n,craigUrl:i=Y.craigUrl}=e,a=(0,T.He)({time:(0,S.Z)().tz(n),mode:"start"}),o=(0,T.He)({time:(0,S.Z)().tz(n),mode:"end"}).add(1,"hour"),l=await (0,eA.$G)({params:{page_size:6,max_distance_meters:2500,lat:t,lon:r,include_walking_distance:!0,starts:a.toISOString(),ends:o.toISOString()},formatOptions:{},craigUrl:i});return l||[]},scrollToRef=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;e.current&&e.current.scrollIntoView&&(t>0?setTimeout(()=>{var t;null===(t=e.current)||void 0===t||t.scrollIntoView({behavior:"smooth",block:"start"})},t):e.current.scrollIntoView({behavior:"smooth",block:"start"}))};var eE=r(14587),eR=r(80122);let eT=null,useFacilityPageTracking=e=>{(0,i.useEffect)(()=>{var t,r,n;if((null==e?void 0:e.id)&&(null==e?void 0:e.title)&&eT!==e.id)return eT=e.id,(0,eE.Z)({pageType:J.T3.FACILITY,city:null!==(n=null===(r=e.city)||void 0===r?void 0:null===(t=r.slug)||void 0===t?void 0:t.replace("-parking",""))&&void 0!==n?n:null,extraProperties:{parking_spot_id:parseInt(e.id,10),parking_spot_name:e.title}}),function(e){let{facility:t}=e;try{var r,n,i,a,o,l,s,c,d,u;let e=(0,eR.T)(),h={referrer:e,partner_affiliate:(0,eg.Mo)(),currency:null!==(c=null===(i=t.firstRateInfo)||void 0===i?void 0:null===(n=i.cost)||void 0===n?void 0:null===(r=n.currencyCode)||void 0===r?void 0:r.toLowerCase())&&void 0!==c?c:null,parking_type:"transient",city:null!==(d=null===(a=t.address)||void 0===a?void 0:a.city)&&void 0!==d?d:null,state:null!==(u=null===(o=t.address)||void 0===o?void 0:o.state)&&void 0!==u?u:null,operator_id:t.operatorId,parking_spot_id:parseInt(t.id,10),parking_spot_name:t.title,star_rating:null===(l=t.rating)||void 0===l?void 0:l.average,amenities:(null===(s=t.amenities)||void 0===s?void 0:s.map(e=>e.display_name))||[],free_cancellation:t.cancellationAllowed};eu.Z.page({name:"Facility Details",properties:h})}catch(e){eh.Z.sendSentryMessage({error:e,customErrorMessage:"Segment Page Failed - trackFacilityDetailsPage"})}}({facility:e}),()=>{eT=null}},[null==e?void 0:e.id])},FacilityJsonLd=e=>{let{schema:t}=e;return(0,n.jsx)(d(),{children:(0,n.jsx)("script",{type:"application/ld+json",dangerouslySetInnerHTML:{__html:JSON.stringify(t)}})})};var eP=r(94254);let useTimezone=()=>{var e,t;let{data:r}=useFacilityQuery();return null!==(t=null==r?void 0:null===(e=r.firstRateInfo)||void 0===e?void 0:e.timezone)&&void 0!==t?t:S.Z.tz.guess()};var eN=r(97237);let useFacilityCanonical=(e,t,r)=>{let n="https://spothero.com/facility/".concat(e,"/").concat((0,J.C1)(t));return((0,i.useEffect)(()=>{r||console.info("Prod Canonical URL will be: ".concat(n))},[n,r]),r)?n:null}
1,ez={HERO:"HERO",BOOK_NOW:"BOOK_NOW",CONTENT:"CONTENT"},craigToImageCarousel=e=>Array.isArray(e)?e.map(e=>({src:e.url,alt:e.alt_text||"Facility image"})):[];var components_Facility=e=>{var t,r,c;let{facilityId:u,config:g}=e,f=(0,i.useRef)(null),p=(0,i.useRef)(null),{partner:m,isFacilityMode:x}=useFacilityQueryParams(),{data:y,isLoading:b,error:j}=useFacilityQuery(),w=(0,v.Z)(),{googleMapsLibraries:k,useNewGooglePlacesApi:O}=(0,eP.e)(),I=useTimezone(),C=(0,o.q)(),A=(0,o.q)();(0,i.useEffect)(()=>{m&&a.default.set("sh-partner-affiliate",m,"session")},[m]);let E=useFacilityIndexing(g.isProduction,null!==(c=null==y?void 0:y.status)&&void 0!==c?c:"");useFacilityPageTracking(y);let R=useFacilityCanonical(u,null==y?void 0:y.slug,g.isProduction),T=(0,n.jsxs)(d(),{children:[(null==y?void 0:y.title)&&(0,n.jsx)("title",{children:"".concat(y.title," Parking | Book Now with SpotHero")}),R&&(0,n.jsx)("link",{rel:"canonical",href:R}),(null==y?void 0:y.schema)?(0,n.jsx)(FacilityJsonLd,{schema:y.schema}):null,!E&&(0,n.jsx)("meta",{name:"robots",content:"noindex, nofollow"})]}),{data:P=[]}=function(e){let{facilityId:t,latitude:r,longitude:n,timezone:i}=e;return(0,X.a)({queryKey:["facilityNearbySpots",t,r,n,i],queryFn:()=>nearby_spots_getNearbySpots({latitude:r,longitude:n,timezone:i}),staleTime:er.G,enabled:Number.isFinite(r)&&Number.isFinite(n)&&!!i,retry:!1})}({facilityId:u,latitude:(null==y?void 0:y.latitude)||null,longitude:(null==y?void 0:y.longitude)||null,timezone:(null==y?void 0:null===(t=y.address)||void 0===t?void 0:t.time_zone)||null}),{defaultStartDate:N,defaultEndDate:z}=(0,i.useMemo)(()=>{if(!I)return{defaultStartDate:void 0,defaultEndDate:void 0};let{starts:e,ends:t}=(0,eN.ir)(I);return{defaultStartDate:S.Z.tz(e,I).toDate(),defaultEndDate:S.Z.tz(t,I).toDate()}},[I]);if(b)return(0,n.jsxs)(n.Fragment,{children:[T,(0,n.jsx)(l.W2,{paddingX:4,marginX:"auto",marginTop:{base:20,tablet:24},children:(0,n.jsx)("div",{children:"Loading facility data..."})})]});if(j||!y)return(0,n.jsxs)(n.Fragment,{children:[T," ",(0,n.jsx)(FacilityNotFound,{})]});let D=[{isCurrentPage:!1,link:y.city?"/city/".concat(y.city.slug):"/cities",label:y.city?"".concat(y.city.name,", ").concat(y.city.state):"cities"},{isCurrentPage:!0,label:y.title}],F=null===(r=y.amenities)||void 0===r?void 0:r.some(e=>"in_out"===e.type||"in-out"===e.type),H={...getFacilityVisibility(y,F,P),areNearbySpotsVisible:!x&&P.length>0};return(0,n.jsxs)(n.Fragment,{children:[T,(0,n.jsx)(s.SearchComponentStoreProvider,{siteUrl:"siteUrl",parkingType:"hourly",parkingSubType:"hourly",eventMode:"seo",useNewGooglePlacesApi:O,startDate:N,endDate:z,clientRendered:{googleMapsLibraries:k,isMobile:w,timezone:I,useNewGooglePlacesApi:O},isMobile:w,locationId:1,locationKind:"city",hasUserInteractedWithWidget:!0,children:(0,n.jsxs)(l.W2,{"data-testid":"FacilityPage",paddingX:4,marginX:"auto",marginTop:{base:20,tablet:24},children:[(0,n.jsx)(_.Z,{items:D}),(0,n.jsxs)(l.rj,{templateColumns:{base:"1fr",desktop:"repeat(12, 1fr)"},templateAreas:{base:'\n                            "'.concat(ez.HERO,'"\n                            "').concat(ez.BOOK_NOW,'"\n                            "').concat(ez.CONTENT,'"\n                        '),desktop:'\n                            "'.concat(ez.HERO," ").concat(ez.BOOK_NOW,'"\n                            "').concat(ez.CONTENT," ").concat(ez.CONTENT,'"\n                        ')},rowGap:8,columnGap:{desktop:8,base:0},marginTop:6,position:"relative",alignItems:"start",children:[(0,n.jsxs)(l.P4,{area:ez.HERO,children:[(0,n.jsx)(AboveTheFold,{images:craigToImageCarousel(y.images),address:y.address,amenities:y.amenities,title:y.title,scrollToGettingThere:()=>scrollToRef(p)}),(0,n.jsx)(TopRated,{rating:y.rating.average,reviewCount:y.rating.count,onScrollToReviews:()=>scrollToRef(f)})]}),(0,n.jsxs)(l.P4,{area:ez.CONTENT,children:[H.areRestrictionsVisible&&(0,n.jsx)(MobileAccordionSection,{title:"Things You Should Know",testId:"things-you-should-know-section",defaultOpen:!0,children:(0,n.jsx)(ThingsYouShouldKnow,{restrictions:y.restrictions,hasInOutAmenity:F})}),H.areAmenitiesVisible&&(0,n.jsx)(MobileAccordionSection,{title:"Amenities",testId:"amenities-section",defaultOpen:!0,children:(0,n.jsx)(Amenities,{amenities:y.amenities})}
1),H.areAccessHoursVisible&&(0,n.jsx)(MobileAccordionSection,{title:"Access Hours",testId:"access-hours-section",defaultOpen:!0,children:(0,n.jsx)(AccessHours,{facility:y})}),H.areReviewsVisible&&(0,n.jsx)(h.xu,{ref:f,children:(0,n.jsx)(MobileAccordionSection,{title:"Reviews",testId:"reviews-section",defaultOpen:!0,children:(0,n.jsx)(RatingReviews,{facilityId:u,rating:y.rating,config:g})})}),H.isGettingThereVisible&&(0,n.jsx)(h.xu,{"data-testid":"getting-there-wrapper",ref:p,children:(0,n.jsx)(MobileAccordionSection,{title:"Getting There",testId:"getting-there-section",defaultOpen:!0,children:(0,n.jsx)(GettingThere,{latitude:y.latitude,longitude:y.longitude,instructions:y.gettingHere})})}),H.isHowToRedeemVisible&&(0,n.jsx)(MobileAccordionSection,{title:"How to Redeem",testId:"how-to-redeem-section",defaultOpen:!0,children:(0,n.jsx)(HowToRedeem,{redemptionInstructions:y.redemptionInstructions,postPurchaseInstructions:y.postPurchaseInstructions})})]}),(0,n.jsxs)(l.P4,{area:ez.BOOK_NOW,position:{desktop:"sticky",base:"relative"},top:{desktop:"4",base:"0"},children:[(0,n.jsx)(BookParkingNow,{isFacilityMode:x}),!w&&(0,n.jsx)(PolicyCalloutGroup,{guaranteedParkingDisclosure:A,cancellationPolicyDisclosure:C,showCancellationPolicy:y.cancellationAllowed})]})]}),(0,n.jsx)(MobileAccordionSection,{title:"365-Day Customer Support",testId:"customer-support-section",children:(0,n.jsx)(CustomerSupport,{})}),(0,n.jsx)(PolicySection,{title:eO.FREE_CANCELLATION.title,testId:"free-cancellation-policy-section",shouldShow:y.cancellationAllowed,isMobile:w,children:(0,n.jsx)(FreeCancellationPolicy,{showHeading:!1})}),(0,n.jsx)(PolicySection,{title:eO.GUARANTEED_PARKING.title,testId:"guaranteed-parking-by-spotHero-section",shouldShow:!0,isMobile:w,children:(0,n.jsx)(GuaranteedParking,{showHeading:!1})}),(0,n.jsx)(MobileAccordionSection,{title:"How SpotHero Works",testId:"how-spothero-works-section",children:(0,n.jsx)(HowSpotHeroWorks,{})}),H.areNearbySpotsVisible&&(0,n.jsx)(MobileAccordionSection,{title:"Reserve a Parking Spot Nearby",testId:"nearby-spots-section",children:(0,n.jsx)(NearbySpots,{spots:P})}),(0,n.jsx)(BackToTop,{}),(0,n.jsx)(PolicyModals,{guaranteedParkingDisclosure:A,cancellationPolicyDisclosure:C,showCancellationPolicy:y.cancellationAllowed})]})})]})}},55338:function(){},30117:function(e,t,r){"use strict";var n,i,a=r(52983),o=(n=Object.create(null),a&&Object.keys(a).forEach(function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}}),n.default=a,Object.freeze(n));function _extends(){return(_extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}var l=a.forwardRef(function(e,t){return o.createElement("svg",_extends({},e,{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 24 24",className:"Icon ".concat((null==e?void 0:e.className)||""),ref:t}),i||(i=o.createElement("path",{fill:"",fillRule:"evenodd",d:"M17 2a1 1 0 0 0-1 1v17H8v-9a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h18a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1zm3 2h-2v2h2zm-2 4h2v2h-2zM4 12h2v2H4zm14 0h2v2h-2z",clipRule:"evenodd"})))});e.exports=l},30232:function(e,t,r){"use strict";var n,i,a=r(52983),o=(n=Object.create(null),a&&Object.keys(a).forEach(function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}}),n.default=a,Object.freeze(n));function _extends(){return(_extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}var l=a.forwardRef(function(e,t){return o.createElement("svg",_extends({},e,{xmlns:"http://www.w3.org/2000/svg",xmlSpace:"preserve",viewBox:"0 0 1024 1024",fill:"currentColor",className:"Icon ".concat((null==e?void 0:e.className)||""),ref:t}),i||(i=o.createElement("path",{d:"M992 240h-64v-32c0-89.6-70.4-160-160-160H256c-89.6 0-160 70.4-160 160v32H32c-19.2 0-32 12.8-32 32v160c0 19.2 12.8 32 32 32h64v384c0 19.2 12.8 32 32 32h48v64c0 19.2 12.8 32 32 32h128c19.2 0 32-12.8 32-32v-64h288v64c0 19.2 12.8 32 32 32h128c19.2 0 32-12.8 32-32v-64h48c19.2 0 32-12.8 32-32V464h64c19.2 0 32-12.8 32-32V272c0-19.2-12.8-32-32-32M96 400H64v-96h32zm64-96h320v224H160zm704 512H160V592h704zm0-288H544V304h320zm0-288H160v-32c0-54.4 41.6-96 96-96h512c54.4 0 96 41.6 96 96zm96 160h-32v-96h32zM224 704c0-26.5 21.5-48 48-48s48 21.5 48 48-21.5 48-48 48-48-21.5-48-48m480 0c0-26.5 21.5-48 48-48s48 21.5 48 48-21.5 48-48 48-48-21.5-48-48"})))});e.exports=l},77529:function(e,t,r){"use strict";var n,i,a=r(52983),o=(n=Object.create(null),a&&Object.keys(a).forEac
1h(function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}}),n.default=a,Object.freeze(n));function _extends(){return(_extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}var l=a.forwardRef(function(e,t){return o.createElement("svg",_extends({},e,{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 24 24",className:"Icon ".concat((null==e?void 0:e.className)||""),ref:t}),i||(i=o.createElement("path",{fill:"",d:"m15 12 5-4-5-4v2.999H2v2h13zm7 3H9v-3l-5 4 5 4v-3h13z"})))});e.exports=l},40224:function(e,t,r){"use strict";var n,i,a,o=r(52983),l=(n=Object.create(null),o&&Object.keys(o).forEach(function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(o,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return o[e]}})}}),n.default=o,Object.freeze(n));function _extends(){return(_extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}var s=o.forwardRef(function(e,t){return l.createElement("svg",_extends({},e,{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 24 24",className:"Icon ".concat((null==e?void 0:e.className)||""),ref:t}),i||(i=l.createElement("path",{fill:"",d:"M21.004 7.975V6c0-2.206-1.794-4-4-4h-10c-2.206 0-4 1.794-4 4v1.998l-.076.004A1 1 0 0 0 2 9v2a1 1 0 0 0 1 1h.004v6c0 .735.403 1.372.996 1.72V21a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-1h10v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-1.276A2 2 0 0 0 21.004 18v-6a1 1 0 0 0 1-1V9.062a1 1 0 0 0-.072-.455c-.203-.487-.635-.604-.928-.632M19.006 18H5.004v-5h14.001zM11.004 7v4h-6V7zm8 0v4h-6V7zm-12-3h10c.736 0 1.375.405 1.722 1H5.282c.347-.595.986-1 1.722-1"})),a||(a=l.createElement("path",{fill:"",d:"M7.5 17a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3M16.5 17a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3"})))});e.exports=s},35536:function(e,t,r){"use strict";var n,i,a=r(52983),o=(n=Object.create(null),a&&Object.keys(a).forEach(function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}}),n.default=a,Object.freeze(n));function _extends(){return(_extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}var l=a.forwardRef(function(e,t){return o.createElement("svg",_extends({},e,{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 24 24",className:"Icon ".concat((null==e?void 0:e.className)||""),ref:t}),i||(i=o.createElement("path",{fill:"",d:"m20.772 13.155-1.368-4.104A2.995 2.995 0 0 0 16.559 7H7.441a2.995 2.995 0 0 0-2.845 2.051l-1.368 4.104A2 2 0 0 0 2 15v3c0 .738.404 1.376 1 1.723V21a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-1h12v1a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-1.277A1.99 1.99 0 0 0 22 18v-3c0-.831-.507-1.542-1.228-1.845M7.441 9h9.117a1 1 0 0 1 .949.684L18.613 13H5.387l1.105-3.316c.137-.409.519-.684.949-.684M5.5 18a1.5 1.5 0 1 1 .001-3.001A1.5 1.5 0 0 1 5.5 18m13 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3M9 4.378c.005-1.088-1.037-2.051-1.387-2.344a.176.176 0 0 0-.228 0C7.033 2.325 5.995 3.271 6 4.377 6 5.272 6.673 6 7.5 6S9 5.272 9 4.378m4.5 0c.005-1.088-1.037-2.052-1.387-2.344a.176.176 0 0 0-.228 0c-.353.291-1.391 1.238-1.386 2.344C10.5 5.272 11.173 6 12 6s1.5-.728 1.5-1.622m4.5 0c.005-1.088-1.037-2.052-1.387-2.344a.176.176 0 0 0-.228 0c-.352.291-1.39 1.237-1.385 2.343C15 5.272 15.673 6 16.5 6S18 5.272 18 4.378"})))});e.exports=l},24193:function(e,t,r){"use strict";var n,i,a=r(52983),o=(n=Object.create(null),a&&Object.keys(a).forEach(function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}}),n.default=a,Object.freeze(n));function _extends(){return(_extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}
1).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}var l=a.forwardRef(function(e,t){return o.createElement("svg",_extends({},e,{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 24 24",className:"Icon ".concat((null==e?void 0:e.className)||""),ref:t}),i||(i=o.createElement("path",{fill:"",d:"m20.772 10.155-1.368-4.104A2.995 2.995 0 0 0 16.559 4H7.441a2.995 2.995 0 0 0-2.845 2.051l-1.368 4.104A2 2 0 0 0 2 12v5c0 .738.404 1.376 1 1.723V21a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-2h12v2a1 1 0 0 0 1 1h1a1 1 0 0 0 1-1v-2.277A1.99 1.99 0 0 0 22 17v-5a2 2 0 0 0-1.228-1.845M7.441 6h9.117c.431 0 .813.274.949.684L18.613 10H5.387l1.105-3.316A1 1 0 0 1 7.441 6M5.5 16a1.5 1.5 0 1 1 .001-3.001A1.5 1.5 0 0 1 5.5 16m13 0a1.5 1.5 0 1 1 .001-3.001A1.5 1.5 0 0 1 18.5 16"})))});e.exports=l},36354:function(e,t,r){"use strict";var n,i,a=r(52983),o=(n=Object.create(null),a&&Object.keys(a).forEach(function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}}),n.default=a,Object.freeze(n));function _extends(){return(_extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}var l=a.forwardRef(function(e,t){return o.createElement("svg",_extends({},e,{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 24 24",className:"Icon ".concat((null==e?void 0:e.className)||""),ref:t}),i||(i=o.createElement("path",{fill:"",d:"m19.616 6.48.014-.017-4-3.24-1.26 1.554 2.067 1.674a2.99 2.99 0 0 0-1.394 3.062c.15.899.769 1.676 1.57 2.111.895.487 1.68.442 2.378.194L18.976 18a.995.995 0 0 1-1.708.705 1 1 0 0 1-.291-.705L17 16a2.98 2.98 0 0 0-.877-2.119A3 3 0 0 0 14 13h-1V5a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h7a2 2 0 0 0 2-2v-4h1q.205 0 .391.078c.238.104.428.295.531.533A1 1 0 0 1 15 16l-.024 2c0 .406.079.799.236 1.168.151.359.368.68.641.951a2.97 2.97 0 0 0 2.123.881c.406 0 .798-.078 1.168-.236.358-.15.68-.367.951-.641A2.98 2.98 0 0 0 20.976 18L21 9a3 3 0 0 0-1.384-2.52M6 18l1-5H4l5-7-1 5h3zm12-8a1 1 0 1 1 0-2 1 1 0 0 1 0 2"})))});e.exports=l},32137:function(e,t,r){"use strict";var n,i,a=r(52983),o=(n=Object.create(null),a&&Object.keys(a).forEach(function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}}),n.default=a,Object.freeze(n));function _extends(){return(_extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}var l=a.forwardRef(function(e,t){return o.createElement("svg",_extends({},e,{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 24 24",className:"Icon ".concat((null==e?void 0:e.className)||""),ref:t}),i||(i=o.createElement("path",{fill:"",fillRule:"evenodd",d:"m19.928 8.652.009.028q.042.125.05.258.001.015.007.029A.1.1 0 0 1 20 9v9.586l1.71 1.71-1.414 1.414-18-18L3.71 2.296l.614.614A2 2 0 0 1 6 2h7q.017 0 .033.006.014.005.029.007a1 1 0 0 1 .259.051l.03.01q.033.01.064.023a1 1 0 0 1 .293.196l6 6a1 1 0 0 1 .22.359M6 4.586V4h6v5a1 1 0 0 0 1 1h5l.002 6.588zM14 8h2.586L14 5.414zM4 20V8.121l2 2V20h10l2 2H6c-1.103 0-2-.897-2-2",clipRule:"evenodd"})))});e.exports=l},37537:function(e,t,r){"use strict";var n,i,a=r(52983),o=(n=Object.create(null),a&&Object.keys(a).forEach(function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}}),n.default=a,Object.freeze(n));function _extends(){return(_extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}var l=a.forwardRef(function(e,t){return o.createElement("svg",_extends({},e,{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 24 24",className:"Icon ".concat((null==e?void 0:e.className)||""),ref:t}),i||(i=o.createElement("path",{fill:"",d:"M16.5 8c0 1.5-.5 3.5-2.9 4.3.7-1.7.8-3.4.3-5-.7-2.1-3-3.7-4.6-4.6-.4-.3-1.1.1-1 .7 0 1.1-.3 2.7-2 4.4C4.1 10 3 12.3 3 14.5 3 17.4 5 21 9 21c-4-4-1-7.5-1-7.5.8 5.9 5 7.5 7 7.5 1.7 0 5-1.2 5-6.4 0-3.1-1.3-5.5-2.4-6.9-.3-.5-1-.2-1.1.3"})))});e.exports=l},46427:function(e,t,r){"use strict";var n,i,a=r(52983),o=(n=Object.create(null),a&&Object.keys(a).forEac
1h(function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}}),n.default=a,Object.freeze(n));function _extends(){return(_extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}var l=a.forwardRef(function(e,t){return o.createElement("svg",_extends({},e,{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 24 24",className:"Icon ".concat((null==e?void 0:e.className)||""),ref:t}),i||(i=o.createElement("path",{fill:"",d:"M3.433 17.325 3.079 19.8a1 1 0 0 0 1.131 1.131l2.475-.354C7.06 20.524 8 18 8 18s.472.405.665.466c.412.13.813-.274.948-.684L10 16.01s.577.292.786.335c.266.055.524-.109.707-.293a1 1 0 0 0 .241-.391L12 14.01s.675.187.906.214c.263.03.519-.104.707-.293l1.138-1.137a5.5 5.5 0 0 0 5.581-1.338 5.507 5.507 0 0 0 0-7.778 5.507 5.507 0 0 0-7.778 0 5.5 5.5 0 0 0-1.338 5.581l-7.501 7.5a1 1 0 0 0-.282.566M18.504 5.506a2.92 2.92 0 0 1 0 4.122l-4.122-4.122a2.92 2.92 0 0 1 4.122 0"})))});e.exports=l},32643:function(e,t,r){"use strict";var n,i,a=r(52983),o=(n=Object.create(null),a&&Object.keys(a).forEach(function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}}),n.default=a,Object.freeze(n));function _extends(){return(_extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}var l=a.forwardRef(function(e,t){return o.createElement("svg",_extends({},e,{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 24 24",className:"Icon ".concat((null==e?void 0:e.className)||""),ref:t}),i||(i=o.createElement("path",{fill:"",d:"M20.98 11.802a1 1 0 0 0-.738-.771l-6.86-1.716 2.537-5.921A.998.998 0 0 0 14.981 2a1 1 0 0 0-.613.226l-11 9a1 1 0 0 0 .39 1.744l6.719 1.681-3.345 5.854A1.001 1.001 0 0 0 8.6 21.8l12-9a1 1 0 0 0 .38-.998"})))});e.exports=l},56519:function(e,t,r){"use strict";var n,i,a=r(52983),o=(n=Object.create(null),a&&Object.keys(a).forEach(function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}}),n.default=a,Object.freeze(n));function _extends(){return(_extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}var l=a.forwardRef(function(e,t){return o.createElement("svg",_extends({},e,{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 24 24",className:"Icon ".concat((null==e?void 0:e.className)||""),ref:t}),i||(i=o.createElement("path",{fill:"",d:"M17 2H7c-1.103 0-2 .897-2 2v16c0 1.103.897 2 2 2h10c1.103 0 2-.897 2-2V4c0-1.103-.897-2-2-2M7 16.999V5h10l.002 11.999z"})))});e.exports=l},31601:function(e,t,r){"use strict";var n,i,a=r(52983),o=(n=Object.create(null),a&&Object.keys(a).forEach(function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}}),n.default=a,Object.freeze(n));function _extends(){return(_extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}var l=a.forwardRef(function(e,t){return o.createElement("svg",_extends({},e,{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 24 24",className:"Icon ".concat((null==e?void 0:e.className)||""),ref:t}),i||(i=o.createElement("path",{fill:"",d:"M11 2h2v5h-2zM11 9h2v5h-2zM11 16h2v6h-2zM18 2h2v20h-2zM4 2h2v20H4z"})))});e.exports=l},92549:function(e,t,r){"use strict";var n,i,a=r(52983),o=(n=Object.create(null),a&&Object.keys(a).forEach(function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}}),n.default=a,Object.freeze(n));function _extends(){return(_extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}
1).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}var l=a.forwardRef(function(e,t){return o.createElement("svg",_extends({},e,{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 24 24",className:"Icon ".concat((null==e?void 0:e.className)||""),ref:t}),i||(i=o.createElement("path",{fill:"",d:"M14 4.438A2.437 2.437 0 0 0 16.438 2h1.125A2.437 2.437 0 0 0 20 4.438v1.125A2.437 2.437 0 0 0 17.563 8h-1.125A2.437 2.437 0 0 0 14 5.563zM2 11a6 6 0 0 0 6-6h2a6 6 0 0 0 6 6v2a6 6 0 0 0-6 6H8a6 6 0 0 0-6-6zm3.876 1A8.04 8.04 0 0 1 9 15.124 8.04 8.04 0 0 1 12.124 12 8.04 8.04 0 0 1 9 8.876 8.04 8.04 0 0 1 5.876 12m11.374 2A3.25 3.25 0 0 1 14 17.25v1.5A3.25 3.25 0 0 1 17.25 22h1.5A3.25 3.25 0 0 1 22 18.75v-1.5A3.25 3.25 0 0 1 18.75 14z"})))});e.exports=l},53683:function(e,t,r){"use strict";var n,i,a=r(52983),o=(n=Object.create(null),a&&Object.keys(a).forEach(function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(a,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return a[e]}})}}),n.default=a,Object.freeze(n));function _extends(){return(_extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}var l=a.forwardRef(function(e,t){return o.createElement("svg",_extends({},e,{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 24 24",className:"Icon ".concat((null==e?void 0:e.className)||""),ref:t}),i||(i=o.createElement("path",{fill:"",d:"M12 22a9.7 9.7 0 0 1-3.9-.788 10.1 10.1 0 0 1-3.175-2.137q-1.35-1.35-2.137-3.175A9.7 9.7 0 0 1 2 12q0-2.075.788-3.9a10.1 10.1 0 0 1 2.137-3.175q1.35-1.35 3.175-2.137A9.7 9.7 0 0 1 12 2q2.075 0 3.9.788a10.1 10.1 0 0 1 3.175 2.137q1.35 1.35 2.137 3.175A9.7 9.7 0 0 1 22 12a9.7 9.7 0 0 1-.788 3.9 10.1 10.1 0 0 1-2.137 3.175q-1.35 1.35-3.175 2.137A9.7 9.7 0 0 1 12 22m-1-2.1v-3q-1.5-.3-2.55-1.35T7.1 13h-3q.3 2.725 2.238 4.625T11 19.9m2 0q2.724-.3 4.663-2.237Q19.6 15.725 19.9 13h-3q-.3 1.5-1.35 2.55T13 16.9zM4.1 11H7l3-3h4l3 3h2.9q-.375-3.025-2.625-5.012Q15.025 4 12 4T6.725 5.987Q4.475 7.976 4.1 11"})))});e.exports=l},44107:function(e,t,r){"use strict";var n,i,a,o=r(52983),l=(n=Object.create(null),o&&Object.keys(o).forEach(function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(o,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return o[e]}})}}),n.default=o,Object.freeze(n));function _extends(){return(_extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}var s=o.forwardRef(function(e,t){return l.createElement("svg",_extends({},e,{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 24 24",className:"Icon ".concat((null==e?void 0:e.className)||""),ref:t}),i||(i=l.createElement("path",{fill:"",d:"M12 10c1.151 0 2-.848 2-2s-.849-2-2-2c-1.15 0-2 .848-2 2s.85 2 2 2m0 1c-2.209 0-4 1.612-4 3.6v.386h8V14.6c0-1.988-1.791-3.6-4-3.6"})),a||(a=l.createElement("path",{fill:"",d:"M19 2H5c-1.103 0-2 .897-2 2v13c0 1.103.897 2 2 2h4l3 3 3-3h4c1.103 0 2-.897 2-2V4c0-1.103-.897-2-2-2m-5 15-2 2-2-2H5V4h14l.002 13z"})))});e.exports=s},2230:function(e,t,r){"use strict";var n,i,a,o=r(52983),l=(n=Object.create(null),o&&Object.keys(o).forEach(function(e){if("default"!==e){var t=Object.getOwnPropertyDescriptor(o,e);Object.defineProperty(n,e,t.get?t:{enumerable:!0,get:function(){return o[e]}})}}),n.default=o,Object.freeze(n));function _extends(){return(_extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(null,arguments)}var s=o.forwardRef(function(e,t){return l.createElement("svg",_extends({},e,{xmlns:"http://www.w3.org/2000/svg",fill:"currentColor",viewBox:"0 0 24 24",className:"Icon ".concat((null==e?void 0:e.className)||""),ref:t}),i||(i=l.createElement("path",{fill:"",d:"M9 6a2 2 0 1 0 0-4 2 2 0 0 0 0 4M16.98 14.804A1 1 0 0 0 16 14h-4.133l-.429-3H16V9h-4.847l-.163-1.142A1 1 0 0 0 10 7H9a1.003 1.003 0 0 0-.99 1.142l.877 6.142A2.01 2.01 0 0 0 10.867 16h4.313l.839 4.196c.094.467.504.804.981.804h3v-2h-2.181z"})),a||(a=l.createElement("path",{fill:"",d:"M12.51 17.5c-.739 1.476-2.25 2.5-4.01 2.5A4.505 4.505 0 0 1 4 15.5a4.5 4.5 0 0 1 2.817-4.167l-.289-2.025C3.905 10.145 2 12.604 2 15.5 2 19.084 4.916 22 8.5 22a6.5 6.5 0 0 0 5.545-3.126l-.274-1.374z"})))});e.exports=s},14289:function(e,t,r){e.exports=r(64936)},64936:function(e,t,r){"use strict";var n=r(48412);t.default=void 0;var i=n(r(24193)),a=n(r(32643)),o=n(r(77529)),l=n(r(32137)),s=n(r(56519)),c=n(r(53683)),d=n(r(2230)),u=n(r(30117)),h=n(r(35536)),g=n(r(37537)),f=n(r(40224)),p=n(r(92549)),m=n(r(46427)),x=n(r(44107)),v=n(r(36354)),y=n(r(31601)),b=n(r(30232));let j={ICONS:{"alley-access":u.default,"car-wash":h.default,attendant:x.default,covered:i.default,"covered-parking":i.default,ev:v.default,heated:g.default,immediate_parking:a.default,"immediate-parking":a.default,in_out:o.default,"in-out":o.default,no_contract:l.default,"no-contract":l.default,one_tap:s.default,"one-tap":s.default,paved:y.default,self_park:c.default,"self-park":c.default,shuttle:f.default,touchless:p.default,valet:m.default,wheelchair:d.default,wheelchair_accessible:d.default,accessible_shuttle:b.default,"accessible-shuttle":b.default},getIcon(e){let t=j.ICONS[e];return t||(console.warn(`There is no amenity icon available with the name '${e}'. Add it in fe-utils' AmenityUtils to use it.`),null)}};t.default=j}}]);

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.