UNPKG

highcharts

Version:
13 lines 5 kB
!/** * Highcharts JS v13.0.1 (2026-08-17) * @module highcharts/modules/variwide * @requires highcharts * * Highcharts variwide module * * (c) 2010-2026 Highsoft AS * Author: Torstein Hønsi * * A commercial license may be required depending on use, * see www.highcharts.com/license */function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(t._Highcharts,t._Highcharts.SeriesRegistry):"function"==typeof define&&define.amd?define("highcharts/modules/variwide",["highcharts/highcharts"],function(t){return e(t,t.SeriesRegistry)}):"object"==typeof exports?exports["highcharts/modules/variwide"]=e(t._Highcharts,t._Highcharts.SeriesRegistry):t.Highcharts=e(t.Highcharts,t.Highcharts.SeriesRegistry)}("u"<typeof window?this:window,(t,e)=>(()=>{"use strict";var i={512(t){t.exports=e},944(e){e.exports=t}};let s={};function r(t){let e=s[t];if(void 0!==e)return e.exports;let a=s[t]={exports:{}};return i[t](a,a.exports,r),a.exports}r.n=t=>{let e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{if(Array.isArray(e))for(var i=0;i<e.length;){var s=e[i++],a=e[i++];r.o(t,s)?0===a&&i++:0===a?Object.defineProperty(t,s,{enumerable:!0,value:e[i++]}):Object.defineProperty(t,s,{enumerable:!0,get:a})}else for(var s in e)r.o(e,s)&&!r.o(t,s)&&Object.defineProperty(t,s,{enumerable:!0,get:e[s]})},r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);let a={};r.d(a,{default:()=>w});var o=r(944),n=r.n(o),h=r(512),l=r.n(h);let{composed:p}=n();function c(t){this.variwide&&this.cross&&this.cross.attr("stroke-width",t.point?.crosshairWidth)}function d(){let t=this;this.chart.labelCollectors.push(function(){return t.variwide?t.tickPositions.filter(e=>!!t.ticks[e].label).map((e,i)=>{let s=t.ticks[e].label;return s.labelrank=t.zData?.[i],s}):[]})}function u(t){let e=this.axis,i=e.horiz?"x":"y";e.variwide&&(this[i+"Orig"]=t.pos[i],this.postTranslate(t.pos,i,this.pos))}function x(t,e,i){let s=this.axis,r=t[e]-s.pos;s.horiz||(r=s.len-r),r=s.series[0].postTranslate(i,r),s.horiz||(r=s.len-r),t[e]=s.pos+r}function f(t,e,i,s,r,a,o,n){let h=Array.prototype.slice.call(arguments,1),l=r?"x":"y";this.axis.variwide&&"number"==typeof this[l+"Orig"]&&(h[+!r]=this[l+"Orig"]);let p=t.apply(this,h);return this.axis.variwide&&this.axis.categories&&this.postTranslate(p,l,this.pos),p}let{column:{prototype:{pointClass:g}}}=l().seriesTypes,y=class extends g{isValid(){return(0,o.isNumber)(this.y)&&(0,o.isNumber)(this.z)}},{column:v}=l().seriesTypes;class m extends v{processData(t){this.totalZ=0,this.relZ=[],l().seriesTypes.column.prototype.processData.call(this,t);let e=this.getColumn("z");(this.xAxis.reversed?e.slice().reverse():e).forEach(function(t,e){this.relZ[e]=this.totalZ,this.totalZ+=t},this),this.xAxis.categories&&(this.xAxis.variwide=!0,this.xAxis.zData=e)}postTranslate(t,e,i){let s=this.xAxis,r=this.relZ,a=s.reversed?r.length-t:t,n=s.reversed?-1:1,h=s.toPixels(s.reversed?(s.dataMax||0)+s.pointRange:s.dataMin||0),l=s.toPixels(s.reversed?s.dataMin||0:(s.dataMax||0)+s.pointRange),p=Math.abs(l-h),c=this.totalZ,d=this.chart.inverted?l-(this.chart.plotTop-n*s.minPixelPadding):h-this.chart.plotLeft-n*s.minPixelPadding,u=a/r.length*p,x=(a+n)/r.length*p,f=(0,o.pick)(r[a],c)/c*p,g=(0,o.pick)(r[a+n],c)/c*p;return i&&(i.crosshairWidth=g-f),d+f+(e-(d+u))*(g-f)/(x-u)}translate(){this.crispOption=this.options.crisp,this.options.crisp=!1,super.translate(),this.options.crisp=this.crispOption}correctStackLabels(){let t,e,i,s,r=this.options,a=this.yAxis;for(let o of this.points)s=o.x,e=o.shapeArgs.width,(i=a.stacking.stacks[(this.negStacks&&o.y<(r.startFromThreshold?0:r.threshold)?"-":"")+this.stackKey])&&(t=i[s])&&!o.isNull&&t.setOffset(-(e/2)||0,e||0,void 0,void 0,o.plotX,this.xAxis)}getXExtremes(t){let e=(0,o.arrayMax)(t),i=this.getColumn("z")[t.indexOf(e)];return{min:(0,o.arrayMin)(t),max:e+(this.xAxis.categories?0:i)}}}m.compose=function(t,e){if((0,o.pushUnique)(p,"Variwide")){let i=e.prototype;(0,o.addEvent)(t,"afterDrawCrosshair",c),(0,o.addEvent)(t,"afterRender",d),(0,o.addEvent)(e,"afterGetPosition",u),i.postTranslate=x,(0,o.wrap)(i,"getLabelPosition",f)}},m.defaultOptions=(0,o.merge)(v.defaultOptions,{pointPadding:0,groupPadding:0}),(0,o.addEvent)(m,"afterColumnTranslate",function(){let t=this.xAxis,e=this.chart.inverted,i=-1;for(let s of this.points){let r,a;++i;let n=s.shapeArgs||{},{x:h=0,width:l=0}=n,{plotX:p=0,tooltipPos:c,z:d=0}=s;t.variwide?(r=this.postTranslate(i,h,s),a=this.postTranslate(i,h+l)):(r=p,a=t.translate(s.x+d,!1,!1,!1,!0)),this.crispOption&&(r=(0,o.crisp)(r,this.borderWidth),a=(0,o.crisp)(a,this.borderWidth)),n.x=r,n.width=Math.max(a-r,1),s.plotX=(r+a)/2,c&&(e?c[1]=t.len-n.x-n.width/2:c[0]=n.x+n.width/2)}this.options.stacking&&this.correctStackLabels()},{order:2}),(0,o.extend)(m.prototype,{irregularWidths:!0,keysAffectYAxis:["y"],pointArrayMap:["y","z"],parallelArrays:["x","y","z"],pointClass:y}),l().registerSeriesType("variwide",m);let b=n();m.compose(b.Axis,b.Tick);let w=n();return a.default})());