highcharts
Version:
JavaScript charting framework
13 lines • 18.5 kB
JavaScript
/**
* Highcharts JS v12.6.0 (2026-04-13)
* @module highcharts/modules/data
* @requires highcharts
*
* Data module
*
* (c) 2012-2026 Highsoft AS
* Author: Torstein Hønsi
*
* A commercial license may be required depending on use.
* See www.highcharts.com/license
*/import*as e from"../highcharts.js";var t={};t.n=e=>{var n=e&&e.__esModule?()=>e.default:()=>e;return t.d(n,{a:n}),n},t.d=(e,n)=>{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 r=t.n(n);let{doc:s,win:i}=r();function a(e,t,n,s={}){let i="function"==typeof e&&e.prototype||e;Object.hasOwnProperty.call(i,"hcEvents")||(i.hcEvents={});let o=i.hcEvents;r().Point&&e instanceof r().Point&&e.series&&e.series.chart&&(e.series.chart.runTrackerClick=!0);let l=e.addEventListener;l&&l.call(e,t,n,!!r().supportsPassiveEvents&&{passive:void 0===s.passive?-1!==t.indexOf("touch"):s.passive,capture:!1}),o[t]||(o[t]=[]);let u={fn:n,order:"number"==typeof s.order?s.order:1/0};return o[t].push(u),o[t].sort((e,t)=>e.order-t.order),function(){!function(e,t,n){function r(t,n){let r=e.removeEventListener;r&&r.call(e,t,n,!1)}function s(n){let s,i;e.nodeName&&(t?(s={})[t]=!0:s=n,m(s,function(e,t){if(n[t])for(i=n[t].length;i--;)r(t,n[t][i].fn)}))}let i="function"==typeof e&&e.prototype||e;if(Object.hasOwnProperty.call(i,"hcEvents")){let e=i.hcEvents;if(t){let i=e[t]||[];n?(e[t]=i.filter(function(e){return n!==e.fn}),r(t,n)):(s(e),e[t]=[])}else s(e),delete i.hcEvents}}(e,t,n)}}function o(e){return null!=e}function l(e,t){let n;for(n in e||(e={}),t)e[n]=t[n];return e}function u(e){o(e)&&clearTimeout(e)}function h(e){return p(e)&&"number"==typeof e.nodeType}function d(e){return"number"==typeof e&&!isNaN(e)&&e<1/0&&e>-1/0}function c(e){let t=Object.prototype.toString.call(e);return"[object Array]"===t||"[object Array Iterator]"===t}function p(e,t){return!!e&&"object"==typeof e&&(!t||!c(e))}function f(e,...t){let n,r=[e,...t],s={},i=function(e,t){return"object"!=typeof e&&(e={}),m(t,function(n,r){if("__proto__"!==r&&"constructor"!==r){let s;!p(n,!0)||(s=n?.constructor,p(n,!0)&&!h(n)&&s?.name&&"Object"!==s.name)||h(n)?e[r]=t[r]:e[r]=i(e[r]||{},n)}}),e};!0===e&&(s=r[1],r=Array.prototype.slice.call(r,2));let a=r.length;for(n=0;n<a;n++)s=i(s,r[n]);return s}function m(e,t,n){for(let r in e)Object.hasOwnProperty.call(e,r)&&t.call(n||e[r],e[r],r,e)}function g(){let e=arguments,t=e.length;for(let n=0;n<t;n++){let t=e[n];if(null!=t)return t}}Array.prototype.find;let{win:v}=r(),y={ajax:function(e){let t={json:"application/json",xml:"application/xml",text:"text/plain",octet:"application/octet-stream"},n=new XMLHttpRequest;function r(t,n){e.error&&e.error(t,n)}if(!e.url)return!1;n.open((e.type||"get").toUpperCase(),e.url,!0),e.headers?.["Content-Type"]||n.setRequestHeader("Content-Type",t[e.dataType||"json"]||t.text),m(e.headers,function(e,t){n.setRequestHeader(t,e)}),e.responseType&&(n.responseType=e.responseType),n.onreadystatechange=function(){let t;if(4===n.readyState){if(200===n.status){if("blob"!==e.responseType&&(t=n.responseText,"json"===e.dataType))try{t=JSON.parse(t)}catch(e){if(e instanceof Error)return r(n,e)}return e.success?.(t,n)}r(n,n.responseText)}},e.data&&"string"!=typeof e.data&&(e.data=JSON.stringify(e.data)),n.send(e.data)},getJSON:function(e,t){y.ajax({url:e,success:t,dataType:"json",headers:{"Content-Type":"text/plain"}})}};y.post=async function(e,t,n){let r=new v.FormData;m(t,function(e,t){r.append(t,e)}),r.append("b64","true");let s=await v.fetch(e,{method:"POST",body:r,...n});if(s.ok){let e=await s.text(),n=document.createElement("a");n.href=`data:${t.type};base64,${e}`,n.download=t.filename,n.click(),n?.parentElement?.removeChild(n)}};let x=e.default.Axis;var T=t.n(x);let C=e.default.Chart;var N=t.n(C);let R=e.default.Point;var A=t.n(R);let E=e.default.SeriesRegistry;var D=t.n(E);let{getOptions:O}=r(),{doc:Y}=r(),{ajax:b}=y,{seriesTypes:w}=D();function U(e){return!!(e&&(e.rowsURL||e.csvURL||e.columnsURL))}class F{static data(e,t={},n){return new F(e,t,n)}static rowsToColumns(e){let t,n,r,s,i;if(e)for(t=0,i=[],n=e.length;t<n;t++)for(r=0,s=e[t].length;r<s;r++)i[r]||(i[r]=[]),i[r][t]=e[t][r];return i}constructor(e,t={},n){this.rowsToColumns=F.rowsToColumns,this.dateFormats={"YYYY/mm/dd":{regex:/^(\d{4})[\-\/\.](\d{1,2})[\-\/\.](\d{1,2})$/,parser:function(e){return e?Date.UTC(+e[1],e[2]-1,+e[3]):NaN}},"dd/mm/YYYY":{regex:/^(\d{1,2})[\-\/\.](\d{1,2})[\-\/\.](\d{4})$/,parser:function(e){return e?Date.UTC(+e[3],e[2]-1,+e[1]):NaN},alternative:"mm/dd/YYYY"},"mm/dd/YYYY":{regex:/^(\d{1,2})[\-\/\.](\d{1,2})[\-\/\.](\d{4})$/,parser:function(e){return e?Date.UTC(+e[3],e[1]-1,+e[2]):NaN}},"dd/mm/YY":{regex:/^(\d{1,2})[\-\/\.](\d{1,2})[\-\/\.](\d{2})$/,parser:function(e){if(!e)return NaN;let t=new Date,n=+e[3];return n>t.getFullYear()-2e3?n+=1900:n+=2e3,Date.UTC(n,e[2]-1,+e[1])},alternative:"mm/dd/YY"},"mm/dd/YY":{regex:/^(\d{1,2})[\-\/\.](\d{1,2})[\-\/\.](\d{2})$/,parser:function(e){return e?Date.UTC(+e[3]+2e3,e[1]-1,+e[2]):NaN}}},this.chart=n,this.chartOptions=t,this.options=e,this.rawColumns=[],this.init(e,t,n)}init(e,t,n){let r=e.decimalPoint,s;t&&(this.chartOptions=t),n&&(this.chart=n),"."!==r&&","!==r&&(r=void 0),this.options=e,this.columns=e.columns||this.rowsToColumns(e.rows)||[],this.firstRowAsNames=g(e.firstRowAsNames,this.firstRowAsNames,!0),this.decimalRegex=r&&RegExp("^(-?[0-9]+)"+r+"([0-9]+)$"),void 0!==this.liveDataTimeout&&u(this.liveDataTimeout),this.rawColumns=[],this.columns.length&&(this.dataFound(),s=!U(e)),s||(s=this.fetchLiveData()),s||(s=!!this.parseCSV().length),s||(s=!!this.parseTable().length),s||(s=this.parseGoogleSpreadsheet()),!s&&e.afterComplete&&e.afterComplete(this)}getColumnDistribution(){let e=this.chartOptions,t=this.options,n=[],r=function(e="line"){return(w[e].prototype.pointArrayMap||[0]).length},s=function(e="line"){return w[e].prototype.pointArrayMap},i=e?.chart?.type,a=[],l=[],u=t?.seriesMapping||e?.series?.map(function(){return{x:0}})||[],h=0;(e?.series||[]).forEach(e=>{a.push(r(e.type||i))}),u.forEach(e=>{n.push(e.x||0)}),0===n.length&&n.push(0),u.forEach(t=>{let n=new j,u=a[h]||r(i),d=(e?.series??[])[h]??{},c=s(d.type||i),p=c??["y"];(o(t.x)||d.isCartesian||!c)&&n.addColumnReader(t.x,"x"),m(t,function(e,t){"x"!==t&&n.addColumnReader(e,t)});for(let e=0;e<u;e++)n.hasReader(p[e])||n.addColumnReader(void 0,p[e]);l.push(n),h++});let d=s(i);void 0===d&&(d=["y"]),this.valueCount={global:r(i),xColumns:n,individual:a,seriesBuilders:l,globalPointArrayMap:d}}dataFound(){this.options.switchRowsAndColumns&&(this.columns=this.rowsToColumns(this.columns)),this.getColumnDistribution(),this.parseTypes(),!1!==this.parsed()&&this.complete()}parseCSV(e){let t=this,n=this.columns=[],i=e||this.options,a=i.startColumn||0,o=i.endColumn||Number.MAX_VALUE,u=[],h={",":0,";":0," ":0},d=i.csv,c=i.startRow||0,p=i.endRow||Number.MAX_VALUE,f,m,g=0;if(d&&i.beforeParse&&(d=i.beforeParse.call(this,d,this)),d){if(m=d.replace(/\r\n/g,"\n").replace(/\r/g,"\n").split(i.lineDelimiter||"\n"),(!c||c<0)&&(c=0),(!p||p>=m.length)&&(p=m.length-1),i.itemDelimiter)f=i.itemDelimiter;else{let e,n,r;e=0,n=0,r=!1,m.some(function(t,r){let s=!1,i,a,o,l="";if(r>13)return!0;for(let r=0;r<t.length;r++){if(i=t[r],a=t[r+1],o=t[r-1],"#"===i)return;if('"'===i)if(s){if('"'!==o&&'"'!==a){for(;" "===a&&r<t.length;)a=t[++r];void 0!==h[a]&&h[a]++,s=!1}}else s=!0;else void 0!==h[i]?(isNaN(Date.parse(l=l.trim()))?(isNaN(l)||!isFinite(l))&&h[i]++:h[i]++,l=""):l+=i;","===i&&n++,"."===i&&e++}}),h[";"]>h[","]?r=";":(h[","],h[";"],r=","),i.decimalPoint||(e>n?i.decimalPoint=".":i.decimalPoint=",",t.decimalRegex=RegExp("^(-?[0-9]+)"+i.decimalPoint+"([0-9]+)$")),f=r}let e=0;for(g=c;g<=p;g++)"#"===m[g][0]?e++:function(e,t,r,s){let l=0,h="",d="",c="",p="",m=0,g=0;function v(t){h=e[t],d=e[t-1],c=e[t+1]}function y(e){u.length<g+1&&u.push([e]),u[g][u[g].length-1]!==e&&u[g].push(e)}function x(){if(a>m||m>o){++m,p="";return}i.columnTypes||(!isNaN(parseFloat(p))&&isFinite(p)?(p=parseFloat(p),y("number")):isNaN(Date.parse(p))?y("string"):(p=p.replace(/\//g,"-"),y("date"))),n.length<g+1&&n.push([]),n[g][t]=p,p="",++g,++m}if(e.trim().length&&"#"!==e.trim()[0]){for(;l<e.length;l++)if(v(l),'"'===h)for(v(++l);l<e.length&&('"'!==h||'"'===d||'"'===c);)('"'!==h||'"'===h&&'"'!==d)&&(p+=h),v(++l);else h===f?x():p+=h;x()}}(m[g],g-c-e);(!i.columnTypes||0===i.columnTypes.length)&&u.length&&u[0].length&&"date"===u[0][1]&&!i.dateFormat&&(i.dateFormat=function(e,n){let a="YYYY/mm/dd",o=[],u=[],h,d=[],c,p=0,f=!1,m;for((!n||n>e.length)&&(n=e.length);p<n;p++)if(void 0!==e[p]&&e[p]?.length)for(m=0,h=e[p].trim().replace(/\//g," ").replace(/\-/g," ").replace(/\./g," ").split(" "),d=["","",""];m<h.length;m++)m<d.length&&(h[m]=parseInt(h[m],10),h[m]&&(u[m]=!u[m]||u[m]<h[m]?h[m]:u[m],void 0!==o[m]?o[m]!==h[m]&&(o[m]=!1):o[m]=h[m],h[m]>31?h[m]<100?d[m]="YY":d[m]="YYYY":h[m]>12&&h[m]<=31?(d[m]="dd",f=!0):d[m].length||(d[m]="mm")));if(f){for(m=0;m<o.length;m++)!1!==o[m]?u[m]>12&&"YY"!==d[m]&&"YYYY"!==d[m]&&(d[m]="YY"):u[m]>12&&"mm"===d[m]&&(d[m]="dd");return(3===d.length&&"dd"===d[1]&&"dd"===d[2]&&(d[2]="YY"),c=d.join("/"),(i.dateFormats||t.dateFormats)[c])?c:(!function(e,t,n,i){if(n=n||{},s?.createEvent&&(e.dispatchEvent||e.fireEvent&&e!==r())){let r=s.createEvent("Events");r.initEvent(t,!0,!0),n=l(r,n),e.dispatchEvent?e.dispatchEvent(n):e.fireEvent(t,n)}else if(e.hcEvents){n.target||l(n,{preventDefault:function(){n.defaultPrevented=!0},target:e,type:t});let r=[],s=e,i=!1;for(;s.hcEvents;)Object.hasOwnProperty.call(s,"hcEvents")&&s.hcEvents[t]&&(r.length&&(i=!0),r.unshift.apply(r,s.hcEvents[t])),s=Object.getPrototypeOf(s);i&&r.sort((e,t)=>e.order-t.order),r.forEach(t=>{!1===t.fn.call(e,n,e)&&n.preventDefault()})}}(t,"deduceDateFailed"),a)}return a}(n[0])),this.dataFound()}return n}parseTable(){let e=this.options,t=this.columns||[],n=e.startRow||0,r=e.endRow||Number.MAX_VALUE,s=e.startColumn||0,i=e.endColumn||Number.MAX_VALUE;if(e.table){let a=e.table;"string"==typeof a&&(a=Y.getElementById(a)),[].forEach.call(a.getElementsByTagName("tr"),(e,a)=>{a>=n&&a<=r&&[].forEach.call(e.children,(e,r)=>{let o=t[r-s],l=1;if(("TD"===e.tagName||"TH"===e.tagName)&&r>=s&&r<=i)for(t[r-s]||(t[r-s]=[]),t[r-s][a-n]=e.innerHTML;a-n>=l&&void 0===o[a-n-l];)o[a-n-l]=null,l++})}),this.dataFound()}return t}fetchLiveData(){let e=this,t=this.chart,n=this.options,r=n.enablePolling,s=f(n),i=0,a=1e3*(n.dataRefreshRate||2);return!!U(n)&&(a<1e3&&(a=1e3),delete n.csvURL,delete n.rowsURL,delete n.columnsURL,!function o(l){function h(s,h,d){if(!s||!/^(http|\/|\.\/|\.\.\/)/.test(s))return s&&n.error&&n.error("Invalid URL"),!1;function c(){r&&t.liveDataURL===s&&(e.liveDataTimeout=setTimeout(o,a))}return l&&(u(e.liveDataTimeout),t.liveDataURL=s),b({url:s,dataType:d||"json",success:function(e){t?.series&&h(e),c()},error:function(e,t){return++i<3&&c(),n.error?.(t,e)}}),!0}h(s.csvURL,function(e){t.update({data:{csv:e}})},"text")||h(s.rowsURL,function(e){t.update({data:{rows:e}})})||h(s.columnsURL,function(e){t.update({data:{columns:e}})})}(!0),U(n))}parseGoogleSpreadsheet(){let e=this,t=this.options,n=t.googleSpreadsheetKey,r=this.chart,s=Math.max(1e3*(t.dataRefreshRate||2),4e3);return n&&(delete t.googleSpreadsheetKey,!function r(i){b({url:["https://sheets.googleapis.com/v4/spreadsheets",n,"values",(()=>{if(t.googleSpreadsheetRange)return t.googleSpreadsheetRange;let e="ABCDEFGHIJKLMNOPQRSTUVWXYZ",n=(e.charAt(t.startColumn||0)||"A")+((t.startRow||0)+1),r=e.charAt(g(t.endColumn,-1))||"ZZ";return o(t.endRow)&&(r+=t.endRow+1),`${n}:${r}`})(),"?alt=json&majorDimension=COLUMNS&valueRenderOption=UNFORMATTED_VALUE&dateTimeRenderOption=FORMATTED_STRING&key="+t.googleAPIKey].join("/"),dataType:"json",success:function(n){i(n),t.enablePolling&&(e.liveDataTimeout=setTimeout(function(){r(i)},s))},error:function(e,n){return t.error?.(n,e)}})}(function(t){let n=t.values;if(!n||0===n.length)return!1;let s=n.reduce((e,t)=>Math.max(e,t.length),0);n.forEach(e=>{for(let t=0;t<s;t++)void 0===e[t]&&(e[t]=null)}),r?.series?r.update({data:{columns:n}}):(e.columns=n,e.dataFound())})),!1}trim(e,t){return"string"==typeof e&&(e=e.replace(/^\s+|\s+$/g,""),t&&/[\d\s]+/.test(e)&&(e=e.replace(/\s/g,"")),this.decimalRegex&&(e=e.replace(this.decimalRegex,"$1.$2"))),e}parseTypes(){let e=this.columns||[],t=e.length;for(;t--;)this.parseColumn(e[t],t)}parseColumn(e,t){var n;let r=this.rawColumns,s=this.columns=this.columns||[],i=this.firstRowAsNames,a=this.valueCount?.xColumns.indexOf(t)!==-1,l=[],u=this.chartOptions,h=(this.options.columnTypes||[])[t],p=a&&u?.xAxis&&"category"===(c(n=u.xAxis)?n:[n])[0].type||"string"===h,f=o(e.name),m=e.length,g,v,y,x,T,C,N;for(r[t]||(r[t]=[]);m--;)g=l[m]||e[m],y=this.trim(g),v=parseFloat(x=this.trim(g,!0)),void 0===r[t][m]&&(r[t][m]=y),p||0===m&&i&&!f?e[m]=""+y:+x===v?(e[m]=v,v>31536e6&&"float"!==h?e.isDatetime=!0:e.isNumeric=!0,void 0!==e[m+1]&&(N=v>e[m+1])):(y?.length&&(T=this.parseDate(g)),a&&d(T)&&"float"!==h?(l[m]=g,e[m]=T,e.isDatetime=!0,void 0!==e[m+1]&&((C=T>e[m+1])!==N&&void 0!==N&&(this.alternativeFormat?(this.dateFormat=this.alternativeFormat,m=e.length,this.alternativeFormat=this.dateFormats[this.dateFormat].alternative):e.unsorted=!0),N=C)):(e[m]=""===y?null:y,0!==m&&(e.isDatetime||e.isNumeric)&&(e.mixed=!0)));if(a&&e.mixed&&(s[t]=r[t]),a&&N&&this.options.sort){for(t=0;t<s.length;t++)if(s[t].reverse(),i){let e=s[t].pop();e&&s[t].unshift(e)}}}parseDate(e){let t=this.options.parseDate,n,r,s,i=this.options.dateFormat||this.dateFormat,a;if(t)n=t(e);else if("string"==typeof e){if(i)(s=this.dateFormats[i])||(s=this.dateFormats["YYYY/mm/dd"]),(a=e.match(s.regex))&&(n=s.parser(a));else for(r in this.dateFormats)if(s=this.dateFormats[r],a=e.match(s.regex)){this.dateFormat=i=r,this.alternativeFormat=s.alternative,n=s.parser(a);break}!a&&(e.match(/:.+(GMT|UTC|[Z+\-])/)&&(e=e.replace(/\s*(?:GMT|UTC)?([+\-])(\d\d)(\d\d)$/,"$1$2:$3").replace(/(?:\s+|GMT|UTC)([+\-])/,"$1").replace(/(\d)\s*(?:GMT|UTC|Z)$/,"$1+00:00")),"object"==typeof(a=Date.parse(e))&&null!==a&&a.getTime?n=a.getTime()-6e4*a.getTimezoneOffset():d(a)&&(n=a-6e4*new Date(a).getTimezoneOffset()))}return n}getData(){if(this.columns)return this.rowsToColumns(this.columns)?.slice(1)}parsed(){if(this.options.parsed)return this.options.parsed.call(this,this.columns,this)}complete(){let e=this.columns=this.columns||[],t=this.options,n=[],r="linear",s,i,a,l,u,h,d,c,p,m,v;if([].length=e.length,t.complete||t.afterComplete){if(this.firstRowAsNames)for(a=0;a<e.length;a++){let t=e[a];o(t.name)||(t.name=g(t.shift(),"").toString())}for(h=0,s=[],p=function(e,t){let n,r,s,i=[],a=[];for(r=0;r<e;r+=1)i.push(!0);for(n=0;n<t.length;n+=1)for(r=0,s=t[n].getReferencedColumnIndexes();r<s.length;r+=1)i[s[r]]=!1;for(r=0;r<i.length;r+=1)i[r]&&a.push(r);return a}(e?.length||0,this.valueCount.seriesBuilders);h<this.valueCount.seriesBuilders.length;h++)(c=this.valueCount.seriesBuilders[h]).populateColumns(p)&&n.push(c);for(;p.length>0;){for((c=new j).addColumnReader(0,"x"),-1!==(v=p.indexOf(0))&&p.splice(v,1),a=0;a<this.valueCount.global;a++)c.addColumnReader(void 0,this.valueCount.globalPointArrayMap[a]);c.populateColumns(p)&&n.push(c)}if(n.length>0&&n[0].readers.length>0&&void 0!==(m=e?.[n[0].readers[0].columnIndex??-1])&&(m.isDatetime?r="datetime":m.isNumeric||(r="category")),"category"===r)for(h=0;h<n.length;h++)for(u=0,c=n[h];u<c.readers.length;u++)"x"===c.readers[u].configName&&(c.readers[u].configName="name");for(h=0;h<n.length;h++){for(l=0,c=n[h],i=[];l<e[0].length;l++)i[l]=c.read(e,l);s[h]={data:i,pointStart:i[0]&&(c.pointIsArray?i[0]?.[0]:i[0]?.x)||void 0},c.name&&(s[h].name=c.name),"category"===r&&(s[h].turboThreshold=0,s[h].pointStart=0)}d={series:s},"linear"!==r||this.xAxisOptions&&this.xAxisOptions.type!==r?(this.xAxisOptions={type:r},"category"===r&&(this.xAxisOptions.uniqueNames=!1)):r=this.xAxisOptions=void 0,this.chart||f(!0,d,{xAxis:this.xAxisOptions||{}}),t.complete?.(d),t.afterComplete?.(this,d)}}xAxisUpdateHandler(e){let t=this.xAxisOptions;t&&(!e.options.type&&t.type&&(e.type=t.type),e.options.uniqueNames||!1!==t.uniqueNames||(e.uniqueNames=t.uniqueNames))}update(e,t){let n=this.chart,r=n.options;e&&(e.afterComplete=function(e,r){if(!r)return;let s=n.xAxis[0],i=e.xAxisOptions;i&&s&&(s.type!==i.type&&!s.options.type||s.uniqueNames&&!1===i.uniqueNames&&void 0===s.options.uniqueNames)?s.update({},!1):(r?.series||[]).forEach(function(e){delete e.pointStart}),n.update(r,t,!0)},f(!0,r.data,e),r.data?.googleSpreadsheetKey&&!e.columns&&delete r.data.columns,this.init(r.data||{},r))}}a(T(),"afterSetOptions",function(){this.isXAxis&&(!this.chart.xAxis.length||this.chart.xAxis[0]===this)&&this.chart.data?.xAxisUpdateHandler(this)}),a(N(),"init",function(e){let t=this,n=e.args[1],r=O().data,s=e.args[0]||{};(r||s&&s.data)&&!t.hasDataDef&&(t.hasDataDef=!0,t.data=new F(l(f(r,s.data),{afterComplete:function(e,r){let i,a;if(Object.hasOwnProperty.call(s,"series"))if("object"==typeof s.series)for(i=Math.max(s.series.length,r?.series?.length??0);i--;)a=s.series[i]||{},s.series[i]=f(a,r?.series?.[i]??{});else delete s.series;s=f(r,s),t.data=e,t.init(s,n)}}),s,t),e.preventDefault())});class j{constructor(){this.readers=[],this.pointIsArray=!0}populateColumns(e){let t=!0;return this.readers.forEach(t=>{void 0===t.columnIndex&&(t.columnIndex=e.shift())}),this.readers.forEach(e=>{void 0===e.columnIndex&&(t=!1)}),t}read(e,t){let n=this.pointIsArray,r=n?[]:{};if(this.readers.forEach(s=>{let i=e[s.columnIndex][t];n?r.push(i):s.configName.indexOf(".")>0?A().prototype.setNestedProperty(r,i,s.configName):r[s.configName]=i}),void 0===this.name&&this.readers.length>=2){let t=[];this.readers.forEach(function(e){("x"===e.configName||"name"===e.configName||"y"===e.configName)&&void 0!==e.columnIndex&&t.push(e.columnIndex)}),t.length>=2&&(t.shift(),t.sort(function(e,t){return e-t})),this.name=e[g(t.shift(),0)].name}return r}addColumnReader(e,t){this.readers.push({columnIndex:e,configName:t}),"x"!==t&&"y"!==t&&void 0!==t&&(this.pointIsArray=!1)}getReferencedColumnIndexes(){let e,t,n=[];for(e=0;e<this.readers.length;e+=1)void 0!==(t=this.readers[e]).columnIndex&&n.push(t.columnIndex);return n}hasReader(e){let t;for(t=0;t<this.readers.length;t+=1)if(this.readers[t].configName===e)return!0}}let P=r();P.Data=P.Data||F,P.HttpUtilities=P.HttpUtilities||y,P.ajax=P.HttpUtilities.ajax,P.data=P.Data.data,P.getJSON=P.HttpUtilities.getJSON,P.post=P.HttpUtilities.post;let S=r();export{S as default};