highcharts 13.0.1 → 13.0.2

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 (915) hide show
  1. package/bower.json +2 -3
  2. package/es-modules/Accessibility/A11yI18n.js +4 -4
  3. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +6 -4
  4. package/es-modules/Accessibility/Components/LegendComponent.js +2 -2
  5. package/es-modules/Accessibility/Components/NavigatorComponent.js +2 -2
  6. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +13 -10
  7. package/es-modules/Accessibility/Components/ZoomComponent.js +2 -2
  8. package/es-modules/Accessibility/FocusBorder.js +2 -2
  9. package/es-modules/Accessibility/Options/DeprecatedOptions.js +1 -2
  10. package/es-modules/Core/Animation/AnimationUtilities.js +3 -2
  11. package/es-modules/Core/Axis/Axis.js +48 -57
  12. package/es-modules/Core/Axis/Axis3DComposition.js +8 -6
  13. package/es-modules/Core/Axis/BrokenAxis.js +6 -5
  14. package/es-modules/Core/Axis/Color/ColorAxis.js +17 -10
  15. package/es-modules/Core/Axis/Color/ColorAxisComposition.js +2 -2
  16. package/es-modules/Core/Axis/GridAxis.js +4 -4
  17. package/es-modules/Core/Axis/LogarithmicAxis.js +5 -3
  18. package/es-modules/Core/Axis/NavigatorAxisComposition.js +2 -2
  19. package/es-modules/Core/Axis/OrdinalAxis.js +9 -7
  20. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +3 -2
  21. package/es-modules/Core/Axis/RadialAxis.js +15 -9
  22. package/es-modules/Core/Axis/ScrollbarAxis.js +3 -3
  23. package/es-modules/Core/Axis/Stacking/StackItem.js +5 -5
  24. package/es-modules/Core/Axis/Stacking/StackingAxis.js +4 -4
  25. package/es-modules/Core/Axis/Tick.js +10 -11
  26. package/es-modules/Core/Axis/TreeGrid/TreeGridTick.js +3 -3
  27. package/es-modules/Core/Chart/Chart.js +14 -14
  28. package/es-modules/Core/Chart/Chart3D.js +3 -3
  29. package/es-modules/Core/Chart/ChartDefaults.js +23 -0
  30. package/es-modules/Core/Chart/MapChart.js +7 -5
  31. package/es-modules/Core/Chart/StockChart.js +15 -11
  32. package/es-modules/Core/Color/Color.js +3 -1
  33. package/es-modules/Core/Defaults.js +35 -0
  34. package/es-modules/Core/Globals.js +1 -1
  35. package/es-modules/Core/Legend/Legend.js +16 -12
  36. package/es-modules/Core/Legend/LegendSymbol.js +2 -2
  37. package/es-modules/Core/MSPointer.js +2 -2
  38. package/es-modules/Core/Math3D.js +6 -7
  39. package/es-modules/Core/Pointer.js +9 -9
  40. package/es-modules/Core/Renderer/RendererUtilities.js +2 -2
  41. package/es-modules/Core/Renderer/SVG/SVGElement.js +11 -9
  42. package/es-modules/Core/Renderer/SVG/SVGElement3D.js +2 -2
  43. package/es-modules/Core/Renderer/SVG/SVGLabel.js +5 -5
  44. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +5 -5
  45. package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +11 -9
  46. package/es-modules/Core/Renderer/SVG/Symbols.js +6 -5
  47. package/es-modules/Core/Renderer/SVG/TextBuilder.js +2 -2
  48. package/es-modules/Core/Responsive.js +7 -5
  49. package/es-modules/Core/Series/DataLabel.js +8 -6
  50. package/es-modules/Core/Series/OverlappingDataLabels.js +5 -2
  51. package/es-modules/Core/Series/Point.js +3 -3
  52. package/es-modules/Core/Series/Series.js +37 -21
  53. package/es-modules/Core/Series/Series3D.js +2 -2
  54. package/es-modules/Core/Templating.js +2 -2
  55. package/es-modules/Core/Tooltip.js +11 -7
  56. package/es-modules/Core/Utilities.js +4 -3
  57. package/es-modules/Data/Connectors/DataConnector.js +2 -2
  58. package/es-modules/Data/Connectors/GoogleSheetsConnector.js +2 -2
  59. package/es-modules/Data/DataTable.js +17 -0
  60. package/es-modules/Extensions/Annotations/Annotation.js +4 -4
  61. package/es-modules/Extensions/Annotations/AnnotationChart.js +2 -2
  62. package/es-modules/Extensions/Annotations/ControlPoint.js +2 -2
  63. package/es-modules/Extensions/Annotations/Controllables/ControllableLabel.js +2 -2
  64. package/es-modules/Extensions/Annotations/EventEmitter.js +4 -4
  65. package/es-modules/Extensions/Annotations/NavigationBindings.js +6 -3
  66. package/es-modules/Extensions/Annotations/NavigationBindingsUtilities.js +2 -2
  67. package/es-modules/Extensions/Annotations/Popup/Popup.js +3 -2
  68. package/es-modules/Extensions/Annotations/Popup/PopupAnnotations.js +4 -6
  69. package/es-modules/Extensions/Annotations/Types/Measure.js +3 -3
  70. package/es-modules/Extensions/Annotations/Types/VerticalLine.js +3 -3
  71. package/es-modules/Extensions/Boost/BoostChart.js +11 -4
  72. package/es-modules/Extensions/Boost/BoostSeries.js +8 -9
  73. package/es-modules/Extensions/Boost/WGLRenderer.js +9 -6
  74. package/es-modules/Extensions/Boost/WGLShader.js +3 -3
  75. package/es-modules/Extensions/BoostCanvas.js +2 -2
  76. package/es-modules/Extensions/Breadcrumbs/Breadcrumbs.js +5 -4
  77. package/es-modules/Extensions/DataGrouping/DataGrouping.js +2 -2
  78. package/es-modules/Extensions/DataGrouping/DataGroupingAxisComposition.js +4 -3
  79. package/es-modules/Extensions/DataGrouping/DataGroupingSeriesComposition.js +2 -2
  80. package/es-modules/Extensions/DraggablePoints/DragDropProps.js +2 -3
  81. package/es-modules/Extensions/ExportData/ExportData.js +17 -16
  82. package/es-modules/Extensions/Exporting/Exporting.js +7 -7
  83. package/es-modules/Extensions/MouseWheelZoom/MouseWheelZoom.js +2 -2
  84. package/es-modules/Extensions/Pane/PaneComposition.js +2 -2
  85. package/es-modules/Extensions/ParallelCoordinates/ParallelAxis.js +2 -2
  86. package/es-modules/Extensions/PatternFill.js +7 -5
  87. package/es-modules/Extensions/PriceIndication.js +5 -4
  88. package/es-modules/Extensions/SeriesLabel/SeriesLabel.js +7 -7
  89. package/es-modules/Extensions/Sonification/MIDI.js +2 -3
  90. package/es-modules/Extensions/Sonification/Sonification.js +2 -2
  91. package/es-modules/Extensions/Sonification/SonificationSpeaker.js +3 -2
  92. package/es-modules/Extensions/Sonification/SynthPatch.js +3 -3
  93. package/es-modules/Extensions/Sonification/TimelineFromChart.js +11 -11
  94. package/es-modules/Gantt/Legacy.js +2 -2
  95. package/es-modules/Gantt/Pathfinder.js +3 -3
  96. package/es-modules/Gantt/PathfinderAlgorithms.js +4 -3
  97. package/es-modules/Gantt/Tree.js +1 -1
  98. package/es-modules/Maps/MapNavigation.js +4 -4
  99. package/es-modules/Maps/MapPointer.js +2 -2
  100. package/es-modules/Maps/MapView.js +2 -2
  101. package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +8 -6
  102. package/es-modules/Series/Area/AreaSeries.js +4 -5
  103. package/es-modules/Series/BoxPlot/BoxPlotSeries.js +13 -4
  104. package/es-modules/Series/Bubble/BubbleLegendItem.js +10 -6
  105. package/es-modules/Series/Bubble/BubbleSeries.js +10 -9
  106. package/es-modules/Series/Bullet/BulletSeries.js +17 -10
  107. package/es-modules/Series/CenteredUtilities.js +7 -5
  108. package/es-modules/Series/Column/ColumnSeries.js +2 -2
  109. package/es-modules/Series/Column3D/Column3DComposition.js +6 -5
  110. package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +4 -4
  111. package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +4 -2
  112. package/es-modules/Series/Cylinder/CylinderComposition.js +2 -2
  113. package/es-modules/Series/DataModifyComposition.js +9 -7
  114. package/es-modules/Series/DotPlot/DotPlotSeries.js +3 -2
  115. package/es-modules/Series/Dumbbell/DumbbellPoint.js +14 -3
  116. package/es-modules/Series/Dumbbell/DumbbellSeries.js +24 -7
  117. package/es-modules/Series/FlowMap/FlowMapPoint.js +5 -3
  118. package/es-modules/Series/FlowMap/FlowMapSeries.js +17 -9
  119. package/es-modules/Series/Funnel/FunnelSeries.js +2 -2
  120. package/es-modules/Series/Funnel3D/Funnel3DSeries.js +7 -5
  121. package/es-modules/Series/Gauge/GaugeSeries.js +2 -2
  122. package/es-modules/Series/GeoHeatmap/GeoHeatmapSeries.js +4 -4
  123. package/es-modules/Series/Heatmap/HeatmapPoint.js +6 -6
  124. package/es-modules/Series/Heatmap/HeatmapPointOptions.js +12 -0
  125. package/es-modules/Series/Heatmap/HeatmapSeries.js +13 -13
  126. package/es-modules/Series/Heatmap/HeatmapSeriesOptions.js +12 -0
  127. package/es-modules/Series/Histogram/HistogramPoint.js +17 -0
  128. package/es-modules/Series/Histogram/HistogramPointOptions.js +12 -0
  129. package/es-modules/Series/Histogram/HistogramSeries.js +14 -2
  130. package/es-modules/Series/Histogram/HistogramSeriesOptions.js +12 -0
  131. package/es-modules/Series/InterpolationUtilities.js +5 -5
  132. package/es-modules/Series/Item/ItemPointOptions.js +14 -0
  133. package/es-modules/Series/Item/ItemSeries.js +18 -6
  134. package/es-modules/Series/Item/ItemSeriesOptions.js +14 -0
  135. package/es-modules/Series/Map/MapPoint.js +5 -3
  136. package/es-modules/Series/Map/MapSeries.js +5 -8
  137. package/es-modules/Series/Networkgraph/NetworkgraphPoint.js +3 -3
  138. package/es-modules/Series/Networkgraph/NetworkgraphSeries.js +4 -2
  139. package/es-modules/Series/Networkgraph/ReingoldFruchtermanLayout.js +18 -9
  140. package/es-modules/Series/NodesComposition.js +9 -10
  141. package/es-modules/Series/Organization/OrganizationPoint.js +3 -2
  142. package/es-modules/Series/PackedBubble/PackedBubbleLayout.js +3 -3
  143. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +5 -5
  144. package/es-modules/Series/Pictorial/PictorialSeries.js +4 -2
  145. package/es-modules/Series/Pie/PieDataLabel.js +2 -2
  146. package/es-modules/Series/Pie/PiePoint.js +2 -2
  147. package/es-modules/Series/Pie/PieSeries.js +3 -2
  148. package/es-modules/Series/Pie3D/Pie3DSeries.js +8 -4
  149. package/es-modules/Series/PolarComposition.js +8 -7
  150. package/es-modules/Series/Sankey/SankeySeries.js +11 -5
  151. package/es-modules/Series/Scatter/ScatterSeries.js +6 -5
  152. package/es-modules/Series/SolidGauge/SolidGaugeSeries.js +2 -2
  153. package/es-modules/Series/Spline/SplineSeries.js +5 -5
  154. package/es-modules/Series/TiledWebMap/TiledWebMapSeries.js +8 -6
  155. package/es-modules/Series/Tilemap/TilemapShapes.js +2 -2
  156. package/es-modules/Series/Timeline/TimelinePoint.js +2 -2
  157. package/es-modules/Series/Timeline/TimelineSeries.js +4 -3
  158. package/es-modules/Series/TreeUtilities.js +16 -7
  159. package/es-modules/Series/Treegraph/TreegraphLink.js +2 -2
  160. package/es-modules/Series/Treemap/TreemapPoint.js +2 -2
  161. package/es-modules/Series/Treemap/TreemapSeries.js +14 -11
  162. package/es-modules/Series/VariablePie/VariablePieSeries.js +6 -4
  163. package/es-modules/Series/Variwide/VariwideSeries.js +2 -2
  164. package/es-modules/Series/Waterfall/WaterfallSeries.js +2 -2
  165. package/es-modules/Series/Windbarb/WindbarbSeries.js +2 -2
  166. package/es-modules/Shared/TimeBase.js +8 -2
  167. package/es-modules/Shared/Utilities.js +9 -7
  168. package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +3 -3
  169. package/es-modules/Stock/Indicators/DPO/DPOIndicator.js +4 -3
  170. package/es-modules/Stock/Indicators/RSI/RSIIndicator.js +1 -1
  171. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +2 -2
  172. package/es-modules/Stock/Navigator/ChartNavigatorComposition.js +4 -4
  173. package/es-modules/Stock/Navigator/Navigator.js +26 -26
  174. package/es-modules/Stock/Navigator/StandaloneNavigator.js +4 -4
  175. package/es-modules/Stock/RangeSelector/RangeSelector.js +15 -11
  176. package/es-modules/Stock/RangeSelector/RangeSelectorComposition.js +3 -3
  177. package/es-modules/Stock/Scrollbar/Scrollbar.js +8 -7
  178. package/es-modules/Stock/StockTools/StockToolbar.js +5 -5
  179. package/es-modules/Stock/StockTools/StockTools.js +2 -2
  180. package/es-modules/Stock/StockTools/StockToolsGui.js +4 -2
  181. package/es-modules/masters/highcharts-3d.src.js +1 -1
  182. package/es-modules/masters/highcharts-autoload.src.js +1 -1
  183. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  184. package/es-modules/masters/highcharts-more.src.js +1 -1
  185. package/es-modules/masters/highcharts.src.js +7 -2
  186. package/es-modules/masters/highmaps.src.js +1 -1
  187. package/es-modules/masters/highstock.src.js +1 -1
  188. package/es-modules/masters/i18n/fr-FR.src.d.ts +1 -1
  189. package/es-modules/masters/i18n/fr-FR.src.js +1 -1
  190. package/es-modules/masters/i18n/nb-NO.src.d.ts +1 -1
  191. package/es-modules/masters/i18n/nb-NO.src.js +1 -1
  192. package/es-modules/masters/i18n/zh-CN.src.d.ts +1 -1
  193. package/es-modules/masters/i18n/zh-CN.src.js +1 -1
  194. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  195. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  196. package/es-modules/masters/indicators/ao.src.js +1 -1
  197. package/es-modules/masters/indicators/apo.src.js +1 -1
  198. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  199. package/es-modules/masters/indicators/aroon.src.js +1 -1
  200. package/es-modules/masters/indicators/atr.src.js +1 -1
  201. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  202. package/es-modules/masters/indicators/cci.src.js +1 -1
  203. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  204. package/es-modules/masters/indicators/cmf.src.js +1 -1
  205. package/es-modules/masters/indicators/cmo.src.js +1 -1
  206. package/es-modules/masters/indicators/dema.src.js +1 -1
  207. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  208. package/es-modules/masters/indicators/dmi.src.js +1 -1
  209. package/es-modules/masters/indicators/dpo.src.js +1 -1
  210. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  211. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  212. package/es-modules/masters/indicators/indicators.src.js +1 -1
  213. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  214. package/es-modules/masters/indicators/klinger.src.js +1 -1
  215. package/es-modules/masters/indicators/macd.src.js +1 -1
  216. package/es-modules/masters/indicators/mfi.src.js +1 -1
  217. package/es-modules/masters/indicators/momentum.src.js +1 -1
  218. package/es-modules/masters/indicators/natr.src.js +1 -1
  219. package/es-modules/masters/indicators/obv.src.js +1 -1
  220. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  221. package/es-modules/masters/indicators/ppo.src.js +1 -1
  222. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  223. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  224. package/es-modules/masters/indicators/psar.src.js +1 -1
  225. package/es-modules/masters/indicators/regressions.src.js +1 -1
  226. package/es-modules/masters/indicators/roc.src.js +1 -1
  227. package/es-modules/masters/indicators/rsi.src.js +1 -1
  228. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  229. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  230. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  231. package/es-modules/masters/indicators/tema.src.js +1 -1
  232. package/es-modules/masters/indicators/trendline.src.js +1 -1
  233. package/es-modules/masters/indicators/trix.src.js +1 -1
  234. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  235. package/es-modules/masters/indicators/vwap.src.js +1 -1
  236. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  237. package/es-modules/masters/indicators/wma.src.js +1 -1
  238. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  239. package/es-modules/masters/modules/accessibility.src.js +1 -1
  240. package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
  241. package/es-modules/masters/modules/annotations.src.js +1 -1
  242. package/es-modules/masters/modules/arc-diagram.src.js +1 -1
  243. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  244. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  245. package/es-modules/masters/modules/boost.src.js +1 -1
  246. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  247. package/es-modules/masters/modules/bullet.src.js +1 -1
  248. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  249. package/es-modules/masters/modules/contour.src.js +1 -1
  250. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  251. package/es-modules/masters/modules/cylinder.src.js +1 -1
  252. package/es-modules/masters/modules/data-sorting.src.js +1 -1
  253. package/es-modules/masters/modules/data-tools.src.js +1 -1
  254. package/es-modules/masters/modules/data.src.js +1 -1
  255. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  256. package/es-modules/masters/modules/debugger.src.js +1 -1
  257. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  258. package/es-modules/masters/modules/dotplot.src.js +1 -1
  259. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  260. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  261. package/es-modules/masters/modules/drilldown.src.js +1 -1
  262. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  263. package/es-modules/masters/modules/export-data.src.js +1 -1
  264. package/es-modules/masters/modules/exporting.src.js +1 -1
  265. package/es-modules/masters/modules/flowmap.src.js +1 -1
  266. package/es-modules/masters/modules/full-screen.src.js +1 -1
  267. package/es-modules/masters/modules/funnel.src.js +1 -1
  268. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  269. package/es-modules/masters/modules/gantt.src.js +1 -1
  270. package/es-modules/masters/modules/geoheatmap.src.js +1 -1
  271. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  272. package/es-modules/masters/modules/heatmap.src.js +1 -1
  273. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  274. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  275. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  276. package/es-modules/masters/modules/item-series.src.js +1 -1
  277. package/es-modules/masters/modules/lollipop.src.js +1 -1
  278. package/es-modules/masters/modules/map.src.js +1 -1
  279. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  280. package/es-modules/masters/modules/mouse-wheel-zoom.src.js +1 -1
  281. package/es-modules/masters/modules/navigator.src.js +1 -1
  282. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  283. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  284. package/es-modules/masters/modules/non-cartesian-zoom.src.js +1 -1
  285. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  286. package/es-modules/masters/modules/organization.src.js +1 -1
  287. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  288. package/es-modules/masters/modules/pareto.src.js +1 -1
  289. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  290. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  291. package/es-modules/masters/modules/pictorial.src.js +1 -1
  292. package/es-modules/masters/modules/pointandfigure.src.js +1 -1
  293. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  294. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  295. package/es-modules/masters/modules/renko.src.js +1 -1
  296. package/es-modules/masters/modules/sankey.src.js +1 -1
  297. package/es-modules/masters/modules/series-label.src.js +1 -1
  298. package/es-modules/masters/modules/series-on-point.src.js +1 -1
  299. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  300. package/es-modules/masters/modules/sonification.src.js +1 -1
  301. package/es-modules/masters/modules/static-scale.src.js +1 -1
  302. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  303. package/es-modules/masters/modules/stock.src.js +1 -1
  304. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  305. package/es-modules/masters/modules/sunburst.src.js +1 -1
  306. package/es-modules/masters/modules/textpath.src.js +1 -1
  307. package/es-modules/masters/modules/tiledwebmap.src.js +1 -1
  308. package/es-modules/masters/modules/tilemap.src.js +1 -1
  309. package/es-modules/masters/modules/timeline.src.js +1 -1
  310. package/es-modules/masters/modules/treegraph.src.js +1 -1
  311. package/es-modules/masters/modules/treegrid.src.js +1 -1
  312. package/es-modules/masters/modules/treemap.src.js +1 -1
  313. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  314. package/es-modules/masters/modules/variwide.src.js +1 -1
  315. package/es-modules/masters/modules/vector.src.js +1 -1
  316. package/es-modules/masters/modules/venn.src.js +1 -1
  317. package/es-modules/masters/modules/windbarb.src.js +1 -1
  318. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  319. package/es-modules/masters/modules/xrange.src.js +1 -1
  320. package/es-modules/masters/standalone-navigator.src.js +1 -1
  321. package/es-modules/masters/themes/adaptive.src.js +1 -1
  322. package/es-modules/masters/themes/avocado.src.js +1 -1
  323. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  324. package/es-modules/masters/themes/grid-light.src.js +1 -1
  325. package/es-modules/masters/themes/high-contrast.src.js +1 -1
  326. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  327. package/es-modules/masters/themes/sunset.src.js +1 -1
  328. package/es-modules/tsconfig.tsbuildinfo +1 -1
  329. package/esm/highcharts-3d.js +2 -2
  330. package/esm/highcharts-3d.src.js +40 -32
  331. package/esm/highcharts-autoload.js +1 -1
  332. package/esm/highcharts-autoload.src.js +1 -1
  333. package/esm/highcharts-gantt.js +1 -1
  334. package/esm/highcharts-gantt.src.js +1 -1
  335. package/esm/highcharts-more.js +2 -2
  336. package/esm/highcharts-more.src.js +90 -56
  337. package/esm/highcharts.js +4 -4
  338. package/esm/highcharts.src.js +312 -207
  339. package/esm/highmaps.js +1 -1
  340. package/esm/highmaps.src.js +1 -1
  341. package/esm/highstock.js +1 -1
  342. package/esm/highstock.src.js +1 -1
  343. package/esm/i18n/fr-FR.js +1 -1
  344. package/esm/i18n/fr-FR.src.js +1 -1
  345. package/esm/i18n/nb-NO.js +1 -1
  346. package/esm/i18n/nb-NO.src.js +1 -1
  347. package/esm/i18n/zh-CN.js +1 -1
  348. package/esm/i18n/zh-CN.src.js +1 -1
  349. package/esm/indicators/acceleration-bands.js +1 -1
  350. package/esm/indicators/acceleration-bands.src.js +1 -1
  351. package/esm/indicators/accumulation-distribution.js +1 -1
  352. package/esm/indicators/accumulation-distribution.src.js +1 -1
  353. package/esm/indicators/ao.js +1 -1
  354. package/esm/indicators/ao.src.js +1 -1
  355. package/esm/indicators/apo.js +1 -1
  356. package/esm/indicators/apo.src.js +1 -1
  357. package/esm/indicators/aroon-oscillator.js +1 -1
  358. package/esm/indicators/aroon-oscillator.src.js +1 -1
  359. package/esm/indicators/aroon.js +2 -2
  360. package/esm/indicators/aroon.src.js +3 -3
  361. package/esm/indicators/atr.js +1 -1
  362. package/esm/indicators/atr.src.js +1 -1
  363. package/esm/indicators/bollinger-bands.js +1 -1
  364. package/esm/indicators/bollinger-bands.src.js +1 -1
  365. package/esm/indicators/cci.js +1 -1
  366. package/esm/indicators/cci.src.js +1 -1
  367. package/esm/indicators/chaikin.js +1 -1
  368. package/esm/indicators/chaikin.src.js +1 -1
  369. package/esm/indicators/cmf.js +1 -1
  370. package/esm/indicators/cmf.src.js +1 -1
  371. package/esm/indicators/cmo.js +1 -1
  372. package/esm/indicators/cmo.src.js +1 -1
  373. package/esm/indicators/dema.js +1 -1
  374. package/esm/indicators/dema.src.js +1 -1
  375. package/esm/indicators/disparity-index.js +1 -1
  376. package/esm/indicators/disparity-index.src.js +1 -1
  377. package/esm/indicators/dmi.js +1 -1
  378. package/esm/indicators/dmi.src.js +1 -1
  379. package/esm/indicators/dpo.js +2 -2
  380. package/esm/indicators/dpo.src.js +4 -3
  381. package/esm/indicators/ichimoku-kinko-hyo.js +1 -1
  382. package/esm/indicators/ichimoku-kinko-hyo.src.js +1 -1
  383. package/esm/indicators/indicators-all.js +2 -2
  384. package/esm/indicators/indicators-all.src.js +8 -7
  385. package/esm/indicators/indicators.js +2 -2
  386. package/esm/indicators/indicators.src.js +2 -2
  387. package/esm/indicators/keltner-channels.js +1 -1
  388. package/esm/indicators/keltner-channels.src.js +1 -1
  389. package/esm/indicators/klinger.js +1 -1
  390. package/esm/indicators/klinger.src.js +1 -1
  391. package/esm/indicators/macd.js +1 -1
  392. package/esm/indicators/macd.src.js +1 -1
  393. package/esm/indicators/mfi.js +1 -1
  394. package/esm/indicators/mfi.src.js +1 -1
  395. package/esm/indicators/momentum.js +1 -1
  396. package/esm/indicators/momentum.src.js +1 -1
  397. package/esm/indicators/natr.js +1 -1
  398. package/esm/indicators/natr.src.js +1 -1
  399. package/esm/indicators/obv.js +1 -1
  400. package/esm/indicators/obv.src.js +1 -1
  401. package/esm/indicators/pivot-points.js +1 -1
  402. package/esm/indicators/pivot-points.src.js +1 -1
  403. package/esm/indicators/ppo.js +1 -1
  404. package/esm/indicators/ppo.src.js +1 -1
  405. package/esm/indicators/price-channel.js +1 -1
  406. package/esm/indicators/price-channel.src.js +1 -1
  407. package/esm/indicators/price-envelopes.js +1 -1
  408. package/esm/indicators/price-envelopes.src.js +1 -1
  409. package/esm/indicators/psar.js +1 -1
  410. package/esm/indicators/psar.src.js +1 -1
  411. package/esm/indicators/regressions.js +1 -1
  412. package/esm/indicators/regressions.src.js +1 -1
  413. package/esm/indicators/roc.js +1 -1
  414. package/esm/indicators/roc.src.js +1 -1
  415. package/esm/indicators/rsi.js +1 -1
  416. package/esm/indicators/rsi.src.js +2 -2
  417. package/esm/indicators/slow-stochastic.js +1 -1
  418. package/esm/indicators/slow-stochastic.src.js +1 -1
  419. package/esm/indicators/stochastic.js +1 -1
  420. package/esm/indicators/stochastic.src.js +1 -1
  421. package/esm/indicators/supertrend.js +1 -1
  422. package/esm/indicators/supertrend.src.js +1 -1
  423. package/esm/indicators/tema.js +1 -1
  424. package/esm/indicators/tema.src.js +1 -1
  425. package/esm/indicators/trendline.js +1 -1
  426. package/esm/indicators/trendline.src.js +1 -1
  427. package/esm/indicators/trix.js +1 -1
  428. package/esm/indicators/trix.src.js +1 -1
  429. package/esm/indicators/volume-by-price.js +1 -1
  430. package/esm/indicators/volume-by-price.src.js +1 -1
  431. package/esm/indicators/vwap.js +1 -1
  432. package/esm/indicators/vwap.src.js +1 -1
  433. package/esm/indicators/williams-r.js +1 -1
  434. package/esm/indicators/williams-r.src.js +1 -1
  435. package/esm/indicators/wma.js +1 -1
  436. package/esm/indicators/wma.src.js +1 -1
  437. package/esm/indicators/zigzag.js +1 -1
  438. package/esm/indicators/zigzag.src.js +1 -1
  439. package/esm/modules/accessibility.js +2 -2
  440. package/esm/modules/accessibility.src.js +69 -63
  441. package/esm/modules/annotations-advanced.js +3 -3
  442. package/esm/modules/annotations-advanced.src.js +25 -23
  443. package/esm/modules/annotations.js +3 -3
  444. package/esm/modules/annotations.src.js +21 -19
  445. package/esm/modules/arc-diagram.js +2 -2
  446. package/esm/modules/arc-diagram.src.js +16 -15
  447. package/esm/modules/arrow-symbols.js +1 -1
  448. package/esm/modules/arrow-symbols.src.js +1 -1
  449. package/esm/modules/boost-canvas.js +2 -2
  450. package/esm/modules/boost-canvas.src.js +29 -20
  451. package/esm/modules/boost.js +2 -2
  452. package/esm/modules/boost.src.js +28 -19
  453. package/esm/modules/broken-axis.js +2 -2
  454. package/esm/modules/broken-axis.src.js +6 -5
  455. package/esm/modules/bullet.js +2 -2
  456. package/esm/modules/bullet.src.js +17 -10
  457. package/esm/modules/coloraxis.js +2 -2
  458. package/esm/modules/coloraxis.src.js +18 -11
  459. package/esm/modules/contour.js +1 -1
  460. package/esm/modules/contour.src.js +1 -1
  461. package/esm/modules/current-date-indicator.js +1 -1
  462. package/esm/modules/current-date-indicator.src.js +1 -1
  463. package/esm/modules/cylinder.js +2 -2
  464. package/esm/modules/cylinder.src.js +9 -10
  465. package/esm/modules/data-sorting.js +1 -1
  466. package/esm/modules/data-sorting.src.js +1 -1
  467. package/esm/modules/data-tools.js +2 -2
  468. package/esm/modules/data-tools.src.js +20 -3
  469. package/esm/modules/data.js +1 -1
  470. package/esm/modules/data.src.js +1 -1
  471. package/esm/modules/datagrouping.js +2 -2
  472. package/esm/modules/datagrouping.src.js +6 -5
  473. package/esm/modules/debugger.js +1 -1
  474. package/esm/modules/debugger.src.js +1 -1
  475. package/esm/modules/dependency-wheel.js +1 -1
  476. package/esm/modules/dependency-wheel.src.js +1 -1
  477. package/esm/modules/dotplot.js +2 -2
  478. package/esm/modules/dotplot.src.js +3 -2
  479. package/esm/modules/drag-panes.js +1 -1
  480. package/esm/modules/drag-panes.src.js +1 -1
  481. package/esm/modules/draggable-points.js +2 -2
  482. package/esm/modules/draggable-points.src.js +2 -3
  483. package/esm/modules/drilldown.js +2 -2
  484. package/esm/modules/drilldown.src.js +5 -4
  485. package/esm/modules/dumbbell.js +2 -2
  486. package/esm/modules/dumbbell.src.js +37 -9
  487. package/esm/modules/export-data.js +2 -2
  488. package/esm/modules/export-data.src.js +17 -16
  489. package/esm/modules/exporting.js +2 -2
  490. package/esm/modules/exporting.src.js +7 -7
  491. package/esm/modules/flowmap.js +2 -2
  492. package/esm/modules/flowmap.src.js +21 -11
  493. package/esm/modules/full-screen.js +1 -1
  494. package/esm/modules/full-screen.src.js +1 -1
  495. package/esm/modules/funnel.js +2 -2
  496. package/esm/modules/funnel.src.js +2 -2
  497. package/esm/modules/funnel3d.js +2 -2
  498. package/esm/modules/funnel3d.src.js +14 -13
  499. package/esm/modules/gantt.js +2 -2
  500. package/esm/modules/gantt.src.js +93 -76
  501. package/esm/modules/geoheatmap.js +2 -2
  502. package/esm/modules/geoheatmap.src.js +8 -8
  503. package/esm/modules/grid-axis.js +2 -2
  504. package/esm/modules/grid-axis.src.js +4 -4
  505. package/esm/modules/heatmap.js +2 -2
  506. package/esm/modules/heatmap.src.js +22 -22
  507. package/esm/modules/heikinashi.js +1 -1
  508. package/esm/modules/heikinashi.src.js +1 -1
  509. package/esm/modules/histogram-bellcurve.js +1 -1
  510. package/esm/modules/histogram-bellcurve.src.js +15 -3
  511. package/esm/modules/hollowcandlestick.js +1 -1
  512. package/esm/modules/hollowcandlestick.src.js +1 -1
  513. package/esm/modules/item-series.js +2 -2
  514. package/esm/modules/item-series.src.js +18 -6
  515. package/esm/modules/lollipop.js +1 -1
  516. package/esm/modules/lollipop.src.js +1 -1
  517. package/esm/modules/map.js +2 -2
  518. package/esm/modules/map.src.js +65 -57
  519. package/esm/modules/marker-clusters.js +1 -1
  520. package/esm/modules/marker-clusters.src.js +1 -1
  521. package/esm/modules/mouse-wheel-zoom.js +2 -2
  522. package/esm/modules/mouse-wheel-zoom.src.js +3 -3
  523. package/esm/modules/navigator.js +2 -2
  524. package/esm/modules/navigator.src.js +47 -45
  525. package/esm/modules/networkgraph.js +2 -2
  526. package/esm/modules/networkgraph.src.js +31 -21
  527. package/esm/modules/no-data-to-display.js +1 -1
  528. package/esm/modules/no-data-to-display.src.js +1 -1
  529. package/esm/modules/non-cartesian-zoom.js +1 -1
  530. package/esm/modules/non-cartesian-zoom.src.js +1 -1
  531. package/esm/modules/offline-exporting.js +1 -1
  532. package/esm/modules/offline-exporting.src.js +1 -1
  533. package/esm/modules/organization.js +2 -2
  534. package/esm/modules/organization.src.js +3 -2
  535. package/esm/modules/parallel-coordinates.js +2 -2
  536. package/esm/modules/parallel-coordinates.src.js +2 -2
  537. package/esm/modules/pareto.js +1 -1
  538. package/esm/modules/pareto.src.js +1 -1
  539. package/esm/modules/pathfinder.js +2 -2
  540. package/esm/modules/pathfinder.src.js +7 -6
  541. package/esm/modules/pattern-fill.js +2 -2
  542. package/esm/modules/pattern-fill.src.js +7 -5
  543. package/esm/modules/pictorial.js +2 -2
  544. package/esm/modules/pictorial.src.js +10 -6
  545. package/esm/modules/pointandfigure.js +1 -1
  546. package/esm/modules/pointandfigure.src.js +1 -1
  547. package/esm/modules/price-indicator.js +2 -2
  548. package/esm/modules/price-indicator.src.js +5 -4
  549. package/esm/modules/pyramid3d.js +1 -1
  550. package/esm/modules/pyramid3d.src.js +1 -1
  551. package/esm/modules/renko.js +1 -1
  552. package/esm/modules/renko.src.js +1 -1
  553. package/esm/modules/sankey.js +2 -2
  554. package/esm/modules/sankey.src.js +34 -20
  555. package/esm/modules/series-label.js +2 -2
  556. package/esm/modules/series-label.src.js +7 -7
  557. package/esm/modules/series-on-point.js +1 -1
  558. package/esm/modules/series-on-point.src.js +1 -1
  559. package/esm/modules/solid-gauge.js +2 -2
  560. package/esm/modules/solid-gauge.src.js +2 -2
  561. package/esm/modules/sonification.js +2 -2
  562. package/esm/modules/sonification.src.js +19 -19
  563. package/esm/modules/static-scale.js +1 -1
  564. package/esm/modules/static-scale.src.js +1 -1
  565. package/esm/modules/stock-tools.js +3 -3
  566. package/esm/modules/stock-tools.src.js +15 -10
  567. package/esm/modules/stock.js +2 -2
  568. package/esm/modules/stock.src.js +90 -76
  569. package/esm/modules/streamgraph.js +1 -1
  570. package/esm/modules/streamgraph.src.js +1 -1
  571. package/esm/modules/sunburst.js +2 -2
  572. package/esm/modules/sunburst.src.js +41 -26
  573. package/esm/modules/textpath.js +1 -1
  574. package/esm/modules/textpath.src.js +1 -1
  575. package/esm/modules/tiledwebmap.js +2 -2
  576. package/esm/modules/tiledwebmap.src.js +8 -6
  577. package/esm/modules/tilemap.js +2 -2
  578. package/esm/modules/tilemap.src.js +3 -3
  579. package/esm/modules/timeline.js +2 -2
  580. package/esm/modules/timeline.src.js +5 -4
  581. package/esm/modules/treegraph.js +2 -2
  582. package/esm/modules/treegraph.src.js +17 -8
  583. package/esm/modules/treegrid.js +2 -2
  584. package/esm/modules/treegrid.src.js +28 -18
  585. package/esm/modules/treemap.js +2 -2
  586. package/esm/modules/treemap.src.js +35 -22
  587. package/esm/modules/variable-pie.js +2 -2
  588. package/esm/modules/variable-pie.src.js +6 -4
  589. package/esm/modules/variwide.js +2 -2
  590. package/esm/modules/variwide.src.js +2 -2
  591. package/esm/modules/vector.js +1 -1
  592. package/esm/modules/vector.src.js +1 -1
  593. package/esm/modules/venn.js +1 -1
  594. package/esm/modules/venn.src.js +1 -1
  595. package/esm/modules/windbarb.js +2 -2
  596. package/esm/modules/windbarb.src.js +2 -2
  597. package/esm/modules/wordcloud.js +1 -1
  598. package/esm/modules/wordcloud.src.js +1 -1
  599. package/esm/modules/xrange.js +1 -1
  600. package/esm/modules/xrange.src.js +1 -1
  601. package/esm/standalone-navigator.js +4 -4
  602. package/esm/standalone-navigator.src.js +355 -249
  603. package/esm/themes/adaptive.js +1 -1
  604. package/esm/themes/adaptive.src.js +1 -1
  605. package/esm/themes/avocado.js +1 -1
  606. package/esm/themes/avocado.src.js +1 -1
  607. package/esm/themes/dark-unica.js +1 -1
  608. package/esm/themes/dark-unica.src.js +1 -1
  609. package/esm/themes/grid-light.js +1 -1
  610. package/esm/themes/grid-light.src.js +1 -1
  611. package/esm/themes/high-contrast.js +1 -1
  612. package/esm/themes/high-contrast.src.js +1 -1
  613. package/esm/themes/sand-signika.js +1 -1
  614. package/esm/themes/sand-signika.src.js +1 -1
  615. package/esm/themes/sunset.js +1 -1
  616. package/esm/themes/sunset.src.js +1 -1
  617. package/highcharts-3d.js +2 -2
  618. package/highcharts-3d.src.js +40 -32
  619. package/highcharts-autoload.d.ts +8 -2
  620. package/highcharts-autoload.js +4 -4
  621. package/highcharts-autoload.src.d.ts +8 -2
  622. package/highcharts-autoload.src.js +313 -208
  623. package/highcharts-gantt.js +4 -4
  624. package/highcharts-gantt.src.js +404 -283
  625. package/highcharts-more.js +2 -2
  626. package/highcharts-more.src.js +90 -56
  627. package/highcharts.d.ts +61 -4
  628. package/highcharts.js +4 -4
  629. package/highcharts.src.d.ts +61 -4
  630. package/highcharts.src.js +312 -207
  631. package/highmaps.js +4 -4
  632. package/highmaps.src.js +390 -272
  633. package/highstock.js +4 -4
  634. package/highstock.src.js +413 -293
  635. package/i18n/fr-FR.js +1 -1
  636. package/i18n/fr-FR.src.js +1 -1
  637. package/i18n/nb-NO.js +1 -1
  638. package/i18n/nb-NO.src.js +1 -1
  639. package/i18n/zh-CN.js +1 -1
  640. package/i18n/zh-CN.src.js +1 -1
  641. package/indicators/acceleration-bands.js +1 -1
  642. package/indicators/acceleration-bands.src.js +1 -1
  643. package/indicators/accumulation-distribution.js +1 -1
  644. package/indicators/accumulation-distribution.src.js +1 -1
  645. package/indicators/ao.js +1 -1
  646. package/indicators/ao.src.js +1 -1
  647. package/indicators/apo.js +1 -1
  648. package/indicators/apo.src.js +1 -1
  649. package/indicators/aroon-oscillator.js +1 -1
  650. package/indicators/aroon-oscillator.src.js +1 -1
  651. package/indicators/aroon.js +2 -2
  652. package/indicators/aroon.src.js +3 -3
  653. package/indicators/atr.js +1 -1
  654. package/indicators/atr.src.js +1 -1
  655. package/indicators/bollinger-bands.js +1 -1
  656. package/indicators/bollinger-bands.src.js +1 -1
  657. package/indicators/cci.js +1 -1
  658. package/indicators/cci.src.js +1 -1
  659. package/indicators/chaikin.js +1 -1
  660. package/indicators/chaikin.src.js +1 -1
  661. package/indicators/cmf.js +1 -1
  662. package/indicators/cmf.src.js +1 -1
  663. package/indicators/cmo.js +1 -1
  664. package/indicators/cmo.src.js +1 -1
  665. package/indicators/dema.js +1 -1
  666. package/indicators/dema.src.js +1 -1
  667. package/indicators/disparity-index.js +1 -1
  668. package/indicators/disparity-index.src.js +1 -1
  669. package/indicators/dmi.js +1 -1
  670. package/indicators/dmi.src.js +1 -1
  671. package/indicators/dpo.js +2 -2
  672. package/indicators/dpo.src.js +4 -3
  673. package/indicators/ichimoku-kinko-hyo.js +1 -1
  674. package/indicators/ichimoku-kinko-hyo.src.js +1 -1
  675. package/indicators/indicators-all.js +2 -2
  676. package/indicators/indicators-all.src.js +8 -7
  677. package/indicators/indicators.js +2 -2
  678. package/indicators/indicators.src.js +2 -2
  679. package/indicators/keltner-channels.js +1 -1
  680. package/indicators/keltner-channels.src.js +1 -1
  681. package/indicators/klinger.js +1 -1
  682. package/indicators/klinger.src.js +1 -1
  683. package/indicators/macd.js +1 -1
  684. package/indicators/macd.src.js +1 -1
  685. package/indicators/mfi.js +1 -1
  686. package/indicators/mfi.src.js +1 -1
  687. package/indicators/momentum.js +1 -1
  688. package/indicators/momentum.src.js +1 -1
  689. package/indicators/natr.js +1 -1
  690. package/indicators/natr.src.js +1 -1
  691. package/indicators/obv.js +1 -1
  692. package/indicators/obv.src.js +1 -1
  693. package/indicators/pivot-points.js +1 -1
  694. package/indicators/pivot-points.src.js +1 -1
  695. package/indicators/ppo.js +1 -1
  696. package/indicators/ppo.src.js +1 -1
  697. package/indicators/price-channel.js +1 -1
  698. package/indicators/price-channel.src.js +1 -1
  699. package/indicators/price-envelopes.js +1 -1
  700. package/indicators/price-envelopes.src.js +1 -1
  701. package/indicators/psar.js +1 -1
  702. package/indicators/psar.src.js +1 -1
  703. package/indicators/regressions.js +1 -1
  704. package/indicators/regressions.src.js +1 -1
  705. package/indicators/roc.js +1 -1
  706. package/indicators/roc.src.js +1 -1
  707. package/indicators/rsi.js +1 -1
  708. package/indicators/rsi.src.js +2 -2
  709. package/indicators/slow-stochastic.js +1 -1
  710. package/indicators/slow-stochastic.src.js +1 -1
  711. package/indicators/stochastic.js +1 -1
  712. package/indicators/stochastic.src.js +1 -1
  713. package/indicators/supertrend.js +1 -1
  714. package/indicators/supertrend.src.js +1 -1
  715. package/indicators/tema.js +1 -1
  716. package/indicators/tema.src.js +1 -1
  717. package/indicators/trendline.js +1 -1
  718. package/indicators/trendline.src.js +1 -1
  719. package/indicators/trix.js +1 -1
  720. package/indicators/trix.src.js +1 -1
  721. package/indicators/volume-by-price.js +1 -1
  722. package/indicators/volume-by-price.src.js +1 -1
  723. package/indicators/vwap.js +1 -1
  724. package/indicators/vwap.src.js +1 -1
  725. package/indicators/williams-r.js +1 -1
  726. package/indicators/williams-r.src.js +1 -1
  727. package/indicators/wma.js +1 -1
  728. package/indicators/wma.src.js +1 -1
  729. package/indicators/zigzag.js +1 -1
  730. package/indicators/zigzag.src.js +1 -1
  731. package/modules/accessibility.js +2 -2
  732. package/modules/accessibility.src.js +69 -63
  733. package/modules/annotations-advanced.js +3 -3
  734. package/modules/annotations-advanced.src.js +25 -23
  735. package/modules/annotations.js +3 -3
  736. package/modules/annotations.src.js +21 -19
  737. package/modules/arc-diagram.js +2 -2
  738. package/modules/arc-diagram.src.js +16 -15
  739. package/modules/arrow-symbols.js +1 -1
  740. package/modules/arrow-symbols.src.js +1 -1
  741. package/modules/boost-canvas.js +2 -2
  742. package/modules/boost-canvas.src.js +29 -20
  743. package/modules/boost.js +2 -2
  744. package/modules/boost.src.js +28 -19
  745. package/modules/broken-axis.js +2 -2
  746. package/modules/broken-axis.src.js +6 -5
  747. package/modules/bullet.js +2 -2
  748. package/modules/bullet.src.js +17 -10
  749. package/modules/coloraxis.js +2 -2
  750. package/modules/coloraxis.src.js +18 -11
  751. package/modules/contour.js +4 -4
  752. package/modules/contour.src.js +19 -12
  753. package/modules/current-date-indicator.js +1 -1
  754. package/modules/current-date-indicator.src.js +1 -1
  755. package/modules/cylinder.js +2 -2
  756. package/modules/cylinder.src.js +9 -10
  757. package/modules/data-sorting.js +1 -1
  758. package/modules/data-sorting.src.js +1 -1
  759. package/modules/data-tools.js +2 -2
  760. package/modules/data-tools.src.js +20 -3
  761. package/modules/data.js +1 -1
  762. package/modules/data.src.js +1 -1
  763. package/modules/datagrouping.js +2 -2
  764. package/modules/datagrouping.src.js +6 -5
  765. package/modules/debugger.js +1 -1
  766. package/modules/debugger.src.js +1 -1
  767. package/modules/dependency-wheel.js +1 -1
  768. package/modules/dependency-wheel.src.js +1 -1
  769. package/modules/dotplot.js +2 -2
  770. package/modules/dotplot.src.js +3 -2
  771. package/modules/drag-panes.js +1 -1
  772. package/modules/drag-panes.src.js +1 -1
  773. package/modules/draggable-points.js +2 -2
  774. package/modules/draggable-points.src.js +2 -3
  775. package/modules/drilldown.js +2 -2
  776. package/modules/drilldown.src.js +5 -4
  777. package/modules/dumbbell.js +2 -2
  778. package/modules/dumbbell.src.js +37 -9
  779. package/modules/export-data.js +2 -2
  780. package/modules/export-data.src.js +17 -16
  781. package/modules/exporting.js +2 -2
  782. package/modules/exporting.src.js +7 -7
  783. package/modules/flowmap.js +2 -2
  784. package/modules/flowmap.src.js +21 -11
  785. package/modules/full-screen.js +1 -1
  786. package/modules/full-screen.src.js +1 -1
  787. package/modules/funnel.js +2 -2
  788. package/modules/funnel.src.js +2 -2
  789. package/modules/funnel3d.js +2 -2
  790. package/modules/funnel3d.src.js +14 -13
  791. package/modules/gantt.js +6 -6
  792. package/modules/gantt.src.js +96 -79
  793. package/modules/geoheatmap.d.ts +0 -12
  794. package/modules/geoheatmap.js +2 -2
  795. package/modules/geoheatmap.src.d.ts +0 -12
  796. package/modules/geoheatmap.src.js +8 -8
  797. package/modules/grid-axis.js +2 -2
  798. package/modules/grid-axis.src.js +4 -4
  799. package/modules/heatmap.d.ts +0 -12
  800. package/modules/heatmap.js +4 -4
  801. package/modules/heatmap.src.d.ts +0 -12
  802. package/modules/heatmap.src.js +40 -33
  803. package/modules/heikinashi.js +1 -1
  804. package/modules/heikinashi.src.js +1 -1
  805. package/modules/histogram-bellcurve.js +1 -1
  806. package/modules/histogram-bellcurve.src.js +15 -3
  807. package/modules/hollowcandlestick.js +1 -1
  808. package/modules/hollowcandlestick.src.js +1 -1
  809. package/modules/item-series.js +2 -2
  810. package/modules/item-series.src.js +18 -6
  811. package/modules/lollipop.js +1 -1
  812. package/modules/lollipop.src.js +1 -1
  813. package/modules/map.d.ts +0 -12
  814. package/modules/map.js +4 -4
  815. package/modules/map.src.d.ts +0 -12
  816. package/modules/map.src.js +83 -68
  817. package/modules/marker-clusters.js +1 -1
  818. package/modules/marker-clusters.src.js +1 -1
  819. package/modules/mouse-wheel-zoom.js +2 -2
  820. package/modules/mouse-wheel-zoom.src.js +3 -3
  821. package/modules/navigator.js +2 -2
  822. package/modules/navigator.src.js +47 -45
  823. package/modules/networkgraph.js +2 -2
  824. package/modules/networkgraph.src.js +31 -21
  825. package/modules/no-data-to-display.js +1 -1
  826. package/modules/no-data-to-display.src.js +1 -1
  827. package/modules/non-cartesian-zoom.js +1 -1
  828. package/modules/non-cartesian-zoom.src.js +1 -1
  829. package/modules/offline-exporting.js +1 -1
  830. package/modules/offline-exporting.src.js +1 -1
  831. package/modules/organization.js +2 -2
  832. package/modules/organization.src.js +3 -2
  833. package/modules/parallel-coordinates.js +2 -2
  834. package/modules/parallel-coordinates.src.js +2 -2
  835. package/modules/pareto.js +1 -1
  836. package/modules/pareto.src.js +1 -1
  837. package/modules/pathfinder.js +2 -2
  838. package/modules/pathfinder.src.js +7 -6
  839. package/modules/pattern-fill.js +2 -2
  840. package/modules/pattern-fill.src.js +7 -5
  841. package/modules/pictorial.js +2 -2
  842. package/modules/pictorial.src.js +10 -6
  843. package/modules/pointandfigure.js +1 -1
  844. package/modules/pointandfigure.src.js +1 -1
  845. package/modules/price-indicator.js +2 -2
  846. package/modules/price-indicator.src.js +5 -4
  847. package/modules/pyramid3d.js +1 -1
  848. package/modules/pyramid3d.src.js +1 -1
  849. package/modules/renko.js +1 -1
  850. package/modules/renko.src.js +1 -1
  851. package/modules/sankey.js +2 -2
  852. package/modules/sankey.src.js +34 -20
  853. package/modules/series-label.js +2 -2
  854. package/modules/series-label.src.js +7 -7
  855. package/modules/series-on-point.js +1 -1
  856. package/modules/series-on-point.src.js +1 -1
  857. package/modules/solid-gauge.js +2 -2
  858. package/modules/solid-gauge.src.js +2 -2
  859. package/modules/sonification.js +2 -2
  860. package/modules/sonification.src.js +19 -19
  861. package/modules/static-scale.js +1 -1
  862. package/modules/static-scale.src.js +1 -1
  863. package/modules/stock-tools.js +3 -3
  864. package/modules/stock-tools.src.js +15 -10
  865. package/modules/stock.js +6 -6
  866. package/modules/stock.src.js +105 -89
  867. package/modules/streamgraph.js +1 -1
  868. package/modules/streamgraph.src.js +1 -1
  869. package/modules/sunburst.js +2 -2
  870. package/modules/sunburst.src.js +41 -26
  871. package/modules/textpath.js +1 -1
  872. package/modules/textpath.src.js +1 -1
  873. package/modules/tiledwebmap.js +2 -2
  874. package/modules/tiledwebmap.src.js +8 -6
  875. package/modules/tilemap.js +2 -2
  876. package/modules/tilemap.src.js +3 -3
  877. package/modules/timeline.js +2 -2
  878. package/modules/timeline.src.js +5 -4
  879. package/modules/treegraph.js +2 -2
  880. package/modules/treegraph.src.js +17 -8
  881. package/modules/treegrid.js +2 -2
  882. package/modules/treegrid.src.js +28 -18
  883. package/modules/treemap.js +2 -2
  884. package/modules/treemap.src.js +35 -22
  885. package/modules/variable-pie.js +2 -2
  886. package/modules/variable-pie.src.js +6 -4
  887. package/modules/variwide.js +2 -2
  888. package/modules/variwide.src.js +2 -2
  889. package/modules/vector.js +1 -1
  890. package/modules/vector.src.js +1 -1
  891. package/modules/venn.js +1 -1
  892. package/modules/venn.src.js +1 -1
  893. package/modules/windbarb.js +2 -2
  894. package/modules/windbarb.src.js +2 -2
  895. package/modules/wordcloud.js +1 -1
  896. package/modules/wordcloud.src.js +1 -1
  897. package/modules/xrange.js +1 -1
  898. package/modules/xrange.src.js +1 -1
  899. package/package.json +2 -3
  900. package/standalone-navigator.js +4 -4
  901. package/standalone-navigator.src.js +355 -249
  902. package/themes/adaptive.js +1 -1
  903. package/themes/adaptive.src.js +1 -1
  904. package/themes/avocado.js +1 -1
  905. package/themes/avocado.src.js +1 -1
  906. package/themes/dark-unica.js +1 -1
  907. package/themes/dark-unica.src.js +1 -1
  908. package/themes/grid-light.js +1 -1
  909. package/themes/grid-light.src.js +1 -1
  910. package/themes/high-contrast.js +1 -1
  911. package/themes/high-contrast.src.js +1 -1
  912. package/themes/sand-signika.js +1 -1
  913. package/themes/sand-signika.src.js +1 -1
  914. package/themes/sunset.js +1 -1
  915. package/themes/sunset.src.js +1 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Highcharts JS v13.0.1 (2026-08-17)
