import{d,o as i,c as o,e as a,ai as w,f as g,t,i as m,F as b,u as C,n as R,b as P}from"./vendors-vue-framework-CuaTXQR4-v01.js";import{a as v}from"./getyourguide-compass-B98GQnia-v01.js";import{R as z}from"./rating-star-2iMW49Ps-v01.js";import{n as s,i as y}from"./activity--y9arihz-v01.js";import"./vendors-osSClPPM-v01.js";import"./getyourguide-framework-C8ECdvZH-v01.js";import"./assets/index-tXrzUa8f.js";import"./commons-store-MgtTxzIZ-v01.js";import"./vendors-framework-StFOZgBK-v01.js";import"./vendors-sentry-DL-ZUUbF-v01.js";import"./recommendations-Bgfw-J-d-v01.js";import"./master-CvUwI96Z-v01.js";import"./recommendation-card-metadata-DbgsOU5c-v01.js";import"./text-atom.vue_vue_type_style_index_0_lang-Ck8Ft5gh-v01.js";import"./index-Dfok3R7H-v01.js";import"./track-visibility-v2-Dg_PLveW-v01.js";import"./vendors-swiper-XU6vwY4i-v01.js";import"./authentication-form-D3mgH_nG-v01.js";const A=d({name:"ProgressBar",props:{percentage:{type:Number,required:!0}}}),$={class:"progress-bar"};function S(e,r,l,p,u,_){return i(),o("div",$,[a("div",{style:w({width:`${e.percentage}%`}),class:"progress-bar__inner js-progress-bar-inner"},null,4)])}const O=v(A,[["render",S],["__scopeId","data-v-d582911f"]]),c=5,N=d({name:"ReviewsSummary",components:{ProgressBar:O,RatingStar:z},props:{averagePerCategory:{type:Object,required:!0},averageRating:{type:Number,required:!1},maxPossibleRating:{type:Number,required:!1,default:c},totalCount:{type:Number,required:!0},locale:{type:String,required:!1},ratingCategoryOrder:{type:Array,default:()=>[]},hasVerifiedExperiment:{type:Boolean,default:!1}},data(){return{categoryDisplayOrder:["guide","transportation","valueForMoney","safety","service","organization"]}},computed:{displayableOnly(){const e=this.normalizedAveragePerCategory();return this.categoryDisplayOrder.filter(r=>this.shouldDisplayCategory(r)).map(r=>e[r])},normalizedAverageRating(){return typeof this.averageRating>"u"?{localized:s(5,this.locale),floatPointNumber:y(5)}:{localized:s(this.averageRating,this.locale),floatPointNumber:y(this.averageRating)}},localizedMaxPossibleRating(){return s(this.maxPossibleRating,this.locale)}},methods:{shouldDisplayCategory(e){return(this.averagePerCategory?.[e]??0)>0&&(Array.isArray(this.ratingCategoryOrder)&&this.ratingCategoryOrder.includes(e))},getCategoryAverage(e,r){return typeof r>"u"&&(r=c),typeof e>"u"&&(e=r),e/r*100},normalizedAveragePerCategory(){return{guide:{type:"guide",label:this.$t("pReviewSummary guide review label"),localized:s(this.averagePerCategory?.guide??0,this.locale),categoryAverage:this.getCategoryAverage(this.averagePerCategory?.guide??0,this.maxPossibleRating)},safety:{type:"safety",label:this.$t("pReviewSummary safety review label"),localized:s(this.averagePerCategory?.safety??0,this.locale),categoryAverage:this.getCategoryAverage(this.averagePerCategory?.safety??0,this.maxPossibleRating)},service:{type:"service",label:this.$t("pReviewSummary service review label"),localized:s(this.averagePerCategory?.service??0,this.locale),categoryAverage:this.getCategoryAverage(this.averagePerCategory?.service??0,this.maxPossibleRating)},organization:{type:"organization",label:this.$t("pReviewSummary organization review label"),localized:s(this.averagePerCategory?.organization??0,this.locale),categoryAverage:this.getCategoryAverage(this.averagePerCategory?.organization??0,this.maxPossibleRating)},valueForMoney:{type:"valueForMoney",label:this.$t("pReviewSummary value for money review label"),localized:s(this.averagePerCategory?.valueForMoney??0,this.locale),categoryAverage:this.getCategoryAverage(this.averagePerCategory?.valueForMoney??0,this.maxPossibleRating)},transportation:{type:"transportation",label:this.$t("pReviewSummary transportation review label"),localized:s(this.averagePerCategory?.transportation??0,this.locale),categoryAverage:this.getCategoryAverage(this.averagePerCategory?.transportation??0,this.maxPossibleRating)}}}}}),M={class:"reviews-summary","data-test-id":"activity-review-summary"},B={class:"reviews-summary__container"},F={class:"reviews-summary__rating"},V={class:"reviews-summary__title"},j={class:"reviews-summary__rating--content"},k={class:"reviews-summary__rating__container"},q={class:"reviews-summary__rating-average js-rating-average"},D={class:"reviews-summary__rating-average--rating"},E={class:"reviews-summary__rating-average--max-rating"},I={key:0,class:"reviews-summary__rating-description js-rating-description"},Z={key:1,class:"reviews-summary__rating-description js-rating-description"},x={key:0,class:"reviews-summary__categories"},L={class:"reviews-summary__title"},T={class:"reviews-summary__categories-items reviews-summary__categories--content"},G={class:"reviews-summary__category-label"},H={class:"reviews-summary__category-rating__container"},J={class:"reviews-summary__category-average"};function K(e,r,l,p,u,_){const h=g("RatingStar"),f=g("ProgressBar");return i(),o("section",M,[a("div",B,[a("div",F,[a("h3",V,t(e.$t("pReviewSummary overall rating")),1),a("div",j,[a("span",k,[a("span",q,[a("span",D,t(e.normalizedAverageRating.localized),1),a("span",E," /"+t(e.localizedMaxPossibleRating),1)]),m(h,{"total-rating":e.normalizedAverageRating.floatPointNumber,class:"reviews-summary__rating-stars"},null,8,["total-rating"])]),e.hasVerifiedExperiment?(i(),o("p",I,t(e.$t("pReviews %1=numReviews",[e.totalCount])),1)):(i(),o("p",Z,t(e.$t("pReviewSummary based on number of reviews",[e.totalCount])),1))])]),e.displayableOnly.length?(i(),o("div",x,[a("h3",L,t(e.$t("pReviewSummary review category summary")),1),a("ul",T,[(i(!0),o(b,null,C(e.displayableOnly,n=>(i(),o("li",{key:n.type,class:R(`reviews-summary__category js-category-rating--${n.type}`)},[a("span",G,t(n.label),1),a("span",H,[m(f,{class:"reviews-summary__category-rating",percentage:e.getCategoryAverage(e.averagePerCategory[n.type],e.maxPossibleRating)},null,8,["percentage"]),a("span",J,t(n.localized)+"/"+t(e.localizedMaxPossibleRating),1)])],2))),128))])])):P("",!0)])])}const de=v(N,[["render",K]]);export{de as default};
//# sourceMappingURL=reviews-summary-D80V8eGD-v01.js.map
