UNPKG

highcharts

Version:
11 lines 2.38 kB
/** * Highcharts JS v13.0.1 (2026-08-17) * @module highcharts/modules/data-sorting * @requires highcharts * * Data sorting module * * (c) 2025-2025 Torstein Honsi * * License: www.highcharts.com/license */import*as e from"../highcharts.js";let t={};t.n=e=>{let n=e&&e.__esModule?()=>e.default:()=>e;return t.d(n,{a:n}),n},t.d=(e,n)=>{if(Array.isArray(n))for(var a=0;a<n.length;){var r=n[a++],i=n[a++];t.o(e,r)?0===i&&a++:0===i?Object.defineProperty(e,r,{enumerable:!0,value:n[a++]}):Object.defineProperty(e,r,{enumerable:!0,get:i})}else for(var r in n)t.o(n,r)&&!t.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:n[r]})},t.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);let n=e.default;var a=t.n(n);function r(e){e.series.concat().sort((e,t)=>e.linkedSeries.length||t.linkedSeries.length?t.linkedSeries.length-e.linkedSeries.length:0).forEach(e=>{e.points||e.data||!e.enabledDataSorting||e.setData(e.options.data,!1)})}function i(e){var t;(0,n.extend)(e,{requireSorting:!1,sorted:!1,enabledDataSorting:!0,allowDG:!1}),(t=e.options).pointRange??(t.pointRange=1)}let o=a();({compose:function(e,t){(0,n.wrap)(t.prototype,"setData",function(e,t,...a){if(this.options.dataSorting?.enabled){if(!this.chart.hasInitializedLinkedSeries)return this;Array.isArray(t)&&(t=function(e,t){let{sortKey:a="y"}=e.options.dataSorting||{},r=function(e,t){return(0,n.defined)(t)&&e.pointClass.prototype.optionsToObject.call({series:e},t)||{}};return t.forEach((n,a)=>{t[a]=r(e,n),t[a].index=a}),t.concat().sort((e,t)=>{let r=(0,n.getNestedProperty)(a,e),i=(0,n.getNestedProperty)(a,t);return i<r?-1:+(i>r)}).forEach((e,t)=>{e.x=t}),e.linkedSeries&&e.linkedSeries.forEach(e=>{let n=e.options,a=n.data;!n.dataSorting?.enabled&&a&&(a.forEach((n,i)=>{a[i]=r(e,n),t[i]&&(a[i].x=t[i].x,a[i].index=i)}),e.setData(a,!1))}),t}(this,t))}return e.apply(this,[t].concat(a))}),(0,n.addEvent)(e,"beforeRender",function(){r(this)}),(0,n.addEvent)(e,"afterLinkSeries",function(){this.series.forEach(e=>{e.linkedParent?.enabledDataSorting&&i(e)}),this.hasInitializedLinkedSeries=!0}),(0,n.addEvent)(e,"afterAddSeries",function({series:e}){e.enabledDataSorting&&e.setData(e.options.data,!1)}),(0,n.addEvent)(t,"afterUpdate",function(){r(this.chart)}),(0,n.addEvent)(t,"afterInit",function(){this.options.dataSorting?.enabled&&i(this)})}}).compose(o.Chart,o.Series);let s=a();export{s as default};