2
+ * Highcharts JS v13.0.2 (2026-08-27)
3
3
  * @module highcharts/modules/data-tools
4
4
  * @requires highcharts
5
5
  *
@@ -9,4 +9,4 @@
9
9
  *
10
10
  * A commercial license may be required depending on use,
11
11
  * see www.highcharts.com/license
12
- */import*as e from"../highcharts.js";let t={};t.n=e=>{let r=e&&e.__esModule?()=>e.default:()=>e;return t.d(r,{a:r}),r},t.d=(e,r)=>{if(Array.isArray(r))for(var s=0;s<r.length;){var i=r[s++],n=r[s++];t.o(e,i)?0===n&&s++:0===n?Object.defineProperty(e,i,{enumerable:!0,value:r[s++]}):Object.defineProperty(e,i,{enumerable:!0,get:n})}else for(var i in r)t.o(r,i)&&!t.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:r[i]})},t.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);let r=e.default;var s=t.n(r);class i{static registerType(e,t){return!!e&&!i.types[e]&&!!(i.types[e]=t)}benchmark(e,t){let s=[],i=this,n=()=>{i.modifyTable(e),i.emit({type:"afterBenchmarkIteration"})},{iterations:o}=(0,r.merge)({iterations:1},t);i.on("afterBenchmarkIteration",()=>{s.length===o?i.emit({type:"afterBenchmark",results:s}):n()});let l={startTime:0,endTime:0};return i.on("modify",()=>{l.startTime=window.performance.now()}),i.on("afterModify",()=>{l.endTime=window.performance.now(),s.push(l.endTime-l.startTime)}),n(),s}emit(e){(0,r.fireEvent)(this,e.type,e)}modify(e,t){let r=this;return new Promise((s,i)=>{e.modified||(e.modified=e.clone(!1,t));try{s(r.modifyTable(e,t))}catch(s){r.emit({type:"error",detail:t,table:e}),i(s instanceof Error?s:Error(""+s))}})}on(e,t){return(0,r.addEvent)(this,e,t)}}i.types={};let n=i,o={convertToNumber:function(e,t){switch(typeof e){case"boolean":return+!!e;case"number":return isNaN(e)&&!t?null:e;default:return isNaN(e=parseFloat(`${e??""}`))&&!t?null:e}},setLength:function(e,t,r){return Array.isArray(e)?(e.length=t,e):e[r?"subarray":"slice"](0,t)},splice:function(e,t,r,s,i=[]){if(Array.isArray(e))return Array.isArray(i)||(i=Array.from(i)),{removed:e.splice(t,r,...i),array:e};let n=Object.getPrototypeOf(e).constructor,o=e[s?"subarray":"slice"](t,t+r),l=new n(e.length-r+i.length);return l.set(e.subarray(0,t),0),l.set(i,t),l.set(e.subarray(t+r),t+i.length),{removed:o,array:l}}},{setLength:l,splice:a}=o,u=class{constructor(e={}){this.isDataTable=!0,this.autoId=!e.id,this.columns={},this.id=e.id||(0,r.uniqueKey)(),this.rowCount=0,this.versionTag=(0,r.uniqueKey)();let t=0;(0,r.objectEach)(e.columns||{},(e,r)=>{this.columns[r]=e.slice(),t=Math.max(t,e.length)}),this.applyRowCount(t)}applyRowCount(e){this.rowCount=e,(0,r.objectEach)(this.columns,(t,r)=>{t.length!==e&&(this.columns[r]=l(t,e))})}deleteRows(e,t=1){if(t>0&&e<this.rowCount){let s=0;(0,r.objectEach)(this.columns,(r,i)=>{this.columns[i]=a(r,e,t).array,s=r.length}),this.rowCount=s}(0,r.fireEvent)(this,"afterDeleteRows",{rowIndex:e,rowCount:t}),this.versionTag=(0,r.uniqueKey)()}getColumn(e,t){return this.columns[e]}getColumns(e,t){return(e||Object.keys(this.columns)).reduce((e,t)=>(e[t]=this.columns[t],e),{})}getRowObject(e,t){let r={},s=this.columns;for(let i of(t??(t=Object.keys(this.columns)),t))r[i]=s[i]?.[e];return r}setColumn(e,t=[],r=0,s){this.setColumns({[e]:t},r,s)}setColumns(e,t,s){let i=this.rowCount;(0,r.objectEach)(e,(e,t)=>{this.columns[t]=e.slice(),i=e.length}),this.applyRowCount(i),s?.silent||((0,r.fireEvent)(this,"afterSetColumns"),this.versionTag=(0,r.uniqueKey)())}setRow(e,t=this.rowCount,s,i){var n;let{columns:o}=this,l=s?this.rowCount+1:t+1,u=Object.keys(e);if(i?.addColumns!==!1)for(let e=0,t=u.length;e<t;e++)o[n=u[e]]||(o[n]=Array(this.rowCount));(0,r.objectEach)(o,(r,i)=>{r&&(s?r=a(r,t,0,!0,[e[i]]).array:r[t]=i in e?e[i]:r[t],o[i]=r)}),this.applyRowCount(Math.max(l,this.rowCount)),i?.silent||((0,r.fireEvent)(this,"afterSetRows",{rowIndex:t}),this.versionTag=(0,r.uniqueKey)())}getModified(){return this.modified||this}},{splice:h,setLength:c}=o;class d extends u{constructor(e={}){super(e),this.metadata=e.metadata}clone(e,t){let r={};this.emit({type:"cloneTable",detail:t}),e||(r.columns=this.columns),this.autoId||(r.id=this.id);let s=new d(r);return e||(s.versionTag=this.versionTag,s.originalRowIndexes=this.originalRowIndexes,s.localRowIndexes=this.localRowIndexes),s.metadata={...this.metadata},this.emit({type:"afterCloneTable",detail:t,tableClone:s}),s}deleteColumns(e,t){let r=this.columns,s={},i={},n=this.modifier,o=this.rowCount;if((e=e||Object.keys(r)).length){this.emit({type:"deleteColumns",columnIds:e,detail:t});for(let t=0,n=e.length,l,a;t<n;++t)(l=r[a=e[t]])&&(s[a]=l,i[a]=Array(o)),delete r[a];return Object.keys(r).length||(this.rowCount=0,this.deleteRowIndexReferences()),n&&n.modifyTable(this),this.emit({type:"afterDeleteColumns",columns:s,columnIds:e,detail:t}),s}}deleteRowIndexReferences(){delete this.originalRowIndexes,delete this.localRowIndexes}deleteRows(e,t=1,s){let i,n,{columns:o,modifier:l}=this,a=[];if((0,r.defined)(e)?Array.isArray(e)?n=(i=e.filter((e,t,r)=>e>=0&&e<this.rowCount&&r.indexOf(e)===t).sort((e,t)=>t-e)).length:(i=[e],n=t):(i=[0],n=this.rowCount),this.emit({type:"deleteRows",detail:s,rowCount:n,rowIndex:e??0}),n>0){let e=Object.keys(o);for(let t=0;t<e.length;++t){let r,s=e[t],l=o[s];if(1===i.length&&n>1){let e=h(l,i[0],n);r=e.removed,o[s]=e.array}else{for(let e of(r=[],i))r.push(l[e]),h(l,e,1);r.reverse()}t||(this.rowCount=l.length);for(let e=0,s=r.length;e<s;++e)a[e]=a[e]||[],a[e][t]=r[e]}}return l&&l.modifyTable(this),this.emit({type:"afterDeleteRows",detail:s,rowCount:n,rowIndex:e??0,rows:a}),a}emit(e){["afterDeleteColumns","afterDeleteRows","afterSetCell","afterSetColumns","afterSetRows"].includes(e.type)&&(this.versionTag=(0,r.uniqueKey)()),(0,r.fireEvent)(this,e.type,e)}getCell(e,t){let r=this.columns[e];if(r)return r[t]}getColumn(e,t){return this.getColumns([e],t)[e]}getColumnIds(){return Object.keys(this.columns)}getColumns(e,t,r){let s=this.columns,i={};e=e||Object.keys(s);for(let n=0,o=e.length,l,a;n<o;++n)(l=s[a=e[n]])&&(t?i[a]=l:r&&!Array.isArray(l)?i[a]=Array.from(l):i[a]=l.slice());return i}getLocalRowIndex(e){let{localRowIndexes:t}=this;return t?t[e]:e}getModifier(){return this.modifier}getOriginalRowIndex(e){let{originalRowIndexes:t}=this;return t?t[e]:e}getRow(e,t){return this.getRows(e,1,t)[0]}getRowCount(){return this.rowCount}getRowIndexBy(e,t,s){let i=this.columns[e];if(i){let e=-1;if(Array.isArray(i)?e=i.indexOf(t,s):(0,r.isNumber)(t)&&(e=i.indexOf(t,s)),-1!==e)return e}}getRowObject(e,t){return this.getRowObjects(e,1,t)[0]}getRowObjects(e=0,t=this.rowCount-e,r){let s=this.columns,i=Array(t);r=r||Object.keys(s);for(let n=e,o=0,l=Math.min(this.rowCount,e+t),a,u;n<l;++n,++o)for(let e of(u=i[o]={},r))a=s[e],u[e]=a?a[n]:void 0;return i}getRows(e=0,t=this.rowCount-e,r){let s=this.columns,i=Array(t);r=r||Object.keys(s);for(let n=e,o=0,l=Math.min(this.rowCount,e+t),a,u;n<l;++n,++o)for(let e of(u=i[o]=[],r))a=s[e],u.push(a?a[n]:void 0);return i}getVersionTag(){return this.versionTag}hasColumns(e){let t=this.columns;for(let r=0,s=e.length;r<s;++r)if(!t[e[r]])return!1;return!0}hasRowWith(e,t){let s=this.columns[e];return Array.isArray(s)?-1!==s.indexOf(t):!!((0,r.defined)(t)&&Number.isFinite(t))&&-1!==s.indexOf(+t)}on(e,t){return(0,r.addEvent)(this,e,t)}changeColumnId(e,t){let r=this.columns;return!!r[e]&&(e!==t&&(r[t]=r[e],delete r[e]),!0)}setCell(e,t,r,s){let i=this.columns,n=this.modifier,o=i[e];o&&o[t]===r||(this.emit({type:"setCell",cellValue:r,columnId:e,detail:s,rowIndex:t}),o||(o=i[e]=Array(this.rowCount)),t>=this.rowCount&&(this.rowCount=t+1),o[t]=r,n&&n.modifyTable(this),this.emit({type:"afterSetCell",cellValue:r,columnId:e,detail:s,rowIndex:t}))}setColumns(e,t,s,i){let n=this.columns,o=this.modifier,l=Object.keys(e),a=this.rowCount;if(this.emit({type:"setColumns",columns:e,columnIds:l,detail:s,rowIndex:t}),(0,r.defined)(t)||i){for(let r=0,s=l.length,o,u,h,c;r<s;++r){o=e[h=l[r]],c=Object.getPrototypeOf((u=n[h])&&i?u:o).constructor,u?c===Array?Array.isArray(u)||(u=Array.from(u)):u.length<a&&(u=new c(a)).set(n[h]):u=new c(a),n[h]=u;for(let e=t||0,r=o.length;e<r;++e)u[e]=o[e];a=Math.max(a,o.length)}this.applyRowCount(a)}else super.setColumns(e,t,(0,r.extend)(s,{silent:!0}));o&&o.modifyTable(this),this.emit({type:"afterSetColumns",columns:e,columnIds:l,detail:s,rowIndex:t})}setModifier(e,t){let r=this;return r.emit({type:"setModifier",detail:t,modifier:e,modified:r.getModified()}),r.modifier=e,(e?e.modify(r):Promise.resolve(r)).then(r=>(r.emit({type:"afterSetModifier",detail:t,modifier:e,modified:r.getModified()}),r)).catch(t=>{throw r.emit({type:"setModifierError",error:t,modifier:e,modified:r.getModified()}),t})}setOriginalRowIndexes(e,t=!1){if(this.originalRowIndexes=e,t)return;let s=this.localRowIndexes=[];for(let t=0,i=e.length,n;t<i;++t)n=e[t],(0,r.defined)(n)&&(s[n]=t)}setRow(e,t,r,s){this.setRows([e],t,r,s)}setRows(e,t=this.rowCount,r,s){let i=this.columns,n=Object.keys(i),o=this.modifier,l=e.length;this.emit({type:"setRows",detail:s,rowCount:l,rowIndex:t,rows:e});for(let s=0,o=t,a;s<l;++s,++o)if(0===Object.keys(a=e[s]).length)for(let e=0,t=n.length;e<t;++e){let t=i[n[e]];r?i[n[e]]=h(t,o,0,!0,[null]).array:t[o]=null}else if(Array.isArray(a))for(let e=0,t=n.length;e<t;++e)i[n[e]][o]=a[e];else super.setRow(a,o,r,{silent:!0});let a=r?l+e.length:t+l;if(a>this.rowCount){this.rowCount=a;for(let e=0,t=n.length;e<t;++e){let t=n[e];i[t]=c(i[t],a)}}o&&o.modifyTable(this),this.emit({type:"afterSetRows",detail:s,rowCount:l,rowIndex:t,rows:e})}}class f{static registerType(e,t){return!!e&&!f.types[e]&&!!(f.types[e]=t)}get polling(){return!!this._polling}constructor(e){this.dataTables={},this.loaded=!1,this.metadata=e.metadata||{columns:{}},this.options=e;let t=e?.dataTables,r=0;if(e.options&&console.error("The `DataConnectorOptions.options` property was removed in Dashboards v4.0.0. Check how to upgrade your connector to use the new options structure here: https://api.highcharts.com/dashboards/#interfaces/Data_DataTableOptions.DataTableOptions"),t&&t?.length>0)for(let e=0,s=t.length;e<s;++e){let s=t[e],i=s?.key;this.dataTables[i??r]=new d(s),!i&&r++}else this.dataTables[0]=new d({id:e.id})}getTable(e){return e?this.dataTables[e]:Object.values(this.dataTables)[0]}describeColumn(e,t){let s=this.metadata.columns;s[e]=(0,r.merge)(s[e]||{},t)}describeColumns(e){let t,r=Object.keys(e);for(;"string"==typeof(t=r.pop());)this.describeColumn(t,e[t])}getColumnOrder(){let e=this.metadata.columns,t=Object.keys(e||{});if(t.length)return t.sort((t,s)=>(0,r.pick)(e[t].index,0)-(0,r.pick)(e[s].index,0))}getSortedColumns(){return this.getTable().getColumns(this.getColumnOrder())}setColumnOrder(e){for(let t=0,r=e.length;t<r;++t)this.describeColumn(e[t],{index:t})}async update(e,t=!0){this.emit({type:"beforeUpdate"}),(0,r.merge)(!0,this.options,e);let{options:s}=this;("enablePolling"in e||"dataRefreshRate"in e)&&("enablePolling"in s&&s.enablePolling?(this.stopPolling(),this.startPolling("dataRefreshRate"in s&&"number"==typeof s.dataRefreshRate?1e3*Math.max(s.dataRefreshRate,1):1e3)):this.stopPolling()),t&&await this.load(),this.emit({type:"afterUpdate"})}load(){return this.emit({type:"afterLoad"}),Promise.resolve(this)}async applyTableModifiers(){let e=this.options?.dataTables;for(let[t,r]of Object.entries(this.dataTables)){let s=e?.find(e=>e.key===t)?.dataModifier??this.options?.dataModifier;if(!s)continue;let i=s&&n.types[s.type];await r.setModifier(i?new i(s):void 0)}return this}startPolling(e=1e3){let t=this;this.pollingController=new AbortController,window.clearTimeout(t._polling),t._polling=window.setTimeout(()=>t.load().catch(e=>t.emit({type:"loadError",error:e})).then(()=>{t._polling&&t.startPolling(e)}),e)}stopPolling(){this.polling&&(this?.pollingController?.abort(),window.clearTimeout(this._polling),delete this._polling)}emit(e){(0,r.fireEvent)(this,e.type,e)}on(e,t){return(0,r.addEvent)(this,e,t)}initConverters(e,t,r){let s=0;for(let[i,n]of Object.entries(this.dataTables)){let o=t(i),l=r(o,e);n.deleteColumns(),n.setColumns(l),0===s&&(this.converter=o),s++}}}f.types={};let p=f;function m(e,t){return"string"==typeof e&&(e=e.replace(/^\s+|\s+$/g,""),t&&/^[\d\s]+$/.test(e)&&(e=e.replace(/\s/g,""))),e}let g=function(e,t){let r;if("string"==typeof e)r=t.parseDate(e);else if("number"==typeof e)r=e;else{if(e instanceof Date)return e;r=t.parseDate(""+e)}return new Date(r)},y=function(e,t){if("number"==typeof e)return e;if("boolean"==typeof e)return+!!e;if("string"==typeof e){if(e.indexOf(" ")>-1&&(e=e.replace(/\s+/g,"")),t){if(!t.test(e))return NaN;e=e.replace(t,"$1.$2")}return parseFloat(e)}return e instanceof Date?e.getDate():e?e.getRowCount():NaN},b=function(e){return""+e},w=function(e=[],t){let r={};for(let s=0,i=Math.max(t.length,e.length);s<i;++s)r[t[s]||`${s}`]=e[s]?e[s].slice():[];return r},C=function(e,t){let s="string";if("string"==typeof e){let i=m(`${e}`),n=t.decimalRegExp,o=m(i,!0);n&&(o=n.test(o)?o.replace(n,"$1.$2"):"");let l=parseFloat(o);if(+o===l)e=l;else{let i=t.parseDate(e);s=(0,r.isNumber)(i)?"Date":"string"}}return"number"==typeof e&&(s=e>31536e6?"Date":"number"),s};class R{static registerType(e,t){return!!e&&!R.types[e]&&!!(R.types[e]=t)}constructor(e){this.dateFormats={"YYYY/mm/dd":{regex:/^(\d{4})([\-\.\/])(\d{1,2})\2(\d{1,2})$/,parser:function(e){return e?Date.UTC(+e[1],e[3]-1,+e[4]):NaN}},"dd/mm/YYYY":{regex:/^(\d{1,2})([\-\.\/])(\d{1,2})\2(\d{4})$/,parser:function(e){return e?Date.UTC(+e[4],e[3]-1,+e[1]):NaN},alternative:"mm/dd/YYYY"},"mm/dd/YYYY":{regex:/^(\d{1,2})([\-\.\/])(\d{1,2})\2(\d{4})$/,parser:function(e){return e?Date.UTC(+e[4],e[1]-1,+e[3]):NaN}},"dd/mm/YY":{regex:/^(\d{1,2})([\-\.\/])(\d{1,2})\2(\d{2})$/,parser:function(e){let t=new Date;if(!e)return NaN;let r=+e[4];return r>t.getFullYear()-2e3?r+=1900:r+=2e3,Date.UTC(r,e[3]-1,+e[1])},alternative:"mm/dd/YY"},"mm/dd/YY":{regex:/^(\d{1,2})([\-\.\/])(\d{1,2})\2(\d{2})$/,parser:function(e){return e?Date.UTC(+e[4]+2e3,e[1]-1,+e[3]):NaN}}};let t=(0,r.merge)(R.defaultOptions,e),s=t.decimalPoint;("."===s||","===s)&&(s="."===s?"\\.":",",this.decimalRegExp=RegExp("^(-?[0-9]+)"+s+"([0-9]+)$")),this.options=t}convertByType(e){let t=this;return({number:e=>y(e,t.decimalRegExp),Date:e=>g(e,t),string:b})[C(e,t)].call(t,e)}deduceDateFormat(e,t,r){let s=[],i=[],n="YYYY/mm/dd",o,l=[],a=0,u=!1,h,c;for((!t||t>e.length)&&(t=e.length);a<t;a++)if(void 0!==e[a]&&e[a]&&e[a].length)for(c=0,o=e[a].trim().replace(/[\-\.\/]/g," ").split(" "),l=["","",""];c<o.length;c++)c<l.length&&(h=parseInt(o[c],10))&&(i[c]=!i[c]||i[c]<h?h:i[c],void 0!==s[c]?s[c]!==h&&(s[c]=!1):s[c]=h,h>31?h<100?l[c]="YY":l[c]="YYYY":h>12&&h<=31?(l[c]="dd",u=!0):l[c].length||(l[c]="mm"));if(u){for(c=0;c<s.length;c++)!1!==s[c]?i[c]>12&&"YY"!==l[c]&&"YYYY"!==l[c]&&(l[c]="YY"):i[c]>12&&"mm"===l[c]&&(l[c]="dd");3===l.length&&"dd"===l[1]&&"dd"===l[2]&&(l[2]="YY"),n=l.join("/")}return r&&(this.options.dateFormat=n),n}emit(e){(0,r.fireEvent)(this,e.type,e)}on(e,t){return(0,r.addEvent)(this,e,t)}parseDate(e,t){let r=this.options,s=t||r.dateFormat,i=NaN,n,o=null;if(r.parseDate)i=r.parseDate(e);else{let t=this.dateFormats;if(s){let r=t[s];r||(r=t["YYYY/mm/dd"]),(o=e.match(r.regex))&&(i=r.parser(o))}else for(n in t){let r=t[n];if(o=e.match(r.regex)){s=n,i=r.parser(o);break}}if(!o){let t=Date.parse(e);!isNaN(t)&&(i=t-6e4*new Date(t).getTimezoneOffset(),e.includes("2001")||2001!==new Date(i).getFullYear()||(i=NaN))}}return i}}R.defaultOptions={dateFormat:"",firstRowAsNames:!0},R.types={};let N=R;function T(e,t){if("position"===e.type){for(let r,s=0,i=t.length;s<i;++s)if("position"===(r=t[s]).type&&r.state===e.state&&r.column===e.column&&r.row===e.row)return s}else{let r=JSON.stringify(e.columns);for(let s,i=0,n=t.length;i<n;++i)if("range"===(s=t[i]).type&&s.state===e.state&&s.firstRow===e.firstRow&&s.lastRow===e.lastRow&&JSON.stringify(s.columns)===r)return i}return -1}let O=class{constructor(e={}){this.emittingRegister=[],this.listenerMap={},this.stateMap=e}addListener(e,t,r){let s=this.listenerMap[e]=this.listenerMap[e]||{};return(s[t]=s[t]||[]).push(r),this}buildEmittingTag(e){return("position"===e.cursor.type?[e.table.id,e.cursor.column,e.cursor.row,e.cursor.state,e.cursor.type]:[e.table.id,e.cursor.columns,e.cursor.firstRow,e.cursor.lastRow,e.cursor.state,e.cursor.type]).join("\0")}emitCursor(e,t,r,s){let i=e.id,n=t.state,o=this.listenerMap[i]&&this.listenerMap[i][n];if(o){let n=this.stateMap[i]=this.stateMap[i]??{},l=n[t.state]||[];s&&(l.length||(n[t.state]=l),-1===T(t,l)&&l.push(t));let a={cursor:t,cursors:l,table:e};r&&(a.event=r);let u=this.emittingRegister,h=this.buildEmittingTag(a);if(u.indexOf(h)>=0)return this;try{this.emittingRegister.push(h);for(let e=0,t=o.length;e<t;++e)o[e].call(this,a)}finally{let e=this.emittingRegister.indexOf(h);e>=0&&this.emittingRegister.splice(e,1)}}return this}remitCursor(e,t){let r=this.stateMap[e]&&this.stateMap[e][t.state];if(r){let e=T(t,r);e>=0&&r.splice(e,1)}return this}removeListener(e,t,r){let s=this.listenerMap[e]&&this.listenerMap[e][t];if(s){let e=s.indexOf(r);e>=0&&s.splice(e,1)}return this}};class v{constructor(e){this.options=(0,r.merge)(v.defaultOptions,e),this.connectors={},this.waiting={}}emit(e){(0,r.fireEvent)(this,e.type,e)}getConnector(e){let t=this.connectors[e];if(t?.loaded)return Promise.resolve(t);let r=this.waiting[e];if(!r){r=this.waiting[e]=[];let t=this.getConnectorOptions(e);if(!t)throw Error(`Connector '${e}' not found.`);this.loadConnector(t).then(t=>{delete this.waiting[e];for(let e=0,s=r.length;e<s;++e)r[e][0](t)}).catch(t=>{delete this.waiting[e];for(let e=0,s=r.length;e<s;++e)r[e][1](t)})}return new Promise((e,t)=>{r.push([e,t])})}getConnectorIds(){let e=this.options.connectors,t=[];for(let r=0,s=e.length;r<s;++r)t.push(e[r].id);return t}getConnectorOptions(e){let t=this.options.connectors;for(let r=0,s=t.length;r<s;++r)if(t[r].id===e)return t[r]}isNewConnector(e){return!this.connectors[e]}loadConnector(e){return new Promise((t,r)=>{this.emit({type:"load",options:e});let s=p.types[e.type];if(!s)throw Error(`Connector type not found. (${e.type})`);let i=this.connectors[e.id]=new s(e);i.load().then(({converter:r})=>{i.converter=r,i.loaded=!0,this.emit({type:"afterLoad",options:e}),t(i)}).catch(r)})}cancelPendingRequests(){let{connectors:e}=this;for(let t of Object.keys(e))e[t].stopPolling()}on(e,t){return(0,r.addEvent)(this,e,t)}async setConnectorOptions(e,t){let r=this.options.connectors,s=this.connectors;this.emit({type:"setConnectorOptions",options:e});for(let t=0,s=r.length;t<s;++t)if(r[t].id===e.id){r.splice(t,1);break}let i=s[e.id];i&&(t?await i.update(e,!0):(i.stopPolling(),i=void 0,delete s[e.id])),i||r.push(e),this.emit({type:"afterSetConnectorOptions",options:e})}}v.defaultOptions={connectors:[]};let A=/^(?:FALSE|TRUE)/,M=/^[+\-]?\d+(?:\.\d+)?(?:e[+\-]\d+)?/,E=/^[+\-]?\d+(?:,\d+)?(?:e[+\-]\d+)?/,I=/^([A-Z][A-Z\d\.]*)\(/,x=/^(?:[+\-*\/^<=>]|<=|=>)/,F=/^(\$?[A-Z]+)(\$?\d+)\:(\$?[A-Z]+)(\$?\d+)/,D=/^R(\d*|\[\d+\])C(\d*|\[\d+\])\:R(\d*|\[\d+\])C(\d*|\[\d+\])/,P=/^(\$?[A-Z]+)(\$?\d+)(?![\:C])/,j=/^R(\d*|\[\d+\])C(\d*|\[\d+\])(?!\:)/;function k(e){let t=0;for(let r=0,s=e.length,i,n=1;r<s;++r){if("("===(i=e[r])){t||(n=r+1),++t;continue}if(")"===i&&!--t)return e.substring(n,r)}if(t>0){let e=Error("Incomplete parentheses.");throw e.name="FormulaParseError",e}return""}function L(e){let t=-1;for(let r=0,s=e.length,i,n=!1;r<s;++r){if("\\"===(i=e[r])){n=!n;continue}if(n){n=!1;continue}if('"'===i)if(!(t<0))return e.substring(t+1,r);else t=r}let r=Error("Incomplete string.");throw r.name="FormulaParseError",r}function Y(e,t){let r;if(r=e.match(D)){let e=""===r[2]||"["===r[2][0],t=""===r[1]||"["===r[1][0],s=""===r[4]||"["===r[4][0],i=""===r[3]||"["===r[3][0],n={type:"range",beginColumn:e?parseInt(r[2].substring(1,-1)||"0",10):parseInt(r[2],10)-1,beginRow:t?parseInt(r[1].substring(1,-1)||"0",10):parseInt(r[1],10)-1,endColumn:s?parseInt(r[4].substring(1,-1)||"0",10):parseInt(r[4],10)-1,endRow:i?parseInt(r[3].substring(1,-1)||"0",10):parseInt(r[3],10)-1};return e&&(n.beginColumnRelative=!0),t&&(n.beginRowRelative=!0),s&&(n.endColumnRelative=!0),i&&(n.endRowRelative=!0),n}if(r=e.match(F)){let e="$"!==r[1][0],t="$"!==r[2][0],s="$"!==r[3][0],i="$"!==r[4][0],n={type:"range",beginColumn:$(e?r[1]:r[1].substring(1))-1,beginRow:parseInt(t?r[2]:r[2].substring(1),10)-1,endColumn:$(s?r[3]:r[3].substring(1))-1,endRow:parseInt(i?r[4]:r[4].substring(1),10)-1};return e&&(n.beginColumnRelative=!0),t&&(n.beginRowRelative=!0),s&&(n.endColumnRelative=!0),i&&(n.endRowRelative=!0),n}let s=V(e,t);return 1===s.length&&"string"!=typeof s[0]?s[0]:s}function S(e){let t=e.length,s=e[t-2];return"-"===e[t-1]&&(0,r.isString)(s)&&!!s.match(/\*|\/|\^/)}function V(e,t){let r=t?E:M,s=[],i,n=("="===e[0]?e.substring(1):e).trim();for(;n;){if(i=n.match(j)){let e=""===i[2]||"["===i[2][0],t=""===i[1]||"["===i[1][0],r={type:"reference",column:e?parseInt(i[2].substring(1,-1)||"0",10):parseInt(i[2],10)-1,row:t?parseInt(i[1].substring(1,-1)||"0",10):parseInt(i[1],10)-1};e&&(r.columnRelative=!0),t&&(r.rowRelative=!0),S(s)&&(s.pop(),r.isNegative=!0),s.push(r),n=n.substring(i[0].length).trim();continue}if(i=n.match(P)){let e="$"!==i[1][0],t="$"!==i[2][0],r={type:"reference",column:$(e?i[1]:i[1].substring(1))-1,row:parseInt(t?i[2]:i[2].substring(1),10)-1};e&&(r.columnRelative=!0),t&&(r.rowRelative=!0),S(s)&&(s.pop(),r.isNegative=!0),s.push(r),n=n.substring(i[0].length).trim();continue}if(i=n.match(x)){s.push(i[0]),n=n.substring(i[0].length).trim();continue}if(i=n.match(A)){s.push("TRUE"===i[0]),n=n.substring(i[0].length).trim();continue}if(i=n.match(r)){let e=parseFloat(i[0]);S(s)&&(s.pop(),e=-e),s.push(e),n=n.substring(i[0].length).trim();continue}if('"'===n[0]){let e=L(n);s.push(e.substring(1,-1)),n=n.substring(e.length+2).trim();continue}if(i=n.match(I)){let e=k(n=n.substring(i[1].length).trim());s.push({type:"function",name:i[1],args:function(e,t){let r=[],s=t?";":",",i=0,n="";for(let o=0,l=e.length,a;o<l;++o)if((a=e[o])===s&&!i&&n)r.push(Y(n,t)),n="";else if('"'!==a||i||n)" "!==a&&(n+=a,"("===a?++i:")"===a&&--i);else{let t=L(e.substring(o));r.push(t),o+=t.length+1}return!i&&n&&r.push(Y(n,t)),r}(e,t)}),n=n.substring(e.length+2).trim();continue}if("("===n[0]){let e=k(n);if(e){s.push(V(e,t)),n=n.substring(e.length+2).trim();continue}}let o=e.length-n.length,l=Error("Unexpected character `"+e.substring(o,o+1)+"` at position "+(o+1)+". (`..."+e.substring(o-5,o+6)+"...`)");throw l.name="FormulaParseError",l}return s}function $(e){let t=0;for(let r=0,s=e.length,i,n=e.length-1;r<s;++r)(i=e.charCodeAt(r))>=65&&i<=90&&(t+=(i-64)*Math.pow(26,n)),--n;return t}let U={parseFormula:V},H=["+","-","*","/","^","=","<","<=",">",">="],_={isFormula:function(e){return Array.isArray(e)},isFunction:function(e){return"object"==typeof e&&!Array.isArray(e)&&"function"===e.type},isOperator:function(e){return"string"==typeof e&&H.indexOf(e)>=0},isRange:function(e){return"object"==typeof e&&!Array.isArray(e)&&"range"===e.type},isReference:function(e){return"object"==typeof e&&!Array.isArray(e)&&"reference"===e.type},isValue:function(e){return"boolean"==typeof e||"number"==typeof e||"string"==typeof e}},{isFormula:B,isFunction:Z,isOperator:K,isRange:X,isReference:q,isValue:G}=_,J=/ */,W=Number.MAX_VALUE/1.000000000001,z=Number.MAX_VALUE/1.000000000002,Q=Number.MAX_VALUE,ee={"^":3,"*":2,"/":2,"+":1,"-":1,"=":0,"<":0,"<=":0,">":0,">=":0},et={},er=/^[A-Z][A-Z\.]*$/;function es(e){switch(typeof e){case"boolean":return e?Q:W;case"string":return z;case"number":return e;default:return NaN}}function ei(e){return"string"==typeof e?e.toLowerCase().replace(J,"\0"):e}function en(e){switch(typeof e){case"boolean":return+!!e;case"string":return parseFloat(e.replace(",","."));case"number":return e;default:return NaN}}function eo(e,t){return G(e)?e:X(e)?t&&el(e,t)||[]:Z(e)?ec(e,t):eh(B(e)?e:[e],t)}function el(e,t){let r=t.getColumnIds().slice(e.beginColumn,e.endColumn+1),s=[];for(let i=0,n=r.length,o;i<n;++i){let n=t.getColumn(r[i],!0)||[];for(let l=e.beginRow,a=e.endRow+1;l<a;++l)"string"==typeof(o=n[l])&&"="===o[0]&&t!==t.getModified()&&(o=t.getModified().getCell(r[i],l)),s.push(G(o)?o:NaN)}return s}function ea(e,t){let r=t.getColumnIds()[e.column];if(r){let s=t.getCell(r,e.row);if("string"==typeof s&&"="===s[0]&&t!==t.getModified()){let s=t.getModified().getCell(r,e.row);return G(s)?s:NaN}if(G(s))return e.isNegative?-s:s}return NaN}function eu(e,t){(e.length<2||t.length<1)&&e.push(NaN);let s=e.pop(),i=e.pop(),n=t.pop();(0,r.defined)(s)&&(0,r.defined)(i)&&(0,r.defined)(n)?e.push(function(e,t,r){let s;switch(e){case"=":return ei(t)===ei(r);case"<":if(typeof t==typeof r)return ei(t)<ei(r);return es(t)<es(r);case"<=":if(typeof t==typeof r)return ei(t)<=ei(r);return es(t)<=es(r);case">":if(typeof t==typeof r)return ei(t)>ei(r);return es(t)>es(r);case">=":if(typeof t==typeof r)return ei(t)>=ei(r);return es(t)>=es(r)}switch(t=en(t),r=en(r),e){case"+":s=t+r;break;case"-":s=t-r;break;case"*":s=t*r;break;case"/":s=t/r;break;case"^":s=Math.pow(t,r);break;default:return NaN}return s%1?Math.round(1e9*s)/1e9:s}(n,i,s)):e.push(NaN)}function eh(e,t){let r=[],s=[],i=!0;for(let n=0,o=e.length;n<o;++n){let o,l=e[n];if(K(l)){if(i&&"-"===l)r.push(0),s.push("-"),i=!0;else{for(;s.length&&ee[s[s.length-1]]>=ee[l];)eu(r,s);s.push(l),i=!0}continue}if(G(l))o=l;else if(q(l))o=t?ea(l,t):NaN;else if(Z(l)){let e=ec(l,t);o=G(e)?e:NaN}else B(l)&&(o=eh(l,t));if(void 0===o)return NaN;r.push(o),i=!1}for(;s.length;)eu(r,s);return 1!==r.length?NaN:r[0]}function ec(e,t,r){let s=et[e.name];if(s)try{return s(e.args,t)}catch{return NaN}let i=Error(`Function "${e.name}" not found.`);throw i.name="FormulaProcessError",i}let ed={asNumber:en,getArgumentValue:eo,getArgumentsValues:function(e,t){let r=[];for(let s=0,i=e.length;s<i;++s)r.push(eo(e[s],t));return r},getRangeValues:el,getReferenceValue:ea,processFormula:eh,processorFunctions:et,registerProcessorFunction:function(e,t){return er.test(e)&&!et[e]&&!!(et[e]=t)},translateReferences:function e(t,r=0,s=0){for(let i=0,n=t.length,o;i<n;++i)Array.isArray(o=t[i])?e(o,r,s):Z(o)?e(o.args,r,s):X(o)?(o.beginColumnRelative&&(o.beginColumn+=r),o.beginRowRelative&&(o.beginRow+=s),o.endColumnRelative&&(o.endColumn+=r),o.endRowRelative&&(o.endRow+=s)):q(o)&&(o.columnRelative&&(o.column+=r),o.rowRelative&&(o.row+=s));return t}},{getArgumentValue:ef}=ed;ed.registerProcessorFunction("ABS",function(e,t){let r=ef(e[0],t);switch(typeof r){case"number":return Math.abs(r);case"object":{let e=[];for(let t=0,s=r.length,i;t<s;++t){if("number"!=typeof(i=r[t]))return NaN;e.push(Math.abs(i))}return e}default:return NaN}});let{getArgumentValue:ep}=ed;ed.registerProcessorFunction("AND",function e(t,r){for(let s=0,i=t.length,n;s<i;++s)if(!(n=ep(t[s],r))||"object"==typeof n&&!e(n,r))return!1;return!0});let{getArgumentsValues:em}=ed;ed.registerProcessorFunction("AVERAGE",function(e,t){let r=em(e,t),s=0,i=0;for(let e=0,t=r.length,n;e<t;++e)switch(typeof(n=r[e])){case"number":isNaN(n)||(++s,i+=n);break;case"object":for(let e=0,t=n.length,r;e<t;++e)"number"!=typeof(r=n[e])||isNaN(r)||(++s,i+=r)}return s?i/s:0});let{getArgumentValue:eg}=ed;ed.registerProcessorFunction("AVERAGEA",function(e,t){let r=0,s=0;for(let i=0,n=e.length,o;i<n;++i)switch(typeof(o=eg(e[i],t))){case"boolean":++r,s+=+!!o;continue;case"number":isNaN(o)||(++r,s+=o);continue;case"string":++r;continue;default:for(let e=0,t=o.length,i;e<t;++e)switch(typeof(i=o[e])){case"boolean":++r,s+=+!!i;continue;case"number":isNaN(i)||(++r,s+=i);continue;case"string":++r;continue}continue}return r?s/r:0}),ed.registerProcessorFunction("COUNT",function e(t,r){let s=ed.getArgumentsValues(t,r),i=0;for(let t=0,n=s.length,o;t<n;++t)switch(typeof(o=s[t])){case"number":!isNaN(o)&&++i;break;case"object":i+=e(o,r)}return i}),ed.registerProcessorFunction("COUNTA",function e(t,r){let s=ed.getArgumentsValues(t,r),i=0;for(let t=0,n=s.length,o;t<n;++t){switch(typeof(o=s[t])){case"number":if(isNaN(o))continue;break;case"object":i+=e(o,r);continue;case"string":if(!o)continue}++i}return i});let{getArgumentValue:ey}=ed;ed.registerProcessorFunction("IF",function(e,t){return ey(e[0],t)?ey(e[1],t):ey(e[2],t)});let{getArgumentValue:eb}=ed;ed.registerProcessorFunction("ISNA",function(e,t){let r=eb(e[0],t);return"number"!=typeof r||isNaN(r)});let{getArgumentsValues:ew}=ed;ed.registerProcessorFunction("MAX",function e(t,r){let s=ew(t,r),i=-1/0;for(let t=0,r=s.length,n;t<r;++t)switch(typeof(n=s[t])){case"number":n>i&&(i=n);break;case"object":(n=e(n))>i&&(i=n)}return isFinite(i)?i:0}),ed.registerProcessorFunction("MEDIAN",function(e,t){let r=[],s=ed.getArgumentsValues(e,t);for(let e=0,t=s.length,i;e<t;++e)switch(typeof(i=s[e])){case"number":isNaN(i)||r.push(i);break;case"object":for(let e=0,t=i.length,s;e<t;++e)"number"!=typeof(s=i[e])||isNaN(s)||r.push(s)}let i=r.length;if(!i)return NaN;let n=Math.floor(i/2);return i%2?r[n]:(r[n-1]+r[n])/2});let{getArgumentsValues:eC}=ed;ed.registerProcessorFunction("MIN",function e(t,r){let s=eC(t,r),i=1/0;for(let t=0,r=s.length,n;t<r;++t)switch(typeof(n=s[t])){case"number":n<i&&(i=n);break;case"object":(n=e(n))<i&&(i=n)}return isFinite(i)?i:0});let{getArgumentValue:eR}=ed;function eN(e,t){let r={},s=ed.getArgumentsValues(e,t);for(let e=0,t=s.length,i;e<t;++e)switch(typeof(i=s[e])){case"number":isNaN(i)||(r[i]=(r[i]||0)+1);break;case"object":for(let e=0,t=i.length,s;e<t;++e)"number"!=typeof(s=i[e])||isNaN(s)||(r[s]=(r[s]||0)+1)}return r}function eT(e,t){let r=eN(e,t),s=Object.keys(r);if(!s.length)return NaN;let i=parseFloat(s[0]),n=r[s[0]];for(let e=1,t=s.length,o,l,a;e<t;++e)n<(a=r[o=s[e]])?(i=parseFloat(o),n=a):n===a&&i>(l=parseFloat(o))&&(i=l,n=a);return n>1?i:NaN}ed.registerProcessorFunction("MOD",function(e,t){let r=eR(e[0],t),s=eR(e[1],t);return("object"==typeof r&&(r=r[0]),"object"==typeof s&&(s=s[0]),"number"!=typeof r||"number"!=typeof s||0===s)?NaN:r%s}),ed.registerProcessorFunction("MODE",eT),ed.registerProcessorFunction("MODE.MULT",function(e,t){let r=eN(e,t),s=Object.keys(r);if(!s.length)return NaN;let i=[parseFloat(s[0])],n=r[s[0]];for(let e=1,t=s.length,o,l;e<t;++e)n<(l=r[o=s[e]])?(i=[parseFloat(o)],n=l):n===l&&i.push(parseFloat(o));return n>1?i:NaN}),ed.registerProcessorFunction("MODE.SNGL",eT);let{getArgumentValue:eO}=ed;ed.registerProcessorFunction("NOT",function(e,t){let r=eO(e[0],t);switch("object"==typeof r&&(r=r[0]),typeof r){case"boolean":case"number":return!r}return NaN});let{getArgumentValue:ev}=ed;ed.registerProcessorFunction("OR",function e(t,r){for(let s=0,i=t.length,n;s<i;++s)if("object"==typeof(n=ev(t[s],r))){if(e(n,r))return!0}else if(n)return!0;return!1});let{getArgumentsValues:eA}=ed;ed.registerProcessorFunction("PRODUCT",function e(t,r){let s=eA(t,r),i=1,n=!1;for(let t=0,o=s.length,l;t<o;++t)switch(typeof(l=s[t])){case"number":isNaN(l)||(n=!0,i*=l);break;case"object":n=!0,i*=e(l,r)}return n?i:0}),ed.registerProcessorFunction("SUM",function e(t,r){let s=ed.getArgumentsValues(t,r),i=0;for(let t=0,n=s.length,o;t<n;++t)switch(typeof(o=s[t])){case"number":isNaN(o)||(i+=o);break;case"object":i+=e(o,r)}return i});let{getArgumentValue:eM}=ed;ed.registerProcessorFunction("XOR",function(e,t){for(let r=0,s=e.length,i,n;r<s;++r)switch(typeof(n=eM(e[r],t))){case"boolean":case"number":if(void 0===i)i=!!n;else if(!!n!==i)return!0;break;case"object":for(let e=0,t=n.length,r;e<t;++e)switch(typeof(r=n[e])){case"boolean":case"number":if(void 0===i)i=!!r;else if(!!r!==i)return!0}}return!1});let eE={...U,...ed,..._};class eI extends N{constructor(e){let t=(0,r.merge)(eI.defaultOptions,e);super(t),this.headers=[],this.dataTypes=[],this.options=t}parse(e,t){let s=this.dataTypes,i=(0,r.merge)(this.options,e),{beforeParse:n,lineDelimiter:o,firstRowAsNames:l,itemDelimiter:a}=i,u,h=0,{csv:c,startRow:d,endRow:f}=i,p,m=[];if(this.emit({type:"parse",columns:m,detail:t,headers:this.headers}),c&&n&&(c=n(c)),c){if(u=c.replace(/\r\n|\r/g,"\n").split(o||"\n"),(!d||d<0)&&(d=0),(!f||f>=u.length)&&(f=u.length-1),a||(this.guessedItemDelimiter=this.guessDelimiter(u)),l){let e=u[0].split(a||this.guessedItemDelimiter||",");for(let t=0;t<e.length;t++)e[t]=e[t].trim().replace(/^["']|["']$/g,"");this.headers=e,d++}let e=0;for(h=d;h<=f;h++)"#"===u[h][0]?e++:this.parseCSVRow(m,u[h],h-d-e);s.length&&s[0].length&&"date"===s[0][1]&&!this.options.dateFormat&&this.deduceDateFormat(m[0],null,!0);for(let e=0,t=m.length;e<t;++e){p=m[e];for(let t=0,r=p.length;t<r;++t)if(p[t]&&"string"==typeof p[t]){let r=this.convertByType(p[t]);r instanceof Date&&(r=r.getTime()),m[e][t]=r}}}return m.forEach(e=>{e.length=Math.max(...m.map(e=>e.length))}),this.emit({type:"afterParse",columns:m,detail:t,headers:this.headers}),w(m,this.headers)}parseCSVRow(e,t,r){let s=this,i=s.dataTypes,{startColumn:n,endColumn:o}=s.options,l=s.options.itemDelimiter||s.guessedItemDelimiter,{decimalPoint:a}=s.options;a&&a!==l||(a=s.guessedDecimalPoint||".");let u=0,h="",c="",d=0,f=0,p=e=>{h=t[e]},m=e=>{i.length<f+1&&i.push([e]),i[f][i[f].length-1]!==e&&i[f].push(e)},g=()=>{if(n>d||d>o){++d,c="";return}if("string"==typeof c){let e=parseFloat(c);!isNaN(e)&&isFinite(Number(c))?(c=e,m("number")):isNaN(Date.parse(c))?m("string"):(c=c.replace(/\//g,"-"),m("date"))}else m("number");if(e.length<f+1&&e.push([]),"number"!=typeof c&&"number"!==C(c,s)&&a){let e=c;"number"!==C(c=c.replace(a,"."),s)&&(c=e)}e[f][r]=c,c="",++f,++d};if(t.trim().length&&"#"!==t.trim()[0]){for(;u<t.length;u++){if(p(u),"#"===h&&!/^#[A-F\d]{3,3}|[A-F\d]{6,6}/i.test(t.substring(u)))return void g();if('"'===h)for(p(++u);u<t.length&&'"'!==h;)c+=h,p(++u);else h===l?g():c+=h}g()}}guessDelimiter(e){let t=0,r=0,s,i={",":0,";":0," ":0},n=e.length;for(let s=0;s<n;s++){let n=!1,o,l,a,u="";if(s>13)break;let h=e[s];for(let e=0;e<h.length&&(o=h[e],l=h[e+1],a=h[e-1],"#"!==o);e++){if('"'===o)if(n){if('"'!==a&&'"'!==l){for(;" "===l&&e<h.length;)l=h[++e];void 0!==i[l]&&i[l]++,n=!1}}else n=!0;else void 0!==i[o]?(isNaN(Date.parse(u=u.trim()))?(isNaN(Number(u))||!isFinite(Number(u)))&&i[o]++:i[o]++,u=""):u+=o;","===o&&r++,"."===o&&t++}}return i[";"]>i[","]?s=";":(i[","]>i[";"],s=","),t>r?this.guessedDecimalPoint=".":this.guessedDecimalPoint=",",s}}eI.defaultOptions={...N.defaultOptions,lineDelimiter:"\n",startColumn:0,endColumn:Number.MAX_VALUE,startRow:0,endRow:Number.MAX_VALUE},N.registerType("CSV",eI);class ex extends p{constructor(e){let t=(0,r.merge)(ex.defaultOptions,e);super(t),this.options=t,t.enablePolling&&this.startPolling(1e3*Math.max(t.dataRefreshRate||0,1))}emit(e){(0,r.fireEvent)(this,e.type,e)}load(e){let t=this,s=t.options,{csv:i,csvURL:n,dataTables:o,decimalPoint:l}=s;return t.emit({type:"load",csv:i}),Promise.resolve(n?fetch(n,{signal:t?.pollingController?.signal}).then(e=>e.text()):i||"").then(e=>(e&&this.initConverters(e,e=>{let{firstRowAsNames:t=s.firstRowAsNames,beforeParse:i=s.beforeParse}=o?.find(t=>t.key===e)||{};return new eI((0,r.merge)(s,{decimalPoint:l,firstRowAsNames:t,beforeParse:i}))},(e,t)=>e.parse({csv:t})),t.applyTableModifiers().then(()=>e))).then(r=>(t.emit({type:"afterLoad",detail:e,csv:r}),t)).catch(r=>{throw t.emit({type:"loadError",detail:e,error:r}),r})}}ex.defaultOptions={id:"csv-connector",type:"CSV",csv:"",csvURL:"",enablePolling:!1,dataRefreshRate:1,firstRowAsNames:!0},p.registerType("CSV",ex);class eF extends N{constructor(e){let t=(0,r.merge)(eF.defaultOptions,e);super(t),this.headerColumnIds=[],this.headers=[],this.options=t}parse(e,t){let{beforeParse:s,orientation:i,firstRowAsNames:n,columnIds:o}=e=(0,r.merge)(this.options,e),l=e.data;if(!l)return{};this.headers=[];let a=[];return this.emit({type:"parse",columns:a,detail:t,headers:this.headers}),s&&(l=s(l)),l=l.slice(),"columns"===i?this.parseColumnsOrientation(a,l,n,o):"rows"===i&&this.parseRowsOrientation(a,l,n,o),this.emit({type:"afterParse",columns:a,detail:t,headers:this.headers}),w(a,this.headers)}parseColumnsOrientation(e,t,s,i){for(let n=0,o=t.length;n<o;n++){let o=t[n];if(!Array.isArray(o))return;Array.isArray(this.headers)?(s?this.headers.push(`${o.shift()}`):i&&Array.isArray(i)&&this.headers.push(i[n]),e.push(o)):(0,r.error)("JSONConverter: Invalid `columnIds` option.",!1)}}parseRowsOrientation(e,t,s,i){s?this.headers=t.shift():i&&(this.headerColumnIds=i);for(let n=0,o=t.length;n<o;n++){let o=t[n];(0,r.isArray)(o)||(o=this.convertItemToRow(o,i));for(let t=0,i=o.length;t<i;t++)e.length<t+1&&e.push([]),e[t].push(o[t]),s||0!==n||(Array.isArray(this.headerColumnIds)?this.headers.push(this.headerColumnIds[t]||t.toString()):(0,r.error)("JSONConverter: Invalid `columnIds` option.",!1))}}convertItemToRow(e,t){let s=this;if(t&&!Array.isArray(t)){let i=[];return(0,r.objectEach)(t,(t,r)=>{i.push(t.reduce((e,t)=>e[t],e)),0>s.headers.indexOf(r)&&s.headers.push(r)}),i}return s.headerColumnIds=Object.keys(e),Object.values(e)}}eF.defaultOptions={...N.defaultOptions,orientation:"rows"},N.registerType("JSON",eF);class eD extends p{constructor(e){let t=(0,r.merge)(eD.defaultOptions,e);super(t),this.options=t,t.enablePolling&&this.startPolling(1e3*Math.max(t.dataRefreshRate||0,1))}emit(e){(0,r.fireEvent)(this,e.type,e)}load(e){let t=this,r=t.options,{data:s,dataUrl:i,dataTables:n}=r;return t.emit({type:"load",detail:e,data:s}),Promise.resolve(i?fetch(i,{signal:t?.pollingController?.signal}).then(e=>e.json()).catch(r=>{t.emit({type:"loadError",detail:e,error:r}),console.warn(`Unable to fetch data from ${i}.`)}):s||[]).then(async e=>(e&&this.initConverters(e,t=>{let{columnIds:s=r.columnIds,firstRowAsNames:i=r.firstRowAsNames,orientation:o=r.orientation,beforeParse:l=r.beforeParse}=n?.find(e=>e.key===t)||{};return new eF({data:e,columnIds:s,firstRowAsNames:i,orientation:o,beforeParse:l})},(e,t)=>e.parse({data:t})),t.applyTableModifiers().then(()=>e??[]))).then(r=>(t.emit({type:"afterLoad",detail:e,data:r}),t)).catch(r=>{throw t.emit({type:"loadError",detail:e,error:r}),r})}}eD.defaultOptions={type:"JSON",id:"json-connector",data:[],enablePolling:!1,dataRefreshRate:0,firstRowAsNames:!0,orientation:"rows"},p.registerType("JSON",eD);class eP extends N{constructor(e){let t=(0,r.merge)(eP.defaultOptions,e);super(t),this.header=[],this.options=t}parse(e,t){let s,i=(0,r.merge)(this.options,e),n=(i.json?.values||[]).map(e=>e.slice());if(0===n.length)return{};this.header=[],this.emit({type:"parse",columns:[],detail:t,headers:this.header});let{beforeParse:o,json:l}=i;o&&l&&(n=o(l.values));for(let e=0,t=n.length;e<t;e++){s=n[e],this.header[e]=i.firstRowAsNames?`${s.shift()}`:(0,r.uniqueKey)();for(let t=0,r=s.length;t<r;++t){var a;let r=s[t];a=r,"[object Date]"===Object.prototype.toString.call(a)&&(r=r.getTime()),n[e][t]=r}}return this.emit({type:"afterParse",columns:n,detail:t,headers:this.header}),w(n,this.header)}}eP.defaultOptions={...N.defaultOptions},N.registerType("GoogleSheets",eP);class ej extends p{constructor(e){let t=(0,r.merge)(ej.defaultOptions,e);super(t),this.options=t}emit(e){(0,r.fireEvent)(this,e.type,e)}load(e){let t=this,s=t.options,{dataRefreshRate:i,enablePolling:n,googleAPIKey:o,googleSpreadsheetKey:l,dataTables:a}=s,u=function(e,t,s={}){let i=new URL(`https://sheets.googleapis.com/v4/spreadsheets/${t}/values/`),n=s.onlyColumnIds?"A1:Z1":function(e={}){let{endColumn:t,endRow:s,googleSpreadsheetRange:i,startColumn:n,startRow:o}=e;return i||(ek[n||0]||"A")+(Math.max(o||0,0)+1)+":"+(ek[(0,r.pick)(t,25)]||"Z")+(s?Math.max(s,0):"Z")}(s);i.pathname+=n;let o=i.searchParams;return o.set("alt","json"),s.onlyColumnIds||(o.set("dateTimeRenderOption","FORMATTED_STRING"),o.set("majorDimension","COLUMNS"),o.set("valueRenderOption","UNFORMATTED_VALUE")),o.set("prettyPrint","false"),o.set("key",e),i.href}(o,l,s);if(t.emit({type:"load",detail:e,url:u}),!URL.canParse(u))throw Error("Invalid URL: "+u);return fetch(u,{signal:t?.pollingController?.signal}).then(e=>e.json()).then(e=>{if("object"==typeof e&&e&&"object"==typeof e.error&&e.error&&"number"==typeof e.error.code&&"string"==typeof e.error.message&&"string"==typeof e.error.status)throw Error(e.error.message);return this.initConverters(e,e=>{let{firstRowAsNames:t=s.firstRowAsNames,beforeParse:r=s.beforeParse}=a?.find(t=>t.key===e)||{};return new eP({firstRowAsNames:t,beforeParse:r})},(e,t)=>e.parse({json:t})),t.applyTableModifiers()}).then(()=>(t.emit({type:"afterLoad",detail:e,url:u}),n&&setTimeout(()=>t.load(),1e3*Math.max(i||0,1)),t)).catch(r=>{throw t.emit({type:"loadError",detail:e,error:r}),r})}}ej.defaultOptions={id:"google-sheets-connector",type:"GoogleSheets",googleAPIKey:"",googleSpreadsheetKey:"",enablePolling:!1,dataRefreshRate:2,firstRowAsNames:!0};let ek="ABCDEFGHIJKLMNOPQRSTUVWXYZ";p.registerType("GoogleSheets",ej);class eL extends N{constructor(e){let t=(0,r.merge)(eL.defaultOptions,e);super(t),this.headers=[],this.options=t,t.tableElement&&(this.tableElement=t.tableElement,this.tableElementID=t.tableElement.id)}export(e,t=this.options){let r=!1!==t.firstRowAsNames,s=t.useMultiLevelHeaders,i=e.getSortedColumns(),n=Object.keys(i),o=[],l=n.length,a=[],u="";if(r){let e=[];if(s){for(let t of n){let r=i[t];Array.isArray(r)||(r=Array.from(r));let s=(r.shift()||"").toString();i[t]=r,e.push(s)}u=this.getTableHeaderHTML(n,e,t)}else u=this.getTableHeaderHTML(void 0,n,t)}for(let e=0;e<l;e++){let t=i[n[e]],r=t.length;for(let s=0;s<r;s++){let r=t[s];a[s]||(a[s]=[]),"string"!=typeof r&&"number"!=typeof r&&void 0!==r&&(r=(r||"").toString()),a[s][e]=this.getCellHTMLFromValue(e?"td":"th",null,e?"":'scope="row"',r),e===l-1&&o.push("<tr>"+a[s].join("")+"</tr>")}}let h="";return t.tableCaption&&(h='<caption class="highcharts-table-caption">'+t.tableCaption+"</caption>"),"<table>"+h+u+"<tbody>"+o.join("")+"</tbody></table>"}getCellHTMLFromValue(e,t,r,s,i){let n=s,o="text"+(t?" "+t:"");return"number"==typeof n?(n=n.toString(),","===i&&(n=n.replace(".",i)),o="number"):s||(n="",o="empty"),"<"+e+(r?" "+r:"")+' class="'+o+'">'+n+"</"+e+">"}getTableHeaderHTML(e=[],t=[],r=this.options){let{useMultiLevelHeaders:s,useRowspanHeaders:i}=r,n="<thead>",o=0,l=t&&t.length,a,u=0,h;if(s&&e&&t&&!function(e,t){let r=e.length;if(t.length!==r)return!1;for(;--r;)if(e[r]!==t[r])return!1;return!0}(e,t)){for(n+="<tr>";o<l;++o)(a=e[o])===e[o+1]?++u:u?(n+=this.getCellHTMLFromValue("th","highcharts-table-topheading",'scope="col" colspan="'+(u+1)+'"',a),u=0):(a===t[o]?i?(h=2,t.splice(o,1)):(h=1,t[o]=""):h=1,n+=this.getCellHTMLFromValue("th","highcharts-table-topheading",'scope="col"'+(h>1?' valign="top" rowspan="'+h+'"':""),a));n+="</tr>"}if(t){for(n+="<tr>",o=0,l=t.length;o<l;++o)void 0!==t[o]&&(n+=this.getCellHTMLFromValue("th",null,'scope="col"',t[o]));n+="</tr>"}return n+"</thead>"}parse(e,t){let s=[],i=[],n=(0,r.merge)(this.options,e),{endRow:o,startColumn:l,endColumn:a,firstRowAsNames:u}=n,h=n.tableElement||this.tableElement;if(!(h instanceof HTMLElement))return this.emit({type:"parseError",columns:s,detail:t,headers:i,error:"Not a valid HTML Table"}),{};this.tableElement=h,this.tableElementID=h.id,this.emit({type:"parse",columns:s,detail:t,headers:this.headers});let c=h.getElementsByTagName("tr"),d=c.length,f=0,p,{startRow:m}=n;if(u&&d){let e=c[0].children,t=e.length;for(let r=l;r<t&&!(r>a);r++)("TD"===(p=e[r]).tagName||"TH"===p.tagName)&&i.push(p.innerHTML);m++}for(;f<d;){if(f>=m&&f<=o){let e=c[f].children,t=e.length,r=0;for(;r<t;){let t=r-l,i=s[t];if(("TD"===(p=e[r]).tagName||"TH"===p.tagName)&&r>=l&&r<=a){s[t]||(s[t]=[]);let e=this.convertByType(p.innerHTML);e instanceof Date&&(e=e.getTime()),s[t][f-m]=e;let r=1;for(;f-m>=r&&void 0===i[f-m-r];)i[f-m-r]=null,r++}r++}}f++}return this.headers=i,this.emit({type:"afterParse",columns:s,detail:t,headers:i}),w(s,this.headers)}}eL.defaultOptions={...N.defaultOptions,useRowspanHeaders:!0,useMultiLevelHeaders:!0,startColumn:0,endColumn:Number.MAX_VALUE,startRow:0,endRow:Number.MAX_VALUE},N.registerType("HTMLTable",eL);let{win:eY}=s();class eS extends p{constructor(e){let t=(0,r.merge)(eS.defaultOptions,e);super(t),this.options=t,this.converter=new eL(t)}async load(e){let t,s=this.options,i=this.converter,n=this.getTable(),o=s.htmlTable;if(this.emit({type:"load",detail:e}),"string"==typeof o?(this.tableID=o,t=eY.document.getElementById(o)):(t=o,this.tableID=t.id),this.tableElement=t||void 0,!this.tableElement){let t="HTML table not provided, or element with ID not found";return this.emit({type:"loadError",detail:e,error:t}),Promise.reject(Error(t))}let l=i.parse((0,r.merge)({tableElement:this.tableElement},s),e);return n.deleteColumns(),n.setColumns(l),await this.applyTableModifiers(),this.emit({type:"afterLoad",detail:e}),this}}eS.defaultOptions={id:"HTML-table-connector",type:"HTMLTable",htmlTable:""},p.registerType("HTMLTable",eS);class eV extends n{constructor(e,...t){super(),this.chain=t,this.options=(0,r.merge)(eV.defaultOptions,e);let s=this.options.chain||[];for(let e=0,r=s.length,i,o;e<r;++e)(i=s[e]).type&&(o=n.types[i.type])&&t.push(new o(i))}add(e,t){this.emit({type:"addModifier",detail:t,modifier:e}),this.chain.push(e),this.emit({type:"addModifier",detail:t,modifier:e})}clear(e){this.emit({type:"clearChain",detail:e}),this.chain.length=0,this.emit({type:"afterClearChain",detail:e})}async modify(e,t){let r=this.options.reverse?this.chain.slice().reverse():this.chain.slice();e.modified||(e.modified=e.clone(!1,t));let s=e;for(let i=0,n=r.length;i<n;++i){try{await r[i].modify(s,t)}catch(r){throw this.emit({type:"error",detail:t,table:e}),r}s=s.getModified()}return e.modified=s,e}modifyTable(e,t){this.emit({type:"modify",detail:t,table:e});let r=this.options.reverse?this.chain.reverse():this.chain.slice(),s=e.getModified();for(let e=0,i=r.length;e<i;++e)s=r[e].modifyTable(s,t).getModified();return e.modified=s,this.emit({type:"afterModify",detail:t,table:e}),e}remove(e,t){let r=this.chain;this.emit({type:"removeModifier",detail:t,modifier:e}),r.splice(r.indexOf(e),1),this.emit({type:"afterRemoveModifier",detail:t,modifier:e})}emit(e){(0,r.fireEvent)(this,e.type,e)}on(e,t){return(0,r.addEvent)(this,e,t)}}eV.defaultOptions={type:"Chain"},n.registerType("Chain",eV);class e$ extends n{constructor(e){super(),this.options=(0,r.merge)(e$.defaultOptions,e)}modifyTable(e,t){this.emit({type:"modify",detail:t,table:e});let r=e.getModified();if(e.hasColumns(["columnIds"])){let t=(e.deleteColumns(["columnIds"])||{}).columnIds||[],s={},i=[];for(let e=0,r=t.length;e<r;++e)i.push(""+t[e]);for(let t=0,r=e.getRowCount(),n;t<r;++t)(n=e.getRow(t))&&(s[i[t]]=n);r.deleteColumns(),r.setColumns(s)}else{let t={};for(let r=0,s=e.getRowCount(),i;r<s;++r)(i=e.getRow(r))&&(t[`${r}`]=i);t.columnIds=e.getColumnIds(),r.deleteColumns(),r.setColumns(t)}return this.emit({type:"afterModify",detail:t,table:e}),e}}e$.defaultOptions={type:"Invert"},n.registerType("Invert",e$);class eU extends n{constructor(e){super(),this.options={...eU.defaultOptions,...e}}modifyTable(e,t){this.emit({type:"modify",detail:t,table:e});let r=this.options.alternativeSeparators,s=this.options.formulaColumns||e.getColumnIds(),i=e.getModified();for(let t=0,r=s.length,n;t<r;++t)n=s[t],s.indexOf(n)>=0&&i.setColumn(n,this.processColumn(e,n));let n=this.options.columnFormulas||[];for(let t=0,s=n.length,o,l;t<s;++t)o=n[t],l=U.parseFormula(o.formula,r),i.setColumn(o.column,this.processColumnFormula(l,e,o.rowStart,o.rowEnd));return this.emit({type:"afterModify",detail:t,table:e}),e}processColumn(e,t,r=0){let s=this.options.alternativeSeparators,i=(e.getColumn(t,!0)||[]).slice(r>0?r:0);for(let t=0,r=i.length,n=[],o;t<r;++t)if("string"==typeof(o=i[t])&&"="===o[0])try{n=""===o?n:U.parseFormula(o.substring(1),s),i[t]=ed.processFormula(n,e)}catch{i[t]=NaN}return i}processColumnFormula(e,t,r=0,s=t.getRowCount()){r=r>=0?r:0,s=s>=0?s:t.getRowCount()+s;let i=[],n=t.getModified();for(let t=0,o=s-r;t<o;++t)try{i[t]=ed.processFormula(e,n)}catch{i[t]=NaN}finally{e=ed.translateReferences(e,0,1)}return i}}eU.defaultOptions={type:"Math",alternativeSeparators:!1},n.registerType("Math",eU);class eH extends n{constructor(e){super(),this.options=(0,r.merge)(eH.defaultOptions,e)}modifyTable(e,t){this.emit({type:"modify",detail:t,table:e});let{start:r,end:s}=this.options;r=Math.max(0,r||0);let i=Math.max((s=Math.min(s||1/0,e.getRowCount()))-r,0),n=e.getModified();return n.deleteRows(),n.setRows(e.getRows(r,i)),n.setOriginalRowIndexes(Array.from({length:i},(t,s)=>e.getOriginalRowIndex(r+s))),this.emit({type:"afterModify",detail:t,table:e}),e}}eH.defaultOptions={type:"Range",start:0,end:1/0},n.registerType("Range",eH);class e_ extends n{static ascending(e,t){return(e||0)<(t||0)?-1:+((e||0)>(t||0))}static descending(e,t){return(t||0)<(e||0)?-1:+((t||0)>(e||0))}static compareFactory(e,t){return t?"desc"===e?(e,r)=>-t(e,r):t:"asc"===e?e_.ascending:e_.descending}constructor(e){super(),this.options=(0,r.merge)(e_.defaultOptions,e)}getRowReferences(e){let t=e.getRows(),r=[];for(let e=0,s=t.length;e<s;++e)r.push({index:e,row:t[e]});return r}modifyTable(e,t){this.emit({type:"modify",detail:t,table:e});let r=e.getColumnIds(),s=e.getRowCount(),i=this.getRowReferences(e),{direction:n,orderInColumn:o,compare:l}=this.options,a=e.getModified(),u="columns"in this.options?this.options.columns:[this.options.orderByColumn],h=[];for(let e=0,t=u.length;e<t;++e){let t=u[e],s="string"==typeof t,i=s?t:t.column,o=r.indexOf(i);-1!==o&&h.push({columnIndex:o,compare:e_.compareFactory(s?n:t.direction||n,s?l:t.compare||l)})}if(h.length&&i.sort((e,t)=>{for(let r=0,s=h.length;r<s;++r){let{columnIndex:s,compare:i}=h[r],n=i(e.row[s],t.row[s]);if(n)return n}return e.index-t.index}),o){let e=[];for(let t=0;t<s;++t)e[i[t].index]=t;a.setColumns({[o]:e})}else{let t,r=[],n=[];for(let o=0;o<s;++o)t=i[o],r.push(e.getOriginalRowIndex(t.index)),n.push(t.row);a.setRows(n,0),a.setOriginalRowIndexes(r)}return this.emit({type:"afterModify",detail:t,table:e}),e}}e_.defaultOptions={type:"Sort",direction:"desc",orderByColumn:"y"},n.registerType("Sort",e_);class eB extends n{static compile(e){if((0,r.isFunction)(e))return e;let t=e.operator;switch(t){case"and":{let t=e.conditions.map(e=>this.compile(e));return(e,r,s)=>t.every(t=>t(e,r,s))}case"or":{let t=e.conditions.map(e=>this.compile(e));return(e,r,s)=>t.some(t=>t(e,r,s))}case"not":{let t=this.compile(e.condition);return(e,r,s)=>!t(e,r,s)}}let{columnId:s,value:i}=e;switch(t){case"==":return e=>e[s]==i;case"===":return e=>e[s]===i;case"!=":return e=>e[s]!=i;case"!==":return e=>e[s]!==i;case">":return e=>(e[s]||0)>(i||0);case">=":return e=>(e[s]||0)>=(i||0);case"<":return e=>(e[s]||0)<(i||0);case"<=":return e=>(e[s]||0)<=(i||0);case"empty":return e=>null===e[s]||""===e[s]}let{ignoreCase:n}=e,o=e=>{let t=""+e;return n??!0?t.toLowerCase():t};return"contains"===t?e=>o(e[s]).includes(o(i)):e=>o(e[s])[t](o(i))}constructor(e){super(),this.options=(0,r.merge)(eB.defaultOptions,e)}modifyTable(e,t){this.emit({type:"modify",detail:t,table:e});let{condition:r}=this.options;if(!r)return e;let s=eB.compile(r),i=e.getModified(),n=[],o=[];for(let t=0,r=e.getRowCount();t<r;++t){let r=e.getRowObject(t);r&&s(r,e,t)&&(n.push(r),o.push(e.getOriginalRowIndex(t)))}return i.deleteRows(),i.setRows(n),i.setOriginalRowIndexes(o),this.emit({type:"afterModify",detail:t,table:e}),e}}eB.defaultOptions={type:"Filter"},n.registerType("Filter",eB);let eZ=s();eZ.DataConnector=eZ.DataConnector||p,eZ.DataConverter=eZ.DataConverter||N,eZ.DataCursor=eZ.DataCursor||O,eZ.DataModifier=eZ.DataModifier||n,eZ.DataPool=eZ.DataPool||v,eZ.DataTable=eZ.DataTable||d,eZ.Formula=eZ.Formula||eE;let eK=s();export{eK as default};
12
+ */import*as e from"../highcharts.js";let t={};t.n=e=>{let r=e&&e.__esModule?()=>e.default:()=>e;return t.d(r,{a:r}),r},t.d=(e,r)=>{if(Array.isArray(r))for(var s=0;s<r.length;){var i=r[s++],n=r[s++];t.o(e,i)?0===n&&s++:0===n?Object.defineProperty(e,i,{enumerable:!0,value:r[s++]}):Object.defineProperty(e,i,{enumerable:!0,get:n})}else for(var i in r)t.o(r,i)&&!t.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:r[i]})},t.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);let r=e.default;var s=t.n(r);class i{static registerType(e,t){return!!e&&!i.types[e]&&!!(i.types[e]=t)}benchmark(e,t){let s=[],i=this,n=()=>{i.modifyTable(e),i.emit({type:"afterBenchmarkIteration"})},{iterations:o}=(0,r.merge)({iterations:1},t);i.on("afterBenchmarkIteration",()=>{s.length===o?i.emit({type:"afterBenchmark",results:s}):n()});let l={startTime:0,endTime:0};return i.on("modify",()=>{l.startTime=window.performance.now()}),i.on("afterModify",()=>{l.endTime=window.performance.now(),s.push(l.endTime-l.startTime)}),n(),s}emit(e){(0,r.fireEvent)(this,e.type,e)}modify(e,t){let r=this;return new Promise((s,i)=>{e.modified||(e.modified=e.clone(!1,t));try{s(r.modifyTable(e,t))}catch(s){r.emit({type:"error",detail:t,table:e}),i(s instanceof Error?s:Error(""+s))}})}on(e,t){return(0,r.addEvent)(this,e,t)}}i.types={};let n=i,o={convertToNumber:function(e,t){switch(typeof e){case"boolean":return+!!e;case"number":return isNaN(e)&&!t?null:e;default:return isNaN(e=parseFloat(`${e??""}`))&&!t?null:e}},setLength:function(e,t,r){return Array.isArray(e)?(e.length=t,e):e[r?"subarray":"slice"](0,t)},splice:function(e,t,r,s,i=[]){if(Array.isArray(e))return Array.isArray(i)||(i=Array.from(i)),{removed:e.splice(t,r,...i),array:e};let n=Object.getPrototypeOf(e).constructor,o=e[s?"subarray":"slice"](t,t+r),l=new n(e.length-r+i.length);return l.set(e.subarray(0,t),0),l.set(i,t),l.set(e.subarray(t+r),t+i.length),{removed:o,array:l}}},{setLength:l,splice:a}=o,u=class{constructor(e={}){this.isDataTable=!0,this.autoId=!e.id,this.columns={},this.id=e.id||(0,r.uniqueKey)(),this.rowCount=0,this.versionTag=(0,r.uniqueKey)();let t=0;(0,r.objectEach)(e.columns||{},(e,r)=>{this.columns[r]=e.slice(),t=Math.max(t,e.length)}),this.applyRowCount(t)}applyRowCount(e){this.rowCount=e,(0,r.objectEach)(this.columns,(t,r)=>{t.length!==e&&(this.columns[r]=l(t,e))})}deleteRows(e,t=1){if(t>0&&e<this.rowCount){let s=0;(0,r.objectEach)(this.columns,(r,i)=>{this.columns[i]=a(r,e,t).array,s=r.length}),this.rowCount=s}(0,r.fireEvent)(this,"afterDeleteRows",{rowIndex:e,rowCount:t}),this.versionTag=(0,r.uniqueKey)()}getColumn(e,t){return this.columns[e]}getColumns(e,t){return(e||Object.keys(this.columns)).reduce((e,t)=>(e[t]=this.columns[t],e),{})}getRowObject(e,t){let r={},s=this.columns;for(let i of(t??(t=Object.keys(this.columns)),t))r[i]=s[i]?.[e];return r}setColumn(e,t=[],r=0,s){this.setColumns({[e]:t},r,s)}setColumns(e,t,s){let i=this.rowCount;(0,r.objectEach)(e,(e,t)=>{this.columns[t]=e.slice(),i=e.length}),this.applyRowCount(i),s?.silent||((0,r.fireEvent)(this,"afterSetColumns"),this.versionTag=(0,r.uniqueKey)())}setRow(e,t=this.rowCount,s,i){var n;let{columns:o}=this,l=s?this.rowCount+1:t+1,u=Object.keys(e);if(i?.addColumns!==!1)for(let e=0,t=u.length;e<t;e++)o[n=u[e]]||(o[n]=Array(this.rowCount));(0,r.objectEach)(o,(r,i)=>{r&&(s?r=a(r,t,0,!0,[e[i]]).array:r[t]=i in e?e[i]:r[t],o[i]=r)}),this.applyRowCount(Math.max(l,this.rowCount)),i?.silent||((0,r.fireEvent)(this,"afterSetRows",{rowIndex:t}),this.versionTag=(0,r.uniqueKey)())}getModified(){return this.modified||this}},{splice:h,setLength:c}=o;class d extends u{constructor(e={}){super(e),this.metadata=e.metadata}clone(e,t){let r={};this.emit({type:"cloneTable",detail:t}),e||(r.columns=this.columns),this.autoId||(r.id=this.id);let s=new d(r);return e||(s.versionTag=this.versionTag,s.originalRowIndexes=this.originalRowIndexes,s.localRowIndexes=this.localRowIndexes),s.metadata={...this.metadata},this.emit({type:"afterCloneTable",detail:t,tableClone:s}),s}deleteColumns(e,t){let r=this.columns,s={},i={},n=this.modifier,o=this.rowCount;if((e=e||Object.keys(r)).length){this.emit({type:"deleteColumns",columnIds:e,detail:t});for(let t=0,n=e.length,l,a;t<n;++t)(l=r[a=e[t]])&&(s[a]=l,i[a]=Array(o)),delete r[a];return Object.keys(r).length||(this.rowCount=0,this.deleteRowIndexReferences()),n&&n.modifyTable(this),this.emit({type:"afterDeleteColumns",columns:s,columnIds:e,detail:t}),s}}deleteRowIndexReferences(){delete this.originalRowIndexes,delete this.localRowIndexes}deleteRows(e,t=1,s){let i,n,{columns:o,modifier:l}=this,a=[];if((0,r.defined)(e)?Array.isArray(e)?n=(i=e.filter((e,t,r)=>e>=0&&e<this.rowCount&&r.indexOf(e)===t).sort((e,t)=>t-e)).length:(i=[e],n=t):(i=[0],n=this.rowCount),this.emit({type:"deleteRows",detail:s,rowCount:n,rowIndex:e??0}),n>0){let e=Object.keys(o);for(let t=0;t<e.length;++t){let r,s=e[t],l=o[s];if(1===i.length&&n>1){let e=h(l,i[0],n);r=e.removed,o[s]=e.array}else{for(let e of(r=[],i))r.push(l[e]),h(l,e,1);r.reverse()}t||(this.rowCount=l.length);for(let e=0,s=r.length;e<s;++e)a[e]=a[e]||[],a[e][t]=r[e]}}return l&&l.modifyTable(this),this.emit({type:"afterDeleteRows",detail:s,rowCount:n,rowIndex:e??0,rows:a}),a}emit(e){["afterDeleteColumns","afterDeleteRows","afterSetCell","afterSetColumns","afterSetRows"].includes(e.type)&&(this.versionTag=(0,r.uniqueKey)()),(0,r.fireEvent)(this,e.type,e)}getCell(e,t){let r=this.columns[e];if(r)return r[t]}getColumn(e,t){return this.getColumns([e],t)[e]}getColumnIds(){return Object.keys(this.columns)}getColumns(e,t,r){let s=this.columns,i={};e=e||Object.keys(s);for(let n=0,o=e.length,l,a;n<o;++n)(l=s[a=e[n]])&&(t?i[a]=l:r&&!Array.isArray(l)?i[a]=Array.from(l):i[a]=l.slice());return i}getLocalRowIndex(e){let{localRowIndexes:t}=this;return t?t[e]:e}getModifier(){return this.modifier}getOriginalRowIndex(e){let{originalRowIndexes:t}=this;return t?t[e]:e}getRow(e,t){return this.getRows(e,1,t)[0]}getRowCount(){return this.rowCount}getRowIndexBy(e,t,s){let i=this.columns[e];if(i){let e=-1;if(Array.isArray(i)?e=i.indexOf(t,s):(0,r.isNumber)(t)&&(e=i.indexOf(t,s)),-1!==e)return e}}getRowObject(e,t){return this.getRowObjects(e,1,t)[0]}getRowObjects(e=0,t=this.rowCount-e,r){let s=this.columns,i=Array(t);r=r||Object.keys(s);for(let n=e,o=0,l=Math.min(this.rowCount,e+t),a,u;n<l;++n,++o)for(let e of(u=i[o]={},r))a=s[e],u[e]=a?a[n]:void 0;return i}getRows(e=0,t=this.rowCount-e,r){let s=this.columns,i=Array(t);r=r||Object.keys(s);for(let n=e,o=0,l=Math.min(this.rowCount,e+t),a,u;n<l;++n,++o)for(let e of(u=i[o]=[],r))a=s[e],u.push(a?a[n]:void 0);return i}getVersionTag(){return this.versionTag}hasColumns(e){let t=this.columns;for(let r=0,s=e.length;r<s;++r)if(!t[e[r]])return!1;return!0}hasRowWith(e,t){let s=this.columns[e];return Array.isArray(s)?-1!==s.indexOf(t):!!((0,r.defined)(t)&&Number.isFinite(t))&&-1!==s.indexOf(+t)}on(e,t){return(0,r.addEvent)(this,e,t)}changeColumnId(e,t){let r=this.columns;return!!r[e]&&(e!==t&&(r[t]=r[e],delete r[e]),!0)}setCell(e,t,r,s){let i=this.columns,n=this.modifier,o=i[e];o&&o[t]===r||(this.emit({type:"setCell",cellValue:r,columnId:e,detail:s,rowIndex:t}),o||(o=i[e]=Array(this.rowCount)),t>=this.rowCount&&(this.rowCount=t+1),o[t]=r,n&&n.modifyTable(this),this.emit({type:"afterSetCell",cellValue:r,columnId:e,detail:s,rowIndex:t}))}setColumns(e,t,s,i){let n=this.columns,o=this.modifier,l=Object.keys(e),a=this.rowCount;if(this.emit({type:"setColumns",columns:e,columnIds:l,detail:s,rowIndex:t}),(0,r.defined)(t)||i){for(let r=0,s=l.length,o,u,h,c;r<s;++r){o=e[h=l[r]],c=Object.getPrototypeOf((u=n[h])&&i?u:o).constructor,u?c===Array?Array.isArray(u)||(u=Array.from(u)):u.length<a&&(u=new c(a)).set(n[h]):u=new c(a),n[h]=u;for(let e=t||0,r=o.length;e<r;++e)u[e]=o[e];a=Math.max(a,o.length)}this.applyRowCount(a)}else super.setColumns(e,t,(0,r.extend)(s,{silent:!0}));o&&o.modifyTable(this),this.emit({type:"afterSetColumns",columns:e,columnIds:l,detail:s,rowIndex:t})}setModifier(e,t){let r=this;return r.emit({type:"setModifier",detail:t,modifier:e,modified:r.getModified()}),r.modifier=e,(e?e.modify(r):Promise.resolve(r)).then(r=>(r.emit({type:"afterSetModifier",detail:t,modifier:e,modified:r.getModified()}),r)).catch(t=>{throw r.emit({type:"setModifierError",error:t,modifier:e,modified:r.getModified()}),t})}setOriginalRowIndexes(e,t=!1){if(this.originalRowIndexes=e,t)return;let s=this.localRowIndexes=[];for(let t=0,i=e.length,n;t<i;++t)n=e[t],(0,r.defined)(n)&&(s[n]=t)}setRow(e,t,r,s){this.setRows([e],t,r,s)}setRows(e,t=this.rowCount,r,s){let i=this.columns,n=Object.keys(i),o=this.modifier,l=e.length;this.emit({type:"setRows",detail:s,rowCount:l,rowIndex:t,rows:e});for(let s=0,o=t,a;s<l;++s,++o)if(0===Object.keys(a=e[s]).length)for(let e=0,t=n.length;e<t;++e){let t=i[n[e]];r?i[n[e]]=h(t,o,0,!0,[null]).array:t[o]=null}else if(Array.isArray(a))for(let e=0,t=n.length;e<t;++e)i[n[e]][o]=a[e];else super.setRow(a,o,r,{silent:!0});let a=r?l+e.length:t+l;if(a>this.rowCount){this.rowCount=a;for(let e=0,t=n.length;e<t;++e){let t=n[e];i[t]=c(i[t],a)}}o&&o.modifyTable(this),this.emit({type:"afterSetRows",detail:s,rowCount:l,rowIndex:t,rows:e})}}class f{static registerType(e,t){return!!e&&!f.types[e]&&!!(f.types[e]=t)}get polling(){return!!this._polling}constructor(e){this.dataTables={},this.loaded=!1,this.metadata=e.metadata||{columns:{}},this.options=e;let t=e?.dataTables,r=0;if(e.options&&console.error("The `DataConnectorOptions.options` property was removed in Dashboards v4.0.0. Check how to upgrade your connector to use the new options structure here: https://api.highcharts.com/dashboards/#interfaces/Data_DataTableOptions.DataTableOptions"),t&&t?.length>0)for(let e=0,s=t.length;e<s;++e){let s=t[e],i=s?.key;this.dataTables[i??r]=new d(s),!i&&r++}else this.dataTables[0]=new d({id:e.id})}getTable(e){return e?this.dataTables[e]:Object.values(this.dataTables)[0]}describeColumn(e,t){let s=this.metadata.columns;s[e]=(0,r.merge)(s[e]||{},t)}describeColumns(e){let t,r=Object.keys(e);for(;"string"==typeof(t=r.pop());)this.describeColumn(t,e[t])}getColumnOrder(){let e=this.metadata.columns,t=Object.keys(e||{});if(t.length)return t.sort((t,r)=>(e[t].index??0)-(e[r].index??0))}getSortedColumns(){return this.getTable().getColumns(this.getColumnOrder())}setColumnOrder(e){for(let t=0,r=e.length;t<r;++t)this.describeColumn(e[t],{index:t})}async update(e,t=!0){this.emit({type:"beforeUpdate"}),(0,r.merge)(!0,this.options,e);let{options:s}=this;("enablePolling"in e||"dataRefreshRate"in e)&&("enablePolling"in s&&s.enablePolling?(this.stopPolling(),this.startPolling("dataRefreshRate"in s&&"number"==typeof s.dataRefreshRate?1e3*Math.max(s.dataRefreshRate,1):1e3)):this.stopPolling()),t&&await this.load(),this.emit({type:"afterUpdate"})}load(){return this.emit({type:"afterLoad"}),Promise.resolve(this)}async applyTableModifiers(){let e=this.options?.dataTables;for(let[t,r]of Object.entries(this.dataTables)){let s=e?.find(e=>e.key===t)?.dataModifier??this.options?.dataModifier;if(!s)continue;let i=s&&n.types[s.type];await r.setModifier(i?new i(s):void 0)}return this}startPolling(e=1e3){let t=this;this.pollingController=new AbortController,window.clearTimeout(t._polling),t._polling=window.setTimeout(()=>t.load().catch(e=>t.emit({type:"loadError",error:e})).then(()=>{t._polling&&t.startPolling(e)}),e)}stopPolling(){this.polling&&(this?.pollingController?.abort(),window.clearTimeout(this._polling),delete this._polling)}emit(e){(0,r.fireEvent)(this,e.type,e)}on(e,t){return(0,r.addEvent)(this,e,t)}initConverters(e,t,r){let s=0;for(let[i,n]of Object.entries(this.dataTables)){let o=t(i),l=r(o,e);n.deleteColumns(),n.setColumns(l),0===s&&(this.converter=o),s++}}}f.types={};let p=f;function m(e,t){return"string"==typeof e&&(e=e.replace(/^\s+|\s+$/g,""),t&&/^[\d\s]+$/.test(e)&&(e=e.replace(/\s/g,""))),e}let g=function(e,t){let r;if("string"==typeof e)r=t.parseDate(e);else if("number"==typeof e)r=e;else{if(e instanceof Date)return e;r=t.parseDate(""+e)}return new Date(r)},y=function(e,t){if("number"==typeof e)return e;if("boolean"==typeof e)return+!!e;if("string"==typeof e){if(e.indexOf(" ")>-1&&(e=e.replace(/\s+/g,"")),t){if(!t.test(e))return NaN;e=e.replace(t,"$1.$2")}return parseFloat(e)}return e instanceof Date?e.getDate():e?e.getRowCount():NaN},b=function(e){return""+e},w=function(e=[],t){let r={};for(let s=0,i=Math.max(t.length,e.length);s<i;++s)r[t[s]||`${s}`]=e[s]?e[s].slice():[];return r},C=function(e,t){let s="string";if("string"==typeof e){let i=m(`${e}`),n=t.decimalRegExp,o=m(i,!0);n&&(o=n.test(o)?o.replace(n,"$1.$2"):"");let l=parseFloat(o);if(+o===l)e=l;else{let i=t.parseDate(e);s=(0,r.isNumber)(i)?"Date":"string"}}return"number"==typeof e&&(s=e>31536e6?"Date":"number"),s};class R{static registerType(e,t){return!!e&&!R.types[e]&&!!(R.types[e]=t)}constructor(e){this.dateFormats={"YYYY/mm/dd":{regex:/^(\d{4})([\-\.\/])(\d{1,2})\2(\d{1,2})$/,parser:function(e){return e?Date.UTC(+e[1],e[3]-1,+e[4]):NaN}},"dd/mm/YYYY":{regex:/^(\d{1,2})([\-\.\/])(\d{1,2})\2(\d{4})$/,parser:function(e){return e?Date.UTC(+e[4],e[3]-1,+e[1]):NaN},alternative:"mm/dd/YYYY"},"mm/dd/YYYY":{regex:/^(\d{1,2})([\-\.\/])(\d{1,2})\2(\d{4})$/,parser:function(e){return e?Date.UTC(+e[4],e[1]-1,+e[3]):NaN}},"dd/mm/YY":{regex:/^(\d{1,2})([\-\.\/])(\d{1,2})\2(\d{2})$/,parser:function(e){let t=new Date;if(!e)return NaN;let r=+e[4];return r>t.getFullYear()-2e3?r+=1900:r+=2e3,Date.UTC(r,e[3]-1,+e[1])},alternative:"mm/dd/YY"},"mm/dd/YY":{regex:/^(\d{1,2})([\-\.\/])(\d{1,2})\2(\d{2})$/,parser:function(e){return e?Date.UTC(+e[4]+2e3,e[1]-1,+e[3]):NaN}}};let t=(0,r.merge)(R.defaultOptions,e),s=t.decimalPoint;("."===s||","===s)&&(s="."===s?"\\.":",",this.decimalRegExp=RegExp("^(-?[0-9]+)"+s+"([0-9]+)$")),this.options=t}convertByType(e){let t=this;return({number:e=>y(e,t.decimalRegExp),Date:e=>g(e,t),string:b})[C(e,t)].call(t,e)}deduceDateFormat(e,t,r){let s=[],i=[],n="YYYY/mm/dd",o,l=[],a=0,u=!1,h,c;for((!t||t>e.length)&&(t=e.length);a<t;a++)if(void 0!==e[a]&&e[a]&&e[a].length)for(c=0,o=e[a].trim().replace(/[\-\.\/]/g," ").split(" "),l=["","",""];c<o.length;c++)c<l.length&&(h=parseInt(o[c],10))&&(i[c]=!i[c]||i[c]<h?h:i[c],void 0!==s[c]?s[c]!==h&&(s[c]=!1):s[c]=h,h>31?h<100?l[c]="YY":l[c]="YYYY":h>12&&h<=31?(l[c]="dd",u=!0):l[c].length||(l[c]="mm"));if(u){for(c=0;c<s.length;c++)!1!==s[c]?i[c]>12&&"YY"!==l[c]&&"YYYY"!==l[c]&&(l[c]="YY"):i[c]>12&&"mm"===l[c]&&(l[c]="dd");3===l.length&&"dd"===l[1]&&"dd"===l[2]&&(l[2]="YY"),n=l.join("/")}return r&&(this.options.dateFormat=n),n}emit(e){(0,r.fireEvent)(this,e.type,e)}on(e,t){return(0,r.addEvent)(this,e,t)}parseDate(e,t){let r=this.options,s=t||r.dateFormat,i=NaN,n,o=null;if(r.parseDate)i=r.parseDate(e);else{let t=this.dateFormats;if(s){let r=t[s];r||(r=t["YYYY/mm/dd"]),(o=e.match(r.regex))&&(i=r.parser(o))}else for(n in t){let r=t[n];if(o=e.match(r.regex)){s=n,i=r.parser(o);break}}if(!o){let t=Date.parse(e);!isNaN(t)&&(i=t-6e4*new Date(t).getTimezoneOffset(),e.includes("2001")||2001!==new Date(i).getFullYear()||(i=NaN))}}return i}}R.defaultOptions={dateFormat:"",firstRowAsNames:!0},R.types={};let N=R;function T(e,t){if("position"===e.type){for(let r,s=0,i=t.length;s<i;++s)if("position"===(r=t[s]).type&&r.state===e.state&&r.column===e.column&&r.row===e.row)return s}else{let r=JSON.stringify(e.columns);for(let s,i=0,n=t.length;i<n;++i)if("range"===(s=t[i]).type&&s.state===e.state&&s.firstRow===e.firstRow&&s.lastRow===e.lastRow&&JSON.stringify(s.columns)===r)return i}return -1}let O=class{constructor(e={}){this.emittingRegister=[],this.listenerMap={},this.stateMap=e}addListener(e,t,r){let s=this.listenerMap[e]=this.listenerMap[e]||{};return(s[t]=s[t]||[]).push(r),this}buildEmittingTag(e){return("position"===e.cursor.type?[e.table.id,e.cursor.column,e.cursor.row,e.cursor.state,e.cursor.type]:[e.table.id,e.cursor.columns,e.cursor.firstRow,e.cursor.lastRow,e.cursor.state,e.cursor.type]).join("\0")}emitCursor(e,t,r,s){let i=e.id,n=t.state,o=this.listenerMap[i]&&this.listenerMap[i][n];if(o){let n=this.stateMap[i]=this.stateMap[i]??{},l=n[t.state]||[];s&&(l.length||(n[t.state]=l),-1===T(t,l)&&l.push(t));let a={cursor:t,cursors:l,table:e};r&&(a.event=r);let u=this.emittingRegister,h=this.buildEmittingTag(a);if(u.indexOf(h)>=0)return this;try{this.emittingRegister.push(h);for(let e=0,t=o.length;e<t;++e)o[e].call(this,a)}finally{let e=this.emittingRegister.indexOf(h);e>=0&&this.emittingRegister.splice(e,1)}}return this}remitCursor(e,t){let r=this.stateMap[e]&&this.stateMap[e][t.state];if(r){let e=T(t,r);e>=0&&r.splice(e,1)}return this}removeListener(e,t,r){let s=this.listenerMap[e]&&this.listenerMap[e][t];if(s){let e=s.indexOf(r);e>=0&&s.splice(e,1)}return this}};class v{constructor(e){this.options=(0,r.merge)(v.defaultOptions,e),this.connectors={},this.waiting={}}emit(e){(0,r.fireEvent)(this,e.type,e)}getConnector(e){let t=this.connectors[e];if(t?.loaded)return Promise.resolve(t);let r=this.waiting[e];if(!r){r=this.waiting[e]=[];let t=this.getConnectorOptions(e);if(!t)throw Error(`Connector '${e}' not found.`);this.loadConnector(t).then(t=>{delete this.waiting[e];for(let e=0,s=r.length;e<s;++e)r[e][0](t)}).catch(t=>{delete this.waiting[e];for(let e=0,s=r.length;e<s;++e)r[e][1](t)})}return new Promise((e,t)=>{r.push([e,t])})}getConnectorIds(){let e=this.options.connectors,t=[];for(let r=0,s=e.length;r<s;++r)t.push(e[r].id);return t}getConnectorOptions(e){let t=this.options.connectors;for(let r=0,s=t.length;r<s;++r)if(t[r].id===e)return t[r]}isNewConnector(e){return!this.connectors[e]}loadConnector(e){return new Promise((t,r)=>{this.emit({type:"load",options:e});let s=p.types[e.type];if(!s)throw Error(`Connector type not found. (${e.type})`);let i=this.connectors[e.id]=new s(e);i.load().then(({converter:r})=>{i.converter=r,i.loaded=!0,this.emit({type:"afterLoad",options:e}),t(i)}).catch(r)})}cancelPendingRequests(){let{connectors:e}=this;for(let t of Object.keys(e))e[t].stopPolling()}on(e,t){return(0,r.addEvent)(this,e,t)}async setConnectorOptions(e,t){let r=this.options.connectors,s=this.connectors;this.emit({type:"setConnectorOptions",options:e});for(let t=0,s=r.length;t<s;++t)if(r[t].id===e.id){r.splice(t,1);break}let i=s[e.id];i&&(t?await i.update(e,!0):(i.stopPolling(),i=void 0,delete s[e.id])),i||r.push(e),this.emit({type:"afterSetConnectorOptions",options:e})}}v.defaultOptions={connectors:[]};let A=/^(?:FALSE|TRUE)/,M=/^[+\-]?\d+(?:\.\d+)?(?:e[+\-]\d+)?/,E=/^[+\-]?\d+(?:,\d+)?(?:e[+\-]\d+)?/,I=/^([A-Z][A-Z\d\.]*)\(/,x=/^(?:[+\-*\/^<=>]|<=|=>)/,F=/^(\$?[A-Z]+)(\$?\d+)\:(\$?[A-Z]+)(\$?\d+)/,D=/^R(\d*|\[\d+\])C(\d*|\[\d+\])\:R(\d*|\[\d+\])C(\d*|\[\d+\])/,P=/^(\$?[A-Z]+)(\$?\d+)(?![\:C])/,j=/^R(\d*|\[\d+\])C(\d*|\[\d+\])(?!\:)/;function L(e){let t=0;for(let r=0,s=e.length,i,n=1;r<s;++r){if("("===(i=e[r])){t||(n=r+1),++t;continue}if(")"===i&&!--t)return e.substring(n,r)}if(t>0){let e=Error("Incomplete parentheses.");throw e.name="FormulaParseError",e}return""}function k(e){let t=-1;for(let r=0,s=e.length,i,n=!1;r<s;++r){if("\\"===(i=e[r])){n=!n;continue}if(n){n=!1;continue}if('"'===i)if(!(t<0))return e.substring(t+1,r);else t=r}let r=Error("Incomplete string.");throw r.name="FormulaParseError",r}function Y(e,t){let r;if(r=e.match(D)){let e=""===r[2]||"["===r[2][0],t=""===r[1]||"["===r[1][0],s=""===r[4]||"["===r[4][0],i=""===r[3]||"["===r[3][0],n={type:"range",beginColumn:e?parseInt(r[2].substring(1,-1)||"0",10):parseInt(r[2],10)-1,beginRow:t?parseInt(r[1].substring(1,-1)||"0",10):parseInt(r[1],10)-1,endColumn:s?parseInt(r[4].substring(1,-1)||"0",10):parseInt(r[4],10)-1,endRow:i?parseInt(r[3].substring(1,-1)||"0",10):parseInt(r[3],10)-1};return e&&(n.beginColumnRelative=!0),t&&(n.beginRowRelative=!0),s&&(n.endColumnRelative=!0),i&&(n.endRowRelative=!0),n}if(r=e.match(F)){let e="$"!==r[1][0],t="$"!==r[2][0],s="$"!==r[3][0],i="$"!==r[4][0],n={type:"range",beginColumn:$(e?r[1]:r[1].substring(1))-1,beginRow:parseInt(t?r[2]:r[2].substring(1),10)-1,endColumn:$(s?r[3]:r[3].substring(1))-1,endRow:parseInt(i?r[4]:r[4].substring(1),10)-1};return e&&(n.beginColumnRelative=!0),t&&(n.beginRowRelative=!0),s&&(n.endColumnRelative=!0),i&&(n.endRowRelative=!0),n}let s=V(e,t);return 1===s.length&&"string"!=typeof s[0]?s[0]:s}function S(e){let t=e.length,s=e[t-2];return"-"===e[t-1]&&(0,r.isString)(s)&&!!s.match(/\*|\/|\^/)}function V(e,t){let r=t?E:M,s=[],i,n=("="===e[0]?e.substring(1):e).trim();for(;n;){if(i=n.match(j)){let e=""===i[2]||"["===i[2][0],t=""===i[1]||"["===i[1][0],r={type:"reference",column:e?parseInt(i[2].substring(1,-1)||"0",10):parseInt(i[2],10)-1,row:t?parseInt(i[1].substring(1,-1)||"0",10):parseInt(i[1],10)-1};e&&(r.columnRelative=!0),t&&(r.rowRelative=!0),S(s)&&(s.pop(),r.isNegative=!0),s.push(r),n=n.substring(i[0].length).trim();continue}if(i=n.match(P)){let e="$"!==i[1][0],t="$"!==i[2][0],r={type:"reference",column:$(e?i[1]:i[1].substring(1))-1,row:parseInt(t?i[2]:i[2].substring(1),10)-1};e&&(r.columnRelative=!0),t&&(r.rowRelative=!0),S(s)&&(s.pop(),r.isNegative=!0),s.push(r),n=n.substring(i[0].length).trim();continue}if(i=n.match(x)){s.push(i[0]),n=n.substring(i[0].length).trim();continue}if(i=n.match(A)){s.push("TRUE"===i[0]),n=n.substring(i[0].length).trim();continue}if(i=n.match(r)){let e=parseFloat(i[0]);S(s)&&(s.pop(),e=-e),s.push(e),n=n.substring(i[0].length).trim();continue}if('"'===n[0]){let e=k(n);s.push(e.substring(1,-1)),n=n.substring(e.length+2).trim();continue}if(i=n.match(I)){let e=L(n=n.substring(i[1].length).trim());s.push({type:"function",name:i[1],args:function(e,t){let r=[],s=t?";":",",i=0,n="";for(let o=0,l=e.length,a;o<l;++o)if((a=e[o])===s&&!i&&n)r.push(Y(n,t)),n="";else if('"'!==a||i||n)" "!==a&&(n+=a,"("===a?++i:")"===a&&--i);else{let t=k(e.substring(o));r.push(t),o+=t.length+1}return!i&&n&&r.push(Y(n,t)),r}(e,t)}),n=n.substring(e.length+2).trim();continue}if("("===n[0]){let e=L(n);if(e){s.push(V(e,t)),n=n.substring(e.length+2).trim();continue}}let o=e.length-n.length,l=Error("Unexpected character `"+e.substring(o,o+1)+"` at position "+(o+1)+". (`..."+e.substring(o-5,o+6)+"...`)");throw l.name="FormulaParseError",l}return s}function $(e){let t=0;for(let r=0,s=e.length,i,n=e.length-1;r<s;++r)(i=e.charCodeAt(r))>=65&&i<=90&&(t+=(i-64)*Math.pow(26,n)),--n;return t}let U={parseFormula:V},H=["+","-","*","/","^","=","<","<=",">",">="],_={isFormula:function(e){return Array.isArray(e)},isFunction:function(e){return"object"==typeof e&&!Array.isArray(e)&&"function"===e.type},isOperator:function(e){return"string"==typeof e&&H.indexOf(e)>=0},isRange:function(e){return"object"==typeof e&&!Array.isArray(e)&&"range"===e.type},isReference:function(e){return"object"==typeof e&&!Array.isArray(e)&&"reference"===e.type},isValue:function(e){return"boolean"==typeof e||"number"==typeof e||"string"==typeof e}},{isFormula:B,isFunction:Z,isOperator:K,isRange:X,isReference:q,isValue:G}=_,J=/ */,W=Number.MAX_VALUE/1.000000000001,z=Number.MAX_VALUE/1.000000000002,Q=Number.MAX_VALUE,ee={"^":3,"*":2,"/":2,"+":1,"-":1,"=":0,"<":0,"<=":0,">":0,">=":0},et={},er=/^[A-Z][A-Z\.]*$/;function es(e){switch(typeof e){case"boolean":return e?Q:W;case"string":return z;case"number":return e;default:return NaN}}function ei(e){return"string"==typeof e?e.toLowerCase().replace(J,"\0"):e}function en(e){switch(typeof e){case"boolean":return+!!e;case"string":return parseFloat(e.replace(",","."));case"number":return e;default:return NaN}}function eo(e,t){return G(e)?e:X(e)?t&&el(e,t)||[]:Z(e)?ec(e,t):eh(B(e)?e:[e],t)}function el(e,t){let r=t.getColumnIds().slice(e.beginColumn,e.endColumn+1),s=[];for(let i=0,n=r.length,o;i<n;++i){let n=t.getColumn(r[i],!0)||[];for(let l=e.beginRow,a=e.endRow+1;l<a;++l)"string"==typeof(o=n[l])&&"="===o[0]&&t!==t.getModified()&&(o=t.getModified().getCell(r[i],l)),s.push(G(o)?o:NaN)}return s}function ea(e,t){let r=t.getColumnIds()[e.column];if(r){let s=t.getCell(r,e.row);if("string"==typeof s&&"="===s[0]&&t!==t.getModified()){let s=t.getModified().getCell(r,e.row);return G(s)?s:NaN}if(G(s))return e.isNegative?-s:s}return NaN}function eu(e,t){(e.length<2||t.length<1)&&e.push(NaN);let s=e.pop(),i=e.pop(),n=t.pop();(0,r.defined)(s)&&(0,r.defined)(i)&&(0,r.defined)(n)?e.push(function(e,t,r){let s;switch(e){case"=":return ei(t)===ei(r);case"<":if(typeof t==typeof r)return ei(t)<ei(r);return es(t)<es(r);case"<=":if(typeof t==typeof r)return ei(t)<=ei(r);return es(t)<=es(r);case">":if(typeof t==typeof r)return ei(t)>ei(r);return es(t)>es(r);case">=":if(typeof t==typeof r)return ei(t)>=ei(r);return es(t)>=es(r)}switch(t=en(t),r=en(r),e){case"+":s=t+r;break;case"-":s=t-r;break;case"*":s=t*r;break;case"/":s=t/r;break;case"^":s=Math.pow(t,r);break;default:return NaN}return s%1?Math.round(1e9*s)/1e9:s}(n,i,s)):e.push(NaN)}function eh(e,t){let r=[],s=[],i=!0;for(let n=0,o=e.length;n<o;++n){let o,l=e[n];if(K(l)){if(i&&"-"===l)r.push(0),s.push("-"),i=!0;else{for(;s.length&&ee[s[s.length-1]]>=ee[l];)eu(r,s);s.push(l),i=!0}continue}if(G(l))o=l;else if(q(l))o=t?ea(l,t):NaN;else if(Z(l)){let e=ec(l,t);o=G(e)?e:NaN}else B(l)&&(o=eh(l,t));if(void 0===o)return NaN;r.push(o),i=!1}for(;s.length;)eu(r,s);return 1!==r.length?NaN:r[0]}function ec(e,t,r){let s=et[e.name];if(s)try{return s(e.args,t)}catch{return NaN}let i=Error(`Function "${e.name}" not found.`);throw i.name="FormulaProcessError",i}let ed={asNumber:en,getArgumentValue:eo,getArgumentsValues:function(e,t){let r=[];for(let s=0,i=e.length;s<i;++s)r.push(eo(e[s],t));return r},getRangeValues:el,getReferenceValue:ea,processFormula:eh,processorFunctions:et,registerProcessorFunction:function(e,t){return er.test(e)&&!et[e]&&!!(et[e]=t)},translateReferences:function e(t,r=0,s=0){for(let i=0,n=t.length,o;i<n;++i)Array.isArray(o=t[i])?e(o,r,s):Z(o)?e(o.args,r,s):X(o)?(o.beginColumnRelative&&(o.beginColumn+=r),o.beginRowRelative&&(o.beginRow+=s),o.endColumnRelative&&(o.endColumn+=r),o.endRowRelative&&(o.endRow+=s)):q(o)&&(o.columnRelative&&(o.column+=r),o.rowRelative&&(o.row+=s));return t}},{getArgumentValue:ef}=ed;ed.registerProcessorFunction("ABS",function(e,t){let r=ef(e[0],t);switch(typeof r){case"number":return Math.abs(r);case"object":{let e=[];for(let t=0,s=r.length,i;t<s;++t){if("number"!=typeof(i=r[t]))return NaN;e.push(Math.abs(i))}return e}default:return NaN}});let{getArgumentValue:ep}=ed;ed.registerProcessorFunction("AND",function e(t,r){for(let s=0,i=t.length,n;s<i;++s)if(!(n=ep(t[s],r))||"object"==typeof n&&!e(n,r))return!1;return!0});let{getArgumentsValues:em}=ed;ed.registerProcessorFunction("AVERAGE",function(e,t){let r=em(e,t),s=0,i=0;for(let e=0,t=r.length,n;e<t;++e)switch(typeof(n=r[e])){case"number":isNaN(n)||(++s,i+=n);break;case"object":for(let e=0,t=n.length,r;e<t;++e)"number"!=typeof(r=n[e])||isNaN(r)||(++s,i+=r)}return s?i/s:0});let{getArgumentValue:eg}=ed;ed.registerProcessorFunction("AVERAGEA",function(e,t){let r=0,s=0;for(let i=0,n=e.length,o;i<n;++i)switch(typeof(o=eg(e[i],t))){case"boolean":++r,s+=+!!o;continue;case"number":isNaN(o)||(++r,s+=o);continue;case"string":++r;continue;default:for(let e=0,t=o.length,i;e<t;++e)switch(typeof(i=o[e])){case"boolean":++r,s+=+!!i;continue;case"number":isNaN(i)||(++r,s+=i);continue;case"string":++r;continue}continue}return r?s/r:0}),ed.registerProcessorFunction("COUNT",function e(t,r){let s=ed.getArgumentsValues(t,r),i=0;for(let t=0,n=s.length,o;t<n;++t)switch(typeof(o=s[t])){case"number":!isNaN(o)&&++i;break;case"object":i+=e(o,r)}return i}),ed.registerProcessorFunction("COUNTA",function e(t,r){let s=ed.getArgumentsValues(t,r),i=0;for(let t=0,n=s.length,o;t<n;++t){switch(typeof(o=s[t])){case"number":if(isNaN(o))continue;break;case"object":i+=e(o,r);continue;case"string":if(!o)continue}++i}return i});let{getArgumentValue:ey}=ed;ed.registerProcessorFunction("IF",function(e,t){return ey(e[0],t)?ey(e[1],t):ey(e[2],t)});let{getArgumentValue:eb}=ed;ed.registerProcessorFunction("ISNA",function(e,t){let r=eb(e[0],t);return"number"!=typeof r||isNaN(r)});let{getArgumentsValues:ew}=ed;ed.registerProcessorFunction("MAX",function e(t,r){let s=ew(t,r),i=-1/0;for(let t=0,r=s.length,n;t<r;++t)switch(typeof(n=s[t])){case"number":n>i&&(i=n);break;case"object":(n=e(n))>i&&(i=n)}return isFinite(i)?i:0}),ed.registerProcessorFunction("MEDIAN",function(e,t){let r=[],s=ed.getArgumentsValues(e,t);for(let e=0,t=s.length,i;e<t;++e)switch(typeof(i=s[e])){case"number":isNaN(i)||r.push(i);break;case"object":for(let e=0,t=i.length,s;e<t;++e)"number"!=typeof(s=i[e])||isNaN(s)||r.push(s)}let i=r.length;if(!i)return NaN;let n=Math.floor(i/2);return i%2?r[n]:(r[n-1]+r[n])/2});let{getArgumentsValues:eC}=ed;ed.registerProcessorFunction("MIN",function e(t,r){let s=eC(t,r),i=1/0;for(let t=0,r=s.length,n;t<r;++t)switch(typeof(n=s[t])){case"number":n<i&&(i=n);break;case"object":(n=e(n))<i&&(i=n)}return isFinite(i)?i:0});let{getArgumentValue:eR}=ed;function eN(e,t){let r={},s=ed.getArgumentsValues(e,t);for(let e=0,t=s.length,i;e<t;++e)switch(typeof(i=s[e])){case"number":isNaN(i)||(r[i]=(r[i]||0)+1);break;case"object":for(let e=0,t=i.length,s;e<t;++e)"number"!=typeof(s=i[e])||isNaN(s)||(r[s]=(r[s]||0)+1)}return r}function eT(e,t){let r=eN(e,t),s=Object.keys(r);if(!s.length)return NaN;let i=parseFloat(s[0]),n=r[s[0]];for(let e=1,t=s.length,o,l,a;e<t;++e)n<(a=r[o=s[e]])?(i=parseFloat(o),n=a):n===a&&i>(l=parseFloat(o))&&(i=l,n=a);return n>1?i:NaN}ed.registerProcessorFunction("MOD",function(e,t){let r=eR(e[0],t),s=eR(e[1],t);return("object"==typeof r&&(r=r[0]),"object"==typeof s&&(s=s[0]),"number"!=typeof r||"number"!=typeof s||0===s)?NaN:r%s}),ed.registerProcessorFunction("MODE",eT),ed.registerProcessorFunction("MODE.MULT",function(e,t){let r=eN(e,t),s=Object.keys(r);if(!s.length)return NaN;let i=[parseFloat(s[0])],n=r[s[0]];for(let e=1,t=s.length,o,l;e<t;++e)n<(l=r[o=s[e]])?(i=[parseFloat(o)],n=l):n===l&&i.push(parseFloat(o));return n>1?i:NaN}),ed.registerProcessorFunction("MODE.SNGL",eT);let{getArgumentValue:eO}=ed;ed.registerProcessorFunction("NOT",function(e,t){let r=eO(e[0],t);switch("object"==typeof r&&(r=r[0]),typeof r){case"boolean":case"number":return!r}return NaN});let{getArgumentValue:ev}=ed;ed.registerProcessorFunction("OR",function e(t,r){for(let s=0,i=t.length,n;s<i;++s)if("object"==typeof(n=ev(t[s],r))){if(e(n,r))return!0}else if(n)return!0;return!1});let{getArgumentsValues:eA}=ed;ed.registerProcessorFunction("PRODUCT",function e(t,r){let s=eA(t,r),i=1,n=!1;for(let t=0,o=s.length,l;t<o;++t)switch(typeof(l=s[t])){case"number":isNaN(l)||(n=!0,i*=l);break;case"object":n=!0,i*=e(l,r)}return n?i:0}),ed.registerProcessorFunction("SUM",function e(t,r){let s=ed.getArgumentsValues(t,r),i=0;for(let t=0,n=s.length,o;t<n;++t)switch(typeof(o=s[t])){case"number":isNaN(o)||(i+=o);break;case"object":i+=e(o,r)}return i});let{getArgumentValue:eM}=ed;ed.registerProcessorFunction("XOR",function(e,t){for(let r=0,s=e.length,i,n;r<s;++r)switch(typeof(n=eM(e[r],t))){case"boolean":case"number":if(void 0===i)i=!!n;else if(!!n!==i)return!0;break;case"object":for(let e=0,t=n.length,r;e<t;++e)switch(typeof(r=n[e])){case"boolean":case"number":if(void 0===i)i=!!r;else if(!!r!==i)return!0}}return!1});let eE={...U,...ed,..._};class eI extends N{constructor(e){let t=(0,r.merge)(eI.defaultOptions,e);super(t),this.headers=[],this.dataTypes=[],this.options=t}parse(e,t){let s=this.dataTypes,i=(0,r.merge)(this.options,e),{beforeParse:n,lineDelimiter:o,firstRowAsNames:l,itemDelimiter:a}=i,u,h=0,{csv:c,startRow:d,endRow:f}=i,p,m=[];if(this.emit({type:"parse",columns:m,detail:t,headers:this.headers}),c&&n&&(c=n(c)),c){if(u=c.replace(/\r\n|\r/g,"\n").split(o||"\n"),(!d||d<0)&&(d=0),(!f||f>=u.length)&&(f=u.length-1),a||(this.guessedItemDelimiter=this.guessDelimiter(u)),l){let e=u[0].split(a||this.guessedItemDelimiter||",");for(let t=0;t<e.length;t++)e[t]=e[t].trim().replace(/^["']|["']$/g,"");this.headers=e,d++}let e=0;for(h=d;h<=f;h++)"#"===u[h][0]?e++:this.parseCSVRow(m,u[h],h-d-e);s.length&&s[0].length&&"date"===s[0][1]&&!this.options.dateFormat&&this.deduceDateFormat(m[0],null,!0);for(let e=0,t=m.length;e<t;++e){p=m[e];for(let t=0,r=p.length;t<r;++t)if(p[t]&&"string"==typeof p[t]){let r=this.convertByType(p[t]);r instanceof Date&&(r=r.getTime()),m[e][t]=r}}}return m.forEach(e=>{e.length=Math.max(...m.map(e=>e.length))}),this.emit({type:"afterParse",columns:m,detail:t,headers:this.headers}),w(m,this.headers)}parseCSVRow(e,t,r){let s=this,i=s.dataTypes,{startColumn:n,endColumn:o}=s.options,l=s.options.itemDelimiter||s.guessedItemDelimiter,{decimalPoint:a}=s.options;a&&a!==l||(a=s.guessedDecimalPoint||".");let u=0,h="",c="",d=0,f=0,p=e=>{h=t[e]},m=e=>{i.length<f+1&&i.push([e]),i[f][i[f].length-1]!==e&&i[f].push(e)},g=()=>{if(n>d||d>o){++d,c="";return}if("string"==typeof c){let e=parseFloat(c);!isNaN(e)&&isFinite(Number(c))?(c=e,m("number")):isNaN(Date.parse(c))?m("string"):(c=c.replace(/\//g,"-"),m("date"))}else m("number");if(e.length<f+1&&e.push([]),"number"!=typeof c&&"number"!==C(c,s)&&a){let e=c;"number"!==C(c=c.replace(a,"."),s)&&(c=e)}e[f][r]=c,c="",++f,++d};if(t.trim().length&&"#"!==t.trim()[0]){for(;u<t.length;u++){if(p(u),"#"===h&&!/^#[A-F\d]{3,3}|[A-F\d]{6,6}/i.test(t.substring(u)))return void g();if('"'===h)for(p(++u);u<t.length&&'"'!==h;)c+=h,p(++u);else h===l?g():c+=h}g()}}guessDelimiter(e){let t=0,r=0,s,i={",":0,";":0," ":0},n=e.length;for(let s=0;s<n;s++){let n=!1,o,l,a,u="";if(s>13)break;let h=e[s];for(let e=0;e<h.length&&(o=h[e],l=h[e+1],a=h[e-1],"#"!==o);e++){if('"'===o)if(n){if('"'!==a&&'"'!==l){for(;" "===l&&e<h.length;)l=h[++e];void 0!==i[l]&&i[l]++,n=!1}}else n=!0;else void 0!==i[o]?(isNaN(Date.parse(u=u.trim()))?(isNaN(Number(u))||!isFinite(Number(u)))&&i[o]++:i[o]++,u=""):u+=o;","===o&&r++,"."===o&&t++}}return i[";"]>i[","]?s=";":(i[","]>i[";"],s=","),t>r?this.guessedDecimalPoint=".":this.guessedDecimalPoint=",",s}}eI.defaultOptions={...N.defaultOptions,lineDelimiter:"\n",startColumn:0,endColumn:Number.MAX_VALUE,startRow:0,endRow:Number.MAX_VALUE},N.registerType("CSV",eI);class ex extends p{constructor(e){let t=(0,r.merge)(ex.defaultOptions,e);super(t),this.options=t,t.enablePolling&&this.startPolling(1e3*Math.max(t.dataRefreshRate||0,1))}emit(e){(0,r.fireEvent)(this,e.type,e)}load(e){let t=this,s=t.options,{csv:i,csvURL:n,dataTables:o,decimalPoint:l}=s;return t.emit({type:"load",csv:i}),Promise.resolve(n?fetch(n,{signal:t?.pollingController?.signal}).then(e=>e.text()):i||"").then(e=>(e&&this.initConverters(e,e=>{let{firstRowAsNames:t=s.firstRowAsNames,beforeParse:i=s.beforeParse}=o?.find(t=>t.key===e)||{};return new eI((0,r.merge)(s,{decimalPoint:l,firstRowAsNames:t,beforeParse:i}))},(e,t)=>e.parse({csv:t})),t.applyTableModifiers().then(()=>e))).then(r=>(t.emit({type:"afterLoad",detail:e,csv:r}),t)).catch(r=>{throw t.emit({type:"loadError",detail:e,error:r}),r})}}ex.defaultOptions={id:"csv-connector",type:"CSV",csv:"",csvURL:"",enablePolling:!1,dataRefreshRate:1,firstRowAsNames:!0},p.registerType("CSV",ex);class eF extends N{constructor(e){let t=(0,r.merge)(eF.defaultOptions,e);super(t),this.headerColumnIds=[],this.headers=[],this.options=t}parse(e,t){let{beforeParse:s,orientation:i,firstRowAsNames:n,columnIds:o}=e=(0,r.merge)(this.options,e),l=e.data;if(!l)return{};this.headers=[];let a=[];return this.emit({type:"parse",columns:a,detail:t,headers:this.headers}),s&&(l=s(l)),l=l.slice(),"columns"===i?this.parseColumnsOrientation(a,l,n,o):"rows"===i&&this.parseRowsOrientation(a,l,n,o),this.emit({type:"afterParse",columns:a,detail:t,headers:this.headers}),w(a,this.headers)}parseColumnsOrientation(e,t,s,i){for(let n=0,o=t.length;n<o;n++){let o=t[n];if(!Array.isArray(o))return;Array.isArray(this.headers)?(s?this.headers.push(`${o.shift()}`):i&&Array.isArray(i)&&this.headers.push(i[n]),e.push(o)):(0,r.error)("JSONConverter: Invalid `columnIds` option.",!1)}}parseRowsOrientation(e,t,s,i){s?this.headers=t.shift():i&&(this.headerColumnIds=i);for(let n=0,o=t.length;n<o;n++){let o=t[n];(0,r.isArray)(o)||(o=this.convertItemToRow(o,i));for(let t=0,i=o.length;t<i;t++)e.length<t+1&&e.push([]),e[t].push(o[t]),s||0!==n||(Array.isArray(this.headerColumnIds)?this.headers.push(this.headerColumnIds[t]||t.toString()):(0,r.error)("JSONConverter: Invalid `columnIds` option.",!1))}}convertItemToRow(e,t){let s=this;if(t&&!Array.isArray(t)){let i=[];return(0,r.objectEach)(t,(t,r)=>{i.push(t.reduce((e,t)=>e[t],e)),0>s.headers.indexOf(r)&&s.headers.push(r)}),i}return s.headerColumnIds=Object.keys(e),Object.values(e)}}eF.defaultOptions={...N.defaultOptions,orientation:"rows"},N.registerType("JSON",eF);class eD extends p{constructor(e){let t=(0,r.merge)(eD.defaultOptions,e);super(t),this.options=t,t.enablePolling&&this.startPolling(1e3*Math.max(t.dataRefreshRate||0,1))}emit(e){(0,r.fireEvent)(this,e.type,e)}load(e){let t=this,r=t.options,{data:s,dataUrl:i,dataTables:n}=r;return t.emit({type:"load",detail:e,data:s}),Promise.resolve(i?fetch(i,{signal:t?.pollingController?.signal}).then(e=>e.json()).catch(r=>{t.emit({type:"loadError",detail:e,error:r}),console.warn(`Unable to fetch data from ${i}.`)}):s||[]).then(async e=>(e&&this.initConverters(e,t=>{let{columnIds:s=r.columnIds,firstRowAsNames:i=r.firstRowAsNames,orientation:o=r.orientation,beforeParse:l=r.beforeParse}=n?.find(e=>e.key===t)||{};return new eF({data:e,columnIds:s,firstRowAsNames:i,orientation:o,beforeParse:l})},(e,t)=>e.parse({data:t})),t.applyTableModifiers().then(()=>e??[]))).then(r=>(t.emit({type:"afterLoad",detail:e,data:r}),t)).catch(r=>{throw t.emit({type:"loadError",detail:e,error:r}),r})}}eD.defaultOptions={type:"JSON",id:"json-connector",data:[],enablePolling:!1,dataRefreshRate:0,firstRowAsNames:!0,orientation:"rows"},p.registerType("JSON",eD);class eP extends N{constructor(e){let t=(0,r.merge)(eP.defaultOptions,e);super(t),this.header=[],this.options=t}parse(e,t){let s,i=(0,r.merge)(this.options,e),n=(i.json?.values||[]).map(e=>e.slice());if(0===n.length)return{};this.header=[],this.emit({type:"parse",columns:[],detail:t,headers:this.header});let{beforeParse:o,json:l}=i;o&&l&&(n=o(l.values));for(let e=0,t=n.length;e<t;e++){s=n[e],this.header[e]=i.firstRowAsNames?`${s.shift()}`:(0,r.uniqueKey)();for(let t=0,r=s.length;t<r;++t){var a;let r=s[t];a=r,"[object Date]"===Object.prototype.toString.call(a)&&(r=r.getTime()),n[e][t]=r}}return this.emit({type:"afterParse",columns:n,detail:t,headers:this.header}),w(n,this.header)}}eP.defaultOptions={...N.defaultOptions},N.registerType("GoogleSheets",eP);class ej extends p{constructor(e){let t=(0,r.merge)(ej.defaultOptions,e);super(t),this.options=t}emit(e){(0,r.fireEvent)(this,e.type,e)}load(e){let t=this,r=t.options,{dataRefreshRate:s,enablePolling:i,googleAPIKey:n,googleSpreadsheetKey:o,dataTables:l}=r,a=function(e,t,r={}){let s=new URL(`https://sheets.googleapis.com/v4/spreadsheets/${t}/values/`),i=r.onlyColumnIds?"A1:Z1":function(e={}){let{endColumn:t,endRow:r,googleSpreadsheetRange:s,startColumn:i,startRow:n}=e;return s||(eL[i||0]||"A")+(Math.max(n||0,0)+1)+":"+(eL[t??25]||"Z")+(r?Math.max(r,0):"Z")}(r);s.pathname+=i;let n=s.searchParams;return n.set("alt","json"),r.onlyColumnIds||(n.set("dateTimeRenderOption","FORMATTED_STRING"),n.set("majorDimension","COLUMNS"),n.set("valueRenderOption","UNFORMATTED_VALUE")),n.set("prettyPrint","false"),n.set("key",e),s.href}(n,o,r);if(t.emit({type:"load",detail:e,url:a}),!URL.canParse(a))throw Error("Invalid URL: "+a);return fetch(a,{signal:t?.pollingController?.signal}).then(e=>e.json()).then(e=>{if("object"==typeof e&&e&&"object"==typeof e.error&&e.error&&"number"==typeof e.error.code&&"string"==typeof e.error.message&&"string"==typeof e.error.status)throw Error(e.error.message);return this.initConverters(e,e=>{let{firstRowAsNames:t=r.firstRowAsNames,beforeParse:s=r.beforeParse}=l?.find(t=>t.key===e)||{};return new eP({firstRowAsNames:t,beforeParse:s})},(e,t)=>e.parse({json:t})),t.applyTableModifiers()}).then(()=>(t.emit({type:"afterLoad",detail:e,url:a}),i&&setTimeout(()=>t.load(),1e3*Math.max(s||0,1)),t)).catch(r=>{throw t.emit({type:"loadError",detail:e,error:r}),r})}}ej.defaultOptions={id:"google-sheets-connector",type:"GoogleSheets",googleAPIKey:"",googleSpreadsheetKey:"",enablePolling:!1,dataRefreshRate:2,firstRowAsNames:!0};let eL="ABCDEFGHIJKLMNOPQRSTUVWXYZ";p.registerType("GoogleSheets",ej);class ek extends N{constructor(e){let t=(0,r.merge)(ek.defaultOptions,e);super(t),this.headers=[],this.options=t,t.tableElement&&(this.tableElement=t.tableElement,this.tableElementID=t.tableElement.id)}export(e,t=this.options){let r=!1!==t.firstRowAsNames,s=t.useMultiLevelHeaders,i=e.getSortedColumns(),n=Object.keys(i),o=[],l=n.length,a=[],u="";if(r){let e=[];if(s){for(let t of n){let r=i[t];Array.isArray(r)||(r=Array.from(r));let s=(r.shift()||"").toString();i[t]=r,e.push(s)}u=this.getTableHeaderHTML(n,e,t)}else u=this.getTableHeaderHTML(void 0,n,t)}for(let e=0;e<l;e++){let t=i[n[e]],r=t.length;for(let s=0;s<r;s++){let r=t[s];a[s]||(a[s]=[]),"string"!=typeof r&&"number"!=typeof r&&void 0!==r&&(r=(r||"").toString()),a[s][e]=this.getCellHTMLFromValue(e?"td":"th",null,e?"":'scope="row"',r),e===l-1&&o.push("<tr>"+a[s].join("")+"</tr>")}}let h="";return t.tableCaption&&(h='<caption class="highcharts-table-caption">'+t.tableCaption+"</caption>"),"<table>"+h+u+"<tbody>"+o.join("")+"</tbody></table>"}getCellHTMLFromValue(e,t,r,s,i){let n=s,o="text"+(t?" "+t:"");return"number"==typeof n?(n=n.toString(),","===i&&(n=n.replace(".",i)),o="number"):s||(n="",o="empty"),"<"+e+(r?" "+r:"")+' class="'+o+'">'+n+"</"+e+">"}getTableHeaderHTML(e=[],t=[],r=this.options){let{useMultiLevelHeaders:s,useRowspanHeaders:i}=r,n="<thead>",o=0,l=t&&t.length,a,u=0,h;if(s&&e&&t&&!function(e,t){let r=e.length;if(t.length!==r)return!1;for(;--r;)if(e[r]!==t[r])return!1;return!0}(e,t)){for(n+="<tr>";o<l;++o)(a=e[o])===e[o+1]?++u:u?(n+=this.getCellHTMLFromValue("th","highcharts-table-topheading",'scope="col" colspan="'+(u+1)+'"',a),u=0):(a===t[o]?i?(h=2,t.splice(o,1)):(h=1,t[o]=""):h=1,n+=this.getCellHTMLFromValue("th","highcharts-table-topheading",'scope="col"'+(h>1?' valign="top" rowspan="'+h+'"':""),a));n+="</tr>"}if(t){for(n+="<tr>",o=0,l=t.length;o<l;++o)void 0!==t[o]&&(n+=this.getCellHTMLFromValue("th",null,'scope="col"',t[o]));n+="</tr>"}return n+"</thead>"}parse(e,t){let s=[],i=[],n=(0,r.merge)(this.options,e),{endRow:o,startColumn:l,endColumn:a,firstRowAsNames:u}=n,h=n.tableElement||this.tableElement;if(!(h instanceof HTMLElement))return this.emit({type:"parseError",columns:s,detail:t,headers:i,error:"Not a valid HTML Table"}),{};this.tableElement=h,this.tableElementID=h.id,this.emit({type:"parse",columns:s,detail:t,headers:this.headers});let c=h.getElementsByTagName("tr"),d=c.length,f=0,p,{startRow:m}=n;if(u&&d){let e=c[0].children,t=e.length;for(let r=l;r<t&&!(r>a);r++)("TD"===(p=e[r]).tagName||"TH"===p.tagName)&&i.push(p.innerHTML);m++}for(;f<d;){if(f>=m&&f<=o){let e=c[f].children,t=e.length,r=0;for(;r<t;){let t=r-l,i=s[t];if(("TD"===(p=e[r]).tagName||"TH"===p.tagName)&&r>=l&&r<=a){s[t]||(s[t]=[]);let e=this.convertByType(p.innerHTML);e instanceof Date&&(e=e.getTime()),s[t][f-m]=e;let r=1;for(;f-m>=r&&void 0===i[f-m-r];)i[f-m-r]=null,r++}r++}}f++}return this.headers=i,this.emit({type:"afterParse",columns:s,detail:t,headers:i}),w(s,this.headers)}}ek.defaultOptions={...N.defaultOptions,useRowspanHeaders:!0,useMultiLevelHeaders:!0,startColumn:0,endColumn:Number.MAX_VALUE,startRow:0,endRow:Number.MAX_VALUE},N.registerType("HTMLTable",ek);let{win:eY}=s();class eS extends p{constructor(e){let t=(0,r.merge)(eS.defaultOptions,e);super(t),this.options=t,this.converter=new ek(t)}async load(e){let t,s=this.options,i=this.converter,n=this.getTable(),o=s.htmlTable;if(this.emit({type:"load",detail:e}),"string"==typeof o?(this.tableID=o,t=eY.document.getElementById(o)):(t=o,this.tableID=t.id),this.tableElement=t||void 0,!this.tableElement){let t="HTML table not provided, or element with ID not found";return this.emit({type:"loadError",detail:e,error:t}),Promise.reject(Error(t))}let l=i.parse((0,r.merge)({tableElement:this.tableElement},s),e);return n.deleteColumns(),n.setColumns(l),await this.applyTableModifiers(),this.emit({type:"afterLoad",detail:e}),this}}eS.defaultOptions={id:"HTML-table-connector",type:"HTMLTable",htmlTable:""},p.registerType("HTMLTable",eS);class eV extends n{constructor(e,...t){super(),this.chain=t,this.options=(0,r.merge)(eV.defaultOptions,e);let s=this.options.chain||[];for(let e=0,r=s.length,i,o;e<r;++e)(i=s[e]).type&&(o=n.types[i.type])&&t.push(new o(i))}add(e,t){this.emit({type:"addModifier",detail:t,modifier:e}),this.chain.push(e),this.emit({type:"addModifier",detail:t,modifier:e})}clear(e){this.emit({type:"clearChain",detail:e}),this.chain.length=0,this.emit({type:"afterClearChain",detail:e})}async modify(e,t){let r=this.options.reverse?this.chain.slice().reverse():this.chain.slice();e.modified||(e.modified=e.clone(!1,t));let s=e;for(let i=0,n=r.length;i<n;++i){try{await r[i].modify(s,t)}catch(r){throw this.emit({type:"error",detail:t,table:e}),r}s=s.getModified()}return e.modified=s,e}modifyTable(e,t){this.emit({type:"modify",detail:t,table:e});let r=this.options.reverse?this.chain.reverse():this.chain.slice(),s=e.getModified();for(let e=0,i=r.length;e<i;++e)s=r[e].modifyTable(s,t).getModified();return e.modified=s,this.emit({type:"afterModify",detail:t,table:e}),e}remove(e,t){let r=this.chain;this.emit({type:"removeModifier",detail:t,modifier:e}),r.splice(r.indexOf(e),1),this.emit({type:"afterRemoveModifier",detail:t,modifier:e})}emit(e){(0,r.fireEvent)(this,e.type,e)}on(e,t){return(0,r.addEvent)(this,e,t)}}eV.defaultOptions={type:"Chain"},n.registerType("Chain",eV);class e$ extends n{constructor(e){super(),this.options=(0,r.merge)(e$.defaultOptions,e)}modifyTable(e,t){this.emit({type:"modify",detail:t,table:e});let r=e.getModified();if(e.hasColumns(["columnIds"])){let t=(e.deleteColumns(["columnIds"])||{}).columnIds||[],s={},i=[];for(let e=0,r=t.length;e<r;++e)i.push(""+t[e]);for(let t=0,r=e.getRowCount(),n;t<r;++t)(n=e.getRow(t))&&(s[i[t]]=n);r.deleteColumns(),r.setColumns(s)}else{let t={};for(let r=0,s=e.getRowCount(),i;r<s;++r)(i=e.getRow(r))&&(t[`${r}`]=i);t.columnIds=e.getColumnIds(),r.deleteColumns(),r.setColumns(t)}return this.emit({type:"afterModify",detail:t,table:e}),e}}e$.defaultOptions={type:"Invert"},n.registerType("Invert",e$);class eU extends n{constructor(e){super(),this.options={...eU.defaultOptions,...e}}modifyTable(e,t){this.emit({type:"modify",detail:t,table:e});let r=this.options.alternativeSeparators,s=this.options.formulaColumns||e.getColumnIds(),i=e.getModified();for(let t=0,r=s.length,n;t<r;++t)n=s[t],s.indexOf(n)>=0&&i.setColumn(n,this.processColumn(e,n));let n=this.options.columnFormulas||[];for(let t=0,s=n.length,o,l;t<s;++t)o=n[t],l=U.parseFormula(o.formula,r),i.setColumn(o.column,this.processColumnFormula(l,e,o.rowStart,o.rowEnd));return this.emit({type:"afterModify",detail:t,table:e}),e}processColumn(e,t,r=0){let s=this.options.alternativeSeparators,i=(e.getColumn(t,!0)||[]).slice(r>0?r:0);for(let t=0,r=i.length,n=[],o;t<r;++t)if("string"==typeof(o=i[t])&&"="===o[0])try{n=""===o?n:U.parseFormula(o.substring(1),s),i[t]=ed.processFormula(n,e)}catch{i[t]=NaN}return i}processColumnFormula(e,t,r=0,s=t.getRowCount()){r=r>=0?r:0,s=s>=0?s:t.getRowCount()+s;let i=[],n=t.getModified();for(let t=0,o=s-r;t<o;++t)try{i[t]=ed.processFormula(e,n)}catch{i[t]=NaN}finally{e=ed.translateReferences(e,0,1)}return i}}eU.defaultOptions={type:"Math",alternativeSeparators:!1},n.registerType("Math",eU);class eH extends n{constructor(e){super(),this.options=(0,r.merge)(eH.defaultOptions,e)}modifyTable(e,t){this.emit({type:"modify",detail:t,table:e});let{start:r,end:s}=this.options;r=Math.max(0,r||0);let i=Math.max((s=Math.min(s||1/0,e.getRowCount()))-r,0),n=e.getModified();return n.deleteRows(),n.setRows(e.getRows(r,i)),n.setOriginalRowIndexes(Array.from({length:i},(t,s)=>e.getOriginalRowIndex(r+s))),this.emit({type:"afterModify",detail:t,table:e}),e}}eH.defaultOptions={type:"Range",start:0,end:1/0},n.registerType("Range",eH);class e_ extends n{static ascending(e,t){return(e||0)<(t||0)?-1:+((e||0)>(t||0))}static descending(e,t){return(t||0)<(e||0)?-1:+((t||0)>(e||0))}static compareFactory(e,t){return t?"desc"===e?(e,r)=>-t(e,r):t:"asc"===e?e_.ascending:e_.descending}constructor(e){super(),this.options=(0,r.merge)(e_.defaultOptions,e)}getRowReferences(e){let t=e.getRows(),r=[];for(let e=0,s=t.length;e<s;++e)r.push({index:e,row:t[e]});return r}modifyTable(e,t){this.emit({type:"modify",detail:t,table:e});let r=e.getColumnIds(),s=e.getRowCount(),i=this.getRowReferences(e),{direction:n,orderInColumn:o,compare:l}=this.options,a=e.getModified(),u="columns"in this.options?this.options.columns:[this.options.orderByColumn],h=[];for(let e=0,t=u.length;e<t;++e){let t=u[e],s="string"==typeof t,i=s?t:t.column,o=r.indexOf(i);-1!==o&&h.push({columnIndex:o,compare:e_.compareFactory(s?n:t.direction||n,s?l:t.compare||l)})}if(h.length&&i.sort((e,t)=>{for(let r=0,s=h.length;r<s;++r){let{columnIndex:s,compare:i}=h[r],n=i(e.row[s],t.row[s]);if(n)return n}return e.index-t.index}),o){let e=[];for(let t=0;t<s;++t)e[i[t].index]=t;a.setColumns({[o]:e})}else{let t,r=[],n=[];for(let o=0;o<s;++o)t=i[o],r.push(e.getOriginalRowIndex(t.index)),n.push(t.row);a.setRows(n,0),a.setOriginalRowIndexes(r)}return this.emit({type:"afterModify",detail:t,table:e}),e}}e_.defaultOptions={type:"Sort",direction:"desc",orderByColumn:"y"},n.registerType("Sort",e_);class eB extends n{static compile(e){if((0,r.isFunction)(e))return e;let t=e.operator;switch(t){case"and":{let t=e.conditions.map(e=>this.compile(e));return(e,r,s)=>t.every(t=>t(e,r,s))}case"or":{let t=e.conditions.map(e=>this.compile(e));return(e,r,s)=>t.some(t=>t(e,r,s))}case"not":{let t=this.compile(e.condition);return(e,r,s)=>!t(e,r,s)}}let{columnId:s,value:i}=e;switch(t){case"==":return e=>e[s]==i;case"===":return e=>e[s]===i;case"!=":return e=>e[s]!=i;case"!==":return e=>e[s]!==i;case">":return e=>(e[s]||0)>(i||0);case">=":return e=>(e[s]||0)>=(i||0);case"<":return e=>(e[s]||0)<(i||0);case"<=":return e=>(e[s]||0)<=(i||0);case"empty":return e=>null===e[s]||""===e[s]}let{ignoreCase:n}=e,o=e=>{let t=""+e;return n??!0?t.toLowerCase():t};return"contains"===t?e=>o(e[s]).includes(o(i)):e=>o(e[s])[t](o(i))}constructor(e){super(),this.options=(0,r.merge)(eB.defaultOptions,e)}modifyTable(e,t){this.emit({type:"modify",detail:t,table:e});let{condition:r}=this.options;if(!r)return e;let s=eB.compile(r),i=e.getModified(),n=[],o=[];for(let t=0,r=e.getRowCount();t<r;++t){let r=e.getRowObject(t);r&&s(r,e,t)&&(n.push(r),o.push(e.getOriginalRowIndex(t)))}return i.deleteRows(),i.setRows(n),i.setOriginalRowIndexes(o),this.emit({type:"afterModify",detail:t,table:e}),e}}eB.defaultOptions={type:"Filter"},n.registerType("Filter",eB);let eZ=s();eZ.DataConnector=eZ.DataConnector||p,eZ.DataConverter=eZ.DataConverter||N,eZ.DataCursor=eZ.DataCursor||O,eZ.DataModifier=eZ.DataModifier||n,eZ.DataPool=eZ.DataPool||v,eZ.DataTable=eZ.DataTable||d,eZ.Formula=eZ.Formula||eE;let eK=s();export{eK as default};
@@ -1,6 +1,6 @@
1
1
  // SPDX-License-Identifier: LicenseRef-Highcharts
2
2
  /**
3
- * @license Highcharts JS v13.0.1 (2026-08-17)
3
+ * @license Highcharts JS v13.0.2 (2026-08-27)
4
4
  * @module highcharts/modules/data-tools
5
5
  * @requires highcharts
6
6
  *
@@ -1711,6 +1711,23 @@ class DataTable extends Data_DataTableCore {
1711
1711
  });
1712
1712
  }
1713
1713
  }
1714
+ /**
1715
+ * Type guard narrowing an arbitrary value to a valid table cell value.
1716
+ *
1717
+ * @param {*} value
1718
+ * Candidate value.
1719
+ *
1720
+ * @return {boolean}
1721
+ * `true` when the value is a valid `CellType`.
1722
+ */
1723
+ function isCellValue(value) {
1724
+ const valueType = typeof value;
1725
+ return (value === null ||
1726
+ valueType === 'undefined' ||
1727
+ valueType === 'boolean' ||
1728
+ valueType === 'number' ||
1729
+ valueType === 'string');
1730
+ }
1714
1731
  /* *
1715
1732
  *
1716
1733
  * Default Export
@@ -1884,7 +1901,7 @@ class DataConnector {
1884
1901
  getColumnOrder() {
1885
1902
  const connector = this, columns = connector.metadata.columns, names = Object.keys(columns || {});
1886
1903
  if (names.length) {
1887
- return names.sort((a, b) => ((0,external_highcharts_src_js_default_namespaceObject.pick)(columns[a].index, 0) - (0,external_highcharts_src_js_default_namespaceObject.pick)(columns[b].index, 0)));
1904
+ return names.sort((a, b) => ((columns[a].index ?? 0) - (columns[b].index ?? 0)));
1888
1905
  }
1889
1906
  }
1890
1907
  /**
@@ -7111,7 +7128,7 @@ function buildQueryRange(options = {}) {
7111
7128
  return googleSpreadsheetRange || ((alphabet[startColumn || 0] || 'A') +
7112
7129
  (Math.max((startRow || 0), 0) + 1) +
7113
7130
  ':' +
7114
- (alphabet[(0,external_highcharts_src_js_default_namespaceObject.pick)(endColumn, 25)] || 'Z') +
7131
+ (alphabet[(endColumn ?? 25)] || 'Z') +
7115
7132
  (endRow ?
7116
7133
  Math.max(endRow, 0) :
7117
7134
  'Z'));
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Highcharts JS v13.0.1 (2026-08-17)
2
+ * Highcharts JS v13.0.2 (2026-08-27)
3
3
  * @module highcharts/modules/data
4
4
  * @requires highcharts
5
5
  *
@@ -1,6 +1,6 @@
1
1
  // SPDX-License-Identifier: LicenseRef-Highcharts
2
2
  /**
3
- * @license Highcharts JS v13.0.1 (2026-08-17)
3
+ * @license Highcharts JS v13.0.2 (2026-08-27)
4
4
  * @module highcharts/modules/data
5
5
  * @requires highcharts
6
6
  *
@@ -1,5 +1,5 @@
1
1
  let t;/**
2
- * Highstock JS v13.0.1 (2026-08-17)
2
+ * Highstock JS v13.0.2 (2026-08-27)
3
3
  * @module highcharts/modules/datagrouping
4
4
  * @requires highcharts
5
5
  *
@@ -10,4 +10,4 @@ let t;/**
10
10
  *
11
11
  * A commercial license may be required depending on use,
12
12
  * see www.highcharts.com/license
13
- */import*as e from"../highcharts.js";let i={};i.n=t=>{let e=t&&t.__esModule?()=>t.default:()=>t;return i.d(e,{a:e}),e},i.d=(t,e)=>{if(Array.isArray(e))for(var o=0;o<e.length;){var a=e[o++],r=e[o++];i.o(t,a)?0===r&&o++:0===r?Object.defineProperty(t,a,{enumerable:!0,value:e[o++]}):Object.defineProperty(t,a,{enumerable:!0,get:r})}else for(var a in e)i.o(e,a)&&!i.o(t,a)&&Object.defineProperty(t,a,{enumerable:!0,get:e[a]})},i.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);let o=e.default;var a,r=i.n(o);let n={};function s(t){let e=t.length,i=l(t);return(0,o.isNumber)(i)&&e&&(i=(0,o.correctFloat)(i/e)),i}function l(t){let e=t.length,i;if(!e&&t.hasNulls)i=null;else if(e)for(i=0;e--;)i+=t[e];return i}let u={average:s,averages:function(){let t=[];return[].forEach.call(arguments,function(e){t.push(s(e))}),void 0===t[0]?void 0:t},close:function(t){return t.length?t[t.length-1]:t.hasNulls?null:void 0},high:function(t){return t.length?(0,o.arrayMax)(t):t.hasNulls?null:void 0},hlc:function(t,e,i){if(t=n.high(t),e=n.low(e),i=n.close(i),(0,o.isNumber)(t)||(0,o.isNumber)(e)||(0,o.isNumber)(i))return[t,e,i]},low:function(t){return t.length?(0,o.arrayMin)(t):t.hasNulls?null:void 0},ohlc:function(t,e,i,a){if(t=n.open(t),e=n.high(e),i=n.low(i),a=n.close(a),(0,o.isNumber)(t)||(0,o.isNumber)(e)||(0,o.isNumber)(i)||(0,o.isNumber)(a))return[t,e,i,a]},open:function(t){return t.length?t[0]:t.hasNulls?null:void 0},range:function(t,e){return(t=n.low(t),e=n.high(e),(0,o.isNumber)(t)||(0,o.isNumber)(e))?[t,e]:null===t&&null===e?null:void 0},sum:l};(0,o.extend)(n,u);let h={groupPixelWidth:2,dateTimeLabelFormats:{millisecond:["%[AebHMSL]","%[AebHMSL]","-%[HMSL]"],second:["%[AebHMS]","%[AebHMS]","-%[HMS]"],minute:["%[AebHM]","%[AebHM]","-%[HM]"],hour:["%[AebHM]","%[AebHM]","-%[HM]"],day:["%[AebY]","%[Aeb]","-%[AebY]"],week:["%v %[AebY]","%[Aeb]","-%[AebY]"],month:["%[BY]","%[B]","-%[BY]"],year:["%[Y]","%[Y]","-%[Y]"]}},p={line:{},spline:{},area:{},areaspline:{},arearange:{},column:{groupPixelWidth:10},columnrange:{groupPixelWidth:10},candlestick:{groupPixelWidth:10},ohlc:{groupPixelWidth:5},hlc:{groupPixelWidth:5},heikinashi:{groupPixelWidth:10}},d=[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1]],["week",[1]],["month",[1,3,6]],["year",null]];function c(t){let e=this,i=e.series;i.forEach(function(t){t.groupPixelWidth=void 0}),i.forEach(function(i){i.groupPixelWidth=e.getGroupPixelWidth&&e.getGroupPixelWidth(),i.groupPixelWidth&&(i.hasProcessed=!0),i.applyGrouping(!!t.hasExtremesChanged)})}function g(){let t=this.series,e=t.length,i=0,a=!1,r,n;for(;e--;)(n=t[e].options.dataGrouping)&&(i=Math.max(i,(0,o.pick)(n.groupPixelWidth,h.groupPixelWidth)),r=(t[e].dataTable.getModified()||t[e].dataTable).rowCount,(t[e].groupPixelWidth||r>this.chart.plotSizeX/i||r&&n.forced)&&(a=!0));return a?i:0}function m(){this.series.forEach(function(t){t.hasProcessed=!1})}function f(e,i){let a;if(i=(0,o.pick)(i,!0),e||(e={forced:!1,units:null}),this instanceof t)for(a=this.series.length;a--;)this.series[a].update({dataGrouping:e},!1);else this.chart.options.series.forEach(function(t){t.dataGrouping="boolean"==typeof e?e:(0,o.merge)(e,t.dataGrouping)});this.ordinal&&(this.ordinal.slope=void 0),i&&this.chart.redraw()}let y=function(e){t=e;let i=e.prototype;i.applyGrouping||((0,o.addEvent)(e,"afterSetScale",m),(0,o.addEvent)(e,"postProcessData",c),(0,o.extend)(i,{applyGrouping:c,getGroupPixelWidth:g,setDataGrouping:f}))},{setLength:b,splice:x}={convertToNumber:function(t,e){switch(typeof t){case"boolean":return+!!t;case"number":return isNaN(t)&&!e?null:t;default:return isNaN(t=parseFloat(`${t??""}`))&&!e?null:t}},setLength:function(t,e,i){return Array.isArray(t)?(t.length=e,t):t[i?"subarray":"slice"](0,e)},splice:function(t,e,i,o,a=[]){if(Array.isArray(t))return Array.isArray(a)||(a=Array.from(a)),{removed:t.splice(e,i,...a),array:t};let r=Object.getPrototypeOf(t).constructor,n=t[o?"subarray":"slice"](e,e+i),s=new r(t.length-i+a.length);return s.set(t.subarray(0,e),0),s.set(a,e),s.set(t.subarray(e+i),e+a.length),{removed:n,array:s}}},G=class{constructor(t={}){this.isDataTable=!0,this.autoId=!t.id,this.columns={},this.id=t.id||(0,o.uniqueKey)(),this.rowCount=0,this.versionTag=(0,o.uniqueKey)();let e=0;(0,o.objectEach)(t.columns||{},(t,i)=>{this.columns[i]=t.slice(),e=Math.max(e,t.length)}),this.applyRowCount(e)}applyRowCount(t){this.rowCount=t,(0,o.objectEach)(this.columns,(e,i)=>{e.length!==t&&(this.columns[i]=b(e,t))})}deleteRows(t,e=1){if(e>0&&t<this.rowCount){let i=0;(0,o.objectEach)(this.columns,(o,a)=>{this.columns[a]=x(o,t,e).array,i=o.length}),this.rowCount=i}(0,o.fireEvent)(this,"afterDeleteRows",{rowIndex:t,rowCount:e}),this.versionTag=(0,o.uniqueKey)()}getColumn(t,e){return this.columns[t]}getColumns(t,e){return(t||Object.keys(this.columns)).reduce((t,e)=>(t[e]=this.columns[e],t),{})}getRowObject(t,e){let i={},o=this.columns;for(let a of(e??(e=Object.keys(this.columns)),e))i[a]=o[a]?.[t];return i}setColumn(t,e=[],i=0,o){this.setColumns({[t]:e},i,o)}setColumns(t,e,i){let a=this.rowCount;(0,o.objectEach)(t,(t,e)=>{this.columns[e]=t.slice(),a=t.length}),this.applyRowCount(a),i?.silent||((0,o.fireEvent)(this,"afterSetColumns"),this.versionTag=(0,o.uniqueKey)())}setRow(t,e=this.rowCount,i,a){var r;let{columns:n}=this,s=i?this.rowCount+1:e+1,l=Object.keys(t);if(a?.addColumns!==!1)for(let t=0,e=l.length;t<e;t++)n[r=l[t]]||(n[r]=Array(this.rowCount));(0,o.objectEach)(n,(o,a)=>{o&&(i?o=x(o,e,0,!0,[t[a]]).array:o[e]=a in t?t[a]:o[e],n[a]=o)}),this.applyRowCount(Math.max(s,this.rowCount)),a?.silent||((0,o.fireEvent)(this,"afterSetRows",{rowIndex:e}),this.versionTag=(0,o.uniqueKey)())}getModified(){return this.modified||this}};!function(t){function e(){return this.chart.time.getTimeTicks.apply(this.chart.time,arguments)}function i(){if("datetime"!==this.type){this.dateTime=void 0;return}this.dateTime||(this.dateTime=new a(this))}t.compose=function(t){return t.keepProps.includes("dateTime")||(t.keepProps.push("dateTime"),t.prototype.getTimeTicks=e,(0,o.addEvent)(t,"afterSetType",i)),t};class a{constructor(t){this.axis=t}normalizeTimeTickInterval(t,e){let i=e||[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2]],["week",[1,2]],["month",[1,2,3,4,6]],["year",null]],a=i[i.length-1],r=o.timeUnits[a[0]],n=a[1],s,l;for(s=0;s<i.length;s++)if(a=i[s],r=o.timeUnits[a[0]],n=a[1],i[s+1]){let e=(r*n[n.length-1]+o.timeUnits[i[s+1][0]])/2;if(t<=e){l=e/t;break}}r===o.timeUnits.year&&t<5*r&&(n=[1,2,5]);let u=(0,o.normalizeTickInterval)(t/r,n,"year"===a[0]?Math.max((0,o.getMagnitude)(t/r),1):1);return{unitRange:r,count:u,unitName:a[0],match:l}}getXDateFormat(t,e){let{axis:i}=this,o=i.chart.time;return i.closestPointRange?o.getDateFormat(i.closestPointRange,t,i.options.startOfWeek,e)||o.resolveDTLFormat(e.year).main:o.resolveDTLFormat(e.day).main}}t.Additions=a}(a||(a={}));let M=a,v=e.default.SeriesRegistry,{series:{prototype:T}}=i.n(v)(),A=T.generatePoints;function C(t){var e,i,a;let r,n,s=this.chart,l=this.options.dataGrouping,u=!1!==this.allowDG&&l&&(0,o.pick)(l.enabled,s.options.isStock),h=this.reserveSpace(),p=this.currentDataGrouping,c,g,m=!1;u&&!this.requireSorting&&(this.requireSorting=m=!0);let f=!1==(e=this,i=t,!(e.isCartesian&&!e.isDirty&&!e.xAxis.isDirty&&!e.yAxis.isDirty&&!i))||!u;if(m&&(this.requireSorting=!1),f)return;this.destroyGroupedData();let y=l.groupAll?this.dataTable:this.dataTable.getModified()||this.dataTable,b=this.getColumn("x",!l.groupAll),x=s.plotSizeX,G=this.xAxis,v=G.getExtremes(),A=G.options.ordinal,C=this.groupPixelWidth;if(C&&b&&y.rowCount&&x&&(0,o.isNumber)(v.min)){n=!0,this.isDirty=!0,this.points=null;let t=v.min,e=v.max,i=A&&G.ordinal&&G.ordinal.getGroupIntervalFactor(t,e,this)||1,u=C*(e-t)/x*i,p=G.getTimeTicks(M.Additions.prototype.normalizeTimeTickInterval(u,l.units||d),Math.min(t,b[0]),Math.max(e,b[b.length-1]),G.options.startOfWeek,b,this.closestPointRange),m=T.groupData.apply(this,[y,p,l.approximation]),f=m.modified,D=f.getColumn("x",!0),w=0;for(l?.smoothed&&f.rowCount&&(l.firstAnchor="firstPoint",l.anchor="middle",l.lastAnchor="lastPoint",(0,o.error)(32,!1,s,{"dataGrouping.smoothed":"use dataGrouping.anchor"})),r=1;r<p.length;r++)p.info.segmentStarts&&-1!==p.info.segmentStarts.indexOf(r)||(w=Math.max(p[r]-p[r-1],w));(c=p.info).gapSize=w,this.closestPointRange=p.info.totalRange,this.groupMap=m.groupMap,this.currentDataGrouping=c,function(t,e,i){let a=t.options.dataGrouping,r=t.currentDataGrouping&&t.currentDataGrouping.gapSize,n=t.getColumn("x");if(!(a&&n.length&&r&&t.groupMap))return;let s=e.length-1,l=a.anchor,u=a.firstAnchor,h=a.lastAnchor,p=e.length-1,d=0;if(u&&n[0]>=e[0]){let i;d++;let a=t.groupMap[0].start,s=t.groupMap[0].length;(0,o.isNumber)(a)&&(0,o.isNumber)(s)&&(i=a+(s-1)),e[0]=({start:e[0],middle:e[0]+.5*r,end:e[0]+r,firstPoint:n[0],lastPoint:i&&n[i]})[u]}if(s>0&&h&&r&&e[s]>=i-r){p--;let i=t.groupMap[t.groupMap.length-1].start;e[s]=({start:e[s],middle:e[s]+.5*r,end:e[s]+r,firstPoint:i&&n[i],lastPoint:n[n.length-1]})[h]}if(l&&"start"!==l){let t=r*({middle:.5,end:1})[l];for(;p>=d;)e[p]+=t,p--}}(this,D||[],e),h&&D&&(a=D,(0,o.defined)(a[0])&&(0,o.isNumber)(G.min)&&(0,o.isNumber)(G.dataMin)&&a[0]<G.min&&((!(0,o.defined)(G.options.min)&&G.min<=G.dataMin||G.min===G.dataMin)&&(G.min=Math.min(a[0],G.min)),G.dataMin=Math.min(a[0],G.dataMin)),(0,o.defined)(a[a.length-1])&&(0,o.isNumber)(G.max)&&(0,o.isNumber)(G.dataMax)&&a[a.length-1]>G.max&&((!(0,o.defined)(G.options.max)&&(0,o.isNumber)(G.dataMax)&&G.max>=G.dataMax||G.max===G.dataMax)&&(G.max=Math.max(a[a.length-1],G.max)),G.dataMax=Math.max(a[a.length-1],G.dataMax))),l.groupAll&&(this.allGroupedTable=f,D=(f=(g=this.cropData(f,G.min||0,G.max||0)).modified).getColumn("x"),this.cropStart=g.start),this.dataTable.modified=f}else this.groupMap=void 0,this.currentDataGrouping=void 0;this.hasGroupedData=n,this.preventGraphAnimation=(p&&p.totalRange)!==(c&&c.totalRange)}function D(){this.groupedData&&(this.groupedData.forEach(function(t,e){t&&(this.groupedData[e]=t.destroy?t.destroy():null)},this),this.groupedData.length=0,delete this.allGroupedTable)}function w(){A.apply(this),this.destroyGroupedData(),this.groupedData=this.hasGroupedData?this.points:null}function N(){return this.is("arearange")?"range":this.is("ohlc")?"ohlc":this.is("hlc")?"hlc":this.is("column")||this.options.cumulative?"sum":"average"}function P(t,e,i){let a=t===this.dataTable?this.getColumn("x"):t.getColumn("x",!0),r=t.getColumn("y",!0),s=this,l=s.dataTable,u=s.cropStart||0,h=s.data,p=s.options?.data,d=[],c=new G,g=[],m=t.rowCount,f=!!r,y=[],b=s.pointArrayMap,x=b&&b.length,M=["x"].concat(b||["y"]),v=(b||["y"]).map(()=>[]),T=this.options.dataGrouping?.groupAll,A,C,D,w=0,N=0,P="function"==typeof i?i:i&&n[i]?n[i]:n[s.getDGApproximation&&s.getDGApproximation()||"average"];if(x){let t=b.length;for(;t--;)y.push([])}else y.push([]);let S=x||1;for(let t=0;t<=m;t++)if(!(a[t]<e[0])){for(;void 0!==e[w+1]&&a[t]>=e[w+1]||t===m;){if(A=e[w],s.dataGroupInfo={start:T?N:s.cropStart+N,length:y[0].length,groupStart:A},D=P.apply(s,y),s.pointClass&&!(0,o.defined)(s.dataGroupInfo.options)&&p&&(s.dataGroupInfo.options=(0,o.merge)(s.pointClass.prototype.optionsToObject.call({series:s},l.getRowObject(u+N))),M.forEach(function(t){delete s.dataGroupInfo.options[t]})),void 0!==D){d.push(A);let t=(0,o.splat)(D);for(let e=0;e<t.length;e++)v[e].push(t[e]);g.push(s.dataGroupInfo)}N=t;for(let t=0;t<S;t++)y[t].length=0,y[t].hasNulls=!1;if(w+=1,t===m)break}if(t===m)break;if(b){let e,i=T?t:s.cropStart+t,a=h&&h[i]||s.pointClass.prototype.applyOptions.apply({series:s},[l.getRowObject(i)]);for(let t=0;t<x;t++)e=a[b[t]],(0,o.isNumber)(e)?y[t].push(e):null===e&&(y[t].hasNulls=!0)}else C=f?r[t]:null,(0,o.isNumber)(C)?y[0].push(C):null===C&&(y[0].hasNulls=!0)}let k={x:d};return(b||["y"]).forEach((t,e)=>{k[t]=v[e]}),c.setColumns(k),{groupMap:g,modified:c}}function S(t){let e=t.options,i=this.type,a=this.chart.options.plotOptions,n=this.useCommonDataGrouping&&h,s=r().defaultOptions.plotOptions[i].dataGrouping;if(a&&(p[i]||n)){let t=this.chart.rangeSelector;s||(s=(0,o.merge)(h,p[i])),e.dataGrouping=(0,o.merge)(n,s,a.series&&a.series.dataGrouping,a[i].dataGrouping,this.userOptions.dataGrouping,!e.isInternal&&t&&(0,o.isNumber)(t.selected)&&t.buttonOptions[t.selected].dataGrouping)}}let k=function(t){let e=t.prototype;if(!e.applyGrouping){let i=t.prototype.pointClass;(0,o.addEvent)(i,"update",function(){if(this.dataGroup)return(0,o.error)(24,!1,this.series.chart),!1}),(0,o.addEvent)(t,"afterSetOptions",S),(0,o.addEvent)(t,"destroy",D),(0,o.extend)(e,{applyGrouping:C,destroyGroupedData:D,generatePoints:w,getDGApproximation:N,groupData:P})}},E=e.default.Templating,{format:O}=i.n(E)(),{composed:R}=r();function F(t){let e=this.chart,i=e.time,a=t.point,r=a.series,n=r.options,s=r.tooltipOptions,l=n.dataGrouping,u=r.xAxis,p=s.xDateFormat||"",d,c,g,m,f,y=s[t.isFooter?"footerFormat":"headerFormat"];if(u&&"datetime"===u.options.type&&l&&(0,o.isNumber)(a.key)){c=r.currentDataGrouping,g=l.dateTimeLabelFormats||h.dateTimeLabelFormats,c?(m=g[c.unitName],1===c.count?p=m[0]:(p=m[1],d=m[2])):!p&&g&&u.dateTime&&(p=u.dateTime.getXDateFormat(a.x,s.dateTimeLabelFormats));let n=(0,o.pick)(r.groupMap?.[a.index].groupStart,a.key),b=n+(c?.totalRange||0)-1;f=i.dateFormat(p,n),d&&(f+=i.dateFormat(d,b)),r.chart.styledMode&&(y=this.styledModeFormat(y)),t.text=O(y,{point:(0,o.extend)(a,{key:f}),series:r},e),t.preventDefault()}}let j=r();j.dataGrouping=j.dataGrouping||{},j.dataGrouping.approximationDefaults=j.dataGrouping.approximationDefaults||u,j.dataGrouping.approximations=j.dataGrouping.approximations||n,({compose:function(t,e,i){y(t),k(e),i&&(0,o.pushUnique)(R,"DataGrouping")&&(0,o.addEvent)(i,"headerFormatter",F)},groupData:P}).compose(j.Axis,j.Series,j.Tooltip);let W=r();export{W as default};
13
+ */import*as e from"../highcharts.js";let i={};i.n=t=>{let e=t&&t.__esModule?()=>t.default:()=>t;return i.d(e,{a:e}),e},i.d=(t,e)=>{if(Array.isArray(e))for(var o=0;o<e.length;){var a=e[o++],r=e[o++];i.o(t,a)?0===r&&o++:0===r?Object.defineProperty(t,a,{enumerable:!0,value:e[o++]}):Object.defineProperty(t,a,{enumerable:!0,get:r})}else for(var a in e)i.o(e,a)&&!i.o(t,a)&&Object.defineProperty(t,a,{enumerable:!0,get:e[a]})},i.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);let o=e.default;var a,r=i.n(o);let n={};function s(t){let e=t.length,i=l(t);return(0,o.isNumber)(i)&&e&&(i=(0,o.correctFloat)(i/e)),i}function l(t){let e=t.length,i;if(!e&&t.hasNulls)i=null;else if(e)for(i=0;e--;)i+=t[e];return i}let u={average:s,averages:function(){let t=[];return[].forEach.call(arguments,function(e){t.push(s(e))}),void 0===t[0]?void 0:t},close:function(t){return t.length?t[t.length-1]:t.hasNulls?null:void 0},high:function(t){return t.length?(0,o.arrayMax)(t):t.hasNulls?null:void 0},hlc:function(t,e,i){if(t=n.high(t),e=n.low(e),i=n.close(i),(0,o.isNumber)(t)||(0,o.isNumber)(e)||(0,o.isNumber)(i))return[t,e,i]},low:function(t){return t.length?(0,o.arrayMin)(t):t.hasNulls?null:void 0},ohlc:function(t,e,i,a){if(t=n.open(t),e=n.high(e),i=n.low(i),a=n.close(a),(0,o.isNumber)(t)||(0,o.isNumber)(e)||(0,o.isNumber)(i)||(0,o.isNumber)(a))return[t,e,i,a]},open:function(t){return t.length?t[0]:t.hasNulls?null:void 0},range:function(t,e){return(t=n.low(t),e=n.high(e),(0,o.isNumber)(t)||(0,o.isNumber)(e))?[t,e]:null===t&&null===e?null:void 0},sum:l};(0,o.extend)(n,u);let h={groupPixelWidth:2,dateTimeLabelFormats:{millisecond:["%[AebHMSL]","%[AebHMSL]","-%[HMSL]"],second:["%[AebHMS]","%[AebHMS]","-%[HMS]"],minute:["%[AebHM]","%[AebHM]","-%[HM]"],hour:["%[AebHM]","%[AebHM]","-%[HM]"],day:["%[AebY]","%[Aeb]","-%[AebY]"],week:["%v %[AebY]","%[Aeb]","-%[AebY]"],month:["%[BY]","%[B]","-%[BY]"],year:["%[Y]","%[Y]","-%[Y]"]}},p={line:{},spline:{},area:{},areaspline:{},arearange:{},column:{groupPixelWidth:10},columnrange:{groupPixelWidth:10},candlestick:{groupPixelWidth:10},ohlc:{groupPixelWidth:5},hlc:{groupPixelWidth:5},heikinashi:{groupPixelWidth:10}},d=[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1]],["week",[1]],["month",[1,3,6]],["year",null]];function c(t){let e=this,i=e.series;i.forEach(function(t){t.groupPixelWidth=void 0}),i.forEach(function(i){i.groupPixelWidth=e.getGroupPixelWidth&&e.getGroupPixelWidth(),i.groupPixelWidth&&(i.hasProcessed=!0),i.applyGrouping(!!t.hasExtremesChanged)})}function g(){let t=this.series,e=t.length,i=0,o=!1,a,r;for(;e--;)(r=t[e].options.dataGrouping)&&(i=Math.max(i,r.groupPixelWidth??h.groupPixelWidth),a=(t[e].dataTable.getModified()||t[e].dataTable).rowCount,(t[e].groupPixelWidth||a>this.chart.plotSizeX/i||a&&r.forced)&&(o=!0));return o?i:0}function m(){this.series.forEach(function(t){t.hasProcessed=!1})}function f(e,i){let a;if(i=i??!0,e||(e={forced:!1,units:null}),this instanceof t)for(a=this.series.length;a--;)this.series[a].update({dataGrouping:e},!1);else this.chart.options.series.forEach(function(t){t.dataGrouping="boolean"==typeof e?e:(0,o.merge)(e,t.dataGrouping)});this.ordinal&&(this.ordinal.slope=void 0),i&&this.chart.redraw()}let y=function(e){t=e;let i=e.prototype;i.applyGrouping||((0,o.addEvent)(e,"afterSetScale",m),(0,o.addEvent)(e,"postProcessData",c),(0,o.extend)(i,{applyGrouping:c,getGroupPixelWidth:g,setDataGrouping:f}))},{setLength:b,splice:x}={convertToNumber:function(t,e){switch(typeof t){case"boolean":return+!!t;case"number":return isNaN(t)&&!e?null:t;default:return isNaN(t=parseFloat(`${t??""}`))&&!e?null:t}},setLength:function(t,e,i){return Array.isArray(t)?(t.length=e,t):t[i?"subarray":"slice"](0,e)},splice:function(t,e,i,o,a=[]){if(Array.isArray(t))return Array.isArray(a)||(a=Array.from(a)),{removed:t.splice(e,i,...a),array:t};let r=Object.getPrototypeOf(t).constructor,n=t[o?"subarray":"slice"](e,e+i),s=new r(t.length-i+a.length);return s.set(t.subarray(0,e),0),s.set(a,e),s.set(t.subarray(e+i),e+a.length),{removed:n,array:s}}},G=class{constructor(t={}){this.isDataTable=!0,this.autoId=!t.id,this.columns={},this.id=t.id||(0,o.uniqueKey)(),this.rowCount=0,this.versionTag=(0,o.uniqueKey)();let e=0;(0,o.objectEach)(t.columns||{},(t,i)=>{this.columns[i]=t.slice(),e=Math.max(e,t.length)}),this.applyRowCount(e)}applyRowCount(t){this.rowCount=t,(0,o.objectEach)(this.columns,(e,i)=>{e.length!==t&&(this.columns[i]=b(e,t))})}deleteRows(t,e=1){if(e>0&&t<this.rowCount){let i=0;(0,o.objectEach)(this.columns,(o,a)=>{this.columns[a]=x(o,t,e).array,i=o.length}),this.rowCount=i}(0,o.fireEvent)(this,"afterDeleteRows",{rowIndex:t,rowCount:e}),this.versionTag=(0,o.uniqueKey)()}getColumn(t,e){return this.columns[t]}getColumns(t,e){return(t||Object.keys(this.columns)).reduce((t,e)=>(t[e]=this.columns[e],t),{})}getRowObject(t,e){let i={},o=this.columns;for(let a of(e??(e=Object.keys(this.columns)),e))i[a]=o[a]?.[t];return i}setColumn(t,e=[],i=0,o){this.setColumns({[t]:e},i,o)}setColumns(t,e,i){let a=this.rowCount;(0,o.objectEach)(t,(t,e)=>{this.columns[e]=t.slice(),a=t.length}),this.applyRowCount(a),i?.silent||((0,o.fireEvent)(this,"afterSetColumns"),this.versionTag=(0,o.uniqueKey)())}setRow(t,e=this.rowCount,i,a){var r;let{columns:n}=this,s=i?this.rowCount+1:e+1,l=Object.keys(t);if(a?.addColumns!==!1)for(let t=0,e=l.length;t<e;t++)n[r=l[t]]||(n[r]=Array(this.rowCount));(0,o.objectEach)(n,(o,a)=>{o&&(i?o=x(o,e,0,!0,[t[a]]).array:o[e]=a in t?t[a]:o[e],n[a]=o)}),this.applyRowCount(Math.max(s,this.rowCount)),a?.silent||((0,o.fireEvent)(this,"afterSetRows",{rowIndex:e}),this.versionTag=(0,o.uniqueKey)())}getModified(){return this.modified||this}};!function(t){function e(){return this.chart.time.getTimeTicks.apply(this.chart.time,arguments)}function i(){if("datetime"!==this.type){this.dateTime=void 0;return}this.dateTime||(this.dateTime=new a(this))}t.compose=function(t){return t.keepProps.includes("dateTime")||(t.keepProps.push("dateTime"),t.prototype.getTimeTicks=e,(0,o.addEvent)(t,"afterSetType",i)),t};class a{constructor(t){this.axis=t}normalizeTimeTickInterval(t,e){let i=e||[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2]],["week",[1,2]],["month",[1,2,3,4,6]],["year",null]],a=i[i.length-1],r=o.timeUnits[a[0]],n=a[1],s,l;for(s=0;s<i.length;s++)if(a=i[s],r=o.timeUnits[a[0]],n=a[1],i[s+1]){let e=(r*n[n.length-1]+o.timeUnits[i[s+1][0]])/2;if(t<=e){l=e/t;break}}r===o.timeUnits.year&&t<5*r&&(n=[1,2,5]);let u=(0,o.normalizeTickInterval)(t/r,n,"year"===a[0]?Math.max((0,o.getMagnitude)(t/r),1):1);return{unitRange:r,count:u,unitName:a[0],match:l}}getXDateFormat(t,e){let{axis:i}=this,o=i.chart.time;return i.closestPointRange?o.getDateFormat(i.closestPointRange,t,i.options.startOfWeek,e)||o.resolveDTLFormat(e.year).main:o.resolveDTLFormat(e.day).main}}t.Additions=a}(a||(a={}));let M=a,v=e.default.SeriesRegistry,{series:{prototype:T}}=i.n(v)(),A=T.generatePoints;function C(t){var e,i,a;let r,n,s=this.chart,l=this.options.dataGrouping,u=!1!==this.allowDG&&l&&(l.enabled??s.options.isStock),h=this.reserveSpace(),p=this.currentDataGrouping,c,g,m=!1;u&&!this.requireSorting&&(this.requireSorting=m=!0);let f=!1==(e=this,i=t,!(e.isCartesian&&!e.isDirty&&!e.xAxis.isDirty&&!e.yAxis.isDirty&&!i))||!u;if(m&&(this.requireSorting=!1),f)return;this.destroyGroupedData();let y=l.groupAll?this.dataTable:this.dataTable.getModified()||this.dataTable,b=this.getColumn("x",!l.groupAll),x=s.plotSizeX,G=this.xAxis,v=G.getExtremes(),A=G.options.ordinal,C=this.groupPixelWidth;if(C&&b&&y.rowCount&&x&&(0,o.isNumber)(v.min)){n=!0,this.isDirty=!0,this.points=null;let t=v.min,e=v.max,i=A&&G.ordinal&&G.ordinal.getGroupIntervalFactor(t,e,this)||1,u=C*(e-t)/x*i,p=G.getTimeTicks(M.Additions.prototype.normalizeTimeTickInterval(u,l.units||d),Math.min(t,b[0]),Math.max(e,b[b.length-1]),G.options.startOfWeek,b,this.closestPointRange),m=T.groupData.apply(this,[y,p,l.approximation]),f=m.modified,D=f.getColumn("x",!0),w=0;for(l?.smoothed&&f.rowCount&&(l.firstAnchor="firstPoint",l.anchor="middle",l.lastAnchor="lastPoint",(0,o.error)(32,!1,s,{"dataGrouping.smoothed":"use dataGrouping.anchor"})),r=1;r<p.length;r++)p.info.segmentStarts&&-1!==p.info.segmentStarts.indexOf(r)||(w=Math.max(p[r]-p[r-1],w));(c=p.info).gapSize=w,this.closestPointRange=p.info.totalRange,this.groupMap=m.groupMap,this.currentDataGrouping=c,function(t,e,i){let a=t.options.dataGrouping,r=t.currentDataGrouping&&t.currentDataGrouping.gapSize,n=t.getColumn("x");if(!(a&&n.length&&r&&t.groupMap))return;let s=e.length-1,l=a.anchor,u=a.firstAnchor,h=a.lastAnchor,p=e.length-1,d=0;if(u&&n[0]>=e[0]){let i;d++;let a=t.groupMap[0].start,s=t.groupMap[0].length;(0,o.isNumber)(a)&&(0,o.isNumber)(s)&&(i=a+(s-1)),e[0]=({start:e[0],middle:e[0]+.5*r,end:e[0]+r,firstPoint:n[0],lastPoint:i&&n[i]})[u]}if(s>0&&h&&r&&e[s]>=i-r){p--;let i=t.groupMap[t.groupMap.length-1].start;e[s]=({start:e[s],middle:e[s]+.5*r,end:e[s]+r,firstPoint:i&&n[i],lastPoint:n[n.length-1]})[h]}if(l&&"start"!==l){let t=r*({middle:.5,end:1})[l];for(;p>=d;)e[p]+=t,p--}}(this,D||[],e),h&&D&&(a=D,(0,o.defined)(a[0])&&(0,o.isNumber)(G.min)&&(0,o.isNumber)(G.dataMin)&&a[0]<G.min&&((!(0,o.defined)(G.options.min)&&G.min<=G.dataMin||G.min===G.dataMin)&&(G.min=Math.min(a[0],G.min)),G.dataMin=Math.min(a[0],G.dataMin)),(0,o.defined)(a[a.length-1])&&(0,o.isNumber)(G.max)&&(0,o.isNumber)(G.dataMax)&&a[a.length-1]>G.max&&((!(0,o.defined)(G.options.max)&&(0,o.isNumber)(G.dataMax)&&G.max>=G.dataMax||G.max===G.dataMax)&&(G.max=Math.max(a[a.length-1],G.max)),G.dataMax=Math.max(a[a.length-1],G.dataMax))),l.groupAll&&(this.allGroupedTable=f,D=(f=(g=this.cropData(f,G.min||0,G.max||0)).modified).getColumn("x"),this.cropStart=g.start),this.dataTable.modified=f}else this.groupMap=void 0,this.currentDataGrouping=void 0;this.hasGroupedData=n,this.preventGraphAnimation=(p&&p.totalRange)!==(c&&c.totalRange)}function D(){this.groupedData&&(this.groupedData.forEach(function(t,e){t&&(this.groupedData[e]=t.destroy?t.destroy():null)},this),this.groupedData.length=0,delete this.allGroupedTable)}function w(){A.apply(this),this.destroyGroupedData(),this.groupedData=this.hasGroupedData?this.points:null}function N(){return this.is("arearange")?"range":this.is("ohlc")?"ohlc":this.is("hlc")?"hlc":this.is("column")||this.options.cumulative?"sum":"average"}function P(t,e,i){let a=t===this.dataTable?this.getColumn("x"):t.getColumn("x",!0),r=t.getColumn("y",!0),s=this,l=s.dataTable,u=s.cropStart||0,h=s.data,p=s.options?.data,d=[],c=new G,g=[],m=t.rowCount,f=!!r,y=[],b=s.pointArrayMap,x=b&&b.length,M=["x"].concat(b||["y"]),v=(b||["y"]).map(()=>[]),T=this.options.dataGrouping?.groupAll,A,C,D,w=0,N=0,P="function"==typeof i?i:i&&n[i]?n[i]:n[s.getDGApproximation&&s.getDGApproximation()||"average"];if(x){let t=b.length;for(;t--;)y.push([])}else y.push([]);let S=x||1;for(let t=0;t<=m;t++)if(!(a[t]<e[0])){for(;void 0!==e[w+1]&&a[t]>=e[w+1]||t===m;){if(A=e[w],s.dataGroupInfo={start:T?N:s.cropStart+N,length:y[0].length,groupStart:A},D=P.apply(s,y),s.pointClass&&!(0,o.defined)(s.dataGroupInfo.options)&&p&&(s.dataGroupInfo.options=(0,o.merge)(s.pointClass.prototype.optionsToObject.call({series:s},l.getRowObject(u+N))),M.forEach(function(t){delete s.dataGroupInfo.options[t]})),void 0!==D){d.push(A);let t=(0,o.splat)(D);for(let e=0;e<t.length;e++)v[e].push(t[e]);g.push(s.dataGroupInfo)}N=t;for(let t=0;t<S;t++)y[t].length=0,y[t].hasNulls=!1;if(w+=1,t===m)break}if(t===m)break;if(b){let e,i=T?t:s.cropStart+t,a=h&&h[i]||s.pointClass.prototype.applyOptions.apply({series:s},[l.getRowObject(i)]);for(let t=0;t<x;t++)e=a[b[t]],(0,o.isNumber)(e)?y[t].push(e):null===e&&(y[t].hasNulls=!0)}else C=f?r[t]:null,(0,o.isNumber)(C)?y[0].push(C):null===C&&(y[0].hasNulls=!0)}let k={x:d};return(b||["y"]).forEach((t,e)=>{k[t]=v[e]}),c.setColumns(k),{groupMap:g,modified:c}}function S(t){let e=t.options,i=this.type,a=this.chart.options.plotOptions,n=this.useCommonDataGrouping&&h,s=r().defaultOptions.plotOptions[i].dataGrouping;if(a&&(p[i]||n)){let t=this.chart.rangeSelector;s||(s=(0,o.merge)(h,p[i])),e.dataGrouping=(0,o.merge)(n,s,a.series&&a.series.dataGrouping,a[i].dataGrouping,this.userOptions.dataGrouping,!e.isInternal&&t&&(0,o.isNumber)(t.selected)&&t.buttonOptions[t.selected].dataGrouping)}}let k=function(t){let e=t.prototype;if(!e.applyGrouping){let i=t.prototype.pointClass;(0,o.addEvent)(i,"update",function(){if(this.dataGroup)return(0,o.error)(24,!1,this.series.chart),!1}),(0,o.addEvent)(t,"afterSetOptions",S),(0,o.addEvent)(t,"destroy",D),(0,o.extend)(e,{applyGrouping:C,destroyGroupedData:D,generatePoints:w,getDGApproximation:N,groupData:P})}},E=e.default.Templating,{format:O}=i.n(E)(),{composed:R}=r();function F(t){let e=this.chart,i=e.time,a=t.point,r=a.series,n=r.options,s=r.tooltipOptions,l=n.dataGrouping,u=r.xAxis,p=s.xDateFormat||"",d,c,g,m,f,y=s[t.isFooter?"footerFormat":"headerFormat"];if(u&&"datetime"===u.options.type&&l&&(0,o.isNumber)(a.key)){c=r.currentDataGrouping,g=l.dateTimeLabelFormats||h.dateTimeLabelFormats,c?(m=g[c.unitName],1===c.count?p=m[0]:(p=m[1],d=m[2])):!p&&g&&u.dateTime&&(p=u.dateTime.getXDateFormat(a.x,s.dateTimeLabelFormats));let n=r.groupMap?.[a.index].groupStart??a.key,b=n+(c?.totalRange||0)-1;f=i.dateFormat(p,n),d&&(f+=i.dateFormat(d,b)),r.chart.styledMode&&(y=this.styledModeFormat(y)),t.text=O(y,{point:(0,o.extend)(a,{key:f}),series:r},e),t.preventDefault()}}let j=r();j.dataGrouping=j.dataGrouping||{},j.dataGrouping.approximationDefaults=j.dataGrouping.approximationDefaults||u,j.dataGrouping.approximations=j.dataGrouping.approximations||n,({compose:function(t,e,i){y(t),k(e),i&&(0,o.pushUnique)(R,"DataGrouping")&&(0,o.addEvent)(i,"headerFormatter",F)},groupData:P}).compose(j.Axis,j.Series,j.Tooltip);let W=r();export{W as default};
@@ -1,6 +1,6 @@
1
1
  // SPDX-License-Identifier: LicenseRef-Highcharts
2
2
  /**
3
- * @license Highstock JS v13.0.1 (2026-08-17)
3
+ * @license Highstock JS v13.0.2 (2026-08-27)
4
4
  * @module highcharts/modules/datagrouping
5
5
  * @requires highcharts
6
6
  *
@@ -473,7 +473,8 @@ function getGroupPixelWidth() {
473
473
  // same group pixel width (#334)
474
474
  groupPixelWidth = Math.max(groupPixelWidth,
475
475
  // Fallback to commonOptions (#9693)
476
- (0,external_highcharts_src_js_default_namespaceObject.pick)(dgOptions.groupPixelWidth, DataGrouping_DataGroupingDefaults.common.groupPixelWidth));
476
+ (dgOptions.groupPixelWidth ??
477
+ DataGrouping_DataGroupingDefaults.common.groupPixelWidth));
477
478
  dataLength = (series[i].dataTable.getModified() ||
478
479
  series[i].dataTable).rowCount;
479
480
  // Execute grouping if the amount of points is greater than the
@@ -517,7 +518,7 @@ function onAfterSetScale() {
517
518
  function setDataGrouping(dataGrouping, redraw) {
518
519
  const axis = this;
519
520
  let i;
520
- redraw = (0,external_highcharts_src_js_default_namespaceObject.pick)(redraw, true);
521
+ redraw = (redraw ?? true);
521
522
  if (!dataGrouping) {
522
523
  dataGrouping = {
523
524
  forced: false,
@@ -1379,7 +1380,7 @@ function anchorPoints(series, groupedXData, xMax) {
1379
1380
  */
1380
1381
  function DataGroupingSeriesComposition_applyGrouping(hasExtremesChanged) {
1381
1382
  const series = this, chart = series.chart, options = series.options, dataGroupingOptions = options.dataGrouping, groupingEnabled = series.allowDG !== false && dataGroupingOptions &&
1382
- (0,external_highcharts_src_js_default_namespaceObject.pick)(dataGroupingOptions.enabled, chart.options.isStock), reserveSpace = series.reserveSpace(), lastDataGrouping = this.currentDataGrouping;
1383
+ (dataGroupingOptions.enabled ?? chart.options.isStock), reserveSpace = series.reserveSpace(), lastDataGrouping = this.currentDataGrouping;
1383
1384
  let currentDataGrouping, croppedData, revertRequireSorting = false;
1384
1385
  // Data needs to be sorted for dataGrouping
1385
1386
  if (groupingEnabled && !series.requireSorting) {
@@ -1826,7 +1827,7 @@ function onTooltipHeaderFormatter(e) {
1826
1827
  else if (!xDateFormat && dateTimeLabelFormats && xAxis.dateTime) {
1827
1828
  xDateFormat = xAxis.dateTime.getXDateFormat(point.x, tooltipOptions.dateTimeLabelFormats);
1828
1829
  }
1829
- const groupStart = (0,external_highcharts_src_js_default_namespaceObject.pick)(series.groupMap?.[point.index].groupStart, point.key), groupEnd = groupStart + (currentDataGrouping?.totalRange || 0) - 1;
1830
+ const groupStart = series.groupMap?.[point.index].groupStart ?? point.key, groupEnd = groupStart + (currentDataGrouping?.totalRange || 0) - 1;
1830
1831
  formattedKey = time.dateFormat(xDateFormat, groupStart);
1831
1832
  if (xDateFormatEnd) {
1832
1833
  formattedKey += time.dateFormat(xDateFormatEnd, groupEnd);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Highcharts JS v13.0.1 (2026-08-17)
2
+ * Highcharts JS v13.0.2 (2026-08-27)
3
3
  * @module highcharts/modules/debugger
4
4
  * @requires highcharts
5
5
  *
@@ -1,6 +1,6 @@
1
1
  // SPDX-License-Identifier: LicenseRef-Highcharts
2
2
  /**
3
- * @license Highcharts JS v13.0.1 (2026-08-17)
3
+ * @license Highcharts JS v13.0.2 (2026-08-27)
4
4
  * @module highcharts/modules/debugger
5
5
  * @requires highcharts
6
6
  *
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Highcharts JS v13.0.1 (2026-08-17)
2
+ * Highcharts JS v13.0.2 (2026-08-27)
3
3
  * @module highcharts/modules/dependency-wheel
4
4
  * @requires highcharts
5
5
  * @requires highcharts/modules/sankey
@@ -1,6 +1,6 @@
1
1
  // SPDX-License-Identifier: LicenseRef-Highcharts
2
2
  /**
3
- * @license Highcharts JS v13.0.1 (2026-08-17)
3
+ * @license Highcharts JS v13.0.2 (2026-08-27)
4
4
  * @module highcharts/modules/dependency-wheel
5
5
  * @requires highcharts
6
6
  * @requires highcharts/modules/sankey
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Highcharts JS v13.0.1 (2026-08-17)
2
+ * Highcharts JS v13.0.2 (2026-08-27)
3
3
  * @module highcharts/modules/dotplot
4
4
  * @requires highcharts
5
5
  *
@@ -10,4 +10,4 @@
10
10
  *
11
11
  * A commercial license may be required depending on use,
12
12
  * see www.highcharts.com/license
13
- */import*as e from"../highcharts.js";let t={};t.n=e=>{let r=e&&e.__esModule?()=>e.default:()=>e;return t.d(r,{a:r}),r},t.d=(e,r)=>{if(Array.isArray(r))for(var s=0;s<r.length;){var i=r[s++],o=r[s++];t.o(e,i)?0===o&&s++:0===o?Object.defineProperty(e,i,{enumerable:!0,value:r[s++]}):Object.defineProperty(e,i,{enumerable:!0,get:o})}else for(var i in r)t.o(r,i)&&!t.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:r[i]})},t.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);let r=e.default;var s=t.n(r);let i=e.default.SeriesRegistry;var o=t.n(i);let{column:a}=o().seriesTypes;class l extends a{drawPoints(){let e=this.options,t=this.chart.renderer,s=e.marker,i=this.points.reduce((e,t)=>e+Math.abs(t.y||0),0),o=this.points.reduce((e,t)=>e+(t.shapeArgs?.height||0),0),a=e.itemPadding||0,l=this.points[0]?.shapeArgs?.width||0,d=e.slotsPerBar,h=l;if(!(0,r.isNumber)(d))for(d=1;d<i&&!(i/d<o/h*1.2);)h=l/++d;let p=o*d/i;for(let e of this.points){let i=e.marker||{},o=i.symbol||s.symbol,l=(0,r.pick)(i.radius,s.radius),n="rect"!==o?p:h,c=e.shapeArgs||{},g=(c.x||0)+((c.width||0)-d*n)/2,y=Math.abs(e.y??0),f=c.y||0,m=c.height||0,u,b=g,v=e.negative?f:f+m-p,A=0;e.graphics=u=e.graphics||[];let P=e.pointAttr?e.pointAttr[e.selected?"selected":""]||this.pointAttr[""]:this.pointAttribs(e,e.selected&&"select");if(delete P.r,this.chart.styledMode&&(delete P.stroke,delete P["stroke-width"]),"number"==typeof e.y){e.graphic||(e.graphic=t.g("point").add(this.group));for(let s=0;s<y;s++){let i={x:b+n*a,y:v+p*a,width:n*(1-2*a),height:p*(1-2*a),r:l},h=u[s];h?h.animate(i):h=t.symbol(o).attr((0,r.extend)(i,P)).add(e.graphic),h.isActive=!0,u[s]=h,b+=n,++A>=d&&(A=0,b=g,v=e.negative?v+p:v-p)}}let k=-1;for(let e of u)++k,e&&(e.isActive?e.isActive=!1:(e.destroy(),u.splice(k,1)))}}}l.defaultOptions=(0,r.merge)(a.defaultOptions,{itemPadding:.1,marker:{symbol:"circle",states:{hover:{},select:{}}},slotsPerBar:void 0}),(0,r.extend)(l.prototype,{markerAttribs:void 0}),o().registerSeriesType("dotplot",l);let d=s();export{d as default};
13
+ */import*as e from"../highcharts.js";let t={};t.n=e=>{let r=e&&e.__esModule?()=>e.default:()=>e;return t.d(r,{a:r}),r},t.d=(e,r)=>{if(Array.isArray(r))for(var s=0;s<r.length;){var i=r[s++],o=r[s++];t.o(e,i)?0===o&&s++:0===o?Object.defineProperty(e,i,{enumerable:!0,value:r[s++]}):Object.defineProperty(e,i,{enumerable:!0,get:o})}else for(var i in r)t.o(r,i)&&!t.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:r[i]})},t.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);let r=e.default;var s=t.n(r);let i=e.default.SeriesRegistry;var o=t.n(i);let{column:a}=o().seriesTypes;class l extends a{drawPoints(){let e=this.options,t=this.chart.renderer,s=e.marker,i=this.points.reduce((e,t)=>e+Math.abs(t.y||0),0),o=this.points.reduce((e,t)=>e+(t.shapeArgs?.height||0),0),a=e.itemPadding||0,l=this.points[0]?.shapeArgs?.width||0,d=e.slotsPerBar,h=l;if(!(0,r.isNumber)(d))for(d=1;d<i&&!(i/d<o/h*1.2);)h=l/++d;let n=o*d/i;for(let e of this.points){let i=e.marker||{},o=i.symbol||s.symbol,l=i.radius??s.radius,p="rect"!==o?n:h,c=e.shapeArgs||{},g=(c.x||0)+((c.width||0)-d*p)/2,y=Math.abs(e.y??0),f=c.y||0,m=c.height||0,u,b=g,v=e.negative?f:f+m-n,A=0;e.graphics=u=e.graphics||[];let P=e.pointAttr?e.pointAttr[e.selected?"selected":""]||this.pointAttr[""]:this.pointAttribs(e,e.selected&&"select");if(delete P.r,this.chart.styledMode&&(delete P.stroke,delete P["stroke-width"]),"number"==typeof e.y){e.graphic||(e.graphic=t.g("point").add(this.group));for(let s=0;s<y;s++){let i={x:b+p*a,y:v+n*a,width:p*(1-2*a),height:n*(1-2*a),r:l},h=u[s];h?h.animate(i):h=t.symbol(o).attr((0,r.extend)(i,P)).add(e.graphic),h.isActive=!0,u[s]=h,b+=p,++A>=d&&(A=0,b=g,v=e.negative?v+n:v-n)}}let O=-1;for(let e of u)++O,e&&(e.isActive?e.isActive=!1:(e.destroy(),u.splice(O,1)))}}}l.defaultOptions=(0,r.merge)(a.defaultOptions,{itemPadding:.1,marker:{symbol:"circle",states:{hover:{},select:{}}},slotsPerBar:void 0}),(0,r.extend)(l.prototype,{markerAttribs:void 0}),o().registerSeriesType("dotplot",l);let d=s();export{d as default};
@@ -1,6 +1,6 @@
1
1
  // SPDX-License-Identifier: LicenseRef-Highcharts
