apexcharts 7.2.0 → 7.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (172) hide show
  1. package/LICENSE +30 -11
  2. package/dist/apexcharts.common.js +2 -2
  3. package/dist/apexcharts.core.js +545 -463
  4. package/dist/apexcharts.core.min.js +2 -2
  5. package/dist/apexcharts.esm.js +1149 -801
  6. package/dist/apexcharts.js +684 -254
  7. package/dist/apexcharts.min.js +2 -2
  8. package/dist/apexcharts.ssr.common.js +2 -2
  9. package/dist/apexcharts.ssr.esm.js +684 -254
  10. package/dist/area.common.js +1 -1
  11. package/dist/area.esm.js +1 -1
  12. package/dist/bar.common.js +2 -2
  13. package/dist/bar.esm.js +20 -10
  14. package/dist/bar.js +2 -2
  15. package/dist/boxPlot.common.js +2 -2
  16. package/dist/boxPlot.esm.js +20 -10
  17. package/dist/bubble.common.js +1 -1
  18. package/dist/bubble.esm.js +1 -1
  19. package/dist/candlestick.common.js +2 -2
  20. package/dist/candlestick.esm.js +20 -10
  21. package/dist/candlestick.js +2 -2
  22. package/dist/column.common.js +2 -2
  23. package/dist/column.esm.js +20 -10
  24. package/dist/core.common.js +2 -2
  25. package/dist/core.esm.js +545 -463
  26. package/dist/donut.common.js +1 -1
  27. package/dist/donut.esm.js +1 -1
  28. package/dist/dumbbell.common.js +2 -2
  29. package/dist/dumbbell.esm.js +20 -10
  30. package/dist/features/all.common.js +2 -2
  31. package/dist/features/all.esm.js +364 -26
  32. package/dist/features/annotations.common.js +1 -1
  33. package/dist/features/annotations.esm.js +1 -1
  34. package/dist/features/annotations.js +1 -1
  35. package/dist/features/context-menu.common.js +1 -1
  36. package/dist/features/context-menu.esm.js +1 -1
  37. package/dist/features/context-menu.js +1 -1
  38. package/dist/features/drilldown.common.js +1 -1
  39. package/dist/features/drilldown.esm.js +1 -1
  40. package/dist/features/drilldown.js +1 -1
  41. package/dist/features/dumbbell.common.js +1 -1
  42. package/dist/features/dumbbell.esm.js +1 -1
  43. package/dist/features/dumbbell.js +1 -1
  44. package/dist/features/exports.common.js +2 -2
  45. package/dist/features/exports.esm.js +12 -14
  46. package/dist/features/exports.js +2 -2
  47. package/dist/features/facet.common.js +1 -1
  48. package/dist/features/facet.esm.js +1 -1
  49. package/dist/features/facet.js +1 -1
  50. package/dist/features/history.common.js +1 -1
  51. package/dist/features/history.esm.js +1 -1
  52. package/dist/features/history.js +1 -1
  53. package/dist/features/ink.common.js +1 -1
  54. package/dist/features/ink.esm.js +1 -1
  55. package/dist/features/ink.js +1 -1
  56. package/dist/features/keyboard.common.js +2 -2
  57. package/dist/features/keyboard.esm.js +14 -1
  58. package/dist/features/keyboard.js +2 -2
  59. package/dist/features/legend.common.js +1 -1
  60. package/dist/features/legend.esm.js +1 -1
  61. package/dist/features/legend.js +1 -1
  62. package/dist/features/link.common.js +1 -1
  63. package/dist/features/link.esm.js +38 -38
  64. package/dist/features/link.js +1 -1
  65. package/dist/features/marks.common.js +1 -1
  66. package/dist/features/marks.esm.js +1 -1
  67. package/dist/features/marks.js +1 -1
  68. package/dist/features/measure.common.js +1 -1
  69. package/dist/features/measure.esm.js +1 -1
  70. package/dist/features/measure.js +1 -1
  71. package/dist/features/morph.common.js +1 -1
  72. package/dist/features/morph.esm.js +1 -1
  73. package/dist/features/morph.js +1 -1
  74. package/dist/features/perspectives.common.js +1 -1
  75. package/dist/features/perspectives.esm.js +11 -11
  76. package/dist/features/perspectives.js +1 -1
  77. package/dist/features/raincloud.common.js +1 -1
  78. package/dist/features/raincloud.esm.js +1 -1
  79. package/dist/features/raincloud.js +1 -1
  80. package/dist/features/renderer-canvas.common.js +1 -1
  81. package/dist/features/renderer-canvas.esm.js +1 -1
  82. package/dist/features/renderer-canvas.js +1 -1
  83. package/dist/features/stats.common.js +1 -1
  84. package/dist/features/stats.esm.js +1 -1
  85. package/dist/features/stats.js +1 -1
  86. package/dist/features/storyboard.common.js +1 -1
  87. package/dist/features/storyboard.esm.js +11 -11
  88. package/dist/features/storyboard.js +1 -1
  89. package/dist/features/streamgraph.common.js +1 -1
  90. package/dist/features/streamgraph.esm.js +1 -1
  91. package/dist/features/streamgraph.js +1 -1
  92. package/dist/features/toolbar.common.js +2 -2
  93. package/dist/features/toolbar.esm.js +172 -25
  94. package/dist/features/toolbar.js +2 -2
  95. package/dist/features/trellis.common.js +1 -1
  96. package/dist/features/trellis.esm.js +1 -1
  97. package/dist/features/trellis.js +1 -1
  98. package/dist/features/waterfall.common.js +1 -1
  99. package/dist/features/waterfall.esm.js +1 -1
  100. package/dist/features/waterfall.js +1 -1
  101. package/dist/features/weave.common.js +2 -2
  102. package/dist/features/weave.esm.js +180 -2
  103. package/dist/features/weave.js +2 -2
  104. package/dist/heatmap.common.js +1 -1
  105. package/dist/heatmap.esm.js +1 -1
  106. package/dist/heatmap.js +1 -1
  107. package/dist/histogram.common.js +2 -2
  108. package/dist/histogram.esm.js +20 -10
  109. package/dist/line.common.js +1 -1
  110. package/dist/line.esm.js +1 -1
  111. package/dist/line.js +1 -1
  112. package/dist/pictograms.common.js +1 -1
  113. package/dist/pictograms.esm.js +1 -1
  114. package/dist/pictograms.js +1 -1
  115. package/dist/pie.common.js +1 -1
  116. package/dist/pie.esm.js +1 -1
  117. package/dist/pie.js +1 -1
  118. package/dist/polarArea.common.js +1 -1
  119. package/dist/polarArea.esm.js +1 -1
  120. package/dist/radar.common.js +1 -1
  121. package/dist/radar.esm.js +1 -1
  122. package/dist/radar.js +1 -1
  123. package/dist/radialBar.common.js +1 -1
  124. package/dist/radialBar.esm.js +1 -1
  125. package/dist/radialBar.js +1 -1
  126. package/dist/raincloud.common.js +2 -2
  127. package/dist/raincloud.esm.js +20 -10
  128. package/dist/rangeArea.common.js +1 -1
  129. package/dist/rangeArea.esm.js +1 -1
  130. package/dist/rangeBar.common.js +2 -2
  131. package/dist/rangeBar.esm.js +20 -10
  132. package/dist/scatter.common.js +1 -1
  133. package/dist/scatter.esm.js +1 -1
  134. package/dist/streamgraph.common.js +1 -1
  135. package/dist/streamgraph.esm.js +1 -1
  136. package/dist/sunburst.common.js +1 -1
  137. package/dist/sunburst.esm.js +1 -1
  138. package/dist/sunburst.js +1 -1
  139. package/dist/treemap.common.js +1 -1
  140. package/dist/treemap.esm.js +1 -1
  141. package/dist/treemap.js +1 -1
  142. package/dist/unit-shapes.common.js +1 -1
  143. package/dist/unit-shapes.esm.js +1 -1
  144. package/dist/unit-shapes.js +1 -1
  145. package/dist/unit.common.js +1 -1
  146. package/dist/unit.esm.js +79 -79
  147. package/dist/unit.js +1 -1
  148. package/dist/violin.common.js +2 -2
  149. package/dist/violin.esm.js +20 -10
  150. package/dist/violin.js +2 -2
  151. package/dist/waterfall.common.js +2 -2
  152. package/dist/waterfall.esm.js +20 -10
  153. package/package.json +2 -2
  154. package/src/apexcharts.js +39 -15
  155. package/src/charts/common/bar/Helpers.js +31 -12
  156. package/src/modules/Data.js +8 -2
  157. package/src/modules/Exports.js +14 -12
  158. package/src/modules/Formatters.js +24 -1
  159. package/src/modules/Range.js +28 -1
  160. package/src/modules/Toolbar.js +112 -2
  161. package/src/modules/ZoomPanSelection.js +85 -7
  162. package/src/modules/accessibility/KeyboardNavigation.js +14 -0
  163. package/src/modules/axes/YAxis.js +12 -15
  164. package/src/modules/helpers/UpdateHelpers.js +25 -8
  165. package/src/modules/settings/Globals.js +5 -10
  166. package/src/modules/settings/Options.js +15 -0
  167. package/src/modules/weave/PluginAPI.js +57 -1
  168. package/src/modules/weave/WeaveHost.js +148 -0
  169. package/src/ssr/DOMShim.js +50 -0
  170. package/src/types/internal.d.ts +1 -1
  171. package/src/utils/Utils.js +6 -9
  172. package/types/apexcharts.d.ts +17 -0
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * ApexCharts v7.2.0
2
+ * ApexCharts v7.4.0
3
3
  * (c) 2018-2026 ApexCharts
4
4
  */
