UNPKG

highcharts

Version:
14 lines 4.01 kB
/** * Highcharts JS v12.5.0 (2026-01-12) * @module highcharts/modules/solid-gauge * @requires highcharts * @requires highcharts/highcharts-more * * Solid angular gauge module * * (c) 2010-2026 Highsoft AS * Author: Torstein Honsi * * A commercial license may be required depending on use. * See www.highcharts.com/license */import*as t from"../highcharts.js";var e,o,s={};s.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return s.d(e,{a:e}),e},s.d=(t,e)=>{for(var o in e)s.o(e,o)&&!s.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:e[o]})},s.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);let a=t.default;var r=s.n(a);let{defaultOptions:l}=r(),{noop:i}=r(),{addEvent:n,extend:d,isObject:h,merge:c,relativeLength:g}=r(),p={radius:0,scope:"stack",where:void 0};function u(t,e){return h(t)||(t={radius:t||0}),c(p,e,t)}let f=u,m=t.default.SeriesRegistry;var C=s.n(m);let y=t.default.Color,{parse:R}=s.n(y)(),{merge:v}=r();(e=o||(o={})).initDataClasses=function(t){let e=this.chart,o=this.legendItem=this.legendItem||{},s=this.options,a=t.dataClasses||[],r,l,i=e.options.chart.colorCount,n=0,d;this.dataClasses=l=[],o.labels=[];for(let t=0,o=a.length;t<o;++t)r=v(r=a[t]),l.push(r),(e.styledMode||!r.color)&&("category"===s.dataClassColor?(e.styledMode||(i=(d=e.options.colors||[]).length,r.color=d[n]),r.colorIndex=n,++n===i&&(n=0)):r.color=R(s.minColor).tweenTo(R(s.maxColor),o<2?.5:t/(o-1)))},e.initStops=function(){let t=this.options,e=this.stops=t.stops||[[0,t.minColor||""],[1,t.maxColor||""]];for(let t=0,o=e.length;t<o;++t)e[t].color=R(e[t][1])},e.normalizedValue=function(t){let e=this.max||0,o=this.min||0;return this.logarithmic&&(t=this.logarithmic.log2lin(t)),1-(e-t)/(e-o||1)},e.toColor=function(t,e){let o,s,a,r,l,i,n=this.dataClasses,d=this.stops;if(n){for(i=n.length;i--;)if(s=(l=n[i]).from,a=l.to,(void 0===s||t>=s)&&(void 0===a||t<=a)){r=l.color,e&&(e.dataClass=i,e.colorIndex=l.colorIndex);break}}else{for(o=this.normalizedValue(t),i=d.length;i--&&!(o>d[i][0]););s=d[i]||d[i+1],o=1-((a=d[i+1]||s)[0]-o)/(a[0]-s[0]||1),r=s.color.tweenTo(a.color,o)}return r};let x=o,{extend:A}=r(),b=function(t){A(t,x)},{gauge:M,pie:w}=C().seriesTypes,{clamp:I,extend:P,isNumber:k,merge:O,pick:j,pInt:S}=r();class T extends M{translate(){let t=this.yAxis;b(t),!t.dataClasses&&t.options.dataClasses&&t.initDataClasses(t.options),t.initStops(),M.prototype.translate.call(this)}drawPoints(){let t,e=this.yAxis,o=e.center,s=this.options,a=this.chart.renderer,r=s.overshoot,l=s.rounded&&void 0===s.borderRadius,i=k(r)?r/180*Math.PI:0;for(let r of(k(s.threshold)&&(t=e.startAngleRad+e.translate(s.threshold,void 0,void 0,void 0,!0)),this.thresholdAngleRad=j(t,e.startAngleRad),this.points))if(!r.isNull){let t=S(j(r.options.radius,s.radius,100))*o[2]/200,n=S(j(r.options.innerRadius,s.innerRadius,60))*o[2]/200,d=Math.min(e.startAngleRad,e.endAngleRad),h=Math.max(e.startAngleRad,e.endAngleRad),c=r.graphic,g=e.startAngleRad+e.translate(r.y,void 0,void 0,void 0,!0),p,u,m=e.toColor(r.y,r),C=r.getClassName();"none"===m&&(m=r.color||this.color||"none"),"none"!==m&&(r.color=m),g=I(g,d-i,h+i),!1===s.wrap&&(g=I(g,d,h));let y=l?(t-n)/2/t:0,R=Math.min(g,this.thresholdAngleRad)-y,v=Math.max(g,this.thresholdAngleRad)+y;v-R>2*Math.PI&&(v=R+2*Math.PI);let x=l?"50%":0;s.borderRadius&&(x=f(s.borderRadius).radius),r.shapeArgs=p={x:o[0],y:o[1],r:t,innerR:n,start:R,end:v,borderRadius:x},r.startR=t,c?(u=p.d,c.animate(P({fill:m},p)),u&&(p.d=u)):r.graphic=c=a.arc(p).attr({fill:m,"sweep-flag":0}).add(this.group),this.chart.styledMode?this.yAxis?.stops&&(C=C.replace(/highcharts-color-\d/gm,"").trim()):("square"!==s.linecap&&c.attr({"stroke-linecap":"round","stroke-linejoin":"round"}),c.attr({stroke:s.borderColor||"none","stroke-width":s.borderWidth||0})),c&&c.addClass(C)}}animate(t){t||(this.startAngleRad=this.thresholdAngleRad,w.prototype.animate.call(this,t))}}T.defaultOptions=O(M.defaultOptions,{colorByPoint:!0,dataLabels:{y:0}}),C().registerSeriesType("solidgauge",T);let _=r();export{_ as default};