!/** * Highcharts JS v12.4.0 (2025-09-04) * @module highcharts/modules/export-data * @requires highcharts * @requires highcharts/modules/exporting * * Export data module * * (c) 2010-2025 Torstein Honsi * * License: www.highcharts.com/license */function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(t._Highcharts,t._Highcharts.AST,t._Highcharts.Chart):"function"==typeof define&&define.amd?define("highcharts/modules/export-data",["highcharts/highcharts"],function(t){return e(t,t.AST,t.Chart)}):"object"==typeof exports?exports["highcharts/modules/export-data"]=e(t._Highcharts,t._Highcharts.AST,t._Highcharts.Chart):t.Highcharts=e(t.Highcharts,t.Highcharts.AST,t.Highcharts.Chart)}("undefined"==typeof window?this:window,(t,e,a)=>(()=>{"use strict";var o,n={660:t=>{t.exports=e},944:e=>{e.exports=t},960:t=>{t.exports=a}},i={};function r(t){var e=i[t];if(void 0!==e)return e.exports;var a=i[t]={exports:{}};return n[t](a,a.exports,r),a.exports}r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var a in e)r.o(e,a)&&!r.o(t,a)&&Object.defineProperty(t,a,{enumerable:!0,get:e[a]})},r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var l={};r.d(l,{default:()=>I});var s=r(944),h=r.n(s);let{isSafari:d,win:c,win:{document:p}}=h(),{error:u}=h(),g=c.URL||c.webkitURL||c;function f(t){let e=t.replace(/filename=.*;/,"").match(/data:([^;]*)(;base64)?,([A-Z+\d\/]+)/i);if(e&&e.length>3&&c.atob&&c.ArrayBuffer&&c.Uint8Array&&c.Blob&&g.createObjectURL){let t=c.atob(e[3]),a=new c.ArrayBuffer(t.length),o=new c.Uint8Array(a);for(let e=0;e1e3)throw Error("Input too long");let n=/Edge\/\d+/.test(a.userAgent);if((d&&"string"==typeof t&&0===t.indexOf("data:application/pdf")||n||t.length>2e6)&&!(t=f(t)||""))throw Error("Failed to convert to blob");if(void 0!==o.download)o.href=t,o.download=e,p.body.appendChild(o),o.click(),p.body.removeChild(o);else try{if(!c.open(t,"chart"))throw Error("Failed to open window")}catch{c.location.href=t}},getScript:function(t){return new Promise((e,a)=>{let o=p.getElementsByTagName("head")[0],n=p.createElement("script");n.type="text/javascript",n.src=t,n.onload=()=>{e()},n.onerror=()=>{let e=`Error loading script ${t}`;u(e),a(Error(e))},o.appendChild(n)})}};var x=r(660),b=r.n(x),y=r(960),w=r.n(y);let T={exporting:{csv:{annotations:{itemDelimiter:"; ",join:!1},columnHeaderFormatter:null,dateFormat:"%Y-%m-%d %H:%M:%S",decimalPoint:null,itemDelimiter:null,lineDelimiter:"\n"},menuItemDefinitions:{downloadCSV:{textKey:"downloadCSV",onclick:function(){this.exporting?.downloadCSV()}},downloadXLS:{textKey:"downloadXLS",onclick:function(){this.exporting?.downloadXLS()}},viewData:{textKey:"viewData",onclick:function(){this.exporting?.wrapLoading(this.exporting.toggleDataTable)}}},showTable:!1,useMultiLevelHeaders:!0,useRowspanHeaders:!0,showExportInProgress:!0},lang:{downloadCSV:"Download CSV",downloadXLS:"Download XLS",exportData:{annotationHeader:"Annotations",categoryHeader:"Category",categoryDatetimeHeader:"DateTime"},viewData:"View data table",hideData:"Hide data table",exportInProgress:"Exporting..."}},{getOptions:D,setOptions:v}=h(),{downloadURL:S}=m,{composed:L,doc:E,win:C}=h(),{addEvent:A,defined:H,extend:R,find:V,fireEvent:k,isNumber:O,pick:N,pushUnique:F}=h();!function(t){function e(){this.wrapLoading(()=>{let t=this.getCSV(!0);S(o(t,"text/csv")||"data:text/csv,\uFEFF"+encodeURIComponent(t),this.getFilename()+".csv")})}function a(){this.wrapLoading(()=>{let t='\x3c!--[if gte mso 9]>Ark1td{border:none;font-family: Calibri, sans-serif;} .number{mso-number-format:"0.00";} .text{ mso-number-format:"@";}'+this.getTable(!0)+"";S(o(t,"application/vnd.ms-excel")||"data:application/vnd.ms-excel;base64,"+C.btoa(unescape(encodeURIComponent(t))),this.getFilename()+".xls")})}function o(t,e){let a=C.navigator,o=C.URL||C.webkitURL||C;try{if(a.msSaveOrOpenBlob&&C.MSBlobBuilder){let e=new C.MSBlobBuilder;return e.append(t),e.getBlob("image/svg+xml")}return o.createObjectURL(new C.Blob(["\uFEFF"+t],{type:e}))}catch{}}function n(t){let e="",a=this.getDataRows(),o=this.options?.csv,n=N(o?.decimalPoint,o?.itemDelimiter!==","&&t?1.1.toLocaleString()[1]:"."),i=N(o?.itemDelimiter,","===n?";":","),r=o?.lineDelimiter;return a.forEach((t,o)=>{let l="",s=t.length;for(;s--;)"string"==typeof(l=t[s])&&(l=`"${l}"`),"number"==typeof l&&"."!==n&&(l=l.toString().replace(".",n)),t[s]=l;t.length=a.length?a[0].length:0,e+=t.join(i),o1?a:e.name)||"",topLevelColumnTitle:e.name}:e.name+((o||0)>1?" ("+a+")":"")},m=function(t,e,a){let o={},n={};return e.forEach(function(e){let i=(t.keyToAxis&&t.keyToAxis[e]||e)+"Axis",r=O(a)?t.chart[i][a]:t[i];o[e]=r&&r.categories||[],n[e]=r&&r.dateTime}),{categoryMap:o,dateTimeValueAxisMap:n}},x=function(t,e){let a=t.pointArrayMap||["y"];return t.data.some(t=>void 0!==t.y&&t.name)&&e&&!e.categories&&"name"!==t.exportKey?["x",...a]:a},b=[],y,w,T,D=0,v,S;for(v in o.series.forEach(function(e){let a=e.options.keys,o=e.xAxis,h=a||x(e,o),p=h.length,u=!e.requireSorting&&{},g=l.indexOf(o),y=m(e,h),w,v;if(!1!==e.options.includeInDataExport&&!e.options.isInternal&&!1!==e.visible){for(V(b,function(t){return t[0]===g})||b.push([g,D]),v=0;v{if(!t.tagName||"#text"===t.tagName)return t.textContent||"";let a=t.attributes,o=`<${t.tagName}`;return a&&Object.keys(a).forEach(t=>{let e=a[t];o+=` ${t}="${e}"`}),o+=">",o+=t.textContent||"",(t.children||[]).forEach(t=>{o+=e(t)}),o+=``};return e(this.getTableAST(t))}function l(t){let e=0,a=[],o=this,n=o.chart,i=n.options,r=t?1.1.toLocaleString()[1]:".",l=N(o.options.useMultiLevelHeaders,!0),s=o.getDataRows(l),h=l?s.shift():null,d=s.shift(),c=function(t,e){let a=t.length;if(e.length!==a)return!1;for(;a--;)if(t[a]!==e[a])return!1;return!0},p=function(t,e,a,o){let i=N(o,""),l="highcharts-text"+(e?" "+e:"");return"number"==typeof i?(i=n.numberFormatter(i,-1,r,"th"===t?"":void 0),l="highcharts-number"):o||(l="highcharts-empty"),{tagName:t,attributes:a=R({class:l},a),textContent:i}},{tableCaption:u}=o.options||{};!1!==u&&a.push({tagName:"caption",attributes:{class:"highcharts-table-caption"},textContent:"string"==typeof u?u:i.title?.text||i.lang.chartTitle});for(let t=0,a=s.length;te&&(e=s[t].length);a.push(function(t,e,a){let n=[],i=0,r=a||e&&e.length,s,h=0,d;if(l&&t&&e&&!c(t,e)){let a=[];for(;i1&&t.attributes&&(t.attributes.valign="top",t.attributes.rowspan=d),a.push(t)}n.push({tagName:"tr",children:a})}if(e){let t=[];for(i=0,r=e.length;i{a&&e.showLoading(e.options.lang.exportInProgress),o(()=>{try{t.call(this)}finally{a&&e.hideLoading()}})})}function p(){let t=this.exporting,e=t?.dataTableDiv,a=(t,e)=>t.children[e].textContent,o=(t,e)=>(o,n)=>{let i,r;return i=a(e?o:n,t),r=a(e?n:o,t),""===i||""===r||isNaN(i)||isNaN(r)?i.toString().localeCompare(r):i-r};if(e&&t.options.allowTableSorting){let a=e.querySelector("thead tr");a&&a.childNodes.forEach(a=>{let n=e.querySelector("tbody");a.addEventListener("click",function(){let i=[...e.querySelectorAll("tr:not(thead tr)")],r=[...a.parentNode.children];t&&(i.sort(o(r.indexOf(a),t.ascendingOrderInTable=!t.ascendingOrderInTable)).forEach(t=>{n?.appendChild(t)}),r.forEach(t=>{["highcharts-sort-ascending","highcharts-sort-descending"].forEach(e=>{t.classList.contains(e)&&t.classList.remove(e)})}),a.classList.add(t.ascendingOrderInTable?"highcharts-sort-ascending":"highcharts-sort-descending"))})})}}function u(){this.options?.exporting?.showTable&&!this.options.chart.forExport&&this.exporting?.viewData()}function g(){this.exporting?.dataTableDiv?.remove()}t.compose=function(t,o,f){if(!F(L,"ExportData"))return;R(w().prototype,{downloadCSV:function(){return this.exporting?.downloadCSV()},downloadXLS:function(){return this.exporting?.downloadXLS()},getCSV:function(t){return this.exporting?.getCSV(t)},getDataRows:function(t){return this.exporting?.getDataRows(t)},getTable:function(t){return this.exporting?.getTable(t)},getTableAST:function(t){return this.exporting?.getTableAST(t)},hideData:function(){return this.exporting?.hideData()},toggleDataTable:function(t){return this.exporting?.toggleDataTable(t)},viewData:function(){return this.exporting?.viewData()}});let m=o.prototype;if(!m.downloadCSV){A(t,"afterViewData",p),A(t,"render",u),A(t,"destroy",g),m.downloadCSV=e,m.downloadXLS=a,m.getCSV=n,m.getDataRows=i,m.getTable=r,m.getTableAST=l,m.hideData=s,m.toggleDataTable=h,m.wrapLoading=c,m.viewData=d,v(T);let o=D().exporting?.buttons?.contextButton?.menuItems;o&&o.push("separator","downloadCSV","downloadXLS","viewData");let{arearange:x,gantt:b,map:y,mapbubble:w,treemap:S,xrange:L}=f.types;x&&(x.prototype.keyToAxis={low:"y",high:"y"}),b&&(b.prototype.exportKey="name",b.prototype.keyToAxis={start:"x",end:"x"}),y&&(y.prototype.exportKey="name"),w&&(w.prototype.exportKey="name"),S&&(S.prototype.exportKey="name"),L&&(L.prototype.keyToAxis={x2:"x"})}}}(o||(o={}));let B=o,U=h();U.dataURLtoBlob=U.dataURLtoBlob||m.dataURLtoBlob,U.downloadURL=U.downloadURL||m.downloadURL,B.compose(U.Chart,U.Exporting,U.Series);let I=h();return l.default})());