5
5
  "use strict";var e=Object.defineProperty,t=Object.defineProperties,r=Object.getOwnPropertyDescriptors,s=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable,a=(t,r,s)=>r in t?e(t,r,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[r]=s;Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=(e=>e&&e.__esModule?e:{default:e})(require("apexcharts/core")),l=globalThis.console;const c="__apexcharts_crossfilters__";function h(e){if(!Number.isFinite(e))return e;const t=Number(e.toPrecision(12));return Object.is(t,-0)?0:t}function f(e){return"number"==typeof e&&Number.isFinite(e)}function u(e){if("function"==typeof e)return e;if(e&&"object"==typeof e){if("string"==typeof e.sum){const t=e.sum;return e=>e.reduce((e,r)=>e+(Number(r[t])||0),0)}if("string"==typeof e.avg){const t=e.avg;return e=>e.length?e.reduce((e,r)=>e+(Number(r[t])||0),0)/e.length:0}if("string"==typeof e.min){const t=e.min;return e=>e.length?Math.min(...e.map(e=>Number(e[t])||0)):0}if("string"==typeof e.max){const t=e.max;return e=>e.length?Math.max(...e.map(e=>Number(e[t])||0)):0}}return e=>e.length}function d(e,t){return"function"==typeof t?e.slice().sort(t):"asc"===t?e.slice().sort((e,t)=>e>t?1:e<t?-1:0):"desc"===t?e.slice().sort((e,t)=>e<t?1:e>t?-1:0):e}function g(e,t){if(!f(e))return-1;const r=t.length-1;if(e<t[0]||e>t[r])return-1;if(e===t[r])return r-1;for(let s=0;s<r;s++)if(e>=t[s]&&e<t[s+1])return s;return-1}function m(e){const t=[];for(let r=0;r<e.length-1;r++)t.push(h((e[r]+e[r+1])/2));return t}class p{constructor(e,t){this.dims=new Map,this.listeners=new Map,this.id=e,this.records=Array.isArray(t)?t:[]}static store(){const e=globalThis;return e[c]||(e[c]=new Map),e[c]}static getOrCreate(e){if(!e||"string"!=typeof e.id)throw new Error("Crossfilter.getOrCreate requires an { id } string.");const t=p.store(),r=t.get(e.id);if(r)return e.records&&r.setRecords(e.records),r;const s=new p(e.id,e.records);return t.set(e.id,s),s}static get(e){return p.store().get(e)||null}setRecords(e){return this.records=Array.isArray(e)?e:[],this.dims.forEach(e=>this.recomputeDomain(e)),this.emit("records",this.state()),this.emit("change",this.state()),this}registerDimension(e,t){if(!t||"function"!=typeof t.dimension)throw new Error(`crossfilter.registerDimension("${e}") needs a dimension function.`);const r=t.type||(t.bins?"range":"category"),s={accessor:t.dimension,reducer:u(t.reduce),type:r,bins:t.bins,order:t.order,filter:null,labels:[],edges:null,xLabels:[],yLabels:[]};return this.dims.set(e,s),this.recomputeDomain(s),null!=t.filter&&this.setFilterOn(s,t.filter),this}hasDimension(e){return this.dims.has(e)}removeDimension(e){const t=this.dims.get(e),r=!!t&&this.hasFilter(t);return this.dims.delete(e),r&&this.emit("change",this.state()),this}recomputeDomain(e){if("matrix"===e.type){const t=function(e,t,r){const s=new Set,i=new Set,n=[],a=[];for(let r=0;r<e.length;r++){const o=t(e[r]);if(!o)continue;const l=o[0],c=o[1];null==l||s.has(l)||(s.add(l),n.push(l)),null==c||i.has(c)||(i.add(c),a.push(c))}return{xLabels:d(n,r),yLabels:d(a,r)}}(this.records,e.accessor,e.order);return e.xLabels=t.xLabels,e.yLabels=t.yLabels,void(e.edges=null)}if("range"===e.type)return e.edges=function(e,t,r){if(r&&Array.isArray(r.thresholds)&&r.thresholds.length>=2){const e=Array.from(new Set(r.thresholds.filter(f))).sort((e,t)=>e-t);return e.length>=2?e.map(h):[0,1]}let s=1/0,i=-1/0;for(let r=0;r<e.length;r++){const n=t(e[r]);f(n)&&(n<s&&(s=n),n>i&&(i=n))}if(s===1/0)return[0,1];if(s===i){const e=Math.abs(s)>0?Math.abs(s):1;return[h(s),h(s+e)]}if(r&&f(r.width)&&r.width>0){const e=r.width,t=Math.floor(s/e)*e;let n=Math.ceil(i/e)*e;n<=t&&(n=t+e);const a=Math.max(1,Math.round((n-t)/e)),o=new Array(a+1);for(let r=0;r<=a;r++)o[r]=h(t+r*e);return o}const n=r&&f(r.count)&&r.count>=1?Math.floor(r.count):30,a=(i-s)/n,o=new Array(n+1);for(let e=0;e<=n;e++)o[e]=h(s+e*a);return o[n]=h(i),o}(this.records,e.accessor,e.bins),void(e.labels=m(e.edges));if(e.labels=function(e,t,r){const s=new Set,i=[];for(let r=0;r<e.length;r++){const n=t(e[r]);null!=n&&(s.has(n)||(s.add(n),i.push(n)))}return d(i,r)}(this.records,e.accessor,e.order),e.edges=null,e.filter instanceof Set){const t=new Set(e.labels);Array.from(e.filter).forEach(r=>{t.has(r)||e.filter.delete(r)})}}filter(e,t){const r=this.dims.get(e);return r?(this.setFilterOn(r,t),this.emit("change",this.state()),this):this}toggleKey(e,t){const r=this.dims.get(e);if(!r||"category"!==r.type)return this;r.filter instanceof Set||(r.filter=new Set);const s=r.filter;return s.has(t)?s.delete(t):s.add(t),0===s.size&&(r.filter=null),this.emit("change",this.state()),this}setFilterOn(e,t){if(null==t)return void(e.filter=null);if("range"===e.type){if(Array.isArray(t)&&2===t.length&&t.every(f)){const[r,s]=t;e.filter=[Math.min(r,s),Math.max(r,s)]}else e.filter=null;return}const r=new Set(t);e.filter=r.size?r:null}clear(e){const t=this.dims.get(e);return t&&(t.filter=null),this.emit("change",this.state()),this}reset(){return this.dims.forEach(e=>{e.filter=null}),this.emit("change",this.state()),this}hasFilter(e){return null!=e.filter&&(!(e.filter instanceof Set)||e.filter.size>0)}passes(e,t){if(!this.hasFilter(e))return!0;const r=e.accessor(t);if(e.filter instanceof Set)return e.filter.has(r);if(!f(r))return!1;const[s,i]=e.filter;return r>=s&&r<=i}filteredRecords(e){const t=[];return this.dims.forEach((r,s)=>{s!==e&&this.hasFilter(r)&&t.push(r)}),0===t.length?this.records:this.records.filter(e=>t.every(t=>this.passes(t,e)))}filteredRows(){return this.filteredRecords(null)}aggregateFor(e){const t=this.dims.get(e);if(!t)return{type:"category",labels:[],values:[],keys:[]};const r=this.filteredRecords(e);if("matrix"===t.type){const e=new Map(t.xLabels.map((e,t)=>[e,t])),s=new Map(t.yLabels.map((e,t)=>[e,t])),i=t.yLabels.map(()=>t.xLabels.map(()=>[]));for(let n=0;n<r.length;n++){const a=t.accessor(r[n]);if(!a)continue;const o=e.get(a[0]),l=s.get(a[1]);null!=o&&null!=l&&i[l][o].push(r[n])}return{type:"matrix",xLabels:t.xLabels.slice(),yLabels:t.yLabels.slice(),matrix:i.map(e=>e.map(e=>t.reducer(e)))}}if("range"===t.type){const e=t.edges||[0,1],s=e.length-1,i=Array.from({length:s},()=>[]);for(let s=0;s<r.length;s++){const n=g(t.accessor(r[s]),e);n>=0&&i[n].push(r[s])}return{type:"range",labels:m(e),values:i.map(e=>t.reducer(e)),keys:i.map((t,r)=>[e[r],e[r+1]]),edges:e}}const s=new Map;t.labels.forEach(e=>s.set(e,[]));for(let e=0;e<r.length;e++){const i=s.get(t.accessor(r[e]));i&&i.push(r[e])}return{type:"category",labels:t.labels.slice(),values:t.labels.map(e=>t.reducer(s.get(e)||[])),keys:t.labels.slice()}}aggregateAll(){const e={};return this.dims.forEach((t,r)=>{e[r]=this.aggregateFor(r)}),e}state(){const e={};return this.dims.forEach((t,r)=>{this.hasFilter(t)&&(e[r]=t.filter instanceof Set?Array.from(t.filter):t.filter.slice())}),{filters:e,filteredCount:this.filteredRows().length,total:this.records.length}}filterOf(e){const t=this.dims.get(e);return t&&this.hasFilter(t)?t.filter instanceof Set?new Set(t.filter):t.filter.slice():null}on(e,t){let r=this.listeners.get(e);return r||(r=new Set,this.listeners.set(e,r)),r.add(t),()=>this.off(e,t)}off(e,t){var r;return null==(r=this.listeners.get(e))||r.delete(t),this}emit(e,t){var r;null==(r=this.listeners.get(e))||r.forEach(r=>{try{r(t)}catch(t){!function(e,...t){l.error(e,...t)}(`[Apex] a crossfilter ${e} listener threw`,t)}})}static esc(e){return String(null==e?"":e).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;")}resolveColumns(e){if(Array.isArray(e)&&e.length)return e.map(e=>"string"==typeof e?{field:e,label:e}:{field:e.field,label:e.label||e.field,format:e.format});const t=this.records[0];return(t?Object.keys(t):[]).map(e=>({field:e,label:e}))}tableHTML(e,t,r){const s="<thead><tr>"+e.map(e=>`<th>${p.esc(e.label)}</th>`).join("")+"</tr></thead>",i="<tbody>"+t.map(t=>"<tr>"+e.map(e=>{const r=t[e.field],s=e.format?e.format(r,t):r;return`<td>${p.esc(s)}</td>`}).join("")+"</tr>").join("")+"</tbody>";return`<table class="apexcharts-cf-table"><caption>${t.length} of ${r} rows</caption>${s}${i}</table>`}dataTable(e,t){if(!e)return{refresh(){},destroy(){}};const r=t||{},s=this.resolveColumns(r.columns),i=r.pageSize||0,n=r.page||0,a=()=>{const t=this.filteredRows(),r=i?t.slice(n*i,n*i+i):t;e.innerHTML=this.tableHTML(s,r,t.length)};a();const o=this.on("change",a);return{refresh:a,destroy:()=>{o(),e.innerHTML=""}}}destroy(){p.store().delete(this.id),this.dims.clear(),this.listeners.clear(),this.records=[]}}const y=[".apexcharts-bar-area",".apexcharts-candlestick-area",".apexcharts-boxPlot-area",".apexcharts-rangebar-area",".apexcharts-marker"].join(", "),_=[".apexcharts-pie-area",".apexcharts-bar-area"].join(", "),b="apexcharts-crossfilter-dimmed",x=["pie","donut","polarArea","radialBar"];o.default.registerFeatures({linkedViews:class{constructor(e,t){this.w=e,this.ctx=t,this._dimmed=!1,this._wired=!1,this._pending=!1,this._lastValues=null,this._onPointSelect=this._onPointSelect.bind(this),this._afterRender=this._afterRender.bind(this),this._onChange=this._onChange.bind(this),"filter"===this._mode()&&this._initEngine()}_mode(){const e=this.w.config.chart.link;return e&&"function"==typeof e.dimension?"filter":e&&e.enabled?"highlight":"off"}_enabled(){const e=this.w.config.chart.link;return!(!e||!e.enabled)}onSourceSelection(e){var t;const r=this._mode();if("off"===r)return;if(!e||null==e.min||null==e.max)return;let s=Math.min(e.min,e.max),i=Math.max(e.min,e.max);const n=this.w.globals.minX,a=this.w.globals.maxX;if(isFinite(n)&&isFinite(a)&&a>n){const e=1e-6*(a-n);s-n<=e&&(s=n),a-i<=e&&(i=a)}if("filter"===r){const e=this._cf();if(!e)return;return e.filter(this._chartId(),[s,i]),void this._fireFilterChange(e,[s,i])}this._group().forEach(e=>{var t;null==(t=null==e?void 0:e.linkedViews)||t.applyDim(s,i)});const o={xaxis:{min:s,max:i},sourceChartID:this.w.globals.chartID};"function"==typeof this.w.config.chart.events.crossFilter&&this.w.config.chart.events.crossFilter(this.ctx,o),null==(t=this.ctx.events)||t.fireEvent("crossFilter",[this.ctx,o])}_group(){const e="function"==typeof this.ctx.getGroupedCharts?this.ctx.getGroupedCharts():[];return[this.ctx,...e]}applyDim(e,t){if(!this._enabled())return;const r=this.w,s=r.dom.baseEl;if(!s)return;const i=r.config.chart.link.dimOpacity;r.dom.elWrap&&"number"==typeof i&&r.dom.elWrap.style.setProperty("--apx-cf-dim",String(i));const n=r.globals.seriesX||[];s.querySelectorAll(y).forEach(r=>{const s=r.getAttribute("j");if(null===s)return;const i=parseInt(s,10),a=r.getAttribute("index"),o=null===a?0:parseInt(a,10),l=n[o]||n[0];if(!l)return;const c=l[i];null!=c&&r.classList.toggle(b,c<e||c>t)}),this._dimmed=!0}clear(){const e=this.w.dom.baseEl;e&&(e.querySelectorAll("."+b).forEach(e=>e.classList.remove(b)),this._dimmed=!1)}clearGroup(){if("filter"===this._mode()){const e=this._cf();return void(e&&e.reset())}this._group().forEach(e=>{var t;return null==(t=null==e?void 0:e.linkedViews)?void 0:t.clear()})}_chartId(){return this.w.globals.chartID}_cf(){const e=this.w.config.chart.link,t=e&&(e.id||this.w.config.chart.group);return t?p.get(t):null}_isPie(){return-1!==x.indexOf(this.w.config.chart.type)}_isHeatmap(){return"heatmap"===this.w.config.chart.type}_initEngine(){const e=this._cf(),t=this.w.config.chart.link;if(!e){t&&t.id||this.w.config.chart.group;return}const r=this._chartId();e.hasDimension(r)||e.registerDimension(r,{dimension:t.dimension,reduce:t.reduce,type:t.type||(this._isHeatmap()?"matrix":void 0),bins:t.bins,order:t.order}),this._injectSeries(e.aggregateFor(r)),this._wire(e)}_seriesFromAgg(e){if("matrix"===e.type)return e.yLabels.map((t,r)=>({name:String(t),data:e.xLabels.map((t,s)=>({x:String(t),y:e.matrix[r][s]}))}));if(this._isPie())return e.values.slice();const t=this.w.config.chart.link.seriesName||"Count";return"range"===e.type?[{name:t,data:e.labels.map((t,r)=>[t,e.values[r]])}]:[{name:t,data:e.values.slice()}]}_sigOf(e){return JSON.stringify(e.matrix||e.values)}_injectSeries(e){const t=this.w;this._lastValues=this._sigOf(e),t.config.series=this._seriesFromAgg(e),"matrix"!==e.type&&(this._isPie()?t.config.labels=e.labels.map(String):"category"===e.type?(t.config.xaxis||(t.config.xaxis={}),t.config.xaxis.categories=e.labels.map(String)):"range"===e.type&&this._pinRangeDomain(e.edges))}_pinRangeDomain(e){if(!Array.isArray(e)||e.length<2)return;const t=this.w;t.config.xaxis||(t.config.xaxis={}),null==t.config.xaxis.min&&(t.config.xaxis.min=e[0]),null==t.config.xaxis.max&&(t.config.xaxis.max=e[e.length-1])}_wire(e){this._wired||(this._wired=!0,this.ctx.addEventListener("dataPointSelection",this._onPointSelect),this.ctx.addEventListener("mounted",this._afterRender),this.ctx.addEventListener("updated",this._afterRender),e.on("change",this._onChange))}_onPointSelect(e,t,r){if("filter"!==this._mode()||!r||null==r.dataPointIndex)return;const s=this._cf();if(!s)return;const i=this._chartId(),n=s.aggregateFor(i);if("matrix"===n.type)return;const a=n.keys[r.dataPointIndex];null!=a&&(s.toggleKey(i,a),this._fireFilterChange(s,a))}_onChange(){"filter"!==this._mode()||this._pending||(this._pending=!0,Promise.resolve().then(()=>{this._pending=!1,this.w.globals.isDestroyed||this._applyAggregation()}))}_applyAggregation(){if("filter"!==this._mode())return;const e=this._cf();if(!e)return;const t=e.aggregateFor(this._chartId()),r=this._sigOf(t);r!==this._lastValues?(this._lastValues=r,this.ctx.updateSeries(this._seriesFromAgg(t),!0)):this._applySelfDim()}_afterRender(){if("filter"!==this._mode())return;const e=this.w.config.series;e&&0!==e.length?this._applySelfDim():this._reassertSeries()}_reassertSeries(){this._pending||(this._pending=!0,Promise.resolve().then(()=>{if(this._pending=!1,this.w.globals.isDestroyed)return;const e=this._cf();if(!e)return;const t=e.aggregateFor(this._chartId()),r=this._seriesFromAgg(t);r.length&&(this._lastValues=this._sigOf(t),this.ctx.updateSeries(r,!0))}))}_applySelfDim(){const e=this._cf();if(!e)return;const t=this.w,r=t.dom.baseEl;if(!r)return;const s=this._chartId(),i=e.filterOf(s),n=t.config.chart.link.dimOpacity;t.dom.elWrap&&"number"==typeof n&&t.dom.elWrap.style.setProperty("--apx-cf-dim",String(n));const a=i instanceof Set,o=Array.isArray(i),l=e.aggregateFor(s);if("matrix"===l.type)return;const c=l.keys;r.querySelectorAll(_).forEach(e=>{const t=e.getAttribute("j");if(null===t)return;const r=c[parseInt(t,10)];let s=!1;a?s=!i.has(r):o&&Array.isArray(r)&&(s=r[1]<=i[0]||r[0]>=i[1]),e.classList.toggle(b,s)}),this._dimmed=!!i}_fireFilterChange(e,o){var l;const c=(h=((e,t)=>{for(var r in t||(t={}))i.call(t,r)&&a(e,r,t[r]);if(s)for(var r of s(t))n.call(t,r)&&a(e,r,t[r]);return e})({},e.state()),f={sourceChartID:this._chartId(),key:o},t(h,r(f)));var h,f;const u=this.w.config.chart.events;"function"==typeof u.filterChange&&u.filterChange(this.ctx,c),null==(l=this.ctx.events)||l.fireEvent("filterChange",[this.ctx,c])}teardown(){var e,t,r,s,i,n;if(this.clear(),this._wired){null==(t=(e=this.ctx).removeEventListener)||t.call(e,"dataPointSelection",this._onPointSelect),null==(s=(r=this.ctx).removeEventListener)||s.call(r,"mounted",this._afterRender),null==(n=(i=this.ctx).removeEventListener)||n.call(i,"updated",this._afterRender);const a=this._cf();a&&(a.off("change",this._onChange),a.removeDimension(this._chartId())),this._wired=!1}}}});const w=o.default;w._crossfilterFactory=e=>p.getOrCreate(e),w._crossfilterGet=e=>p.get(e),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>o.default});
@@ -18,7 +18,7 @@ var __spreadValues = (a, b) => {
18
18
  };
19
19
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
20
  /*!
21
- * ApexCharts v7.2.0
21
+ * ApexCharts v7.4.0
22
22
  * (c) 2018-2026 ApexCharts
23
23
  */
24
24
  import ApexCharts from "apexcharts/core";
@@ -27,16 +27,16 @@ const e = globalThis.console;
27
27
  function t(t2, ...s) {
28
28
  e.error(t2, ...s);
29
29
  }
30
- const le = "__apexcharts_crossfilters__";
31
- function oe(e2) {
30
+ const pe = "__apexcharts_crossfilters__";
31
+ function ge(e2) {
32
32
  if (!Number.isFinite(e2)) return e2;
33
33
  const t2 = Number(e2.toPrecision(12));
34
34
  return Object.is(t2, -0) ? 0 : t2;
35
35
  }
36
- function ce(e2) {
36
+ function me(e2) {
37
37
  return "number" == typeof e2 && Number.isFinite(e2);
38
38
  }
39
- function he(e2) {
39
+ function ye(e2) {
40
40
  if ("function" == typeof e2) return e2;
41
41
  if (e2 && "object" == typeof e2) {
42
42
  if ("string" == typeof e2.sum) {
@@ -58,46 +58,46 @@ function he(e2) {
58
58
  }
59
59
  return (e3) => e3.length;
60
60
  }
61
- function de(e2, t2) {
61
+ function ve(e2, t2) {
62
62
  return "function" == typeof t2 ? e2.slice().sort(t2) : "asc" === t2 ? e2.slice().sort(((e3, t3) => e3 > t3 ? 1 : e3 < t3 ? -1 : 0)) : "desc" === t2 ? e2.slice().sort(((e3, t3) => e3 < t3 ? 1 : e3 > t3 ? -1 : 0)) : e2;
63
63
  }
64
- function ue(e2, t2) {
65
- if (!ce(e2)) return -1;
64
+ function be(e2, t2) {
65
+ if (!me(e2)) return -1;
66
66
  const s = t2.length - 1;
67
67
  if (e2 < t2[0] || e2 > t2[s]) return -1;
68
68
  if (e2 === t2[s]) return s - 1;
69
69
  for (let i = 0; i < s; i++) if (e2 >= t2[i] && e2 < t2[i + 1]) return i;
70
70
  return -1;
71
71
  }
72
- function fe(e2) {
72
+ function we(e2) {
73
73
  const t2 = [];
74
- for (let s = 0; s < e2.length - 1; s++) t2.push(oe((e2[s] + e2[s + 1]) / 2));
74
+ for (let s = 0; s < e2.length - 1; s++) t2.push(ge((e2[s] + e2[s + 1]) / 2));
75
75
  return t2;
76
76
  }
77
- class pe {
77
+ class Me {
78
78
  constructor(e2, t2) {
79
79
  this.dims = /* @__PURE__ */ new Map(), this.listeners = /* @__PURE__ */ new Map(), this.id = e2, this.records = Array.isArray(t2) ? t2 : [];
80
80
  }
81
81
  static store() {
82
82
  const e2 = globalThis;
83
- return e2[le] || (e2[le] = /* @__PURE__ */ new Map()), e2[le];
83
+ return e2[pe] || (e2[pe] = /* @__PURE__ */ new Map()), e2[pe];
84
84
  }
85
85
  static getOrCreate(e2) {
86
86
  if (!e2 || "string" != typeof e2.id) throw new Error("Crossfilter.getOrCreate requires an { id } string.");
87
- const t2 = pe.store(), s = t2.get(e2.id);
87
+ const t2 = Me.store(), s = t2.get(e2.id);
88
88
  if (s) return e2.records && s.setRecords(e2.records), s;
89
- const i = new pe(e2.id, e2.records);
89
+ const i = new Me(e2.id, e2.records);
90
90
  return t2.set(e2.id, i), i;
91
91
  }
92
92
  static get(e2) {
93
- return pe.store().get(e2) || null;
93
+ return Me.store().get(e2) || null;
94
94
  }
95
95
  setRecords(e2) {
96
96
  return this.records = Array.isArray(e2) ? e2 : [], this.dims.forEach(((e3) => this.recomputeDomain(e3))), this.emit("records", this.state()), this.emit("change", this.state()), this;
97
97
  }
98
98
  registerDimension(e2, t2) {
99
99
  if (!t2 || "function" != typeof t2.dimension) throw new Error(`crossfilter.registerDimension("${e2}") needs a dimension function.`);
100
- const s = t2.type || (t2.bins ? "range" : "category"), i = { accessor: t2.dimension, reducer: he(t2.reduce), type: s, bins: t2.bins, order: t2.order, filter: null, labels: [], edges: null, xLabels: [], yLabels: [] };
100
+ const s = t2.type || (t2.bins ? "range" : "category"), i = { accessor: t2.dimension, reducer: ye(t2.reduce), type: s, bins: t2.bins, order: t2.order, filter: null, labels: [], edges: null, xLabels: [], yLabels: [] };
101
101
  return this.dims.set(e2, i), this.recomputeDomain(i), null != t2.filter && this.setFilterOn(i, t2.filter), this;
102
102
  }
103
103
  hasDimension(e2) {
@@ -117,44 +117,44 @@ class pe {
117
117
  const o = l[0], c = l[1];
118
118
  null == o || i.has(o) || (i.add(o), r.push(o)), null == c || n.has(c) || (n.add(c), a.push(c));
119
119
  }
120
- return { xLabels: de(r, s), yLabels: de(a, s) };
120
+ return { xLabels: ve(r, s), yLabels: ve(a, s) };
121
121
  })(this.records, e2.accessor, e2.order);
122
122
  return e2.xLabels = t2.xLabels, e2.yLabels = t2.yLabels, void (e2.edges = null);
123
123
  }
124
124
  if ("range" === e2.type) return e2.edges = (function(e3, t2, s) {
125
125
  if (s && Array.isArray(s.thresholds) && s.thresholds.length >= 2) {
126
- const e4 = Array.from(new Set(s.thresholds.filter(ce))).sort(((e5, t3) => e5 - t3));
127
- return e4.length >= 2 ? e4.map(oe) : [0, 1];
126
+ const e4 = Array.from(new Set(s.thresholds.filter(me))).sort(((e5, t3) => e5 - t3));
127
+ return e4.length >= 2 ? e4.map(ge) : [0, 1];
128
128
  }
129
129
  let i = 1 / 0, n = -1 / 0;
130
130
  for (let s2 = 0; s2 < e3.length; s2++) {
131
131
  const r2 = t2(e3[s2]);
132
- ce(r2) && (r2 < i && (i = r2), r2 > n && (n = r2));
132
+ me(r2) && (r2 < i && (i = r2), r2 > n && (n = r2));
133
133
  }
134
134
  if (i === 1 / 0) return [0, 1];
135
135
  if (i === n) {
136
136
  const e4 = Math.abs(i) > 0 ? Math.abs(i) : 1;
137
- return [oe(i), oe(i + e4)];
137
+ return [ge(i), ge(i + e4)];
138
138
  }
139
- if (s && ce(s.width) && s.width > 0) {
139
+ if (s && me(s.width) && s.width > 0) {
140
140
  const e4 = s.width, t3 = Math.floor(i / e4) * e4;
141
141
  let r2 = Math.ceil(n / e4) * e4;
142
142
  r2 <= t3 && (r2 = t3 + e4);
143
143
  const a2 = Math.max(1, Math.round((r2 - t3) / e4)), l2 = new Array(a2 + 1);
144
- for (let s2 = 0; s2 <= a2; s2++) l2[s2] = oe(t3 + s2 * e4);
144
+ for (let s2 = 0; s2 <= a2; s2++) l2[s2] = ge(t3 + s2 * e4);
145
145
  return l2;
146
146
  }
147
- const r = s && ce(s.count) && s.count >= 1 ? Math.floor(s.count) : 30, a = (n - i) / r, l = new Array(r + 1);
148
- for (let e4 = 0; e4 <= r; e4++) l[e4] = oe(i + e4 * a);
149
- return l[r] = oe(n), l;
150
- })(this.records, e2.accessor, e2.bins), void (e2.labels = fe(e2.edges));
147
+ const r = s && me(s.count) && s.count >= 1 ? Math.floor(s.count) : 30, a = (n - i) / r, l = new Array(r + 1);
148
+ for (let e4 = 0; e4 <= r; e4++) l[e4] = ge(i + e4 * a);
149
+ return l[r] = ge(n), l;
150
+ })(this.records, e2.accessor, e2.bins), void (e2.labels = we(e2.edges));
151
151
  if (e2.labels = (function(e3, t2, s) {
152
152
  const i = /* @__PURE__ */ new Set(), n = [];
153
153
  for (let s2 = 0; s2 < e3.length; s2++) {
154
154
  const r = t2(e3[s2]);
155
155
  null != r && (i.has(r) || (i.add(r), n.push(r)));
156
156
  }
157
- return de(n, s);
157
+ return ve(n, s);
158
158
  })(this.records, e2.accessor, e2.order), e2.edges = null, e2.filter instanceof Set) {
159
159
  const t2 = new Set(e2.labels);
160
160
  Array.from(e2.filter).forEach(((s) => {
@@ -176,7 +176,7 @@ class pe {
176
176
  setFilterOn(e2, t2) {
177
177
  if (null == t2) return void (e2.filter = null);
178
178
  if ("range" === e2.type) {
179
- if (Array.isArray(t2) && 2 === t2.length && t2.every(ce)) {
179
+ if (Array.isArray(t2) && 2 === t2.length && t2.every(me)) {
180
180
  const [s2, i] = t2;
181
181
  e2.filter = [Math.min(s2, i), Math.max(s2, i)];
182
182
  } else e2.filter = null;
@@ -201,7 +201,7 @@ class pe {
201
201
  if (!this.hasFilter(e2)) return true;
202
202
  const s = e2.accessor(t2);
203
203
  if (e2.filter instanceof Set) return e2.filter.has(s);
204
- if (!ce(s)) return false;
204
+ if (!me(s)) return false;
205
205
  const [i, n] = e2.filter;
206
206
  return s >= i && s <= n;
207
207
  }
@@ -231,10 +231,10 @@ class pe {
231
231
  if ("range" === t2.type) {
232
232
  const e3 = t2.edges || [0, 1], i2 = e3.length - 1, n = Array.from({ length: i2 }, (() => []));
233
233
  for (let i3 = 0; i3 < s.length; i3++) {
234
- const r = ue(t2.accessor(s[i3]), e3);
234
+ const r = be(t2.accessor(s[i3]), e3);
235
235
  r >= 0 && n[r].push(s[i3]);
236
236
  }
237
- return { type: "range", labels: fe(e3), values: n.map(((e4) => t2.reducer(e4))), keys: n.map(((t3, s2) => [e3[s2], e3[s2 + 1]])), edges: e3 };
237
+ return { type: "range", labels: we(e3), values: n.map(((e4) => t2.reducer(e4))), keys: n.map(((t3, s2) => [e3[s2], e3[s2 + 1]])), edges: e3 };
238
238
  }
239
239
  const i = /* @__PURE__ */ new Map();
240
240
  t2.labels.forEach(((e3) => i.set(e3, [])));
@@ -287,9 +287,9 @@ class pe {
287
287
  return (t2 ? Object.keys(t2) : []).map(((e3) => ({ field: e3, label: e3 })));
288
288
  }
289
289
  tableHTML(e2, t2, s) {
290
- const i = "<thead><tr>" + e2.map(((e3) => `<th>${pe.esc(e3.label)}</th>`)).join("") + "</tr></thead>", n = "<tbody>" + t2.map(((t3) => "<tr>" + e2.map(((e3) => {
290
+ const i = "<thead><tr>" + e2.map(((e3) => `<th>${Me.esc(e3.label)}</th>`)).join("") + "</tr></thead>", n = "<tbody>" + t2.map(((t3) => "<tr>" + e2.map(((e3) => {
291
291
  const s2 = t3[e3.field], i2 = e3.format ? e3.format(s2, t3) : s2;
292
- return `<td>${pe.esc(i2)}</td>`;
292
+ return `<td>${Me.esc(i2)}</td>`;
293
293
  })).join("") + "</tr>")).join("") + "</tbody>";
294
294
  return `<table class="apexcharts-cf-table">${`<caption>${t2.length} of ${s} rows</caption>`}${i}${n}</table>`;
295
295
  }
@@ -308,7 +308,7 @@ class pe {
308
308
  } };
309
309
  }
310
310
  destroy() {
311
- pe.store().delete(this.id), this.dims.clear(), this.listeners.clear(), this.records = [];
311
+ Me.store().delete(this.id), this.dims.clear(), this.listeners.clear(), this.records = [];
312
312
  }
313
313
  }
314
314
  const MARK_SELECTOR = [
@@ -461,7 +461,7 @@ class LinkedViews {
461
461
  _cf() {
462
462
  const link = this.w.config.chart.link;
463
463
  const id = link && (link.id || this.w.config.chart.group);
464
- return id ? pe.get(id) : null;
464
+ return id ? Me.get(id) : null;
465
465
  }
466
466
  _isPie() {
467
467
  return PIE_TYPES.indexOf(this.w.config.chart.type) !== -1;
@@ -718,8 +718,8 @@ const AC = (
718
718
  /** @type {any} */
719
719
  ApexCharts
720
720
  );
721
- AC._crossfilterFactory = (opts) => pe.getOrCreate(opts);
722
- AC._crossfilterGet = (id) => pe.get(id);
721
+ AC._crossfilterFactory = (opts) => Me.getOrCreate(opts);
722
+ AC._crossfilterGet = (id) => Me.get(id);
723
723
  export {
724
724
  default2 as default
725
725
  };
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * ApexCharts v7.2.0
2
+ * ApexCharts v7.4.0
3
3
  * (c) 2018-2026 ApexCharts
4
4
  */
5
5
  !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).ApexLink={})}(this,function(e){"use strict";var t=Object.defineProperty,r=Object.defineProperties,s=Object.getOwnPropertyDescriptors,i=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable,o=(e,r,s)=>r in e?t(e,r,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[r]=s;const l=globalThis.ApexCharts,c=globalThis.console;const h="__apexcharts_crossfilters__";function f(e){if(!Number.isFinite(e))return e;const t=Number(e.toPrecision(12));return Object.is(t,-0)?0:t}function u(e){return"number"==typeof e&&Number.isFinite(e)}function d(e){if("function"==typeof e)return e;if(e&&"object"==typeof e){if("string"==typeof e.sum){const t=e.sum;return e=>e.reduce((e,r)=>e+(Number(r[t])||0),0)}if("string"==typeof e.avg){const t=e.avg;return e=>e.length?e.reduce((e,r)=>e+(Number(r[t])||0),0)/e.length:0}if("string"==typeof e.min){const t=e.min;return e=>e.length?Math.min(...e.map(e=>Number(e[t])||0)):0}if("string"==typeof e.max){const t=e.max;return e=>e.length?Math.max(...e.map(e=>Number(e[t])||0)):0}}return e=>e.length}function g(e,t){return"function"==typeof t?e.slice().sort(t):"asc"===t?e.slice().sort((e,t)=>e>t?1:e<t?-1:0):"desc"===t?e.slice().sort((e,t)=>e<t?1:e>t?-1:0):e}function m(e,t){if(!u(e))return-1;const r=t.length-1;if(e<t[0]||e>t[r])return-1;if(e===t[r])return r-1;for(let s=0;s<r;s++)if(e>=t[s]&&e<t[s+1])return s;return-1}function p(e){const t=[];for(let r=0;r<e.length-1;r++)t.push(f((e[r]+e[r+1])/2));return t}class y{constructor(e,t){this.dims=new Map,this.listeners=new Map,this.id=e,this.records=Array.isArray(t)?t:[]}static store(){const e=globalThis;return e[h]||(e[h]=new Map),e[h]}static getOrCreate(e){if(!e||"string"!=typeof e.id)throw new Error("Crossfilter.getOrCreate requires an { id } string.");const t=y.store(),r=t.get(e.id);if(r)return e.records&&r.setRecords(e.records),r;const s=new y(e.id,e.records);return t.set(e.id,s),s}static get(e){return y.store().get(e)||null}setRecords(e){return this.records=Array.isArray(e)?e:[],this.dims.forEach(e=>this.recomputeDomain(e)),this.emit("records",this.state()),this.emit("change",this.state()),this}registerDimension(e,t){if(!t||"function"!=typeof t.dimension)throw new Error(`crossfilter.registerDimension("${e}") needs a dimension function.`);const r=t.type||(t.bins?"range":"category"),s={accessor:t.dimension,reducer:d(t.reduce),type:r,bins:t.bins,order:t.order,filter:null,labels:[],edges:null,xLabels:[],yLabels:[]};return this.dims.set(e,s),this.recomputeDomain(s),null!=t.filter&&this.setFilterOn(s,t.filter),this}hasDimension(e){return this.dims.has(e)}removeDimension(e){const t=this.dims.get(e),r=!!t&&this.hasFilter(t);return this.dims.delete(e),r&&this.emit("change",this.state()),this}recomputeDomain(e){if("matrix"===e.type){const t=function(e,t,r){const s=new Set,i=new Set,n=[],a=[];for(let r=0;r<e.length;r++){const o=t(e[r]);if(!o)continue;const l=o[0],c=o[1];null==l||s.has(l)||(s.add(l),n.push(l)),null==c||i.has(c)||(i.add(c),a.push(c))}return{xLabels:g(n,r),yLabels:g(a,r)}}(this.records,e.accessor,e.order);return e.xLabels=t.xLabels,e.yLabels=t.yLabels,void(e.edges=null)}if("range"===e.type)return e.edges=function(e,t,r){if(r&&Array.isArray(r.thresholds)&&r.thresholds.length>=2){const e=Array.from(new Set(r.thresholds.filter(u))).sort((e,t)=>e-t);return e.length>=2?e.map(f):[0,1]}let s=1/0,i=-1/0;for(let r=0;r<e.length;r++){const n=t(e[r]);u(n)&&(n<s&&(s=n),n>i&&(i=n))}if(s===1/0)return[0,1];if(s===i){const e=Math.abs(s)>0?Math.abs(s):1;return[f(s),f(s+e)]}if(r&&u(r.width)&&r.width>0){const e=r.width,t=Math.floor(s/e)*e;let n=Math.ceil(i/e)*e;n<=t&&(n=t+e);const a=Math.max(1,Math.round((n-t)/e)),o=new Array(a+1);for(let r=0;r<=a;r++)o[r]=f(t+r*e);return o}const n=r&&u(r.count)&&r.count>=1?Math.floor(r.count):30,a=(i-s)/n,o=new Array(n+1);for(let e=0;e<=n;e++)o[e]=f(s+e*a);return o[n]=f(i),o}(this.records,e.accessor,e.bins),void(e.labels=p(e.edges));if(e.labels=function(e,t,r){const s=new Set,i=[];for(let r=0;r<e.length;r++){const n=t(e[r]);null!=n&&(s.has(n)||(s.add(n),i.push(n)))}return g(i,r)}(this.records,e.accessor,e.order),e.edges=null,e.filter instanceof Set){const t=new Set(e.labels);Array.from(e.filter).forEach(r=>{t.has(r)||e.filter.delete(r)})}}filter(e,t){const r=this.dims.get(e);return r?(this.setFilterOn(r,t),this.emit("change",this.state()),this):this}toggleKey(e,t){const r=this.dims.get(e);if(!r||"category"!==r.type)return this;r.filter instanceof Set||(r.filter=new Set);const s=r.filter;return s.has(t)?s.delete(t):s.add(t),0===s.size&&(r.filter=null),this.emit("change",this.state()),this}setFilterOn(e,t){if(null==t)return void(e.filter=null);if("range"===e.type){if(Array.isArray(t)&&2===t.length&&t.every(u)){const[r,s]=t;e.filter=[Math.min(r,s),Math.max(r,s)]}else e.filter=null;return}const r=new Set(t);e.filter=r.size?r:null}clear(e){const t=this.dims.get(e);return t&&(t.filter=null),this.emit("change",this.state()),this}reset(){return this.dims.forEach(e=>{e.filter=null}),this.emit("change",this.state()),this}hasFilter(e){return null!=e.filter&&(!(e.filter instanceof Set)||e.filter.size>0)}passes(e,t){if(!this.hasFilter(e))return!0;const r=e.accessor(t);if(e.filter instanceof Set)return e.filter.has(r);if(!u(r))return!1;const[s,i]=e.filter;return r>=s&&r<=i}filteredRecords(e){const t=[];return this.dims.forEach((r,s)=>{s!==e&&this.hasFilter(r)&&t.push(r)}),0===t.length?this.records:this.records.filter(e=>t.every(t=>this.passes(t,e)))}filteredRows(){return this.filteredRecords(null)}aggregateFor(e){const t=this.dims.get(e);if(!t)return{type:"category",labels:[],values:[],keys:[]};const r=this.filteredRecords(e);if("matrix"===t.type){const e=new Map(t.xLabels.map((e,t)=>[e,t])),s=new Map(t.yLabels.map((e,t)=>[e,t])),i=t.yLabels.map(()=>t.xLabels.map(()=>[]));for(let n=0;n<r.length;n++){const a=t.accessor(r[n]);if(!a)continue;const o=e.get(a[0]),l=s.get(a[1]);null!=o&&null!=l&&i[l][o].push(r[n])}return{type:"matrix",xLabels:t.xLabels.slice(),yLabels:t.yLabels.slice(),matrix:i.map(e=>e.map(e=>t.reducer(e)))}}if("range"===t.type){const e=t.edges||[0,1],s=e.length-1,i=Array.from({length:s},()=>[]);for(let s=0;s<r.length;s++){const n=m(t.accessor(r[s]),e);n>=0&&i[n].push(r[s])}return{type:"range",labels:p(e),values:i.map(e=>t.reducer(e)),keys:i.map((t,r)=>[e[r],e[r+1]]),edges:e}}const s=new Map;t.labels.forEach(e=>s.set(e,[]));for(let e=0;e<r.length;e++){const i=s.get(t.accessor(r[e]));i&&i.push(r[e])}return{type:"category",labels:t.labels.slice(),values:t.labels.map(e=>t.reducer(s.get(e)||[])),keys:t.labels.slice()}}aggregateAll(){const e={};return this.dims.forEach((t,r)=>{e[r]=this.aggregateFor(r)}),e}state(){const e={};return this.dims.forEach((t,r)=>{this.hasFilter(t)&&(e[r]=t.filter instanceof Set?Array.from(t.filter):t.filter.slice())}),{filters:e,filteredCount:this.filteredRows().length,total:this.records.length}}filterOf(e){const t=this.dims.get(e);return t&&this.hasFilter(t)?t.filter instanceof Set?new Set(t.filter):t.filter.slice():null}on(e,t){let r=this.listeners.get(e);return r||(r=new Set,this.listeners.set(e,r)),r.add(t),()=>this.off(e,t)}off(e,t){var r;return null==(r=this.listeners.get(e))||r.delete(t),this}emit(e,t){var r;null==(r=this.listeners.get(e))||r.forEach(r=>{try{r(t)}catch(t){!function(e,...t){c.error(e,...t)}(`[Apex] a crossfilter ${e} listener threw`,t)}})}static esc(e){return String(null==e?"":e).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;")}resolveColumns(e){if(Array.isArray(e)&&e.length)return e.map(e=>"string"==typeof e?{field:e,label:e}:{field:e.field,label:e.label||e.field,format:e.format});const t=this.records[0];return(t?Object.keys(t):[]).map(e=>({field:e,label:e}))}tableHTML(e,t,r){const s="<thead><tr>"+e.map(e=>`<th>${y.esc(e.label)}</th>`).join("")+"</tr></thead>",i="<tbody>"+t.map(t=>"<tr>"+e.map(e=>{const r=t[e.field],s=e.format?e.format(r,t):r;return`<td>${y.esc(s)}</td>`}).join("")+"</tr>").join("")+"</tbody>";return`<table class="apexcharts-cf-table"><caption>${t.length} of ${r} rows</caption>${s}${i}</table>`}dataTable(e,t){if(!e)return{refresh(){},destroy(){}};const r=t||{},s=this.resolveColumns(r.columns),i=r.pageSize||0,n=r.page||0,a=()=>{const t=this.filteredRows(),r=i?t.slice(n*i,n*i+i):t;e.innerHTML=this.tableHTML(s,r,t.length)};a();const o=this.on("change",a);return{refresh:a,destroy:()=>{o(),e.innerHTML=""}}}destroy(){y.store().delete(this.id),this.dims.clear(),this.listeners.clear(),this.records=[]}}const b=[".apexcharts-bar-area",".apexcharts-candlestick-area",".apexcharts-boxPlot-area",".apexcharts-rangebar-area",".apexcharts-marker"].join(", "),_=[".apexcharts-pie-area",".apexcharts-bar-area"].join(", "),x="apexcharts-crossfilter-dimmed",w=["pie","donut","polarArea","radialBar"];l.registerFeatures({linkedViews:class{constructor(e,t){this.w=e,this.ctx=t,this._dimmed=!1,this._wired=!1,this._pending=!1,this._lastValues=null,this._onPointSelect=this._onPointSelect.bind(this),this._afterRender=this._afterRender.bind(this),this._onChange=this._onChange.bind(this),"filter"===this._mode()&&this._initEngine()}_mode(){const e=this.w.config.chart.link;return e&&"function"==typeof e.dimension?"filter":e&&e.enabled?"highlight":"off"}_enabled(){const e=this.w.config.chart.link;return!(!e||!e.enabled)}onSourceSelection(e){var t;const r=this._mode();if("off"===r)return;if(!e||null==e.min||null==e.max)return;let s=Math.min(e.min,e.max),i=Math.max(e.min,e.max);const n=this.w.globals.minX,a=this.w.globals.maxX;if(isFinite(n)&&isFinite(a)&&a>n){const e=1e-6*(a-n);s-n<=e&&(s=n),a-i<=e&&(i=a)}if("filter"===r){const e=this._cf();if(!e)return;return e.filter(this._chartId(),[s,i]),void this._fireFilterChange(e,[s,i])}this._group().forEach(e=>{var t;null==(t=null==e?void 0:e.linkedViews)||t.applyDim(s,i)});const o={xaxis:{min:s,max:i},sourceChartID:this.w.globals.chartID};"function"==typeof this.w.config.chart.events.crossFilter&&this.w.config.chart.events.crossFilter(this.ctx,o),null==(t=this.ctx.events)||t.fireEvent("crossFilter",[this.ctx,o])}_group(){const e="function"==typeof this.ctx.getGroupedCharts?this.ctx.getGroupedCharts():[];return[this.ctx,...e]}applyDim(e,t){if(!this._enabled())return;const r=this.w,s=r.dom.baseEl;if(!s)return;const i=r.config.chart.link.dimOpacity;r.dom.elWrap&&"number"==typeof i&&r.dom.elWrap.style.setProperty("--apx-cf-dim",String(i));const n=r.globals.seriesX||[];s.querySelectorAll(b).forEach(r=>{const s=r.getAttribute("j");if(null===s)return;const i=parseInt(s,10),a=r.getAttribute("index"),o=null===a?0:parseInt(a,10),l=n[o]||n[0];if(!l)return;const c=l[i];null!=c&&r.classList.toggle(x,c<e||c>t)}),this._dimmed=!0}clear(){const e=this.w.dom.baseEl;e&&(e.querySelectorAll("."+x).forEach(e=>e.classList.remove(x)),this._dimmed=!1)}clearGroup(){if("filter"===this._mode()){const e=this._cf();return void(e&&e.reset())}this._group().forEach(e=>{var t;return null==(t=null==e?void 0:e.linkedViews)?void 0:t.clear()})}_chartId(){return this.w.globals.chartID}_cf(){const e=this.w.config.chart.link,t=e&&(e.id||this.w.config.chart.group);return t?y.get(t):null}_isPie(){return-1!==w.indexOf(this.w.config.chart.type)}_isHeatmap(){return"heatmap"===this.w.config.chart.type}_initEngine(){const e=this._cf(),t=this.w.config.chart.link;if(!e){const e=t&&t.id||this.w.config.chart.group;return void console.warn(`[apexcharts] chart.link.dimension is set but no crossfilter coordinator "${e}" exists. Call ApexCharts.crossfilter({ id, records }) before creating the chart.`)}const r=this._chartId();e.hasDimension(r)||e.registerDimension(r,{dimension:t.dimension,reduce:t.reduce,type:t.type||(this._isHeatmap()?"matrix":void 0),bins:t.bins,order:t.order}),this._injectSeries(e.aggregateFor(r)),this._wire(e)}_seriesFromAgg(e){if("matrix"===e.type)return e.yLabels.map((t,r)=>({name:String(t),data:e.xLabels.map((t,s)=>({x:String(t),y:e.matrix[r][s]}))}));if(this._isPie())return e.values.slice();const t=this.w.config.chart.link.seriesName||"Count";return"range"===e.type?[{name:t,data:e.labels.map((t,r)=>[t,e.values[r]])}]:[{name:t,data:e.values.slice()}]}_sigOf(e){return JSON.stringify(e.matrix||e.values)}_injectSeries(e){const t=this.w;this._lastValues=this._sigOf(e),t.config.series=this._seriesFromAgg(e),"matrix"!==e.type&&(this._isPie()?t.config.labels=e.labels.map(String):"category"===e.type?(t.config.xaxis||(t.config.xaxis={}),t.config.xaxis.categories=e.labels.map(String)):"range"===e.type&&this._pinRangeDomain(e.edges))}_pinRangeDomain(e){if(!Array.isArray(e)||e.length<2)return;const t=this.w;t.config.xaxis||(t.config.xaxis={}),null==t.config.xaxis.min&&(t.config.xaxis.min=e[0]),null==t.config.xaxis.max&&(t.config.xaxis.max=e[e.length-1])}_wire(e){this._wired||(this._wired=!0,this.ctx.addEventListener("dataPointSelection",this._onPointSelect),this.ctx.addEventListener("mounted",this._afterRender),this.ctx.addEventListener("updated",this._afterRender),e.on("change",this._onChange))}_onPointSelect(e,t,r){if("filter"!==this._mode()||!r||null==r.dataPointIndex)return;const s=this._cf();if(!s)return;const i=this._chartId(),n=s.aggregateFor(i);if("matrix"===n.type)return;const a=n.keys[r.dataPointIndex];null!=a&&(s.toggleKey(i,a),this._fireFilterChange(s,a))}_onChange(){"filter"!==this._mode()||this._pending||(this._pending=!0,Promise.resolve().then(()=>{this._pending=!1,this.w.globals.isDestroyed||this._applyAggregation()}))}_applyAggregation(){if("filter"!==this._mode())return;const e=this._cf();if(!e)return;const t=e.aggregateFor(this._chartId()),r=this._sigOf(t);r!==this._lastValues?(this._lastValues=r,this.ctx.updateSeries(this._seriesFromAgg(t),!0)):this._applySelfDim()}_afterRender(){if("filter"!==this._mode())return;const e=this.w.config.series;e&&0!==e.length?this._applySelfDim():this._reassertSeries()}_reassertSeries(){this._pending||(this._pending=!0,Promise.resolve().then(()=>{if(this._pending=!1,this.w.globals.isDestroyed)return;const e=this._cf();if(!e)return;const t=e.aggregateFor(this._chartId()),r=this._seriesFromAgg(t);r.length&&(this._lastValues=this._sigOf(t),this.ctx.updateSeries(r,!0))}))}_applySelfDim(){const e=this._cf();if(!e)return;const t=this.w,r=t.dom.baseEl;if(!r)return;const s=this._chartId(),i=e.filterOf(s),n=t.config.chart.link.dimOpacity;t.dom.elWrap&&"number"==typeof n&&t.dom.elWrap.style.setProperty("--apx-cf-dim",String(n));const a=i instanceof Set,o=Array.isArray(i),l=e.aggregateFor(s);if("matrix"===l.type)return;const c=l.keys;r.querySelectorAll(_).forEach(e=>{const t=e.getAttribute("j");if(null===t)return;const r=c[parseInt(t,10)];let s=!1;a?s=!i.has(r):o&&Array.isArray(r)&&(s=r[1]<=i[0]||r[0]>=i[1]),e.classList.toggle(x,s)}),this._dimmed=!!i}_fireFilterChange(e,t){var l;const c=(h=((e,t)=>{for(var r in t||(t={}))n.call(t,r)&&o(e,r,t[r]);if(i)for(var r of i(t))a.call(t,r)&&o(e,r,t[r]);return e})({},e.state()),f={sourceChartID:this._chartId(),key:t},r(h,s(f)));var h,f;const u=this.w.config.chart.events;"function"==typeof u.filterChange&&u.filterChange(this.ctx,c),null==(l=this.ctx.events)||l.fireEvent("filterChange",[this.ctx,c])}teardown(){var e,t,r,s,i,n;if(this.clear(),this._wired){null==(t=(e=this.ctx).removeEventListener)||t.call(e,"dataPointSelection",this._onPointSelect),null==(s=(r=this.ctx).removeEventListener)||s.call(r,"mounted",this._afterRender),null==(n=(i=this.ctx).removeEventListener)||n.call(i,"updated",this._afterRender);const a=this._cf();a&&(a.off("change",this._onChange),a.removeDimension(this._chartId())),this._wired=!1}}}});const v=l;v._crossfilterFactory=e=>y.getOrCreate(e),v._crossfilterGet=e=>y.get(e),e.default=l,Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * ApexCharts v7.2.0
2
+ * ApexCharts v7.4.0
3
3
  * (c) 2018-2026 ApexCharts
4
4
  */
5
5
  "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});function e(e){if(e&&e.__esModule)return e;const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e)for(const r in e)if("default"!==r){const l=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,l.get?l:{enumerable:!0,get:()=>e[r]})}return t.default=e,Object.freeze(t)}const t=e(require("apexcharts/core")),r=t.__apex_Graphics,l=t.__apex_Utils;t.default._customSeriesFactory=function(e,t){const s=class{constructor(e,t,r){this.w=e,this.ctx=t,this.xyRatios=r,this._warned=!1}draw(e,s,a){var i,n;const o=this.w,u=new r(o,this.ctx),c=function(e,t){const r=e&&e.renderer;return r&&r.kind&&"svg"!==r.kind?r:t}(this.ctx,u),d=u.group({class:"apexcharts-marks-series"});return e.forEach((e,r)=>{var s;const i=Array.isArray(a)?a[r]:r,n=u.group({class:"apexcharts-series",rel:i+1,seriesName:l.escapeString(o.seriesData.seriesNames[i]),"data:realIndex":i}),h=this._scales(i,(o.seriesData.series[i]||[]).length),x=o.globals.colors[i],y=(null==(s=o.config.series[i])?void 0:s.data)||[],p=o.seriesData.seriesX[i]||[],f=o.seriesData.series[i]||[];o.globals.seriesXvalues[i]=[],o.globals.seriesYvalues[i]=[],void 0===o.globals.pointsArray[i]&&(o.globals.pointsArray[i]=[]);for(let e=0;e<f.length;e++){const r=f[e];if(null==r)continue;const l=p[e],s=h.xAt(e,l),a=h.y(r),u=this._api(c,n,i,e);try{t.renderItem({datum:y[e],x:s,y:a,scales:h,api:u,seriesIndex:i,dataPointIndex:e,color:x})}catch(e){this._warned||(this._warned=!0)}o.globals.seriesXvalues[i][e]=s,o.globals.seriesYvalues[i][e]=a,o.globals.pointsArray[i][e]=[s,a]}u.setupEventDelegation(n,".apexcharts-marks-mark"),d.add(n)}),null==(n=null==(i=this.ctx.animations)?void 0:i.animationCompleted)||n.call(i,d),d}_scales(e,t){var r,l,s,a;const i=this.w.globals,n=this.w.config,o=this.xyRatios.xRatio,u=this.xyRatios.yRatio,c=null!=(l=null==(r=i.seriesYAxisReverseMap)?void 0:r[e])?l:0,d=Array.isArray(u)?null!=(s=u[c])?s:u[0]:u,h=i.maxYArr,x=Array.isArray(h)&&h.length&&null!=(a=h[c])?a:i.maxY,y=i.gridWidth,p=i.gridHeight,f=!i.isXNumeric,g=t||i.dataPoints||1,k=g>0?y/g:y,m="on"===n.xaxis.tickPlacement,b=e=>o?(e-i.minX)/o:y/2,v=i.minXDiff||1;return{x:b,xAt:(e,t)=>f?m&&g>1?e/(g-1)*y:(e+.5)*k:b(t),y:e=>(x-e)/d,gridWidth:y,gridHeight:p,band:f?k:o?v/o:y}}_api(e,t,r,l){const s=e=>{if(e){try{e.node.setAttribute("index",String(r)),e.node.setAttribute("j",String(l)),e.node.classList.add("apexcharts-marks-mark")}catch(e){}t.add(e)}return e};return{path:(t={})=>{var r,l,a,i,n,o,u,c,d;return s(e.drawPath({d:t.d||"",stroke:null!=(r=t.stroke)?r:"#000",strokeWidth:null!=(a=null!=(l=t.width)?l:t.strokeWidth)?a:1,fill:null!=(i=t.fill)?i:"none",fillOpacity:null!=(o=t.fillOpacity)?o:t.fill&&"none"!==t.fill?null!=(n=t.opacity)?n:1:0,strokeOpacity:null!=(c=null!=(u=t.strokeOpacity)?u:t.opacity)?c:1,strokeDashArray:null!=(d=t.dash)?d:0,strokeLinecap:t.lineCap}))},line:(t={})=>{var r,l,a,i;return s(e.drawLine(t.x1,t.y1,t.x2,t.y2,null!=(r=t.stroke)?r:"#000",null!=(l=t.dash)?l:0,null!=(i=null!=(a=t.width)?a:t.strokeWidth)?i:1))},rect:(t={})=>{var r,l,a,i,n,o,u,c;return s(e.drawRect(null!=(r=t.x)?r:0,null!=(l=t.y)?l:0,null!=(a=t.w)?a:0,null!=(i=t.h)?i:0,null!=(n=t.r)?n:0,null!=(o=t.fill)?o:"#000",null!=(u=t.opacity)?u:1,null!=t.stroke?null!=(c=t.strokeWidth)?c:1:null,t.stroke))},circle:(t={})=>{var r,l,a,i,n;return s(e.drawCircle(null!=(r=t.r)?r:0,{cx:null!=(l=t.cx)?l:0,cy:null!=(a=t.cy)?a:0,fill:null!=(i=t.fill)?i:"#000",stroke:t.stroke||"none","stroke-width":null!=(n=t.strokeWidth)?n:t.stroke?1:0}))},text:(t={})=>{var r,l,a,i;return s(e.drawText({x:null!=(r=t.x)?r:0,y:null!=(l=t.y)?l:0,text:null!=(a=t.text)?a:"",textAnchor:null!=(i=t.anchor)?i:"start",fontSize:t.size,foreColor:t.color,fontWeight:t.weight}))}}}};return s.dataType=t.dataType||"xy",s.yExtent="function"==typeof t.yExtent?t.yExtent:null,s},Object.defineProperty(exports,"default",{enumerable:!0,get:()=>t.default});
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * ApexCharts v7.2.0
2
+ * ApexCharts v7.4.0
3
3
  * (c) 2018-2026 ApexCharts
4
4
  */
5
5
  import * as _core from "apexcharts/core";
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * ApexCharts v7.2.0
2
+ * ApexCharts v7.4.0
3
3
  * (c) 2018-2026 ApexCharts
4
4
  */
5
5
  !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).ApexMarks={})}(this,function(e){"use strict";const t=globalThis.ApexCharts,s=globalThis.ApexCharts.__internals.__apex_Graphics,l=globalThis.ApexCharts.__internals.__apex_Utils;t._customSeriesFactory=function(e,t){const r=class{constructor(e,t,s){this.w=e,this.ctx=t,this.xyRatios=s,this._warned=!1}draw(r,i,a){var n,o;const u=this.w,c=new s(u,this.ctx),d=function(e,t){const s=e&&e.renderer;return s&&s.kind&&"svg"!==s.kind?s:t}(this.ctx,c),h=c.group({class:"apexcharts-marks-series"});return r.forEach((s,r)=>{var i;const n=Array.isArray(a)?a[r]:r,o=c.group({class:"apexcharts-series",rel:n+1,seriesName:l.escapeString(u.seriesData.seriesNames[n]),"data:realIndex":n}),x=this._scales(n,(u.seriesData.series[n]||[]).length),p=u.globals.colors[n],y=(null==(i=u.config.series[n])?void 0:i.data)||[],f=u.seriesData.seriesX[n]||[],g=u.seriesData.series[n]||[];u.globals.seriesXvalues[n]=[],u.globals.seriesYvalues[n]=[],void 0===u.globals.pointsArray[n]&&(u.globals.pointsArray[n]=[]);for(let s=0;s<g.length;s++){const l=g[s];if(null==l)continue;const r=f[s],i=x.xAt(s,r),a=x.y(l),c=this._api(d,o,n,s);try{t.renderItem({datum:y[s],x:i,y:a,scales:x,api:c,seriesIndex:n,dataPointIndex:s,color:p})}catch(t){this._warned||(console.warn(`[apexcharts] renderItem for series type "${e}" threw; skipping datum:`,t),this._warned=!0)}u.globals.seriesXvalues[n][s]=i,u.globals.seriesYvalues[n][s]=a,u.globals.pointsArray[n][s]=[i,a]}c.setupEventDelegation(o,".apexcharts-marks-mark"),h.add(o)}),null==(o=null==(n=this.ctx.animations)?void 0:n.animationCompleted)||o.call(n,h),h}_scales(e,t){var s,l,r,i;const a=this.w.globals,n=this.w.config,o=this.xyRatios.xRatio,u=this.xyRatios.yRatio,c=null!=(l=null==(s=a.seriesYAxisReverseMap)?void 0:s[e])?l:0,d=Array.isArray(u)?null!=(r=u[c])?r:u[0]:u,h=a.maxYArr,x=Array.isArray(h)&&h.length&&null!=(i=h[c])?i:a.maxY,p=a.gridWidth,y=a.gridHeight,f=!a.isXNumeric,g=t||a.dataPoints||1,k=g>0?p/g:p,m="on"===n.xaxis.tickPlacement,v=e=>o?(e-a.minX)/o:p/2,w=a.minXDiff||1;return{x:v,xAt:(e,t)=>f?m&&g>1?e/(g-1)*p:(e+.5)*k:v(t),y:e=>(x-e)/d,gridWidth:p,gridHeight:y,band:f?k:o?w/o:p}}_api(e,t,s,l){const r=e=>{if(e){try{e.node.setAttribute("index",String(s)),e.node.setAttribute("j",String(l)),e.node.classList.add("apexcharts-marks-mark")}catch(e){}t.add(e)}return e};return{path:(t={})=>{var s,l,i,a,n,o,u,c,d;return r(e.drawPath({d:t.d||"",stroke:null!=(s=t.stroke)?s:"#000",strokeWidth:null!=(i=null!=(l=t.width)?l:t.strokeWidth)?i:1,fill:null!=(a=t.fill)?a:"none",fillOpacity:null!=(o=t.fillOpacity)?o:t.fill&&"none"!==t.fill?null!=(n=t.opacity)?n:1:0,strokeOpacity:null!=(c=null!=(u=t.strokeOpacity)?u:t.opacity)?c:1,strokeDashArray:null!=(d=t.dash)?d:0,strokeLinecap:t.lineCap}))},line:(t={})=>{var s,l,i,a;return r(e.drawLine(t.x1,t.y1,t.x2,t.y2,null!=(s=t.stroke)?s:"#000",null!=(l=t.dash)?l:0,null!=(a=null!=(i=t.width)?i:t.strokeWidth)?a:1))},rect:(t={})=>{var s,l,i,a,n,o,u,c;return r(e.drawRect(null!=(s=t.x)?s:0,null!=(l=t.y)?l:0,null!=(i=t.w)?i:0,null!=(a=t.h)?a:0,null!=(n=t.r)?n:0,null!=(o=t.fill)?o:"#000",null!=(u=t.opacity)?u:1,null!=t.stroke?null!=(c=t.strokeWidth)?c:1:null,t.stroke))},circle:(t={})=>{var s,l,i,a,n;return r(e.drawCircle(null!=(s=t.r)?s:0,{cx:null!=(l=t.cx)?l:0,cy:null!=(i=t.cy)?i:0,fill:null!=(a=t.fill)?a:"#000",stroke:t.stroke||"none","stroke-width":null!=(n=t.strokeWidth)?n:t.stroke?1:0}))},text:(t={})=>{var s,l,i,a;return r(e.drawText({x:null!=(s=t.x)?s:0,y:null!=(l=t.y)?l:0,text:null!=(i=t.text)?i:"",textAnchor:null!=(a=t.anchor)?a:"start",fontSize:t.size,foreColor:t.color,fontWeight:t.weight}))}}}};return r.dataType=t.dataType||"xy",r.yExtent="function"==typeof t.yExtent?t.yExtent:null,r},e.default=t,Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * ApexCharts v7.2.0
2
+ * ApexCharts v7.4.0
3
3
  * (c) 2018-2026 ApexCharts
4
4
  */
5
5
  "use strict";var e=Object.defineProperty,t=Object.defineProperties,s=Object.getOwnPropertyDescriptors,i=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable,o=(t,s,i)=>s in t?e(t,s,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[s]=i,a=(e,t)=>{for(var s in t||(t={}))r.call(t,s)&&o(e,s,t[s]);if(i)for(var s of i(t))n.call(t,s)&&o(e,s,t[s]);return e},h=(e,i)=>t(e,s(i));Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});function d(e){if(e&&e.__esModule)return e;const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e)for(const s in e)if("default"!==s){const i=Object.getOwnPropertyDescriptor(e,s);Object.defineProperty(t,s,i.get?i:{enumerable:!0,get:()=>e[s]})}return t.default=e,Object.freeze(t)}const c=d(require("apexcharts/core")),l=c.__apex_Graphics,u=c.__apex_Environment_Environment;c.default.registerFeatures({measure:class{constructor(e,t){this.w=e,this.ctx=t,this.graphics=new l(e),this.pins=[],this.drag=null,this.armed=!1,this.persistent=!1,this.pane=null,this._seedActive=!1,this._onKeyDown=this._onKeyDown.bind(this),this._onKeyUp=this._onKeyUp.bind(this),this._onDown=this._onDown.bind(this),this._onMove=this._onMove.bind(this),this._onUp=this._onUp.bind(this),this._onSeedDown=this._onSeedDown.bind(this),this._onSeedKey=this._onSeedKey.bind(this),this._afterRender=this._afterRender.bind(this),t.addEventListener("mounted",this._afterRender),t.addEventListener("updated",this._afterRender),this._bindKeys()}_cfg(){return this.w.config.chart.measure||{}}_enabled(){return this.w.globals.axisCharts&&!0===this._cfg().enabled}_mode(){return"free"===this._cfg().mode?"free":"span"}_snapToSeries(e){const t=(this.w.config.series||[])[0];if(!t)return null;const s=this._points(t.data||[]);if(!s.length)return null;let i=s[0],r=Math.abs(s[0].x-e);for(let t=1;t<s.length;t++){const n=Math.abs(s[t].x-e);n<r&&(r=n,i=s[t])}return i}_resolve(e){if("free"===this._mode())return e;const t=this._snapToSeries(e.x);if(!t)return e;const s=this._dataToGrid(t.x,t.y);return{x:t.x,y:t.y,gx:s.gx,gy:s.gy}}_doc(){return this.w.dom.baseEl&&this.w.dom.baseEl.ownerDocument}_bindKeys(){if(this._keysBound)return;const e=this._doc();e&&(e.addEventListener("keydown",this._onKeyDown),e.addEventListener("keyup",this._onKeyUp),this._keysBound=!0)}_onKeyDown(e){if(!this._enabled()||this.persistent)return;const t=this._cfg().key||"m";e.key&&e.key.toLowerCase()===String(t).toLowerCase()?this._arm():"Escape"===e.key&&this._cancelDrag()}_onKeyUp(e){if(this.persistent)return;const t=this._cfg().key||"m";e.key&&e.key.toLowerCase()===String(t).toLowerCase()&&(this.drag||this._disarm())}startMeasure(){this._enabled()&&(this.persistent=!0,this._arm())}stopMeasure(){this.persistent=!1,this._cancelDrag(),this._disarm()}seedFromClient(e,t){if(!this._enabled())return;this._cancelDrag(),this._endSeed(!1);const s=this._project(e,t);this.drag={a:s,b:s},this._seedActive=!0;const i=this._doc();i&&(i.addEventListener("mousemove",this._onMove),i.addEventListener("touchmove",this._onMove,{passive:!1}),i.addEventListener("mousedown",this._onSeedDown,!0),i.addEventListener("touchstart",this._onSeedDown,!0),i.addEventListener("keydown",this._onSeedKey,!0)),this._renderLive()}_onSeedDown(e){if(!this._seedActive||!this.drag)return;e.preventDefault(),e.stopPropagation();const{cx:t,cy:s}=this._clientXY(e);this.drag.b=this._project(t,s),this._endSeed(!0)}_onSeedKey(e){"Escape"===e.key&&this._endSeed(!1)}_endSeed(e){var t,s;if(!this._seedActive)return;this._seedActive=!1;const i=this._doc();i&&(i.removeEventListener("mousemove",this._onMove),i.removeEventListener("touchmove",this._onMove),i.removeEventListener("mousedown",this._onSeedDown,!0),i.removeEventListener("touchstart",this._onSeedDown,!0),i.removeEventListener("keydown",this._onSeedKey,!0));const r=this.drag;if(this.drag=null,this._clearLive(),!e||!r)return;const n=this._resolve(r.a),o=this._resolve(r.b);if(Math.abs(n.gx-o.gx)<2&&Math.abs(n.gy-o.gy)<2)return;const a=this._mode();!1!==this._cfg().pinOnRelease&&(this.pins.push({xa:n.x,ya:n.y,xb:o.x,yb:o.y,mode:a}),this._renderPins(),null==(s=null==(t=this.ctx.history)?void 0:t.snapshot)||s.call(t,"measure")),this._fireMeasured(n,o)}clearMeasures(){var e,t;this.pins=[],this._renderPins(),null==(t=null==(e=this.ctx.history)?void 0:e.snapshot)||t.call(e,"clear measures")}getPins(){return this.pins.map(e=>({xa:e.xa,ya:e.ya,xb:e.xb,yb:e.yb,mode:"free"===e.mode?"free":"span"}))}setPins(e){this.pins=Array.isArray(e)?e.filter(e=>e&&isFinite(e.xa)&&isFinite(e.ya)&&isFinite(e.xb)&&isFinite(e.yb)).map(e=>({xa:+e.xa,ya:+e.ya,xb:+e.xb,yb:+e.yb,mode:"free"===e.mode?"free":"span"})):[],this._renderPins()}_points(e){const t=[];for(let s=0;s<e.length;s++){const i=e[s];let r,n;Array.isArray(i)?(r=+i[0],n=+i[1]):i&&"object"==typeof i?(r=+i.x,n=+i.y):(r=s,n=+i),isFinite(r)&&isFinite(n)&&t.push({x:r,y:n})}return t}_arm(){if(this.armed||!this._enabled())return;const e=this.w,t=e.dom.elGraphical;if(!t)return;this.armed=!0;const s=this.graphics.drawRect(0,0,e.layout.gridWidth,e.layout.gridHeight);s.node.setAttribute("class","apexcharts-measure-capture"),s.node.setAttribute("fill","transparent"),s.node.style.cursor="crosshair",s.node.style.pointerEvents="all",s.node.addEventListener("mousedown",this._onDown),s.node.addEventListener("touchstart",this._onDown,{passive:!1}),t.add(s),this.pane=s}_disarm(){if(this.armed=!1,this.pane){this.pane.node.removeEventListener("mousedown",this._onDown),this.pane.node.removeEventListener("touchstart",this._onDown);const e=this.pane.node;e.parentNode&&e.parentNode.removeChild(e),this.pane=null}}_clientXY(e){const t=e.touches&&e.touches[0]?e.touches[0]:e;return{cx:t.clientX,cy:t.clientY}}_gridRect(){const e=this.w.dom.baseEl.querySelector(".apexcharts-grid");return e?e.getBoundingClientRect():null}_yRange(){const e=this.w.globals,t=e.yAxisScale&&e.yAxisScale[0];return t&&isFinite(t.niceMin)&&isFinite(t.niceMax)&&t.niceMax!==t.niceMin?[t.niceMin,t.niceMax]:[e.minY,e.maxY]}_project(e,t){const s=this.w,i=this._gridRect(),r=s.layout.gridWidth,n=s.layout.gridHeight,o=e=>e<0?0:e>1?1:e,a=i?o((e-i.left)/i.width):0,h=i?o((t-i.top)/i.height):0,[d,c]=this._yRange();return{x:s.globals.minX+a*(s.globals.maxX-s.globals.minX),y:c-h*(c-d),gx:a*r,gy:h*n}}_dataToGrid(e,t){const s=this.w,i=s.layout.gridWidth,r=s.layout.gridHeight,n=s.globals.maxX-s.globals.minX||1,[o,a]=this._yRange(),h=a-o||1;return{gx:(e-s.globals.minX)/n*i,gy:r-(t-o)/h*r}}_onDown(e){if(!this.armed)return;e.preventDefault(),e.stopPropagation();const{cx:t,cy:s}=this._clientXY(e),i=this._project(t,s);this.drag={a:i,b:i};const r=this._doc();r&&(r.addEventListener("mousemove",this._onMove),r.addEventListener("mouseup",this._onUp),r.addEventListener("touchmove",this._onMove,{passive:!1}),r.addEventListener("touchend",this._onUp)),this._renderLive()}_onMove(e){if(!this.drag)return;e.cancelable&&e.preventDefault();const{cx:t,cy:s}=this._clientXY(e);this.drag.b=this._project(t,s),this._renderLive()}_onUp(e){var t,s;const i=this._doc();if(i&&(i.removeEventListener("mousemove",this._onMove),i.removeEventListener("mouseup",this._onUp),i.removeEventListener("touchmove",this._onMove),i.removeEventListener("touchend",this._onUp)),!this.drag)return;const r=this.drag.a,n=this.drag.b;if(this.drag=null,this._clearLive(),Math.abs(r.gx-n.gx)<2&&Math.abs(r.gy-n.gy)<2)return void(this.persistent||this._disarm());const o=this._mode(),a=this._resolve(r),h=this._resolve(n);!1!==this._cfg().pinOnRelease&&(this.pins.push({xa:a.x,ya:a.y,xb:h.x,yb:h.y,mode:o}),this._renderPins(),null==(s=null==(t=this.ctx.history)?void 0:t.snapshot)||s.call(t,"measure")),this._fireMeasured(a,h),this.persistent||this._disarm()}_cancelDrag(){const e=this._doc();e&&(e.removeEventListener("mousemove",this._onMove),e.removeEventListener("mouseup",this._onUp),e.removeEventListener("touchmove",this._onMove),e.removeEventListener("touchend",this._onUp)),this.drag=null,this._clearLive()}_stats(e,t){const s=t.x-e.x,i=t.y-e.y;return{dx:s,dy:i,pct:0!==e.y?i/Math.abs(e.y)*100:NaN,slope:0!==s?i/s:NaN}}_fmt(e){if(!isFinite(e))return"n/a";const t=Math.abs(e);return 0!==t&&(t<.01||t>=1e6)?e.toExponential(2):String(Math.round(100*e)/100)}_computedStyle(){if(!u.isBrowser())return null;const e=this.w.dom.elGraphical&&this.w.dom.elGraphical.node;if(!e||"function"!=typeof getComputedStyle)return null;try{return getComputedStyle(e)}catch(e){return null}}_resolveColor(e,t,s,i){if(e)return e;const r=void 0!==i?i:this._computedStyle();return(r?r.getPropertyValue(t).trim():"")||s}_colors(){const e=this._cfg().colors||{},t=this._computedStyle();return{up:this._resolveColor(e.up,"--apx-measure-up","#16a34a",t),down:this._resolveColor(e.down,"--apx-measure-down","#dc2626",t),neutral:this._resolveColor(e.neutral,"--apx-measure-neutral","#64748b",t),guide:this._resolveColor(e.guide,"--apx-measure-guide","#94a3b8",t)}}_dirColor(e){const t=this._colors();return 0===e?t.neutral:e>0?t.up:t.down}_dirClass(e){return 0===e?"apexcharts-measure-flat":e>0?"apexcharts-measure-up":"apexcharts-measure-down"}_fmtPct(e){if(!isFinite(e))return"n/a";const t=this._cfg().format&&this._cfg().format.percent;if("function"==typeof t)try{const s=t(e);if(null!=s)return String(s)}catch(e){}return(e>=0?"+":"")+this._fmt(e)+"%"}_label(e,t,s,i){const r=this._cfg().label;if("function"==typeof r){const n=r({from:{x:e.x,y:e.y},to:{x:t.x,y:t.y},dx:s.dx,dy:s.dy,percentChange:s.pct,slope:s.slope,mode:i});return Array.isArray(n)?n.map(String):[String(n)]}if("span"===i){const i=0===s.dy?"":s.dy>0?" \u2191":" \u2193",r=isFinite(s.pct)?"("+this._fmtPct(s.pct)+")":"";return[this._fmtY(s.dy)+" "+r+i,this._fmtX(e.x)+" to "+this._fmtX(t.x)]}return["\u0394x "+this._fmtDx(s.dx),"\u0394y "+this._fmtY(s.dy),this._fmtPct(s.pct)]}_fmtDx(e){if("datetime"===this.w.config.xaxis.type){const t=e/864e5;return Math.round(10*t)/10+"d"}return this._fmt(e)}_fmtY(e){const t=this._cfg().format&&this._cfg().format.y;if("function"==typeof t)try{const s=t(e);if(null!=s)return String(s)}catch(e){}const s=this.w.globals.yLabelFormatters&&this.w.globals.yLabelFormatters[0];if("function"==typeof s)try{const t=s(e,{seriesIndex:0,dataPointIndex:-1,w:this.w});if(null!=t&&""!==t)return String(t)}catch(e){}return this._fmt(e)}_fmtX(e){const t=this.w,s=this._cfg().format&&this._cfg().format.x;if("function"==typeof s)try{const t=s(e);if(null!=t)return String(t)}catch(e){}if("datetime"===t.config.xaxis.type){return new Date(e).toLocaleDateString(void 0,{day:"numeric",month:"short",year:"numeric"})}const i=t.globals.xLabelFormatter;if("function"==typeof i)try{const s=i(e,{w:t});if(null!=s&&""!==s)return String(s)}catch(e){}return this._fmt(e)}_liveGroup(){const e=this.w;if(this._live&&this._live.node&&this._live.node.parentNode)return this._live;const t=this.graphics.group({class:"apexcharts-measure-live"});return t.node.style.pointerEvents="none",e.dom.elGraphical&&e.dom.elGraphical.add(t),this._live=t,t}_clearLive(){if(this._live&&this._live.node){const e=this._live.node;e.parentNode&&e.parentNode.removeChild(e)}this._live=null}_renderLive(){if(!this.drag)return;const e=this._liveGroup();for(;e.node.firstChild;)e.node.removeChild(e.node.firstChild);const t=this._resolve(this.drag.a),s=this._resolve(this.drag.b);this._drawRuler(e,t,s,!1,this._mode())}_renderPins(){const e=this.w,t=e.dom.baseEl&&e.dom.baseEl.querySelector(".apexcharts-measure-pins");if(t&&t.parentNode&&t.parentNode.removeChild(t),!this.pins.length||!e.dom.elGraphical)return;const s=this.graphics.group({class:"apexcharts-measure-pins"});s.node.style.pointerEvents="none",e.dom.elGraphical.add(s),this.pins.forEach(e=>{const t=h(a({},this._dataToGrid(e.xa,e.ya)),{x:e.xa,y:e.ya}),i=h(a({},this._dataToGrid(e.xb,e.yb)),{x:e.xb,y:e.yb});this._drawRuler(s,t,i,!0,e.mode||"span")})}_drawRuler(e,t,s,i,r){const n=this._stats(t,s),o=this.graphics.group({class:"apexcharts-measure-ruler "+this._dirClass(n.dy)+(i?" apexcharts-measure-pinned":"")});"free"===(r||this._mode())?this._drawFree(o,t,s,n):this._drawSpan(o,t,s,n),e.add(o)}_dot(e,t,s){if(!1===this._cfg().markers)return;const i=this.graphics.drawMarker(t.gx,t.gy,{pSize:4,shape:"circle",pointFillColor:s,pointFillOpacity:1,pointStrokeColor:"#fff",pointStrokeWidth:2,pointStrokeOpacity:1});e.add(i)}_readout(e,t,s,i,r,n,o){const a=this.graphics.drawRect(s,i,r,n,4);a.node.setAttribute("class","apexcharts-measure-label-bg"),a.attr({fill:"#ffffff","fill-opacity":.95,stroke:o,"stroke-width":1}),e.add(a);const h=this.graphics.drawText({x:s+9,y:i+15,text:t,textAnchor:"start",fontSize:"11px",foreColor:"#1e293b",cssClass:"apexcharts-measure-label"});e.add(h)}_drawSpan(e,t,s,i){const r=this.w,n=this._cfg(),o=r.layout.gridHeight,a=this._dirColor(i.dy),h=Math.min(t.gx,s.gx),d=Math.max(t.gx,s.gx);if(!1!==n.band){const t=this.graphics.drawRect(h,0,Math.max(0,d-h),o,0);t.node.setAttribute("class","apexcharts-measure-band"),t.attr({fill:a,"fill-opacity":.09,stroke:"none"}),e.add(t)}!1!==n.guides&&[t,s].forEach(t=>{const s=this.graphics.drawLine(t.gx,0,t.gx,o,this._colors().guide,4,1);s.node.setAttribute("class","apexcharts-measure-vline"),e.add(s)}),[t,s].forEach(t=>this._dot(e,t,a));const c=this._label(t,s,i,"span"),l=c.reduce((e,t)=>Math.max(e,t.length),0),u=Math.max(148,6.4*l),_=20+15*c.length;let p=(h+d)/2-u/2;p=Math.max(2,Math.min(p,r.layout.gridWidth-u-2)),this._readout(e,c,p,4,u,_,a)}_drawFree(e,t,s,i){const r=this._dirColor(i.dy),n=this.graphics.drawLine(t.gx,t.gy,s.gx,s.gy,r,0,2);n.node.setAttribute("class","apexcharts-measure-line"),e.add(n),[t,s].forEach(t=>this._dot(e,t,r));const o=this._label(t,s,i,"free"),a=o.reduce((e,t)=>Math.max(e,t.length),0),h=Math.max(72,6.2*a),d=16+15*o.length;let c=(t.gx+s.gx)/2+8,l=(t.gy+s.gy)/2-d/2;c=Math.max(2,Math.min(c,this.w.layout.gridWidth-h-2)),l=Math.max(2,Math.min(l,this.w.layout.gridHeight-d-2)),this._readout(e,o,c,l,h,d,r)}_fireMeasured(e,t){const s=this._stats(e,t),i={from:{x:e.x,y:e.y},to:{x:t.x,y:t.y},dx:s.dx,dy:s.dy,percentChange:s.pct,slope:s.slope},r=this.w.config.chart.events.measured;"function"==typeof r&&r(this.ctx,i),this.ctx.events.fireEvent("measured",[this.ctx,i])}_afterRender(){this._enabled()&&(this.w.interact.measureEnabled&&!this.persistent&&(this.persistent=!0),this.pins.length&&this._renderPins(),this.persistent&&!this.drag&&(this._disarm(),this._arm()))}teardown(){this._cancelDrag(),this._endSeed(!1),this._disarm();const e=this._doc();e&&this._keysBound&&(e.removeEventListener("keydown",this._onKeyDown),e.removeEventListener("keyup",this._onKeyUp)),this._keysBound=!1,this.pins=[]}}}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>c.default});
@@ -18,7 +18,7 @@ var __spreadValues = (a, b) => {
18
18
  };
19
19
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
20
  /*!
21
- * ApexCharts v7.2.0
21
+ * ApexCharts v7.4.0
22
22
  * (c) 2018-2026 ApexCharts
23
23
  */
24
24
  import * as _core from "apexcharts/core";
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * ApexCharts v7.2.0
2
+ * ApexCharts v7.4.0
3
3
  * (c) 2018-2026 ApexCharts
4
4
  */
5
5
  !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).ApexMeasure={})}(this,function(e){"use strict";var t=Object.defineProperty,s=Object.defineProperties,i=Object.getOwnPropertyDescriptors,n=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable,a=(e,s,i)=>s in e?t(e,s,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[s]=i,h=(e,t)=>{for(var s in t||(t={}))r.call(t,s)&&a(e,s,t[s]);if(n)for(var s of n(t))o.call(t,s)&&a(e,s,t[s]);return e},d=(e,t)=>s(e,i(t));const c=globalThis.ApexCharts,l=globalThis.ApexCharts.__internals.__apex_Graphics,u=globalThis.ApexCharts.__internals.__apex_Environment_Environment;c.registerFeatures({measure:class{constructor(e,t){this.w=e,this.ctx=t,this.graphics=new l(e),this.pins=[],this.drag=null,this.armed=!1,this.persistent=!1,this.pane=null,this._seedActive=!1,this._onKeyDown=this._onKeyDown.bind(this),this._onKeyUp=this._onKeyUp.bind(this),this._onDown=this._onDown.bind(this),this._onMove=this._onMove.bind(this),this._onUp=this._onUp.bind(this),this._onSeedDown=this._onSeedDown.bind(this),this._onSeedKey=this._onSeedKey.bind(this),this._afterRender=this._afterRender.bind(this),t.addEventListener("mounted",this._afterRender),t.addEventListener("updated",this._afterRender),this._bindKeys()}_cfg(){return this.w.config.chart.measure||{}}_enabled(){return this.w.globals.axisCharts&&!0===this._cfg().enabled}_mode(){return"free"===this._cfg().mode?"free":"span"}_snapToSeries(e){const t=(this.w.config.series||[])[0];if(!t)return null;const s=this._points(t.data||[]);if(!s.length)return null;let i=s[0],n=Math.abs(s[0].x-e);for(let t=1;t<s.length;t++){const r=Math.abs(s[t].x-e);r<n&&(n=r,i=s[t])}return i}_resolve(e){if("free"===this._mode())return e;const t=this._snapToSeries(e.x);if(!t)return e;const s=this._dataToGrid(t.x,t.y);return{x:t.x,y:t.y,gx:s.gx,gy:s.gy}}_doc(){return this.w.dom.baseEl&&this.w.dom.baseEl.ownerDocument}_bindKeys(){if(this._keysBound)return;const e=this._doc();e&&(e.addEventListener("keydown",this._onKeyDown),e.addEventListener("keyup",this._onKeyUp),this._keysBound=!0)}_onKeyDown(e){if(!this._enabled()||this.persistent)return;const t=this._cfg().key||"m";e.key&&e.key.toLowerCase()===String(t).toLowerCase()?this._arm():"Escape"===e.key&&this._cancelDrag()}_onKeyUp(e){if(this.persistent)return;const t=this._cfg().key||"m";e.key&&e.key.toLowerCase()===String(t).toLowerCase()&&(this.drag||this._disarm())}startMeasure(){this._enabled()&&(this.persistent=!0,this._arm())}stopMeasure(){this.persistent=!1,this._cancelDrag(),this._disarm()}seedFromClient(e,t){if(!this._enabled())return;this._cancelDrag(),this._endSeed(!1);const s=this._project(e,t);this.drag={a:s,b:s},this._seedActive=!0;const i=this._doc();i&&(i.addEventListener("mousemove",this._onMove),i.addEventListener("touchmove",this._onMove,{passive:!1}),i.addEventListener("mousedown",this._onSeedDown,!0),i.addEventListener("touchstart",this._onSeedDown,!0),i.addEventListener("keydown",this._onSeedKey,!0)),this._renderLive()}_onSeedDown(e){if(!this._seedActive||!this.drag)return;e.preventDefault(),e.stopPropagation();const{cx:t,cy:s}=this._clientXY(e);this.drag.b=this._project(t,s),this._endSeed(!0)}_onSeedKey(e){"Escape"===e.key&&this._endSeed(!1)}_endSeed(e){var t,s;if(!this._seedActive)return;this._seedActive=!1;const i=this._doc();i&&(i.removeEventListener("mousemove",this._onMove),i.removeEventListener("touchmove",this._onMove),i.removeEventListener("mousedown",this._onSeedDown,!0),i.removeEventListener("touchstart",this._onSeedDown,!0),i.removeEventListener("keydown",this._onSeedKey,!0));const n=this.drag;if(this.drag=null,this._clearLive(),!e||!n)return;const r=this._resolve(n.a),o=this._resolve(n.b);if(Math.abs(r.gx-o.gx)<2&&Math.abs(r.gy-o.gy)<2)return;const a=this._mode();!1!==this._cfg().pinOnRelease&&(this.pins.push({xa:r.x,ya:r.y,xb:o.x,yb:o.y,mode:a}),this._renderPins(),null==(s=null==(t=this.ctx.history)?void 0:t.snapshot)||s.call(t,"measure")),this._fireMeasured(r,o)}clearMeasures(){var e,t;this.pins=[],this._renderPins(),null==(t=null==(e=this.ctx.history)?void 0:e.snapshot)||t.call(e,"clear measures")}getPins(){return this.pins.map(e=>({xa:e.xa,ya:e.ya,xb:e.xb,yb:e.yb,mode:"free"===e.mode?"free":"span"}))}setPins(e){this.pins=Array.isArray(e)?e.filter(e=>e&&isFinite(e.xa)&&isFinite(e.ya)&&isFinite(e.xb)&&isFinite(e.yb)).map(e=>({xa:+e.xa,ya:+e.ya,xb:+e.xb,yb:+e.yb,mode:"free"===e.mode?"free":"span"})):[],this._renderPins()}_points(e){const t=[];for(let s=0;s<e.length;s++){const i=e[s];let n,r;Array.isArray(i)?(n=+i[0],r=+i[1]):i&&"object"==typeof i?(n=+i.x,r=+i.y):(n=s,r=+i),isFinite(n)&&isFinite(r)&&t.push({x:n,y:r})}return t}_arm(){if(this.armed||!this._enabled())return;const e=this.w,t=e.dom.elGraphical;if(!t)return;this.armed=!0;const s=this.graphics.drawRect(0,0,e.layout.gridWidth,e.layout.gridHeight);s.node.setAttribute("class","apexcharts-measure-capture"),s.node.setAttribute("fill","transparent"),s.node.style.cursor="crosshair",s.node.style.pointerEvents="all",s.node.addEventListener("mousedown",this._onDown),s.node.addEventListener("touchstart",this._onDown,{passive:!1}),t.add(s),this.pane=s}_disarm(){if(this.armed=!1,this.pane){this.pane.node.removeEventListener("mousedown",this._onDown),this.pane.node.removeEventListener("touchstart",this._onDown);const e=this.pane.node;e.parentNode&&e.parentNode.removeChild(e),this.pane=null}}_clientXY(e){const t=e.touches&&e.touches[0]?e.touches[0]:e;return{cx:t.clientX,cy:t.clientY}}_gridRect(){const e=this.w.dom.baseEl.querySelector(".apexcharts-grid");return e?e.getBoundingClientRect():null}_yRange(){const e=this.w.globals,t=e.yAxisScale&&e.yAxisScale[0];return t&&isFinite(t.niceMin)&&isFinite(t.niceMax)&&t.niceMax!==t.niceMin?[t.niceMin,t.niceMax]:[e.minY,e.maxY]}_project(e,t){const s=this.w,i=this._gridRect(),n=s.layout.gridWidth,r=s.layout.gridHeight,o=e=>e<0?0:e>1?1:e,a=i?o((e-i.left)/i.width):0,h=i?o((t-i.top)/i.height):0,[d,c]=this._yRange();return{x:s.globals.minX+a*(s.globals.maxX-s.globals.minX),y:c-h*(c-d),gx:a*n,gy:h*r}}_dataToGrid(e,t){const s=this.w,i=s.layout.gridWidth,n=s.layout.gridHeight,r=s.globals.maxX-s.globals.minX||1,[o,a]=this._yRange(),h=a-o||1;return{gx:(e-s.globals.minX)/r*i,gy:n-(t-o)/h*n}}_onDown(e){if(!this.armed)return;e.preventDefault(),e.stopPropagation();const{cx:t,cy:s}=this._clientXY(e),i=this._project(t,s);this.drag={a:i,b:i};const n=this._doc();n&&(n.addEventListener("mousemove",this._onMove),n.addEventListener("mouseup",this._onUp),n.addEventListener("touchmove",this._onMove,{passive:!1}),n.addEventListener("touchend",this._onUp)),this._renderLive()}_onMove(e){if(!this.drag)return;e.cancelable&&e.preventDefault();const{cx:t,cy:s}=this._clientXY(e);this.drag.b=this._project(t,s),this._renderLive()}_onUp(e){var t,s;const i=this._doc();if(i&&(i.removeEventListener("mousemove",this._onMove),i.removeEventListener("mouseup",this._onUp),i.removeEventListener("touchmove",this._onMove),i.removeEventListener("touchend",this._onUp)),!this.drag)return;const n=this.drag.a,r=this.drag.b;if(this.drag=null,this._clearLive(),Math.abs(n.gx-r.gx)<2&&Math.abs(n.gy-r.gy)<2)return void(this.persistent||this._disarm());const o=this._mode(),a=this._resolve(n),h=this._resolve(r);!1!==this._cfg().pinOnRelease&&(this.pins.push({xa:a.x,ya:a.y,xb:h.x,yb:h.y,mode:o}),this._renderPins(),null==(s=null==(t=this.ctx.history)?void 0:t.snapshot)||s.call(t,"measure")),this._fireMeasured(a,h),this.persistent||this._disarm()}_cancelDrag(){const e=this._doc();e&&(e.removeEventListener("mousemove",this._onMove),e.removeEventListener("mouseup",this._onUp),e.removeEventListener("touchmove",this._onMove),e.removeEventListener("touchend",this._onUp)),this.drag=null,this._clearLive()}_stats(e,t){const s=t.x-e.x,i=t.y-e.y;return{dx:s,dy:i,pct:0!==e.y?i/Math.abs(e.y)*100:NaN,slope:0!==s?i/s:NaN}}_fmt(e){if(!isFinite(e))return"n/a";const t=Math.abs(e);return 0!==t&&(t<.01||t>=1e6)?e.toExponential(2):String(Math.round(100*e)/100)}_computedStyle(){if(!u.isBrowser())return null;const e=this.w.dom.elGraphical&&this.w.dom.elGraphical.node;if(!e||"function"!=typeof getComputedStyle)return null;try{return getComputedStyle(e)}catch(e){return null}}_resolveColor(e,t,s,i){if(e)return e;const n=void 0!==i?i:this._computedStyle();return(n?n.getPropertyValue(t).trim():"")||s}_colors(){const e=this._cfg().colors||{},t=this._computedStyle();return{up:this._resolveColor(e.up,"--apx-measure-up","#16a34a",t),down:this._resolveColor(e.down,"--apx-measure-down","#dc2626",t),neutral:this._resolveColor(e.neutral,"--apx-measure-neutral","#64748b",t),guide:this._resolveColor(e.guide,"--apx-measure-guide","#94a3b8",t)}}_dirColor(e){const t=this._colors();return 0===e?t.neutral:e>0?t.up:t.down}_dirClass(e){return 0===e?"apexcharts-measure-flat":e>0?"apexcharts-measure-up":"apexcharts-measure-down"}_fmtPct(e){if(!isFinite(e))return"n/a";const t=this._cfg().format&&this._cfg().format.percent;if("function"==typeof t)try{const s=t(e);if(null!=s)return String(s)}catch(e){}return(e>=0?"+":"")+this._fmt(e)+"%"}_label(e,t,s,i){const n=this._cfg().label;if("function"==typeof n){const r=n({from:{x:e.x,y:e.y},to:{x:t.x,y:t.y},dx:s.dx,dy:s.dy,percentChange:s.pct,slope:s.slope,mode:i});return Array.isArray(r)?r.map(String):[String(r)]}if("span"===i){const i=0===s.dy?"":s.dy>0?" \u2191":" \u2193",n=isFinite(s.pct)?"("+this._fmtPct(s.pct)+")":"";return[this._fmtY(s.dy)+" "+n+i,this._fmtX(e.x)+" to "+this._fmtX(t.x)]}return["\u0394x "+this._fmtDx(s.dx),"\u0394y "+this._fmtY(s.dy),this._fmtPct(s.pct)]}_fmtDx(e){if("datetime"===this.w.config.xaxis.type){const t=e/864e5;return Math.round(10*t)/10+"d"}return this._fmt(e)}_fmtY(e){const t=this._cfg().format&&this._cfg().format.y;if("function"==typeof t)try{const s=t(e);if(null!=s)return String(s)}catch(e){}const s=this.w.globals.yLabelFormatters&&this.w.globals.yLabelFormatters[0];if("function"==typeof s)try{const t=s(e,{seriesIndex:0,dataPointIndex:-1,w:this.w});if(null!=t&&""!==t)return String(t)}catch(e){}return this._fmt(e)}_fmtX(e){const t=this.w,s=this._cfg().format&&this._cfg().format.x;if("function"==typeof s)try{const t=s(e);if(null!=t)return String(t)}catch(e){}if("datetime"===t.config.xaxis.type){return new Date(e).toLocaleDateString(void 0,{day:"numeric",month:"short",year:"numeric"})}const i=t.globals.xLabelFormatter;if("function"==typeof i)try{const s=i(e,{w:t});if(null!=s&&""!==s)return String(s)}catch(e){}return this._fmt(e)}_liveGroup(){const e=this.w;if(this._live&&this._live.node&&this._live.node.parentNode)return this._live;const t=this.graphics.group({class:"apexcharts-measure-live"});return t.node.style.pointerEvents="none",e.dom.elGraphical&&e.dom.elGraphical.add(t),this._live=t,t}_clearLive(){if(this._live&&this._live.node){const e=this._live.node;e.parentNode&&e.parentNode.removeChild(e)}this._live=null}_renderLive(){if(!this.drag)return;const e=this._liveGroup();for(;e.node.firstChild;)e.node.removeChild(e.node.firstChild);const t=this._resolve(this.drag.a),s=this._resolve(this.drag.b);this._drawRuler(e,t,s,!1,this._mode())}_renderPins(){const e=this.w,t=e.dom.baseEl&&e.dom.baseEl.querySelector(".apexcharts-measure-pins");if(t&&t.parentNode&&t.parentNode.removeChild(t),!this.pins.length||!e.dom.elGraphical)return;const s=this.graphics.group({class:"apexcharts-measure-pins"});s.node.style.pointerEvents="none",e.dom.elGraphical.add(s),this.pins.forEach(e=>{const t=d(h({},this._dataToGrid(e.xa,e.ya)),{x:e.xa,y:e.ya}),i=d(h({},this._dataToGrid(e.xb,e.yb)),{x:e.xb,y:e.yb});this._drawRuler(s,t,i,!0,e.mode||"span")})}_drawRuler(e,t,s,i,n){const r=this._stats(t,s),o=this.graphics.group({class:"apexcharts-measure-ruler "+this._dirClass(r.dy)+(i?" apexcharts-measure-pinned":"")});"free"===(n||this._mode())?this._drawFree(o,t,s,r):this._drawSpan(o,t,s,r),e.add(o)}_dot(e,t,s){if(!1===this._cfg().markers)return;const i=this.graphics.drawMarker(t.gx,t.gy,{pSize:4,shape:"circle",pointFillColor:s,pointFillOpacity:1,pointStrokeColor:"#fff",pointStrokeWidth:2,pointStrokeOpacity:1});e.add(i)}_readout(e,t,s,i,n,r,o){const a=this.graphics.drawRect(s,i,n,r,4);a.node.setAttribute("class","apexcharts-measure-label-bg"),a.attr({fill:"#ffffff","fill-opacity":.95,stroke:o,"stroke-width":1}),e.add(a);const h=this.graphics.drawText({x:s+9,y:i+15,text:t,textAnchor:"start",fontSize:"11px",foreColor:"#1e293b",cssClass:"apexcharts-measure-label"});e.add(h)}_drawSpan(e,t,s,i){const n=this.w,r=this._cfg(),o=n.layout.gridHeight,a=this._dirColor(i.dy),h=Math.min(t.gx,s.gx),d=Math.max(t.gx,s.gx);if(!1!==r.band){const t=this.graphics.drawRect(h,0,Math.max(0,d-h),o,0);t.node.setAttribute("class","apexcharts-measure-band"),t.attr({fill:a,"fill-opacity":.09,stroke:"none"}),e.add(t)}!1!==r.guides&&[t,s].forEach(t=>{const s=this.graphics.drawLine(t.gx,0,t.gx,o,this._colors().guide,4,1);s.node.setAttribute("class","apexcharts-measure-vline"),e.add(s)}),[t,s].forEach(t=>this._dot(e,t,a));const c=this._label(t,s,i,"span"),l=c.reduce((e,t)=>Math.max(e,t.length),0),u=Math.max(148,6.4*l),_=20+15*c.length;let p=(h+d)/2-u/2;p=Math.max(2,Math.min(p,n.layout.gridWidth-u-2)),this._readout(e,c,p,4,u,_,a)}_drawFree(e,t,s,i){const n=this._dirColor(i.dy),r=this.graphics.drawLine(t.gx,t.gy,s.gx,s.gy,n,0,2);r.node.setAttribute("class","apexcharts-measure-line"),e.add(r),[t,s].forEach(t=>this._dot(e,t,n));const o=this._label(t,s,i,"free"),a=o.reduce((e,t)=>Math.max(e,t.length),0),h=Math.max(72,6.2*a),d=16+15*o.length;let c=(t.gx+s.gx)/2+8,l=(t.gy+s.gy)/2-d/2;c=Math.max(2,Math.min(c,this.w.layout.gridWidth-h-2)),l=Math.max(2,Math.min(l,this.w.layout.gridHeight-d-2)),this._readout(e,o,c,l,h,d,n)}_fireMeasured(e,t){const s=this._stats(e,t),i={from:{x:e.x,y:e.y},to:{x:t.x,y:t.y},dx:s.dx,dy:s.dy,percentChange:s.pct,slope:s.slope},n=this.w.config.chart.events.measured;"function"==typeof n&&n(this.ctx,i),this.ctx.events.fireEvent("measured",[this.ctx,i])}_afterRender(){this._enabled()&&(this.w.interact.measureEnabled&&!this.persistent&&(this.persistent=!0),this.pins.length&&this._renderPins(),this.persistent&&!this.drag&&(this._disarm(),this._arm()))}teardown(){this._cancelDrag(),this._endSeed(!1),this._disarm();const e=this._doc();e&&this._keysBound&&(e.removeEventListener("keydown",this._onKeyDown),e.removeEventListener("keyup",this._onKeyUp)),this._keysBound=!1,this.pins=[]}}}),e.default=c,Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * ApexCharts v7.2.0
2
+ * ApexCharts v7.4.0
3
3
  * (c) 2018-2026 ApexCharts
4
4
  */
5
5
  "use strict";var t=Object.defineProperty,e=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable,n=(e,r,i)=>r in e?t(e,r,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[r]=i,a=(t,a)=>{for(var s in a||(a={}))r.call(a,s)&&n(t,s,a[s]);if(e)for(var s of e(a))i.call(a,s)&&n(t,s,a[s]);return t};Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});function s(t){if(t&&t.__esModule)return t;const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t)for(const r in t)if("default"!==r){const i=Object.getOwnPropertyDescriptor(t,r);Object.defineProperty(e,r,i.get?i:{enumerable:!0,get:()=>t[r]})}return e.default=t,Object.freeze(e)}const l=s(require("apexcharts/core")),o=l.__apex_Environment_Environment,h=l.__apex_BrowserAPIs_BrowserAPIs,u=l.__apex_Animations_prefersReducedMotion,c=l.__apex_PathMorphing_parsePath;function p(t,e){if(!(e>0))return[];if(1===e)return[a({},t)];const r=t.width>=t.height,i=r?t.width:t.height,n=r?t.height:t.width,s=n>0?i/n:e;let l=Math.max(1,Math.ceil(Math.sqrt(s*e)));l>e&&(l=e);const o=Math.floor(e/l);let h=e-o*l;const u=[],c=i/l;let p=0;for(let e=0;e<l;e++){const e=o+(h>0?1:0);h>0&&h--;const i=e>0?n/e:0;for(let n=0;n<e;n++)u.push(r?{x:t.x+p,y:t.y+n*i,width:c,height:i}:{x:t.x+n*i,y:t.y+p,width:i,height:c});p+=c}return u}function d(t,e,r){if(!(e>0))return[];const i=t.width>=t.height,n=i?t.width:t.height,a=i?t.height:t.width,s=i?t.y:t.x,l=s+a,o=a>0?n/a:e;let h=Math.max(Math.ceil(Math.sqrt(o*e)),Math.ceil(n/16));h>=1||(h=1),h>e&&(h=e);const u=Math.floor(e/h);let c=e-u*h;const p=[],d=n/h;let f=i?t.x:t.y;for(let t=0;t<h;t++){const t=u+(c>0?1:0);c>0&&c--;const e=[],n=r(f,f+d,i);if(Array.isArray(n))for(let t=0;t<n.length;t++){const r=n[t];if(!r)continue;const i=Math.max(s,Math.min(r[0],r[1])),a=Math.min(l,Math.max(r[0],r[1]));a>i&&e.push([i,a])}e.length||e.push([s,l]);const a=e.reduce((t,e)=>t+(e[1]-e[0]),0),o=e.map(r=>a>0?(r[1]-r[0])/a*t:t/e.length),h=o.map(t=>Math.floor(t));let g=h.reduce((t,e)=>t+e,0);const y=o.map((t,e)=>({i:e,frac:t-Math.floor(t)})).sort((t,e)=>e.frac-t.frac);for(let e=0;g<t;e++,g++)h[y[e%y.length].i]++;for(let t=0;t<e.length;t++){const r=h[t];if(r<=0)continue;const n=e[t][0],a=(e[t][1]-n)/r;for(let t=0;t<r;t++)p.push(i?{x:f,y:n+t*a,width:d,height:a}:{x:n+t*a,y:f,width:a,height:d})}f+=d}return p}function f(t,e,r,i,n,a){let s=n===r?0:Math.round((t-r)/(n-r)*32767),l=a===i?0:Math.round((e-i)/(a-i)*32767),o=0;for(let t=32768;t>=1;t/=2){const e=(s&t)>0?1:0,r=(l&t)>0?1:0;if(o+=t*t*(3*e^r),0===r){1===e&&(s=t-1-s,l=t-1-l);const r=s;s=l,l=r}}return o}function g(t,e){let r=1/0,i=1/0,n=-1/0,a=-1/0;const s=t.map(t=>{const[s,l]=e(t);return s<r&&(r=s),s>n&&(n=s),l<i&&(i=l),l>a&&(a=l),[s,l]});return t.map((t,e)=>({item:t,d:f(s[e][0],s[e][1],r,i,n,a)})).sort((t,e)=>t.d-e.d).map(t=>t.item)}function y(t){if(!t||"string"!=typeof t)return null;const e=t.trim();if("#"===e[0]){const t=e.slice(1);return 3===t.length?[parseInt(t[0]+t[0],16),parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16),1]:6===t.length||8===t.length?[parseInt(t.slice(0,2),16),parseInt(t.slice(2,4),16),parseInt(t.slice(4,6),16),8===t.length?parseInt(t.slice(6,8),16)/255:1]:null}const r=e.match(/^rgba?\(([^)]+)\)$/i);if(r){const t=r[1].split(",").map(t=>parseFloat(t));return t.length<3||t.some(t=>!isFinite(t))?null:[t[0],t[1],t[2],t.length>3?t[3]:1]}return null}function m(t,e){const r=y(t),i=y(e);return r&&i?t=>{const e=Math.round(r[0]+(i[0]-r[0])*t),n=Math.round(r[1]+(i[1]-r[1])*t),a=Math.round(r[2]+(i[2]-r[2])*t),s=r[3]+(i[3]-r[3])*t;return s>=1?`rgb(${e},${n},${a})`:`rgba(${e},${n},${a},${s})`}:null}function b(t){return t<.5?4*t*t*t:1-Math.pow(-2*t+2,3)/2}const x=new Set(["bar","funnel","pyramid","histogram"]),A=new Set(["pie","donut","polarArea","radialBar","gauge"]),_=new Set(["unit","waffle"]),w=new Set(["treemap","sunburst"]),$=new Set(["boxPlot","violin"]),v=1500;function M(t){return x.has(t)?"bar":A.has(t)?"radial":_.has(t)?"unit":w.has(t)?"partition":$.has(t)?"summary":null}l.default.registerFeatures({morphTypeChange:class{constructor(t,e){this.w=t,this.ctx=e,this._snapshot=null,this._ghost=null,this._pieceLayer=null,this._pieceCancel=null}canMorphTypes(t,e){if(t===e)return!1;const r=M(t),i=M(e);return!(!r||!i)&&("partition"===r==("partition"===i)||"unit"!==r&&"unit"!==i)}isCompatibleSeriesShape(t,e,r){if(!Array.isArray(r)||0===r.length)return!1;const i=M(t),n=M(e);return"unit"===n?!!r.every(t=>"number"==typeof t)||r.every(t=>t&&"object"==typeof t&&Array.isArray(t.data)):"partition"===n||("radial"===n?!!r.every(t=>"number"==typeof t)||1===r.length&&r[0]&&"object"==typeof r[0]&&Array.isArray(r[0].data):"bar"===n||"summary"===n?r.every(t=>t&&"object"==typeof t&&Array.isArray(t.data)):null!==i&&null!==n)}captureBeforeDestroy({fromType:t,toType:e,newSeries:r}){if(this._snapshot=null,this._removeGhost(),this._cancelPieces(),!o.isBrowser())return!1;const i=this.w.config.chart.animations;if(!i||!1===i.enabled)return!1;if(i.chartTypeMorph&&!1===i.chartTypeMorph.enabled)return!1;if(i.respectReducedMotion&&u())return!1;if(!this.canMorphTypes(t,e))return!1;if(!this.isCompatibleSeriesShape(t,e,r))return!1;const{marks:n,branches:a,unitDots:s}=this._captureFromDOM(t);if(!n.length)return!1;const l=this._buildMapping(n,t,e,r,a);if(0===l.size)return!1;this._snapshot={fromType:t,toType:e,mapping:l,oldLayout:{translateX:this.w.layout.translateX||0,translateY:this.w.layout.translateY||0}};const h=M(t),c=M(e),p=this._canProbePaths();if("unit"===c&&("bar"===h||"summary"===h||"radial"===h&&p)){const t=this._countUnitSeries(r);this._snapshot.pieceOut=t>0&&t<=v}else if("unit"===h&&("bar"===c||"summary"===c||"radial"===c&&p)){let t=0;if(s.forEach(e=>{t+=e.length}),t>0&&t<=v){this._snapshot.pieceIn=!0,this._snapshot.sourceDots=s;const t=[];"radial"===c?(Array.isArray(r)?r:[]).forEach((e,r)=>{t.push(`${r}:0`)}):(Array.isArray(r)?r:[]).forEach((e,r)=>{const i=e&&Array.isArray(e.data)?e.data:[];for(let e=0;e<i.length;e++)t.push(`${r}:${e}`)}),this._snapshot.keyOrder=t}}return!this._needsGhost(t,e)||this._snapshot.pieceOut||this._snapshot.pieceIn||this._captureGhost(),this.w.globals.previousPaths=[],!0}_needsGhost(t,e){return"unit"===M(t)||"unit"===M(e)}_captureGhost(){var t,e;const r=null==(t=this.w.dom)?void 0:t.Paper,i=r&&r.node;if(!i||"function"!=typeof i.cloneNode)return;const n=i.cloneNode(!0),a=[".apexcharts-xaxis",".apexcharts-yaxis",".apexcharts-grid",".apexcharts-gridlines-horizontal",".apexcharts-gridlines-vertical",".apexcharts-legend",".apexcharts-title-text",".apexcharts-subtitle-text",".apexcharts-annotations",".apexcharts-zoom-rect",".apexcharts-selection-rect",".apexcharts-xcrosshairs",".apexcharts-ycrosshairs"];"function"==typeof n.querySelectorAll&&a.forEach(t=>{n.querySelectorAll(t).forEach(t=>{t.parentNode&&t.parentNode.removeChild(t)})}),"function"==typeof n.querySelectorAll&&n.querySelectorAll("[id]").forEach(t=>{t.removeAttribute("id")}),null==(e=n.removeAttribute)||e.call(n,"id"),this._ghost=n}_mountGhost(){var t,e,r;const i=this._ghost;if(!i||!o.isBrowser())return;const n=null==(t=this.w.dom)?void 0:t.elWrap;if(!n||"function"!=typeof n.appendChild)return void(this._ghost=null);const a=i.style;a&&(a.position="absolute",a.left="0",a.top="0",a.background="transparent",a.pointerEvents="none",a.opacity="1"),null==(e=i.setAttribute)||e.call(i,"aria-hidden","true"),null==(r=i.setAttribute)||r.call(i,"class","apexcharts-morph-ghost"),n.appendChild(i);const s=this.getSpeed(),l=Math.max(120,Math.round(.55*s));h.requestAnimationFrame(()=>{a&&(a.transition=`opacity ${l}ms ease-in`,a.opacity="0")}),setTimeout(()=>this._removeGhost(),l+60)}_removeGhost(){const t=this._ghost;this._ghost=null,t&&t.parentNode&&t.parentNode.removeChild(t)}_countUnitSeries(t){if(!Array.isArray(t))return 0;let e=0;for(const r of t){if(!r||"object"!=typeof r||!Array.isArray(r.data))return 0;e+=r.data.length}return e}usesPieceTakeover(){return!(!this._snapshot||!this._snapshot.pieceOut)}claimsTargetMark(t,e){return!!(this._snapshot&&this._snapshot.pieceIn&&this._snapshot.mapping.has(`${t}:${e}`))}_makePieceLayer(){var t,e;const r=null==(t=this.w.dom)?void 0:t.elGraphical,i=r&&r.node;if(!i||"function"!=typeof i.appendChild)return null;const n=h.createElementNS("http://www.w3.org/2000/svg","g");if(!n)return null;n.setAttribute("class","apexcharts-morph-pieces"),n.setAttribute("pointer-events","none");const a=null==(e=this.w.globals)?void 0:e.cuid;return a&&n.setAttribute("clip-path",`url(#gridRectBarMask${a})`),i.appendChild(n),this._pieceLayer=n,n}_revealPieceHidden(){var t;const e=null==(t=this.w.globals.dom)?void 0:t.baseEl;e&&"function"==typeof e.querySelectorAll&&e.querySelectorAll("[data-piece-hidden]").forEach(t=>{t.removeAttribute("opacity"),t.removeAttribute("data-piece-hidden")})}_cancelPieces(){this._pieceCancel&&(this._pieceCancel(),this._pieceCancel=null);const t=this._pieceLayer;this._pieceLayer=null,t&&t.parentNode&&t.parentNode.removeChild(t),this._revealPieceHidden()}_canProbePaths(){if(!o.isBrowser())return!1;const t=h.createElementNS("http://www.w3.org/2000/svg","path");return!!t&&"function"==typeof t.isPointInFill}_makeExtentProber(t,e,r){const i=r.ownerDocument.createElementNS("http://www.w3.org/2000/svg","path");i.setAttribute("d",t),i.setAttribute("fill","#000"),i.setAttribute("stroke","#000"),i.setAttribute("stroke-width","3"),i.setAttribute("visibility","hidden"),r.appendChild(i);const n=i.ownerSVGElement;if("function"!=typeof i.isPointInFill||!n||"function"!=typeof n.createSVGPoint)return r.removeChild(i),null;const a=n.createSVGPoint(),s=(t,e)=>{a.x=t,a.y=e;const r=i;return r.isPointInFill(a)||"function"==typeof r.isPointInStroke&&r.isPointInStroke(a)},l=48;return{intervalsAt:(t,r,i)=>{const n=i?e.y:e.x,a=n+(i?e.height:e.width);if(!(a>n))return null;const o=(t,e)=>i?s(e,t):s(t,e),h=[t+.1*(r-t),(t+r)/2,r-.1*(r-t)],u=(t,e,r)=>{let i=e,n=t;for(let t=0;t<6;t++){const t=(i+n)/2;o(t,r)?n=t:i=t}return(i+n)/2},c=(a-n)/l,p=new Array(49).fill(null);let d=!1;for(const t of h)for(let e=0;e<=l;e++)null===p[e]&&o(n+e*c,t)&&(p[e]=t,d=!0);if(!d)return null;const f=[];let g=-1;for(let t=0;t<=49;t++){const e=t<=l&&null!==p[t];if(e&&g<0&&(g=t),!e&&g>=0){const e=t-1,r=p[g],i=0===g?n:u(n+g*c,n+(g-1)*c,r),s=e===l?a:u(n+e*c,n+(e+1)*c,p[e]);s>i&&f.push([i,s]),g=-1}}return f.length?f:null},dispose:()=>{i.parentNode&&i.parentNode.removeChild(i)}}}_separatePieces(){var t;const e=this._snapshot,r=null==(t=this.w.globals.dom)?void 0:t.baseEl;if(!e||!r)return this._revealPieceHidden();const i=new Map;let n=0;if(r.querySelectorAll(".apexcharts-unit-area").forEach(t=>{var e,r,a,s,l,o,h;const u=parseInt(null!=(e=t.getAttribute("i"))?e:"",10);if(isNaN(u))return;const c=t.getAttribute("cx");let p,d,f=3;if(null!=c)p=parseFloat(c),d=parseFloat(null!=(r=t.getAttribute("cy"))?r:""),f=parseFloat(null!=(a=t.getAttribute("r"))?a:"3")||3;else{const e=parseFloat(null!=(s=t.getAttribute("width"))?s:"0")||0,r=parseFloat(null!=(l=t.getAttribute("height"))?l:"0")||0;p=parseFloat(null!=(o=t.getAttribute("x"))?o:"")+e/2,d=parseFloat(null!=(h=t.getAttribute("y"))?h:"")+r/2,f=Math.max(e,r)/2||3}if(!isFinite(p)||!isFinite(d))return;let g=i.get(u);g||(g=[],i.set(u,g)),g.push({el:t,x:p,y:d,r:f,fill:t.getAttribute("fill")}),n++}),0===n||n>v)return this._revealPieceHidden();const a=this._makePieceLayer();if(!a)return this._revealPieceHidden();const s=[],l=a.ownerDocument,o=M(e.fromType),h="summary"===o||"radial"===o;if(Array.from(i.keys()).sort((t,e)=>t-e).forEach(t=>{var r;const n=i.get(t),o=this.getInitialBBoxFor(t),u=e.mapping.get(`${t}:0`);if(!o||!u)return void n.forEach(t=>{t.el.removeAttribute("opacity"),t.el.removeAttribute("data-piece-hidden")});const c=u.fill&&0!==u.fill.indexOf("url(")?u.fill:(null==(r=this.w.globals.colors)?void 0:r[t])||n[0].fill;let f=null;if(h){const e=this.getInitialPathFor(t,0);e&&(f=this._makeExtentProber(e,o,a))}const y=f?d(o,n.length,f.intervalsAt):p(o,n.length);f&&f.dispose();const b=g(y,t=>[t.x+t.width/2,t.y+t.height/2]),x=g(n,t=>[t.x,t.y]);for(let e=0;e<x.length;e++){const r=b[e],i=x[e],n=l.createElementNS("http://www.w3.org/2000/svg","rect");n.setAttribute("data-i",String(t)),n.setAttribute("x",String(r.x)),n.setAttribute("y",String(r.y)),n.setAttribute("width",String(r.width)),n.setAttribute("height",String(r.height)),n.setAttribute("rx","0"),n.setAttribute("fill",String(c)),a.appendChild(n),s.push({el:n,from:{x:r.x,y:r.y,width:r.width,height:r.height,rx:0},to:{x:i.x-i.r,y:i.y-i.r,width:2*i.r,height:2*i.r,rx:i.r},fill:m(c,i.fill),fillEnd:i.fill,delay:0,meta:{dotEl:i.el}})}}),!s.length)return this._cancelPieces();this._runPieces(s,t=>{const e=t.meta.dotEl;e.removeAttribute("opacity"),e.removeAttribute("data-piece-hidden"),t.el.parentNode&&t.el.parentNode.removeChild(t.el)})}_combinePieces(){var t,e;const r=this._snapshot,i=null==(t=this.w.globals.dom)?void 0:t.baseEl;if(!(r&&r.sourceDots&&r.keyOrder&&i))return this._revealPieceHidden();const n=this._collectTargetMarks(r.toType);if(!n.size)return this._revealPieceHidden();const a=r.oldLayout.translateX-(this.w.layout.translateX||0),s=r.oldLayout.translateY-(this.w.layout.translateY||0),l=Array.from(r.sourceDots.keys()).sort((t,e)=>t-e),o=this._makePieceLayer();if(!o)return this._revealPieceHidden();const h=o.ownerDocument,u=[],c=M(r.toType),f="summary"===c||"radial"===c;for(let t=0;t<l.length;t++){const i=r.sourceDots.get(l[t]),c=r.keyOrder[t],y=c?n.get(c):null;if(!y||!i||!i.length){y&&y.els.forEach(t=>{t.removeAttribute("opacity"),t.removeAttribute("data-piece-hidden")});continue}const b=y.fill&&0!==y.fill.indexOf("url(")?y.fill:(null==(e=this.w.globals.colors)?void 0:e[y.realIndex])||i[0].fill;let x=null;if(f){const t=y.d||y.els.map(t=>t.getAttribute("pathTo")||t.getAttribute("d")).filter(Boolean).join(" ");t&&(x=this._makeExtentProber(t,y.bbox,o))}const A=x?d(y.bbox,i.length,x.intervalsAt):p(y.bbox,i.length);x&&x.dispose();const _=g(A,t=>[t.x+t.width/2,t.y+t.height/2]),w=g(i,t=>[t.x,t.y]),$={remaining:w.length,els:y.els,tiles:[]};for(let t=0;t<w.length;t++){const e=w[t],r=_[t],i=h.createElementNS("http://www.w3.org/2000/svg","rect"),n=e.x+a-e.r,l=e.y+s-e.r;i.setAttribute("data-key",c),i.setAttribute("x",String(n)),i.setAttribute("y",String(l)),i.setAttribute("width",String(2*e.r)),i.setAttribute("height",String(2*e.r)),i.setAttribute("rx",String(e.r)),i.setAttribute("fill",String(e.fill||b)),o.appendChild(i),$.tiles.push(i),u.push({el:i,from:{x:n,y:l,width:2*e.r,height:2*e.r,rx:e.r},to:{x:r.x,y:r.y,width:r.width,height:r.height,rx:0},fill:m(e.fill,b),fillEnd:String(b),delay:0,meta:{markState:$}})}}if(!u.length)return this._cancelPieces();this._runPieces(u,t=>{const e=t.meta.markState;e.remaining--,0===e.remaining&&(e.els.forEach(t=>{t.removeAttribute("opacity"),t.removeAttribute("data-piece-hidden")}),e.tiles.forEach(t=>{t.parentNode&&t.parentNode.removeChild(t)}))})}_runPieces(t,e){const r=this.getSpeed(),i=Math.min(300,.35*r),n=Math.max(180,r-i);for(let e=0;e<t.length;e++)t[e].delay=t.length>1?e/(t.length-1)*i:0;this._pieceCancel=function({pieces:t,duration:e,onPieceDone:r,onAllDone:i}){let n=!1;const a=Date.now(),s=Math.max(1,e),l=(t,e)=>{const r=t.from,i=t.to,n=t.el;n.setAttribute("x",String(r.x+(i.x-r.x)*e)),n.setAttribute("y",String(r.y+(i.y-r.y)*e)),n.setAttribute("width",String(Math.max(0,r.width+(i.width-r.width)*e))),n.setAttribute("height",String(Math.max(0,r.height+(i.height-r.height)*e))),n.setAttribute("rx",String(Math.max(0,r.rx+(i.rx-r.rx)*e))),t.fill?n.setAttribute("fill",t.fill(e)):e>=1&&t.fillEnd&&n.setAttribute("fill",t.fillEnd)},o=()=>{if(n)return;const e=Date.now()-a;let u=!1;for(let i=0;i<t.length;i++){const n=t[i];if(n._done)continue;const a=(e-n.delay)/s;if(a<1&&(u=!0),a<=0)continue;const o=Math.min(1,a);l(n,b(o)),o>=1&&(n._done=!0,r&&r(n))}u?h.requestAnimationFrame(o):i&&i()};return h.requestAnimationFrame(o),()=>{n=!0}}({pieces:t,duration:n,onPieceDone:e,onAllDone:()=>{this._pieceCancel=null,this._cancelPieces()}})}_collectTargetMarks(t){var e;const r=null==(e=this.w.globals.dom)?void 0:e.baseEl,i=new Map;if(!r)return i;const n=M(t);if("radial"===n)return r.querySelectorAll(".apexcharts-pie-series .apexcharts-pie-area").forEach((t,e)=>{const r=t.getAttribute("data:pathFinal")||t.getAttribute("d");if(!r||!r.trim())return;const n=this._pathBBox(r);n&&i.set(`${e}:0`,{realIndex:e,j:0,d:r,bbox:{x:n.minX,y:n.minY,width:n.maxX-n.minX,height:n.maxY-n.minY},fill:t.getAttribute("fill"),els:[t]})}),i;const a="summary"===n?`.apexcharts-${t}-series`:".apexcharts-bar-series";return r.querySelectorAll(`${a} .apexcharts-series`).forEach(t=>{var e;const r=parseInt(null!=(e=t.getAttribute("data:realIndex"))?e:"0",10)||0;let n=0;t.querySelectorAll("path[pathTo]").forEach(t=>{var e;const a=t.getAttribute("pathTo")||t.getAttribute("d");if(!a||!a.trim())return;const s=parseInt(null!=(e=t.getAttribute("j"))?e:"",10),l=isNaN(s)?n++:s,o=this._pathBBox(a);if(!o)return;const h=`${r}:${l}`,u=i.get(h);u?(u.els.push(t),u.bbox={x:Math.min(u.bbox.x,o.minX),y:Math.min(u.bbox.y,o.minY),width:Math.max(u.bbox.x+u.bbox.width,o.maxX)-Math.min(u.bbox.x,o.minX),height:Math.max(u.bbox.y+u.bbox.height,o.maxY)-Math.min(u.bbox.y,o.minY)}):i.set(h,{realIndex:r,j:l,bbox:{x:o.minX,y:o.minY,width:o.maxX-o.minX,height:o.maxY-o.minY},fill:t.getAttribute("fill"),els:[t]})})}),i}_captureFromDOM(t){var e;const r=null==(e=this.w.globals.dom)?void 0:e.baseEl;if(!r)return{marks:[],branches:[],unitDots:new Map};const i=[],n=[],a=new Map,s=M(t);if("bar"===s){r.querySelectorAll(".apexcharts-bar-series .apexcharts-series").forEach(t=>{var e;const r=parseInt(null!=(e=t.getAttribute("data:realIndex"))?e:"0",10);t.querySelectorAll("path[pathTo]").forEach((t,e)=>{const n=t.getAttribute("pathTo")||t.getAttribute("d");n&&i.push({realIndex:r,j:e,d:n,fill:t.getAttribute("fill")})})})}else if("summary"===s){const e=new Map;r.querySelectorAll(`.apexcharts-${t}-area`).forEach(t=>{var r,i;const n=parseInt(null!=(r=t.getAttribute("j"))?r:"",10);if(isNaN(n))return;const a=t.getAttribute("pathTo")||t.getAttribute("d");if(!a||!a.trim())return;const s="function"==typeof t.closest?t.closest(".apexcharts-series"):null,l=parseInt(null!=(i=null==s?void 0:s.getAttribute("data:realIndex"))?i:"0",10)||0,o=`${l}:${n}`,h=e.get(o);h?h.d+=` ${a}`:e.set(o,{realIndex:l,j:n,d:a,fill:t.getAttribute("fill")})}),Array.from(e.values()).sort((t,e)=>t.realIndex-e.realIndex||t.j-e.j).forEach(t=>i.push(t))}else if("partition"===s)if("treemap"===t){const t=t=>{var e,r,i,n;const a=parseFloat(null!=(e=t.getAttribute("x"))?e:""),s=parseFloat(null!=(r=t.getAttribute("y"))?r:""),l=parseFloat(null!=(i=t.getAttribute("width"))?i:""),o=parseFloat(null!=(n=t.getAttribute("height"))?n:"");return[a,s,l,o].every(t=>isFinite(t))?`M ${a} ${s} L ${a+l} ${s} L ${a+l} ${s+o} L ${a} ${s+o} Z`:null};r.querySelectorAll(".apexcharts-treemap-rect").forEach(e=>{var r,n;const a=t(e);a&&i.push({realIndex:parseInt(null!=(r=e.getAttribute("i"))?r:"0",10)||0,j:parseInt(null!=(n=e.getAttribute("j"))?n:"0",10)||0,d:a,fill:e.getAttribute("fill"),key:e.getAttribute("data:key")||null})});r.querySelectorAll(".apexcharts-treemap-parent-rect").forEach(e=>{const r=t(e),i=e.getAttribute("data:key");r&&i&&n.push({key:i,d:r,fill:e.getAttribute("fill")})})}else{const t=r.querySelectorAll(".apexcharts-sunburst-arc"),e=[];t.forEach(t=>{"true"===t.getAttribute("data:leaf")&&e.push(t)});(e.length?e:Array.from(t)).forEach((t,e)=>{const r=t.getAttribute("d");r&&r.trim()&&i.push({realIndex:e,j:0,d:r,fill:t.getAttribute("fill"),key:t.getAttribute("data:key")||null})}),t.forEach(t=>{if("true"===t.getAttribute("data:leaf"))return;const e=t.getAttribute("d"),r=t.getAttribute("data:key");e&&e.trim()&&r&&n.push({key:r,d:e,fill:t.getAttribute("fill")})})}else if("unit"===s){const t=r.querySelectorAll(".apexcharts-unit-area"),e=new Map;t.forEach(t=>{var r,i,n,s,l,o,h;const u=parseInt(null!=(r=t.getAttribute("i"))?r:"",10);if(isNaN(u))return;const c=t.getAttribute("cx");let p,d,f=3;if(null!=c)p=parseFloat(c),d=parseFloat(null!=(i=t.getAttribute("cy"))?i:""),f=parseFloat(null!=(n=t.getAttribute("r"))?n:"3")||3;else{const e=parseFloat(null!=(s=t.getAttribute("width"))?s:"0")||0,r=parseFloat(null!=(l=t.getAttribute("height"))?l:"0")||0;p=parseFloat(null!=(o=t.getAttribute("x"))?o:"")+e/2,d=parseFloat(null!=(h=t.getAttribute("y"))?h:"")+r/2,f=Math.max(e,r)/2||3}if(!isFinite(p)||!isFinite(d))return;let g=a.get(u);g||(g=[],a.set(u,g)),g.push({x:p,y:d,r:f,fill:t.getAttribute("fill")});const y=e.get(u);y?(p<y.minX&&(y.minX=p),p>y.maxX&&(y.maxX=p),d<y.minY&&(y.minY=d),d>y.maxY&&(y.maxY=d)):e.set(u,{minX:p,minY:d,maxX:p,maxY:d,fill:t.getAttribute("fill")})}),Array.from(e.keys()).sort((t,e)=>t-e).forEach(t=>{const r=e.get(t),n=r.minX-2,a=r.minY-2,s=r.maxX+2,l=r.maxY+2;i.push({realIndex:t,j:0,d:`M ${n} ${a} L ${s} ${a} L ${s} ${l} L ${n} ${l} Z`,fill:r.fill})})}else if("radial"===s)if("radialBar"===t||"gauge"===t){const t=this.w.layout.gridWidth/2,e=Math.min(this.w.layout.gridWidth,this.w.layout.gridHeight)/2;r.querySelectorAll(".apexcharts-radial-series .apexcharts-radialbar-area").forEach(r=>{var n;const a=r.parentElement,s=parseInt(null!=(n=null==a?void 0:a.getAttribute("data:realIndex"))?n:"0",10),l=r.getAttribute("d");if(!l)return;const o=parseFloat(r.getAttribute("stroke-width")||"0"),h=o>1&&this._radialArcToFilledSegment(l,o,t,e)||l;i.push({realIndex:s,j:0,d:h,fill:r.getAttribute("stroke")})})}else{r.querySelectorAll(".apexcharts-pie-series .apexcharts-pie-area").forEach((t,e)=>{const r=t.getAttribute("d");r&&i.push({realIndex:e,j:0,d:r,fill:t.getAttribute("fill")})})}return{marks:i,branches:n,unitDots:a}}_radialArcToFilledSegment(t,e,r,i){const n=t.match(/M\s*(-?[\d.]+)\s+(-?[\d.]+)\s+A\s*(-?[\d.]+)\s+(?:-?[\d.]+)\s+(?:-?[\d.]+)\s+(\d)\s+(\d)\s+(-?[\d.]+)\s+(-?[\d.]+)/);if(!n)return null;const a=parseFloat(n[1]),s=parseFloat(n[2]),l=parseFloat(n[3]),o=parseInt(n[4],10),h=parseInt(n[5],10),u=parseFloat(n[6]),c=parseFloat(n[7]);if(!isFinite(l)||l<=0)return null;const p=e/2,d=l+p,f=Math.max(0,l-p),g=(t,e,n)=>{const a=t-r,s=e-i,l=Math.sqrt(a*a+s*s);if(0===l)return{x:r,y:i};const o=n/l;return{x:r+a*o,y:i+s*o}},y=g(a,s,d),m=g(u,c,d),b=g(a,s,f),x=g(u,c,f),A=h?0:1;return`M ${y.x} ${y.y} A ${d} ${d} 0 ${o} ${h} ${m.x} ${m.y} L ${x.x} ${x.y} A ${f} ${f} 0 ${o} ${A} ${b.x} ${b.y} Z`}buildRingSegmentPath(t,e,r,i,n,a){const s=i/2,l=r+s,o=Math.max(0,r-s),h=(n-90)*Math.PI/180,u=(a-90)*Math.PI/180,c=t+l*Math.cos(h),p=e+l*Math.sin(h),d=t+l*Math.cos(u),f=e+l*Math.sin(u),g=t+o*Math.cos(h),y=e+o*Math.sin(h),m=t+o*Math.cos(u),b=e+o*Math.sin(u),x=a>n?1:0,A=Math.abs(a-n)>180?1:0;return`M ${c} ${p} A ${l} ${l} 0 ${A} ${x} ${d} ${f} L ${m} ${b} A ${o} ${o} 0 ${A} ${1-x} ${g} ${y} Z`}getFromType(){return this._snapshot?this._snapshot.fromType:null}_buildMapping(t,e,r,i,n){const a=new Map,s=M(r),l=t.slice().sort((t,e)=>t.realIndex-e.realIndex||t.j-e.j);if("partition"===s&&n&&n.length){const t=l.filter(t=>t.key);t.length===l.length&&(t.forEach(t=>{a.set(`key:${t.key}`,{d:t.d,fill:t.fill})}),n.forEach(t=>{a.set(`key:${t.key}`,{d:t.d,fill:t.fill})}))}if("radial"===s||"unit"===s||"partition"===s)return l.forEach((t,e)=>{a.set(`${e}:0`,{d:t.d,fill:t.fill})}),a;if("bar"===s||"summary"===s){const t=[];return(Array.isArray(i)?i:[]).forEach((e,r)=>{const i=e&&Array.isArray(e.data)?e.data:[];for(let e=0;e<i.length;e++)t.push({realIndex:r,j:e})}),l.forEach((e,r)=>{const i=t[r];i&&a.set(`${i.realIndex}:${i.j}`,{d:e.d,fill:e.fill})}),a}return a}isActive(){return null!==this._snapshot}getInitialPathFor(t,e){if(!this._snapshot)return null;const r=this._snapshot.mapping.get(`${t}:${e}`);if(!r)return null;const i=this._snapshot.oldLayout.translateX-(this.w.layout.translateX||0),n=this._snapshot.oldLayout.translateY-(this.w.layout.translateY||0);return 0===i&&0===n?r.d:this._translatePathD(r.d,i,n)}_translatePathD(t,e,r){if(0===e&&0===r)return t;return c(t).map(t=>{const i=t[0];return"Z"===i?"Z":"M"===i||"L"===i||"T"===i?`${i} ${t[1]+e} ${t[2]+r}`:"H"===i?`${i} ${t[1]+e}`:"V"===i?`${i} ${t[1]+r}`:"C"===i?`${i} ${t[1]+e} ${t[2]+r} ${t[3]+e} ${t[4]+r} ${t[5]+e} ${t[6]+r}`:"S"===i||"Q"===i?`${i} ${t[1]+e} ${t[2]+r} ${t[3]+e} ${t[4]+r}`:"A"===i?`${i} ${t[1]} ${t[2]} ${t[3]} ${t[4]} ${t[5]} ${t[6]+e} ${t[7]+r}`:t.join(" ")}).join(" ")}getInitialCenterFor(t){const e=this.getInitialBBoxFor(t);return e?{x:e.x+e.width/2,y:e.y+e.height/2}:null}getInitialPathAt(t){return this.getInitialPathFor(t,0)}getInitialPathForKey(t){return this._snapshot&&t?this.getInitialPathFor("key",t):null}hasKeyedMarks(){if(!this._snapshot)return!1;for(const t of this._snapshot.mapping.keys())if("string"==typeof t&&t.startsWith("key:"))return!0;return!1}getInitialSlotFor(t,e,r){const i=this.getInitialBBoxFor(t);if(!i)return null;const n=i.x+i.width/2,a=i.y+i.height/2;if(!(r>1&&e>=0))return{x:n,y:a};const s=(Math.min(e,r-1)+.5)/r;return i.height>=i.width?{x:n,y:i.y+i.height*(1-s)}:{x:i.x+i.width*s,y:a}}getInitialBBoxFor(t){if(!this._snapshot)return null;const e=this._snapshot.mapping.get(`${t}:0`);if(!e)return null;const r=this._pathBBox(e.d);if(!r)return null;const i=this._snapshot.oldLayout.translateX-(this.w.layout.translateX||0),n=this._snapshot.oldLayout.translateY-(this.w.layout.translateY||0);return{x:r.minX+i,y:r.minY+n,width:r.maxX-r.minX,height:r.maxY-r.minY}}_pathBBox(t){const e=c(t);let r=1/0,i=1/0,n=-1/0,a=-1/0,s=!1;return e.forEach(t=>{const e=t[0];if("Z"===e)return;let l=[];if("H"===e)l=[[t[1],(i+a)/2||t[1]]];else if("V"===e)l=[[(r+n)/2||t[1],t[1]]];else if("A"===e)l=[[t[6],t[7]]];else for(let e=1;e+1<t.length;e+=2)l.push([t[e],t[e+1]]);l.forEach(([t,e])=>{isFinite(t)&&isFinite(e)&&(s=!0,t<r&&(r=t),t>n&&(n=t),e<i&&(i=e),e>a&&(a=e))})}),s?{minX:r,minY:i,maxX:n,maxY:a}:null}getInitialFillFor(t,e){if(!this._snapshot)return null;const r=this._snapshot.mapping.get(`${t}:${e}`);return r?r.fill:null}getSpeed(){const t=this.w.config.chart.animations;return t.chartTypeMorph&&t.chartTypeMorph.speed||t.speed||600}applyChromeFade(){var t;if(!this._snapshot||!o.isBrowser())return;const e=null==(t=this.w.globals.dom)?void 0:t.baseEl;if(!e)return;this._snapshot.pieceOut?this._separatePieces():this._snapshot.pieceIn?this._combinePieces():this._mountGhost();const r=this.getSpeed();[".apexcharts-xaxis",".apexcharts-yaxis",".apexcharts-grid",".apexcharts-gridlines-horizontal",".apexcharts-gridlines-vertical",".apexcharts-legend",".apexcharts-title-text",".apexcharts-subtitle-text"].forEach(t=>{e.querySelectorAll(t).forEach(t=>{t.style&&(t.style.opacity="0",t.style.transition=`opacity ${r}ms ease-out`,h.requestAnimationFrame(()=>{t.style.opacity="1"}),setTimeout(()=>{t.style.transition="",t.style.opacity=""},r+80))})}),setTimeout(()=>this.cleanup(),r+100)}cleanup(){this._snapshot=null,this._removeGhost(),this._cancelPieces()}}}),Object.defineProperty(exports,"default",{enumerable:!0,get:()=>l.default});
@@ -15,7 +15,7 @@ var __spreadValues = (a, b) => {
15
15
  return a;
16
16
  };
17
17
  /*!
18
- * ApexCharts v7.2.0
18
+ * ApexCharts v7.4.0
19
19
  * (c) 2018-2026 ApexCharts
20
20
  */
21
21
  import * as _core from "apexcharts/core";