PageSourceSearch

https://www.metropolitanpubcompany.com/dist/gk-jss-app/js/7066.47399239.js

js metropolitanpubcompany.com collected 2026-09-26 08:30:08 UTC 16,002 bytes, 2 lines download raw bytes

1"use strict";(globalThis["webpackChunkgk_jss_app"]=globalThis["webpackChunkgk_jss_app"]||[]).push([[7066],{9806:(e,s,a)=>{a.d(s,{Y:()=>i});const i=(e,s=5)=>{if(!e)return[];const a=Math.round(2*e)/2,i=Math.floor(a),r=a%1===0?0:1,n=s-i-r;return[...new Array(i).fill("full"),...new Array(r).fill("half"),...new Array(n).fill("empty")]}},15662:(e,s,a)=>{a.d(s,{H6:()=>v,Sx:()=>p,uo:()=>_});var i=a(10141),r=a(48020),n=a(23041),t=a(99940),l=a(30843);const o="/api/reputation/",d="Feature.Venues.ReputationProxyApiUrl",u=()=>{const e=(0,l.B)(),s=e.$state;return s[d]||o},c=(e,s)=>(0,n.A)({url:`${e}summary`,params:{locationIDs:s,groupBy:"Source"}}).then((e=>e.data)),v=e=>{const s=u();return(0,i.I)({queryKey:["reputation-summary",e],queryFn:()=>c(s,e),retry:3,refetchOnWindowFocus:!1,refetchOnReconnect:!1,refetchOnMount:!1,staleTime:864e5,enabled:!(0,t.isEditorActive)()})},p=e=>{const s=u();return(0,n.A)(`${s}reviews/${e}/responses`).then((e=>e.data))},g=(e,s,a,i,r,t,l=0)=>{const o={locationID:s,sourceID:a,limit:i,offset:l};return r||t?(o.from=r,o.to=t):o.range="LifeToDate",n.A.get(`${e}reviews`,{params:o}).then((e=>e.data))},_=({venueId:e,sourceID:s,limit:a=5,offset:i={value:0},from:n=null,to:l=null})=>{const o=u();return(0,r.q)({queryKey:["reputation-reviews",e,s,n,l,a],queryFn:()=>g(o,e,s,a,n,l,i.value),initialPageParam:0,retry:3,refetchOnWindowFocus:!1,refetchOnReconnect:!1,refetchOnMount:!1,staleTime:864e5,getNextPageParam:(e,s,a)=>e?.paging?.next?a+1:null,enabled:!(0,t.isEditorActive)()})}},47066:(e,s,a)=>{a.d(s,{A:()=>ce});a(22489),a(61701),a(18237),a(13579);var i=a(20641),r=a(90033),n=a(50953),t=a(74353),l=a.n(t),o=a(50258),d=a(46810),u=(a(20116),a(9806)),c=a(15662),v=a(11858);const p={class:"rating-block"},g={class:"rating-block__header"},_=["id","aria-controls","aria-expanded","aria-label"],k={class:"rating-block__rating"},f={class:"rating-block__stars"},m={key:0,class:"icon icon-Star","aria-hidden":"true"},h={class:"sr-only"},w={class:"rating-block__score","aria-hidden":"true"},b={class:"rating-block__score-value"},y={key:0,class:"rating-block__score-reviews"},E=["id","aria-labelledby","aria-hidden"],C={class:"rating-block__details-percent","aria-hidden":"true"},R={class:"rating-block__details-type","aria-hidden":"true"},L={class:"sr-only"},X={key:1,class:"rating-block__loader"},F={key:0,class:"rating-block__error"},P=200,x=(0,i.pM)({__name:"RatingBlock",props:{venueId:{},sourceId:{},label:{},scale:{default:5}},emits:["details-expand"],setup(e,{emit:s}){const a=e,t=s,l=(0,v.A)(),{t:d}=(0,o.s9)(),{data:x,isLoading:M,isError:I}=(0,c.H6)(a.venueId),Q=(0,i.rk)("content"),Y=(0,n.KR)(null),K=(0,n.KR)(!1),N=()=>{Y.value=Q.value?.offsetHeight??null,!K.value&&t("details-expand"),setTimeout((()=>K.value=!K.value),0),setTimeout((()=>Y.value=null),P)},A=e=>Math.round(100*e/(B.value.reviewsNumber||1)),D=e=>{const s=e.reduce(((e,s)=>e+s.percent),0);return 100===s?e:e.map(((a,i)=>i===e.length-1?{...a,percent:a.percent+(100-s)}:a))},O=(0,i.EW)((()=>(0,u.Y)(B.value.rating,a.scale))),B=(0,i.EW)((()=>{const e=x.value?.summary?.sources?.find((e=>e.id===a.sourceId));return e?{rating:e.rating,sentiment:e.sentimentCount,reviewsNumber:e.count}:{rating:null,sentiment:null,reviewsNumber:null}})),W=(0,i.EW)((()=>{if(!B.value.reviewsNumber||!B.value.sentiment)return null;const e=[];return B.value.sentiment.positive&&e.push({icon:"icon-Thumbs-up",percent:A(B.value.sentiment.positive),type:d("rating-positive")}),B.value.sentiment.neutral&&e.push({icon:"icon-Face-neutral",percent:A(B.value.sentiment.neutral),type:d("rating-neutral")}),B.value.sentiment.negative&&e.push({icon:"icon-Thumbs-down",percent:A(B.value.sentiment.negative),type:d("rating-negative")}),D(e)}));return(s,a)=>((0,i.uX)(),(0,i.CE)("div",p,[(0,i.Lk)("div",g,[(0,i.Lk)("div",{class:(0,r.C4)(["rating-block__logo",e.label&&"rating-block__logo--"+e.label]),"aria-hidden":"true"},null,2),B.value.rating?((0,i.uX)(),(0,i.CE)("button",{key:0,id:"rating-block-details-"+(0,n.R1)(l),class:"rating-block__details-btn","aria-controls":"rating-block-panel-"+(0,n.R1)(l),"aria-expanded":K.value,"aria-label":(0,n.R1)(d)("rating-toggle-details"),onClick:N},[...a[0]||(a[0]=[(0,i.Lk)("i",{class:"icon icon-Down","aria-hidden":"true"},null,-1)])],8,_)):(0,i.Q3)("",!0)]),B.value.rating?((0,i.uX)(),(0,i.CE)(i.FK,{key:0},[(0,i.Lk)("div",k,[(0,i.Lk)("div",f,[((0,i.uX)(!0),(0,i.CE)(i.FK,null,(0,i.pI)(O.value,((e,s)=>((0,i.uX)(),(0,i.CE)("span",{key:s,class:(0,r.C4)(["rating-block__star",e])},[a[1]||(a[1]=(0,i.Lk)("i",{class:"icon icon-Star","aria-hidden":"true"},null,-1)),"half"===e?((0,i.uX)(),(0,i.CE)("i",m)):(0,i.Q3)("",!0)],2)))),128))]),(0,i.Lk)("div",h,(0,r.v_)(B.value.reviewsNumber)+" reviews. Rating: "+(0,r.v_)(B.value.rating)+" out of "+(0,r.v_)(e.scale),1),(0,i.Lk)("div",w,[(0,i.Lk)("span",b,(0,r.v_)(B.value.rating),1),B.value.reviewsNumber?((0,i.uX)(),(0,i.CE)("span",y," - "+(0,r.v_)(B.value.reviewsNumber)+" "+(0,r.v_)((0,n.R1)(d)("reviews-reviews")),1)):(0,i.Q3)("",!0)])]),(0,i.Lk)("div",{id:"rating-block-panel-"+(0,n.R1)(l),"aria-labelledby":"rating-block-detail
1s-"+(0,n.R1)(l),"aria-hidden":!K.value,role:"tabpanel",class:"rating-block__details",style:(0,r.Tr)({"--rating-block-details-height":Y.value?`${Y.value}px`:void 0})},[(0,i.Lk)("div",{ref_key:"content",ref:Q,class:"rating-block__details-content"},[((0,i.uX)(!0),(0,i.CE)(i.FK,null,(0,i.pI)(W.value,((e,s)=>((0,i.uX)(),(0,i.CE)("div",{key:s,class:"rating-block__details-row"},[(0,i.Lk)("i",{class:(0,r.C4)(["icon",e.icon]),"aria-hidden":"true"},null,2),(0,i.Lk)("span",C,(0,r.v_)(e.percent)+"% ",1),(0,i.Lk)("span",R,(0,r.v_)(e.type),1),(0,i.Lk)("div",L,(0,r.v_)(e.type)+" ratings: "+(0,r.v_)(e.percent)+"%",1)])))),128))],512)],12,E)],64)):((0,i.uX)(),(0,i.CE)("div",X,[(0,n.R1)(I)?((0,i.uX)(),(0,i.CE)("div",F,(0,r.v_)((0,n.R1)(d)("rating-loading-error")),1)):(0,i.Q3)("",!0),(0,n.R1)(M)?((0,i.uX)(),(0,i.CE)(i.FK,{key:1},[a[2]||(a[2]=(0,i.Lk)("div",{"aria-hidden":"true",class:"rating-block__dots"},[(0,i.Lk)("span"),(0,i.Lk)("span"),(0,i.Lk)("span")],-1)),(0,i.Lk)("span",null,(0,r.v_)((0,n.R1)(d)("rating-loading")),1)],64)):(0,i.Q3)("",!0)]))]))}}),M=x,I=M,Q={class:"reviews-feed-wrapper"},Y={class:"sr-only",role:"alert","aria-live":"polite"},K=["role","aria-busy"],N={key:1,class:"reviews-feed__warning reviews-feed__warning--error"},A={class:"reviews-feed__warning-heading"},D={key:2,class:"reviews-feed__warning"},O={class:"reviews-feed__warning-heading"},B={class:"reviews-feed__rating"},W={key:0,class:"reviews-feed__stars"},S={key:0,class:"icon icon-Star","aria-hidden":"true"},T={class:"sr-only"},$={key:1,class:"reviews-feed__name"},q={key:0,class:"reviews-feed__date"},H={key:1,class:"reviews-feed__text"},j=["onClick"],G={key:3,class:"reviews-feed__responses"},U={class:"sr-only",role:"alert","aria-live":"polite"},V={class:"sr-only",role:"alert","aria-live":"polite"},z={key:0,class:"reviews-feed__response-name"},J={key:1,class:"reviews-feed__response-date"},Z={key:2,class:"reviews-feed__response-text"},ee=(0,i.pM)({__name:"ReviewsFeed",props:{items:{default:()=>[]},toggleButtonFn:{type:Function,default:()=>()=>{}},isInitialLoading:{type:Boolean,default:!1},isError:{type:Boolean,default:!1},placeholdersNumber:{default:5}},emits:["focusable-item-changed","refetch"],setup(e,{emit:s}){const a=e,t=s,{t:d}=(0,o.s9)(),c=(0,i.rk)("reviewsFeed"),v=(0,n.KR)(null),p=(0,i.EW)((()=>a.isInitialLoading?d("reviews-loading"):a.isError?`${d("reviews-error-heading")} ${d("reviews-no-items-description")}`:a.items.length>0?d("reviews-loaded"):"")),g=(0,i.EW)((()=>a.items.length>0?"feed":"none")),_=()=>t("refetch"),k=()=>{if(c.value){const e=c.value.querySelectorAll("button");v.value=e.length?e[e.length-1]:null}else v.value=null;t("focusable-item-changed",v.value)};return(0,i.wB)((()=>a.items),(()=>(0,i.dY)((()=>k())))),(s,a)=>((0,i.uX)(),(0,i.CE)("div",Q,[(0,i.Lk)("div",Y,(0,r.v_)(p.value),1),(0,i.Lk)("div",{ref_key:"reviewsFeed",ref:c,class:"reviews-feed",role:g.value,"aria-busy":e.isInitialLoading},[e.isInitialLoading?((0,i.uX)(!0),(0,i.CE)(i.FK,{key:0},(0,i.pI)(e.placeholdersNumber,(e=>((0,i.uX)(),(0,i.CE)("div",{key:e,class:"reviews-feed__item","aria-hidden":"true"},[...a[0]||(a[0]=[(0,i.Fv)('<span class="reviews-feed__skeleton reviews-feed__skeleton--stars" aria-hidden="true"></span><span class="reviews-feed__skeleton reviews-feed__skeleton--date" aria-hidden="true"></span><span class="reviews-feed__skeleton"></span><span class="reviews-feed__skeleton"></span><span class="reviews-feed__skeleton"></span>',5)])])))),128)):e.isError?((0,i.uX)(),(0,i.CE)("div",N,[a[1]||(a[1]=(0,i.Lk)("i",{class:"icon icon-Alert-info-triangle","aria-hidden":"true"},null,-1)),(0,i.Lk)("div",A,(0,r.v_)((0,n.R1)(d)("reviews-error-heading")),1),(0,i.Lk)("span",null,(0,r.v_)((0,n.R1)(d)("reviews-error-description")),1),(0,i.Lk)("button",{class:"link",onClick:_},(0,r.v_)((0,n.R1)(d)("reviews-error-cta")),1)])):e.items.length?((0,i.uX)(!0),(0,i.CE)(i.FK,{key:3},(0,i.pI)(e.items,(s=>((0,i.uX)(),(0,i.CE)("article",{key:s.id,class:"reviews-feed__item"},[(0,i.Lk)("div",B,[s.rating?((0,i.uX)(),(0,i.CE)("div",W,[((0,i.uX)(!0),(0,i.CE)(i.FK,null,(0,i.pI)((0,n.R1)(u.Y)(s.rating),((e,s)=>((0,i.uX)(),(0,i.CE)("span",{key:s,class:(0,r.C4)(["reviews-feed__star",e])},[a[3]||(a[3]=(0,i.Lk)("i",{class:"icon icon-Star","aria-hidden":"true"},null,-1)),"half"===e?((0,i.uX)(),(0,i.CE)("i",S)):(0,i.Q3)("",!0)],2)))),128)),(0,i.Lk)("span",T,"Rating: "+(0,r.v_)(s.rating)+" stars",1)])):(0,i.Q3)("",!0),s.reviewer?.name?((0,i.uX)(),(0,i.CE)("div",$,(0,r.v_)(s.reviewer.name),1)):(0,i.Q3)("",!0)]),s.date?((0,i.uX)(),(0,i.CE)("div",q,(0,r.v_)((0,n.R1)(l())(s.date).format("D MMMM YYYY")),1)):(0,i.Q3)("",!0),s.comment?((0,i.uX)(),(0,i.CE)("p",H,(0,r.v_)(!s.isExpanded&&s.trimmedComment?s.trimmedComment:s.comment),1)):(0,i.Q3)("",!0),s.trimmedComment||s.hasResponses?((0,i.uX)(),(0,i.CE)("button",{key:2,class:"link reviews-feed__readmore",onClick:a=>e.toggleButtonFn(s,s.isExpanded)},(0,r.v_)(s.isExpanded?(0,n.R1)(d)("reviews-read-less"):(0,n.R1)(d)("reviews-read-more")),9,j)):(0,i.Q3)("",!0),s.isExpanded?((0,i.uX)(),(0,i.CE)("div",G,[s.responsesLoading?((0,i.uX)(),(0,i.CE)(i.FK,{key:0},[(0,i.Lk)("span",U,(0,r.v_)((0,n.R1)(d)("rating-response-loading")),1),a[4]||(a[4]=(0,i.Fv)('<div class="reviews-feed__response" aria-hidden="true"><span class="reviews-feed__skeleton reviews-feed__skeleton--stars" aria-hidden="true"></span><span class="reviews-feed__skeleton reviews-feed__skeleton--date" aria-hidden="true"></span><span class="reviews-feed__skeleton" aria-hidden="true"></span><span class="reviews-feed__skeleton" aria-hidden="true"></span></div>',1))],64)):s.responses?((0,i.uX)(),(0,i.CE)(i.FK,{key:1},[(0,i.Lk)("span",V,(0,r.v_)((0,n.R1)(d)("rating-response-loaded")),1),((0,i.uX)(!0),(0,i.CE)(i.FK,null,(0,i.pI)(s.responses,((e,s)=>((0,i.uX)(),(0,i.CE)("div",{key:s,class:"reviews-feed__response"},[e.name?((0,i.uX)(),(0,i.CE)("div",z,(0,r.v_)(e.name),1)):(0,i.Q3)("",!0),e.responseDate?((0,i.uX)(),(0,i.CE)("div",J,(0,r.v_)((0,n.R1)(l())(e.responseDate).format("D MMMM YYYY")),1)):(0,i.Q3)("",!0),e.comment?((0,i.uX)(),(0,i.CE)("p",Z,(0,r.v_)(e.comment),1)):(0,i.Q3)("",!0)])))),128))],64)):(0,i.Q3)("",!0)])):(0,i.Q3)("",!0)])))),128)):((0,i.uX)(),(0,i.CE)("div",D,[a[2]||(a[2]=(0,i.Lk)("i",{class:"icon icon-Face-neutral","aria-hidden":"true"},null,-1)),(0,i.Lk)("div",O,(0,r.v_)((0,n.R1)(d)("reviews-no-items-heading")),1),(0,i.Lk)("span",null,(0,r.v_)((0,n.R1)(d)("reviews-no-items-description")),1)]))],8,K)]))}}),se=ee,ae=se;var ie=a(34958);const re={class:"reviews-block__container"},ne={class:"reviews-block__reviews"},te={key:0,class:"reviews-block__btn"},le={key:0,class:"col-lg-9 offset-lg-3"},oe={class:"reviews-block__btn"},de=(0,i.pM)({__name:"ReviewsBlock",props:{venueId:{},limit:{default:5},from:{default:null},to:{default:null},isModal:{type:Boolean,default:!0}}
1,setup(e){const s=e,{t:a}=(0,o.s9)(),{trackButtonState:t}=(0,ie.k)(),u={id:"GOOGLE_PLACES",label:"google_places",dl_component:"google_widget"},v=(0,n.KR)({...u,reviews:[],reviewsOffset:0,allReviewsLoaded:!1}),p=(0,n.KR)(null),g=(0,i.EW)((()=>v.value.reviewsOffset)),_=(0,i.EW)((()=>!(!v.value.reviews.length||v.value.allReviewsLoaded))),k=(0,i.EW)((()=>{const e={venueId:s.venueId,sourceID:v.value.id,offset:g};return s.limit&&(e.limit=s.limit),s.from&&(e.from=l()(s.from).format("YYYY-MM-DD")),s.to&&(e.to=l()(s.to).format("YYYY-MM-DD")),e})),{data:f,isLoading:m,isFetching:h,isError:w,fetchNextPage:b,refetch:y}=(0,c.uo)(k.value),E=e=>{p.value=e},C=()=>{const e=p.value;b().then((()=>{e?.focus()})),M("load more reviews")},R=(e,s)=>{const a=v.value.reviews.map((a=>a.id!==e?a:{...a,...s}));v.value={...v.value,reviews:a}},L=async e=>{const s=await(0,c.Sx)(e.id);s?.length&&R(e.id,{responses:s,responsesLoading:!1})},X=(e,s)=>{const a=e.hasResponses&&!e.responses.length;R(e.id,{isExpanded:!s,responsesLoading:a}),!s&&a&&(L(e),M("load response"))},F=e=>e.reduce(((e,s)=>(e.some((e=>e.id===s.id))||e.push(s),e)),[]),P=e=>{const s=108;return e.map((e=>{const a=e.comment.length>s?e.comment.slice(0,s)+"...":null;return{...e,trimmedComment:a,responses:[],responsesLoading:!1,isExpanded:!(a||e.hasResponses)}}))},x=e=>{const s=e.value?.pages||[],a=s.reduce(((e,s)=>s.reviews?[...e,...s.reviews]:e),[])||[],i=F(a),r=P(i),n=r.filter((e=>!v.value.reviews.some((s=>s.id===e.id))));if(!n.length)return;const t=!s[s.length-1]?.paging?.next,l=[...v.value.reviews,...n];v.value={...v.value,reviews:l,reviewsOffset:l.length,allReviewsLoaded:t}},M=e=>{t(e,"view_third_party_reviews",{component:v.value.dl_component})};return(0,i.KC)((()=>{x(f)})),(0,i.wB)(f,(()=>x(f))),(s,t)=>((0,i.uX)(),(0,i.CE)(i.FK,null,[(0,i.Lk)("div",{class:(0,r.C4)(!e.isModal&&"col-lg-3")},[(0,i.bF)(I,{"venue-id":e.venueId,"source-id":v.value.id,label:v.value.label,onDetailsExpand:t[0]||(t[0]=e=>M("expand reviews summary"))},null,8,["venue-id","source-id","label"])],2),(0,i.Lk)("div",{class:(0,r.C4)(["reviews-block",e.isModal?"reviews-block--modal":"col-lg-9"])},[(0,i.Lk)("div",re,[(0,i.Lk)("div",ne,[(0,i.bF)(ae,{items:v.value.reviews,"toggle-button-fn":X,"is-initial-loading":(0,n.R1)(m),"is-error":(0,n.R1)(w),"placeholders-number":e.limit,onRefetch:(0,n.R1)(y),onFocusableItemChanged:E},null,8,["items","is-initial-loading","is-error","placeholders-number","onRefetch"]),_.value&&e.isModal?((0,i.uX)(),(0,i.CE)("div",te,[(0,i.bF)(d.A,{label:(0,n.R1)(a)("reviews-load-more"),"is-loading":(0,n.R1)(h),variant:"secondary",onClick:C},null,8,["label","is-loading"])])):(0,i.Q3)("",!0)])])],2),e.isModal?(0,i.Q3)("",!0):((0,i.uX)(),(0,i.CE)("div",le,[(0,i.Lk)("div",oe,[_.value?((0,i.uX)(),(0,i.Wv)(d.A,{key:0,label:(0,n.R1)(a)("reviews-load-more"),"is-loading":(0,n.R1)(h),variant:"secondary",onClick:C},null,8,["label","is-loading"])):(0,i.Q3)("",!0)])]))],64))}}),ue=de,ce=ue},48020:(e,s,a)=>{a.d(s,{q:()=>l});var i=a(1651),r=a(58959),n=class extends i.${constructor(e,s){super(e,s)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(e){super.setOptions({...e,behavior:(0,r.PL)()})}getOptimisticResult(e){return e.behavior=(0,r.PL)(),super.getOptimisticResult(e)}fetchNextPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"forward"}}})}fetchPreviousPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"backward"}}})}createResult(e,s){const{state:a}=e,i=super.createResult(e,s),{isFetching:n,isRefetching:t,isError:l,isRefetchError:o}=i,d=a.fetchMeta?.fetchMore?.direction,u=l&&"forward"===d,c=n&&"forward"===d,v=l&&"backward"===d,p=n&&"backward"===d,g={...i,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:(0,r.rB)(s,a.data),hasPreviousPage:(0,r.RQ)(s,a.data),isFetchNextPageError:u,isFetchingNextPage:c,isFetchPreviousPageError:v,isFetchingPreviousPage:p,isRefetchError:o&&!u&&!v,isRefetching:t&&!c&&!p};return g}},t=a(41642);function l(e,s){return(0,t.t)(n,e,s)}}}]);
2//# sourceMappingURL=7066.47399239.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.