PageSourceSearch

https://stupendiumstore.com/assets/TmlGaugeChart.7b12c1a4.js

js stupendiumstore.com collected 2026-09-30 06:13:26 UTC 2,763 bytes, 2 lines download raw bytes

1import{C as T,A as R,D as k,m as B}from"./chart-mixins.aac7c441.js";import{N as W,D as $,W as D}from"./vue.00f7c436.js";import{_ as v}from"./index.474d7b13.js";import"./cjs.6582b67a.js";import"./sentry.09480738.js";T.register(R);const z={name:"TmlGaugeChart",components:{ChartJsDoughnut:k},mixins:[B],props:{target:{type:Number,required:!0},max:{type:Number,required:!0},title:{type:String},flipColours:{type:Boolean},usesMultipleColours:{default:!0,type:Boolean},suffix:{type:String,default:""}},data(){return{internalChartOptions:{rotation:270,circumference:180,cutout:"70%",scales:{y:{grid:{drawBorder:!1,display:!1},min:0,max:300,ticks:{display:!1}},x:{grid:{drawBorder:!1,display:!1},min:0,max:300,ticks:{display:!1}}},plugins:{legend:{display:!1}}}}},computed:{overrideColours(){const t=this.data.datasets[0].data[0];return this.shouldSetRed(t)?[this.chartColours[this.colourKeys.error][0],this.chartColours[this.colourKeys.error][4]]:[this.chartColours[this.colourKeys.primary][0],this.chartColours[this.colourKeys.primary][4]]}},watch:{data:{immediate:!0,handler(){this.data.datasets.forEach(t=>{const i=t.data[0];(i<this.target&&!this.flipColours||i<this.max)&&(this.data.labels.push("deficit"),this.data.datasets[0].data[1]=this.max-i)})}}},methods:{shouldSetRed(t){return t<this.target&&!this.flipColours||t>=this.target&&this.flipColours},createGaugePlugin(t,i){return{id:"gauge-chart-plugin",beforeDraw:a=>{const e=a.canvas.getContext("2d");if(!e)return;const o="Lato";let r="";typeof a.data.datasets[0].data[0]<"u"&&(r=a.data.datasets[0].data[0].toString());const l=25,p="#666";e.font=`${l}px ${o}`;let n=e.measureText(r).width,u=e.measureText(t).width*.8;switch(r.length){case 1:n*=3;break;case 2:n*=1.5;break;case 3:n*=1.2;break}t&&t.split(" ").length===1&&(u*=2);const y=a._metasets[0].data[0].innerRadius*2,s=a.chartArea,C=(s.right-s.left-a._metasets[0].data[0].innerRadius)/2,x=y/n,w=(C/2.5+s.left)/(u+n/2),d=Math.floor(l*x)/3,S=Math.floor(l*1.5*w),c=a._metasets[0].data[0].innerRadius*2,_=Math.min(d,c),b=Math.min(S,c);e.textAlign="center",e.textBaseline="middle";const f=(s.bottom-s.top-a._metasets[0].data[0].outerRadius)/2,m=(s.left+s.right)/2;let h=s.top+f+(s.bottom-s.top-f*2)/2+d;r.length>2&&(h+=r.length*4),e.font=`${_}px ${o}`,e.fillStyle=p,e.fillText(r+i,m,h),t&&(e.font=`${b}px ${o}`,e.fillText(t,m,h+d/1.2))}}}}};function A(t,i,a,g,e,o){const r=W("chart-js-doughnut");return $(),D(r,{"chart-data":t.chartData,"chart-options":t.mergedChartOptions,"chart-id":t.resolvedChartId,plugins:[o.createGaugePlugin(a.title,a.suffix)],width:t.width,height:t.height},null,8,["chart-data","chart-options","chart-id","plugins","width","height"])}const j=v(z,[["render",A]]);export{j as default};
2//# sourceMappingURL=TmlGaugeChart.7b12c1a4.js.map

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