@ecomplus/widget-martan 1.2.0 → 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/public/widget-martan.1.min.js +1 -1
  3. package/dist/public/widget-martan.1.min.js.map +1 -1
  4. package/dist/public/widget-martan.2.min.js +1 -1
  5. package/dist/public/widget-martan.2.min.js.map +1 -1
  6. package/dist/public/widget-martan.3.min.js +1 -1
  7. package/dist/public/widget-martan.3.min.js.map +1 -1
  8. package/dist/public/widget-martan.4.min.js +1 -1
  9. package/dist/public/widget-martan.4.min.js.map +1 -1
  10. package/dist/public/widget-martan.5.min.js +1 -1
  11. package/dist/public/widget-martan.5.min.js.map +1 -1
  12. package/dist/public/widget-martan.6.min.js +1 -1
  13. package/dist/public/widget-martan.6.min.js.map +1 -1
  14. package/dist/public/widget-martan.7.min.js +1 -1
  15. package/dist/public/widget-martan.7.min.js.map +1 -1
  16. package/dist/public/widget-martan.8.min.js +1 -1
  17. package/dist/public/widget-martan.8.min.js.map +1 -1
  18. package/dist/public/widget-martan.var.min.js +2 -2
  19. package/dist/public/widget-martan.var.min.js.map +1 -1
  20. package/dist/widget-martan.1.min.js +1 -1
  21. package/dist/widget-martan.1.min.js.map +1 -1
  22. package/dist/widget-martan.2.min.js +1 -1
  23. package/dist/widget-martan.2.min.js.map +1 -1
  24. package/dist/widget-martan.3.min.js +1 -1
  25. package/dist/widget-martan.3.min.js.map +1 -1
  26. package/dist/widget-martan.4.min.js +1 -1
  27. package/dist/widget-martan.4.min.js.map +1 -1
  28. package/dist/widget-martan.5.min.js +1 -1
  29. package/dist/widget-martan.5.min.js.map +1 -1
  30. package/dist/widget-martan.6.min.js +1 -1
  31. package/dist/widget-martan.6.min.js.map +1 -1
  32. package/dist/widget-martan.7.min.js +1 -1
  33. package/dist/widget-martan.7.min.js.map +1 -1
  34. package/dist/widget-martan.8.min.js +1 -1
  35. package/dist/widget-martan.8.min.js.map +1 -1
  36. package/dist/widget-martan.min.js +3 -3
  37. package/dist/widget-martan.min.js.map +1 -1
  38. package/package.json +2 -2
  39. package/src/widgets/reviews/components/VerifiedPurchase.vue +1 -1
  40. package/dist/public/widget-martan.0.min.js +0 -62
  41. package/dist/public/widget-martan.0.min.js.map +0 -1
  42. package/dist/public/widget-martan.9.min.js +0 -2
  43. package/dist/public/widget-martan.9.min.js.map +0 -1
  44. package/dist/widget-martan.0.min.js +0 -62
  45. package/dist/widget-martan.0.min.js.map +0 -1
  46. package/dist/widget-martan.9.min.js +0 -2
  47. package/dist/widget-martan.9.min.js.map +0 -1
