!/**
 * Highcharts JS v12.5.0 (2026-01-12)
 * @module highcharts/modules/series-on-point
 * @requires highcharts
 *
 * Series on point module
 *
 * (c) 2010-2026 Highsoft AS
 * Author: Rafal Sebestjanski and Piotr Madej
 *
 * 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.Point,t._Highcharts.SeriesRegistry,t._Highcharts.SVGRenderer):"function"==typeof define&&define.amd?define("highcharts/modules/series-on-point",["highcharts/highcharts"],function(t){return e(t,t.Point,t.SeriesRegistry,t.SVGRenderer)}):"object"==typeof exports?exports["highcharts/modules/series-on-point"]=e(t._Highcharts,t._Highcharts.Point,t._Highcharts.SeriesRegistry,t._Highcharts.SVGRenderer):t.Highcharts=e(t.Highcharts,t.Highcharts.Point,t.Highcharts.SeriesRegistry,t.Highcharts.SVGRenderer)}("u"<typeof window?this:window,(t,e,s,o)=>(()=>{"use strict";var r,i,n,h={260:t=>{t.exports=e},512:t=>{t.exports=s},540:t=>{t.exports=o},944:e=>{e.exports=t}},a={};function l(t){var e=a[t];if(void 0!==e)return e.exports;var s=a[t]={exports:{}};return h[t](s,s.exports,l),s.exports}l.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return l.d(e,{a:e}),e},l.d=(t,e)=>{for(var s in e)l.o(e,s)&&!l.o(t,s)&&Object.defineProperty(t,s,{enumerable:!0,get:e[s]})},l.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var u={};l.d(u,{default:()=>Y});var c=l(944),p=l.n(c);(r=i||(i={})).setLength=function(t,e,s){return Array.isArray(t)?(t.length=e,t):t[s?"subarray":"slice"](0,e)},r.splice=function(t,e,s,o,r=[]){if(Array.isArray(t))return Array.isArray(r)||(r=Array.from(r)),{removed:t.splice(e,s,...r),array:t};let i=Object.getPrototypeOf(t).constructor,n=t[o?"subarray":"slice"](e,e+s),h=new i(t.length-s+r.length);return h.set(t.subarray(0,e),0),h.set(r,e),h.set(t.subarray(e+s),e+r.length),{removed:n,array:h}},r.convertToNumber=function(t,e){switch(typeof t){case"boolean":return+!!t;case"number":return isNaN(t)&&!e?null:t;default:return isNaN(t=parseFloat(`${t??""}`))&&!e?null:t}};let{setLength:d,splice:f}=i,{fireEvent:g,objectEach:y,uniqueKey:m}=p(),w=class{constructor(t={}){this.autoId=!t.id,this.columns={},this.id=t.id||m(),this.rowCount=0,this.versionTag=m();let e=0;y(t.columns||{},(t,s)=>{this.columns[s]=t.slice(),e=Math.max(e,t.length)}),this.applyRowCount(e)}applyRowCount(t){this.rowCount=t,y(this.columns,(e,s)=>{e.length!==t&&(this.columns[s]=d(e,t))})}deleteRows(t,e=1){if(e>0&&t<this.rowCount){let s=0;y(this.columns,(o,r)=>{this.columns[r]=f(o,t,e).array,s=o.length}),this.rowCount=s}g(this,"afterDeleteRows",{rowIndex:t,rowCount:e}),this.versionTag=m()}getColumn(t,e){return this.columns[t]}getColumns(t,e){return(t||Object.keys(this.columns)).reduce((t,e)=>(t[e]=this.columns[e],t),{})}getRow(t,e){return(e||Object.keys(this.columns)).map(e=>this.columns[e]?.[t])}setColumn(t,e=[],s=0,o){this.setColumns({[t]:e},s,o)}setColumns(t,e,s){let o=this.rowCount;y(t,(t,e)=>{this.columns[e]=t.slice(),o=t.length}),this.applyRowCount(o),s?.silent||(g(this,"afterSetColumns"),this.versionTag=m())}setRow(t,e=this.rowCount,s,o){let{columns:r}=this,i=s?this.rowCount+1:e+1,n=Object.keys(t);if(o?.addColumns!==!1)for(let t=0,e=n.length;t<e;t++){let e=n[t];r[e]||(r[e]=[])}y(r,(n,h)=>{n||o?.addColumns===!1||(n=Array(i)),n&&(s?n=f(n,e,0,!0,[t[h]??null]).array:n[e]=t[h]??null,r[h]=n)}),i>this.rowCount&&this.applyRowCount(i),o?.silent||(g(this,"afterSetRows"),this.versionTag=m())}getModified(){return this.modified||this}};var b=l(260),C=l.n(b),x=l(512),P=l.n(x),R=l(540),v=l.n(R);let{composed:S}=p(),{bubble:H}=P().seriesTypes,{addEvent:A,defined:O,find:_,isNumber:j,pushUnique:G}=p();var T=n||(n={});T.compose=function(t,e){if(G(S,"SeriesOnPoint")){let{chartGetZData:s,seriesAfterInit:o,seriesAfterRender:r,seriesGetCenter:i,seriesShowOrHide:n,seriesTranslate:h}=E.prototype;t.types.pie.prototype.onPointSupported=!0,A(t,"afterInit",o),A(t,"afterRender",r),A(t,"afterGetCenter",i),A(t,"hide",n),A(t,"show",n),A(t,"translate",h),A(e,"beforeRender",s),A(e,"beforeRedraw",s)}return t};class E{constructor(t){this.getColumn=H.prototype.getColumn,this.getRadii=H.prototype.getRadii,this.getRadius=H.prototype.getRadius,this.getPxExtremes=H.prototype.getPxExtremes,this.getZExtremes=H.prototype.getZExtremes,this.chart=t.chart,this.series=t,this.options=t.options.onPoint}drawConnector(){this.connector||(this.connector=this.series.chart.renderer.path().addClass("highcharts-connector-seriesonpoint").attr({zIndex:-1}).add(this.series.markerGroup));let t=this.getConnectorAttributes();t&&this.connector.animate(t)}getConnectorAttributes(){let t=this.series.chart,e=this.options;if(!e)return;let s=e.connectorOptions||{},o=e.position,r=t.get(e.id);if(!(r instanceof C())||!o||!O(r.plotX)||!O(r.plotY))return;let i=O(o.x)?o.x:r.plotX,n=O(o.y)?o.y:r.plotY,h=i+(o.offsetX||0),a=n+(o.offsetY||0),l=s.width||1,u=s.stroke||this.series.color,c=s.dashstyle,p={d:v().prototype.crispLine([["M",i,n],["L",h,a]],l),"stroke-width":l};return t.styledMode||(p.stroke=u,p.dashstyle=c),p}seriesAfterInit(){this.onPointSupported&&this.options.onPoint&&(this.bubblePadding=!0,this.useMapGeometry=!0,this.onPoint=new E(this))}seriesAfterRender(){delete this.chart.bubbleZExtremes,this.onPoint&&this.onPoint.drawConnector()}seriesGetCenter(t){let e=this.options.onPoint,s=t.positions;if(e){let t=this.chart.get(e.id);t instanceof C()&&O(t.plotX)&&O(t.plotY)&&(s[0]=t.plotX,s[1]=t.plotY);let o=e.position;o&&(O(o.x)&&(s[0]=o.x),O(o.y)&&(s[1]=o.y),o.offsetX&&(s[0]+=o.offsetX),o.offsetY&&(s[1]+=o.offsetY))}let o=this.radii&&this.radii[this.index];j(o)&&(s[2]=2*o),t.positions=s}seriesShowOrHide(){let t=this.chart.series;this.points?.forEach(e=>{let s=_(t,t=>{let s=((t.onPoint||{}).options||{}).id;return!!s&&s===e.id});s&&s.setVisible(!s.visible,!1)})}seriesTranslate(){this.onPoint&&(this.onPoint.getRadii(),this.radii=this.onPoint.radii)}chartGetZData(){let t=[];this.series.forEach(e=>{let s=e.options.onPoint;t.push(s?.z??null)});let e=new w({columns:{z:t}});this.series.forEach(t=>{t.onPoint&&(t.onPoint.dataTable=t.dataTable=e)})}}T.Additions=E;let k=n,X=p();k.compose(X.Series,X.Chart);let Y=p();return u.default})());