2
2
  /**
3
- * @license Highcharts JS v13.0.1 (2026-08-17)
3
+ * @license Highcharts JS v13.0.2 (2026-08-27)
4
4
  * @module highcharts/modules/dotplot
5
5
  * @requires highcharts
6
6
  *
@@ -169,7 +169,8 @@ class DotPlotSeries extends ColumnSeries {
169
169
  const height = (totalHeight * slotsPerBar) / total;
170
170
  for (const point of series.points) {
171
171
  const pointMarkerOptions = point.marker || {}, symbol = (pointMarkerOptions.symbol ||
172
- seriesMarkerOptions.symbol), radius = (0,external_highcharts_src_js_default_namespaceObject.pick)(pointMarkerOptions.radius, seriesMarkerOptions.radius), isSquare = symbol !== 'rect', width = isSquare ? height : slotWidth, shapeArgs = point.shapeArgs || {}, startX = (shapeArgs.x || 0) + ((shapeArgs.width || 0) -
172
+ seriesMarkerOptions.symbol), radius = pointMarkerOptions.radius ??
173
+ seriesMarkerOptions.radius, isSquare = symbol !== 'rect', width = isSquare ? height : slotWidth, shapeArgs = point.shapeArgs || {}, startX = (shapeArgs.x || 0) + ((shapeArgs.width || 0) -
173
174
  slotsPerBar * width) / 2, positiveYValue = Math.abs(point.y ?? 0), shapeY = (shapeArgs.y || 0), shapeHeight = (shapeArgs.height || 0);
174
175
  let graphics, x = startX, y = point.negative ? shapeY : shapeY + shapeHeight - height, slotColumn = 0;
175
176
  point.graphics = graphics = point.graphics || [];
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Highstock JS v13.0.1 (2026-08-17)
2
+ * Highstock JS v13.0.2 (2026-08-27)
3
3
  * @module highcharts/modules/drag-panes
4
4
  * @requires highcharts
5
5
  * @requires highcharts/modules/stock
@@ -1,6 +1,6 @@
1
1
  // SPDX-License-Identifier: LicenseRef-Highcharts
2
2
  /**
3
- * @license Highstock JS v13.0.1 (2026-08-17)
3
+ * @license Highstock JS v13.0.2 (2026-08-27)
4
4
  * @module highcharts/modules/drag-panes
5
5
  * @requires highcharts
6
6
  * @requires highcharts/modules/stock