@@ -1,2 +1,2 @@
1
- (window.webpackJsonpwidgetMartan=window.webpackJsonpwidgetMartan||[]).push([[6],{106:function(t,a,r){"use strict";r.r(a);var e=r(31),i=r(43),n=r(4),o={name:"Summary",components:{Rating:e.a,RatingBreakdown:i.a},props:{...n.a,rating:{type:Object,default:()=>({five:0,four:0,three:0,two:0,one:0})},recommended:{type:Number,default:0},average:{type:Number,default:0},totalRating:{type:Number,default:0}},data:()=>({currentActive:null}),computed:{ratingBreakdown(){return{5:this.rating.five,4:this.rating.four,3:this.rating.three,2:this.rating.two,1:this.rating.one}},formatReviewsCount(){return this.totalRating>=1e3?(this.totalRating/1e3).toFixed(1).replace(".0","")+"k":this.totalRating.toLocaleString()}},methods:{getBarWidth(t){return 0===this.totalRating?0:t/this.totalRating*100},onRatingSelected(t){this.currentActive=t,this.$emit("rating-selected",t)}}},s=(r(90),r(3)),l=Object(s.a)(o,(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("div",{staticClass:"mrtn-header--summary"},[r("RatingBreakdown",{attrs:{config:t.config,rating:t.rating,"total-rating":t.totalRating,"current-active":t.currentActive},on:{"rating-selected":t.onRatingSelected}}),r("div",{staticClass:"mrtn-summary-container"},[r("div",{staticClass:"mrtn-summary-title"},[r("div",{staticClass:"mrtn-total-responses"},[t._v(t._s(t.formatReviewsCount)+" "+t._s(this.totalRating>1?"Avaliações":"Avaliação"))]),t.recommended>0?r("div",{staticClass:"mrtn-recommendation"},[t._v(" "+t._s(Math.round(t.recommended))+"% dos clientes recomendam esse produto ")]):t._e()]),r("div",{staticClass:"mrtn-average-section"},[r("div",{staticClass:"mrtn-average-display"},[r("div",{staticClass:"mrtn-stars-container"},[r("Rating",{attrs:{rating:t.average,color:t.config.widget_review.star_color}})],1),r("div",{staticClass:"mrtn-average-badge",style:{backgroundColor:t.config.widget_review.star_color}},[t._v(" "+t._s(t.average.toFixed(1))+" / 5 ")])])])])],1)}),[],!1,null,"a03cf414",null);a.default=l.exports},30:function(t,a,r){var e=r(35);e.__esModule&&(e=e.default),"string"==typeof e&&(e=[[t.i,e,""]]),e.locals&&(t.exports=e.locals);(0,r(9).default)("5a552598",e,!0,{})},31:function(t,a,r){"use strict";var e={name:"Rating",props:{rating:{type:Number,default:5},color:{type:String,default:"#000000"}},data:()=>({stars:Array(5).fill(0)}),mounted(){this.updateStars()},methods:{updateStars(){const t=Math.max(0,Math.min(5,this.rating));this.stars=Array(5).fill(0).map((a,r)=>t>=r+1?1:t>r?.5:0)},getStarClass:t=>1===t?"icon-tabler-star-filled":.5===t?"icon-tabler-star-half":"icon-tabler-star",getStarFill:(t,a)=>1===t?"currentColor":.5===t?`url(#gradient-${a})`:"none"},watch:{rating:"updateStars"}},i=(r(34),r(3)),n=Object(i.a)(e,(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("span",{staticClass:"martan-rating"},t._l(t.stars,(function(a,e){return r("svg",{key:e,staticClass:"icon icon-tabler",class:t.getStarClass(a),style:{color:t.color},attrs:{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"}},[.5===a?r("defs",[r("linearGradient",{attrs:{id:"gradient-"+e,x1:"0%",y1:"0%",x2:"100%",y2:"0%"}},[r("stop",{style:"stop-color:"+t.color+";stop-opacity:1",attrs:{offset:"50%"}}),r("stop",{style:"stop-color:"+t.color+";stop-opacity:0",attrs:{offset:"50%"}})],1)],1):t._e(),r("path",{attrs:{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}}),r("path",{attrs:{d:"M8.243 7.34l-6.38 .925l-.113 .023a1 1 0 0 0 -.44 1.684l4.622 4.499l-1.09 6.355l-.013 .11a1 1 0 0 0 1.464 .944l5.706 -3l5.693 3l.1 .046a1 1 0 0 0 1.352 -1.1l-1.091 -6.355l4.624 -4.5l.078 -.085a1 1 0 0 0 -.633 -1.62l-6.38 -.926l-2.852 -5.78a1 1 0 0 0 -1.794 0l-2.853 5.78z",fill:t.getStarFill(a,e)}})])})),0)}),[],!1,null,null,null);a.a=n.exports},33:function(t,a,r){var e=r(41);e.__esModule&&(e=e.default),"string"==typeof e&&(e=[[t.i,e,""]]),e.locals&&(t.exports=e.locals);(0,r(9).default)("8c4908ae",e,!0,{})},34:function(t,a,r){"use strict";r(30)},35:function(t,a,r){(a=r(8)(!1)).push([t.i,".martan-rating{display:flex;gap:4px}",""]),t.exports=a},40:function(t,a,r){"use strict";r(33)},41:function(t,a,r){(a=r(8)(!1)).push([t.i,".mrtn-rating-breakdown[data-v-121d360c]{display:flex;flex-direction:column;width:100%}.mrtn-rating-row[data-v-121d360c]{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:12px;padding:8px;position:relative;transition:all .2s ease}.mrtn-rating-row--active[data-v-121d360c],.mrtn-rating-row[data-v-121d360c]:hover{background:var(--hover-color)}.mrtn-rating-row--active[data-v-121d360c]{box-shadow:0 0 0 2px var(--hover-color);transform:scale(1.02);z-index:10}.mrtn-rating-breakdown--has-active .mrtn-rating-row[data-v-121d360c]:not(.mrtn-rating-row--active){filter:grayscale(.8);opacity:.4}.mrtn-rating-stars[data-v-121d360c]{display:flex;gap:2px;min-width:80px}.mrtn-rating-star[data-v-121d360c]{color:#e5e5e5;font-size:14px}.mrtn-rating-star--filled[data-v-121d360c]{color:#000}.mrtn-rating-bar[data-v-121d360c]{background:#f0f0f0;border-radius:4px;flex:1;height:8px;overflow:hidden;position:relative;transition:all .2s ease}.mrtn-rating-bar__fill[data-v-121d360c]{border-radius:4px;height:100%;transition:width .3s ease}.mrtn-rating-count[data-v-121d360c]{color:#666;font-size:12px;min-width:40px;text-align:right}",""]),t.exports=a},43:function(t,a,r){"use strict";var e=r(4),i=r(31),n=r(10),o={name:"RatingBreakdown",props:{...e.a,rating:{type:Object,default:()=>({five:0,four:0,three:0,two:0,one:0})},totalRating:{type:Number,default:0},average:{type:Number,default:0}},data:()=>({currentActive:null}),computed:{ratingBreakdown(){return{5:this.rating.five,4:this.rating.four,3:this.rating.three,2:this.rating.two,1:this.rating.one}},houverColor(){return this.config.widget_review.star_color?Object(n.a)(this.config.widget_review.star_color,.9):null}},methods:{lightenColor:n.a,getBarWidth(t){return 0===this.totalRating?0:t/this.totalRating*100},selectRating(t){this.currentActive===t?this.currentActive=null:this.currentActive=t,this.$emit("rating-selected",this.currentActive)}},components:{Rating:i.a}},s=(r(40),r(3)),l=Object(s.a)(o,(function(){var t=this,a=t.$createElement,r=t._self._c||a;return r("div",{staticClass:"mrtn-rating-breakdown",class:{"mrtn-rating-breakdown--has-active":null!==t.currentActive},style:"--hover-color: "+t.houverColor},t._l(t.ratingBreakdown,(function(a,e){return r("div",{key:e,staticClass:"mrtn-rating-row",class:{"mrtn-rating-row--active":t.currentActive===e},on:{click:function(a){return t.selectRating(e)}}},[r("div",{staticClass:"mrtn-rating-stars"},[r("Rating",{attrs:{rating:parseInt(e),color:t.config.widget_review.star_color}})],1),r("div",{staticClass:"mrtn-rating-bar"},[r("div",{staticClass:"mrtn-rating-bar__fill",style:{width:t.getBarWidth(a)+"%",backgroundColor:t.config.widget_review.star_color}})]),r("span",{staticClass:"mrtn-rating-count"},[t._v("("+t._s(a)+")")])])})),0)}),[],!1,null,"121d360c",null);a.a=l.exports},70:function(t,a,r){var e=r(91);e.__esModule&&(e=e.default),"string"==typeof e&&(e=[[t.i,e,""]]),e.locals&&(t.exports=e.locals);(0,r(9).default)("1bbb3a2b",e,!0,{})},90:function(t,a,r){"use strict";r(70)},91:function(t,a,r){(a=r(8)(!1)).push([t.i,".mrtn-summary-container[data-v-a03cf414]{align-items:center;display:flex;justify-content:space-between;margin-top:1rem}.mrtn-summary-title[data-v-a03cf414]{margin-bottom:20px}.mrtn-summary-title .mrtn-title[data-v-a03cf414]{color:#000;font-size:24px;font-weight:700;margin:0 0 8px}.mrtn-summary-title .mrtn-total-responses[data-v-a03cf414]{color:#333;font-size:20px;font-weight:300}.mrtn-recommendation[data-v-a03cf414]{color:#666;font-size:16px;font-weight:100}@media(max-width:580px){.mrtn-recommendation[data-v-a03cf414]{font-size:12px}}.mrtn-average-section[data-v-a03cf414]{display:flex;justify-content:center;margin-bottom:16px}.mrtn-average-display[data-v-a03cf414]{gap:12px}.mrtn-average-display[data-v-a03cf414],.mrtn-stars-container[data-v-a03cf414]{align-items:center;display:flex}@media(max-width:580px){.mrtn-stars-container[data-v-a03cf414]{display:none}}.mrtn-average-badge[data-v-a03cf414]{background:#ff6b35;border-radius:20px;color:#fff;font-size:14px;font-weight:600;padding:8px 16px}.mrtn-rating-breakdown[data-v-a03cf414]{display:flex;flex-direction:column;gap:8px}.mrtn-rating-row[data-v-a03cf414]{align-items:center;display:flex;gap:12px;padding:4px 0}.mrtn-rating-label[data-v-a03cf414]{color:#666;font-size:12px;min-width:70px;text-align:left}.mrtn-rating-bar[data-v-a03cf414]{background:#f0f0f0;border-radius:6px;flex:1;height:12px;overflow:hidden;position:relative}.mrtn-rating-bar__fill[data-v-a03cf414]{border-radius:6px;height:100%;transition:width .3s ease}.mrtn-rating-count[data-v-a03cf414]{color:#666;font-size:12px;font-weight:500;min-width:40px;text-align:right}",""]),t.exports=a}}]);
1
+ (window.webpackJsonpwidgetMartan=window.webpackJsonpwidgetMartan||[]).push([[6],{29:function(t,a,e){var r=e(33);r.__esModule&&(r=r.default),"string"==typeof r&&(r=[[t.i,r,""]]),r.locals&&(t.exports=r.locals);(0,e(9).default)("5a552598",r,!0,{})},30:function(t,a,e){"use strict";var r={name:"Rating",props:{rating:{type:Number,default:5},color:{type:String,default:"#000000"}},data:()=>({stars:Array(5).fill(0)}),mounted(){this.updateStars()},methods:{updateStars(){const t=Math.max(0,Math.min(5,this.rating));this.stars=Array(5).fill(0).map((a,e)=>t>=e+1?1:t>e?.5:0)},getStarClass:t=>1===t?"icon-tabler-star-filled":.5===t?"icon-tabler-star-half":"icon-tabler-star",getStarFill:(t,a)=>1===t?"currentColor":.5===t?`url(#gradient-${a})`:"none"},watch:{rating:"updateStars"}},i=(e(32),e(3)),n=Object(i.a)(r,(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("span",{staticClass:"martan-rating"},t._l(t.stars,(function(a,r){return e("svg",{key:r,staticClass:"icon icon-tabler",class:t.getStarClass(a),style:{color:t.color},attrs:{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"}},[.5===a?e("defs",[e("linearGradient",{attrs:{id:"gradient-"+r,x1:"0%",y1:"0%",x2:"100%",y2:"0%"}},[e("stop",{style:"stop-color:"+t.color+";stop-opacity:1",attrs:{offset:"50%"}}),e("stop",{style:"stop-color:"+t.color+";stop-opacity:0",attrs:{offset:"50%"}})],1)],1):t._e(),e("path",{attrs:{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}}),e("path",{attrs:{d:"M8.243 7.34l-6.38 .925l-.113 .023a1 1 0 0 0 -.44 1.684l4.622 4.499l-1.09 6.355l-.013 .11a1 1 0 0 0 1.464 .944l5.706 -3l5.693 3l.1 .046a1 1 0 0 0 1.352 -1.1l-1.091 -6.355l4.624 -4.5l.078 -.085a1 1 0 0 0 -.633 -1.62l-6.38 -.926l-2.852 -5.78a1 1 0 0 0 -1.794 0l-2.853 5.78z",fill:t.getStarFill(a,r)}})])})),0)}),[],!1,null,null,null);a.a=n.exports},32:function(t,a,e){"use strict";e(29)},33:function(t,a,e){(a=e(8)(!1)).push([t.i,".martan-rating{display:flex;gap:4px}",""]),t.exports=a},61:function(t,a,e){var r=e(85);r.__esModule&&(r=r.default),"string"==typeof r&&(r=[[t.i,r,""]]),r.locals&&(t.exports=r.locals);(0,e(9).default)("76bee262",r,!0,{})},62:function(t,a,e){var r=e(87);r.__esModule&&(r=r.default),"string"==typeof r&&(r=[[t.i,r,""]]),r.locals&&(t.exports=r.locals);(0,e(9).default)("7a1c0b6e",r,!0,{})},84:function(t,a,e){"use strict";e(61)},85:function(t,a,e){(a=e(8)(!1)).push([t.i,".mrtn-rating-histogram[data-v-d35f3a0e]{color:#333;display:flex;flex-direction:column;position:relative;width:100%}.mrtn-histogram-title[data-v-d35f3a0e]{color:#666;font-size:14px;font-weight:600;letter-spacing:.5px;margin-bottom:16px;text-transform:uppercase}.mrtn-histogram-container[data-v-d35f3a0e]{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.mrtn-histogram-bars[data-v-d35f3a0e]{gap:8px;height:120px;justify-content:space-between}.mrtn-histogram-bar[data-v-d35f3a0e],.mrtn-histogram-bars[data-v-d35f3a0e]{align-items:end;display:flex;position:relative}.mrtn-histogram-bar[data-v-d35f3a0e]{background:#f0f0f0;border-radius:4px 4px 0 0;cursor:pointer;flex:1;height:100%;min-height:8px;transition:all .3s ease}.mrtn-histogram-bar[data-v-d35f3a0e]:hover{transform:scaleY(1.05)}.mrtn-histogram-bar--active[data-v-d35f3a0e]{box-shadow:0 0 0 3px var(--hover-color);transform:scaleY(1.1);z-index:10}.mrtn-histogram-bars--has-active .mrtn-histogram-bar[data-v-d35f3a0e]:not(.mrtn-histogram-bar--active){filter:grayscale(.8);opacity:.4}.mrtn-histogram-bar__fill[data-v-d35f3a0e]{border-radius:4px 4px 0 0;min-height:8px;transition:all .3s ease;width:100%}.mrtn-histogram-labels[data-v-d35f3a0e]{display:flex;justify-content:space-between;padding:0 4px}.mrtn-histogram-label[data-v-d35f3a0e]{color:#666;flex:1;font-size:12px;font-weight:500;text-align:center}.mrtn-histogram-tooltip[data-v-d35f3a0e]{background:#333;border-radius:6px;box-shadow:0 4px 12px rgba(0,0,0,.3);color:#fff;min-width:120px;padding:12px;pointer-events:none;position:absolute;transform:translateX(-50%) translateY(-100%);white-space:nowrap;z-index:1000}.mrtn-tooltip-content[data-v-d35f3a0e]{align-items:center;display:flex;flex-direction:column;gap:4px}.mrtn-tooltip-stars[data-v-d35f3a0e]{display:flex;gap:2px}.mrtn-tooltip-text[data-v-d35f3a0e]{color:#fff;font-size:11px;text-align:center;white-space:nowrap}.mrtn-tooltip-arrow[data-v-d35f3a0e]{border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #333;height:0;left:50%;position:absolute;top:100%;transform:translateX(-50%);width:0}.mrtn-histogram-average[data-v-d35f3a0e]{align-items:center;display:flex;justify-content:flex-end}.mrtn-average-number[data-v-d35f3a0e]{color:#333;font-size:24px;font-weight:700;line-height:1}@media(max-width:768px){.mrtn-histogram-bars[data-v-d35f3a0e]{height:100px}.mrtn-average-number[data-v-d35f3a0e]{font-size:20px}}",""]),t.exports=a},86:function(t,a,e){"use strict";e(62)},87:function(t,a,e){(a=e(8)(!1)).push([t.i,".mrtn-header--histogram[data-v-80f10b92]{background-color:#f3f3f3;border-radius:8px;margin-bottom:1rem;padding:8px 16px;width:100%}.mrtn-summary-container[data-v-80f10b92]{align-items:center;display:flex;justify-content:space-between;margin-top:1rem}.mrtn-summary-title[data-v-80f10b92]{margin-bottom:20px}.mrtn-summary-title .mrtn-title[data-v-80f10b92]{color:#000;font-size:24px;font-weight:700;margin:0 0 8px}.mrtn-summary-title .mrtn-total-responses[data-v-80f10b92]{color:#333;font-size:20px;font-weight:300}.mrtn-recommendation[data-v-80f10b92]{color:#666;font-size:16px;font-weight:100}@media(max-width:580px){.mrtn-recommendation[data-v-80f10b92]{font-size:12px}}.mrtn-average-section[data-v-80f10b92]{display:flex;justify-content:center;margin-bottom:16px}.mrtn-average-display[data-v-80f10b92]{gap:12px}.mrtn-average-display[data-v-80f10b92],.mrtn-stars-container[data-v-80f10b92]{align-items:center;display:flex}@media(max-width:580px){.mrtn-stars-container[data-v-80f10b92]{display:none}}.mrtn-average-badge[data-v-80f10b92]{background:#ff6b35;border-radius:20px;color:#fff;font-size:14px;font-weight:600;padding:8px 16px}.mrtn-rating-breakdown[data-v-80f10b92]{display:flex;flex-direction:column;gap:8px}.mrtn-rating-row[data-v-80f10b92]{align-items:center;display:flex;gap:12px;padding:4px 0}.mrtn-rating-label[data-v-80f10b92]{color:#666;font-size:12px;min-width:70px;text-align:left}.mrtn-rating-bar[data-v-80f10b92]{background:#f0f0f0;border-radius:6px;flex:1;height:12px;overflow:hidden;position:relative}.mrtn-rating-bar__fill[data-v-80f10b92]{border-radius:6px;height:100%;transition:width .3s ease}.mrtn-rating-count[data-v-80f10b92]{color:#666;font-size:12px;font-weight:500;min-width:40px;text-align:right}",""]),t.exports=a},92:function(t,a,e){"use strict";e.r(a);var r=e(30),i=e(4),n=e(10),o={name:"RatingHistogram",props:{...i.a,rating:{type:Object,default:()=>({five:0,four:0,three:0,two:0,one:0})},totalRating:{type:Number,default:0},average:{type:Number,default:0}},data:()=>({currentActive:null,tooltip:{visible:!1,stars:0,count:0,percentage:0,x:0,y:0}}),computed:{ratingBreakdown(){return{1:this.rating.one,2:this.rating.two,3:this.rating.three,4:this.rating.four,5:this.rating.five}},hoverColor(){return this.config.widget_review.star_color?Object(n.a)(this.config.widget_review.star_color,.9):"#4CAF50"},tooltipStyle(){return{left:this.tooltip.x+"px",top:this.tooltip.y+"px"}}},methods:{lightenColor:n.a,getBarHeight(t){if(0===this.totalRating)return 0;const a=Math.max(...Object.values(this.ratingBreakdown));return 0===a?0:t/a*100},selectRating(t){this.currentActive===t?this.currentActive=null:this.currentActive=t,this.$emit("rating-selected",t)},showTooltip(t,a,e){const r=this.totalRating>0?Math.round(a/this.totalRating*100):0,i=e.target.getBoundingClientRect(),n=this.$el.getBoundingClientRect();this.tooltip={visible:!0,stars:parseInt(t),count:a,percentage:r,x:i.left-n.left+i.width/2,y:i.top-n.top-5-5}},hideTooltip(){this.tooltip.visible=!1}},components:{Rating:r.a}},s=(e(84),e(3)),l=Object(s.a)(o,(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"mrtn-rating-histogram",style:"--hover-color: "+t.hoverColor},[e("div",{staticClass:"mrtn-histogram-container"},[e("div",{staticClass:"mrtn-histogram-bars",class:{"mrtn-histogram-bars--has-active":null!==t.currentActive}},t._l(t.ratingBreakdown,(function(a,r){return e("div",{key:r,staticClass:"mrtn-histogram-bar",class:{"mrtn-histogram-bar--active":t.currentActive===r},style:{height:t.getBarHeight(a)+"%",backgroundColor:a>0?t.config.widget_review.star_color:"#f0f0f0"},on:{click:function(a){return t.selectRating(r)},mouseenter:function(e){return t.showTooltip(r,a,e)},mouseleave:t.hideTooltip}},[e("div",{staticClass:"mrtn-histogram-bar__fill"})])})),0),e("div",{staticClass:"mrtn-histogram-labels"},t._l([1,2,3,4,5],(function(a){return e("div",{key:a,staticClass:"mrtn-histogram-label"},[t._v(" "+t._s(a)+" ")])})),0)]),t.tooltip.visible?e("div",{staticClass:"mrtn-histogram-tooltip",style:t.tooltipStyle},[e("div",{staticClass:"mrtn-tooltip-content"},[e("div",{staticClass:"mrtn-tooltip-stars"},[e("Rating",{attrs:{rating:t.tooltip.stars,color:t.config.widget_review.star_color}})],1),e("div",{staticClass:"mrtn-tooltip-text"},[t._v(" "+t._s(t.tooltip.count)+" avaliações ("+t._s(t.tooltip.percentage)+"%) ")])]),e("div",{staticClass:"mrtn-tooltip-arrow"})]):t._e()])}),[],!1,null,"d35f3a0e",null).exports,d={name:"Histogram",components:{Rating:r.a,RatingHistogram:l},props:{...i.a,rating:{type:Object,default:()=>({five:0,four:0,three:0,two:0,one:0})},recommended:{type:Number,default:0},average:{type:Number,default:0},totalRating:{type:Number,default:0}},data:()=>({}),computed:{ratingBreakdown(){return{5:this.rating.five,4:this.rating.four,3:this.rating.three,2:this.rating.two,1:this.rating.one}},formatReviewsCount(){return this.totalRating>=1e3?(this.totalRating/1e3).toFixed(1).replace(".0","")+"k":this.totalRating.toLocaleString()}},methods:{getBarWidth(t){return 0===this.totalRating?0:t/this.totalRating*100},onRatingSelected(t){this.currentActive=t,this.$emit("rating-selected",t)}}},c=(e(86),Object(s.a)(d,(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"mrtn-header--histogram"},[e("div",{staticClass:"mrtn-summary-container"},[e("div",{staticClass:"mrtn-summary-title"},[e("div",{staticClass:"mrtn-total-responses"},[t._v(t._s(t.formatReviewsCount)+" Avaliações")]),t.recommended>0?e("div",{staticClass:"mrtn-recommendation"},[t._v(" "+t._s(Math.round(t.recommended))+"% dos clientes recomendam esse produto ")]):t._e()]),e("div",{staticClass:"mrtn-average-section"},[e("div",{staticClass:"mrtn-average-display"},[e("div",{staticClass:"mrtn-stars-container"},[e("Rating",{attrs:{rating:t.average,color:t.config.widget_review.star_color}})],1),e("div",{staticClass:"mrtn-average-badge",style:{backgroundColor:t.config.widget_review.star_color}},[t._v(" "+t._s(t.average.toFixed(1))+" / 5 ")])])])]),e("RatingHistogram",{attrs:{config:t.config,rating:t.rating,"total-rating":t.totalRating,average:t.average},on:{"rating-selected":t.onRatingSelected}})],1)}),[],!1,null,"80f10b92",null));a.default=c.exports}}]);
2
2
  //# sourceMappingURL=widget-martan.6.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack://widgetMartan/./src/widgets/reviews/headers/Summary.vue?49d1","webpack://widgetMartan/./src/widgets/reviews/headers/Summary.vue?4791","webpack://widgetMartan/src/widgets/reviews/headers/Summary.vue","webpack://widgetMartan/./src/widgets/reviews/headers/Summary.vue","webpack://widgetMartan/./src/widgets/reviews/components/Rating.vue?a507","webpack://widgetMartan/./src/widgets/reviews/components/Rating.vue?cca9","webpack://widgetMartan/./src/widgets/reviews/components/Rating.vue?34e3","webpack://widgetMartan/src/widgets/reviews/components/Rating.vue","webpack://widgetMartan/./src/widgets/reviews/components/Rating.vue","webpack://widgetMartan/./src/widgets/reviews/components/RatingBreakdown.vue?98ff","webpack://widgetMartan/./src/widgets/reviews/components/Rating.vue?6f6d","webpack://widgetMartan/./src/widgets/reviews/components/Rating.vue?4189","webpack://widgetMartan/./src/widgets/reviews/components/RatingBreakdown.vue?eff2","webpack://widgetMartan/./src/widgets/reviews/components/RatingBreakdown.vue?4ab9","webpack://widgetMartan/./src/widgets/reviews/components/RatingBreakdown.vue?d63f","webpack://widgetMartan/./src/widgets/reviews/components/RatingBreakdown.vue?03ac","webpack://widgetMartan/src/widgets/reviews/components/RatingBreakdown.vue","webpack://widgetMartan/./src/widgets/reviews/components/RatingBreakdown.vue","webpack://widgetMartan/./src/widgets/reviews/headers/Summary.vue?3748","webpack://widgetMartan/./src/widgets/reviews/headers/Summary.vue?0a7d","webpack://widgetMartan/./src/widgets/reviews/headers/Summary.vue?9954"],"names":["name","components","Rating","RatingBreakdown","props","configProp","rating","type","Object","default","five","four","three","two","one","recommended","Number","average","totalRating","data","currentActive","computed","ratingBreakdown","formatReviewsCount","toFixed","replace","toLocaleString","methods","getBarWidth","count","onRatingSelected","$emit","component","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","config","on","_v","_s","Math","round","_e","widget_review","star_color","style","backgroundColor","content","__esModule","module","i","locals","exports","add","color","String","stars","Array","fill","mounted","updateStars","max","min","map","_","index","getStarClass","star","getStarFill","watch","_l","key","class","___CSS_LOADER_API_IMPORT___","push","houverColor","lightenColor","selectRating","$event","parseInt","width"],"mappings":"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","file":"widget-martan.6.min.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mrtn-header--summary\"},[_c('RatingBreakdown',{attrs:{\"config\":_vm.config,\"rating\":_vm.rating,\"total-rating\":_vm.totalRating,\"current-active\":_vm.currentActive},on:{\"rating-selected\":_vm.onRatingSelected}}),_c('div',{staticClass:\"mrtn-summary-container\"},[_c('div',{staticClass:\"mrtn-summary-title\"},[_c('div',{staticClass:\"mrtn-total-responses\"},[_vm._v(_vm._s(_vm.formatReviewsCount)+\" \"+_vm._s(this.totalRating > 1 ? 'Avaliações' : 'Avaliação'))]),(_vm.recommended > 0)?_c('div',{staticClass:\"mrtn-recommendation\"},[_vm._v(\" \"+_vm._s(Math.round(_vm.recommended))+\"% dos clientes recomendam esse produto \")]):_vm._e()]),_c('div',{staticClass:\"mrtn-average-section\"},[_c('div',{staticClass:\"mrtn-average-display\"},[_c('div',{staticClass:\"mrtn-stars-container\"},[_c('Rating',{attrs:{\"rating\":_vm.average,\"color\":_vm.config.widget_review.star_color}})],1),_c('div',{staticClass:\"mrtn-average-badge\",style:({ backgroundColor: _vm.config.widget_review.star_color })},[_vm._v(\" \"+_vm._s(_vm.average.toFixed(1))+\" / 5 \")])])])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Summary.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Summary.vue?vue&type=script&lang=js\"","<template>\n <div class=\"mrtn-header--summary\">\n <RatingBreakdown :config=\"config\" :rating=\"rating\" :total-rating=\"totalRating\" :current-active=\"currentActive\"\n @rating-selected=\"onRatingSelected\" />\n\n <div class=\"mrtn-summary-container\">\n <div class=\"mrtn-summary-title\">\n <div class=\"mrtn-total-responses\">{{ formatReviewsCount }} {{ this.totalRating > 1 ? 'Avaliações' : 'Avaliação' }}</div>\n <div v-if=\"recommended > 0\" class=\"mrtn-recommendation\">\n {{ Math.round(recommended) }}% dos clientes recomendam esse produto\n </div>\n </div>\n\n <div class=\"mrtn-average-section\">\n <div class=\"mrtn-average-display\">\n <div class=\"mrtn-stars-container\">\n <Rating :rating=\"average\" :color=\"config.widget_review.star_color\" />\n </div>\n <div class=\"mrtn-average-badge\" :style=\"{ backgroundColor: config.widget_review.star_color }\">\n {{ average.toFixed(1) }} / 5\n </div>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport Rating from '../components/Rating.vue'\nimport RatingBreakdown from '../components/RatingBreakdown.vue'\nimport { configProp } from \"../../../utils/configProps\";\n\nexport default {\n name: 'Summary',\n\n components: {\n Rating,\n RatingBreakdown\n },\n\n props: {\n ...configProp,\n\n rating: {\n type: Object,\n default: () => ({\n five: 0,\n four: 0,\n three: 0,\n two: 0,\n one: 0\n })\n },\n\n recommended: {\n type: Number,\n default: 0\n },\n\n average: {\n type: Number,\n default: 0\n },\n\n totalRating: {\n type: Number,\n default: 0\n }\n },\n\n data() {\n return {\n currentActive: null\n }\n },\n\n computed: {\n ratingBreakdown() {\n return {\n 5: this.rating.five,\n 4: this.rating.four,\n 3: this.rating.three,\n 2: this.rating.two,\n 1: this.rating.one\n }\n },\n\n formatReviewsCount() {\n if (this.totalRating >= 1000) {\n return (this.totalRating / 1000).toFixed(1).replace('.0', '') + 'k'\n }\n return this.totalRating.toLocaleString()\n }\n },\n\n methods: {\n getBarWidth(count) {\n if (this.totalRating === 0) return 0\n return (count / this.totalRating) * 100\n },\n\n onRatingSelected(rating) {\n this.currentActive = rating\n this.$emit('rating-selected', rating)\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.mrtn-summary-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-top: 1rem;\n}\n\n.mrtn-summary-title {\n margin-bottom: 20px;\n\n .mrtn-title {\n font-size: 24px;\n font-weight: 700;\n color: #000000;\n margin: 0 0 8px 0;\n }\n\n .mrtn-total-responses {\n font-size: 20px;\n color: #333333;\n font-weight: 300;\n }\n}\n\n.mrtn-recommendation {\n font-size: 16px;\n color: #666666;\n font-weight: 100;\n\n @media (max-width: 580px) {\n font-size: 12px;\n }\n}\n\n.mrtn-average-section {\n display: flex;\n justify-content: center;\n margin-bottom: 16px;\n}\n\n.mrtn-average-display {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.mrtn-stars-container {\n display: flex;\n align-items: center;\n\n @media (max-width: 580px) {\n display: none;\n }\n}\n\n.mrtn-average-badge {\n background: #ff6b35;\n color: white;\n padding: 8px 16px;\n border-radius: 20px;\n font-weight: 600;\n font-size: 14px;\n}\n\n.mrtn-rating-breakdown {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.mrtn-rating-row {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 4px 0;\n}\n\n.mrtn-rating-label {\n font-size: 12px;\n color: #666666;\n min-width: 70px;\n text-align: left;\n}\n\n.mrtn-rating-bar {\n flex: 1;\n height: 12px;\n background: #f0f0f0;\n border-radius: 6px;\n overflow: hidden;\n position: relative;\n}\n\n.mrtn-rating-bar__fill {\n height: 100%;\n border-radius: 6px;\n transition: width 0.3s ease;\n}\n\n.mrtn-rating-count {\n font-size: 12px;\n color: #666666;\n min-width: 40px;\n text-align: right;\n font-weight: 500;\n}\n</style>\n","import { render, staticRenderFns } from \"./Summary.vue?vue&type=template&id=a03cf414&scoped=true\"\nimport script from \"./Summary.vue?vue&type=script&lang=js\"\nexport * from \"./Summary.vue?vue&type=script&lang=js\"\nimport style0 from \"./Summary.vue?vue&type=style&index=0&id=a03cf414&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a03cf414\",\n null\n \n)\n\nexport default component.exports","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Rating.vue?vue&type=style&index=0&id=39af319e&prod&lang=css\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"5a552598\", content, true, {});","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{staticClass:\"martan-rating\"},_vm._l((_vm.stars),function(star,index){return _c('svg',{key:index,staticClass:\"icon icon-tabler\",class:_vm.getStarClass(star),style:({ color: _vm.color }),attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"14\",\"height\":\"14\",\"viewBox\":\"0 0 24 24\",\"stroke-width\":\"2\",\"stroke\":\"currentColor\",\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}},[(star === 0.5)?_c('defs',[_c('linearGradient',{attrs:{\"id\":(\"gradient-\" + index),\"x1\":\"0%\",\"y1\":\"0%\",\"x2\":\"100%\",\"y2\":\"0%\"}},[_c('stop',{style:((\"stop-color:\" + _vm.color + \";stop-opacity:1\")),attrs:{\"offset\":\"50%\"}}),_c('stop',{style:((\"stop-color:\" + _vm.color + \";stop-opacity:0\")),attrs:{\"offset\":\"50%\"}})],1)],1):_vm._e(),_c('path',{attrs:{\"stroke\":\"none\",\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\"}}),_c('path',{attrs:{\"d\":\"M8.243 7.34l-6.38 .925l-.113 .023a1 1 0 0 0 -.44 1.684l4.622 4.499l-1.09 6.355l-.013 .11a1 1 0 0 0 1.464 .944l5.706 -3l5.693 3l.1 .046a1 1 0 0 0 1.352 -1.1l-1.091 -6.355l4.624 -4.5l.078 -.085a1 1 0 0 0 -.633 -1.62l-6.38 -.926l-2.852 -5.78a1 1 0 0 0 -1.794 0l-2.853 5.78z\",\"fill\":_vm.getStarFill(star, index)}})])}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Rating.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Rating.vue?vue&type=script&lang=js\"","<template>\n <span class=\"martan-rating\">\n <svg\n v-for=\"(star, index) in stars\"\n :key=\"index\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"icon icon-tabler\"\n :class=\"getStarClass(star)\"\n width=\"14\"\n height=\"14\"\n viewBox=\"0 0 24 24\"\n stroke-width=\"2\"\n stroke=\"currentColor\"\n fill=\"none\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n :style=\"{ color }\"\n >\n <defs v-if=\"star === 0.5\">\n <linearGradient :id=\"`gradient-${index}`\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"0%\">\n <stop offset=\"50%\" :style=\"`stop-color:${color};stop-opacity:1`\" />\n <stop offset=\"50%\" :style=\"`stop-color:${color};stop-opacity:0`\" />\n </linearGradient>\n </defs>\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path\n d=\"M8.243 7.34l-6.38 .925l-.113 .023a1 1 0 0 0 -.44 1.684l4.622 4.499l-1.09 6.355l-.013 .11a1 1 0 0 0 1.464 .944l5.706 -3l5.693 3l.1 .046a1 1 0 0 0 1.352 -1.1l-1.091 -6.355l4.624 -4.5l.078 -.085a1 1 0 0 0 -.633 -1.62l-6.38 -.926l-2.852 -5.78a1 1 0 0 0 -1.794 0l-2.853 5.78z\"\n :fill=\"getStarFill(star, index)\" />\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: 'Rating',\n\n props: {\n rating: {\n type: Number,\n default: 5\n },\n\n color: {\n type: String,\n default: \"#000000\"\n },\n },\n\n data() {\n return {\n stars: Array(5).fill(0)\n };\n },\n\n mounted() {\n this.updateStars();\n },\n\n methods: {\n updateStars() {\n const rating = Math.max(0, Math.min(5, this.rating));\n this.stars = Array(5).fill(0).map((_, index) => {\n const starPosition = index + 1;\n if (rating >= starPosition) {\n return 1;\n } else if (rating > index) {\n return 0.5;\n } else {\n return 0;\n }\n });\n },\n\n getStarClass(star) {\n if (star === 1) {\n return 'icon-tabler-star-filled';\n } else if (star === 0.5) {\n return 'icon-tabler-star-half';\n } else {\n return 'icon-tabler-star';\n }\n },\n\n getStarFill(star, index) {\n if (star === 1) {\n return 'currentColor';\n } else if (star === 0.5) {\n return `url(#gradient-${index})`;\n } else {\n return 'none';\n }\n }\n },\n\n watch: {\n rating: 'updateStars'\n }\n};\n</script>\n\n<style lang=\"css\">\n.martan-rating {\n display: flex;\n gap: 4px;\n}\n</style>\n","import { render, staticRenderFns } from \"./Rating.vue?vue&type=template&id=39af319e\"\nimport script from \"./Rating.vue?vue&type=script&lang=js\"\nexport * from \"./Rating.vue?vue&type=script&lang=js\"\nimport style0 from \"./Rating.vue?vue&type=style&index=0&id=39af319e&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RatingBreakdown.vue?vue&type=style&index=0&id=121d360c&prod&lang=scss&scoped=true\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"8c4908ae\", content, true, {});","export * from \"-!../../../../../../node_modules/vue-style-loader/index.js!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Rating.vue?vue&type=style&index=0&id=39af319e&prod&lang=css\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \".martan-rating{display:flex;gap:4px}\", \"\"]);\n// Exports\nmodule.exports = exports;\n","export * from \"-!../../../../../../node_modules/vue-style-loader/index.js!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RatingBreakdown.vue?vue&type=style&index=0&id=121d360c&prod&lang=scss&scoped=true\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \".mrtn-rating-breakdown[data-v-121d360c]{display:flex;flex-direction:column;width:100%}.mrtn-rating-row[data-v-121d360c]{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:12px;padding:8px;position:relative;transition:all .2s ease}.mrtn-rating-row--active[data-v-121d360c],.mrtn-rating-row[data-v-121d360c]:hover{background:var(--hover-color)}.mrtn-rating-row--active[data-v-121d360c]{box-shadow:0 0 0 2px var(--hover-color);transform:scale(1.02);z-index:10}.mrtn-rating-breakdown--has-active .mrtn-rating-row[data-v-121d360c]:not(.mrtn-rating-row--active){filter:grayscale(.8);opacity:.4}.mrtn-rating-stars[data-v-121d360c]{display:flex;gap:2px;min-width:80px}.mrtn-rating-star[data-v-121d360c]{color:#e5e5e5;font-size:14px}.mrtn-rating-star--filled[data-v-121d360c]{color:#000}.mrtn-rating-bar[data-v-121d360c]{background:#f0f0f0;border-radius:4px;flex:1;height:8px;overflow:hidden;position:relative;transition:all .2s ease}.mrtn-rating-bar__fill[data-v-121d360c]{border-radius:4px;height:100%;transition:width .3s ease}.mrtn-rating-count[data-v-121d360c]{color:#666;font-size:12px;min-width:40px;text-align:right}\", \"\"]);\n// Exports\nmodule.exports = exports;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mrtn-rating-breakdown\",class:{ 'mrtn-rating-breakdown--has-active': _vm.currentActive !== null },style:('--hover-color: ' + _vm.houverColor)},_vm._l((_vm.ratingBreakdown),function(count,stars){return _c('div',{key:stars,staticClass:\"mrtn-rating-row\",class:{ 'mrtn-rating-row--active': _vm.currentActive === stars },on:{\"click\":function($event){return _vm.selectRating(stars)}}},[_c('div',{staticClass:\"mrtn-rating-stars\"},[_c('Rating',{attrs:{\"rating\":parseInt(stars),\"color\":_vm.config.widget_review.star_color}})],1),_c('div',{staticClass:\"mrtn-rating-bar\"},[_c('div',{staticClass:\"mrtn-rating-bar__fill\",style:({\n width: _vm.getBarWidth(count) + '%',\n backgroundColor: _vm.config.widget_review.star_color\n })})]),_c('span',{staticClass:\"mrtn-rating-count\"},[_vm._v(\"(\"+_vm._s(count)+\")\")])])}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RatingBreakdown.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RatingBreakdown.vue?vue&type=script&lang=js\"","<template>\n <div class=\"mrtn-rating-breakdown\" :style=\"'--hover-color: ' + houverColor\" :class=\"{ 'mrtn-rating-breakdown--has-active': currentActive !== null }\">\n <div v-for=\"(count, stars) in ratingBreakdown\" :key=\"stars\" class=\"mrtn-rating-row\"\n :class=\"{ 'mrtn-rating-row--active': currentActive === stars }\" @click=\"selectRating(stars)\">\n <div class=\"mrtn-rating-stars\">\n <Rating :rating=\"parseInt(stars)\" :color=\"config.widget_review.star_color\" />\n </div>\n\n <div class=\"mrtn-rating-bar\">\n <div class=\"mrtn-rating-bar__fill\" :style=\"{\n width: getBarWidth(count) + '%',\n backgroundColor: config.widget_review.star_color\n }\"></div>\n </div>\n\n <span class=\"mrtn-rating-count\">({{ count }})</span>\n </div>\n </div>\n</template>\n\n<script>\nimport { configProp } from \"../../../utils/configProps\";\nimport Rating from \"./Rating.vue\";\nimport { lightenColor } from \"../../../utils/lighten-color\";\n\nexport default {\n name: 'RatingBreakdown',\n\n props: {\n ...configProp,\n rating: {\n type: Object,\n default: () => ({\n five: 0,\n four: 0,\n three: 0,\n two: 0,\n one: 0\n })\n },\n\n totalRating: {\n type: Number,\n default: 0\n },\n\n\n average: {\n type: Number,\n default: 0\n }\n },\n\n data() {\n return {\n currentActive: null\n }\n },\n\n computed: {\n ratingBreakdown() {\n return {\n 5: this.rating.five,\n 4: this.rating.four,\n 3: this.rating.three,\n 2: this.rating.two,\n 1: this.rating.one\n }\n },\n\n houverColor() {\n if (!this.config.widget_review.star_color) return null\n return lightenColor(this.config.widget_review.star_color, 0.9)\n }\n },\n\n methods: {\n lightenColor,\n getBarWidth(count) {\n if (this.totalRating === 0) return 0\n return (count / this.totalRating) * 100\n },\n\n selectRating(rating) {\n if (this.currentActive === rating) {\n this.currentActive = null\n } else {\n this.currentActive = rating\n }\n this.$emit('rating-selected', this.currentActive)\n }\n },\n\n components: {\n Rating\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.mrtn-rating-breakdown {\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n\n.mrtn-rating-row {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 8px;\n border-radius: 6px;\n cursor: pointer;\n transition: all 0.2s ease;\n position: relative;\n\n &:hover {\n background: var(--hover-color);\n }\n\n &--active {\n background: var(--hover-color);\n box-shadow: 0 0 0 2px var(--hover-color);\n transform: scale(1.02);\n z-index: 10;\n }\n}\n\n.mrtn-rating-breakdown--has-active .mrtn-rating-row:not(.mrtn-rating-row--active) {\n opacity: 0.4;\n filter: grayscale(0.8);\n}\n\n.mrtn-rating-stars {\n display: flex;\n gap: 2px;\n min-width: 80px;\n}\n\n.mrtn-rating-star {\n font-size: 14px;\n color: #e5e5e5;\n\n &--filled {\n color: #000000;\n }\n}\n\n.mrtn-rating-bar {\n flex: 1;\n height: 8px;\n background: #f0f0f0;\n border-radius: 4px;\n overflow: hidden;\n position: relative;\n transition: all 0.2s ease;\n}\n\n.mrtn-rating-bar__fill {\n height: 100%;\n border-radius: 4px;\n transition: width 0.3s ease;\n}\n\n.mrtn-rating-count {\n font-size: 12px;\n color: #666666;\n min-width: 40px;\n text-align: right;\n}\n</style>\n","import { render, staticRenderFns } from \"./RatingBreakdown.vue?vue&type=template&id=121d360c&scoped=true\"\nimport script from \"./RatingBreakdown.vue?vue&type=script&lang=js\"\nexport * from \"./RatingBreakdown.vue?vue&type=script&lang=js\"\nimport style0 from \"./RatingBreakdown.vue?vue&type=style&index=0&id=121d360c&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"121d360c\",\n null\n \n)\n\nexport default component.exports","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Summary.vue?vue&type=style&index=0&id=a03cf414&prod&lang=scss&scoped=true\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"1bbb3a2b\", content, true, {});","export * from \"-!../../../../../../node_modules/vue-style-loader/index.js!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Summary.vue?vue&type=style&index=0&id=a03cf414&prod&lang=scss&scoped=true\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \".mrtn-summary-container[data-v-a03cf414]{align-items:center;display:flex;justify-content:space-between;margin-top:1rem}.mrtn-summary-title[data-v-a03cf414]{margin-bottom:20px}.mrtn-summary-title .mrtn-title[data-v-a03cf414]{color:#000;font-size:24px;font-weight:700;margin:0 0 8px}.mrtn-summary-title .mrtn-total-responses[data-v-a03cf414]{color:#333;font-size:20px;font-weight:300}.mrtn-recommendation[data-v-a03cf414]{color:#666;font-size:16px;font-weight:100}@media(max-width:580px){.mrtn-recommendation[data-v-a03cf414]{font-size:12px}}.mrtn-average-section[data-v-a03cf414]{display:flex;justify-content:center;margin-bottom:16px}.mrtn-average-display[data-v-a03cf414]{gap:12px}.mrtn-average-display[data-v-a03cf414],.mrtn-stars-container[data-v-a03cf414]{align-items:center;display:flex}@media(max-width:580px){.mrtn-stars-container[data-v-a03cf414]{display:none}}.mrtn-average-badge[data-v-a03cf414]{background:#ff6b35;border-radius:20px;color:#fff;font-size:14px;font-weight:600;padding:8px 16px}.mrtn-rating-breakdown[data-v-a03cf414]{display:flex;flex-direction:column;gap:8px}.mrtn-rating-row[data-v-a03cf414]{align-items:center;display:flex;gap:12px;padding:4px 0}.mrtn-rating-label[data-v-a03cf414]{color:#666;font-size:12px;min-width:70px;text-align:left}.mrtn-rating-bar[data-v-a03cf414]{background:#f0f0f0;border-radius:6px;flex:1;height:12px;overflow:hidden;position:relative}.mrtn-rating-bar__fill[data-v-a03cf414]{border-radius:6px;height:100%;transition:width .3s ease}.mrtn-rating-count[data-v-a03cf414]{color:#666;font-size:12px;font-weight:500;min-width:40px;text-align:right}\", \"\"]);\n// Exports\nmodule.exports = exports;\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack://widgetMartan/./src/widgets/reviews/components/Rating.vue?c507","webpack://widgetMartan/./src/widgets/reviews/components/Rating.vue?ab9f","webpack://widgetMartan/./src/widgets/reviews/components/Rating.vue?03a2","webpack://widgetMartan/src/widgets/reviews/components/Rating.vue","webpack://widgetMartan/./src/widgets/reviews/components/Rating.vue","webpack://widgetMartan/./src/widgets/reviews/components/Rating.vue?2ff4","webpack://widgetMartan/./src/widgets/reviews/components/Rating.vue?0e4b","webpack://widgetMartan/./src/widgets/reviews/components/RatingHistogram.vue?b290","webpack://widgetMartan/./src/widgets/reviews/headers/Histogram.vue?4ca5","webpack://widgetMartan/./src/widgets/reviews/components/RatingHistogram.vue?1fcb","webpack://widgetMartan/./src/widgets/reviews/components/RatingHistogram.vue?8046","webpack://widgetMartan/./src/widgets/reviews/headers/Histogram.vue?5342","webpack://widgetMartan/./src/widgets/reviews/headers/Histogram.vue?60ba","webpack://widgetMartan/./src/widgets/reviews/headers/Histogram.vue?2a3f","webpack://widgetMartan/./src/widgets/reviews/components/RatingHistogram.vue?196e","webpack://widgetMartan/src/widgets/reviews/components/RatingHistogram.vue","webpack://widgetMartan/./src/widgets/reviews/components/RatingHistogram.vue","webpack://widgetMartan/./src/widgets/reviews/components/RatingHistogram.vue?5690","webpack://widgetMartan/./src/widgets/reviews/headers/Histogram.vue?d0c8","webpack://widgetMartan/src/widgets/reviews/headers/Histogram.vue","webpack://widgetMartan/./src/widgets/reviews/headers/Histogram.vue"],"names":["content","__esModule","default","module","i","locals","exports","add","name","props","rating","type","Number","color","String","data","stars","Array","fill","mounted","updateStars","methods","Math","max","min","map","_","index","getStarClass","star","getStarFill","watch","component","_vm","this","_h","$createElement","_c","_self","staticClass","_l","key","class","style","attrs","_e","___CSS_LOADER_API_IMPORT___","push","configProp","Object","five","four","three","two","one","totalRating","average","currentActive","tooltip","visible","count","percentage","x","y","computed","ratingBreakdown","hoverColor","config","widget_review","star_color","lightenColor","tooltipStyle","left","top","getBarHeight","maxCount","values","selectRating","$emit","showTooltip","event","round","rect","target","getBoundingClientRect","containerRect","$el","parseInt","width","hideTooltip","components","Rating","height","backgroundColor","on","$event","_v","_s","RatingHistogram","recommended","formatReviewsCount","toFixed","replace","toLocaleString","getBarWidth","onRatingSelected"],"mappings":"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","file":"widget-martan.6.min.js","sourcesContent":["// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Rating.vue?vue&type=style&index=0&id=39af319e&prod&lang=css\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"5a552598\", content, true, {});","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{staticClass:\"martan-rating\"},_vm._l((_vm.stars),function(star,index){return _c('svg',{key:index,staticClass:\"icon icon-tabler\",class:_vm.getStarClass(star),style:({ color: _vm.color }),attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"14\",\"height\":\"14\",\"viewBox\":\"0 0 24 24\",\"stroke-width\":\"2\",\"stroke\":\"currentColor\",\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}},[(star === 0.5)?_c('defs',[_c('linearGradient',{attrs:{\"id\":(\"gradient-\" + index),\"x1\":\"0%\",\"y1\":\"0%\",\"x2\":\"100%\",\"y2\":\"0%\"}},[_c('stop',{style:((\"stop-color:\" + _vm.color + \";stop-opacity:1\")),attrs:{\"offset\":\"50%\"}}),_c('stop',{style:((\"stop-color:\" + _vm.color + \";stop-opacity:0\")),attrs:{\"offset\":\"50%\"}})],1)],1):_vm._e(),_c('path',{attrs:{\"stroke\":\"none\",\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\"}}),_c('path',{attrs:{\"d\":\"M8.243 7.34l-6.38 .925l-.113 .023a1 1 0 0 0 -.44 1.684l4.622 4.499l-1.09 6.355l-.013 .11a1 1 0 0 0 1.464 .944l5.706 -3l5.693 3l.1 .046a1 1 0 0 0 1.352 -1.1l-1.091 -6.355l4.624 -4.5l.078 -.085a1 1 0 0 0 -.633 -1.62l-6.38 -.926l-2.852 -5.78a1 1 0 0 0 -1.794 0l-2.853 5.78z\",\"fill\":_vm.getStarFill(star, index)}})])}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Rating.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Rating.vue?vue&type=script&lang=js\"","<template>\n <span class=\"martan-rating\">\n <svg\n v-for=\"(star, index) in stars\"\n :key=\"index\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"icon icon-tabler\"\n :class=\"getStarClass(star)\"\n width=\"14\"\n height=\"14\"\n viewBox=\"0 0 24 24\"\n stroke-width=\"2\"\n stroke=\"currentColor\"\n fill=\"none\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n :style=\"{ color }\"\n >\n <defs v-if=\"star === 0.5\">\n <linearGradient :id=\"`gradient-${index}`\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"0%\">\n <stop offset=\"50%\" :style=\"`stop-color:${color};stop-opacity:1`\" />\n <stop offset=\"50%\" :style=\"`stop-color:${color};stop-opacity:0`\" />\n </linearGradient>\n </defs>\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path\n d=\"M8.243 7.34l-6.38 .925l-.113 .023a1 1 0 0 0 -.44 1.684l4.622 4.499l-1.09 6.355l-.013 .11a1 1 0 0 0 1.464 .944l5.706 -3l5.693 3l.1 .046a1 1 0 0 0 1.352 -1.1l-1.091 -6.355l4.624 -4.5l.078 -.085a1 1 0 0 0 -.633 -1.62l-6.38 -.926l-2.852 -5.78a1 1 0 0 0 -1.794 0l-2.853 5.78z\"\n :fill=\"getStarFill(star, index)\" />\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: 'Rating',\n\n props: {\n rating: {\n type: Number,\n default: 5\n },\n\n color: {\n type: String,\n default: \"#000000\"\n },\n },\n\n data() {\n return {\n stars: Array(5).fill(0)\n };\n },\n\n mounted() {\n this.updateStars();\n },\n\n methods: {\n updateStars() {\n const rating = Math.max(0, Math.min(5, this.rating));\n this.stars = Array(5).fill(0).map((_, index) => {\n const starPosition = index + 1;\n if (rating >= starPosition) {\n return 1;\n } else if (rating > index) {\n return 0.5;\n } else {\n return 0;\n }\n });\n },\n\n getStarClass(star) {\n if (star === 1) {\n return 'icon-tabler-star-filled';\n } else if (star === 0.5) {\n return 'icon-tabler-star-half';\n } else {\n return 'icon-tabler-star';\n }\n },\n\n getStarFill(star, index) {\n if (star === 1) {\n return 'currentColor';\n } else if (star === 0.5) {\n return `url(#gradient-${index})`;\n } else {\n return 'none';\n }\n }\n },\n\n watch: {\n rating: 'updateStars'\n }\n};\n</script>\n\n<style lang=\"css\">\n.martan-rating {\n display: flex;\n gap: 4px;\n}\n</style>\n","import { render, staticRenderFns } from \"./Rating.vue?vue&type=template&id=39af319e\"\nimport script from \"./Rating.vue?vue&type=script&lang=js\"\nexport * from \"./Rating.vue?vue&type=script&lang=js\"\nimport style0 from \"./Rating.vue?vue&type=style&index=0&id=39af319e&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../../../node_modules/vue-style-loader/index.js!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Rating.vue?vue&type=style&index=0&id=39af319e&prod&lang=css\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \".martan-rating{display:flex;gap:4px}\", \"\"]);\n// Exports\nmodule.exports = exports;\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RatingHistogram.vue?vue&type=style&index=0&id=d35f3a0e&prod&lang=scss&scoped=true\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"76bee262\", content, true, {});","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Histogram.vue?vue&type=style&index=0&id=80f10b92&prod&lang=scss&scoped=true\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"7a1c0b6e\", content, true, {});","export * from \"-!../../../../../../node_modules/vue-style-loader/index.js!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RatingHistogram.vue?vue&type=style&index=0&id=d35f3a0e&prod&lang=scss&scoped=true\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \".mrtn-rating-histogram[data-v-d35f3a0e]{color:#333;display:flex;flex-direction:column;position:relative;width:100%}.mrtn-histogram-title[data-v-d35f3a0e]{color:#666;font-size:14px;font-weight:600;letter-spacing:.5px;margin-bottom:16px;text-transform:uppercase}.mrtn-histogram-container[data-v-d35f3a0e]{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.mrtn-histogram-bars[data-v-d35f3a0e]{gap:8px;height:120px;justify-content:space-between}.mrtn-histogram-bar[data-v-d35f3a0e],.mrtn-histogram-bars[data-v-d35f3a0e]{align-items:end;display:flex;position:relative}.mrtn-histogram-bar[data-v-d35f3a0e]{background:#f0f0f0;border-radius:4px 4px 0 0;cursor:pointer;flex:1;height:100%;min-height:8px;transition:all .3s ease}.mrtn-histogram-bar[data-v-d35f3a0e]:hover{transform:scaleY(1.05)}.mrtn-histogram-bar--active[data-v-d35f3a0e]{box-shadow:0 0 0 3px var(--hover-color);transform:scaleY(1.1);z-index:10}.mrtn-histogram-bars--has-active .mrtn-histogram-bar[data-v-d35f3a0e]:not(.mrtn-histogram-bar--active){filter:grayscale(.8);opacity:.4}.mrtn-histogram-bar__fill[data-v-d35f3a0e]{border-radius:4px 4px 0 0;min-height:8px;transition:all .3s ease;width:100%}.mrtn-histogram-labels[data-v-d35f3a0e]{display:flex;justify-content:space-between;padding:0 4px}.mrtn-histogram-label[data-v-d35f3a0e]{color:#666;flex:1;font-size:12px;font-weight:500;text-align:center}.mrtn-histogram-tooltip[data-v-d35f3a0e]{background:#333;border-radius:6px;box-shadow:0 4px 12px rgba(0,0,0,.3);color:#fff;min-width:120px;padding:12px;pointer-events:none;position:absolute;transform:translateX(-50%) translateY(-100%);white-space:nowrap;z-index:1000}.mrtn-tooltip-content[data-v-d35f3a0e]{align-items:center;display:flex;flex-direction:column;gap:4px}.mrtn-tooltip-stars[data-v-d35f3a0e]{display:flex;gap:2px}.mrtn-tooltip-text[data-v-d35f3a0e]{color:#fff;font-size:11px;text-align:center;white-space:nowrap}.mrtn-tooltip-arrow[data-v-d35f3a0e]{border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #333;height:0;left:50%;position:absolute;top:100%;transform:translateX(-50%);width:0}.mrtn-histogram-average[data-v-d35f3a0e]{align-items:center;display:flex;justify-content:flex-end}.mrtn-average-number[data-v-d35f3a0e]{color:#333;font-size:24px;font-weight:700;line-height:1}@media(max-width:768px){.mrtn-histogram-bars[data-v-d35f3a0e]{height:100px}.mrtn-average-number[data-v-d35f3a0e]{font-size:20px}}\", \"\"]);\n// Exports\nmodule.exports = exports;\n","export * from \"-!../../../../../../node_modules/vue-style-loader/index.js!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Histogram.vue?vue&type=style&index=0&id=80f10b92&prod&lang=scss&scoped=true\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \".mrtn-header--histogram[data-v-80f10b92]{background-color:#f3f3f3;border-radius:8px;margin-bottom:1rem;padding:8px 16px;width:100%}.mrtn-summary-container[data-v-80f10b92]{align-items:center;display:flex;justify-content:space-between;margin-top:1rem}.mrtn-summary-title[data-v-80f10b92]{margin-bottom:20px}.mrtn-summary-title .mrtn-title[data-v-80f10b92]{color:#000;font-size:24px;font-weight:700;margin:0 0 8px}.mrtn-summary-title .mrtn-total-responses[data-v-80f10b92]{color:#333;font-size:20px;font-weight:300}.mrtn-recommendation[data-v-80f10b92]{color:#666;font-size:16px;font-weight:100}@media(max-width:580px){.mrtn-recommendation[data-v-80f10b92]{font-size:12px}}.mrtn-average-section[data-v-80f10b92]{display:flex;justify-content:center;margin-bottom:16px}.mrtn-average-display[data-v-80f10b92]{gap:12px}.mrtn-average-display[data-v-80f10b92],.mrtn-stars-container[data-v-80f10b92]{align-items:center;display:flex}@media(max-width:580px){.mrtn-stars-container[data-v-80f10b92]{display:none}}.mrtn-average-badge[data-v-80f10b92]{background:#ff6b35;border-radius:20px;color:#fff;font-size:14px;font-weight:600;padding:8px 16px}.mrtn-rating-breakdown[data-v-80f10b92]{display:flex;flex-direction:column;gap:8px}.mrtn-rating-row[data-v-80f10b92]{align-items:center;display:flex;gap:12px;padding:4px 0}.mrtn-rating-label[data-v-80f10b92]{color:#666;font-size:12px;min-width:70px;text-align:left}.mrtn-rating-bar[data-v-80f10b92]{background:#f0f0f0;border-radius:6px;flex:1;height:12px;overflow:hidden;position:relative}.mrtn-rating-bar__fill[data-v-80f10b92]{border-radius:6px;height:100%;transition:width .3s ease}.mrtn-rating-count[data-v-80f10b92]{color:#666;font-size:12px;font-weight:500;min-width:40px;text-align:right}\", \"\"]);\n// Exports\nmodule.exports = exports;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mrtn-header--histogram\"},[_c('div',{staticClass:\"mrtn-summary-container\"},[_c('div',{staticClass:\"mrtn-summary-title\"},[_c('div',{staticClass:\"mrtn-total-responses\"},[_vm._v(_vm._s(_vm.formatReviewsCount)+\" Avaliações\")]),(_vm.recommended > 0)?_c('div',{staticClass:\"mrtn-recommendation\"},[_vm._v(\" \"+_vm._s(Math.round(_vm.recommended))+\"% dos clientes recomendam esse produto \")]):_vm._e()]),_c('div',{staticClass:\"mrtn-average-section\"},[_c('div',{staticClass:\"mrtn-average-display\"},[_c('div',{staticClass:\"mrtn-stars-container\"},[_c('Rating',{attrs:{\"rating\":_vm.average,\"color\":_vm.config.widget_review.star_color}})],1),_c('div',{staticClass:\"mrtn-average-badge\",style:({ backgroundColor: _vm.config.widget_review.star_color })},[_vm._v(\" \"+_vm._s(_vm.average.toFixed(1))+\" / 5 \")])])])]),_c('RatingHistogram',{attrs:{\"config\":_vm.config,\"rating\":_vm.rating,\"total-rating\":_vm.totalRating,\"average\":_vm.average},on:{\"rating-selected\":_vm.onRatingSelected}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RatingHistogram.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RatingHistogram.vue?vue&type=script&lang=js\"","<template>\n <div class=\"mrtn-rating-histogram\" :style=\"'--hover-color: ' + hoverColor\">\n <div class=\"mrtn-histogram-container\">\n <div class=\"mrtn-histogram-bars\" :class=\"{ 'mrtn-histogram-bars--has-active': currentActive !== null }\">\n <div v-for=\"(count, stars) in ratingBreakdown\" :key=\"stars\" class=\"mrtn-histogram-bar\"\n :class=\"{ 'mrtn-histogram-bar--active': currentActive === stars }\"\n :style=\"{ height: getBarHeight(count) + '%', backgroundColor: count > 0 ? config.widget_review.star_color : '#f0f0f0' }\"\n @click=\"selectRating(stars)\" @mouseenter=\"showTooltip(stars, count, $event)\" @mouseleave=\"hideTooltip\">\n <div class=\"mrtn-histogram-bar__fill\"></div>\n </div>\n </div>\n\n <div class=\"mrtn-histogram-labels\">\n <div v-for=\"stars in [1, 2, 3, 4, 5]\" :key=\"stars\" class=\"mrtn-histogram-label\">\n {{ stars }}\n </div>\n </div>\n </div>\n\n <div v-if=\"tooltip.visible\" class=\"mrtn-histogram-tooltip\" :style=\"tooltipStyle\">\n <div class=\"mrtn-tooltip-content\">\n <div class=\"mrtn-tooltip-stars\">\n <Rating :rating=\"tooltip.stars\" :color=\"config.widget_review.star_color\" />\n </div>\n <div class=\"mrtn-tooltip-text\">\n {{ tooltip.count }} avaliações ({{ tooltip.percentage }}%)\n </div>\n </div>\n <div class=\"mrtn-tooltip-arrow\"></div>\n </div>\n </div>\n</template>\n\n<script>\nimport { configProp } from \"../../../utils/configProps\";\nimport Rating from \"./Rating.vue\";\nimport { lightenColor } from \"../../../utils/lighten-color\";\n\nexport default {\n name: 'RatingHistogram',\n\n props: {\n ...configProp,\n rating: {\n type: Object,\n default: () => ({\n five: 0,\n four: 0,\n three: 0,\n two: 0,\n one: 0\n })\n },\n\n totalRating: {\n type: Number,\n default: 0\n },\n\n average: {\n type: Number,\n default: 0\n }\n },\n\n data() {\n return {\n currentActive: null,\n tooltip: {\n visible: false,\n stars: 0,\n count: 0,\n percentage: 0,\n x: 0,\n y: 0\n }\n }\n },\n\n computed: {\n ratingBreakdown() {\n return {\n 1: this.rating.one,\n 2: this.rating.two,\n 3: this.rating.three,\n 4: this.rating.four,\n 5: this.rating.five\n }\n },\n\n hoverColor() {\n if (!this.config.widget_review.star_color) return '#4CAF50'\n return lightenColor(this.config.widget_review.star_color, 0.9)\n },\n\n tooltipStyle() {\n return {\n left: this.tooltip.x + 'px',\n top: this.tooltip.y + 'px'\n }\n }\n },\n\n methods: {\n lightenColor,\n\n getBarHeight(count) {\n if (this.totalRating === 0) return 0\n const maxCount = Math.max(...Object.values(this.ratingBreakdown))\n if (maxCount === 0) return 0\n return (count / maxCount) * 100\n },\n\n selectRating(rating) {\n\n if (this.currentActive === rating) {\n this.currentActive = null\n } else {\n this.currentActive = rating\n }\n this.$emit('rating-selected', rating)\n },\n\n showTooltip(stars, count, event) {\n const percentage = this.totalRating > 0 ? Math.round((count / this.totalRating) * 100) : 0\n\n const rect = event.target.getBoundingClientRect()\n const containerRect = this.$el.getBoundingClientRect()\n\n const tooltipHeight = 5\n const offset = 5\n\n this.tooltip = {\n visible: true,\n stars: parseInt(stars),\n count,\n percentage,\n x: rect.left - containerRect.left + (rect.width / 2),\n y: rect.top - containerRect.top - tooltipHeight - offset\n }\n },\n\n hideTooltip() {\n this.tooltip.visible = false\n }\n },\n\n components: {\n Rating\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.mrtn-rating-histogram {\n display: flex;\n flex-direction: column;\n width: 100%;\n position: relative;\n color: #333;\n}\n\n.mrtn-histogram-title {\n font-size: 14px;\n font-weight: 600;\n color: #666;\n margin-bottom: 16px;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.mrtn-histogram-container {\n display: flex;\n flex-direction: column;\n gap: 8px;\n margin-bottom: 20px;\n}\n\n.mrtn-histogram-bars {\n display: flex;\n align-items: end;\n justify-content: space-between;\n height: 120px;\n gap: 8px;\n position: relative;\n}\n\n.mrtn-histogram-bar {\n flex: 1;\n display: flex;\n align-items: end;\n cursor: pointer;\n transition: all 0.3s ease;\n position: relative;\n min-height: 8px;\n border-radius: 4px 4px 0 0;\n background: #f0f0f0;\n height: 100%;\n\n &:hover {\n transform: scaleY(1.05);\n }\n\n &--active {\n box-shadow: 0 0 0 3px var(--hover-color);\n transform: scaleY(1.1);\n z-index: 10;\n }\n}\n\n\n.mrtn-histogram-bars--has-active .mrtn-histogram-bar:not(.mrtn-histogram-bar--active) {\n opacity: 0.4;\n filter: grayscale(0.8);\n}\n\n.mrtn-histogram-bar__fill {\n width: 100%;\n border-radius: 4px 4px 0 0;\n transition: all 0.3s ease;\n min-height: 8px;\n}\n\n.mrtn-histogram-labels {\n display: flex;\n justify-content: space-between;\n padding: 0 4px;\n}\n\n.mrtn-histogram-label {\n font-size: 12px;\n color: #666;\n font-weight: 500;\n text-align: center;\n flex: 1;\n}\n\n.mrtn-histogram-tooltip {\n position: absolute;\n background: #333;\n color: #fff;\n border-radius: 6px;\n padding: 12px;\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);\n z-index: 1000;\n pointer-events: none;\n transform: translateX(-50%) translateY(-100%);\n white-space: nowrap;\n min-width: 120px;\n}\n\n.mrtn-tooltip-content {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 4px;\n}\n\n.mrtn-tooltip-stars {\n display: flex;\n gap: 2px;\n}\n\n.mrtn-tooltip-text {\n font-size: 11px;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n}\n\n.mrtn-tooltip-arrow {\n position: absolute;\n top: 100%;\n left: 50%;\n transform: translateX(-50%);\n width: 0;\n height: 0;\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-top: 6px solid #333;\n}\n\n.mrtn-histogram-average {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n}\n\n.mrtn-average-number {\n font-size: 24px;\n font-weight: 700;\n color: #333;\n line-height: 1;\n}\n\n\n@media (max-width: 768px) {\n .mrtn-histogram-bars {\n height: 100px;\n }\n\n .mrtn-average-number {\n font-size: 20px;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./RatingHistogram.vue?vue&type=template&id=d35f3a0e&scoped=true\"\nimport script from \"./RatingHistogram.vue?vue&type=script&lang=js\"\nexport * from \"./RatingHistogram.vue?vue&type=script&lang=js\"\nimport style0 from \"./RatingHistogram.vue?vue&type=style&index=0&id=d35f3a0e&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d35f3a0e\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mrtn-rating-histogram\",style:('--hover-color: ' + _vm.hoverColor)},[_c('div',{staticClass:\"mrtn-histogram-container\"},[_c('div',{staticClass:\"mrtn-histogram-bars\",class:{ 'mrtn-histogram-bars--has-active': _vm.currentActive !== null }},_vm._l((_vm.ratingBreakdown),function(count,stars){return _c('div',{key:stars,staticClass:\"mrtn-histogram-bar\",class:{ 'mrtn-histogram-bar--active': _vm.currentActive === stars },style:({ height: _vm.getBarHeight(count) + '%', backgroundColor: count > 0 ? _vm.config.widget_review.star_color : '#f0f0f0' }),on:{\"click\":function($event){return _vm.selectRating(stars)},\"mouseenter\":function($event){return _vm.showTooltip(stars, count, $event)},\"mouseleave\":_vm.hideTooltip}},[_c('div',{staticClass:\"mrtn-histogram-bar__fill\"})])}),0),_c('div',{staticClass:\"mrtn-histogram-labels\"},_vm._l(([1, 2, 3, 4, 5]),function(stars){return _c('div',{key:stars,staticClass:\"mrtn-histogram-label\"},[_vm._v(\" \"+_vm._s(stars)+\" \")])}),0)]),(_vm.tooltip.visible)?_c('div',{staticClass:\"mrtn-histogram-tooltip\",style:(_vm.tooltipStyle)},[_c('div',{staticClass:\"mrtn-tooltip-content\"},[_c('div',{staticClass:\"mrtn-tooltip-stars\"},[_c('Rating',{attrs:{\"rating\":_vm.tooltip.stars,\"color\":_vm.config.widget_review.star_color}})],1),_c('div',{staticClass:\"mrtn-tooltip-text\"},[_vm._v(\" \"+_vm._s(_vm.tooltip.count)+\" avaliações (\"+_vm._s(_vm.tooltip.percentage)+\"%) \")])]),_c('div',{staticClass:\"mrtn-tooltip-arrow\"})]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Histogram.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Histogram.vue?vue&type=script&lang=js\"","<template>\n <div class=\"mrtn-header--histogram\">\n\n <div class=\"mrtn-summary-container\">\n <div class=\"mrtn-summary-title\">\n <div class=\"mrtn-total-responses\">{{ formatReviewsCount }} Avaliações</div>\n <div v-if=\"recommended > 0\" class=\"mrtn-recommendation\">\n {{ Math.round(recommended) }}% dos clientes recomendam esse produto\n </div>\n </div>\n\n <div class=\"mrtn-average-section\">\n <div class=\"mrtn-average-display\">\n <div class=\"mrtn-stars-container\">\n <Rating :rating=\"average\" :color=\"config.widget_review.star_color\" />\n </div>\n <div class=\"mrtn-average-badge\" :style=\"{ backgroundColor: config.widget_review.star_color }\">\n {{ average.toFixed(1) }} / 5\n </div>\n </div>\n </div>\n </div>\n\n <RatingHistogram :config=\"config\" :rating=\"rating\" :total-rating=\"totalRating\" :average=\"average\" @rating-selected=\"onRatingSelected\" />\n </div>\n</template>\n\n<script>\nimport Rating from '../components/Rating.vue'\nimport RatingHistogram from '../components/RatingHistogram.vue'\nimport { configProp } from \"../../../utils/configProps\";\n\nexport default {\n name: 'Histogram',\n\n components: {\n Rating,\n RatingHistogram\n },\n\n props: {\n ...configProp,\n\n rating: {\n type: Object,\n default: () => ({\n five: 0,\n four: 0,\n three: 0,\n two: 0,\n one: 0\n })\n },\n\n recommended: {\n type: Number,\n default: 0\n },\n\n average: {\n type: Number,\n default: 0\n },\n\n totalRating: {\n type: Number,\n default: 0\n }\n },\n\n data() {\n return {\n }\n },\n\n computed: {\n ratingBreakdown() {\n return {\n 5: this.rating.five,\n 4: this.rating.four,\n 3: this.rating.three,\n 2: this.rating.two,\n 1: this.rating.one\n }\n },\n\n formatReviewsCount() {\n if (this.totalRating >= 1000) {\n return (this.totalRating / 1000).toFixed(1).replace('.0', '') + 'k'\n }\n return this.totalRating.toLocaleString()\n }\n },\n\n methods: {\n getBarWidth(count) {\n if (this.totalRating === 0) return 0\n return (count / this.totalRating) * 100\n },\n\n onRatingSelected(rating) {\n this.currentActive = rating\n this.$emit('rating-selected', rating)\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.mrtn-header--histogram {\n background-color: #f3f3f3;\n border-radius: 8px;\n padding: 8px 16px;\n width: 100%;\n margin-bottom: 1rem;\n}\n\n.mrtn-summary-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-top: 1rem;\n}\n\n.mrtn-summary-title {\n margin-bottom: 20px;\n\n .mrtn-title {\n font-size: 24px;\n font-weight: 700;\n color: #000000;\n margin: 0 0 8px 0;\n }\n\n .mrtn-total-responses {\n font-size: 20px;\n color: #333333;\n font-weight: 300;\n }\n}\n\n.mrtn-recommendation {\n font-size: 16px;\n color: #666666;\n font-weight: 100;\n\n @media (max-width: 580px) {\n font-size: 12px;\n }\n}\n\n.mrtn-average-section {\n display: flex;\n justify-content: center;\n margin-bottom: 16px;\n}\n\n.mrtn-average-display {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.mrtn-stars-container {\n display: flex;\n align-items: center;\n\n @media (max-width: 580px) {\n display: none;\n }\n}\n\n.mrtn-average-badge {\n background: #ff6b35;\n color: white;\n padding: 8px 16px;\n border-radius: 20px;\n font-weight: 600;\n font-size: 14px;\n}\n\n.mrtn-rating-breakdown {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.mrtn-rating-row {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 4px 0;\n}\n\n.mrtn-rating-label {\n font-size: 12px;\n color: #666666;\n min-width: 70px;\n text-align: left;\n}\n\n.mrtn-rating-bar {\n flex: 1;\n height: 12px;\n background: #f0f0f0;\n border-radius: 6px;\n overflow: hidden;\n position: relative;\n}\n\n.mrtn-rating-bar__fill {\n height: 100%;\n border-radius: 6px;\n transition: width 0.3s ease;\n}\n\n.mrtn-rating-count {\n font-size: 12px;\n color: #666666;\n min-width: 40px;\n text-align: right;\n font-weight: 500;\n}\n</style>\n","import { render, staticRenderFns } from \"./Histogram.vue?vue&type=template&id=80f10b92&scoped=true\"\nimport script from \"./Histogram.vue?vue&type=script&lang=js\"\nexport * from \"./Histogram.vue?vue&type=script&lang=js\"\nimport style0 from \"./Histogram.vue?vue&type=style&index=0&id=80f10b92&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"80f10b92\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}
@@ -1,2 +1,2 @@
1
- (window.webpackJsonpwidgetMartan=window.webpackJsonpwidgetMartan||[]).push([[7],{104:function(t,a,e){"use strict";e.r(a);var r=e(31),i=e(4),n=e(10),o={name:"RatingHistogram",props:{...i.a,rating:{type:Object,default:()=>({five:0,four:0,three:0,two:0,one:0})},totalRating:{type:Number,default:0},average:{type:Number,default:0}},data:()=>({currentActive:null,tooltip:{visible:!1,stars:0,count:0,percentage:0,x:0,y:0}}),computed:{ratingBreakdown(){return{1:this.rating.one,2:this.rating.two,3:this.rating.three,4:this.rating.four,5:this.rating.five}},hoverColor(){return this.config.widget_review.star_color?Object(n.a)(this.config.widget_review.star_color,.9):"#4CAF50"},tooltipStyle(){return{left:this.tooltip.x+"px",top:this.tooltip.y+"px"}}},methods:{lightenColor:n.a,getBarHeight(t){if(0===this.totalRating)return 0;const a=Math.max(...Object.values(this.ratingBreakdown));return 0===a?0:t/a*100},selectRating(t){this.currentActive===t?this.currentActive=null:this.currentActive=t,this.$emit("rating-selected",t)},showTooltip(t,a,e){const r=this.totalRating>0?Math.round(a/this.totalRating*100):0,i=e.target.getBoundingClientRect(),n=this.$el.getBoundingClientRect();this.tooltip={visible:!0,stars:parseInt(t),count:a,percentage:r,x:i.left-n.left+i.width/2,y:i.top-n.top-5-5}},hideTooltip(){this.tooltip.visible=!1}},components:{Rating:r.a}},s=(e(96),e(3)),l=Object(s.a)(o,(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"mrtn-rating-histogram",style:"--hover-color: "+t.hoverColor},[e("div",{staticClass:"mrtn-histogram-container"},[e("div",{staticClass:"mrtn-histogram-bars",class:{"mrtn-histogram-bars--has-active":null!==t.currentActive}},t._l(t.ratingBreakdown,(function(a,r){return e("div",{key:r,staticClass:"mrtn-histogram-bar",class:{"mrtn-histogram-bar--active":t.currentActive===r},style:{height:t.getBarHeight(a)+"%",backgroundColor:a>0?t.config.widget_review.star_color:"#f0f0f0"},on:{click:function(a){return t.selectRating(r)},mouseenter:function(e){return t.showTooltip(r,a,e)},mouseleave:t.hideTooltip}},[e("div",{staticClass:"mrtn-histogram-bar__fill"})])})),0),e("div",{staticClass:"mrtn-histogram-labels"},t._l([1,2,3,4,5],(function(a){return e("div",{key:a,staticClass:"mrtn-histogram-label"},[t._v(" "+t._s(a)+" ")])})),0)]),t.tooltip.visible?e("div",{staticClass:"mrtn-histogram-tooltip",style:t.tooltipStyle},[e("div",{staticClass:"mrtn-tooltip-content"},[e("div",{staticClass:"mrtn-tooltip-stars"},[e("Rating",{attrs:{rating:t.tooltip.stars,color:t.config.widget_review.star_color}})],1),e("div",{staticClass:"mrtn-tooltip-text"},[t._v(" "+t._s(t.tooltip.count)+" avaliações ("+t._s(t.tooltip.percentage)+"%) ")])]),e("div",{staticClass:"mrtn-tooltip-arrow"})]):t._e()])}),[],!1,null,"d35f3a0e",null).exports,d={name:"Histogram",components:{Rating:r.a,RatingHistogram:l},props:{...i.a,rating:{type:Object,default:()=>({five:0,four:0,three:0,two:0,one:0})},recommended:{type:Number,default:0},average:{type:Number,default:0},totalRating:{type:Number,default:0}},data:()=>({}),computed:{ratingBreakdown(){return{5:this.rating.five,4:this.rating.four,3:this.rating.three,2:this.rating.two,1:this.rating.one}},formatReviewsCount(){return this.totalRating>=1e3?(this.totalRating/1e3).toFixed(1).replace(".0","")+"k":this.totalRating.toLocaleString()}},methods:{getBarWidth(t){return 0===this.totalRating?0:t/this.totalRating*100},onRatingSelected(t){this.currentActive=t,this.$emit("rating-selected",t)}}},c=(e(98),Object(s.a)(d,(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("div",{staticClass:"mrtn-header--histogram"},[e("div",{staticClass:"mrtn-summary-container"},[e("div",{staticClass:"mrtn-summary-title"},[e("div",{staticClass:"mrtn-total-responses"},[t._v(t._s(t.formatReviewsCount)+" Avaliações")]),t.recommended>0?e("div",{staticClass:"mrtn-recommendation"},[t._v(" "+t._s(Math.round(t.recommended))+"% dos clientes recomendam esse produto ")]):t._e()]),e("div",{staticClass:"mrtn-average-section"},[e("div",{staticClass:"mrtn-average-display"},[e("div",{staticClass:"mrtn-stars-container"},[e("Rating",{attrs:{rating:t.average,color:t.config.widget_review.star_color}})],1),e("div",{staticClass:"mrtn-average-badge",style:{backgroundColor:t.config.widget_review.star_color}},[t._v(" "+t._s(t.average.toFixed(1))+" / 5 ")])])])]),e("RatingHistogram",{attrs:{config:t.config,rating:t.rating,"total-rating":t.totalRating,average:t.average},on:{"rating-selected":t.onRatingSelected}})],1)}),[],!1,null,"80f10b92",null));a.default=c.exports},30:function(t,a,e){var r=e(35);r.__esModule&&(r=r.default),"string"==typeof r&&(r=[[t.i,r,""]]),r.locals&&(t.exports=r.locals);(0,e(9).default)("5a552598",r,!0,{})},31:function(t,a,e){"use strict";var r={name:"Rating",props:{rating:{type:Number,default:5},color:{type:String,default:"#000000"}},data:()=>({stars:Array(5).fill(0)}),mounted(){this.updateStars()},methods:{updateStars(){const t=Math.max(0,Math.min(5,this.rating));this.stars=Array(5).fill(0).map((a,e)=>t>=e+1?1:t>e?.5:0)},getStarClass:t=>1===t?"icon-tabler-star-filled":.5===t?"icon-tabler-star-half":"icon-tabler-star",getStarFill:(t,a)=>1===t?"currentColor":.5===t?`url(#gradient-${a})`:"none"},watch:{rating:"updateStars"}},i=(e(34),e(3)),n=Object(i.a)(r,(function(){var t=this,a=t.$createElement,e=t._self._c||a;return e("span",{staticClass:"martan-rating"},t._l(t.stars,(function(a,r){return e("svg",{key:r,staticClass:"icon icon-tabler",class:t.getStarClass(a),style:{color:t.color},attrs:{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor",fill:"none","stroke-linecap":"round","stroke-linejoin":"round"}},[.5===a?e("defs",[e("linearGradient",{attrs:{id:"gradient-"+r,x1:"0%",y1:"0%",x2:"100%",y2:"0%"}},[e("stop",{style:"stop-color:"+t.color+";stop-opacity:1",attrs:{offset:"50%"}}),e("stop",{style:"stop-color:"+t.color+";stop-opacity:0",attrs:{offset:"50%"}})],1)],1):t._e(),e("path",{attrs:{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}}),e("path",{attrs:{d:"M8.243 7.34l-6.38 .925l-.113 .023a1 1 0 0 0 -.44 1.684l4.622 4.499l-1.09 6.355l-.013 .11a1 1 0 0 0 1.464 .944l5.706 -3l5.693 3l.1 .046a1 1 0 0 0 1.352 -1.1l-1.091 -6.355l4.624 -4.5l.078 -.085a1 1 0 0 0 -.633 -1.62l-6.38 -.926l-2.852 -5.78a1 1 0 0 0 -1.794 0l-2.853 5.78z",fill:t.getStarFill(a,r)}})])})),0)}),[],!1,null,null,null);a.a=n.exports},34:function(t,a,e){"use strict";e(30)},35:function(t,a,e){(a=e(8)(!1)).push([t.i,".martan-rating{display:flex;gap:4px}",""]),t.exports=a},73:function(t,a,e){var r=e(97);r.__esModule&&(r=r.default),"string"==typeof r&&(r=[[t.i,r,""]]),r.locals&&(t.exports=r.locals);(0,e(9).default)("76bee262",r,!0,{})},74:function(t,a,e){var r=e(99);r.__esModule&&(r=r.default),"string"==typeof r&&(r=[[t.i,r,""]]),r.locals&&(t.exports=r.locals);(0,e(9).default)("7a1c0b6e",r,!0,{})},96:function(t,a,e){"use strict";e(73)},97:function(t,a,e){(a=e(8)(!1)).push([t.i,".mrtn-rating-histogram[data-v-d35f3a0e]{color:#333;display:flex;flex-direction:column;position:relative;width:100%}.mrtn-histogram-title[data-v-d35f3a0e]{color:#666;font-size:14px;font-weight:600;letter-spacing:.5px;margin-bottom:16px;text-transform:uppercase}.mrtn-histogram-container[data-v-d35f3a0e]{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.mrtn-histogram-bars[data-v-d35f3a0e]{gap:8px;height:120px;justify-content:space-between}.mrtn-histogram-bar[data-v-d35f3a0e],.mrtn-histogram-bars[data-v-d35f3a0e]{align-items:end;display:flex;position:relative}.mrtn-histogram-bar[data-v-d35f3a0e]{background:#f0f0f0;border-radius:4px 4px 0 0;cursor:pointer;flex:1;height:100%;min-height:8px;transition:all .3s ease}.mrtn-histogram-bar[data-v-d35f3a0e]:hover{transform:scaleY(1.05)}.mrtn-histogram-bar--active[data-v-d35f3a0e]{box-shadow:0 0 0 3px var(--hover-color);transform:scaleY(1.1);z-index:10}.mrtn-histogram-bars--has-active .mrtn-histogram-bar[data-v-d35f3a0e]:not(.mrtn-histogram-bar--active){filter:grayscale(.8);opacity:.4}.mrtn-histogram-bar__fill[data-v-d35f3a0e]{border-radius:4px 4px 0 0;min-height:8px;transition:all .3s ease;width:100%}.mrtn-histogram-labels[data-v-d35f3a0e]{display:flex;justify-content:space-between;padding:0 4px}.mrtn-histogram-label[data-v-d35f3a0e]{color:#666;flex:1;font-size:12px;font-weight:500;text-align:center}.mrtn-histogram-tooltip[data-v-d35f3a0e]{background:#333;border-radius:6px;box-shadow:0 4px 12px rgba(0,0,0,.3);color:#fff;min-width:120px;padding:12px;pointer-events:none;position:absolute;transform:translateX(-50%) translateY(-100%);white-space:nowrap;z-index:1000}.mrtn-tooltip-content[data-v-d35f3a0e]{align-items:center;display:flex;flex-direction:column;gap:4px}.mrtn-tooltip-stars[data-v-d35f3a0e]{display:flex;gap:2px}.mrtn-tooltip-text[data-v-d35f3a0e]{color:#fff;font-size:11px;text-align:center;white-space:nowrap}.mrtn-tooltip-arrow[data-v-d35f3a0e]{border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #333;height:0;left:50%;position:absolute;top:100%;transform:translateX(-50%);width:0}.mrtn-histogram-average[data-v-d35f3a0e]{align-items:center;display:flex;justify-content:flex-end}.mrtn-average-number[data-v-d35f3a0e]{color:#333;font-size:24px;font-weight:700;line-height:1}@media(max-width:768px){.mrtn-histogram-bars[data-v-d35f3a0e]{height:100px}.mrtn-average-number[data-v-d35f3a0e]{font-size:20px}}",""]),t.exports=a},98:function(t,a,e){"use strict";e(74)},99:function(t,a,e){(a=e(8)(!1)).push([t.i,".mrtn-header--histogram[data-v-80f10b92]{background-color:#f3f3f3;border-radius:8px;margin-bottom:1rem;padding:8px 16px;width:100%}.mrtn-summary-container[data-v-80f10b92]{align-items:center;display:flex;justify-content:space-between;margin-top:1rem}.mrtn-summary-title[data-v-80f10b92]{margin-bottom:20px}.mrtn-summary-title .mrtn-title[data-v-80f10b92]{color:#000;font-size:24px;font-weight:700;margin:0 0 8px}.mrtn-summary-title .mrtn-total-responses[data-v-80f10b92]{color:#333;font-size:20px;font-weight:300}.mrtn-recommendation[data-v-80f10b92]{color:#666;font-size:16px;font-weight:100}@media(max-width:580px){.mrtn-recommendation[data-v-80f10b92]{font-size:12px}}.mrtn-average-section[data-v-80f10b92]{display:flex;justify-content:center;margin-bottom:16px}.mrtn-average-display[data-v-80f10b92]{gap:12px}.mrtn-average-display[data-v-80f10b92],.mrtn-stars-container[data-v-80f10b92]{align-items:center;display:flex}@media(max-width:580px){.mrtn-stars-container[data-v-80f10b92]{display:none}}.mrtn-average-badge[data-v-80f10b92]{background:#ff6b35;border-radius:20px;color:#fff;font-size:14px;font-weight:600;padding:8px 16px}.mrtn-rating-breakdown[data-v-80f10b92]{display:flex;flex-direction:column;gap:8px}.mrtn-rating-row[data-v-80f10b92]{align-items:center;display:flex;gap:12px;padding:4px 0}.mrtn-rating-label[data-v-80f10b92]{color:#666;font-size:12px;min-width:70px;text-align:left}.mrtn-rating-bar[data-v-80f10b92]{background:#f0f0f0;border-radius:6px;flex:1;height:12px;overflow:hidden;position:relative}.mrtn-rating-bar__fill[data-v-80f10b92]{border-radius:6px;height:100%;transition:width .3s ease}.mrtn-rating-count[data-v-80f10b92]{color:#666;font-size:12px;font-weight:500;min-width:40px;text-align:right}",""]),t.exports=a}}]);
1
+ (window.webpackJsonpwidgetMartan=window.webpackJsonpwidgetMartan||[]).push([[7],{59:function(t,e,a){var r=a(81);r.__esModule&&(r=r.default),"string"==typeof r&&(r=[[t.i,r,""]]),r.locals&&(t.exports=r.locals);(0,a(9).default)("76dfa81d",r,!0,{})},60:function(t,e,a){var r=a(83);r.__esModule&&(r=r.default),"string"==typeof r&&(r=[[t.i,r,""]]),r.locals&&(t.exports=r.locals);(0,a(9).default)("526515bf",r,!0,{})},80:function(t,e,a){"use strict";a(59)},81:function(t,e,a){(e=a(8)(!1)).push([t.i,".mt-rating__order_by{align-items:center;display:flex;height:40px;justify-content:flex-end;max-width:130px;width:100%}.mt-rating__order_by svg{fill:#6b6d76}.mt-select{background:transparent;border:none;color:#6b6d76;font-size:14px;font-weight:400;height:30px;letter-spacing:normal;line-height:1.14}",""]),t.exports=e},82:function(t,e,a){"use strict";a(60)},83:function(t,e,a){(e=a(8)(!1)).push([t.i,".widget-sort[data-v-3e1647aa]{align-items:center;background-color:rgba(255,236,219,.102);border:1px solid rgba(255,236,219,.102);border-radius:.25rem;display:flex;font-size:1.25rem;justify-content:space-between;margin-bottom:1rem;margin-top:1rem;max-height:30px;width:100%}.widget-sort .average_geral svg[data-v-3e1647aa]{vertical-align:baseline}@media(max-width:580px){.widget-sort .average_geral .baseado[data-v-3e1647aa]{display:none}.widget-sort[data-v-3e1647aa]{padding:0}}",""]),t.exports=e},91:function(t,e,a){"use strict";a.r(e);var r=a(4);const o=[{key:"most_recent",name:"Recentes"},{key:"most_voted",name:"Mais úteis"},{key:"most_positive",name:"Positivas"},{key:"most_negative",name:"Negativas"}];var s={name:"Sort",data:()=>({orderOptions:o})},i=(a(80),a(3)),n=Object(i.a)(s,(function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"mt-rating__order_by"},[a("svg",{attrs:{width:"24px",height:"24px",viewBox:"0 0 200 200",xmlns:"http://www.w3.org/2000/svg"}},[a("title"),a("path",{attrs:{d:"M110.22,117.75h-80a10,10,0,0,0,0,20h80a10,10,0,0,0,0-20Z"}}),a("path",{attrs:{d:"M177.22,125.75a9.67,9.67,0,0,0-14,0l-8,7.5V42.75a10,10,0,0,0-20,0v113.5a8.29,8.29,0,0,0,3,8,9.67,9.67,0,0,0,14,0l24.5-24.5a10.13,10.13,0,0,0,.5-14Z"}}),a("path",{attrs:{d:"M110.22,37.75h-80a10,10,0,0,0,0,20h80a10,10,0,0,0,0-20Z"}}),a("path",{attrs:{d:"M30.22,97.75h70a10,10,0,0,0,0-20h-70a10,10,0,0,0,0,20Z"}})]),a("select",{staticClass:"mt-select",on:{change:function(e){return t.$emit("onSort",{order:e.target.value})}}},[a("option",{attrs:{selected:"",disabled:""}},[t._v("Ordenar")]),t._l(t.orderOptions,(function(e){return a("option",{key:e.key,domProps:{value:e.key}},[t._v(" "+t._s(e.name)+" ")])}))],2)])}),[],!1,null,null,null).exports,l={name:"Padrao",props:{...r.a,config:{type:Object,required:!0},totalRating:{type:Number,required:!0},average:{type:Number,required:!0}},computed:{i19basedOn$1Reviews:()=>"Baseado em $1 avaliações",i19basedOn$1Review:()=>"Baseado em $1 avaliação"},methods:{onSort({order:t}){this.$emit("onSort",{order:t})}},components:{Sort:n}},d=(a(82),Object(i.a)(l,(function(){var t=this,e=t.$createElement,a=t._self._c||e;return t.totalRating>0?a("div",{staticClass:"widget-sort"},[a("span",{staticClass:"average_geral"},[a("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",stroke:t.config.widget_review.star_color,fill:t.average>0?t.config.widget_review.star_color:"none","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"}},[a("defs",[a("linearGradient",{attrs:{id:"starGradient"+t.average}},[a("stop",{attrs:{offset:"0%","stop-color":t.config.widget_review.star_color}}),a("stop",{attrs:{offset:(t.average<5?t.average-1:t.average)/5*100+"%","stop-color":t.config.widget_review.star_color}}),a("stop",{attrs:{offset:(t.average<5?t.average-1:t.average)/5*100+"%","stop-color":"transparent"}}),a("stop",{attrs:{offset:"100%","stop-color":"transparent"}})],1)],1),a("path",{attrs:{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}}),a("path",{attrs:{d:"M8.243 7.34l-6.38 .925l-.113 .023a1 1 0 0 0 -.44 1.684l4.622 4.499l-1.09 6.355l-.013 .11a1 1 0 0 0 1.464 .944l5.706 -3l5.693 3l.1 .046a1 1 0 0 0 1.352 -1.1l-1.091 -6.355l4.624 -4.5l.078 -.085a1 1 0 0 0 -.633 -1.62l-6.38 -.926l-2.852 -5.78a1 1 0 0 0 -1.794 0l-2.853 5.78z",fill:"url(#starGradient"+t.average+")"}})]),a("strong",[t._v(t._s(t.average.toFixed(1)))]),t._v(" / 5 "),a("span",{staticClass:"baseado",staticStyle:{"font-size":"10px",opacity:"0.8"}},[t._v(" ("+t._s(t.totalRating>1?t.i19basedOn$1Reviews.replace("$1",t.totalRating):t.i19basedOn$1Review.replace("$1",t.totalRating))+") ")])]),a("sort",{on:{onSort:t.onSort}})],1):t._e()}),[],!1,null,"3e1647aa",null));e.default=d.exports}}]);
2
2
  //# sourceMappingURL=widget-martan.7.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack://widgetMartan/./src/widgets/reviews/headers/Histogram.vue?6e33","webpack://widgetMartan/./src/widgets/reviews/components/RatingHistogram.vue?8294","webpack://widgetMartan/src/widgets/reviews/components/RatingHistogram.vue","webpack://widgetMartan/./src/widgets/reviews/components/RatingHistogram.vue","webpack://widgetMartan/./src/widgets/reviews/components/RatingHistogram.vue?5863","webpack://widgetMartan/./src/widgets/reviews/headers/Histogram.vue?3684","webpack://widgetMartan/src/widgets/reviews/headers/Histogram.vue","webpack://widgetMartan/./src/widgets/reviews/headers/Histogram.vue","webpack://widgetMartan/./src/widgets/reviews/components/Rating.vue?a507","webpack://widgetMartan/./src/widgets/reviews/components/Rating.vue?cca9","webpack://widgetMartan/./src/widgets/reviews/components/Rating.vue?34e3","webpack://widgetMartan/src/widgets/reviews/components/Rating.vue","webpack://widgetMartan/./src/widgets/reviews/components/Rating.vue","webpack://widgetMartan/./src/widgets/reviews/components/Rating.vue?6f6d","webpack://widgetMartan/./src/widgets/reviews/components/Rating.vue?4189","webpack://widgetMartan/./src/widgets/reviews/components/RatingHistogram.vue?11a8","webpack://widgetMartan/./src/widgets/reviews/headers/Histogram.vue?dc8e","webpack://widgetMartan/./src/widgets/reviews/components/RatingHistogram.vue?dc9b","webpack://widgetMartan/./src/widgets/reviews/components/RatingHistogram.vue?6b9c","webpack://widgetMartan/./src/widgets/reviews/headers/Histogram.vue?4bc5","webpack://widgetMartan/./src/widgets/reviews/headers/Histogram.vue?28fa"],"names":["name","props","configProp","rating","type","Object","default","five","four","three","two","one","totalRating","Number","average","data","currentActive","tooltip","visible","stars","count","percentage","x","y","computed","ratingBreakdown","hoverColor","config","widget_review","star_color","lightenColor","tooltipStyle","left","top","methods","getBarHeight","maxCount","Math","max","values","selectRating","$emit","showTooltip","event","round","rect","target","getBoundingClientRect","containerRect","$el","parseInt","width","hideTooltip","components","Rating","_vm","this","_h","$createElement","_c","_self","staticClass","style","class","_l","key","height","backgroundColor","on","$event","_v","_s","attrs","_e","RatingHistogram","recommended","formatReviewsCount","toFixed","replace","toLocaleString","getBarWidth","onRatingSelected","content","__esModule","module","i","locals","exports","add","color","String","Array","fill","mounted","updateStars","min","map","_","index","getStarClass","star","getStarFill","watch","component","___CSS_LOADER_API_IMPORT___","push"],"mappings":"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","file":"widget-martan.7.min.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mrtn-header--histogram\"},[_c('div',{staticClass:\"mrtn-summary-container\"},[_c('div',{staticClass:\"mrtn-summary-title\"},[_c('div',{staticClass:\"mrtn-total-responses\"},[_vm._v(_vm._s(_vm.formatReviewsCount)+\" Avaliações\")]),(_vm.recommended > 0)?_c('div',{staticClass:\"mrtn-recommendation\"},[_vm._v(\" \"+_vm._s(Math.round(_vm.recommended))+\"% dos clientes recomendam esse produto \")]):_vm._e()]),_c('div',{staticClass:\"mrtn-average-section\"},[_c('div',{staticClass:\"mrtn-average-display\"},[_c('div',{staticClass:\"mrtn-stars-container\"},[_c('Rating',{attrs:{\"rating\":_vm.average,\"color\":_vm.config.widget_review.star_color}})],1),_c('div',{staticClass:\"mrtn-average-badge\",style:({ backgroundColor: _vm.config.widget_review.star_color })},[_vm._v(\" \"+_vm._s(_vm.average.toFixed(1))+\" / 5 \")])])])]),_c('RatingHistogram',{attrs:{\"config\":_vm.config,\"rating\":_vm.rating,\"total-rating\":_vm.totalRating,\"average\":_vm.average},on:{\"rating-selected\":_vm.onRatingSelected}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RatingHistogram.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RatingHistogram.vue?vue&type=script&lang=js\"","<template>\n <div class=\"mrtn-rating-histogram\" :style=\"'--hover-color: ' + hoverColor\">\n <div class=\"mrtn-histogram-container\">\n <div class=\"mrtn-histogram-bars\" :class=\"{ 'mrtn-histogram-bars--has-active': currentActive !== null }\">\n <div v-for=\"(count, stars) in ratingBreakdown\" :key=\"stars\" class=\"mrtn-histogram-bar\"\n :class=\"{ 'mrtn-histogram-bar--active': currentActive === stars }\"\n :style=\"{ height: getBarHeight(count) + '%', backgroundColor: count > 0 ? config.widget_review.star_color : '#f0f0f0' }\"\n @click=\"selectRating(stars)\" @mouseenter=\"showTooltip(stars, count, $event)\" @mouseleave=\"hideTooltip\">\n <div class=\"mrtn-histogram-bar__fill\"></div>\n </div>\n </div>\n\n <div class=\"mrtn-histogram-labels\">\n <div v-for=\"stars in [1, 2, 3, 4, 5]\" :key=\"stars\" class=\"mrtn-histogram-label\">\n {{ stars }}\n </div>\n </div>\n </div>\n\n <div v-if=\"tooltip.visible\" class=\"mrtn-histogram-tooltip\" :style=\"tooltipStyle\">\n <div class=\"mrtn-tooltip-content\">\n <div class=\"mrtn-tooltip-stars\">\n <Rating :rating=\"tooltip.stars\" :color=\"config.widget_review.star_color\" />\n </div>\n <div class=\"mrtn-tooltip-text\">\n {{ tooltip.count }} avaliações ({{ tooltip.percentage }}%)\n </div>\n </div>\n <div class=\"mrtn-tooltip-arrow\"></div>\n </div>\n </div>\n</template>\n\n<script>\nimport { configProp } from \"../../../utils/configProps\";\nimport Rating from \"./Rating.vue\";\nimport { lightenColor } from \"../../../utils/lighten-color\";\n\nexport default {\n name: 'RatingHistogram',\n\n props: {\n ...configProp,\n rating: {\n type: Object,\n default: () => ({\n five: 0,\n four: 0,\n three: 0,\n two: 0,\n one: 0\n })\n },\n\n totalRating: {\n type: Number,\n default: 0\n },\n\n average: {\n type: Number,\n default: 0\n }\n },\n\n data() {\n return {\n currentActive: null,\n tooltip: {\n visible: false,\n stars: 0,\n count: 0,\n percentage: 0,\n x: 0,\n y: 0\n }\n }\n },\n\n computed: {\n ratingBreakdown() {\n return {\n 1: this.rating.one,\n 2: this.rating.two,\n 3: this.rating.three,\n 4: this.rating.four,\n 5: this.rating.five\n }\n },\n\n hoverColor() {\n if (!this.config.widget_review.star_color) return '#4CAF50'\n return lightenColor(this.config.widget_review.star_color, 0.9)\n },\n\n tooltipStyle() {\n return {\n left: this.tooltip.x + 'px',\n top: this.tooltip.y + 'px'\n }\n }\n },\n\n methods: {\n lightenColor,\n\n getBarHeight(count) {\n if (this.totalRating === 0) return 0\n const maxCount = Math.max(...Object.values(this.ratingBreakdown))\n if (maxCount === 0) return 0\n return (count / maxCount) * 100\n },\n\n selectRating(rating) {\n\n if (this.currentActive === rating) {\n this.currentActive = null\n } else {\n this.currentActive = rating\n }\n this.$emit('rating-selected', rating)\n },\n\n showTooltip(stars, count, event) {\n const percentage = this.totalRating > 0 ? Math.round((count / this.totalRating) * 100) : 0\n\n const rect = event.target.getBoundingClientRect()\n const containerRect = this.$el.getBoundingClientRect()\n\n const tooltipHeight = 5\n const offset = 5\n\n this.tooltip = {\n visible: true,\n stars: parseInt(stars),\n count,\n percentage,\n x: rect.left - containerRect.left + (rect.width / 2),\n y: rect.top - containerRect.top - tooltipHeight - offset\n }\n },\n\n hideTooltip() {\n this.tooltip.visible = false\n }\n },\n\n components: {\n Rating\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.mrtn-rating-histogram {\n display: flex;\n flex-direction: column;\n width: 100%;\n position: relative;\n color: #333;\n}\n\n.mrtn-histogram-title {\n font-size: 14px;\n font-weight: 600;\n color: #666;\n margin-bottom: 16px;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.mrtn-histogram-container {\n display: flex;\n flex-direction: column;\n gap: 8px;\n margin-bottom: 20px;\n}\n\n.mrtn-histogram-bars {\n display: flex;\n align-items: end;\n justify-content: space-between;\n height: 120px;\n gap: 8px;\n position: relative;\n}\n\n.mrtn-histogram-bar {\n flex: 1;\n display: flex;\n align-items: end;\n cursor: pointer;\n transition: all 0.3s ease;\n position: relative;\n min-height: 8px;\n border-radius: 4px 4px 0 0;\n background: #f0f0f0;\n height: 100%;\n\n &:hover {\n transform: scaleY(1.05);\n }\n\n &--active {\n box-shadow: 0 0 0 3px var(--hover-color);\n transform: scaleY(1.1);\n z-index: 10;\n }\n}\n\n\n.mrtn-histogram-bars--has-active .mrtn-histogram-bar:not(.mrtn-histogram-bar--active) {\n opacity: 0.4;\n filter: grayscale(0.8);\n}\n\n.mrtn-histogram-bar__fill {\n width: 100%;\n border-radius: 4px 4px 0 0;\n transition: all 0.3s ease;\n min-height: 8px;\n}\n\n.mrtn-histogram-labels {\n display: flex;\n justify-content: space-between;\n padding: 0 4px;\n}\n\n.mrtn-histogram-label {\n font-size: 12px;\n color: #666;\n font-weight: 500;\n text-align: center;\n flex: 1;\n}\n\n.mrtn-histogram-tooltip {\n position: absolute;\n background: #333;\n color: #fff;\n border-radius: 6px;\n padding: 12px;\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);\n z-index: 1000;\n pointer-events: none;\n transform: translateX(-50%) translateY(-100%);\n white-space: nowrap;\n min-width: 120px;\n}\n\n.mrtn-tooltip-content {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 4px;\n}\n\n.mrtn-tooltip-stars {\n display: flex;\n gap: 2px;\n}\n\n.mrtn-tooltip-text {\n font-size: 11px;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n}\n\n.mrtn-tooltip-arrow {\n position: absolute;\n top: 100%;\n left: 50%;\n transform: translateX(-50%);\n width: 0;\n height: 0;\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-top: 6px solid #333;\n}\n\n.mrtn-histogram-average {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n}\n\n.mrtn-average-number {\n font-size: 24px;\n font-weight: 700;\n color: #333;\n line-height: 1;\n}\n\n\n@media (max-width: 768px) {\n .mrtn-histogram-bars {\n height: 100px;\n }\n\n .mrtn-average-number {\n font-size: 20px;\n }\n}\n</style>\n","import { render, staticRenderFns } from \"./RatingHistogram.vue?vue&type=template&id=d35f3a0e&scoped=true\"\nimport script from \"./RatingHistogram.vue?vue&type=script&lang=js\"\nexport * from \"./RatingHistogram.vue?vue&type=script&lang=js\"\nimport style0 from \"./RatingHistogram.vue?vue&type=style&index=0&id=d35f3a0e&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d35f3a0e\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mrtn-rating-histogram\",style:('--hover-color: ' + _vm.hoverColor)},[_c('div',{staticClass:\"mrtn-histogram-container\"},[_c('div',{staticClass:\"mrtn-histogram-bars\",class:{ 'mrtn-histogram-bars--has-active': _vm.currentActive !== null }},_vm._l((_vm.ratingBreakdown),function(count,stars){return _c('div',{key:stars,staticClass:\"mrtn-histogram-bar\",class:{ 'mrtn-histogram-bar--active': _vm.currentActive === stars },style:({ height: _vm.getBarHeight(count) + '%', backgroundColor: count > 0 ? _vm.config.widget_review.star_color : '#f0f0f0' }),on:{\"click\":function($event){return _vm.selectRating(stars)},\"mouseenter\":function($event){return _vm.showTooltip(stars, count, $event)},\"mouseleave\":_vm.hideTooltip}},[_c('div',{staticClass:\"mrtn-histogram-bar__fill\"})])}),0),_c('div',{staticClass:\"mrtn-histogram-labels\"},_vm._l(([1, 2, 3, 4, 5]),function(stars){return _c('div',{key:stars,staticClass:\"mrtn-histogram-label\"},[_vm._v(\" \"+_vm._s(stars)+\" \")])}),0)]),(_vm.tooltip.visible)?_c('div',{staticClass:\"mrtn-histogram-tooltip\",style:(_vm.tooltipStyle)},[_c('div',{staticClass:\"mrtn-tooltip-content\"},[_c('div',{staticClass:\"mrtn-tooltip-stars\"},[_c('Rating',{attrs:{\"rating\":_vm.tooltip.stars,\"color\":_vm.config.widget_review.star_color}})],1),_c('div',{staticClass:\"mrtn-tooltip-text\"},[_vm._v(\" \"+_vm._s(_vm.tooltip.count)+\" avaliações (\"+_vm._s(_vm.tooltip.percentage)+\"%) \")])]),_c('div',{staticClass:\"mrtn-tooltip-arrow\"})]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Histogram.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Histogram.vue?vue&type=script&lang=js\"","<template>\n <div class=\"mrtn-header--histogram\">\n\n <div class=\"mrtn-summary-container\">\n <div class=\"mrtn-summary-title\">\n <div class=\"mrtn-total-responses\">{{ formatReviewsCount }} Avaliações</div>\n <div v-if=\"recommended > 0\" class=\"mrtn-recommendation\">\n {{ Math.round(recommended) }}% dos clientes recomendam esse produto\n </div>\n </div>\n\n <div class=\"mrtn-average-section\">\n <div class=\"mrtn-average-display\">\n <div class=\"mrtn-stars-container\">\n <Rating :rating=\"average\" :color=\"config.widget_review.star_color\" />\n </div>\n <div class=\"mrtn-average-badge\" :style=\"{ backgroundColor: config.widget_review.star_color }\">\n {{ average.toFixed(1) }} / 5\n </div>\n </div>\n </div>\n </div>\n\n <RatingHistogram :config=\"config\" :rating=\"rating\" :total-rating=\"totalRating\" :average=\"average\" @rating-selected=\"onRatingSelected\" />\n </div>\n</template>\n\n<script>\nimport Rating from '../components/Rating.vue'\nimport RatingHistogram from '../components/RatingHistogram.vue'\nimport { configProp } from \"../../../utils/configProps\";\n\nexport default {\n name: 'Histogram',\n\n components: {\n Rating,\n RatingHistogram\n },\n\n props: {\n ...configProp,\n\n rating: {\n type: Object,\n default: () => ({\n five: 0,\n four: 0,\n three: 0,\n two: 0,\n one: 0\n })\n },\n\n recommended: {\n type: Number,\n default: 0\n },\n\n average: {\n type: Number,\n default: 0\n },\n\n totalRating: {\n type: Number,\n default: 0\n }\n },\n\n data() {\n return {\n }\n },\n\n computed: {\n ratingBreakdown() {\n return {\n 5: this.rating.five,\n 4: this.rating.four,\n 3: this.rating.three,\n 2: this.rating.two,\n 1: this.rating.one\n }\n },\n\n formatReviewsCount() {\n if (this.totalRating >= 1000) {\n return (this.totalRating / 1000).toFixed(1).replace('.0', '') + 'k'\n }\n return this.totalRating.toLocaleString()\n }\n },\n\n methods: {\n getBarWidth(count) {\n if (this.totalRating === 0) return 0\n return (count / this.totalRating) * 100\n },\n\n onRatingSelected(rating) {\n this.currentActive = rating\n this.$emit('rating-selected', rating)\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.mrtn-header--histogram {\n background-color: #f3f3f3;\n border-radius: 8px;\n padding: 8px 16px;\n width: 100%;\n margin-bottom: 1rem;\n}\n\n.mrtn-summary-container {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-top: 1rem;\n}\n\n.mrtn-summary-title {\n margin-bottom: 20px;\n\n .mrtn-title {\n font-size: 24px;\n font-weight: 700;\n color: #000000;\n margin: 0 0 8px 0;\n }\n\n .mrtn-total-responses {\n font-size: 20px;\n color: #333333;\n font-weight: 300;\n }\n}\n\n.mrtn-recommendation {\n font-size: 16px;\n color: #666666;\n font-weight: 100;\n\n @media (max-width: 580px) {\n font-size: 12px;\n }\n}\n\n.mrtn-average-section {\n display: flex;\n justify-content: center;\n margin-bottom: 16px;\n}\n\n.mrtn-average-display {\n display: flex;\n align-items: center;\n gap: 12px;\n}\n\n.mrtn-stars-container {\n display: flex;\n align-items: center;\n\n @media (max-width: 580px) {\n display: none;\n }\n}\n\n.mrtn-average-badge {\n background: #ff6b35;\n color: white;\n padding: 8px 16px;\n border-radius: 20px;\n font-weight: 600;\n font-size: 14px;\n}\n\n.mrtn-rating-breakdown {\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.mrtn-rating-row {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 4px 0;\n}\n\n.mrtn-rating-label {\n font-size: 12px;\n color: #666666;\n min-width: 70px;\n text-align: left;\n}\n\n.mrtn-rating-bar {\n flex: 1;\n height: 12px;\n background: #f0f0f0;\n border-radius: 6px;\n overflow: hidden;\n position: relative;\n}\n\n.mrtn-rating-bar__fill {\n height: 100%;\n border-radius: 6px;\n transition: width 0.3s ease;\n}\n\n.mrtn-rating-count {\n font-size: 12px;\n color: #666666;\n min-width: 40px;\n text-align: right;\n font-weight: 500;\n}\n</style>\n","import { render, staticRenderFns } from \"./Histogram.vue?vue&type=template&id=80f10b92&scoped=true\"\nimport script from \"./Histogram.vue?vue&type=script&lang=js\"\nexport * from \"./Histogram.vue?vue&type=script&lang=js\"\nimport style0 from \"./Histogram.vue?vue&type=style&index=0&id=80f10b92&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"80f10b92\",\n null\n \n)\n\nexport default component.exports","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Rating.vue?vue&type=style&index=0&id=39af319e&prod&lang=css\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"5a552598\", content, true, {});","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{staticClass:\"martan-rating\"},_vm._l((_vm.stars),function(star,index){return _c('svg',{key:index,staticClass:\"icon icon-tabler\",class:_vm.getStarClass(star),style:({ color: _vm.color }),attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"14\",\"height\":\"14\",\"viewBox\":\"0 0 24 24\",\"stroke-width\":\"2\",\"stroke\":\"currentColor\",\"fill\":\"none\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}},[(star === 0.5)?_c('defs',[_c('linearGradient',{attrs:{\"id\":(\"gradient-\" + index),\"x1\":\"0%\",\"y1\":\"0%\",\"x2\":\"100%\",\"y2\":\"0%\"}},[_c('stop',{style:((\"stop-color:\" + _vm.color + \";stop-opacity:1\")),attrs:{\"offset\":\"50%\"}}),_c('stop',{style:((\"stop-color:\" + _vm.color + \";stop-opacity:0\")),attrs:{\"offset\":\"50%\"}})],1)],1):_vm._e(),_c('path',{attrs:{\"stroke\":\"none\",\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\"}}),_c('path',{attrs:{\"d\":\"M8.243 7.34l-6.38 .925l-.113 .023a1 1 0 0 0 -.44 1.684l4.622 4.499l-1.09 6.355l-.013 .11a1 1 0 0 0 1.464 .944l5.706 -3l5.693 3l.1 .046a1 1 0 0 0 1.352 -1.1l-1.091 -6.355l4.624 -4.5l.078 -.085a1 1 0 0 0 -.633 -1.62l-6.38 -.926l-2.852 -5.78a1 1 0 0 0 -1.794 0l-2.853 5.78z\",\"fill\":_vm.getStarFill(star, index)}})])}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Rating.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Rating.vue?vue&type=script&lang=js\"","<template>\n <span class=\"martan-rating\">\n <svg\n v-for=\"(star, index) in stars\"\n :key=\"index\"\n xmlns=\"http://www.w3.org/2000/svg\"\n class=\"icon icon-tabler\"\n :class=\"getStarClass(star)\"\n width=\"14\"\n height=\"14\"\n viewBox=\"0 0 24 24\"\n stroke-width=\"2\"\n stroke=\"currentColor\"\n fill=\"none\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n :style=\"{ color }\"\n >\n <defs v-if=\"star === 0.5\">\n <linearGradient :id=\"`gradient-${index}`\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"0%\">\n <stop offset=\"50%\" :style=\"`stop-color:${color};stop-opacity:1`\" />\n <stop offset=\"50%\" :style=\"`stop-color:${color};stop-opacity:0`\" />\n </linearGradient>\n </defs>\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path\n d=\"M8.243 7.34l-6.38 .925l-.113 .023a1 1 0 0 0 -.44 1.684l4.622 4.499l-1.09 6.355l-.013 .11a1 1 0 0 0 1.464 .944l5.706 -3l5.693 3l.1 .046a1 1 0 0 0 1.352 -1.1l-1.091 -6.355l4.624 -4.5l.078 -.085a1 1 0 0 0 -.633 -1.62l-6.38 -.926l-2.852 -5.78a1 1 0 0 0 -1.794 0l-2.853 5.78z\"\n :fill=\"getStarFill(star, index)\" />\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: 'Rating',\n\n props: {\n rating: {\n type: Number,\n default: 5\n },\n\n color: {\n type: String,\n default: \"#000000\"\n },\n },\n\n data() {\n return {\n stars: Array(5).fill(0)\n };\n },\n\n mounted() {\n this.updateStars();\n },\n\n methods: {\n updateStars() {\n const rating = Math.max(0, Math.min(5, this.rating));\n this.stars = Array(5).fill(0).map((_, index) => {\n const starPosition = index + 1;\n if (rating >= starPosition) {\n return 1;\n } else if (rating > index) {\n return 0.5;\n } else {\n return 0;\n }\n });\n },\n\n getStarClass(star) {\n if (star === 1) {\n return 'icon-tabler-star-filled';\n } else if (star === 0.5) {\n return 'icon-tabler-star-half';\n } else {\n return 'icon-tabler-star';\n }\n },\n\n getStarFill(star, index) {\n if (star === 1) {\n return 'currentColor';\n } else if (star === 0.5) {\n return `url(#gradient-${index})`;\n } else {\n return 'none';\n }\n }\n },\n\n watch: {\n rating: 'updateStars'\n }\n};\n</script>\n\n<style lang=\"css\">\n.martan-rating {\n display: flex;\n gap: 4px;\n}\n</style>\n","import { render, staticRenderFns } from \"./Rating.vue?vue&type=template&id=39af319e\"\nimport script from \"./Rating.vue?vue&type=script&lang=js\"\nexport * from \"./Rating.vue?vue&type=script&lang=js\"\nimport style0 from \"./Rating.vue?vue&type=style&index=0&id=39af319e&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../../../node_modules/vue-style-loader/index.js!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Rating.vue?vue&type=style&index=0&id=39af319e&prod&lang=css\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \".martan-rating{display:flex;gap:4px}\", \"\"]);\n// Exports\nmodule.exports = exports;\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RatingHistogram.vue?vue&type=style&index=0&id=d35f3a0e&prod&lang=scss&scoped=true\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"76bee262\", content, true, {});","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Histogram.vue?vue&type=style&index=0&id=80f10b92&prod&lang=scss&scoped=true\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"7a1c0b6e\", content, true, {});","export * from \"-!../../../../../../node_modules/vue-style-loader/index.js!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RatingHistogram.vue?vue&type=style&index=0&id=d35f3a0e&prod&lang=scss&scoped=true\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \".mrtn-rating-histogram[data-v-d35f3a0e]{color:#333;display:flex;flex-direction:column;position:relative;width:100%}.mrtn-histogram-title[data-v-d35f3a0e]{color:#666;font-size:14px;font-weight:600;letter-spacing:.5px;margin-bottom:16px;text-transform:uppercase}.mrtn-histogram-container[data-v-d35f3a0e]{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.mrtn-histogram-bars[data-v-d35f3a0e]{gap:8px;height:120px;justify-content:space-between}.mrtn-histogram-bar[data-v-d35f3a0e],.mrtn-histogram-bars[data-v-d35f3a0e]{align-items:end;display:flex;position:relative}.mrtn-histogram-bar[data-v-d35f3a0e]{background:#f0f0f0;border-radius:4px 4px 0 0;cursor:pointer;flex:1;height:100%;min-height:8px;transition:all .3s ease}.mrtn-histogram-bar[data-v-d35f3a0e]:hover{transform:scaleY(1.05)}.mrtn-histogram-bar--active[data-v-d35f3a0e]{box-shadow:0 0 0 3px var(--hover-color);transform:scaleY(1.1);z-index:10}.mrtn-histogram-bars--has-active .mrtn-histogram-bar[data-v-d35f3a0e]:not(.mrtn-histogram-bar--active){filter:grayscale(.8);opacity:.4}.mrtn-histogram-bar__fill[data-v-d35f3a0e]{border-radius:4px 4px 0 0;min-height:8px;transition:all .3s ease;width:100%}.mrtn-histogram-labels[data-v-d35f3a0e]{display:flex;justify-content:space-between;padding:0 4px}.mrtn-histogram-label[data-v-d35f3a0e]{color:#666;flex:1;font-size:12px;font-weight:500;text-align:center}.mrtn-histogram-tooltip[data-v-d35f3a0e]{background:#333;border-radius:6px;box-shadow:0 4px 12px rgba(0,0,0,.3);color:#fff;min-width:120px;padding:12px;pointer-events:none;position:absolute;transform:translateX(-50%) translateY(-100%);white-space:nowrap;z-index:1000}.mrtn-tooltip-content[data-v-d35f3a0e]{align-items:center;display:flex;flex-direction:column;gap:4px}.mrtn-tooltip-stars[data-v-d35f3a0e]{display:flex;gap:2px}.mrtn-tooltip-text[data-v-d35f3a0e]{color:#fff;font-size:11px;text-align:center;white-space:nowrap}.mrtn-tooltip-arrow[data-v-d35f3a0e]{border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #333;height:0;left:50%;position:absolute;top:100%;transform:translateX(-50%);width:0}.mrtn-histogram-average[data-v-d35f3a0e]{align-items:center;display:flex;justify-content:flex-end}.mrtn-average-number[data-v-d35f3a0e]{color:#333;font-size:24px;font-weight:700;line-height:1}@media(max-width:768px){.mrtn-histogram-bars[data-v-d35f3a0e]{height:100px}.mrtn-average-number[data-v-d35f3a0e]{font-size:20px}}\", \"\"]);\n// Exports\nmodule.exports = exports;\n","export * from \"-!../../../../../../node_modules/vue-style-loader/index.js!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Histogram.vue?vue&type=style&index=0&id=80f10b92&prod&lang=scss&scoped=true\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \".mrtn-header--histogram[data-v-80f10b92]{background-color:#f3f3f3;border-radius:8px;margin-bottom:1rem;padding:8px 16px;width:100%}.mrtn-summary-container[data-v-80f10b92]{align-items:center;display:flex;justify-content:space-between;margin-top:1rem}.mrtn-summary-title[data-v-80f10b92]{margin-bottom:20px}.mrtn-summary-title .mrtn-title[data-v-80f10b92]{color:#000;font-size:24px;font-weight:700;margin:0 0 8px}.mrtn-summary-title .mrtn-total-responses[data-v-80f10b92]{color:#333;font-size:20px;font-weight:300}.mrtn-recommendation[data-v-80f10b92]{color:#666;font-size:16px;font-weight:100}@media(max-width:580px){.mrtn-recommendation[data-v-80f10b92]{font-size:12px}}.mrtn-average-section[data-v-80f10b92]{display:flex;justify-content:center;margin-bottom:16px}.mrtn-average-display[data-v-80f10b92]{gap:12px}.mrtn-average-display[data-v-80f10b92],.mrtn-stars-container[data-v-80f10b92]{align-items:center;display:flex}@media(max-width:580px){.mrtn-stars-container[data-v-80f10b92]{display:none}}.mrtn-average-badge[data-v-80f10b92]{background:#ff6b35;border-radius:20px;color:#fff;font-size:14px;font-weight:600;padding:8px 16px}.mrtn-rating-breakdown[data-v-80f10b92]{display:flex;flex-direction:column;gap:8px}.mrtn-rating-row[data-v-80f10b92]{align-items:center;display:flex;gap:12px;padding:4px 0}.mrtn-rating-label[data-v-80f10b92]{color:#666;font-size:12px;min-width:70px;text-align:left}.mrtn-rating-bar[data-v-80f10b92]{background:#f0f0f0;border-radius:6px;flex:1;height:12px;overflow:hidden;position:relative}.mrtn-rating-bar__fill[data-v-80f10b92]{border-radius:6px;height:100%;transition:width .3s ease}.mrtn-rating-count[data-v-80f10b92]{color:#666;font-size:12px;font-weight:500;min-width:40px;text-align:right}\", \"\"]);\n// Exports\nmodule.exports = exports;\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack://widgetMartan/./src/widgets/reviews/components/Sort.vue?97ad","webpack://widgetMartan/./src/widgets/reviews/headers/Padrao.vue?535b","webpack://widgetMartan/./src/widgets/reviews/components/Sort.vue?8351","webpack://widgetMartan/./src/widgets/reviews/components/Sort.vue?5ec5","webpack://widgetMartan/./src/widgets/reviews/headers/Padrao.vue?6773","webpack://widgetMartan/./src/widgets/reviews/headers/Padrao.vue?53e4","webpack://widgetMartan/./src/widgets/reviews/headers/Padrao.vue?e4d0","webpack://widgetMartan/src/widgets/reviews/components/Sort.vue","webpack://widgetMartan/./src/widgets/reviews/components/Sort.vue?f92f","webpack://widgetMartan/./src/widgets/reviews/components/Sort.vue","webpack://widgetMartan/./src/widgets/reviews/components/Sort.vue?eac2","webpack://widgetMartan/./src/widgets/reviews/headers/Padrao.vue?06bd","webpack://widgetMartan/src/widgets/reviews/headers/Padrao.vue","webpack://widgetMartan/./src/widgets/reviews/headers/Padrao.vue"],"names":["content","__esModule","default","module","i","locals","exports","add","___CSS_LOADER_API_IMPORT___","push","orderOptions","key","name","data","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","on","e","$emit","order","target","value","_v","_l","option","domProps","_s","props","configProp","config","type","Object","required","totalRating","Number","average","computed","i19basedOn$1Reviews","i19basedOn$1Review","methods","onSort","components","Sort","widget_review","star_color","toFixed","staticStyle","replace","_e"],"mappings":"oGAGA,IAAIA,EAAU,EAAQ,IACnBA,EAAQC,aAAYD,EAAUA,EAAQE,SACnB,iBAAZF,IAAsBA,EAAU,CAAC,CAACG,EAAOC,EAAIJ,EAAS,MAC7DA,EAAQK,SAAQF,EAAOG,QAAUN,EAAQK,SAG/BE,EADH,EAAQ,GAA2EL,SAC5E,WAAYF,GAAS,EAAM,K,mBCN5C,IAAIA,EAAU,EAAQ,IACnBA,EAAQC,aAAYD,EAAUA,EAAQE,SACnB,iBAAZF,IAAsBA,EAAU,CAAC,CAACG,EAAOC,EAAIJ,EAAS,MAC7DA,EAAQK,SAAQF,EAAOG,QAAUN,EAAQK,SAG/BE,EADH,EAAQ,GAA2EL,SAC5E,WAAYF,GAAS,EAAM,K,gCCT5C,O,oBCEAM,EADkC,EAAQ,EAChCE,EAA4B,IAE9BC,KAAK,CAACN,EAAOC,EAAI,4SAA6S,KAEtUD,EAAOG,QAAUA,G,gCCNjB,O,oBCEAA,EADkC,EAAQ,EAChCE,EAA4B,IAE9BC,KAAK,CAACN,EAAOC,EAAI,ieAAke,KAE3fD,EAAOG,QAAUA,G,uCCNjB,I,OCqBA,MAAAI,EAAA,CACA,CACAC,IAAA,cACAC,KAAA,YAEA,CACAD,IAAA,aACAC,KAAA,cAEA,CACAD,IAAA,gBACAC,KAAA,aAEA,CACAD,IAAA,gBACAC,KAAA,cAIe,ICxC4L,EDwC5L,CACfA,KAAA,OAEAC,UACA,CACAH,kB,eE1Be,EAXC,YACd,GCTW,WAAa,IAAII,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACE,YAAY,uBAAuB,CAACF,EAAG,MAAM,CAACG,MAAM,CAAC,MAAQ,OAAO,OAAS,OAAO,QAAU,cAAc,MAAQ,+BAA+B,CAACH,EAAG,SAASA,EAAG,OAAO,CAACG,MAAM,CAAC,EAAI,8DAA8DH,EAAG,OAAO,CAACG,MAAM,CAAC,EAAI,yJAAyJH,EAAG,OAAO,CAACG,MAAM,CAAC,EAAI,6DAA6DH,EAAG,OAAO,CAACG,MAAM,CAAC,EAAI,8DAA8DH,EAAG,SAAS,CAACE,YAAY,YAAYE,GAAG,CAAC,OAAS,SAAUC,GAAK,OAAOT,EAAIU,MAAM,SAAU,CAAEC,MAAOF,EAAEG,OAAOC,WAAc,CAACT,EAAG,SAAS,CAACG,MAAM,CAAC,SAAW,GAAG,SAAW,KAAK,CAACP,EAAIc,GAAG,aAAad,EAAIe,GAAIf,EAAgB,cAAE,SAASgB,GAAQ,OAAOZ,EAAG,SAAS,CAACP,IAAImB,EAAOnB,IAAIoB,SAAS,CAAC,MAAQD,EAAOnB,MAAM,CAACG,EAAIc,GAAG,IAAId,EAAIkB,GAAGF,EAAOlB,MAAM,WAAU,OACz/B,IDWpB,EACA,KACA,KACA,M,QEf2M,EC4C9L,CACfA,KAAA,SAEAqB,MAAA,IACAC,IACAC,OAAA,CACAC,KAAAC,OACAC,UAAA,GAEAC,YAAA,CACAH,KAAAI,OACAF,UAAA,GAEAG,QAAA,CACAL,KAAAI,OACAF,UAAA,IAIAI,SAAA,CACAC,wBAAA,2BACAC,uBAAA,2BAGAC,QAAA,CACAC,QAAA,MAAArB,IACA,KAAAD,MAAA,UAAAC,YAIAsB,WAAA,CACAC,SCnEI,G,MAAY,YACd,GPTW,WAAa,IAAIlC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAQF,EAAIyB,YAAc,EAAGrB,EAAG,MAAM,CAACE,YAAY,eAAe,CAACF,EAAG,OAAO,CAACE,YAAY,iBAAiB,CAACF,EAAG,MAAM,CAACG,MAAM,CAAC,MAAQ,6BAA6B,MAAQ,KAAK,OAAS,KAAK,QAAU,YAAY,OAASP,EAAIqB,OAAOc,cAAcC,WAAW,KAAOpC,EAAI2B,QAAU,EAAI3B,EAAIqB,OAAOc,cAAcC,WAAa,OAAO,eAAe,IAAI,iBAAiB,QAAQ,kBAAkB,UAAU,CAAChC,EAAG,OAAO,CAACA,EAAG,iBAAiB,CAACG,MAAM,CAAC,GAAK,eAAiBP,EAAI2B,UAAU,CAACvB,EAAG,OAAO,CAACG,MAAM,CAAC,OAAS,KAAK,aAAaP,EAAIqB,OAAOc,cAAcC,cAAchC,EAAG,OAAO,CAACG,MAAM,CAAC,QAAWP,EAAI2B,QAAU,EAAI3B,EAAI2B,QAAU,EAAI3B,EAAI2B,SAAW,EAC5sB,IACA,IAAI,aAAa3B,EAAIqB,OAAOc,cAAcC,cAAchC,EAAG,OAAO,CAACG,MAAM,CAAC,QAAWP,EAAI2B,QAAU,EAAI3B,EAAI2B,QAAU,EAAI3B,EAAI2B,SAAW,EACxI,IACA,IAAI,aAAa,iBAAiBvB,EAAG,OAAO,CAACG,MAAM,CAAC,OAAS,OAAO,aAAa,kBAAkB,IAAI,GAAGH,EAAG,OAAO,CAACG,MAAM,CAAC,OAAS,OAAO,EAAI,gBAAgB,KAAO,UAAUH,EAAG,OAAO,CAACG,MAAM,CAAC,EAAI,iRAAiR,KAAQ,oBAAsBP,EAAI2B,QAAU,SAAUvB,EAAG,SAAS,CAACJ,EAAIc,GAAGd,EAAIkB,GAAGlB,EAAI2B,QAAQU,QAAQ,OAAOrC,EAAIc,GAAG,SAASV,EAAG,OAAO,CAACE,YAAY,UAAUgC,YAAY,CAAC,YAAY,OAAO,QAAU,QAAQ,CAACtC,EAAIc,GAAG,KAAKd,EAAIkB,GAAGlB,EAAIyB,YAAc,EAAIzB,EAAI6B,oBAAoBU,QAAQ,KAAMvC,EAAIyB,aAAezB,EAAI8B,mBAAmBS,QAAQ,KAAMvC,EAAIyB,cAAc,UAAUrB,EAAG,OAAO,CAACI,GAAG,CAAC,OAASR,EAAIgC,WAAW,GAAGhC,EAAIwC,OAC/2B,IOOpB,EACA,KACA,WACA,OAIa,Y","file":"widget-martan.7.min.js","sourcesContent":["// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Sort.vue?vue&type=style&index=0&id=12fb06a8&prod&lang=css\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"76dfa81d\", content, true, {});","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Padrao.vue?vue&type=style&index=0&id=3e1647aa&prod&lang=scss&scoped=true\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"526515bf\", content, true, {});","export * from \"-!../../../../../../node_modules/vue-style-loader/index.js!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Sort.vue?vue&type=style&index=0&id=12fb06a8&prod&lang=css\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \".mt-rating__order_by{align-items:center;display:flex;height:40px;justify-content:flex-end;max-width:130px;width:100%}.mt-rating__order_by svg{fill:#6b6d76}.mt-select{background:transparent;border:none;color:#6b6d76;font-size:14px;font-weight:400;height:30px;letter-spacing:normal;line-height:1.14}\", \"\"]);\n// Exports\nmodule.exports = exports;\n","export * from \"-!../../../../../../node_modules/vue-style-loader/index.js!../../../../../../node_modules/css-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../../node_modules/sass-loader/dist/cjs.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Padrao.vue?vue&type=style&index=0&id=3e1647aa&prod&lang=scss&scoped=true\"","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \".widget-sort[data-v-3e1647aa]{align-items:center;background-color:rgba(255,236,219,.102);border:1px solid rgba(255,236,219,.102);border-radius:.25rem;display:flex;font-size:1.25rem;justify-content:space-between;margin-bottom:1rem;margin-top:1rem;max-height:30px;width:100%}.widget-sort .average_geral svg[data-v-3e1647aa]{vertical-align:baseline}@media(max-width:580px){.widget-sort .average_geral .baseado[data-v-3e1647aa]{display:none}.widget-sort[data-v-3e1647aa]{padding:0}}\", \"\"]);\n// Exports\nmodule.exports = exports;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.totalRating > 0)?_c('div',{staticClass:\"widget-sort\"},[_c('span',{staticClass:\"average_geral\"},[_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"14\",\"height\":\"14\",\"viewBox\":\"0 0 24 24\",\"stroke\":_vm.config.widget_review.star_color,\"fill\":_vm.average > 0 ? _vm.config.widget_review.star_color : 'none',\"stroke-width\":\"2\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\"}},[_c('defs',[_c('linearGradient',{attrs:{\"id\":'starGradient' + _vm.average}},[_c('stop',{attrs:{\"offset\":\"0%\",\"stop-color\":_vm.config.widget_review.star_color}}),_c('stop',{attrs:{\"offset\":((_vm.average < 5 ? _vm.average - 1 : _vm.average) / 5) *\n 100 +\n '%',\"stop-color\":_vm.config.widget_review.star_color}}),_c('stop',{attrs:{\"offset\":((_vm.average < 5 ? _vm.average - 1 : _vm.average) / 5) *\n 100 +\n '%',\"stop-color\":\"transparent\"}}),_c('stop',{attrs:{\"offset\":\"100%\",\"stop-color\":\"transparent\"}})],1)],1),_c('path',{attrs:{\"stroke\":\"none\",\"d\":\"M0 0h24v24H0z\",\"fill\":\"none\"}}),_c('path',{attrs:{\"d\":\"M8.243 7.34l-6.38 .925l-.113 .023a1 1 0 0 0 -.44 1.684l4.622 4.499l-1.09 6.355l-.013 .11a1 1 0 0 0 1.464 .944l5.706 -3l5.693 3l.1 .046a1 1 0 0 0 1.352 -1.1l-1.091 -6.355l4.624 -4.5l.078 -.085a1 1 0 0 0 -.633 -1.62l-6.38 -.926l-2.852 -5.78a1 1 0 0 0 -1.794 0l-2.853 5.78z\",\"fill\":(\"url(#starGradient\" + _vm.average + \")\")}})]),_c('strong',[_vm._v(_vm._s(_vm.average.toFixed(1)))]),_vm._v(\" / 5 \"),_c('span',{staticClass:\"baseado\",staticStyle:{\"font-size\":\"10px\",\"opacity\":\"0.8\"}},[_vm._v(\" (\"+_vm._s(_vm.totalRating > 1 ? _vm.i19basedOn$1Reviews.replace(\"$1\", _vm.totalRating) : _vm.i19basedOn$1Review.replace(\"$1\", _vm.totalRating))+\") \")])]),_c('sort',{on:{\"onSort\":_vm.onSort}})],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"mt-rating__order_by\">\n <svg width=\"24px\" height=\"24px\" viewBox=\"0 0 200 200\" xmlns=\"http://www.w3.org/2000/svg\">\n <title />\n <path d=\"M110.22,117.75h-80a10,10,0,0,0,0,20h80a10,10,0,0,0,0-20Z\" />\n <path\n d=\"M177.22,125.75a9.67,9.67,0,0,0-14,0l-8,7.5V42.75a10,10,0,0,0-20,0v113.5a8.29,8.29,0,0,0,3,8,9.67,9.67,0,0,0,14,0l24.5-24.5a10.13,10.13,0,0,0,.5-14Z\" />\n <path d=\"M110.22,37.75h-80a10,10,0,0,0,0,20h80a10,10,0,0,0,0-20Z\" />\n <path d=\"M30.22,97.75h70a10,10,0,0,0,0-20h-70a10,10,0,0,0,0,20Z\" />\n </svg>\n\n <select class=\"mt-select\" @change=\"e => $emit('onSort', { order: e.target.value })\">\n <option selected disabled>Ordenar</option>\n <option v-for=\"option in orderOptions\" :value=\"option.key\" :key=\"option.key\">\n {{ option.name }}\n </option>\n </select>\n </div>\n</template>\n\n<script>\nconst orderOptions = [\n {\n key: \"most_recent\",\n name: \"Recentes\",\n },\n {\n key: \"most_voted\",\n name: \"Mais úteis\",\n },\n {\n key: \"most_positive\",\n name: \"Positivas\",\n },\n {\n key: \"most_negative\",\n name: \"Negativas\",\n },\n];\n\nexport default {\n name: 'Sort',\n\n data() {\n return {\n orderOptions,\n };\n },\n};\n</script>\n\n<style>\n.mt-rating__order_by {\n display: flex;\n align-items: center;\n height: 40px;\n max-width: 130px;\n width: 100%;\n justify-content: flex-end;\n\n svg {\n fill: #6b6d76;\n }\n}\n\n.mt-select {\n height: 30px;\n border: none;\n background: transparent;\n line-height: 1.14;\n font-weight: 400;\n letter-spacing: normal;\n color: #6b6d76;\n font-size: 14px;\n}\n</style>\n","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Sort.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Sort.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Sort.vue?vue&type=template&id=12fb06a8\"\nimport script from \"./Sort.vue?vue&type=script&lang=js\"\nexport * from \"./Sort.vue?vue&type=script&lang=js\"\nimport style0 from \"./Sort.vue?vue&type=style&index=0&id=12fb06a8&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"mt-rating__order_by\"},[_c('svg',{attrs:{\"width\":\"24px\",\"height\":\"24px\",\"viewBox\":\"0 0 200 200\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('title'),_c('path',{attrs:{\"d\":\"M110.22,117.75h-80a10,10,0,0,0,0,20h80a10,10,0,0,0,0-20Z\"}}),_c('path',{attrs:{\"d\":\"M177.22,125.75a9.67,9.67,0,0,0-14,0l-8,7.5V42.75a10,10,0,0,0-20,0v113.5a8.29,8.29,0,0,0,3,8,9.67,9.67,0,0,0,14,0l24.5-24.5a10.13,10.13,0,0,0,.5-14Z\"}}),_c('path',{attrs:{\"d\":\"M110.22,37.75h-80a10,10,0,0,0,0,20h80a10,10,0,0,0,0-20Z\"}}),_c('path',{attrs:{\"d\":\"M30.22,97.75h70a10,10,0,0,0,0-20h-70a10,10,0,0,0,0,20Z\"}})]),_c('select',{staticClass:\"mt-select\",on:{\"change\":function (e) { return _vm.$emit('onSort', { order: e.target.value }); }}},[_c('option',{attrs:{\"selected\":\"\",\"disabled\":\"\"}},[_vm._v(\"Ordenar\")]),_vm._l((_vm.orderOptions),function(option){return _c('option',{key:option.key,domProps:{\"value\":option.key}},[_vm._v(\" \"+_vm._s(option.name)+\" \")])})],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Padrao.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Padrao.vue?vue&type=script&lang=js\"","<template>\n <div class=\"widget-sort\" v-if=\"totalRating > 0\">\n <span class=\"average_geral\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" :stroke=\"config.widget_review.star_color\"\n :fill=\"average > 0 ? config.widget_review.star_color : 'none'\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\n <defs>\n <linearGradient :id=\"'starGradient' + average\">\n <stop offset=\"0%\" :stop-color=\"config.widget_review.star_color\" />\n <stop :offset=\"((average < 5 ? average - 1 : average) / 5) *\n 100 +\n '%'\n \" :stop-color=\"config.widget_review.star_color\" />\n <stop :offset=\"((average < 5 ? average - 1 : average) / 5) *\n 100 +\n '%'\n \" stop-color=\"transparent\" />\n <stop offset=\"100%\" stop-color=\"transparent\" />\n </linearGradient>\n </defs>\n <path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path\n d=\"M8.243 7.34l-6.38 .925l-.113 .023a1 1 0 0 0 -.44 1.684l4.622 4.499l-1.09 6.355l-.013 .11a1 1 0 0 0 1.464 .944l5.706 -3l5.693 3l.1 .046a1 1 0 0 0 1.352 -1.1l-1.091 -6.355l4.624 -4.5l.078 -.085a1 1 0 0 0 -.633 -1.62l-6.38 -.926l-2.852 -5.78a1 1 0 0 0 -1.794 0l-2.853 5.78z\"\n :fill=\"`url(#starGradient${average})`\" />\n </svg>\n\n <strong>{{ average.toFixed(1) }}</strong> / 5\n\n <span class=\"baseado\" style=\"font-size: 10px; opacity: 0.8\">\n ({{\n totalRating > 1\n ? i19basedOn$1Reviews.replace(\"$1\", totalRating)\n : i19basedOn$1Review.replace(\"$1\", totalRating)\n }})\n </span>\n </span>\n\n <sort @onSort=\"onSort\" />\n </div>\n</template>\n\n<script>\nimport { configProp } from \"../../../utils/configProps\";\nimport Sort from \"../components/Sort.vue\";\n\nexport default {\n name: \"Padrao\",\n\n props: {\n ...configProp,\n config: {\n type: Object,\n required: true,\n },\n totalRating: {\n type: Number,\n required: true,\n },\n average: {\n type: Number,\n required: true,\n },\n },\n\n computed: {\n i19basedOn$1Reviews: () => \"Baseado em $1 avaliações\",\n i19basedOn$1Review: () => \"Baseado em $1 avaliação\",\n },\n\n methods: {\n onSort({ order }) {\n this.$emit('onSort', { order });\n },\n },\n\n components: {\n Sort,\n },\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.widget-sort {\n background-color: #ffecdb1a;\n border: 1px solid #ffecdb1a;\n border-radius: 0.25rem;\n margin-top: 1rem;\n margin-bottom: 1rem;\n // padding: 1rem 2rem;\n max-height: 30px;\n width: 100%;\n font-size: 1.25rem;\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n .average_geral {\n svg {\n vertical-align: baseline;\n }\n\n .baseado {\n @media (max-width: 580px) {\n display: none;\n }\n }\n }\n\n @media (max-width: 580px) {\n padding: 0;\n }\n\n}\n</style>\n","import { render, staticRenderFns } from \"./Padrao.vue?vue&type=template&id=3e1647aa&scoped=true\"\nimport script from \"./Padrao.vue?vue&type=script&lang=js\"\nexport * from \"./Padrao.vue?vue&type=script&lang=js\"\nimport style0 from \"./Padrao.vue?vue&type=style&index=0&id=3e1647aa&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3e1647aa\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}
@@ -1,2 +1,2 @@
1
- (window.webpackJsonpwidgetMartan=window.webpackJsonpwidgetMartan||[]).push([[8],{103:function(t,e,a){"use strict";a.r(e);var r=a(4);const o=[{key:"most_recent",name:"Recentes"},{key:"most_voted",name:"Mais úteis"},{key:"most_positive",name:"Positivas"},{key:"most_negative",name:"Negativas"}];var s={name:"Sort",data:()=>({orderOptions:o})},i=(a(92),a(3)),n=Object(i.a)(s,(function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"mt-rating__order_by"},[a("svg",{attrs:{width:"24px",height:"24px",viewBox:"0 0 200 200",xmlns:"http://www.w3.org/2000/svg"}},[a("title"),a("path",{attrs:{d:"M110.22,117.75h-80a10,10,0,0,0,0,20h80a10,10,0,0,0,0-20Z"}}),a("path",{attrs:{d:"M177.22,125.75a9.67,9.67,0,0,0-14,0l-8,7.5V42.75a10,10,0,0,0-20,0v113.5a8.29,8.29,0,0,0,3,8,9.67,9.67,0,0,0,14,0l24.5-24.5a10.13,10.13,0,0,0,.5-14Z"}}),a("path",{attrs:{d:"M110.22,37.75h-80a10,10,0,0,0,0,20h80a10,10,0,0,0,0-20Z"}}),a("path",{attrs:{d:"M30.22,97.75h70a10,10,0,0,0,0-20h-70a10,10,0,0,0,0,20Z"}})]),a("select",{staticClass:"mt-select",on:{change:function(e){return t.$emit("onSort",{order:e.target.value})}}},[a("option",{attrs:{selected:"",disabled:""}},[t._v("Ordenar")]),t._l(t.orderOptions,(function(e){return a("option",{key:e.key,domProps:{value:e.key}},[t._v(" "+t._s(e.name)+" ")])}))],2)])}),[],!1,null,null,null).exports,l={name:"Padrao",props:{...r.a,config:{type:Object,required:!0},totalRating:{type:Number,required:!0},average:{type:Number,required:!0}},computed:{i19basedOn$1Reviews:()=>"Baseado em $1 avaliações",i19basedOn$1Review:()=>"Baseado em $1 avaliação"},methods:{onSort({order:t}){this.$emit("onSort",{order:t})}},components:{Sort:n}},d=(a(94),Object(i.a)(l,(function(){var t=this,e=t.$createElement,a=t._self._c||e;return t.totalRating>0?a("div",{staticClass:"widget-sort"},[a("span",{staticClass:"average_geral"},[a("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",stroke:t.config.widget_review.star_color,fill:t.average>0?t.config.widget_review.star_color:"none","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"}},[a("defs",[a("linearGradient",{attrs:{id:"starGradient"+t.average}},[a("stop",{attrs:{offset:"0%","stop-color":t.config.widget_review.star_color}}),a("stop",{attrs:{offset:(t.average<5?t.average-1:t.average)/5*100+"%","stop-color":t.config.widget_review.star_color}}),a("stop",{attrs:{offset:(t.average<5?t.average-1:t.average)/5*100+"%","stop-color":"transparent"}}),a("stop",{attrs:{offset:"100%","stop-color":"transparent"}})],1)],1),a("path",{attrs:{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}}),a("path",{attrs:{d:"M8.243 7.34l-6.38 .925l-.113 .023a1 1 0 0 0 -.44 1.684l4.622 4.499l-1.09 6.355l-.013 .11a1 1 0 0 0 1.464 .944l5.706 -3l5.693 3l.1 .046a1 1 0 0 0 1.352 -1.1l-1.091 -6.355l4.624 -4.5l.078 -.085a1 1 0 0 0 -.633 -1.62l-6.38 -.926l-2.852 -5.78a1 1 0 0 0 -1.794 0l-2.853 5.78z",fill:"url(#starGradient"+t.average+")"}})]),a("strong",[t._v(t._s(t.average.toFixed(1)))]),t._v(" / 5 "),a("span",{staticClass:"baseado",staticStyle:{"font-size":"10px",opacity:"0.8"}},[t._v(" ("+t._s(t.totalRating>1?t.i19basedOn$1Reviews.replace("$1",t.totalRating):t.i19basedOn$1Review.replace("$1",t.totalRating))+") ")])]),a("sort",{on:{onSort:t.onSort}})],1):t._e()}),[],!1,null,"3e1647aa",null));e.default=d.exports},71:function(t,e,a){var r=a(93);r.__esModule&&(r=r.default),"string"==typeof r&&(r=[[t.i,r,""]]),r.locals&&(t.exports=r.locals);(0,a(9).default)("76dfa81d",r,!0,{})},72:function(t,e,a){var r=a(95);r.__esModule&&(r=r.default),"string"==typeof r&&(r=[[t.i,r,""]]),r.locals&&(t.exports=r.locals);(0,a(9).default)("526515bf",r,!0,{})},92:function(t,e,a){"use strict";a(71)},93:function(t,e,a){(e=a(8)(!1)).push([t.i,".mt-rating__order_by{align-items:center;display:flex;height:40px;justify-content:flex-end;max-width:130px;width:100%}.mt-rating__order_by svg{fill:#6b6d76}.mt-select{background:transparent;border:none;color:#6b6d76;font-size:14px;font-weight:400;height:30px;letter-spacing:normal;line-height:1.14}",""]),t.exports=e},94:function(t,e,a){"use strict";a(72)},95:function(t,e,a){(e=a(8)(!1)).push([t.i,".widget-sort[data-v-3e1647aa]{align-items:center;background-color:rgba(255,236,219,.102);border:1px solid rgba(255,236,219,.102);border-radius:.25rem;display:flex;font-size:1.25rem;justify-content:space-between;margin-bottom:1rem;margin-top:1rem;max-height:30px;width:100%}.widget-sort .average_geral svg[data-v-3e1647aa]{vertical-align:baseline}@media(max-width:580px){.widget-sort .average_geral .baseado[data-v-3e1647aa]{display:none}.widget-sort[data-v-3e1647aa]{padding:0}}",""]),t.exports=e}}]);
1
+ (window.webpackJsonpwidgetMartan=window.webpackJsonpwidgetMartan||[]).push([[8],{95:function(n,t,r){"use strict";r.d(t,"a",(function(){return e})),r.d(t,"b",(function(){return i}));const e={en_us:"Next",pt_br:"Próximo"},i={en_us:"Previous",pt_br:"Anterior"}}}]);
2
2
  //# sourceMappingURL=widget-martan.8.min.js.map