highcharts 13.0.2 → 13.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1166) hide show
  1. package/bower.json +1 -1
  2. package/css/highcharts.css +6 -2
  3. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +10 -6
  4. package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +2 -1
  5. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +25 -1
  6. package/es-modules/Accessibility/KeyboardNavigation.js +1 -1
  7. package/es-modules/Accessibility/Utils/HTMLUtilities.js +13 -3
  8. package/es-modules/Core/Animation/AnimationUtilities.js +7 -2
  9. package/es-modules/Core/Animation/Fx.js +1 -0
  10. package/es-modules/Core/Axis/Axis.js +181 -211
  11. package/es-modules/Core/Axis/Axis3DComposition.js +13 -15
  12. package/es-modules/Core/Axis/AxisDefaults.js +9 -8
  13. package/es-modules/Core/Axis/BrokenAxis.js +5 -4
  14. package/es-modules/Core/Axis/Color/ColorAxis.js +66 -54
  15. package/es-modules/Core/Axis/Color/ColorAxisComposition.js +3 -0
  16. package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +6 -4
  17. package/es-modules/Core/Axis/DateTimeAxis.js +4 -3
  18. package/es-modules/Core/Axis/GridAxis.js +17 -13
  19. package/es-modules/Core/Axis/LogarithmicAxis.js +4 -3
  20. package/es-modules/Core/Axis/NavigatorAxisComposition.js +3 -4
  21. package/es-modules/Core/Axis/OrdinalAxis.js +0 -15
  22. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +135 -72
  23. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js +72 -124
  24. package/es-modules/Core/Axis/RadialAxis.js +50 -7
  25. package/es-modules/Core/Axis/ScrollbarAxis.js +3 -0
  26. package/es-modules/Core/Axis/Stacking/StackItem.js +49 -75
  27. package/es-modules/Core/Axis/Stacking/StackingAxis.js +34 -22
  28. package/es-modules/Core/Axis/Tick.js +95 -92
  29. package/es-modules/Core/Axis/TreeGrid/TreeGridAxis.js +9 -13
  30. package/es-modules/Core/Axis/WaterfallAxis.js +1 -1
  31. package/es-modules/Core/Chart/Chart.js +13 -4
  32. package/es-modules/Core/Chart/StockChart.js +20 -26
  33. package/es-modules/Core/Defaults.js +18 -0
  34. package/es-modules/Core/Globals.js +9 -7
  35. package/es-modules/Core/Pointer.js +7 -8
  36. package/es-modules/Core/Renderer/HTML/AST.js +18 -11
  37. package/es-modules/Core/Renderer/HTML/HTMLElement.js +5 -1
  38. package/es-modules/Core/Renderer/SVG/SVGElement.js +1 -0
  39. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +1 -1
  40. package/es-modules/Core/Renderer/SVG/Symbols.js +1 -1
  41. package/es-modules/Core/Renderer/SVG/TextBuilder.js +6 -2
  42. package/es-modules/Core/Series/OverlappingDataLabels.js +41 -32
  43. package/es-modules/Core/Series/Point.js +14 -11
  44. package/es-modules/Core/Series/Series.js +21 -10
  45. package/es-modules/Core/Tooltip.js +35 -40
  46. package/es-modules/Data/DataCursor.js +3 -2
  47. package/es-modules/Data/DataTable.js +21 -2
  48. package/es-modules/Data/DataTableCore.js +28 -4
  49. package/es-modules/Data/Formula/FormulaParser.js +30 -10
  50. package/es-modules/Extensions/Annotations/Annotation.js +5 -7
  51. package/es-modules/Extensions/Annotations/AnnotationChart.js +2 -1
  52. package/es-modules/Extensions/Boost/BoostSeries.js +4 -13
  53. package/es-modules/Extensions/Breadcrumbs/Breadcrumbs.js +6 -4
  54. package/es-modules/Extensions/Breadcrumbs/BreadcrumbsDefaults.js +1 -1
  55. package/es-modules/Extensions/Data.js +4 -2
  56. package/es-modules/Extensions/DragPanes/DragPanes.js +6 -9
  57. package/es-modules/Extensions/Drilldown/Drilldown.js +9 -4
  58. package/es-modules/Extensions/ExportData/ExportData.js +24 -4
  59. package/es-modules/Extensions/Pane/Pane.js +1 -1
  60. package/es-modules/Extensions/ParallelCoordinates/ParallelAxis.js +5 -4
  61. package/es-modules/Extensions/StaticScale.js +13 -11
  62. package/es-modules/Series/Area/AreaSeriesDefaults.js +1 -1
  63. package/es-modules/Series/AreaRange/AreaRangeSeriesDefaults.js +1 -1
  64. package/es-modules/Series/AreaSpline/AreaSplineSeries.js +1 -1
  65. package/es-modules/Series/AreaSplineRange/AreaSplineRangeSeries.js +1 -1
  66. package/es-modules/Series/Bar/BarSeries.js +1 -1
  67. package/es-modules/Series/Bellcurve/BellcurveSeriesDefaults.js +1 -1
  68. package/es-modules/Series/BoxPlot/BoxPlotSeriesDefaults.js +1 -1
  69. package/es-modules/Series/Bubble/BubbleSeries.js +1 -1
  70. package/es-modules/Series/Bullet/BulletSeriesDefaults.js +1 -1
  71. package/es-modules/Series/Candlestick/CandlestickSeriesDefaults.js +1 -1
  72. package/es-modules/Series/Column/ColumnSeriesDefaults.js +6 -3
  73. package/es-modules/Series/ColumnPyramid/ColumnPyramidSeriesDefaults.js +2 -3
  74. package/es-modules/Series/ColumnRange/ColumnRangeSeriesDefaults.js +1 -1
  75. package/es-modules/Series/Contour/ContourSeriesDefaults.js +12 -14
  76. package/es-modules/Series/ErrorBar/ErrorBarSeriesDefaults.js +1 -1
  77. package/es-modules/Series/Flags/FlagsPoint.js +4 -2
  78. package/es-modules/Series/Flags/FlagsPointOptions.js +12 -0
  79. package/es-modules/Series/Flags/FlagsSeries.js +8 -7
  80. package/es-modules/Series/Flags/FlagsSeriesDefaults.js +7 -7
  81. package/es-modules/Series/Flags/FlagsSeriesOptions.js +12 -0
  82. package/es-modules/Series/Flags/FlagsSymbols.js +5 -3
  83. package/es-modules/Series/Funnel/FunnelSeriesDefaults.js +1 -1
  84. package/es-modules/Series/Gauge/GaugeSeries.js +1 -1
  85. package/es-modules/Series/GeoHeatmap/GeoHeatmapSeries.js +1 -1
  86. package/es-modules/Series/HLC/HLCSeriesDefaults.js +1 -7
  87. package/es-modules/Series/Heatmap/HeatmapSeriesDefaults.js +1 -1
  88. package/es-modules/Series/HeikinAshi/HeikinAshiSeriesDefaults.js +1 -1
  89. package/es-modules/Series/Histogram/HistogramSeriesDefaults.js +1 -1
  90. package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +1 -1
  91. package/es-modules/Series/Item/ItemSeriesDefaults.js +1 -1
  92. package/es-modules/Series/Line/LineSeries.js +0 -1
  93. package/es-modules/Series/Map/MapSeriesDefaults.js +1 -1
  94. package/es-modules/Series/MapBubble/MapBubbleSeries.js +0 -1
  95. package/es-modules/Series/MapLine/MapLineSeriesDefaults.js +1 -1
  96. package/es-modules/Series/MapPoint/MapPointSeriesDefaults.js +0 -1
  97. package/es-modules/Series/Networkgraph/ReingoldFruchtermanLayout.js +5 -5
  98. package/es-modules/Series/OHLC/OHLCSeriesDefaults.js +0 -1
  99. package/es-modules/Series/PackedBubble/PackedBubbleChart.js +18 -0
  100. package/es-modules/Series/PackedBubble/PackedBubbleDataLabelOptions.js +12 -0
  101. package/es-modules/Series/PackedBubble/PackedBubbleIntegration.js +3 -3
  102. package/es-modules/Series/PackedBubble/PackedBubbleLayout.js +2 -2
  103. package/es-modules/Series/PackedBubble/PackedBubblePoint.js +1 -1
  104. package/es-modules/Series/PackedBubble/PackedBubblePointOptions.js +12 -0
  105. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +20 -20
  106. package/es-modules/Series/PackedBubble/PackedBubbleSeriesDefaults.js +2 -2
  107. package/es-modules/Series/PackedBubble/PackedBubbleSeriesOptions.js +12 -0
  108. package/es-modules/Series/ParetoSeries/ParetoPoint.js +17 -0
  109. package/es-modules/Series/ParetoSeries/ParetoPointOptions.js +12 -0
  110. package/es-modules/Series/ParetoSeries/ParetoSeries.js +3 -3
  111. package/es-modules/Series/ParetoSeries/ParetoSeriesDefaults.js +1 -1
  112. package/es-modules/Series/ParetoSeries/ParetoSeriesOptions.js +12 -0
  113. package/es-modules/Series/PathUtilities.js +3 -1
  114. package/es-modules/Series/Pictorial/PictorialPointOptions.js +12 -0
  115. package/es-modules/Series/Pictorial/PictorialSeries.js +5 -25
  116. package/es-modules/Series/Pictorial/PictorialSeriesDefaults.js +45 -0
  117. package/es-modules/Series/Pictorial/PictorialSeriesOptions.js +12 -0
  118. package/es-modules/Series/Pie/PieSeriesDefaults.js +1 -1
  119. package/es-modules/Series/Pie3D/Pie3DPoint.js +1 -1
  120. package/es-modules/Series/Pie3D/Pie3DSeries.js +6 -6
  121. package/es-modules/Series/PolarComposition.js +22 -21
  122. package/es-modules/Series/Polygon/PolygonPoint.js +17 -0
  123. package/es-modules/Series/Polygon/PolygonPointOptions.js +12 -0
  124. package/es-modules/Series/Polygon/PolygonSeriesDefaults.js +1 -1
  125. package/es-modules/Series/Polygon/PolygonSeriesOptions.js +12 -0
  126. package/es-modules/Series/Pyramid/PyramidPoint.js +19 -0
  127. package/es-modules/Series/Pyramid/PyramidPointOptions.js +14 -0
  128. package/es-modules/Series/Pyramid/PyramidSeries.js +1 -1
  129. package/es-modules/Series/Pyramid/PyramidSeriesDefaults.js +1 -1
  130. package/es-modules/Series/Pyramid/PyramidSeriesOptions.js +14 -0
  131. package/es-modules/Series/Pyramid3D/Pyramid3DPoint.js +19 -0
  132. package/es-modules/Series/Pyramid3D/Pyramid3DPointOptions.js +14 -0
  133. package/es-modules/Series/Pyramid3D/Pyramid3DSeries.js +1 -1
  134. package/es-modules/Series/Pyramid3D/Pyramid3DSeriesOptions.js +14 -0
  135. package/es-modules/Series/Renko/RenkoSeriesDefaults.js +1 -2
  136. package/es-modules/Series/Sankey/SankeySeriesDefaults.js +6 -7
  137. package/es-modules/Series/Scatter/ScatterSeriesDefaults.js +1 -1
  138. package/es-modules/Series/SolidGauge/SolidGaugeSeriesDefaults.js +1 -1
  139. package/es-modules/Series/Spline/SplineSeries.js +1 -1
  140. package/es-modules/Series/Streamgraph/StreamgraphSeriesDefaults.js +1 -1
  141. package/es-modules/Series/Sunburst/SunburstSeriesDefaults.js +1 -1
  142. package/es-modules/Series/TiledWebMap/TiledWebMapSeriesDefaults.js +2 -2
  143. package/es-modules/Series/Tilemap/TilemapSeriesDefaults.js +1 -1
  144. package/es-modules/Series/Timeline/TimelineSeriesDefaults.js +1 -1
  145. package/es-modules/Series/Treemap/TreemapSeriesDefaults.js +1 -1
  146. package/es-modules/Series/VariablePie/VariablePieSeriesDefaults.js +1 -1
  147. package/es-modules/Series/Variwide/VariwideComposition.js +11 -8
  148. package/es-modules/Series/Vector/VectorSeriesDefaults.js +1 -1
  149. package/es-modules/Series/Venn/VennSeriesDefaults.js +1 -1
  150. package/es-modules/Series/Waterfall/WaterfallSeriesDefaults.js +1 -1
  151. package/es-modules/Series/Windbarb/WindbarbSeriesDefaults.js +1 -1
  152. package/es-modules/Shared/Utilities.js +7 -0
  153. package/es-modules/Stock/Indicators/ABands/ABandsIndicator.js +1 -1
  154. package/es-modules/Stock/Indicators/AD/ADIndicator.js +0 -1
  155. package/es-modules/Stock/Indicators/AO/AOIndicator.js +1 -1
  156. package/es-modules/Stock/Indicators/APO/APOIndicator.js +1 -1
  157. package/es-modules/Stock/Indicators/ATR/ATRIndicator.js +0 -1
  158. package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +1 -1
  159. package/es-modules/Stock/Indicators/AroonOscillator/AroonOscillatorIndicator.js +2 -2
  160. package/es-modules/Stock/Indicators/BB/BBIndicator.js +0 -1
  161. package/es-modules/Stock/Indicators/CCI/CCIIndicator.js +0 -1
  162. package/es-modules/Stock/Indicators/CMF/CMFIndicator.js +0 -1
  163. package/es-modules/Stock/Indicators/CMO/CMOIndicator.js +0 -1
  164. package/es-modules/Stock/Indicators/Chaikin/ChaikinIndicator.js +1 -1
  165. package/es-modules/Stock/Indicators/DEMA/DEMAIndicator.js +1 -1
  166. package/es-modules/Stock/Indicators/DMI/DMIIndicator.js +3 -3
  167. package/es-modules/Stock/Indicators/DPO/DPOIndicator.js +1 -1
  168. package/es-modules/Stock/Indicators/DisparityIndex/DisparityIndexIndicator.js +3 -3
  169. package/es-modules/Stock/Indicators/EMA/EMAIndicator.js +0 -1
  170. package/es-modules/Stock/Indicators/IKH/IKHIndicator.js +0 -1
  171. package/es-modules/Stock/Indicators/KeltnerChannels/KeltnerChannelsIndicator.js +1 -1
  172. package/es-modules/Stock/Indicators/LinearRegression/LinearRegressionIndicator.js +0 -1
  173. package/es-modules/Stock/Indicators/LinearRegressionAngle/LinearRegressionAngleIndicator.js +0 -1
  174. package/es-modules/Stock/Indicators/LinearRegressionIntercept/LinearRegressionInterceptIndicator.js +0 -1
  175. package/es-modules/Stock/Indicators/LinearRegressionSlopes/LinearRegressionSlopesIndicator.js +0 -1
  176. package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +0 -1
  177. package/es-modules/Stock/Indicators/MFI/MFIIndicator.js +0 -1
  178. package/es-modules/Stock/Indicators/Momentum/MomentumIndicator.js +0 -1
  179. package/es-modules/Stock/Indicators/NATR/NATRIndicator.js +0 -1
  180. package/es-modules/Stock/Indicators/OBV/OBVIndicator.js +0 -1
  181. package/es-modules/Stock/Indicators/PC/PCIndicator.js +1 -1
  182. package/es-modules/Stock/Indicators/PPO/PPOIndicator.js +1 -1
  183. package/es-modules/Stock/Indicators/PSAR/PSARIndicator.js +0 -1
  184. package/es-modules/Stock/Indicators/PivotPoints/PivotPointsIndicator.js +0 -1
  185. package/es-modules/Stock/Indicators/PriceEnvelopes/PriceEnvelopesIndicator.js +0 -1
  186. package/es-modules/Stock/Indicators/ROC/ROCIndicator.js +0 -1
  187. package/es-modules/Stock/Indicators/RSI/RSIIndicator.js +0 -1
  188. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +1 -1
  189. package/es-modules/Stock/Indicators/Stochastic/StochasticIndicator.js +3 -3
  190. package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +1 -1
  191. package/es-modules/Stock/Indicators/TEMA/TEMAIndicator.js +1 -1
  192. package/es-modules/Stock/Indicators/TRIX/TRIXIndicator.js +1 -1
  193. package/es-modules/Stock/Indicators/TrendLine/TrendLineIndicator.js +0 -1
  194. package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +1 -1
  195. package/es-modules/Stock/Indicators/VWAP/VWAPIndicator.js +0 -1
  196. package/es-modules/Stock/Indicators/WMA/WMAIndicator.js +0 -1
  197. package/es-modules/Stock/Indicators/WilliamsR/WilliamsRIndicator.js +1 -1
  198. package/es-modules/Stock/Indicators/Zigzag/ZigzagIndicator.js +0 -1
  199. package/es-modules/Stock/Navigator/ChartNavigatorComposition.js +5 -5
  200. package/es-modules/Stock/Navigator/Navigator.js +1 -5
  201. package/es-modules/Stock/Navigator/StandaloneNavigator.js +38 -8
  202. package/es-modules/Stock/RangeSelector/RangeSelectorComposition.js +2 -2
  203. package/es-modules/Stock/Scrollbar/ScrollbarDefaults.js +1 -3
  204. package/es-modules/masters/highcharts-3d.src.js +1 -1
  205. package/es-modules/masters/highcharts-autoload.src.js +1 -1
  206. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  207. package/es-modules/masters/highcharts-more.src.js +1 -1
  208. package/es-modules/masters/highcharts.src.js +1 -1
  209. package/es-modules/masters/highmaps.src.js +1 -1
  210. package/es-modules/masters/highstock.src.js +1 -1
  211. package/es-modules/masters/i18n/fr-FR.src.d.ts +1 -1
  212. package/es-modules/masters/i18n/fr-FR.src.js +1 -1
  213. package/es-modules/masters/i18n/nb-NO.src.d.ts +1 -1
  214. package/es-modules/masters/i18n/nb-NO.src.js +1 -1
  215. package/es-modules/masters/i18n/zh-CN.src.d.ts +1 -1
  216. package/es-modules/masters/i18n/zh-CN.src.js +1 -1
  217. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  218. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  219. package/es-modules/masters/indicators/ao.src.js +1 -1
  220. package/es-modules/masters/indicators/apo.src.js +1 -1
  221. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  222. package/es-modules/masters/indicators/aroon.src.js +1 -1
  223. package/es-modules/masters/indicators/atr.src.js +1 -1
  224. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  225. package/es-modules/masters/indicators/cci.src.js +1 -1
  226. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  227. package/es-modules/masters/indicators/cmf.src.js +1 -1
  228. package/es-modules/masters/indicators/cmo.src.js +1 -1
  229. package/es-modules/masters/indicators/dema.src.js +1 -1
  230. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  231. package/es-modules/masters/indicators/dmi.src.js +1 -1
  232. package/es-modules/masters/indicators/dpo.src.js +1 -1
  233. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  234. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  235. package/es-modules/masters/indicators/indicators.src.js +1 -1
  236. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  237. package/es-modules/masters/indicators/klinger.src.js +1 -1
  238. package/es-modules/masters/indicators/macd.src.js +1 -1
  239. package/es-modules/masters/indicators/mfi.src.js +1 -1
  240. package/es-modules/masters/indicators/momentum.src.js +1 -1
  241. package/es-modules/masters/indicators/natr.src.js +1 -1
  242. package/es-modules/masters/indicators/obv.src.js +1 -1
  243. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  244. package/es-modules/masters/indicators/ppo.src.js +1 -1
  245. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  246. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  247. package/es-modules/masters/indicators/psar.src.js +1 -1
  248. package/es-modules/masters/indicators/regressions.src.js +1 -1
  249. package/es-modules/masters/indicators/roc.src.js +1 -1
  250. package/es-modules/masters/indicators/rsi.src.js +1 -1
  251. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  252. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  253. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  254. package/es-modules/masters/indicators/tema.src.js +1 -1
  255. package/es-modules/masters/indicators/trendline.src.js +1 -1
  256. package/es-modules/masters/indicators/trix.src.js +1 -1
  257. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  258. package/es-modules/masters/indicators/vwap.src.js +1 -1
  259. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  260. package/es-modules/masters/indicators/wma.src.js +1 -1
  261. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  262. package/es-modules/masters/modules/accessibility.src.js +1 -1
  263. package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
  264. package/es-modules/masters/modules/annotations.src.js +1 -1
  265. package/es-modules/masters/modules/arc-diagram.src.js +1 -1
  266. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  267. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  268. package/es-modules/masters/modules/boost.src.js +1 -1
  269. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  270. package/es-modules/masters/modules/bullet.src.js +1 -1
  271. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  272. package/es-modules/masters/modules/contour.src.js +1 -1
  273. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  274. package/es-modules/masters/modules/cylinder.src.js +1 -1
  275. package/es-modules/masters/modules/data-sorting.src.js +1 -1
  276. package/es-modules/masters/modules/data-tools.src.js +1 -1
  277. package/es-modules/masters/modules/data.src.js +1 -1
  278. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  279. package/es-modules/masters/modules/debugger.src.js +1 -1
  280. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  281. package/es-modules/masters/modules/dotplot.src.js +1 -1
  282. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  283. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  284. package/es-modules/masters/modules/drilldown.src.js +1 -1
  285. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  286. package/es-modules/masters/modules/export-data.src.js +1 -1
  287. package/es-modules/masters/modules/exporting.src.js +1 -1
  288. package/es-modules/masters/modules/flowmap.src.js +1 -1
  289. package/es-modules/masters/modules/full-screen.src.js +1 -1
  290. package/es-modules/masters/modules/funnel.src.js +1 -1
  291. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  292. package/es-modules/masters/modules/gantt.src.js +1 -1
  293. package/es-modules/masters/modules/geoheatmap.src.js +1 -1
  294. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  295. package/es-modules/masters/modules/heatmap.src.js +1 -1
  296. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  297. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  298. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  299. package/es-modules/masters/modules/item-series.src.js +1 -1
  300. package/es-modules/masters/modules/lollipop.src.js +1 -1
  301. package/es-modules/masters/modules/map.src.js +1 -1
  302. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  303. package/es-modules/masters/modules/mouse-wheel-zoom.src.js +1 -1
  304. package/es-modules/masters/modules/navigator.src.js +1 -1
  305. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  306. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  307. package/es-modules/masters/modules/non-cartesian-zoom.src.js +1 -1
  308. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  309. package/es-modules/masters/modules/organization.src.js +1 -1
  310. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  311. package/es-modules/masters/modules/pareto.src.js +1 -1
  312. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  313. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  314. package/es-modules/masters/modules/pictorial.src.js +1 -1
  315. package/es-modules/masters/modules/pointandfigure.src.js +1 -1
  316. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  317. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  318. package/es-modules/masters/modules/renko.src.js +1 -1
  319. package/es-modules/masters/modules/sankey.src.js +1 -1
  320. package/es-modules/masters/modules/series-label.src.js +1 -1
  321. package/es-modules/masters/modules/series-on-point.src.js +1 -1
  322. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  323. package/es-modules/masters/modules/sonification.src.js +1 -1
  324. package/es-modules/masters/modules/static-scale.src.js +1 -1
  325. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  326. package/es-modules/masters/modules/stock.src.js +1 -1
  327. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  328. package/es-modules/masters/modules/sunburst.src.js +1 -1
  329. package/es-modules/masters/modules/textpath.src.js +1 -1
  330. package/es-modules/masters/modules/tiledwebmap.src.js +1 -1
  331. package/es-modules/masters/modules/tilemap.src.js +1 -1
  332. package/es-modules/masters/modules/timeline.src.js +1 -1
  333. package/es-modules/masters/modules/treegraph.src.js +1 -1
  334. package/es-modules/masters/modules/treegrid.src.js +1 -1
  335. package/es-modules/masters/modules/treemap.src.js +1 -1
  336. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  337. package/es-modules/masters/modules/variwide.src.js +1 -1
  338. package/es-modules/masters/modules/vector.src.js +1 -1
  339. package/es-modules/masters/modules/venn.src.js +1 -1
  340. package/es-modules/masters/modules/windbarb.src.js +1 -1
  341. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  342. package/es-modules/masters/modules/xrange.src.js +1 -1
  343. package/es-modules/masters/standalone-navigator.src.js +1 -1
  344. package/es-modules/masters/themes/adaptive.src.js +1 -1
  345. package/es-modules/masters/themes/avocado.src.js +1 -1
  346. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  347. package/es-modules/masters/themes/grid-light.src.js +1 -1
  348. package/es-modules/masters/themes/high-contrast.src.js +1 -1
  349. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  350. package/es-modules/masters/themes/sunset.src.js +1 -1
  351. package/es-modules/tsconfig.tsbuildinfo +1 -1
  352. package/esm/highcharts-3d.js +2 -2
  353. package/esm/highcharts-3d.src.js +38 -61
  354. package/esm/highcharts-autoload.js +2 -2
  355. package/esm/highcharts-autoload.src.js +18 -39
  356. package/esm/highcharts-gantt.js +1 -1
  357. package/esm/highcharts-gantt.src.js +1 -1
  358. package/esm/highcharts-more.js +2 -2
  359. package/esm/highcharts-more.src.js +142 -120
  360. package/esm/highcharts.js +4 -4
  361. package/esm/highcharts.src.js +824 -750
  362. package/esm/highmaps.js +1 -1
  363. package/esm/highmaps.src.js +1 -1
  364. package/esm/highstock.js +1 -1
  365. package/esm/highstock.src.js +1 -1
  366. package/esm/i18n/fr-FR.js +2 -2
  367. package/esm/i18n/fr-FR.src.js +17 -38
  368. package/esm/i18n/nb-NO.js +2 -2
  369. package/esm/i18n/nb-NO.src.js +17 -38
  370. package/esm/i18n/zh-CN.js +2 -2
  371. package/esm/i18n/zh-CN.src.js +17 -38
  372. package/esm/indicators/acceleration-bands.js +2 -2
  373. package/esm/indicators/acceleration-bands.src.js +18 -39
  374. package/esm/indicators/accumulation-distribution.js +2 -2
  375. package/esm/indicators/accumulation-distribution.src.js +17 -39
  376. package/esm/indicators/ao.js +2 -2
  377. package/esm/indicators/ao.src.js +18 -39
  378. package/esm/indicators/apo.js +2 -2
  379. package/esm/indicators/apo.src.js +18 -39
  380. package/esm/indicators/aroon-oscillator.js +2 -2
  381. package/esm/indicators/aroon-oscillator.src.js +19 -40
  382. package/esm/indicators/aroon.js +2 -2
  383. package/esm/indicators/aroon.src.js +18 -39
  384. package/esm/indicators/atr.js +2 -2
  385. package/esm/indicators/atr.src.js +17 -39
  386. package/esm/indicators/bollinger-bands.js +2 -2
  387. package/esm/indicators/bollinger-bands.src.js +17 -39
  388. package/esm/indicators/cci.js +2 -2
  389. package/esm/indicators/cci.src.js +17 -39
  390. package/esm/indicators/chaikin.js +2 -2
  391. package/esm/indicators/chaikin.src.js +18 -40
  392. package/esm/indicators/cmf.js +2 -2
  393. package/esm/indicators/cmf.src.js +17 -39
  394. package/esm/indicators/cmo.js +2 -2
  395. package/esm/indicators/cmo.src.js +17 -39
  396. package/esm/indicators/dema.js +2 -2
  397. package/esm/indicators/dema.src.js +18 -39
  398. package/esm/indicators/disparity-index.js +2 -2
  399. package/esm/indicators/disparity-index.src.js +20 -41
  400. package/esm/indicators/dmi.js +2 -2
  401. package/esm/indicators/dmi.src.js +20 -41
  402. package/esm/indicators/dpo.js +2 -2
  403. package/esm/indicators/dpo.src.js +18 -39
  404. package/esm/indicators/ichimoku-kinko-hyo.js +2 -2
  405. package/esm/indicators/ichimoku-kinko-hyo.src.js +18 -40
  406. package/esm/indicators/indicators-all.js +2 -2
  407. package/esm/indicators/indicators-all.src.js +76 -99
  408. package/esm/indicators/indicators.js +2 -2
  409. package/esm/indicators/indicators.src.js +48 -46
  410. package/esm/indicators/keltner-channels.js +2 -2
  411. package/esm/indicators/keltner-channels.src.js +18 -39
  412. package/esm/indicators/klinger.js +2 -2
  413. package/esm/indicators/klinger.src.js +17 -38
  414. package/esm/indicators/macd.js +2 -2
  415. package/esm/indicators/macd.src.js +17 -39
  416. package/esm/indicators/mfi.js +2 -2
  417. package/esm/indicators/mfi.src.js +17 -39
  418. package/esm/indicators/momentum.js +2 -2
  419. package/esm/indicators/momentum.src.js +17 -39
  420. package/esm/indicators/natr.js +2 -2
  421. package/esm/indicators/natr.src.js +17 -39
  422. package/esm/indicators/obv.js +2 -2
  423. package/esm/indicators/obv.src.js +17 -39
  424. package/esm/indicators/pivot-points.js +2 -2
  425. package/esm/indicators/pivot-points.src.js +17 -39
  426. package/esm/indicators/ppo.js +2 -2
  427. package/esm/indicators/ppo.src.js +18 -39
  428. package/esm/indicators/price-channel.js +2 -2
  429. package/esm/indicators/price-channel.src.js +18 -39
  430. package/esm/indicators/price-envelopes.js +2 -2
  431. package/esm/indicators/price-envelopes.src.js +17 -39
  432. package/esm/indicators/psar.js +2 -2
  433. package/esm/indicators/psar.src.js +17 -39
  434. package/esm/indicators/regressions.js +2 -2
  435. package/esm/indicators/regressions.src.js +17 -42
  436. package/esm/indicators/roc.js +2 -2
  437. package/esm/indicators/roc.src.js +17 -39
  438. package/esm/indicators/rsi.js +2 -2
  439. package/esm/indicators/rsi.src.js +17 -39
  440. package/esm/indicators/slow-stochastic.js +2 -2
  441. package/esm/indicators/slow-stochastic.src.js +17 -38
  442. package/esm/indicators/stochastic.js +2 -2
  443. package/esm/indicators/stochastic.src.js +20 -41
  444. package/esm/indicators/supertrend.js +2 -2
  445. package/esm/indicators/supertrend.src.js +19 -40
  446. package/esm/indicators/tema.js +2 -2
  447. package/esm/indicators/tema.src.js +18 -39
  448. package/esm/indicators/trendline.js +2 -2
  449. package/esm/indicators/trendline.src.js +17 -39
  450. package/esm/indicators/trix.js +2 -2
  451. package/esm/indicators/trix.src.js +18 -39
  452. package/esm/indicators/volume-by-price.js +2 -2
  453. package/esm/indicators/volume-by-price.src.js +18 -39
  454. package/esm/indicators/vwap.js +2 -2
  455. package/esm/indicators/vwap.src.js +17 -39
  456. package/esm/indicators/williams-r.js +2 -2
  457. package/esm/indicators/williams-r.src.js +18 -39
  458. package/esm/indicators/wma.js +2 -2
  459. package/esm/indicators/wma.src.js +17 -39
  460. package/esm/indicators/zigzag.js +2 -2
  461. package/esm/indicators/zigzag.src.js +17 -39
  462. package/esm/modules/accessibility.js +2 -2
  463. package/esm/modules/accessibility.src.js +90 -76
  464. package/esm/modules/annotations-advanced.js +3 -3
  465. package/esm/modules/annotations-advanced.src.js +36 -58
  466. package/esm/modules/annotations.js +3 -3
  467. package/esm/modules/annotations.src.js +36 -58
  468. package/esm/modules/arc-diagram.js +2 -2
  469. package/esm/modules/arc-diagram.src.js +18 -39
  470. package/esm/modules/arrow-symbols.js +3 -3
  471. package/esm/modules/arrow-symbols.src.js +17 -38
  472. package/esm/modules/boost-canvas.js +2 -2
  473. package/esm/modules/boost-canvas.src.js +57 -63
  474. package/esm/modules/boost.js +2 -2
  475. package/esm/modules/boost.src.js +56 -62
  476. package/esm/modules/broken-axis.js +2 -2
  477. package/esm/modules/broken-axis.src.js +21 -41
  478. package/esm/modules/bullet.js +2 -2
  479. package/esm/modules/bullet.src.js +18 -39
  480. package/esm/modules/coloraxis.js +2 -2
  481. package/esm/modules/coloraxis.src.js +92 -96
  482. package/esm/modules/contour.js +3 -3
  483. package/esm/modules/contour.src.js +29 -52
  484. package/esm/modules/current-date-indicator.js +2 -2
  485. package/esm/modules/current-date-indicator.src.js +17 -38
  486. package/esm/modules/cylinder.js +2 -2
  487. package/esm/modules/cylinder.src.js +18 -39
  488. package/esm/modules/data-sorting.js +2 -2
  489. package/esm/modules/data-sorting.src.js +18 -39
  490. package/esm/modules/data-tools.js +2 -2
  491. package/esm/modules/data-tools.src.js +110 -67
  492. package/esm/modules/data.js +4 -4
  493. package/esm/modules/data.src.js +53 -48
  494. package/esm/modules/datagrouping.js +2 -2
  495. package/esm/modules/datagrouping.src.js +52 -48
  496. package/esm/modules/debugger.js +2 -2
  497. package/esm/modules/debugger.src.js +17 -38
  498. package/esm/modules/dependency-wheel.js +2 -2
  499. package/esm/modules/dependency-wheel.src.js +17 -38
  500. package/esm/modules/dotplot.js +2 -2
  501. package/esm/modules/dotplot.src.js +17 -38
  502. package/esm/modules/drag-panes.js +2 -2
  503. package/esm/modules/drag-panes.src.js +22 -46
  504. package/esm/modules/draggable-points.js +2 -2
  505. package/esm/modules/draggable-points.src.js +17 -38
  506. package/esm/modules/drilldown.js +2 -2
  507. package/esm/modules/drilldown.src.js +40 -54
  508. package/esm/modules/dumbbell.js +2 -2
  509. package/esm/modules/dumbbell.src.js +18 -39
  510. package/esm/modules/export-data.js +2 -2
  511. package/esm/modules/export-data.src.js +42 -43
  512. package/esm/modules/exporting.js +2 -2
  513. package/esm/modules/exporting.src.js +26 -47
  514. package/esm/modules/flowmap.js +2 -2
  515. package/esm/modules/flowmap.src.js +17 -38
  516. package/esm/modules/full-screen.js +2 -2
  517. package/esm/modules/full-screen.src.js +17 -38
  518. package/esm/modules/funnel.js +2 -2
  519. package/esm/modules/funnel.src.js +21 -42
  520. package/esm/modules/funnel3d.js +2 -2
  521. package/esm/modules/funnel3d.src.js +18 -39
  522. package/esm/modules/gantt.js +2 -2
  523. package/esm/modules/gantt.src.js +84 -104
  524. package/esm/modules/geoheatmap.js +2 -2
  525. package/esm/modules/geoheatmap.src.js +18 -39
  526. package/esm/modules/grid-axis.js +2 -2
  527. package/esm/modules/grid-axis.src.js +34 -51
  528. package/esm/modules/heatmap.js +2 -2
  529. package/esm/modules/heatmap.src.js +20 -41
  530. package/esm/modules/heikinashi.js +2 -2
  531. package/esm/modules/heikinashi.src.js +18 -39
  532. package/esm/modules/histogram-bellcurve.js +2 -2
  533. package/esm/modules/histogram-bellcurve.src.js +19 -40
  534. package/esm/modules/hollowcandlestick.js +2 -2
  535. package/esm/modules/hollowcandlestick.src.js +18 -39
  536. package/esm/modules/item-series.js +2 -2
  537. package/esm/modules/item-series.src.js +19 -40
  538. package/esm/modules/lollipop.js +2 -2
  539. package/esm/modules/lollipop.src.js +18 -39
  540. package/esm/modules/map.js +2 -2
  541. package/esm/modules/map.src.js +64 -63
  542. package/esm/modules/marker-clusters.js +2 -2
  543. package/esm/modules/marker-clusters.src.js +49 -46
  544. package/esm/modules/mouse-wheel-zoom.js +2 -2
  545. package/esm/modules/mouse-wheel-zoom.src.js +17 -38
  546. package/esm/modules/navigator.js +2 -2
  547. package/esm/modules/navigator.src.js +72 -67
  548. package/esm/modules/networkgraph.js +2 -2
  549. package/esm/modules/networkgraph.src.js +24 -45
  550. package/esm/modules/no-data-to-display.js +2 -2
  551. package/esm/modules/no-data-to-display.src.js +17 -38
  552. package/esm/modules/non-cartesian-zoom.js +2 -2
  553. package/esm/modules/non-cartesian-zoom.src.js +17 -38
  554. package/esm/modules/offline-exporting.js +2 -2
  555. package/esm/modules/offline-exporting.src.js +19 -40
  556. package/esm/modules/organization.js +2 -2
  557. package/esm/modules/organization.src.js +20 -39
  558. package/esm/modules/parallel-coordinates.js +2 -2
  559. package/esm/modules/parallel-coordinates.src.js +24 -44
  560. package/esm/modules/pareto.js +2 -2
  561. package/esm/modules/pareto.src.js +21 -42
  562. package/esm/modules/pathfinder.js +2 -2
  563. package/esm/modules/pathfinder.src.js +20 -39
  564. package/esm/modules/pattern-fill.js +2 -2
  565. package/esm/modules/pattern-fill.src.js +17 -38
  566. package/esm/modules/pictorial.js +2 -2
  567. package/esm/modules/pictorial.src.js +71 -65
  568. package/esm/modules/pointandfigure.js +2 -2
  569. package/esm/modules/pointandfigure.src.js +47 -44
  570. package/esm/modules/price-indicator.js +2 -2
  571. package/esm/modules/price-indicator.src.js +17 -38
  572. package/esm/modules/pyramid3d.js +2 -2
  573. package/esm/modules/pyramid3d.src.js +18 -39
  574. package/esm/modules/renko.js +2 -2
  575. package/esm/modules/renko.src.js +18 -40
  576. package/esm/modules/sankey.js +2 -2
  577. package/esm/modules/sankey.src.js +24 -46
  578. package/esm/modules/series-label.js +2 -2
  579. package/esm/modules/series-label.src.js +17 -38
  580. package/esm/modules/series-on-point.js +2 -2
  581. package/esm/modules/series-on-point.src.js +47 -44
  582. package/esm/modules/solid-gauge.js +2 -2
  583. package/esm/modules/solid-gauge.src.js +18 -39
  584. package/esm/modules/sonification.js +2 -2
  585. package/esm/modules/sonification.src.js +18 -39
  586. package/esm/modules/static-scale.js +2 -2
  587. package/esm/modules/static-scale.src.js +30 -49
  588. package/esm/modules/stock-tools.js +2 -2
  589. package/esm/modules/stock-tools.src.js +29 -50
  590. package/esm/modules/stock.js +2 -2
  591. package/esm/modules/stock.src.js +117 -141
  592. package/esm/modules/streamgraph.js +2 -2
  593. package/esm/modules/streamgraph.src.js +18 -39
  594. package/esm/modules/sunburst.js +2 -2
  595. package/esm/modules/sunburst.src.js +38 -57
  596. package/esm/modules/textpath.js +2 -2
  597. package/esm/modules/textpath.src.js +17 -38
  598. package/esm/modules/tiledwebmap.js +3 -3
  599. package/esm/modules/tiledwebmap.src.js +19 -40
  600. package/esm/modules/tilemap.js +2 -2
  601. package/esm/modules/tilemap.src.js +22 -40
  602. package/esm/modules/timeline.js +2 -2
  603. package/esm/modules/timeline.src.js +19 -40
  604. package/esm/modules/treegraph.js +2 -2
  605. package/esm/modules/treegraph.src.js +23 -42
  606. package/esm/modules/treegrid.js +2 -2
  607. package/esm/modules/treegrid.src.js +47 -67
  608. package/esm/modules/treemap.js +2 -2
  609. package/esm/modules/treemap.src.js +34 -53
  610. package/esm/modules/variable-pie.js +2 -2
  611. package/esm/modules/variable-pie.src.js +19 -40
  612. package/esm/modules/variwide.js +2 -2
  613. package/esm/modules/variwide.src.js +28 -46
  614. package/esm/modules/vector.js +2 -2
  615. package/esm/modules/vector.src.js +18 -39
  616. package/esm/modules/venn.js +2 -2
  617. package/esm/modules/venn.src.js +18 -39
  618. package/esm/modules/windbarb.js +2 -2
  619. package/esm/modules/windbarb.src.js +18 -39
  620. package/esm/modules/wordcloud.js +2 -2
  621. package/esm/modules/wordcloud.src.js +18 -39
  622. package/esm/modules/xrange.js +2 -2
  623. package/esm/modules/xrange.src.js +18 -39
  624. package/esm/standalone-navigator.js +4 -4
  625. package/esm/standalone-navigator.src.js +876 -776
  626. package/esm/themes/adaptive.js +2 -2
  627. package/esm/themes/adaptive.src.js +17 -38
  628. package/esm/themes/avocado.js +2 -2
  629. package/esm/themes/avocado.src.js +17 -38
  630. package/esm/themes/dark-unica.js +2 -2
  631. package/esm/themes/dark-unica.src.js +17 -38
  632. package/esm/themes/grid-light.js +2 -2
  633. package/esm/themes/grid-light.src.js +17 -38
  634. package/esm/themes/high-contrast.js +2 -2
  635. package/esm/themes/high-contrast.src.js +17 -38
  636. package/esm/themes/sand-signika.js +2 -2
  637. package/esm/themes/sand-signika.src.js +17 -38
  638. package/esm/themes/sunset.js +2 -2
  639. package/esm/themes/sunset.src.js +17 -38
  640. package/highcharts-3d.js +2 -2
  641. package/highcharts-3d.src.js +43 -66
  642. package/highcharts-autoload.d.ts +0 -1
  643. package/highcharts-autoload.js +4 -4
  644. package/highcharts-autoload.src.d.ts +0 -1
  645. package/highcharts-autoload.src.js +833 -778
  646. package/highcharts-gantt.js +4 -4
  647. package/highcharts-gantt.src.js +895 -839
  648. package/highcharts-more.d.ts +10 -0
  649. package/highcharts-more.js +2 -2
  650. package/highcharts-more.src.d.ts +10 -0
  651. package/highcharts-more.src.js +147 -125
  652. package/highcharts.d.ts +2785 -80144
  653. package/highcharts.js +4 -4
  654. package/highcharts.src.d.ts +2785 -80144
  655. package/highcharts.src.js +832 -777
  656. package/highmaps.js +4 -4
  657. package/highmaps.src.js +915 -845
  658. package/highstock.js +4 -4
  659. package/highstock.src.js +903 -874
  660. package/i18n/fr-FR.js +2 -2
  661. package/i18n/fr-FR.src.js +26 -37
  662. package/i18n/nb-NO.js +2 -2
  663. package/i18n/nb-NO.src.js +26 -37
  664. package/i18n/zh-CN.js +2 -2
  665. package/i18n/zh-CN.src.js +26 -37
  666. package/indicators/acceleration-bands.js +2 -2
  667. package/indicators/acceleration-bands.src.js +23 -44
  668. package/indicators/accumulation-distribution.js +2 -2
  669. package/indicators/accumulation-distribution.src.js +22 -44
  670. package/indicators/ao.js +2 -2
  671. package/indicators/ao.src.js +23 -44
  672. package/indicators/apo.js +2 -2
  673. package/indicators/apo.src.js +23 -44
  674. package/indicators/aroon-oscillator.js +2 -2
  675. package/indicators/aroon-oscillator.src.js +24 -45
  676. package/indicators/aroon.js +2 -2
  677. package/indicators/aroon.src.js +23 -44
  678. package/indicators/atr.js +2 -2
  679. package/indicators/atr.src.js +22 -44
  680. package/indicators/bollinger-bands.js +2 -2
  681. package/indicators/bollinger-bands.src.js +22 -44
  682. package/indicators/cci.js +2 -2
  683. package/indicators/cci.src.js +22 -44
  684. package/indicators/chaikin.js +2 -2
  685. package/indicators/chaikin.src.js +23 -45
  686. package/indicators/cmf.js +2 -2
  687. package/indicators/cmf.src.js +22 -44
  688. package/indicators/cmo.js +2 -2
  689. package/indicators/cmo.src.js +22 -44
  690. package/indicators/dema.js +2 -2
  691. package/indicators/dema.src.js +23 -44
  692. package/indicators/disparity-index.js +2 -2
  693. package/indicators/disparity-index.src.js +25 -46
  694. package/indicators/dmi.js +2 -2
  695. package/indicators/dmi.src.js +25 -46
  696. package/indicators/dpo.js +2 -2
  697. package/indicators/dpo.src.js +23 -44
  698. package/indicators/ichimoku-kinko-hyo.js +2 -2
  699. package/indicators/ichimoku-kinko-hyo.src.js +23 -45
  700. package/indicators/indicators-all.js +2 -2
  701. package/indicators/indicators-all.src.js +81 -104
  702. package/indicators/indicators.js +2 -2
  703. package/indicators/indicators.src.js +53 -51
  704. package/indicators/keltner-channels.js +2 -2
  705. package/indicators/keltner-channels.src.js +23 -44
  706. package/indicators/klinger.js +2 -2
  707. package/indicators/klinger.src.js +22 -43
  708. package/indicators/macd.js +2 -2
  709. package/indicators/macd.src.js +22 -44
  710. package/indicators/mfi.js +2 -2
  711. package/indicators/mfi.src.js +22 -44
  712. package/indicators/momentum.js +2 -2
  713. package/indicators/momentum.src.js +22 -44
  714. package/indicators/natr.js +2 -2
  715. package/indicators/natr.src.js +22 -44
  716. package/indicators/obv.js +2 -2
  717. package/indicators/obv.src.js +22 -44
  718. package/indicators/pivot-points.js +2 -2
  719. package/indicators/pivot-points.src.js +22 -44
  720. package/indicators/ppo.js +2 -2
  721. package/indicators/ppo.src.js +23 -44
  722. package/indicators/price-channel.js +2 -2
  723. package/indicators/price-channel.src.js +23 -44
  724. package/indicators/price-envelopes.js +2 -2
  725. package/indicators/price-envelopes.src.js +22 -44
  726. package/indicators/psar.js +2 -2
  727. package/indicators/psar.src.js +22 -44
  728. package/indicators/regressions.js +2 -2
  729. package/indicators/regressions.src.js +22 -47
  730. package/indicators/roc.js +2 -2
  731. package/indicators/roc.src.js +22 -44
  732. package/indicators/rsi.js +2 -2
  733. package/indicators/rsi.src.js +22 -44
  734. package/indicators/slow-stochastic.js +2 -2
  735. package/indicators/slow-stochastic.src.js +22 -43
  736. package/indicators/stochastic.js +2 -2
  737. package/indicators/stochastic.src.js +25 -46
  738. package/indicators/supertrend.js +2 -2
  739. package/indicators/supertrend.src.js +24 -45
  740. package/indicators/tema.js +2 -2
  741. package/indicators/tema.src.js +23 -44
  742. package/indicators/trendline.js +2 -2
  743. package/indicators/trendline.src.js +22 -44
  744. package/indicators/trix.js +2 -2
  745. package/indicators/trix.src.js +23 -44
  746. package/indicators/volume-by-price.js +2 -2
  747. package/indicators/volume-by-price.src.js +23 -44
  748. package/indicators/vwap.js +2 -2
  749. package/indicators/vwap.src.js +22 -44
  750. package/indicators/williams-r.js +2 -2
  751. package/indicators/williams-r.src.js +23 -44
  752. package/indicators/wma.js +2 -2
  753. package/indicators/wma.src.js +22 -44
  754. package/indicators/zigzag.js +2 -2
  755. package/indicators/zigzag.src.js +22 -44
  756. package/modules/accessibility.js +2 -2
  757. package/modules/accessibility.src.js +95 -81
  758. package/modules/annotations-advanced.js +9 -9
  759. package/modules/annotations-advanced.src.js +41 -63
  760. package/modules/annotations.js +3 -3
  761. package/modules/annotations.src.js +41 -63
  762. package/modules/arc-diagram.js +2 -2
  763. package/modules/arc-diagram.src.js +23 -44
  764. package/modules/arrow-symbols.js +2 -2
  765. package/modules/arrow-symbols.src.js +17 -38
  766. package/modules/boost-canvas.js +2 -2
  767. package/modules/boost-canvas.src.js +62 -68
  768. package/modules/boost.js +2 -2
  769. package/modules/boost.src.js +61 -67
  770. package/modules/broken-axis.js +2 -2
  771. package/modules/broken-axis.src.js +26 -46
  772. package/modules/bullet.js +2 -2
  773. package/modules/bullet.src.js +23 -44
  774. package/modules/coloraxis.js +2 -2
  775. package/modules/coloraxis.src.js +97 -101
  776. package/modules/contour.js +5 -5
  777. package/modules/contour.src.js +111 -117
  778. package/modules/current-date-indicator.js +2 -2
  779. package/modules/current-date-indicator.src.js +17 -38
  780. package/modules/cylinder.js +2 -2
  781. package/modules/cylinder.src.js +23 -44
  782. package/modules/data-sorting.js +2 -2
  783. package/modules/data-sorting.src.js +18 -39
  784. package/modules/data-tools.js +2 -2
  785. package/modules/data-tools.src.js +110 -67
  786. package/modules/data.js +4 -4
  787. package/modules/data.src.js +58 -53
  788. package/modules/datagrouping.js +2 -2
  789. package/modules/datagrouping.src.js +57 -53
  790. package/modules/debugger.js +2 -2
  791. package/modules/debugger.src.js +17 -38
  792. package/modules/dependency-wheel.js +2 -2
  793. package/modules/dependency-wheel.src.js +22 -43
  794. package/modules/dotplot.js +2 -2
  795. package/modules/dotplot.src.js +22 -43
  796. package/modules/drag-panes.js +2 -2
  797. package/modules/drag-panes.src.js +22 -46
  798. package/modules/draggable-points.js +2 -2
  799. package/modules/draggable-points.src.js +17 -38
  800. package/modules/drilldown.js +2 -2
  801. package/modules/drilldown.src.js +45 -59
  802. package/modules/dumbbell.js +2 -2
  803. package/modules/dumbbell.src.js +23 -44
  804. package/modules/export-data.js +2 -2
  805. package/modules/export-data.src.js +47 -48
  806. package/modules/exporting.js +2 -2
  807. package/modules/exporting.src.js +31 -52
  808. package/modules/flowmap.js +2 -2
  809. package/modules/flowmap.src.js +22 -43
  810. package/modules/full-screen.js +2 -2
  811. package/modules/full-screen.src.js +22 -43
  812. package/modules/funnel.js +2 -2
  813. package/modules/funnel.src.js +26 -47
  814. package/modules/funnel3d.js +2 -2
  815. package/modules/funnel3d.src.js +23 -44
  816. package/modules/gantt.js +8 -8
  817. package/modules/gantt.src.js +93 -113
  818. package/modules/geoheatmap.js +2 -2
  819. package/modules/geoheatmap.src.js +23 -44
  820. package/modules/grid-axis.js +2 -2
  821. package/modules/grid-axis.src.js +39 -56
  822. package/modules/heatmap.js +4 -4
  823. package/modules/heatmap.src.js +101 -105
  824. package/modules/heikinashi.js +2 -2
  825. package/modules/heikinashi.src.js +23 -44
  826. package/modules/histogram-bellcurve.js +2 -2
  827. package/modules/histogram-bellcurve.src.js +24 -45
  828. package/modules/hollowcandlestick.js +2 -2
  829. package/modules/hollowcandlestick.src.js +23 -44
  830. package/modules/item-series.js +2 -2
  831. package/modules/item-series.src.js +24 -45
  832. package/modules/lollipop.js +2 -2
  833. package/modules/lollipop.src.js +23 -44
  834. package/modules/map.js +4 -4
  835. package/modules/map.src.js +146 -128
  836. package/modules/marker-clusters.js +2 -2
  837. package/modules/marker-clusters.src.js +49 -46
  838. package/modules/mouse-wheel-zoom.js +2 -2
  839. package/modules/mouse-wheel-zoom.src.js +17 -38
  840. package/modules/navigator.js +2 -2
  841. package/modules/navigator.src.js +77 -72
  842. package/modules/networkgraph.js +2 -2
  843. package/modules/networkgraph.src.js +29 -50
  844. package/modules/no-data-to-display.js +2 -2
  845. package/modules/no-data-to-display.src.js +22 -43
  846. package/modules/non-cartesian-zoom.js +2 -2
  847. package/modules/non-cartesian-zoom.src.js +17 -38
  848. package/modules/offline-exporting.js +2 -2
  849. package/modules/offline-exporting.src.js +24 -45
  850. package/modules/organization.js +3 -3
  851. package/modules/organization.src.js +25 -44
  852. package/modules/parallel-coordinates.js +2 -2
  853. package/modules/parallel-coordinates.src.js +29 -49
  854. package/modules/pareto.js +2 -2
  855. package/modules/pareto.src.js +26 -47
  856. package/modules/pathfinder.js +2 -2
  857. package/modules/pathfinder.src.js +25 -44
  858. package/modules/pattern-fill.js +2 -2
  859. package/modules/pattern-fill.src.js +17 -38
  860. package/modules/pictorial.js +2 -2
  861. package/modules/pictorial.src.js +76 -70
  862. package/modules/pointandfigure.js +2 -2
  863. package/modules/pointandfigure.src.js +52 -49
  864. package/modules/price-indicator.js +2 -2
  865. package/modules/price-indicator.src.js +17 -38
  866. package/modules/pyramid3d.js +2 -2
  867. package/modules/pyramid3d.src.js +23 -44
  868. package/modules/renko.js +2 -2
  869. package/modules/renko.src.js +23 -45
  870. package/modules/sankey.js +2 -2
  871. package/modules/sankey.src.js +29 -51
  872. package/modules/series-label.js +2 -2
  873. package/modules/series-label.src.js +22 -43
  874. package/modules/series-on-point.js +2 -2
  875. package/modules/series-on-point.src.js +52 -49
  876. package/modules/solid-gauge.js +2 -2
  877. package/modules/solid-gauge.src.js +23 -44
  878. package/modules/sonification.js +2 -2
  879. package/modules/sonification.src.js +23 -44
  880. package/modules/static-scale.js +2 -2
  881. package/modules/static-scale.src.js +30 -49
  882. package/modules/stock-tools.js +2 -2
  883. package/modules/stock-tools.src.js +34 -55
  884. package/modules/stock.js +6 -6
  885. package/modules/stock.src.js +132 -154
  886. package/modules/streamgraph.js +2 -2
  887. package/modules/streamgraph.src.js +23 -44
  888. package/modules/sunburst.js +2 -2
  889. package/modules/sunburst.src.js +43 -62
  890. package/modules/textpath.js +2 -2
  891. package/modules/textpath.src.js +17 -38
  892. package/modules/tiledwebmap.js +3 -3
  893. package/modules/tiledwebmap.src.js +24 -45
  894. package/modules/tilemap.js +2 -2
  895. package/modules/tilemap.src.js +27 -45
  896. package/modules/timeline.js +2 -2
  897. package/modules/timeline.src.js +24 -45
  898. package/modules/treegraph.js +2 -2
  899. package/modules/treegraph.src.js +28 -47
  900. package/modules/treegrid.js +2 -2
  901. package/modules/treegrid.src.js +52 -72
  902. package/modules/treemap.js +2 -2
  903. package/modules/treemap.src.js +39 -58
  904. package/modules/variable-pie.js +2 -2
  905. package/modules/variable-pie.src.js +24 -45
  906. package/modules/variwide.js +2 -2
  907. package/modules/variwide.src.js +33 -51
  908. package/modules/vector.js +2 -2
  909. package/modules/vector.src.js +23 -44
  910. package/modules/venn.js +2 -2
  911. package/modules/venn.src.js +23 -44
  912. package/modules/windbarb.js +2 -2
  913. package/modules/windbarb.src.js +23 -44
  914. package/modules/wordcloud.js +2 -2
  915. package/modules/wordcloud.src.js +23 -44
  916. package/modules/xrange.js +2 -2
  917. package/modules/xrange.src.js +23 -44
  918. package/options/abands.d.ts +183 -8
  919. package/options/abands.src.d.ts +183 -8
  920. package/options/ad.d.ts +176 -5
  921. package/options/ad.src.d.ts +176 -5
  922. package/options/ao.d.ts +202 -0
  923. package/options/ao.src.d.ts +202 -0
  924. package/options/apo.d.ts +178 -8
  925. package/options/apo.src.d.ts +178 -8
  926. package/options/arcdiagram.d.ts +785 -0
  927. package/options/arcdiagram.src.d.ts +785 -0
  928. package/options/area.d.ts +226 -0
  929. package/options/area.src.d.ts +226 -0
  930. package/options/arearange.d.ts +229 -8
  931. package/options/arearange.src.d.ts +229 -8
  932. package/options/areaspline.d.ts +1344 -8
  933. package/options/areaspline.src.d.ts +1344 -8
  934. package/options/areasplinerange.d.ts +972 -8
  935. package/options/areasplinerange.src.d.ts +972 -8
  936. package/options/aroon.d.ts +219 -0
  937. package/options/aroon.src.d.ts +219 -0
  938. package/options/aroonoscillator.d.ts +1140 -8
  939. package/options/aroonoscillator.src.d.ts +1140 -8
  940. package/options/atr.d.ts +210 -0
  941. package/options/atr.src.d.ts +210 -0
  942. package/options/bar.d.ts +183 -10
  943. package/options/bar.src.d.ts +183 -10
  944. package/options/bb.d.ts +1232 -0
  945. package/options/bb.src.d.ts +1232 -0
  946. package/options/bellcurve.d.ts +1167 -8
  947. package/options/bellcurve.src.d.ts +1167 -8
  948. package/options/boxplot.d.ts +163 -10
  949. package/options/boxplot.src.d.ts +163 -10
  950. package/options/bubble.d.ts +1005 -8
  951. package/options/bubble.src.d.ts +1005 -8
  952. package/options/bullet.d.ts +953 -8
  953. package/options/bullet.src.d.ts +953 -8
  954. package/options/candlestick.d.ts +1309 -8
  955. package/options/candlestick.src.d.ts +1309 -8
  956. package/options/cci.d.ts +210 -0
  957. package/options/cci.src.d.ts +210 -0
  958. package/options/chaikin.d.ts +180 -8
  959. package/options/chaikin.src.d.ts +180 -8
  960. package/options/cmf.d.ts +211 -0
  961. package/options/cmf.src.d.ts +211 -0
  962. package/options/cmo.d.ts +175 -5
  963. package/options/cmo.src.d.ts +175 -5
  964. package/options/column.d.ts +252 -2
  965. package/options/column.src.d.ts +252 -2
  966. package/options/columnpyramid.d.ts +1296 -0
  967. package/options/columnpyramid.src.d.ts +1296 -0
  968. package/options/columnrange.d.ts +216 -2
  969. package/options/columnrange.src.d.ts +216 -2
  970. package/options/contour.d.ts +1148 -0
  971. package/options/contour.src.d.ts +1148 -0
  972. package/options/cylinder.d.ts +183 -2
  973. package/options/cylinder.src.d.ts +183 -2
  974. package/options/dema.d.ts +1181 -0
  975. package/options/dema.src.d.ts +1181 -0
  976. package/options/dependencywheel.d.ts +315 -0
  977. package/options/dependencywheel.src.d.ts +315 -0
  978. package/options/disparityindex.d.ts +1157 -8
  979. package/options/disparityindex.src.d.ts +1157 -8
  980. package/options/dmi.d.ts +1227 -0
  981. package/options/dmi.src.d.ts +1227 -0
  982. package/options/dpo.d.ts +1140 -8
  983. package/options/dpo.src.d.ts +1140 -8
  984. package/options/dumbbell.d.ts +286 -0
  985. package/options/dumbbell.src.d.ts +286 -0
  986. package/options/ema.d.ts +1156 -5
  987. package/options/ema.src.d.ts +1156 -5
  988. package/options/errorbar.d.ts +1286 -0
  989. package/options/errorbar.src.d.ts +1286 -0
  990. package/options/flags.d.ts +1269 -8
  991. package/options/flags.src.d.ts +1269 -8
  992. package/options/flowmap.d.ts +551 -0
  993. package/options/flowmap.src.d.ts +551 -0
  994. package/options/funnel.d.ts +728 -10
  995. package/options/funnel.src.d.ts +728 -10
  996. package/options/gantt.d.ts +1011 -0
  997. package/options/gantt.src.d.ts +1011 -0
  998. package/options/gauge.d.ts +675 -0
  999. package/options/gauge.src.d.ts +675 -0
  1000. package/options/geoheatmap.d.ts +585 -8
  1001. package/options/geoheatmap.src.d.ts +585 -8
  1002. package/options/heatmap.d.ts +1054 -8
  1003. package/options/heatmap.src.d.ts +1054 -8
  1004. package/options/heikinashi.d.ts +178 -10
  1005. package/options/heikinashi.src.d.ts +178 -10
  1006. package/options/histogram.d.ts +1226 -0
  1007. package/options/histogram.src.d.ts +1226 -0
  1008. package/options/hlc.d.ts +223 -2
  1009. package/options/hlc.src.d.ts +223 -2
  1010. package/options/hollowcandlestick.d.ts +1335 -0
  1011. package/options/hollowcandlestick.src.d.ts +1335 -0
  1012. package/options/ikh.d.ts +228 -5
  1013. package/options/ikh.src.d.ts +228 -5
  1014. package/options/item.d.ts +217 -8
  1015. package/options/item.src.d.ts +217 -8
  1016. package/options/keltnerchannels.d.ts +1220 -0
  1017. package/options/keltnerchannels.src.d.ts +1220 -0
  1018. package/options/klinger.d.ts +1162 -0
  1019. package/options/klinger.src.d.ts +1162 -0
  1020. package/options/line.d.ts +1377 -8
  1021. package/options/line.src.d.ts +1377 -8
  1022. package/options/linearregression.d.ts +199 -5
  1023. package/options/linearregression.src.d.ts +199 -5
  1024. package/options/linearregressionangle.d.ts +1157 -5
  1025. package/options/linearregressionangle.src.d.ts +1157 -5
  1026. package/options/linearregressionintercept.d.ts +240 -0
  1027. package/options/linearregressionintercept.src.d.ts +240 -0
  1028. package/options/linearregressionslope.d.ts +240 -0
  1029. package/options/linearregressionslope.src.d.ts +240 -0
  1030. package/options/lollipop.d.ts +949 -0
  1031. package/options/lollipop.src.d.ts +949 -0
  1032. package/options/macd.d.ts +254 -0
  1033. package/options/macd.src.d.ts +254 -0
  1034. package/options/map.d.ts +150 -8
  1035. package/options/map.src.d.ts +150 -8
  1036. package/options/mapbubble.d.ts +1016 -8
  1037. package/options/mapbubble.src.d.ts +1016 -8
  1038. package/options/mapline.d.ts +994 -0
  1039. package/options/mapline.src.d.ts +994 -0
  1040. package/options/mappoint.d.ts +1105 -1
  1041. package/options/mappoint.src.d.ts +1105 -1
  1042. package/options/mfi.d.ts +181 -5
  1043. package/options/mfi.src.d.ts +181 -5
  1044. package/options/momentum.d.ts +215 -0
  1045. package/options/momentum.src.d.ts +215 -0
  1046. package/options/natr.d.ts +170 -5
  1047. package/options/natr.src.d.ts +170 -5
  1048. package/options/networkgraph.d.ts +365 -0
  1049. package/options/networkgraph.src.d.ts +365 -0
  1050. package/options/obv.d.ts +170 -5
  1051. package/options/obv.src.d.ts +170 -5
  1052. package/options/ohlc.d.ts +183 -7
  1053. package/options/ohlc.src.d.ts +183 -7
  1054. package/options/organization.d.ts +808 -0
  1055. package/options/organization.src.d.ts +808 -0
  1056. package/options/packedbubble.d.ts +877 -8
  1057. package/options/packedbubble.src.d.ts +877 -8
  1058. package/options/pareto.d.ts +1028 -0
  1059. package/options/pareto.src.d.ts +1028 -0
  1060. package/options/pc.d.ts +183 -8
  1061. package/options/pc.src.d.ts +183 -8
  1062. package/options/pictorial.d.ts +202 -2
  1063. package/options/pictorial.src.d.ts +202 -2
  1064. package/options/pie.d.ts +196 -8
  1065. package/options/pie.src.d.ts +196 -8
  1066. package/options/pivotpoints.d.ts +1199 -0
  1067. package/options/pivotpoints.src.d.ts +1199 -0
  1068. package/options/pointandfigure.d.ts +980 -0
  1069. package/options/pointandfigure.src.d.ts +980 -0
  1070. package/options/polygon.d.ts +234 -0
  1071. package/options/polygon.src.d.ts +234 -0
  1072. package/options/ppo.d.ts +1156 -8
  1073. package/options/ppo.src.d.ts +1156 -8
  1074. package/options/priceenvelopes.d.ts +1229 -0
  1075. package/options/priceenvelopes.src.d.ts +1229 -0
  1076. package/options/psar.d.ts +1156 -5
  1077. package/options/psar.src.d.ts +1156 -5
  1078. package/options/pyramid.d.ts +837 -2
  1079. package/options/pyramid.src.d.ts +837 -2
  1080. package/options/renko.d.ts +247 -10
  1081. package/options/renko.src.d.ts +247 -10
  1082. package/options/roc.d.ts +1215 -0
  1083. package/options/roc.src.d.ts +1215 -0
  1084. package/options/rsi.d.ts +1157 -5
  1085. package/options/rsi.src.d.ts +1157 -5
  1086. package/options/sankey.d.ts +276 -8
  1087. package/options/sankey.src.d.ts +276 -8
  1088. package/options/scatter.d.ts +3043 -1018
  1089. package/options/scatter.src.d.ts +3043 -1018
  1090. package/options/series.d.ts +175 -0
  1091. package/options/series.src.d.ts +175 -0
  1092. package/options/slowstochastic.d.ts +183 -0
  1093. package/options/slowstochastic.src.d.ts +183 -0
  1094. package/options/sma.d.ts +211 -0
  1095. package/options/sma.src.d.ts +211 -0
  1096. package/options/solidgauge.d.ts +218 -0
  1097. package/options/solidgauge.src.d.ts +218 -0
  1098. package/options/spline.d.ts +230 -0
  1099. package/options/spline.src.d.ts +230 -0
  1100. package/options/stochastic.d.ts +1170 -8
  1101. package/options/stochastic.src.d.ts +1170 -8
  1102. package/options/streamgraph.d.ts +1345 -8
  1103. package/options/streamgraph.src.d.ts +1345 -8
  1104. package/options/sunburst.d.ts +286 -9
  1105. package/options/sunburst.src.d.ts +286 -9
  1106. package/options/supertrend.d.ts +1208 -0
  1107. package/options/supertrend.src.d.ts +1208 -0
  1108. package/options/tema.d.ts +1140 -8
  1109. package/options/tema.src.d.ts +1140 -8
  1110. package/options/tiledwebmap.d.ts +164 -0
  1111. package/options/tiledwebmap.src.d.ts +164 -0
  1112. package/options/tilemap.d.ts +687 -0
  1113. package/options/tilemap.src.d.ts +687 -0
  1114. package/options/timeline.d.ts +282 -0
  1115. package/options/timeline.src.d.ts +282 -0
  1116. package/options/treegraph.d.ts +982 -0
  1117. package/options/treegraph.src.d.ts +982 -0
  1118. package/options/treemap.d.ts +1396 -22
  1119. package/options/treemap.src.d.ts +1396 -22
  1120. package/options/trendline.d.ts +211 -0
  1121. package/options/trendline.src.d.ts +211 -0
  1122. package/options/trix.d.ts +178 -8
  1123. package/options/trix.src.d.ts +178 -8
  1124. package/options/variablepie.d.ts +686 -8
  1125. package/options/variablepie.src.d.ts +686 -8
  1126. package/options/variwide.d.ts +178 -2
  1127. package/options/variwide.src.d.ts +178 -2
  1128. package/options/vbp.d.ts +576 -0
  1129. package/options/vbp.src.d.ts +576 -0
  1130. package/options/vector.d.ts +660 -0
  1131. package/options/vector.src.d.ts +660 -0
  1132. package/options/venn.d.ts +654 -0
  1133. package/options/venn.src.d.ts +654 -0
  1134. package/options/vwap.d.ts +1157 -5
  1135. package/options/vwap.src.d.ts +1157 -5
  1136. package/options/waterfall.d.ts +1254 -8
  1137. package/options/waterfall.src.d.ts +1254 -8
  1138. package/options/williamsr.d.ts +209 -0
  1139. package/options/williamsr.src.d.ts +209 -0
  1140. package/options/windbarb.d.ts +222 -2
  1141. package/options/windbarb.src.d.ts +222 -2
  1142. package/options/wma.d.ts +1156 -5
  1143. package/options/wma.src.d.ts +1156 -5
  1144. package/options/wordcloud.d.ts +682 -0
  1145. package/options/wordcloud.src.d.ts +682 -0
  1146. package/options/xrange.d.ts +1168 -0
  1147. package/options/xrange.src.d.ts +1168 -0
  1148. package/options/zigzag.d.ts +1197 -0
  1149. package/options/zigzag.src.d.ts +1197 -0
  1150. package/package.json +1 -1
  1151. package/standalone-navigator.js +4 -4
  1152. package/standalone-navigator.src.js +884 -803
  1153. package/themes/adaptive.js +2 -2
  1154. package/themes/adaptive.src.js +22 -43
  1155. package/themes/avocado.js +2 -2
  1156. package/themes/avocado.src.js +17 -38
  1157. package/themes/dark-unica.js +2 -2
  1158. package/themes/dark-unica.src.js +17 -38
  1159. package/themes/grid-light.js +2 -2
  1160. package/themes/grid-light.src.js +17 -38
  1161. package/themes/high-contrast.js +2 -2
  1162. package/themes/high-contrast.src.js +17 -38
  1163. package/themes/sand-signika.js +2 -2
  1164. package/themes/sand-signika.src.js +17 -38
  1165. package/themes/sunset.js +2 -2
  1166. package/themes/sunset.src.js +17 -38
@@ -1,5 +1,5 @@
1
1
  let e,t,i;/**
2
- * Highcharts JS v13.0.2 (2026-08-27)
2
+ * Highcharts JS v13.1.0 (2026-09-18)
3
3
  * @module highcharts/modules/boost
4
4
  * @requires highcharts
5
5
  *
@@ -11,4 +11,4 @@ let e,t,i;/**
11
11
  * A commercial license may be required depending on use,
12
12
  * see www.highcharts.com/license
13
13
  *
14
- * */import*as r from"../highcharts.js";let s={};s.n=e=>{let t=e&&e.__esModule?()=>e.default:()=>e;return s.d(t,{a:t}),t},s.d=(e,t)=>{if(Array.isArray(t))for(var i=0;i<t.length;){var r=t[i++],o=t[i++];s.o(e,r)?0===o&&i++:0===o?Object.defineProperty(e,r,{enumerable:!0,value:t[i++]}):Object.defineProperty(e,r,{enumerable:!0,get:o})}else for(var r in t)s.o(t,r)&&!s.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);let o=r.default;var n,a,l,h,d,f,u=s.n(o);let g=["area","areaspline","arearange","column","columnrange","bar","line","scatter","heatmap","bubble","treemap"],m={};g.forEach(e=>{m[e]=!0});let{composed:c}=u();function b(e){let t=e.series,i=e.boost=e.boost||{},r=e.options.boost||{},s=r.seriesThreshold??50;if(t.length>=s)return!0;if(1===t.length)return!1;let o=r.allowForce;if(void 0===o){for(let t of(o=!0,e.xAxis))if((t.min??-1/0)>(t.dataMin??-1/0)||(t.max??1/0)<(t.dataMax??1/0)){o=!1;break}}if(void 0!==i.forceChartBoost){if(o)return i.forceChartBoost;i.forceChartBoost=void 0}let n=0,a=0,l=0,h;for(let e of t)0!==(h=e.options).boostThreshold&&!1!==e.visible&&"heatmap"!==e.type&&(++a,m[e.type]&&++n,function(...e){let t=-Number.MAX_VALUE;return e.forEach(e=>{if(null!=e&&void 0!==e.length&&e.length>0)return t=e.length,!0}),t}(e.getColumn("x",!0),h.data||[],e.points)>=(h.boostThreshold||Number.MAX_VALUE)&&++l);return i.forceChartBoost=o&&(n===t.length&&l===n||!!i.markerGroup&&n===a&&l===n||l>5),i.forceChartBoost}function p(e){function t(){e.boost&&e.boost.wgl&&b(e)&&e.boost.wgl.render(e)}(0,o.addEvent)(e,"predraw",function(){e.boost=e.boost||{},e.boost.forceChartBoost=void 0,e.boosted=!1,e.axes.some(e=>e.isPanning)||e.boost.clear?.(),e.boost.canvas&&e.boost.wgl&&b(e)&&e.boost.wgl.allocateBuffer(e),e.boost.markerGroup&&e.xAxis&&e.xAxis.length>0&&e.yAxis&&e.yAxis.length>0&&e.boost.markerGroup.translate(e.xAxis[0].pos,e.yAxis[0].pos)}),(0,o.addEvent)(e,"load",t,{order:-1}),(0,o.addEvent)(e,"redraw",t);let i=-1,r=-1;(0,o.addEvent)(e.pointer,"afterGetHoverData",t=>{let s=t.hoverPoint?.series;if(e.boost=e.boost||{},e.boost.markerGroup&&s){let t=e.inverted?s.yAxis:s.xAxis,o=e.inverted?s.xAxis:s.yAxis;(t&&t.pos!==i||o&&o.pos!==r)&&(e.series.forEach(e=>{e.halo?.hide()}),e.boost.markerGroup.translate(t.pos,o.pos),i=t.pos,r=o.pos)}})}let x={compose:function(e,t){return t&&(0,o.pushUnique)(c,"Boost.Chart")&&e.prototype.callbacks.push(p),e},getBoostClipRect:function(e,t){let i=e.navigator,r={x:e.plotLeft,y:e.plotTop,width:e.plotWidth,height:e.plotHeight};if(i&&e.inverted?(r.width+=i.top+i.height,i.opposite||(r.x=i.left)):i&&!e.inverted&&(r.height=i.top+i.height-e.plotTop),t.is){let{xAxis:i,yAxis:s}=t;if(r=e.getClipBox(t),e.inverted){let e=r.width;r.width=r.height,r.height=e,r.x=s.pos,r.y=i.pos}else r.x=i.pos,r.y=s.pos}if(t===e){let t=e.inverted?e.xAxis:e.yAxis;e.inverted||i||!e.clipBox||(r.width=e.clipBox.width,r.height=e.clipBox.height),t.length<=1&&(r.y=Math.min(t[0].pos,r.y),r.height=t[0].pos-e.plotTop+t[0].len)}return r},isChartSeriesBoosting:b},A=r.default.Color;var y=s.n(A);let v={area:"LINES",arearange:"LINES",areaspline:"LINES",column:"LINES",columnrange:"LINES",bar:"LINES",line:"LINE_STRIP",scatter:"POINTS",heatmap:"TRIANGLES",treemap:"TRIANGLES",bubble:"POINTS"},P=class{constructor(e){if(this.errors=[],this.uLocations={},this.gl=e,e&&!this.createShader())return}bind(){this.gl&&this.shaderProgram&&this.gl.useProgram(this.shaderProgram)}createShader(){let e=this.stringToProgram("#version 100\n#define LN10 2.302585092994046\nprecision highp float;\nattribute vec4 aVertexPosition;\nattribute vec4 aColor;\nvarying highp vec2 position;\nvarying highp vec4 vColor;\nuniform mat4 uPMatrix;\nuniform float pSize;\nuniform float translatedThreshold;\nuniform bool hasThreshold;\nuniform bool skipTranslation;\nuniform float xAxisTrans;\nuniform float xAxisMin;\nuniform float xAxisMax;\nuniform float xAxisMinPad;\nuniform float xAxisPointRange;\nuniform float xAxisLen;\nuniform bool xAxisPostTranslate;\nuniform float xAxisOrdinalSlope;\nuniform float xAxisOrdinalOffset;\nuniform float xAxisPos;\nuniform bool xAxisCVSCoord;\nuniform bool xAxisIsLog;\nuniform bool xAxisReversed;\nuniform float yAxisTrans;\nuniform float yAxisMin;\nuniform float yAxisMax;\nuniform float yAxisMinPad;\nuniform float yAxisPointRange;\nuniform float yAxisLen;\nuniform bool yAxisPostTranslate;\nuniform float yAxisOrdinalSlope;\nuniform float yAxisOrdinalOffset;\nuniform float yAxisPos;\nuniform bool yAxisCVSCoord;\nuniform bool yAxisIsLog;\nuniform bool yAxisReversed;\nuniform bool isCircle;\nuniform bool isBubble;\nuniform bool bubbleSizeByArea;\nuniform float bubbleZMin;\nuniform float bubbleZMax;\nuniform float bubbleZThreshold;\nuniform float bubbleMinSize;\nuniform float bubbleMaxSize;\nuniform bool bubbleSizeAbs;\nuniform bool isInverted;\nfloat bubbleRadius(){\nfloat value = aVertexPosition.w;\nfloat zMax = bubbleZMax;\nfloat zMin = bubbleZMin;\nfloat radius = 0.0;\nfloat pos = 0.0;\nfloat zRange = zMax - zMin;\nif (bubbleSizeAbs){\nvalue = value - bubbleZThreshold;\nzMax = max(zMax - bubbleZThreshold, zMin - bubbleZThreshold);\nzMin = 0.0;\n}\nif (value < zMin){\nradius = bubbleZMin / 2.0 - 1.0;\n} else {\npos = zRange > 0.0 ? (value - zMin) / zRange : 0.5;\nif (bubbleSizeByArea && pos > 0.0){\npos = sqrt(pos);\n}\nradius = ceil(bubbleMinSize + pos * (bubbleMaxSize - bubbleMinSize)) / 2.0;\n}\nreturn radius * 2.0;\n}\nfloat translate(float val,\nfloat pointPlacement,\nfloat localA,\nfloat localMin,\nfloat minPixelPadding,\nfloat pointRange,\nfloat len,\nbool cvsCoord,\nbool isLog,\nbool reversed\n){\nfloat sign = 1.0;\nfloat cvsOffset = 0.0;\nif (cvsCoord) {\nsign *= -1.0;\ncvsOffset = len;\n}\nif (isLog) {\nval = log(val) / LN10;\n}\nif (reversed) {\nsign *= -1.0;\ncvsOffset -= sign * len;\n}\nreturn sign * (val - localMin) * localA + cvsOffset + \n(sign * minPixelPadding);\n}\nfloat xToPixels(float value) {\nif (skipTranslation){\nreturn value;// + xAxisPos;\n}\nreturn translate(value, 0.0, xAxisTrans, xAxisMin, xAxisMinPad, xAxisPointRange, xAxisLen, xAxisCVSCoord, xAxisIsLog, xAxisReversed);// + xAxisPos;\n}\nfloat yToPixels(float value, float checkThreshold) {\nfloat v;\nif (skipTranslation){\nv = value;// + yAxisPos;\n} else {\nv = translate(value, 0.0, yAxisTrans, yAxisMin, yAxisMinPad, yAxisPointRange, yAxisLen, yAxisCVSCoord, yAxisIsLog, yAxisReversed);// + yAxisPos;\nif (v > yAxisLen) {\nv = yAxisLen;\n}\n}\nif (checkThreshold > 0.0 && hasThreshold) {\nv = min(v, translatedThreshold);\n}\nreturn v;\n}\nvoid main(void) {\nif (isBubble){\ngl_PointSize = bubbleRadius();\n} else {\ngl_PointSize = pSize;\n}\nvColor = aColor;\nif (!skipTranslation && isCircle && (\naVertexPosition.x < xAxisMin ||\naVertexPosition.x > xAxisMax ||\naVertexPosition.y < yAxisMin ||\naVertexPosition.y > yAxisMax\n)) {\ngl_Position = uPMatrix * vec4(2.0, 2.0, 2.0, 1.0);\n} else if (skipTranslation && isInverted) {\ngl_Position = uPMatrix * vec4(aVertexPosition.y + yAxisPos, aVertexPosition.x + xAxisPos, 0.0, 1.0);\n} else if (isInverted) {\ngl_Position = uPMatrix * vec4(yToPixels(aVertexPosition.y, aVertexPosition.z) + yAxisPos, xToPixels(aVertexPosition.x) + xAxisPos, 0.0, 1.0);\n} else {\ngl_Position = uPMatrix * vec4(xToPixels(aVertexPosition.x) + xAxisPos, yToPixels(aVertexPosition.y, aVertexPosition.z) + yAxisPos, 0.0, 1.0);\n}\n}","vertex"),t=this.stringToProgram("precision highp float;\nuniform vec4 fillColor;\nvarying highp vec2 position;\nvarying highp vec4 vColor;\nuniform sampler2D uSampler;\nuniform bool isCircle;\nuniform bool hasColor;\nvoid main(void) {\nvec4 col = fillColor;\nvec4 tcol = texture2D(uSampler, gl_PointCoord.st);\nif (hasColor) {\ncol = vColor;\n}\nif (isCircle) {\ncol *= tcol;\nif (tcol.r < 0.0) {\ndiscard;\n} else {\ngl_FragColor = col;\n}\n} else {\ngl_FragColor = col;\n}\n}","fragment"),i=e=>this.gl.getUniformLocation(this.shaderProgram,e);return e&&t?(this.shaderProgram=this.gl.createProgram(),this.gl.attachShader(this.shaderProgram,e),this.gl.attachShader(this.shaderProgram,t),this.gl.linkProgram(this.shaderProgram),this.gl.getProgramParameter(this.shaderProgram,this.gl.LINK_STATUS))?(this.gl.useProgram(this.shaderProgram),this.gl.bindAttribLocation(this.shaderProgram,0,"aVertexPosition"),this.pUniform=i("uPMatrix"),this.psUniform=i("pSize"),this.fcUniform=i("fillColor"),this.isBubbleUniform=i("isBubble"),this.bubbleSizeAbsUniform=i("bubbleSizeAbs"),this.bubbleSizeAreaUniform=i("bubbleSizeByArea"),this.uSamplerUniform=i("uSampler"),this.skipTranslationUniform=i("skipTranslation"),this.isCircleUniform=i("isCircle"),this.isInverted=i("isInverted"),!0):(this.errors.push(this.gl.getProgramInfoLog(this.shaderProgram)),this.handleErrors(),this.shaderProgram=!1,!1):(this.shaderProgram=!1,this.handleErrors(),!1)}handleErrors(){this.errors.length&&(0,o.error)("[highcharts boost] shader error - "+this.errors.join("\n"))}stringToProgram(e,t){let i=this.gl.createShader("vertex"===t?this.gl.VERTEX_SHADER:this.gl.FRAGMENT_SHADER);return(this.gl.shaderSource(i,e),this.gl.compileShader(i),this.gl.getShaderParameter(i,this.gl.COMPILE_STATUS))?i:(this.errors.push("when compiling "+t+" shader:\n"+this.gl.getShaderInfoLog(i)),!1)}destroy(){this.gl&&this.shaderProgram&&(this.gl.deleteProgram(this.shaderProgram),this.shaderProgram=!1)}fillColorUniform(){return this.fcUniform}getProgram(){return this.shaderProgram}pointSizeUniform(){return this.psUniform}perspectiveUniform(){return this.pUniform}reset(){this.gl&&this.shaderProgram&&(this.gl.uniform1i(this.isBubbleUniform,0),this.gl.uniform1i(this.isCircleUniform,0))}setBubbleUniforms(e,t,i,r=1){let s=e.options,n=Number.MAX_VALUE,a=-Number.MAX_VALUE;if(this.gl&&this.shaderProgram&&e.is("bubble")){let l=e.getPxExtremes();n=s.zMin??(0,o.clamp)(t,!1===s.displayNegative?s.zThreshold:-Number.MAX_VALUE,n),a=s.zMax??Math.max(a,i),this.gl.uniform1i(this.isBubbleUniform,1),this.gl.uniform1i(this.isCircleUniform,1),this.gl.uniform1i(this.bubbleSizeAreaUniform,"width"!==e.options.sizeBy),this.gl.uniform1i(this.bubbleSizeAbsUniform,e.options.sizeByAbsoluteValue),this.setUniform("bubbleMinSize",l.minPxSize*r),this.setUniform("bubbleMaxSize",l.maxPxSize*r),this.setUniform("bubbleZMin",n),this.setUniform("bubbleZMax",a),this.setUniform("bubbleZThreshold",e.options.zThreshold)}}setColor(e){this.gl&&this.shaderProgram&&this.gl.uniform4f(this.fcUniform,e[0]/255,e[1]/255,e[2]/255,e[3])}setDrawAsCircle(e){this.gl&&this.shaderProgram&&this.gl.uniform1i(this.isCircleUniform,+!!e)}setInverted(e){this.gl&&this.shaderProgram&&this.gl.uniform1i(this.isInverted,e)}setPMatrix(e){this.gl&&this.shaderProgram&&this.gl.uniformMatrix4fv(this.pUniform,!1,e)}setPointSize(e){this.gl&&this.shaderProgram&&this.gl.uniform1f(this.psUniform,e)}setSkipTranslation(e){this.gl&&this.shaderProgram&&this.gl.uniform1i(this.skipTranslationUniform,+(!0===e))}setTexture(e){this.gl&&this.shaderProgram&&this.gl.uniform1i(this.uSamplerUniform,e)}setUniform(e,t){if(this.gl&&this.shaderProgram){let i=this.uLocations[e]=this.uLocations[e]||this.gl.getUniformLocation(this.shaderProgram,e);this.gl.uniform1f(i,t)}}},T=class{constructor(e,t,i){this.buffer=!1,this.iterator=0,this.preAllocated=!1,this.vertAttribute=!1,this.components=i||2,this.dataComponents=i,this.gl=e,this.shader=t}allocate(e){this.iterator=-1,this.preAllocated=new Float32Array(4*e)}bind(){if(!this.buffer)return!1;this.gl.vertexAttribPointer(this.vertAttribute,this.components,this.gl.FLOAT,!1,0,0)}build(e,t,i){let r;return(this.data=e||[],this.data&&0!==this.data.length||this.preAllocated)?(this.components=i||this.components,this.buffer&&this.gl.deleteBuffer(this.buffer),this.preAllocated||(r=new Float32Array(this.data)),this.buffer=this.gl.createBuffer(),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.buffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,this.preAllocated||r,this.gl.STATIC_DRAW),this.vertAttribute=this.gl.getAttribLocation(this.shader.getProgram(),t),this.gl.enableVertexAttribArray(this.vertAttribute),r=!1,!0):(this.destroy(),!1)}destroy(){this.buffer&&(this.gl.deleteBuffer(this.buffer),this.buffer=!1,this.vertAttribute=!1),this.iterator=0,this.components=this.dataComponents||2,this.data=[]}push(e,t,i,r){this.preAllocated&&(this.preAllocated[++this.iterator]=e,this.preAllocated[++this.iterator]=t,this.preAllocated[++this.iterator]=i,this.preAllocated[++this.iterator]=r)}render(e,t,i){let r=this.preAllocated?this.preAllocated.length:this.data?.length||0;return!!this.buffer&&!!r&&((!e||e>r||e<0)&&(e=0),(!t||t>r)&&(t=r),!(e>=t)&&(i=i||"POINTS",this.gl.drawArrays(this.gl[i],e/this.components,(t-e)/this.components),!0))}},{getBoostClipRect:C}=x,{parse:k}=y(),{doc:E,win:M}=u(),w={column:!0,columnrange:!0,bar:!0,area:!0,areaspline:!0,arearange:!0},S={scatter:!0,bubble:!0},U=["webgl","experimental-webgl","moz-webgl","webkit-3d"],R={},N=(e,t)=>{if(R[t])return R[t];let i=0===t.indexOf("var(")&&e[t.slice(4,-1).trim()];if(i)return R[t]=i,i;if(0===t.indexOf("color-mix(")){let i=/^color-mix\(in srgb,([a-z0-9\(\)\-\#]+),([a-z0-9\(\)\-\#]+) ([0-9\.%]+)/.exec(t);if(i){let r=parseFloat(i[3])/100,s=N(e,i[1]),o=N(e,i[2]),n=new(y())(s).tweenTo(new(y())(o),r);return R[t]=n,n}}return t};class L{static orthoMatrix(e,t){return[2/e,0,0,0,0,-(2/t),0,0,0,0,-2,0,-1,1,-1,1]}static seriesPointCount(e){let t,i,r;return e.boosted?(t=!!e.options.stacking,i=(e.getColumn("x").length?e.getColumn("x"):void 0)||e.options.xData||e.getColumn("x",!0),r=(t?e.data:i||e.options.data).length,"treemap"===e.type?r*=12:"heatmap"===e.type?r*=6:w[e.type]&&(r*=2),r):0}constructor(e){this.data=[],this.height=0,this.isInited=!1,this.markerData=[],this.series=[],this.textureHandles={},this.width=0,this.postRenderCallback=e,this.settings={pointSize:1,lineWidth:1,fillColor:"#AA00AA",useAlpha:!0,usePreallocated:!1,useGPUTranslations:!1,debug:{timeRendering:!1,timeSeriesProcessing:!1,timeSetup:!1,timeBufferCopy:!1,timeKDTree:!1,showSkipSummary:!1}}}getPixelRatio(){return this.settings.pixelRatio||M.devicePixelRatio||1}setOptions(e){"pixelRatio"in e||(e.pixelRatio=1),(0,o.merge)(!0,this.settings,e)}allocateBuffer(e){let t=this.vbuffer,i=0;this.settings.usePreallocated&&(e.series.forEach(e=>{e.boosted&&(i+=L.seriesPointCount(e))}),t&&t.allocate(i))}allocateBufferForSingleSeries(e){let t=this.vbuffer,i=0;this.settings.usePreallocated&&(e.boosted&&(i=L.seriesPointCount(e)),t&&t.allocate(i))}clear(){let e=this.gl;e&&e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT)}pushSeriesData(e,t){let i=this.data,r=this.settings,s=this.vbuffer,n=e.pointArrayMap&&"low,high"===e.pointArrayMap.join(","),{chart:a,options:l,sorted:h,xAxis:d,yAxis:f}=e,u=!!l.stacking,g=l.data,m=e.xAxis.getExtremes(),c=m.min-(e.xAxis.minPointOffset||0),b=m.max+(e.xAxis.minPointOffset||0),p=e.yAxis.getExtremes(),x=p.min-(e.yAxis.minPointOffset||0),A=p.max+(e.yAxis.minPointOffset||0),v=(e.getColumn("x").length?e.getColumn("x"):void 0)||l.xData||e.getColumn("x",!0),P=(e.getColumn("y").length?e.getColumn("y"):void 0)||l.yData||e.getColumn("y",!0),T=(e.getColumn("z").length?e.getColumn("z"):void 0)||l.zData||e.getColumn("z",!0),C=!v||0===v.length,{colorByPoint:E,connectNulls:M,threshold:S,zoneAxis:U="y",zones:R}=l,L=e.points||!1,_=u?e.data:v||g,z={x:Number.MAX_VALUE,y:0},D={x:-Number.MAX_VALUE,y:0},O=void 0===a.index,I=w[e.type],G=this.getPixelRatio(),B=a.options.colors||[],V=e.chart.plotWidth,X=!1,F=!1,j,q,H=0,W=!1,Y,K,Z,Q,$=-1,J=!1,ee=!1,et,ei=!1,er=!1,es,eo=!1,en=!0,ea=!0,el=[],eh=!1,ed=!1,ef=0,eu=0;if(l.boostData&&l.boostData.length>0)return;if(l.gapSize&&(ed="value"!==l.gapUnit?l.gapSize*e.closestPointRange:l.gapSize),a.boost){let e=a.renderer.circle(0,0,1).attr({fill:"var(--highcharts-background-color)"}).add(),t=new(y())(getComputedStyle(e.element).getPropertyValue("fill")).get(),i=new(y())(a.palette?.cssVars.dark["--highcharts-background-color"]||"").get();e.destroy(),a.boost.cssVars=a.palette?.cssVars[t===i?"dark":"light"]}let eg=a.boost?.cssVars||{};if(R?.length&&(el=[],R.forEach((e,t)=>{if("string"==typeof e.color){let i=k(N(eg,e.color)).rgba;i[0]/=255,i[1]/=255,i[2]/=255,el[t]=i,eh||void 0!==e.value||(eh=i)}}),!eh)){let t=e.pointAttribs&&e.pointAttribs().fill||e.color;eh=k("string"==typeof t?N(eg,t):"").rgba,eh[0]/=255,eh[1]/=255,eh[2]/=255}a.inverted&&(V=e.chart.plotHeight),e.closestPointRangePx=Number.MAX_VALUE;let em=e=>{e&&(t.colorData.push(e[0]),t.colorData.push(e[1]),t.colorData.push(e[2]),t.colorData.push(e[3]))},ec=(e,o,n,a=1,l)=>{em(l),1!==G&&(!r.useGPUTranslations||t.skipTranslation)&&(e*=G,o*=G,a*=G),r.usePreallocated&&s?(s.push(e,o,+!!n,a),ef+=4):(i.push(e),i.push(o),i.push(n?G:0),i.push(a))},eb=()=>{t.segments.length&&(t.segments[t.segments.length-1].to=i.length||ef)},ep=()=>{t.segments.length&&t.segments[t.segments.length-1].from===(i.length||ef)||(eb(),t.segments.push({from:i.length||ef}))},ex=(e,t,i,r,s)=>{em(s),ec(e+i,t),em(s),ec(e,t),em(s),ec(e,t+r),em(s),ec(e,t+r),em(s),ec(e+i,t+r),em(s),ec(e+i,t)};if(ep(),L&&L.length>0){t.skipTranslation=!0,t.drawMode="TRIANGLES",L[0].node&&L[0].node.levelDynamic&&L.sort((e,t)=>{if(e.node){if(e.node.levelDynamic>t.node.levelDynamic)return 1;if(e.node.levelDynamic<t.node.levelDynamic)return -1}return 0}),L.forEach(t=>{let i,r,s=t.plotY;if(void 0!==s&&!isNaN(s)&&null!==t.y&&t.shapeArgs){let{x:s=0,y:o=0,width:n=0,height:l=0}=t.shapeArgs;i=(r=a.styledMode?t.series.colorAttribs(t):r=t.series.pointAttribs(t))["stroke-width"]||0,"string"==typeof r.fill&&(r.fill=N(eg,r.fill)),es=k(r.fill).rgba,es[0]/=255,es[1]/=255,es[2]/=255,e.is("treemap")&&(i=i||1,"string"==typeof r.stroke&&(r.stroke=N(eg,r.stroke)),q=k(r.stroke).rgba,q[0]/=255,q[1]/=255,q[2]/=255,ex(s,o,n,l,q),i/=2),e.is("heatmap")&&a.inverted&&(s=d.len-s,o=f.len-o,n=-n,l=-l),ex(s+i,o+i,n-2*i,l-2*i,es)}}),eb();return}for(;$<_.length-1;){if(void 0===(Z=_[++$]))continue;if(O)break;let i=g&&g[$];if(!C){let t;(0,o.isObject)(i,!0)&&i.color&&(t=k(i.color).rgba);let r=e.options.keys?.indexOf("color");Array.isArray(i)&&r&&"string"==typeof i[r]?t=k(i[r]).rgba:E&&(eu%=B.length,t=k(N(eg,B[eu])).rgba),t&&((es=t)[0]=t[0]/255,es[1]=t[1]/255,es[2]=t[2]/255,es[3]=t[3]),eu++}if(C?(Y=Z[0],K=Z[1],_[$+1]&&(ee=_[$+1][0]),_[$-1]&&(J=_[$-1][0]),Z.length>=3&&(Q=Z[2],Z[2]>t.zMax&&(t.zMax=Z[2]),Z[2]<t.zMin&&(t.zMin=Z[2]))):(Y=Z,K=P?.[$],_[$+1]&&(ee=_[$+1]),_[$-1]&&(J=_[$-1]),T&&T.length&&(Q=T[$],T[$]>t.zMax&&(t.zMax=T[$]),T[$]<t.zMin&&(t.zMin=T[$]))),!M&&(null===Y||null===K)){ep();continue}if(ee&&ee>=c&&ee<=b&&(ei=!0),J&&J>=c&&J<=b&&(er=!0),n?(C&&(K=Z.slice(1,3)),et=e.getColumn("low",!0)?.[$],K=e.getColumn("high",!0)?.[$]||0):u&&(Y=Z.x,et=(K=Z.stackY)-Z.y),null!=x&&null!=A&&(en=K>=x&&K<=A),!h&&!en||(Y>b&&D.x<b&&(D.x=Y,D.y=K),Y<c&&z.x>c&&(z.x=Y,z.y=K),null===K&&M))continue;if(null===K||!en&&_.length>1&&!ei&&!er){ep();continue}if((h&&(ee>=c||Y>=c)&&(J<=b||Y<=b)||!h&&Y>=c&&Y<=b)&&(eo=!0),eo||ei||er){if(ed&&Y-J>ed&&ep(),R?.length){let e,t,i="x"===U?Y:K;R.some((e,r)=>void 0!==e.value&&i<e.value&&(t=r,!0)),void 0!==t&&el[t]&&(e=el[t]),es=e||eh||es}if(r.useGPUTranslations||(t.skipTranslation=!0,Y=d.toPixels(Y,!0),K=f.toPixels(K,!0),!(Y>V)||"POINTS"!==t.drawMode)){if(t.hasMarkers&&eo&&!1!==X&&(e.closestPointRangePx=Math.min(e.closestPointRangePx,Math.abs(Y-X))),!r.useGPUTranslations&&!r.usePreallocated&&X&&1>Math.abs(Y-X)&&F&&1>Math.abs(K-F)){r.debug.showSkipSummary&&++H;continue}I&&(j=et||0,(!1===et||void 0===et)&&(j=K<0?K:0),(n||u)&&!f.logarithmic||(j=Math.max(S??x,x)),r.useGPUTranslations||(j=f.toPixels(j,!0)),ec(Y,j,!1,0,es)),l.step&&!ea&&ec(Y,F,!1,2,es),ec(Y,K,!1,"bubble"===e.type?Q||1:2,es),X=Y,F=K,W=!0,ea=!1}}}r.debug.showSkipSummary&&console.log("skipped points:",H);let eA=(e,i)=>{if(r.useGPUTranslations||(t.skipTranslation=!0,e.x=d.toPixels(e.x,!0),e.y=f.toPixels(e.y,!0)),i){this.data=[e.x,e.y,0,2].concat(this.data);return}ec(e.x,e.y,0,2)};!W&&!1!==M&&"line_strip"===e.drawMode&&(z.x<Number.MAX_VALUE&&eA(z,!0),D.x>-Number.MAX_VALUE&&eA(D)),eb()}pushSeries(e){let t=this.markerData,i=this.series,r=this.settings;i.length>0&&i[i.length-1].hasMarkers&&(i[i.length-1].markerTo=t.length),r.debug.timeSeriesProcessing&&console.time("building "+e.type+" series");let s={segments:[],markerFrom:t.length,colorData:[],series:e,zMin:Number.MAX_VALUE,zMax:-Number.MAX_VALUE,hasMarkers:!!e.options.marker&&!1!==e.options.marker.enabled,showMarkers:!0,drawMode:v[e.type]||"LINE_STRIP"};e.index>=i.length?i.push(s):i[e.index]=s,this.pushSeriesData(e,s),r.debug.timeSeriesProcessing&&console.timeEnd("building "+e.type+" series")}flush(){let e=this.vbuffer;this.data=[],this.markerData=[],this.series=[],e&&e.destroy()}setXAxis(e){let t=this.shader;if(!t)return;let i=this.getPixelRatio();t.setUniform("xAxisTrans",e.transA*i),t.setUniform("xAxisMin",e.min),t.setUniform("xAxisMax",e.max),t.setUniform("xAxisMinPad",e.minPixelPadding*i),t.setUniform("xAxisPointRange",e.pointRange),t.setUniform("xAxisLen",e.len*i),t.setUniform("xAxisPos",e.pos*i),t.setUniform("xAxisCVSCoord",!e.horiz),t.setUniform("xAxisIsLog",!!e.logarithmic),t.setUniform("xAxisReversed",!!e.reversed)}setYAxis(e){let t=this.shader;if(!t)return;let i=this.getPixelRatio();t.setUniform("yAxisTrans",e.transA*i),t.setUniform("yAxisMin",e.min),t.setUniform("yAxisMax",e.max),t.setUniform("yAxisMinPad",e.minPixelPadding*i),t.setUniform("yAxisPointRange",e.pointRange),t.setUniform("yAxisLen",e.len*i),t.setUniform("yAxisPos",e.pos*i),t.setUniform("yAxisCVSCoord",!e.horiz),t.setUniform("yAxisIsLog",!!e.logarithmic),t.setUniform("yAxisReversed",!!e.reversed)}setThreshold(e,t){let i=this.shader;i&&(i.setUniform("hasThreshold",e),i.setUniform("translatedThreshold",t))}renderChart(e){let t=this.gl,i=this.settings,r=this.shader,s=this.vbuffer;R={};let n=this.getPixelRatio();if(!e)return!1;this.width=e.chartWidth*n,this.height=e.chartHeight*n;let a=this.height,l=this.width,h=e.options.colors||[];if(!t||!r||!l||!a)return!1;i.debug.timeRendering&&console.time("gl rendering"),t.canvas.width=l,t.canvas.height=a,r.bind(),t.viewport(0,0,l,a),r.setPMatrix(L.orthoMatrix(l,a)),i.lineWidth>1&&!u().isMS&&t.lineWidth(i.lineWidth),s&&(s.build(this.data,"aVertexPosition",4),s.bind()),r.setInverted(e.inverted),this.series.forEach((l,d)=>{let f=l.series.options,u=f.marker,g=void 0!==f.lineWidth?f.lineWidth:1,m=f.threshold,c=(0,o.isNumber)(m),b=l.series.yAxis.getThreshold(m),p=(f.marker?f.marker.enabled:null)??(!!l.series.xAxis.isRadial||null)??l.series.closestPointRangePx>2*((f.marker?f.marker.radius:10)||10),x=this.textureHandles[u&&u.symbol||l.series.symbol]||this.textureHandles.circle,A,v,P,E=[];if(0!==l.segments.length&&l.segments[0].from!==l.segments[0].to&&(x.isReady&&(t.bindTexture(t.TEXTURE_2D,x.handle),r.setTexture(x.handle)),e.styledMode?l.series.markerGroup===l.series.chart.boost?.markerGroup?(delete l.series.markerGroup,l.series.markerGroup=l.series.plotGroup("markerGroup","markers","visible",1,e.seriesGroup).addClass("highcharts-tracker"),P=l.series.markerGroup.getStyle("fill"),l.series.markerGroup.destroy(),l.series.markerGroup=l.series.chart.boost?.markerGroup):P=l.series.markerGroup?.getStyle("fill"):(P="POINTS"===l.drawMode&&l.series.pointAttribs&&l.series.pointAttribs().fill||l.series.color,f.colorByPoint&&"string"==typeof h[d]&&(P=h[d])),l.series.fillOpacity&&f.fillOpacity&&P&&(P=new(y())(P).setOpacity(f.fillOpacity??1).get()),"string"==typeof P&&(P=N(e.boost?.cssVars||{},P)),E=k(P).rgba,i.useAlpha||(E[3]=1),"add"===f.boostBlending?(t.blendFunc(t.SRC_ALPHA,t.ONE),t.blendEquation(t.FUNC_ADD)):"mult"===f.boostBlending||"multiply"===f.boostBlending?t.blendFunc(t.DST_COLOR,t.ZERO):"darken"===f.boostBlending?(t.blendFunc(t.ONE,t.ONE),t.blendEquation(t.FUNC_MIN)):t.blendFuncSeparate(t.SRC_ALPHA,t.ONE_MINUS_SRC_ALPHA,t.ONE,t.ONE_MINUS_SRC_ALPHA),r.reset(),l.colorData.length>0?(r.setUniform("hasColor",1),(v=new T(t,r)).build(Array(l.segments[0].from).concat(l.colorData),"aColor",4),v.bind()):(r.setUniform("hasColor",0),t.disableVertexAttribArray(t.getAttribLocation(r.getProgram(),"aColor"))),r.setColor(E),this.setXAxis(l.series.xAxis),this.setYAxis(l.series.yAxis),this.setThreshold(c,b),"POINTS"===l.drawMode&&r.setPointSize(((f.marker&&f.marker.radius)??.5)*2*n),r.setSkipTranslation(l.skipTranslation),"bubble"===l.series.type&&r.setBubbleUniforms(l.series,l.zMin,l.zMax,n),r.setDrawAsCircle(S[l.series.type]||!1),s)){if(g>0||"LINE_STRIP"!==l.drawMode){let{x:i,y:r,width:o,height:h}=C(e,l.series);for(t.enable(t.SCISSOR_TEST),t.scissor(i*n,a-(r+h)*n,o*n,h*n),A=0;A<l.segments.length;A++)s.render(l.segments[A].from,l.segments[A].to,l.drawMode);t.disable(t.SCISSOR_TEST)}if(l.hasMarkers&&p)for(r.setPointSize(((f.marker&&f.marker.radius)??5)*2*n),r.setDrawAsCircle(!0),A=0;A<l.segments.length;A++)s.render(l.segments[A].from,l.segments[A].to,"POINTS")}}),i.debug.timeRendering&&console.timeEnd("gl rendering"),this.postRenderCallback&&this.postRenderCallback(this),this.flush()}render(e){if(this.clear(),e.renderer.forExport)return this.renderChart(e);this.isInited?this.renderChart(e):setTimeout(()=>{this.render(e)},1)}setSize(e,t){let i=this.shader;i&&(this.width!==e||this.height!==t)&&(this.width=e,this.height=t,i.bind(),i.setPMatrix(L.orthoMatrix(e,t)))}init(e,t){let i=this.settings;if(this.isInited=!1,!e)return!1;i.debug.timeSetup&&console.time("gl setup");for(let t=0;t<U.length&&(this.gl=e.getContext(U[t],{}),!this.gl);++t);let r=this.gl;if(!r)return!1;t||this.flush(),r.enable(r.BLEND),r.blendFunc(r.SRC_ALPHA,r.ONE_MINUS_SRC_ALPHA),r.disable(r.DEPTH_TEST),r.depthFunc(r.LESS);let s=this.shader=new P(r);if(!s)return!1;this.vbuffer=new T(r,s);let o=(e,t)=>{let i={isReady:!1,texture:E.createElement("canvas"),handle:r.createTexture()},s=i.texture.getContext("2d");this.textureHandles[e]=i,i.texture.width=512,i.texture.height=512,s.mozImageSmoothingEnabled=!1,s.webkitImageSmoothingEnabled=!1,s.msImageSmoothingEnabled=!1,s.imageSmoothingEnabled=!1,s.strokeStyle="rgba(255, 255, 255, 0)",s.fillStyle="#FFF",t(s);try{r.activeTexture(r.TEXTURE0),r.bindTexture(r.TEXTURE_2D,i.handle),r.texImage2D(r.TEXTURE_2D,0,r.RGBA,r.RGBA,r.UNSIGNED_BYTE,i.texture),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,r.LINEAR),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,r.LINEAR),r.bindTexture(r.TEXTURE_2D,null),i.isReady=!0}catch{}};return o("circle",e=>{e.beginPath(),e.arc(256,256,256,0,2*Math.PI),e.stroke(),e.fill()}),o("square",e=>{e.fillRect(0,0,512,512)}),o("diamond",e=>{e.beginPath(),e.moveTo(256,0),e.lineTo(512,256),e.lineTo(256,512),e.lineTo(0,256),e.lineTo(256,0),e.fill()}),o("triangle",e=>{e.beginPath(),e.moveTo(0,512),e.lineTo(256,0),e.lineTo(512,512),e.lineTo(0,512),e.fill()}),o("triangle-down",e=>{e.beginPath(),e.moveTo(0,0),e.lineTo(256,512),e.lineTo(512,0),e.lineTo(0,0),e.fill()}),this.isInited=!0,i.debug.timeSetup&&console.timeEnd("gl setup"),!0}destroy(){let e=this.gl,t=this.shader,i=this.vbuffer;this.flush(),i&&i.destroy(),t&&t.destroy(),e&&((0,o.objectEach)(this.textureHandles,t=>{t.handle&&e.deleteTexture(t.handle)}),e.canvas.width=1,e.canvas.height=1)}}let{setLength:_,splice:z}={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,i){return Array.isArray(e)?(e.length=t,e):e[i?"subarray":"slice"](0,t)},splice:function(e,t,i,r,s=[]){if(Array.isArray(e))return Array.isArray(s)||(s=Array.from(s)),{removed:e.splice(t,i,...s),array:e};let o=Object.getPrototypeOf(e).constructor,n=e[r?"subarray":"slice"](t,t+i),a=new o(e.length-i+s.length);return a.set(e.subarray(0,t),0),a.set(s,t),a.set(e.subarray(t+i),t+s.length),{removed:n,array:a}}},D=class{constructor(e={}){this.isDataTable=!0,this.autoId=!e.id,this.columns={},this.id=e.id||(0,o.uniqueKey)(),this.rowCount=0,this.versionTag=(0,o.uniqueKey)();let t=0;(0,o.objectEach)(e.columns||{},(e,i)=>{this.columns[i]=e.slice(),t=Math.max(t,e.length)}),this.applyRowCount(t)}applyRowCount(e){this.rowCount=e,(0,o.objectEach)(this.columns,(t,i)=>{t.length!==e&&(this.columns[i]=_(t,e))})}deleteRows(e,t=1){if(t>0&&e<this.rowCount){let i=0;(0,o.objectEach)(this.columns,(r,s)=>{this.columns[s]=z(r,e,t).array,i=r.length}),this.rowCount=i}(0,o.fireEvent)(this,"afterDeleteRows",{rowIndex:e,rowCount:t}),this.versionTag=(0,o.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 i={},r=this.columns;for(let s of(t??(t=Object.keys(this.columns)),t))i[s]=r[s]?.[e];return i}setColumn(e,t=[],i=0,r){this.setColumns({[e]:t},i,r)}setColumns(e,t,i){let r=this.rowCount;(0,o.objectEach)(e,(e,t)=>{this.columns[t]=e.slice(),r=e.length}),this.applyRowCount(r),i?.silent||((0,o.fireEvent)(this,"afterSetColumns"),this.versionTag=(0,o.uniqueKey)())}setRow(e,t=this.rowCount,i,r){var s;let{columns:n}=this,a=i?this.rowCount+1:t+1,l=Object.keys(e);if(r?.addColumns!==!1)for(let e=0,t=l.length;e<t;e++)n[s=l[e]]||(n[s]=Array(this.rowCount));(0,o.objectEach)(n,(r,s)=>{r&&(i?r=z(r,t,0,!0,[e[s]]).array:r[t]=s in e?e[s]:r[t],n[s]=r)}),this.applyRowCount(Math.max(a,this.rowCount)),r?.silent||((0,o.fireEvent)(this,"afterSetRows",{rowIndex:t}),this.versionTag=(0,o.uniqueKey)())}getModified(){return this.modified||this}},{getBoostClipRect:O,isChartSeriesBoosting:I}=x,{getOptions:G}=u(),{composed:B,doc:V,noop:X,win:F}=u();function j(e,t){let i=t.boost;e&&i&&i.target&&i.canvas&&!I(t.chart)&&e.allocateBufferForSingleSeries(t)}function q(e){return(e&&e.options&&e.options.boost&&e.options.boost.enabled)??!0}function H(e,i){let r=e.constructor,s=e.seriesGroup||i.group,n=e.chartWidth,a=e.chartHeight,l=e,h="u">typeof SVGForeignObjectElement,d=!1;I(e)?l=e:(l=i,d=!!(i.options.events?.click||i.options.point?.events?.click));let f=l.boost=l.boost||{};if(h=!1,t||(t=V.createElement("canvas")),!f.target&&(f.canvas=t,e.renderer.forExport||!h?(l.renderTarget=f.target=e.renderer.image("",0,0,n,a).addClass("highcharts-boost-canvas").add(s),f.clear=function(){f.target.attr({href:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="})},f.copy=function(){f.resize(),f.target.attr({href:f.canvas.toDataURL("image/png")})}):(f.targetFo=e.renderer.createElement("foreignObject").add(s),l.renderTarget=f.target=V.createElement("canvas"),f.targetCtx=f.target.getContext("2d"),f.targetFo.element.appendChild(f.target),f.clear=function(){f.target.width=f.canvas.width,f.target.height=f.canvas.height},f.copy=function(){f.target.width=f.canvas.width,f.target.height=f.canvas.height,f.targetCtx.drawImage(f.canvas,0,0)}),f.resize=function(){n=e.chartWidth,a=e.chartHeight,(f.targetFo||f.target).attr({x:0,y:0,width:n,height:a}).css({pointerEvents:d?void 0:"none",mixedBlendMode:"normal",opacity:1}).addClass(d?"highcharts-tracker":""),l instanceof r&&l.boost?.markerGroup?.translate(e.plotLeft,e.plotTop)},f.clipRect=e.renderer.clipRect(),(f.targetFo||f.target).attr({zIndex:i.options.zIndex}),l instanceof r&&(l.boost.markerGroup=l.renderer.g().add(s).translate(i.xAxis.pos,i.yAxis.pos))),f.canvas.width=n,f.canvas.height=a,f.clipRect){let t=O(e,l);f.clipRect.attr(t),e.navigator||t.width!==e.clipBox.width||t.height!==e.clipBox.height?(f.targetFo||f.target).clip(f.clipRect):s?.clip(e.renderer.clipRect(t.x-4,t.y,t.width+4,t.height+4))}return f.resize(),f.clear(),!f.wgl&&(f.wgl=new L(e=>{e.settings.debug.timeBufferCopy&&console.time("buffer copy"),f.copy(),e.settings.debug.timeBufferCopy&&console.timeEnd("buffer copy")}),f.wgl.init(f.canvas)||(0,o.error)("[highcharts boost] - unable to init WebGL renderer"),f.wgl.setOptions(e.options.boost||{}),l instanceof r&&f.wgl.allocateBuffer(e)),f.wgl.setSize(n,a),f.wgl}function W(e){let t=e.points;if(t){let e,i;for(i=0;i<t.length;i+=1)(e=t[i])&&e.destroyElements&&e.destroyElements()}for(let t of(["graph","area","tracker"].forEach(t=>{let i=e[t];i&&(e[t]=i.destroy())}),e.zones))(0,o.destroyObjectProperties)(t,void 0,!0)}function Y(e,t,i,r,s,o){let n=(s=s||0)+(r=r||3e3),a=!0;for(;a&&s<n&&s<e.length;)a=t(e[s],s),++s;a&&(s<e.length?o?Y(e,t,i,r,s,o):F.requestAnimationFrame?F.requestAnimationFrame(function(){Y(e,t,i,r,s)}):setTimeout(Y,0,e,t,i,r,s):i&&i())}function K(e,t){let i=e.options.boostThreshold??Number.MAX_VALUE;if(0===i)return!1;let r=e.dataTable.getModified().rowCount,s=e.xAxis&&e.xAxis.options,n=e.yAxis&&e.yAxis.options,a=e.colorAxis&&e.colorAxis.options;return r>=i&&(0,o.isNumber)(n?.min)&&(0,o.isNumber)(n?.max)&&(!t||(0,o.isNumber)(s?.min)&&(0,o.isNumber)(s?.max))&&(!a||(0,o.isNumber)(a.min)&&(0,o.isNumber)(a.max))}let Z=(e,t)=>{let{options:i,forceCrop:r,chart:s}=e,o=i.boostThreshold??Number.MAX_VALUE;return!r&&0!==o&&(I(s)||(t?.length??0)>=o)};function Q(){let e=this,t=e.chart;t.boost&&t.boost.markerGroup===e.markerGroup&&(e.markerGroup=void 0),t.hoverPoints&&(t.hoverPoints=t.hoverPoints.filter(function(t){return t.series===e})),t.hoverPoint&&t.hoverPoint.series===e&&(t.hoverPoint=void 0)}function $(){let e=this.boost,t=this.chart.boost,i=t?.markerGroup;e&&e.canvas&&e.target&&(e.wgl&&e.wgl.clear(),e.clear&&e.clear()),i&&this.markerGroup===i&&this.chart.series.some(e=>e.visible&&e.markerGroup===i)&&i.show()}function J(e){let t=e.boost;t&&t.canvas&&t.target&&t.wgl&&!I(e.chart)&&t.wgl.render(e.chart)}function ee(e,t){let i=e.options,r=e.xAxis,s=e.pointClass;if(t instanceof s)return t;let n=i.data,a=e.is("scatter"),l=(a&&e.getColumn("x",!0).length?e.getColumn("x",!0):void 0)||(e.getColumn("x").length?e.getColumn("x"):void 0)||i.xData||e.getColumn("x",!0)||!1,h=e.getColumn("y",!0)||i.yData||!1,d=t.i,f=n?.[d]?.color,u=new s(e,a&&l&&h?[l[d],h[d]]:((0,o.isArray)(n)?n:[])[d],l?l[d]:void 0);if(a&&i?.keys?.length){let e=i.keys;for(let t=e.length-1;t>-1;t--)u[e[t]]=n[d][t]}return u.category=r.categories?r.categories[u.x]:u.x??u.x,u.key=u.name??u.category,u.dist=t.dist,u.distX=t.distX,u.plotX=t.plotX,u.plotY=t.plotY,u.percentage=t.percentage,u.isInside=e.isPointInside(u),f&&(u.color=f),u}function et(e){let{options:t,xAxis:i,yAxis:r}=this;if(!this.isDirty&&!i.isDirty&&!r.isDirty&&!e)return!1;this.yAxis.setTickInterval();let s=t.boostThreshold||0,n=t.cropThreshold,a=this.getColumn("x"),l=i.getExtremes(),h=l.max??Number.MAX_VALUE,d=l.min??-Number.MAX_VALUE,f=this.getColumn("y"),u=r.getExtremes(),g=u.max??Number.MAX_VALUE,m=u.min??-Number.MAX_VALUE,c=r.userMin??((0,o.isNumber)(r.options.min)?r.options.min:-Number.MAX_VALUE),b=r.userMax??((0,o.isNumber)(r.options.max)?r.options.max:Number.MAX_VALUE);if(!this.boosted&&i.old&&r.old&&d>=(i.old.min??-Number.MAX_VALUE)&&h<=(i.old.max??Number.MAX_VALUE)&&m>=(r.old.min??-Number.MAX_VALUE)&&g<=(r.old.max??Number.MAX_VALUE))return this.dataTable.getModified().setColumns({x:a,y:f}),!0;let p=this.dataTable.rowCount;if(!s||p<s||n&&!this.forceCrop&&!this.getExtremesFromAll&&!t.getExtremesFromAll&&p<n)return this.dataTable.getModified().setColumns({x:a,y:f}),!0;let x=[],A=[],y=[],v=!((0,o.isNumber)(l.max)||(0,o.isNumber)(l.min)),P=!((0,o.isNumber)(u.max)||(0,o.isNumber)(u.min)),T=!1,C,k=a[0],E=a[0],M,w=f?.[0],S=f?.[0];for(let e=0,t=a.length;e<t;++e)C=a[e],M=f?.[e],C>=d&&C<=h&&M>=c&&M<=b?(x.push(C),A.push(M),y.push(e),v&&(k=Math.max(k,C),E=Math.min(E,C)),P&&(w=Math.max(w,M),S=Math.min(S,M))):T=!0;return v&&(i.dataMax=Math.max(k,i.dataMax||0),i.dataMin=Math.min(E,i.dataMin||0)),P&&(r.dataMax=Math.max(w,r.dataMax||0),r.dataMin=Math.min(S,r.dataMin||0)),this.cropped=T,this.cropStart=0,T&&!this.dataTable.modified&&(this.dataTable.modified=new D,this.hasProcessedDataTable=!0),this.dataTable.getModified().setColumns({x:x,y:A}),!0}function ei(){let t=this.options||{},i=this.chart,r=i.boost,s=this.boost,n=this.xAxis,a=this.yAxis,l=t.xData||this.getColumn("x",!0),h=t.yData||this.getColumn("y",!0),d=this.getColumn("low",!0),f=this.getColumn("high",!0),u=t.data,g=n.getExtremes(),m=g.min-(n.minPointOffset||0),c=g.max+(n.minPointOffset||0),b=a.getExtremes(),p=b.min-(a.minPointOffset||0),x=b.max+(a.minPointOffset||0),A={},y=!!this.sampling,v=t.enableMouseTracking,P=t.threshold,T=this.pointArrayMap&&"low,high"===this.pointArrayMap.join(","),C=!!t.stacking,k=this.cropStart||0,E=this.requireSorting,M=!l,w="x"===t.findNearestPointBy,S=(this.getColumn("x").length?this.getColumn("x"):void 0)||this.options.xData||this.getColumn("x",!0),U=t.lineWidth??1,R=t.nullInteraction&&p,N=i.tooltip,L=!1,_,z=a.getThreshold(P),D,O,G,B;if(!this.boosted||(this.points?.forEach(e=>{e?.destroyElements?.()}),this.points=[],N&&!N.isHidden?(i.hoverPoint?.series===this||i.hoverPoints?.some(e=>e.series===this))&&(i.hoverPoint=i.hoverPoints=void 0,N.hide(0)):i.hoverPoints&&(i.hoverPoints=i.hoverPoints.filter(e=>e.series!==this)),n.isPanning||a.isPanning)||(L=H(i,this),i.boosted=!0,!this.visible))return;(this.points||this.graph)&&W(this),I(i)?(this.markerGroup&&this.markerGroup!==r?.markerGroup&&this.markerGroup.destroy(),this.markerGroup=r?.markerGroup,s&&s.target&&(this.renderTarget=s.target=s.target.destroy())):(this.markerGroup===r?.markerGroup&&(this.markerGroup=void 0),this.markerGroup=this.plotGroup("markerGroup","markers","visible",1,i.seriesGroup).addClass("highcharts-tracker"));let V=this.points=[],F=(t,r,s,o)=>{let l=!!S&&S[k+s],h=e=>{i.inverted&&(e=n.len-e,r=a.len-r),V.push({destroy:X,x:l,clientX:e,plotX:e,plotY:r,i:k+s,percentage:o})};t=Math.ceil(t),e=w?t:t+","+r,v&&(A[e]?l===S[S.length-1]&&(V.length--,h(t)):(A[e]=!0,h(t)))};this.buildKDTree=X,(0,o.fireEvent)(this,"renderCanvas"),r&&U>1&&this.is("line")&&(r.lineWidthFilter?.remove(),r.lineWidthFilter=i.renderer.definition({tagName:"filter",children:[{tagName:"feMorphology",attributes:{operator:"dilate",radius:.25*U}}],attributes:{id:"linewidth"}}),(s?.target||r.target)?.attr({filter:"url(#linewidth)"})),L&&(j(L,this),L.pushSeries(this),J(this));let q=L.settings,K=(0,o.isNumber)(q.chunkSize)&&q.chunkSize>0?q.chunkSize:3e3,Z=()=>{(0,o.fireEvent)(this,"renderedCanvas"),delete this.buildKDTree,this.options&&this.buildKDTree(),q.debug.timeKDTree&&console.timeEnd("kd tree building")};i.renderer.forExport||(q.debug.timeKDTree&&console.time("kd tree building"),Y(C?this.data.slice(k):l||u,function(e,t){let r=void 0===i.index,s,l,u,g,b,A=!1,v=!0;return!(0,o.defined)(e)||(!r&&(M?(s=e[0],l=e[1]):(s=e,l=h[t]??R??null),T?(M&&(l=e.slice(1,3)),A=d[t],l=f[t]):C&&(s=e.x,A=(l=e.stackY)-e.y,b=e.percentage),E||(v=(l||0)>=p&&l<=x),null!==l&&s>=m&&s<=c&&v&&(u=n.toPixels(s,!0),y?((void 0===G||u===_)&&(T||(A=l),(void 0===B||l>O)&&(O=l,B=t),(void 0===G||A<D)&&(D=A,G=t)),w&&u===_||(void 0!==G&&(g=a.toPixels(O,!0),z=a.toPixels(D,!0),F(u,g,B,b),z!==g&&F(u,z,G,b)),G=B=void 0,_=u)):F(u,g=Math.ceil(a.toPixels(l,!0)),t,b))),!r)},Z,K))}function er(e){let t=!0;if(this.chart.options&&this.chart.options.boost&&(t=void 0===this.chart.options.boost.enabled||this.chart.options.boost.enabled),!t||!this.boosted)return e.call(this);this.chart.boosted=!0;let i=H(this.chart,this);i&&(j(i,this),i.pushSeries(this)),J(this)}function es(e){if(this.boosted){if(K(this,!0))return{};if(this.xAxis?.isPanning||this.yAxis?.isPanning)return this}return e.apply(this,[].slice.call(arguments,1))}function eo(e){let t=this.options.data;if(q(this.chart)&&m[this.type]){let r=this.is("scatter")&&!this.is("bubble")&&!this.is("treemap")&&!this.is("heatmap");if(!Z(this,t)||r||this.is("treemap")||this.options.stacking||!K(this,!0)){if(this.boosted&&(this.xAxis?.isPanning||this.yAxis?.isPanning))return;r&&"treegrid"!==this.yAxis.type?et.call(this,arguments[1]):e.apply(this,[].slice.call(arguments,1)),t=this.getColumn("x",!0)}if(this.boosted=Z(this,t),this.boosted){let e;this.options.data?.length&&(e=this.getFirstValidPoint(this.options.data),(0,o.isNumber)(e)||(0,o.isArray)(e)||this.is("treemap")||(0,o.error)(12,!1,this.chart));var i=this;i.boost=i.boost||{getPoint:e=>ee(i,e)};let t=i.boost.altered=[];if(["allowDG","directTouch","stickyTracking"].forEach(e=>{t.push({prop:e,val:i[e],own:Object.hasOwnProperty.call(i,e)})}),i.allowDG=!1,i.directTouch=!1,i.stickyTracking=!0,i.finishedAnimating=!0,i.labelBySeries&&(i.labelBySeries=i.labelBySeries.destroy()),i.is("scatter")&&!i.is("treemap")&&i.data.length){for(let e of i.data)e?.destroy?.();i.data.length=0,i.points.length=0}}else!function(e){let t=e.boost,i=e.chart,r=i.boost;if(r?.markerGroup)for(let e of(r.markerGroup.destroy(),r.markerGroup=void 0,i.series))e.markerGroup=void 0,e.markerGroup=e.plotGroup("markerGroup","markers","visible",1,i.seriesGroup).addClass("highcharts-tracker");t&&((t.altered||[]).forEach(t=>{t.own?e[t.prop]=t.val:delete e[t.prop]}),t.clear&&t.clear()),(i.seriesGroup||e.group)?.clip()}(this)}else e.apply(this,[].slice.call(arguments,1))}function en(e){let t=e.apply(this,[].slice.call(arguments,1));return this.boost&&t?this.boost.getPoint(t):t}let ea=function(e,t,i,r){if((0,o.pushUnique)(B,"Boost.Series")){let s=G().plotOptions,n=e.prototype;if((0,o.addEvent)(e,"destroy",Q),(0,o.addEvent)(e,"hide",$),r&&(n.renderCanvas=ei),(0,o.wrap)(n,"getExtremes",es),(0,o.wrap)(n,"processData",eo),(0,o.wrap)(n,"searchPoint",en),["translate","generatePoints","drawTracker","drawPoints","render"].forEach(e=>(function(e,t,i){function r(e){let t=this.options.stacking&&("translate"===i||"generatePoints"===i);this.boosted&&!t&&q(this.chart)&&"heatmap"!==this.type&&"treemap"!==this.type&&m[this.type]&&0!==this.options.boostThreshold?"render"===i&&this.renderCanvas&&this.renderCanvas():e.call(this)}if((0,o.wrap)(e,i,r),"translate"===i)for(let e of["column","arearange","columnrange","heatmap","treemap"])t[e]&&(0,o.wrap)(t[e].prototype,i,r)})(n,t,e)),(0,o.wrap)(i.prototype,"firePointEvent",function(e,t,i){if("click"===t&&this.series.boosted){let e=i.point;if((e.dist||e.distX)>=(e.series.options.marker?.radius??10))return}return e.apply(this,[].slice.call(arguments,1))}),g.forEach(e=>{let i=s[e];i&&(i.boostThreshold=5e3,i.boostData=[],t[e].prototype.fillOpacity=!0)}),r){let{area:e,areaspline:i,bubble:r,column:s,heatmap:n,scatter:a,treemap:l}=t;if(e&&(0,o.extend)(e.prototype,{fill:!0,fillOpacity:!0,sampling:!0}),i&&(0,o.extend)(i.prototype,{fill:!0,fillOpacity:!0,sampling:!0}),r){let e=r.prototype;delete e.buildKDTree,(0,o.wrap)(e,"markerAttribs",function(e){return!this.boosted&&e.apply(this,[].slice.call(arguments,1))})}s&&(0,o.extend)(s.prototype,{fill:!0,sampling:!0}),a&&(a.prototype.fill=!0),[n,l].forEach(e=>{e&&(0,o.wrap)(e.prototype,"drawPoints",er)})}}return e},el={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dodgerblue:"#1e90ff",feldspar:"#d19275",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",grey:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgrey:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslateblue:"#8470ff",lightslategray:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370d8",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#d87093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",violetred:"#d02090",wheat:"#f5deb3",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},{doc:eh,win:ed}=u(),ef=["webgl","experimental-webgl","moz-webgl","webkit-3d"];function eu(){let e;if(void 0!==ed.WebGLRenderingContext){e=eh.createElement("canvas");for(let t=0;t<ef.length;++t)try{if(null!=e.getContext(ef[t]))return!0}catch{}}return!1}let eg=u();eg.hasWebGLSupport=eu,n=eg.Chart,a=eg.Axis,l=eg.Series,h=eg.seriesTypes,d=eg.Point,f=eg.Color,(i=eu())||(void 0!==u().initCanvasBoost?u().initCanvasBoost():(0,o.error)(26)),f&&!f.names.lightgoldenrodyellow&&(f.names={...f.names,...el}),x.compose(n,i),ea(l,h,d,i),(0,o.addEvent)(a,"setExtremes",function(e){for(let t of[this.chart,...this.series].map(e=>e.renderTarget).filter(Boolean)){let{horiz:i,pos:r}=this,s=i?"scaleX":"scaleY",o=i?"translateX":"translateY",n=t?.[s]??1,a=1,l=0,h=1,d="none";this.isPanning&&(a=(e.scale??1)*n,l=(t?.[o]||0)-a*(e.move||0)+n*r-a*r,h=.7,d="blur(3px)"),t?.attr({[s]:a,[o]:l}).css({transition:"250ms filter, 250ms opacity",filter:d,opacity:h})}if(!this.isPanning)for(let e of this.series)e.boost&&e.is("scatter")&&!e.is("bubble")&&!e.is("treemap")&&!e.is("heatmap")&&(e.isDirty=!0)});let em=u();export{em as default};
14
+ * */import*as r from"../highcharts.js";let s={};s.n=e=>{let t=e&&e.__esModule?()=>e.default:()=>e;return s.d(t,{a:t}),t},s.d=(e,t)=>{for(var i in t)s.o(t,i)&&!s.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);let o=r.default;var n,a,l,h,d,f,u=s.n(o);let g=["area","areaspline","arearange","column","columnrange","bar","line","scatter","heatmap","bubble","treemap"],m={};g.forEach(e=>{m[e]=!0});let{composed:c}=u();function b(e){let t=e.series,i=e.boost=e.boost||{},r=e.options.boost||{},s=r.seriesThreshold??50;if(t.length>=s)return!0;if(1===t.length)return!1;let o=r.allowForce;if(void 0===o){for(let t of(o=!0,e.xAxis))if((t.min??-1/0)>(t.dataMin??-1/0)||(t.max??1/0)<(t.dataMax??1/0)){o=!1;break}}if(void 0!==i.forceChartBoost){if(o)return i.forceChartBoost;i.forceChartBoost=void 0}let n=0,a=0,l=0,h;for(let e of t)0!==(h=e.options).boostThreshold&&!1!==e.visible&&"heatmap"!==e.type&&(++a,m[e.type]&&++n,function(...e){let t=-Number.MAX_VALUE;return e.forEach(e=>{if(null!=e&&void 0!==e.length&&e.length>0)return t=e.length,!0}),t}(e.getColumn("x",!0),h.data||[],e.points)>=(h.boostThreshold||Number.MAX_VALUE)&&++l);return i.forceChartBoost=o&&(n===t.length&&l===n||!!i.markerGroup&&n===a&&l===n||l>5),i.forceChartBoost}function p(e){function t(){e.boost&&e.boost.wgl&&b(e)&&e.boost.wgl.render(e)}(0,o.addEvent)(e,"predraw",function(){e.boost=e.boost||{},e.boost.forceChartBoost=void 0,e.boosted=!1,e.axes.some(e=>e.isPanning)||e.boost.clear?.(),e.boost.canvas&&e.boost.wgl&&b(e)&&e.boost.wgl.allocateBuffer(e),e.boost.markerGroup&&e.xAxis&&e.xAxis.length>0&&e.yAxis&&e.yAxis.length>0&&e.boost.markerGroup.translate(e.xAxis[0].pos,e.yAxis[0].pos)}),(0,o.addEvent)(e,"load",t,{order:-1}),(0,o.addEvent)(e,"redraw",t);let i=-1,r=-1;(0,o.addEvent)(e.pointer,"afterGetHoverData",t=>{let s=t.hoverPoint?.series;if(e.boost=e.boost||{},e.boost.markerGroup&&s){let t=e.inverted?s.yAxis:s.xAxis,o=e.inverted?s.xAxis:s.yAxis;(t&&t.pos!==i||o&&o.pos!==r)&&(e.series.forEach(e=>{e.halo?.hide()}),e.boost.markerGroup.translate(t.pos,o.pos),i=t.pos,r=o.pos)}})}let x={compose:function(e,t){return t&&(0,o.pushUnique)(c,"Boost.Chart")&&e.prototype.callbacks.push(p),e},getBoostClipRect:function(e,t){let i=e.navigator,r={x:e.plotLeft,y:e.plotTop,width:e.plotWidth,height:e.plotHeight};if(i&&e.inverted?(r.width+=i.top+i.height,i.opposite||(r.x=i.left)):i&&!e.inverted&&(r.height=i.top+i.height-e.plotTop),t.is){let{xAxis:i,yAxis:s}=t;if(r=e.getClipBox(t),e.inverted){let e=r.width;r.width=r.height,r.height=e,r.x=s.pos,r.y=i.pos}else r.x=i.pos,r.y=s.pos}if(t===e){let t=e.inverted?e.xAxis:e.yAxis;e.inverted||i||!e.clipBox||(r.width=e.clipBox.width,r.height=e.clipBox.height),t.length<=1&&(r.y=Math.min(t[0].pos,r.y),r.height=t[0].pos-e.plotTop+t[0].len)}return r},isChartSeriesBoosting:b},A=r.default.Color;var y=s.n(A);let v={area:"LINES",arearange:"LINES",areaspline:"LINES",column:"LINES",columnrange:"LINES",bar:"LINES",line:"LINE_STRIP",scatter:"POINTS",heatmap:"TRIANGLES",treemap:"TRIANGLES",bubble:"POINTS"},P=class{constructor(e){if(this.errors=[],this.uLocations={},this.gl=e,e&&!this.createShader())return}bind(){this.gl&&this.shaderProgram&&this.gl.useProgram(this.shaderProgram)}createShader(){let e=this.stringToProgram("#version 100\n#define LN10 2.302585092994046\nprecision highp float;\nattribute vec4 aVertexPosition;\nattribute vec4 aColor;\nvarying highp vec2 position;\nvarying highp vec4 vColor;\nuniform mat4 uPMatrix;\nuniform float pSize;\nuniform float translatedThreshold;\nuniform bool hasThreshold;\nuniform bool skipTranslation;\nuniform float xAxisTrans;\nuniform float xAxisMin;\nuniform float xAxisMax;\nuniform float xAxisMinPad;\nuniform float xAxisPointRange;\nuniform float xAxisLen;\nuniform bool xAxisPostTranslate;\nuniform float xAxisOrdinalSlope;\nuniform float xAxisOrdinalOffset;\nuniform float xAxisPos;\nuniform bool xAxisCVSCoord;\nuniform bool xAxisIsLog;\nuniform bool xAxisReversed;\nuniform float yAxisTrans;\nuniform float yAxisMin;\nuniform float yAxisMax;\nuniform float yAxisMinPad;\nuniform float yAxisPointRange;\nuniform float yAxisLen;\nuniform bool yAxisPostTranslate;\nuniform float yAxisOrdinalSlope;\nuniform float yAxisOrdinalOffset;\nuniform float yAxisPos;\nuniform bool yAxisCVSCoord;\nuniform bool yAxisIsLog;\nuniform bool yAxisReversed;\nuniform bool isCircle;\nuniform bool isBubble;\nuniform bool bubbleSizeByArea;\nuniform float bubbleZMin;\nuniform float bubbleZMax;\nuniform float bubbleZThreshold;\nuniform float bubbleMinSize;\nuniform float bubbleMaxSize;\nuniform bool bubbleSizeAbs;\nuniform bool isInverted;\nfloat bubbleRadius(){\nfloat value = aVertexPosition.w;\nfloat zMax = bubbleZMax;\nfloat zMin = bubbleZMin;\nfloat radius = 0.0;\nfloat pos = 0.0;\nfloat zRange = zMax - zMin;\nif (bubbleSizeAbs){\nvalue = value - bubbleZThreshold;\nzMax = max(zMax - bubbleZThreshold, zMin - bubbleZThreshold);\nzMin = 0.0;\n}\nif (value < zMin){\nradius = bubbleZMin / 2.0 - 1.0;\n} else {\npos = zRange > 0.0 ? (value - zMin) / zRange : 0.5;\nif (bubbleSizeByArea && pos > 0.0){\npos = sqrt(pos);\n}\nradius = ceil(bubbleMinSize + pos * (bubbleMaxSize - bubbleMinSize)) / 2.0;\n}\nreturn radius * 2.0;\n}\nfloat translate(float val,\nfloat pointPlacement,\nfloat localA,\nfloat localMin,\nfloat minPixelPadding,\nfloat pointRange,\nfloat len,\nbool cvsCoord,\nbool isLog,\nbool reversed\n){\nfloat sign = 1.0;\nfloat cvsOffset = 0.0;\nif (cvsCoord) {\nsign *= -1.0;\ncvsOffset = len;\n}\nif (isLog) {\nval = log(val) / LN10;\n}\nif (reversed) {\nsign *= -1.0;\ncvsOffset -= sign * len;\n}\nreturn sign * (val - localMin) * localA + cvsOffset + \n(sign * minPixelPadding);\n}\nfloat xToPixels(float value) {\nif (skipTranslation){\nreturn value;// + xAxisPos;\n}\nreturn translate(value, 0.0, xAxisTrans, xAxisMin, xAxisMinPad, xAxisPointRange, xAxisLen, xAxisCVSCoord, xAxisIsLog, xAxisReversed);// + xAxisPos;\n}\nfloat yToPixels(float value, float checkThreshold) {\nfloat v;\nif (skipTranslation){\nv = value;// + yAxisPos;\n} else {\nv = translate(value, 0.0, yAxisTrans, yAxisMin, yAxisMinPad, yAxisPointRange, yAxisLen, yAxisCVSCoord, yAxisIsLog, yAxisReversed);// + yAxisPos;\nif (v > yAxisLen) {\nv = yAxisLen;\n}\n}\nif (checkThreshold > 0.0 && hasThreshold) {\nv = min(v, translatedThreshold);\n}\nreturn v;\n}\nvoid main(void) {\nif (isBubble){\ngl_PointSize = bubbleRadius();\n} else {\ngl_PointSize = pSize;\n}\nvColor = aColor;\nif (!skipTranslation && isCircle && (\naVertexPosition.x < xAxisMin ||\naVertexPosition.x > xAxisMax ||\naVertexPosition.y < yAxisMin ||\naVertexPosition.y > yAxisMax\n)) {\ngl_Position = uPMatrix * vec4(2.0, 2.0, 2.0, 1.0);\n} else if (skipTranslation && isInverted) {\ngl_Position = uPMatrix * vec4(aVertexPosition.y + yAxisPos, aVertexPosition.x + xAxisPos, 0.0, 1.0);\n} else if (isInverted) {\ngl_Position = uPMatrix * vec4(yToPixels(aVertexPosition.y, aVertexPosition.z) + yAxisPos, xToPixels(aVertexPosition.x) + xAxisPos, 0.0, 1.0);\n} else {\ngl_Position = uPMatrix * vec4(xToPixels(aVertexPosition.x) + xAxisPos, yToPixels(aVertexPosition.y, aVertexPosition.z) + yAxisPos, 0.0, 1.0);\n}\n}","vertex"),t=this.stringToProgram("precision highp float;\nuniform vec4 fillColor;\nvarying highp vec2 position;\nvarying highp vec4 vColor;\nuniform sampler2D uSampler;\nuniform bool isCircle;\nuniform bool hasColor;\nvoid main(void) {\nvec4 col = fillColor;\nvec4 tcol = texture2D(uSampler, gl_PointCoord.st);\nif (hasColor) {\ncol = vColor;\n}\nif (isCircle) {\ncol *= tcol;\nif (tcol.r < 0.0) {\ndiscard;\n} else {\ngl_FragColor = col;\n}\n} else {\ngl_FragColor = col;\n}\n}","fragment"),i=e=>this.gl.getUniformLocation(this.shaderProgram,e);return e&&t?(this.shaderProgram=this.gl.createProgram(),this.gl.attachShader(this.shaderProgram,e),this.gl.attachShader(this.shaderProgram,t),this.gl.linkProgram(this.shaderProgram),this.gl.getProgramParameter(this.shaderProgram,this.gl.LINK_STATUS))?(this.gl.useProgram(this.shaderProgram),this.gl.bindAttribLocation(this.shaderProgram,0,"aVertexPosition"),this.pUniform=i("uPMatrix"),this.psUniform=i("pSize"),this.fcUniform=i("fillColor"),this.isBubbleUniform=i("isBubble"),this.bubbleSizeAbsUniform=i("bubbleSizeAbs"),this.bubbleSizeAreaUniform=i("bubbleSizeByArea"),this.uSamplerUniform=i("uSampler"),this.skipTranslationUniform=i("skipTranslation"),this.isCircleUniform=i("isCircle"),this.isInverted=i("isInverted"),!0):(this.errors.push(this.gl.getProgramInfoLog(this.shaderProgram)),this.handleErrors(),this.shaderProgram=!1,!1):(this.shaderProgram=!1,this.handleErrors(),!1)}handleErrors(){this.errors.length&&(0,o.error)("[highcharts boost] shader error - "+this.errors.join("\n"))}stringToProgram(e,t){let i=this.gl.createShader("vertex"===t?this.gl.VERTEX_SHADER:this.gl.FRAGMENT_SHADER);return(this.gl.shaderSource(i,e),this.gl.compileShader(i),this.gl.getShaderParameter(i,this.gl.COMPILE_STATUS))?i:(this.errors.push("when compiling "+t+" shader:\n"+this.gl.getShaderInfoLog(i)),!1)}destroy(){this.gl&&this.shaderProgram&&(this.gl.deleteProgram(this.shaderProgram),this.shaderProgram=!1)}fillColorUniform(){return this.fcUniform}getProgram(){return this.shaderProgram}pointSizeUniform(){return this.psUniform}perspectiveUniform(){return this.pUniform}reset(){this.gl&&this.shaderProgram&&(this.gl.uniform1i(this.isBubbleUniform,0),this.gl.uniform1i(this.isCircleUniform,0))}setBubbleUniforms(e,t,i,r=1){let s=e.options,n=Number.MAX_VALUE,a=-Number.MAX_VALUE;if(this.gl&&this.shaderProgram&&e.is("bubble")){let l=e.getPxExtremes();n=s.zMin??(0,o.clamp)(t,!1===s.displayNegative?s.zThreshold:-Number.MAX_VALUE,n),a=s.zMax??Math.max(a,i),this.gl.uniform1i(this.isBubbleUniform,1),this.gl.uniform1i(this.isCircleUniform,1),this.gl.uniform1i(this.bubbleSizeAreaUniform,"width"!==e.options.sizeBy),this.gl.uniform1i(this.bubbleSizeAbsUniform,e.options.sizeByAbsoluteValue),this.setUniform("bubbleMinSize",l.minPxSize*r),this.setUniform("bubbleMaxSize",l.maxPxSize*r),this.setUniform("bubbleZMin",n),this.setUniform("bubbleZMax",a),this.setUniform("bubbleZThreshold",e.options.zThreshold)}}setColor(e){this.gl&&this.shaderProgram&&this.gl.uniform4f(this.fcUniform,e[0]/255,e[1]/255,e[2]/255,e[3])}setDrawAsCircle(e){this.gl&&this.shaderProgram&&this.gl.uniform1i(this.isCircleUniform,+!!e)}setInverted(e){this.gl&&this.shaderProgram&&this.gl.uniform1i(this.isInverted,e)}setPMatrix(e){this.gl&&this.shaderProgram&&this.gl.uniformMatrix4fv(this.pUniform,!1,e)}setPointSize(e){this.gl&&this.shaderProgram&&this.gl.uniform1f(this.psUniform,e)}setSkipTranslation(e){this.gl&&this.shaderProgram&&this.gl.uniform1i(this.skipTranslationUniform,+(!0===e))}setTexture(e){this.gl&&this.shaderProgram&&this.gl.uniform1i(this.uSamplerUniform,e)}setUniform(e,t){if(this.gl&&this.shaderProgram){let i=this.uLocations[e]=this.uLocations[e]||this.gl.getUniformLocation(this.shaderProgram,e);this.gl.uniform1f(i,t)}}},T=class{constructor(e,t,i){this.buffer=!1,this.iterator=0,this.preAllocated=!1,this.vertAttribute=!1,this.components=i||2,this.dataComponents=i,this.gl=e,this.shader=t}allocate(e){this.iterator=-1,this.preAllocated=new Float32Array(4*e)}bind(){if(!this.buffer)return!1;this.gl.vertexAttribPointer(this.vertAttribute,this.components,this.gl.FLOAT,!1,0,0)}build(e,t,i){let r;return(this.data=e||[],this.data&&0!==this.data.length||this.preAllocated)?(this.components=i||this.components,this.buffer&&this.gl.deleteBuffer(this.buffer),this.preAllocated||(r=new Float32Array(this.data)),this.buffer=this.gl.createBuffer(),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.buffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,this.preAllocated||r,this.gl.STATIC_DRAW),this.vertAttribute=this.gl.getAttribLocation(this.shader.getProgram(),t),this.gl.enableVertexAttribArray(this.vertAttribute),r=!1,!0):(this.destroy(),!1)}destroy(){this.buffer&&(this.gl.deleteBuffer(this.buffer),this.buffer=!1,this.vertAttribute=!1),this.iterator=0,this.components=this.dataComponents||2,this.data=[]}push(e,t,i,r){this.preAllocated&&(this.preAllocated[++this.iterator]=e,this.preAllocated[++this.iterator]=t,this.preAllocated[++this.iterator]=i,this.preAllocated[++this.iterator]=r)}render(e,t,i){let r=this.preAllocated?this.preAllocated.length:this.data?.length||0;return!!this.buffer&&!!r&&((!e||e>r||e<0)&&(e=0),(!t||t>r)&&(t=r),!(e>=t)&&(i=i||"POINTS",this.gl.drawArrays(this.gl[i],e/this.components,(t-e)/this.components),!0))}},{getBoostClipRect:C}=x,{parse:k}=y(),{doc:E,win:M}=u(),w={column:!0,columnrange:!0,bar:!0,area:!0,areaspline:!0,arearange:!0},S={scatter:!0,bubble:!0},U=["webgl","experimental-webgl","moz-webgl","webkit-3d"],R={},_=(e,t)=>{if(R[t])return R[t];let i=0===t.indexOf("var(")&&e[t.slice(4,-1).trim()];if(i)return R[t]=i,i;if(0===t.indexOf("color-mix(")){let i=/^color-mix\(in srgb,([a-z0-9\(\)\-\#]+),([a-z0-9\(\)\-\#]+) ([0-9\.%]+)/.exec(t);if(i){let r=parseFloat(i[3])/100,s=_(e,i[1]),o=_(e,i[2]),n=new(y())(s).tweenTo(new(y())(o),r);return R[t]=n,n}}return t},N=class e{static orthoMatrix(e,t){return[2/e,0,0,0,0,-(2/t),0,0,0,0,-2,0,-1,1,-1,1]}static seriesPointCount(e){let t,i,r;return e.boosted?(t=!!e.options.stacking,i=(e.getColumn("x").length?e.getColumn("x"):void 0)||e.options.xData||e.getColumn("x",!0),r=(t?e.data:i||e.options.data).length,"treemap"===e.type?r*=12:"heatmap"===e.type?r*=6:w[e.type]&&(r*=2),r):0}constructor(e){this.data=[],this.height=0,this.isInited=!1,this.markerData=[],this.series=[],this.textureHandles={},this.width=0,this.postRenderCallback=e,this.settings={pointSize:1,lineWidth:1,fillColor:"#AA00AA",useAlpha:!0,usePreallocated:!1,useGPUTranslations:!1,debug:{timeRendering:!1,timeSeriesProcessing:!1,timeSetup:!1,timeBufferCopy:!1,timeKDTree:!1,showSkipSummary:!1}}}getPixelRatio(){return this.settings.pixelRatio||M.devicePixelRatio||1}setOptions(e){"pixelRatio"in e||(e.pixelRatio=1),(0,o.merge)(!0,this.settings,e)}allocateBuffer(t){let i=this.vbuffer,r=0;this.settings.usePreallocated&&(t.series.forEach(t=>{t.boosted&&(r+=e.seriesPointCount(t))}),i&&i.allocate(r))}allocateBufferForSingleSeries(t){let i=this.vbuffer,r=0;this.settings.usePreallocated&&(t.boosted&&(r=e.seriesPointCount(t)),i&&i.allocate(r))}clear(){let e=this.gl;e&&e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT)}pushSeriesData(e,t){let i=this.data,r=this.settings,s=this.vbuffer,n=e.pointArrayMap&&"low,high"===e.pointArrayMap.join(","),{chart:a,options:l,sorted:h,xAxis:d,yAxis:f}=e,u=!!l.stacking,g=l.data,m=e.xAxis.getExtremes(),c=m.min-(e.xAxis.minPointOffset||0),b=m.max+(e.xAxis.minPointOffset||0),p=e.yAxis.getExtremes(),x=p.min-(e.yAxis.minPointOffset||0),A=p.max+(e.yAxis.minPointOffset||0),v=(e.getColumn("x").length?e.getColumn("x"):void 0)||l.xData||e.getColumn("x",!0),P=(e.getColumn("y").length?e.getColumn("y"):void 0)||l.yData||e.getColumn("y",!0),T=(e.getColumn("z").length?e.getColumn("z"):void 0)||l.zData||e.getColumn("z",!0),C=!v||0===v.length,{colorByPoint:E,connectNulls:M,threshold:S,zoneAxis:U="y",zones:R}=l,N=e.points||!1,L=u?e.data:v||g,z={x:Number.MAX_VALUE,y:0},D={x:-Number.MAX_VALUE,y:0},O=void 0===a.index,I=w[e.type],G=this.getPixelRatio(),B=a.options.colors||[],V=e.chart.plotWidth,X=!1,F=!1,j,q,H=0,W=!1,K,Y,Z,Q,$=-1,J=!1,ee=!1,et,ei=!1,er=!1,es,eo=!1,en=!0,ea=!0,el=[],eh=!1,ed=!1,ef=0,eu=0;if(l.boostData&&l.boostData.length>0)return;if(l.gapSize&&(ed="value"!==l.gapUnit?l.gapSize*e.closestPointRange:l.gapSize),a.boost){let e=a.renderer.circle(0,0,1).attr({fill:"var(--highcharts-background-color)"}).add(),t=new(y())(getComputedStyle(e.element).getPropertyValue("fill")).get(),i=new(y())(a.palette?.cssVars.dark["--highcharts-background-color"]||"").get();e.destroy(),a.boost.cssVars=a.palette?.cssVars[t===i?"dark":"light"]}let eg=a.boost?.cssVars||{};if(R?.length&&(el=[],R.forEach((e,t)=>{if("string"==typeof e.color){let i=k(_(eg,e.color)).rgba;i[0]/=255,i[1]/=255,i[2]/=255,el[t]=i,eh||void 0!==e.value||(eh=i)}}),!eh)){let t=e.pointAttribs&&e.pointAttribs().fill||e.color;eh=k("string"==typeof t?_(eg,t):"").rgba,eh[0]/=255,eh[1]/=255,eh[2]/=255}a.inverted&&(V=e.chart.plotHeight),e.closestPointRangePx=Number.MAX_VALUE;let em=e=>{e&&(t.colorData.push(e[0]),t.colorData.push(e[1]),t.colorData.push(e[2]),t.colorData.push(e[3]))},ec=(e,o,n,a=1,l)=>{em(l),1!==G&&(!r.useGPUTranslations||t.skipTranslation)&&(e*=G,o*=G,a*=G),r.usePreallocated&&s?(s.push(e,o,+!!n,a),ef+=4):(i.push(e),i.push(o),i.push(n?G:0),i.push(a))},eb=()=>{t.segments.length&&(t.segments[t.segments.length-1].to=i.length||ef)},ep=()=>{t.segments.length&&t.segments[t.segments.length-1].from===(i.length||ef)||(eb(),t.segments.push({from:i.length||ef}))},ex=(e,t,i,r,s)=>{em(s),ec(e+i,t),em(s),ec(e,t),em(s),ec(e,t+r),em(s),ec(e,t+r),em(s),ec(e+i,t+r),em(s),ec(e+i,t)};if(ep(),N&&N.length>0){t.skipTranslation=!0,t.drawMode="TRIANGLES",N[0].node&&N[0].node.levelDynamic&&N.sort((e,t)=>{if(e.node){if(e.node.levelDynamic>t.node.levelDynamic)return 1;if(e.node.levelDynamic<t.node.levelDynamic)return -1}return 0}),N.forEach(t=>{let i,r,s=t.plotY;if(void 0!==s&&!isNaN(s)&&null!==t.y&&t.shapeArgs){let{x:s=0,y:o=0,width:n=0,height:l=0}=t.shapeArgs;i=(r=a.styledMode?t.series.colorAttribs(t):r=t.series.pointAttribs(t))["stroke-width"]||0,"string"==typeof r.fill&&(r.fill=_(eg,r.fill)),es=k(r.fill).rgba,es[0]/=255,es[1]/=255,es[2]/=255,e.is("treemap")&&(i=i||1,"string"==typeof r.stroke&&(r.stroke=_(eg,r.stroke)),q=k(r.stroke).rgba,q[0]/=255,q[1]/=255,q[2]/=255,ex(s,o,n,l,q),i/=2),e.is("heatmap")&&a.inverted&&(s=d.len-s,o=f.len-o,n=-n,l=-l),ex(s+i,o+i,n-2*i,l-2*i,es)}}),eb();return}for(;$<L.length-1;){if(void 0===(Z=L[++$]))continue;if(O)break;let i=g&&g[$];if(!C){let t;(0,o.isObject)(i,!0)&&i.color&&(t=k(i.color).rgba);let r=e.options.keys?.indexOf("color");Array.isArray(i)&&r&&"string"==typeof i[r]?t=k(i[r]).rgba:E&&(eu%=B.length,t=k(_(eg,B[eu])).rgba),t&&((es=t)[0]=t[0]/255,es[1]=t[1]/255,es[2]=t[2]/255,es[3]=t[3]),eu++}if(C?(K=Z[0],Y=Z[1],L[$+1]&&(ee=L[$+1][0]),L[$-1]&&(J=L[$-1][0]),Z.length>=3&&(Q=Z[2],Z[2]>t.zMax&&(t.zMax=Z[2]),Z[2]<t.zMin&&(t.zMin=Z[2]))):(K=Z,Y=P?.[$],L[$+1]&&(ee=L[$+1]),L[$-1]&&(J=L[$-1]),T&&T.length&&(Q=T[$],T[$]>t.zMax&&(t.zMax=T[$]),T[$]<t.zMin&&(t.zMin=T[$]))),!M&&(null===K||null===Y)){ep();continue}if(ee&&ee>=c&&ee<=b&&(ei=!0),J&&J>=c&&J<=b&&(er=!0),n?(C&&(Y=Z.slice(1,3)),et=e.getColumn("low",!0)?.[$],Y=e.getColumn("high",!0)?.[$]||0):u&&(K=Z.x,et=(Y=Z.stackY)-Z.y),null!=x&&null!=A&&(en=Y>=x&&Y<=A),!h&&!en||(K>b&&D.x<b&&(D.x=K,D.y=Y),K<c&&z.x>c&&(z.x=K,z.y=Y),null===Y&&M))continue;if(null===Y||!en&&L.length>1&&!ei&&!er){ep();continue}if((h&&(ee>=c||K>=c)&&(J<=b||K<=b)||!h&&K>=c&&K<=b)&&(eo=!0),eo||ei||er){if(ed&&K-J>ed&&ep(),R?.length){let e,t,i="x"===U?K:Y;R.some((e,r)=>void 0!==e.value&&i<e.value&&(t=r,!0)),void 0!==t&&el[t]&&(e=el[t]),es=e||eh||es}if(r.useGPUTranslations||(t.skipTranslation=!0,K=d.toPixels(K,!0),Y=f.toPixels(Y,!0),!(K>V)||"POINTS"!==t.drawMode)){if(t.hasMarkers&&eo&&!1!==X&&(e.closestPointRangePx=Math.min(e.closestPointRangePx,Math.abs(K-X))),!r.useGPUTranslations&&!r.usePreallocated&&X&&1>Math.abs(K-X)&&F&&1>Math.abs(Y-F)){r.debug.showSkipSummary&&++H;continue}I&&(j=et||0,(!1===et||void 0===et)&&(j=Y<0?Y:0),(n||u)&&!f.logarithmic||(j=Math.max(S??x,x)),r.useGPUTranslations||(j=f.toPixels(j,!0)),ec(K,j,!1,0,es)),l.step&&!ea&&ec(K,F,!1,2,es),ec(K,Y,!1,"bubble"===e.type?Q||1:2,es),X=K,F=Y,W=!0,ea=!1}}}r.debug.showSkipSummary&&console.log("skipped points:",H);let eA=(e,i)=>{if(r.useGPUTranslations||(t.skipTranslation=!0,e.x=d.toPixels(e.x,!0),e.y=f.toPixels(e.y,!0)),i){this.data=[e.x,e.y,0,2].concat(this.data);return}ec(e.x,e.y,0,2)};!W&&!1!==M&&"line_strip"===e.drawMode&&(z.x<Number.MAX_VALUE&&eA(z,!0),D.x>-Number.MAX_VALUE&&eA(D)),eb()}pushSeries(e){let t=this.markerData,i=this.series,r=this.settings;i.length>0&&i[i.length-1].hasMarkers&&(i[i.length-1].markerTo=t.length),r.debug.timeSeriesProcessing&&console.time("building "+e.type+" series");let s={segments:[],markerFrom:t.length,colorData:[],series:e,zMin:Number.MAX_VALUE,zMax:-Number.MAX_VALUE,hasMarkers:!!e.options.marker&&!1!==e.options.marker.enabled,showMarkers:!0,drawMode:v[e.type]||"LINE_STRIP"};e.index>=i.length?i.push(s):i[e.index]=s,this.pushSeriesData(e,s),r.debug.timeSeriesProcessing&&console.timeEnd("building "+e.type+" series")}flush(){let e=this.vbuffer;this.data=[],this.markerData=[],this.series=[],e&&e.destroy()}setXAxis(e){let t=this.shader;if(!t)return;let i=this.getPixelRatio();t.setUniform("xAxisTrans",e.transA*i),t.setUniform("xAxisMin",e.min),t.setUniform("xAxisMax",e.max),t.setUniform("xAxisMinPad",e.minPixelPadding*i),t.setUniform("xAxisPointRange",e.pointRange),t.setUniform("xAxisLen",e.len*i),t.setUniform("xAxisPos",e.pos*i),t.setUniform("xAxisCVSCoord",!e.horiz),t.setUniform("xAxisIsLog",!!e.logarithmic),t.setUniform("xAxisReversed",!!e.reversed)}setYAxis(e){let t=this.shader;if(!t)return;let i=this.getPixelRatio();t.setUniform("yAxisTrans",e.transA*i),t.setUniform("yAxisMin",e.min),t.setUniform("yAxisMax",e.max),t.setUniform("yAxisMinPad",e.minPixelPadding*i),t.setUniform("yAxisPointRange",e.pointRange),t.setUniform("yAxisLen",e.len*i),t.setUniform("yAxisPos",e.pos*i),t.setUniform("yAxisCVSCoord",!e.horiz),t.setUniform("yAxisIsLog",!!e.logarithmic),t.setUniform("yAxisReversed",!!e.reversed)}setThreshold(e,t){let i=this.shader;i&&(i.setUniform("hasThreshold",e),i.setUniform("translatedThreshold",t))}renderChart(t){let i=this.gl,r=this.settings,s=this.shader,n=this.vbuffer;R={};let a=this.getPixelRatio();if(!t)return!1;this.width=t.chartWidth*a,this.height=t.chartHeight*a;let l=this.height,h=this.width,d=t.options.colors||[];if(!i||!s||!h||!l)return!1;r.debug.timeRendering&&console.time("gl rendering"),i.canvas.width=h,i.canvas.height=l,s.bind(),i.viewport(0,0,h,l),s.setPMatrix(e.orthoMatrix(h,l)),r.lineWidth>1&&!u().isMS&&i.lineWidth(r.lineWidth),n&&(n.build(this.data,"aVertexPosition",4),n.bind()),s.setInverted(t.inverted),this.series.forEach((e,h)=>{let f=e.series.options,u=f.marker,g=void 0!==f.lineWidth?f.lineWidth:1,m=f.threshold,c=(0,o.isNumber)(m),b=e.series.yAxis.getThreshold(m),p=(f.marker?f.marker.enabled:null)??(!!e.series.xAxis.isRadial||null)??e.series.closestPointRangePx>2*((f.marker?f.marker.radius:10)||10),x=this.textureHandles[u&&u.symbol||e.series.symbol]||this.textureHandles.circle,A,v,P,E=[];if(0!==e.segments.length&&e.segments[0].from!==e.segments[0].to&&(x.isReady&&(i.bindTexture(i.TEXTURE_2D,x.handle),s.setTexture(x.handle)),t.styledMode?e.series.markerGroup===e.series.chart.boost?.markerGroup?(delete e.series.markerGroup,e.series.markerGroup=e.series.plotGroup("markerGroup","markers","visible",1,t.seriesGroup).addClass("highcharts-tracker"),P=e.series.markerGroup.getStyle("fill"),e.series.markerGroup.destroy(),e.series.markerGroup=e.series.chart.boost?.markerGroup):P=e.series.markerGroup?.getStyle("fill"):(P="POINTS"===e.drawMode&&e.series.pointAttribs&&e.series.pointAttribs().fill||e.series.color,f.colorByPoint&&"string"==typeof d[h]&&(P=d[h])),e.series.fillOpacity&&f.fillOpacity&&P&&(P=new(y())(P).setOpacity(f.fillOpacity??1).get()),"string"==typeof P&&(P=_(t.boost?.cssVars||{},P)),E=k(P).rgba,r.useAlpha||(E[3]=1),"add"===f.boostBlending?(i.blendFunc(i.SRC_ALPHA,i.ONE),i.blendEquation(i.FUNC_ADD)):"mult"===f.boostBlending||"multiply"===f.boostBlending?i.blendFunc(i.DST_COLOR,i.ZERO):"darken"===f.boostBlending?(i.blendFunc(i.ONE,i.ONE),i.blendEquation(i.FUNC_MIN)):i.blendFuncSeparate(i.SRC_ALPHA,i.ONE_MINUS_SRC_ALPHA,i.ONE,i.ONE_MINUS_SRC_ALPHA),s.reset(),e.colorData.length>0?(s.setUniform("hasColor",1),(v=new T(i,s)).build(Array(e.segments[0].from).concat(e.colorData),"aColor",4),v.bind()):(s.setUniform("hasColor",0),i.disableVertexAttribArray(i.getAttribLocation(s.getProgram(),"aColor"))),s.setColor(E),this.setXAxis(e.series.xAxis),this.setYAxis(e.series.yAxis),this.setThreshold(c,b),"POINTS"===e.drawMode&&s.setPointSize(((f.marker&&f.marker.radius)??.5)*2*a),s.setSkipTranslation(e.skipTranslation),"bubble"===e.series.type&&s.setBubbleUniforms(e.series,e.zMin,e.zMax,a),s.setDrawAsCircle(S[e.series.type]||!1),n)){if(g>0||"LINE_STRIP"!==e.drawMode){let{x:r,y:s,width:o,height:h}=C(t,e.series);for(i.enable(i.SCISSOR_TEST),i.scissor(r*a,l-(s+h)*a,o*a,h*a),A=0;A<e.segments.length;A++)n.render(e.segments[A].from,e.segments[A].to,e.drawMode);i.disable(i.SCISSOR_TEST)}if(e.hasMarkers&&p)for(s.setPointSize(((f.marker&&f.marker.radius)??5)*2*a),s.setDrawAsCircle(!0),A=0;A<e.segments.length;A++)n.render(e.segments[A].from,e.segments[A].to,"POINTS")}}),r.debug.timeRendering&&console.timeEnd("gl rendering"),this.postRenderCallback&&this.postRenderCallback(this),this.flush()}render(e){if(this.clear(),e.renderer.forExport)return this.renderChart(e);this.isInited?this.renderChart(e):setTimeout(()=>{this.render(e)},1)}setSize(t,i){let r=this.shader;r&&(this.width!==t||this.height!==i)&&(this.width=t,this.height=i,r.bind(),r.setPMatrix(e.orthoMatrix(t,i)))}init(e,t){let i=this.settings;if(this.isInited=!1,!e)return!1;i.debug.timeSetup&&console.time("gl setup");for(let t=0;t<U.length&&(this.gl=e.getContext(U[t],{}),!this.gl);++t);let r=this.gl;if(!r)return!1;t||this.flush(),r.enable(r.BLEND),r.blendFunc(r.SRC_ALPHA,r.ONE_MINUS_SRC_ALPHA),r.disable(r.DEPTH_TEST),r.depthFunc(r.LESS);let s=this.shader=new P(r);if(!s)return!1;this.vbuffer=new T(r,s);let o=(e,t)=>{let i={isReady:!1,texture:E.createElement("canvas"),handle:r.createTexture()},s=i.texture.getContext("2d");this.textureHandles[e]=i,i.texture.width=512,i.texture.height=512,s.mozImageSmoothingEnabled=!1,s.webkitImageSmoothingEnabled=!1,s.msImageSmoothingEnabled=!1,s.imageSmoothingEnabled=!1,s.strokeStyle="rgba(255, 255, 255, 0)",s.fillStyle="#FFF",t(s);try{r.activeTexture(r.TEXTURE0),r.bindTexture(r.TEXTURE_2D,i.handle),r.texImage2D(r.TEXTURE_2D,0,r.RGBA,r.RGBA,r.UNSIGNED_BYTE,i.texture),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,r.LINEAR),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,r.LINEAR),r.bindTexture(r.TEXTURE_2D,null),i.isReady=!0}catch{}};return o("circle",e=>{e.beginPath(),e.arc(256,256,256,0,2*Math.PI),e.stroke(),e.fill()}),o("square",e=>{e.fillRect(0,0,512,512)}),o("diamond",e=>{e.beginPath(),e.moveTo(256,0),e.lineTo(512,256),e.lineTo(256,512),e.lineTo(0,256),e.lineTo(256,0),e.fill()}),o("triangle",e=>{e.beginPath(),e.moveTo(0,512),e.lineTo(256,0),e.lineTo(512,512),e.lineTo(0,512),e.fill()}),o("triangle-down",e=>{e.beginPath(),e.moveTo(0,0),e.lineTo(256,512),e.lineTo(512,0),e.lineTo(0,0),e.fill()}),this.isInited=!0,i.debug.timeSetup&&console.timeEnd("gl setup"),!0}destroy(){let e=this.gl,t=this.shader,i=this.vbuffer;this.flush(),i&&i.destroy(),t&&t.destroy(),e&&((0,o.objectEach)(this.textureHandles,t=>{t.handle&&e.deleteTexture(t.handle)}),e.canvas.width=1,e.canvas.height=1)}},{setLength:L,splice:z}={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,i){return Array.isArray(e)?(e.length=t,e):e[i?"subarray":"slice"](0,t)},splice:function(e,t,i,r,s=[]){if(Array.isArray(e))return Array.isArray(s)||(s=Array.from(s)),{removed:e.splice(t,i,...s),array:e};let o=Object.getPrototypeOf(e).constructor,n=e[r?"subarray":"slice"](t,t+i),a=new o(e.length-i+s.length);return a.set(e.subarray(0,t),0),a.set(s,t),a.set(e.subarray(t+i),t+s.length),{removed:n,array:a}}},D=class{constructor(e={}){this.isDataTable=!0;let t=this.isPollutingKey(e.id)?void 0:e.id;this.autoId=!t,this.columns={},this.id=t||(0,o.uniqueKey)(),this.rowCount=0,this.versionTag=(0,o.uniqueKey)();let i=0;(0,o.objectEach)(e.columns||{},(e,t)=>{"__proto__"!==t&&"constructor"!==t&&(this.columns[t]=e.slice(),i=Math.max(i,e.length))}),this.applyRowCount(i)}isPollutingKey(e){return"__proto__"===e||"constructor"===e}applyRowCount(e){this.rowCount=e,(0,o.objectEach)(this.columns,(t,i)=>{t.length!==e&&(this.columns[i]=L(t,e))})}deleteRows(e,t=1){if(t>0&&e<this.rowCount){let i=0;(0,o.objectEach)(this.columns,(r,s)=>{this.columns[s]=z(r,e,t).array,i=r.length}),this.rowCount=i}(0,o.fireEvent)(this,"afterDeleteRows",{rowIndex:e,rowCount:t}),this.versionTag=(0,o.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 i={},r=this.columns;for(let s of(t??(t=Object.keys(this.columns)),t))i[s]=r[s]?.[e];return i}setColumn(e,t=[],i=0,r){this.setColumns({[e]:t},i,r)}setColumns(e,t,i){let r=this.rowCount;(0,o.objectEach)(e,(e,t)=>{"__proto__"!==t&&"constructor"!==t&&(this.columns[t]=e.slice(),r=e.length)}),this.applyRowCount(r),i?.silent||((0,o.fireEvent)(this,"afterSetColumns"),this.versionTag=(0,o.uniqueKey)())}setRow(e,t=this.rowCount,i,r){let{columns:s}=this,n=i?this.rowCount+1:t+1,a=Object.keys(e);if(r?.addColumns!==!1)for(let e=0,t=a.length;e<t;e++){let t=a[e];this.isPollutingKey(t)||Object.hasOwnProperty.call(s,t)||(s[t]=Array(this.rowCount))}(0,o.objectEach)(s,(r,o)=>{r&&(i?r=z(r,t,0,!0,[e[o]]).array:r[t]=o in e?e[o]:r[t],s[o]=r)}),this.applyRowCount(Math.max(n,this.rowCount)),r?.silent||((0,o.fireEvent)(this,"afterSetRows",{rowIndex:t}),this.versionTag=(0,o.uniqueKey)())}getModified(){return this.modified||this}},{getBoostClipRect:O,isChartSeriesBoosting:I}=x,{getOptions:G}=u(),{composed:B,doc:V,noop:X,win:F}=u();function j(e,t){let i=t.boost;e&&i&&i.target&&i.canvas&&!I(t.chart)&&e.allocateBufferForSingleSeries(t)}function q(e){return(e&&e.options&&e.options.boost&&e.options.boost.enabled)??!0}function H(e,i){let r=e.constructor,s=e.seriesGroup||i.group,n=e.chartWidth,a=e.chartHeight,l=e,h="u">typeof SVGForeignObjectElement,d=!1;I(e)?l=e:(l=i,d=!!(i.options.events?.click||i.options.point?.events?.click));let f=l.boost=l.boost||{};if(h=!1,t||(t=V.createElement("canvas")),!f.target&&(f.canvas=t,e.renderer.forExport||!h?(l.renderTarget=f.target=e.renderer.image("",0,0,n,a).addClass("highcharts-boost-canvas").add(s),f.clear=function(){f.target.attr({href:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="})},f.copy=function(){f.resize(),f.target.attr({href:f.canvas.toDataURL("image/png")})}):(f.targetFo=e.renderer.createElement("foreignObject").add(s),l.renderTarget=f.target=V.createElement("canvas"),f.targetCtx=f.target.getContext("2d"),f.targetFo.element.appendChild(f.target),f.clear=function(){f.target.width=f.canvas.width,f.target.height=f.canvas.height},f.copy=function(){f.target.width=f.canvas.width,f.target.height=f.canvas.height,f.targetCtx.drawImage(f.canvas,0,0)}),f.resize=function(){n=e.chartWidth,a=e.chartHeight,(f.targetFo||f.target).attr({x:0,y:0,width:n,height:a}).css({pointerEvents:d?void 0:"none",mixedBlendMode:"normal",opacity:1}).addClass(d?"highcharts-tracker":""),l instanceof r&&l.boost?.markerGroup?.translate(e.plotLeft,e.plotTop)},f.clipRect=e.renderer.clipRect(),(f.targetFo||f.target).attr({zIndex:i.options.zIndex}),l instanceof r&&(l.boost.markerGroup=l.renderer.g().add(s).translate(i.xAxis.pos,i.yAxis.pos))),f.canvas.width=n,f.canvas.height=a,f.clipRect){let t=O(e,l);f.clipRect.attr(t),e.navigator||t.width!==e.clipBox.width||t.height!==e.clipBox.height?(f.targetFo||f.target).clip(f.clipRect):s?.clip(e.renderer.clipRect(t.x-4,t.y,t.width+4,t.height+4))}return f.resize(),f.clear(),!f.wgl&&(f.wgl=new N(e=>{e.settings.debug.timeBufferCopy&&console.time("buffer copy"),f.copy(),e.settings.debug.timeBufferCopy&&console.timeEnd("buffer copy")}),f.wgl.init(f.canvas)||(0,o.error)("[highcharts boost] - unable to init WebGL renderer"),f.wgl.setOptions(e.options.boost||{}),l instanceof r&&f.wgl.allocateBuffer(e)),f.wgl.setSize(n,a),f.wgl}function W(e){let t=e.points;for(let i of(t?.forEach(e=>{e?.destroyElements?.()}),["graph","area","tracker"].forEach(t=>{e[t]=e[t]?.destroy()}),e.zones))(0,o.destroyObjectProperties)(i,void 0,!0)}function K(e,t,i,r,s,o){let n=(s=s||0)+(r=r||3e3),a=!0;for(;a&&s<n&&s<e.length;)a=t(e[s],s),++s;a&&(s<e.length?o?K(e,t,i,r,s,o):F.requestAnimationFrame?F.requestAnimationFrame(function(){K(e,t,i,r,s)}):setTimeout(K,0,e,t,i,r,s):i&&i())}function Y(e,t){let i=e.options.boostThreshold??Number.MAX_VALUE;if(0===i)return!1;let r=e.dataTable.getModified().rowCount,s=e.xAxis&&e.xAxis.options,n=e.yAxis&&e.yAxis.options,a=e.colorAxis&&e.colorAxis.options;return r>=i&&(0,o.isNumber)(n?.min)&&(0,o.isNumber)(n?.max)&&(!t||(0,o.isNumber)(s?.min)&&(0,o.isNumber)(s?.max))&&(!a||(0,o.isNumber)(a.min)&&(0,o.isNumber)(a.max))}let Z=(e,t)=>{let{options:i,forceCrop:r,chart:s}=e,o=i.boostThreshold??Number.MAX_VALUE;return!r&&0!==o&&(I(s)||(t?.length??0)>=o)};function Q(){let e=this,t=e.chart;t.boost&&t.boost.markerGroup===e.markerGroup&&(e.markerGroup=void 0),t.hoverPoints&&(t.hoverPoints=t.hoverPoints.filter(function(t){return t.series===e})),t.hoverPoint&&t.hoverPoint.series===e&&(t.hoverPoint=void 0)}function $(){let e=this.boost,t=this.chart.boost,i=t?.markerGroup;e&&e.canvas&&e.target&&(e.wgl&&e.wgl.clear(),e.clear&&e.clear()),i&&this.markerGroup===i&&this.chart.series.some(e=>e.visible&&e.markerGroup===i)&&i.show()}function J(e){let t=e.boost;t&&t.canvas&&t.target&&t.wgl&&!I(e.chart)&&t.wgl.render(e.chart)}function ee(e,t){let i=e.options,r=e.xAxis,s=e.pointClass;if(t instanceof s)return t;let n=i.data,a=e.is("scatter"),l=(a&&e.getColumn("x",!0).length?e.getColumn("x",!0):void 0)||(e.getColumn("x").length?e.getColumn("x"):void 0)||i.xData||e.getColumn("x",!0)||!1,h=e.getColumn("y",!0)||i.yData||!1,d=t.i,f=n?.[d]?.color,u=new s(e,a&&l&&h?[l[d],h[d]]:((0,o.isArray)(n)?n:[])[d],l?l[d]:void 0);if(a&&i?.keys?.length){let e=i.keys;for(let t=e.length-1;t>-1;t--)u[e[t]]=n[d][t]}return u.category=r.categories?r.categories[u.x]:u.x??u.x,u.key=u.name??u.category,u.dist=t.dist,u.distX=t.distX,u.plotX=t.plotX,u.plotY=t.plotY,u.percentage=t.percentage,u.isInside=e.isPointInside(u),f&&(u.color=f),u}function et(e){let{options:t,xAxis:i,yAxis:r}=this;if(!this.isDirty&&!i.isDirty&&!r.isDirty&&!e)return!1;this.yAxis.setTickInterval();let s=t.boostThreshold||0,n=t.cropThreshold,a=this.getColumn("x"),l=i.getExtremes(),h=l.max??Number.MAX_VALUE,d=l.min??-Number.MAX_VALUE,f=this.getColumn("y"),u=r.getExtremes(),g=u.max??Number.MAX_VALUE,m=u.min??-Number.MAX_VALUE,c=r.userMin??((0,o.isNumber)(r.options.min)?r.options.min:-Number.MAX_VALUE),b=r.userMax??((0,o.isNumber)(r.options.max)?r.options.max:Number.MAX_VALUE);if(!this.boosted&&i.old&&r.old&&d>=(i.old.min??-Number.MAX_VALUE)&&h<=(i.old.max??Number.MAX_VALUE)&&m>=(r.old.min??-Number.MAX_VALUE)&&g<=(r.old.max??Number.MAX_VALUE))return this.dataTable.getModified().setColumns({x:a,y:f}),!0;let p=this.dataTable.rowCount;if(!s||p<s||n&&!this.forceCrop&&!this.getExtremesFromAll&&!t.getExtremesFromAll&&p<n)return this.dataTable.getModified().setColumns({x:a,y:f}),!0;let x=[],A=[],y=[],v=!((0,o.isNumber)(l.max)||(0,o.isNumber)(l.min)),P=!((0,o.isNumber)(u.max)||(0,o.isNumber)(u.min)),T=!1,C,k=a[0],E=a[0],M,w=f?.[0],S=f?.[0];for(let e=0,t=a.length;e<t;++e)C=a[e],M=f?.[e],C>=d&&C<=h&&M>=c&&M<=b?(x.push(C),A.push(M),y.push(e),v&&(k=Math.max(k,C),E=Math.min(E,C)),P&&(w=Math.max(w,M),S=Math.min(S,M))):T=!0;return v&&(i.dataMax=Math.max(k,i.dataMax||0),i.dataMin=Math.min(E,i.dataMin||0)),P&&(r.dataMax=Math.max(w,r.dataMax||0),r.dataMin=Math.min(S,r.dataMin||0)),this.cropped=T,this.cropStart=0,T&&!this.dataTable.modified&&(this.dataTable.modified=new D,this.hasProcessedDataTable=!0),this.dataTable.getModified().setColumns({x:x,y:A}),!0}function ei(){let t=this.options||{},i=this.chart,r=i.boost,s=this.boost,n=this.xAxis,a=this.yAxis,l=t.xData||this.getColumn("x",!0),h=t.yData||this.getColumn("y",!0),d=this.getColumn("low",!0),f=this.getColumn("high",!0),u=t.data,g=n.getExtremes(),m=g.min-(n.minPointOffset||0),c=g.max+(n.minPointOffset||0),b=a.getExtremes(),p=b.min-(a.minPointOffset||0),x=b.max+(a.minPointOffset||0),A={},y=!!this.sampling,v=t.enableMouseTracking,P=t.threshold,T=this.pointArrayMap&&"low,high"===this.pointArrayMap.join(","),C=!!t.stacking,k=this.cropStart||0,E=this.requireSorting,M=!l,w="x"===t.findNearestPointBy,S=(this.getColumn("x").length?this.getColumn("x"):void 0)||this.options.xData||this.getColumn("x",!0),U=t.lineWidth??1,R=t.nullInteraction&&p,_=i.tooltip,N=!1,L,z=a.getThreshold(P),D,O,G,B;if(!this.boosted||(this.points?.forEach(e=>{e?.destroyElements?.()}),this.points=[],_&&!_.isHidden?(i.hoverPoint?.series===this||i.hoverPoints?.some(e=>e.series===this))&&(i.hoverPoint=i.hoverPoints=void 0,_.hide(0)):i.hoverPoints&&(i.hoverPoints=i.hoverPoints.filter(e=>e.series!==this)),n.isPanning||a.isPanning)||(N=H(i,this),i.boosted=!0,!this.visible))return;(this.points||this.graph)&&W(this),I(i)?(this.markerGroup&&this.markerGroup!==r?.markerGroup&&this.markerGroup.destroy(),this.markerGroup=r?.markerGroup,s&&s.target&&(this.renderTarget=s.target=s.target.destroy())):(this.markerGroup===r?.markerGroup&&(this.markerGroup=void 0),this.markerGroup=this.plotGroup("markerGroup","markers","visible",1,i.seriesGroup).addClass("highcharts-tracker"));let V=this.points=[],F=(t,r,s,o)=>{let l=!!S&&S[k+s],h=e=>{i.inverted&&(e=n.len-e,r=a.len-r),V.push({destroy:X,x:l,clientX:e,plotX:e,plotY:r,i:k+s,percentage:o})};t=Math.ceil(t),e=w?t:t+","+r,v&&(A[e]?l===S[S.length-1]&&(V.length--,h(t)):(A[e]=!0,h(t)))};this.buildKDTree=X,(0,o.fireEvent)(this,"renderCanvas"),r&&U>1&&this.is("line")&&(r.lineWidthFilter?.remove(),r.lineWidthFilter=i.renderer.definition({tagName:"filter",children:[{tagName:"feMorphology",attributes:{operator:"dilate",radius:.25*U}}],attributes:{id:"linewidth"}}),(s?.target||r.target)?.attr({filter:"url(#linewidth)"})),N&&(j(N,this),N.pushSeries(this),J(this));let q=N.settings,Y=(0,o.isNumber)(q.chunkSize)&&q.chunkSize>0?q.chunkSize:3e3,Z=()=>{(0,o.fireEvent)(this,"renderedCanvas"),delete this.buildKDTree,this.options&&this.buildKDTree(),q.debug.timeKDTree&&console.timeEnd("kd tree building")};i.renderer.forExport||(q.debug.timeKDTree&&console.time("kd tree building"),K(C?this.data.slice(k):l||u,function(e,t){let r=void 0===i.index,s,l,u,g,b,A=!1,v=!0;return!(0,o.defined)(e)||(!r&&(M?(s=e[0],l=e[1]):(s=e,l=h[t]??R??null),T?(M&&(l=e.slice(1,3)),A=d[t],l=f[t]):C&&(s=e.x,A=(l=e.stackY)-e.y,b=e.percentage),E||(v=(l||0)>=p&&l<=x),null!==l&&s>=m&&s<=c&&v&&(u=n.toPixels(s,!0),y?((void 0===G||u===L)&&(T||(A=l),(void 0===B||l>O)&&(O=l,B=t),(void 0===G||A<D)&&(D=A,G=t)),w&&u===L||(void 0!==G&&(g=a.toPixels(O,!0),z=a.toPixels(D,!0),F(u,g,B,b),z!==g&&F(u,z,G,b)),G=B=void 0,L=u)):F(u,g=Math.ceil(a.toPixels(l,!0)),t,b))),!r)},Z,Y))}function er(e){let t=!0;if(this.chart.options&&this.chart.options.boost&&(t=void 0===this.chart.options.boost.enabled||this.chart.options.boost.enabled),!t||!this.boosted)return e.call(this);this.chart.boosted=!0;let i=H(this.chart,this);i&&(j(i,this),i.pushSeries(this)),J(this)}function es(e){if(this.boosted){if(Y(this,!0))return{};if(this.xAxis?.isPanning||this.yAxis?.isPanning)return this}return e.apply(this,[].slice.call(arguments,1))}function eo(e){let t=this.options.data;if(q(this.chart)&&m[this.type]){let r=this.is("scatter")&&!this.is("bubble")&&!this.is("treemap")&&!this.is("heatmap");if(!Z(this,t)||r||this.is("treemap")||this.options.stacking||!Y(this,!0)){if(this.boosted&&(this.xAxis?.isPanning||this.yAxis?.isPanning))return;r&&"treegrid"!==this.yAxis.type?et.call(this,arguments[1]):e.apply(this,[].slice.call(arguments,1)),t=this.getColumn("x",!0)}if(this.boosted=Z(this,t),this.boosted){let e;this.options.data?.length&&(e=this.getFirstValidPoint(this.options.data),(0,o.isNumber)(e)||(0,o.isArray)(e)||this.is("treemap")||(0,o.error)(12,!1,this.chart));var i=this;i.boost=i.boost||{getPoint:e=>ee(i,e)};let t=i.boost.altered=[];if(["allowDG","directTouch","stickyTracking"].forEach(e=>{t.push({prop:e,val:i[e],own:Object.hasOwnProperty.call(i,e)})}),i.allowDG=!1,i.directTouch=!1,i.stickyTracking=!0,i.finishedAnimating=!0,i.labelBySeries&&(i.labelBySeries=i.labelBySeries.destroy()),i.is("scatter")&&!i.is("treemap")&&i.data.length){for(let e of i.data)e?.destroy?.();i.data.length=0,i.points.length=0}}else!function(e){let t=e.boost,i=e.chart,r=i.boost;if(r?.markerGroup)for(let e of(r.markerGroup.destroy(),r.markerGroup=void 0,i.series))e.markerGroup=void 0,e.markerGroup=e.plotGroup("markerGroup","markers","visible",1,i.seriesGroup).addClass("highcharts-tracker");t&&((t.altered||[]).forEach(t=>{t.own?e[t.prop]=t.val:delete e[t.prop]}),t.clear&&t.clear()),(i.seriesGroup||e.group)?.clip()}(this)}else e.apply(this,[].slice.call(arguments,1))}function en(e){let t=e.apply(this,[].slice.call(arguments,1));return this.boost&&t?this.boost.getPoint(t):t}let ea=function(e,t,i,r){if((0,o.pushUnique)(B,"Boost.Series")){let s=G().plotOptions,n=e.prototype;if((0,o.addEvent)(e,"destroy",Q),(0,o.addEvent)(e,"hide",$),r&&(n.renderCanvas=ei),(0,o.wrap)(n,"getExtremes",es),(0,o.wrap)(n,"processData",eo),(0,o.wrap)(n,"searchPoint",en),["translate","generatePoints","drawTracker","drawPoints","render"].forEach(e=>(function(e,t,i){function r(e){let t=this.options.stacking&&("translate"===i||"generatePoints"===i);this.boosted&&!t&&q(this.chart)&&"heatmap"!==this.type&&"treemap"!==this.type&&m[this.type]&&0!==this.options.boostThreshold?"render"===i&&this.renderCanvas&&this.renderCanvas():e.call(this)}if((0,o.wrap)(e,i,r),"translate"===i)for(let e of["column","arearange","columnrange","heatmap","treemap"])t[e]&&(0,o.wrap)(t[e].prototype,i,r)})(n,t,e)),(0,o.wrap)(i.prototype,"firePointEvent",function(e,t,i){if("click"===t&&this.series.boosted){let e=i.point;if((e.dist||e.distX)>=(e.series.options.marker?.radius??10))return}return e.apply(this,[].slice.call(arguments,1))}),g.forEach(e=>{let i=s[e];i&&(i.boostThreshold=5e3,i.boostData=[],t[e].prototype.fillOpacity=!0)}),r){let{area:e,areaspline:i,bubble:r,column:s,heatmap:n,scatter:a,treemap:l}=t;if(e&&(0,o.extend)(e.prototype,{fill:!0,fillOpacity:!0,sampling:!0}),i&&(0,o.extend)(i.prototype,{fill:!0,fillOpacity:!0,sampling:!0}),r){let e=r.prototype;delete e.buildKDTree,(0,o.wrap)(e,"markerAttribs",function(e){return!this.boosted&&e.apply(this,[].slice.call(arguments,1))})}s&&(0,o.extend)(s.prototype,{fill:!0,sampling:!0}),a&&(a.prototype.fill=!0),[n,l].forEach(e=>{e&&(0,o.wrap)(e.prototype,"drawPoints",er)})}}return e},el={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dodgerblue:"#1e90ff",feldspar:"#d19275",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",grey:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgrey:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslateblue:"#8470ff",lightslategray:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370d8",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#d87093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",violetred:"#d02090",wheat:"#f5deb3",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},{doc:eh,win:ed}=u(),ef=["webgl","experimental-webgl","moz-webgl","webkit-3d"];function eu(){let e;if(void 0!==ed.WebGLRenderingContext){e=eh.createElement("canvas");for(let t=0;t<ef.length;++t)try{if(null!=e.getContext(ef[t]))return!0}catch{}}return!1}let eg=u();eg.hasWebGLSupport=eu,n=eg.Chart,a=eg.Axis,l=eg.Series,h=eg.seriesTypes,d=eg.Point,f=eg.Color,(i=eu())||(void 0!==u().initCanvasBoost?u().initCanvasBoost():(0,o.error)(26)),f&&!f.names.lightgoldenrodyellow&&(f.names={...f.names,...el}),x.compose(n,i),ea(l,h,d,i),(0,o.addEvent)(a,"setExtremes",function(e){for(let t of[this.chart,...this.series].map(e=>e.renderTarget).filter(Boolean)){let{horiz:i,pos:r}=this,s=i?"scaleX":"scaleY",o=i?"translateX":"translateY",n=t?.[s]??1,a=1,l=0,h=1,d="none";this.isPanning&&(a=(e.scale??1)*n,l=(t?.[o]||0)-a*(e.move||0)+n*r-a*r,h=.7,d="blur(3px)"),t?.attr({[s]:a,[o]:l}).css({transition:"250ms filter, 250ms opacity",filter:d,opacity:h})}if(!this.isPanning)for(let e of this.series)e.boost&&e.is("scatter")&&!e.is("bubble")&&!e.is("treemap")&&!e.is("heatmap")&&(e.isDirty=!0)});let em=u();export{em as default};
@@ -1,6 +1,6 @@
1
1
  // SPDX-License-Identifier: LicenseRef-Highcharts
2
2
  /**
3
- * @license Highcharts JS v13.0.2 (2026-08-27)
3
+ * @license Highcharts JS v13.1.0 (2026-09-18)
4
4
  * @module highcharts/modules/boost
5
5
  * @requires highcharts
6
6
  *
@@ -19,48 +19,27 @@ import * as __WEBPACK_EXTERNAL_MODULE__highcharts_src_js_8202131d__ from "../hig
19
19
  /******/
20
20
  /************************************************************************/
21
21
  /******/ /* webpack/runtime/compat get default export */
22
- /******/ (() => {
23
- /******/ // getDefaultExport function for compatibility with non-harmony modules
24
- /******/ __webpack_require__.n = (module) => {
25
- /******/ const getter = module && module.__esModule ?
26
- /******/ () => (module['default']) :
27
- /******/ () => (module);
28
- /******/ __webpack_require__.d(getter, { a: getter });
29
- /******/ return getter;
30
- /******/ };
31
- /******/ })();
22
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
23
+ /******/ __webpack_require__.n = (module) => {
24
+ /******/ const getter = module && module.__esModule ?
25
+ /******/ () => (module['default']) :
26
+ /******/ () => (module);
27
+ /******/ __webpack_require__.d(getter, { a: getter });
28
+ /******/ return getter;
29
+ /******/ };
32
30
  /******/
33
31
  /******/ /* webpack/runtime/define property getters */
34
- /******/ (() => {
35
- /******/ // define getter/value functions for harmony exports
36
- /******/ __webpack_require__.d = (exports, definition) => {
37
- /******/ if(Array.isArray(definition)) {
38
- /******/ var i = 0;
39
- /******/ while(i < definition.length) {
40
- /******/ var key = definition[i++];
41
- /******/ var binding = definition[i++];
42
- /******/ if(!__webpack_require__.o(exports, key)) {
43
- /******/ if(binding === 0) {
44
- /******/ Object.defineProperty(exports, key, { enumerable: true, value: definition[i++] });
45
- /******/ } else {
46
- /******/ Object.defineProperty(exports, key, { enumerable: true, get: binding });
47
- /******/ }
48
- /******/ } else if(binding === 0) { i++; }
49
- /******/ }
50
- /******/ } else {
51
- /******/ for(var key in definition) {
52
- /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
53
- /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
54
- /******/ }
55
- /******/ }
32
+ /******/ // define getter/value functions for harmony exports
33
+ /******/ __webpack_require__.d = (exports, definition) => {
34
+ /******/ for(var key in definition) {
35
+ /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
36
+ /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
56
37
  /******/ }
57
- /******/ };
58
- /******/ })();
38
+ /******/ }
39
+ /******/ };
59
40
  /******/
60
41
  /******/ /* webpack/runtime/hasOwnProperty shorthand */
61
- /******/ (() => {
62
- /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
63
- /******/ })();
42
+ /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop));
64
43
  /******/
65
44
  /************************************************************************/
66
45
 
@@ -358,7 +337,7 @@ function onChartCallback(chart) {
358
337
  chart.boost.markerGroup.translate(chart.xAxis[0].pos, chart.yAxis[0].pos);
359
338
  }
360
339
  }
361
- (0,external_highcharts_src_js_default_namespaceObject.addEvent)(chart, 'predraw', preRender);
340
+ ;(0,external_highcharts_src_js_default_namespaceObject.addEvent)(chart, 'predraw', preRender);
362
341
  // Use the load event rather than redraw, otherwise user load events will
363
342
  // fire too early (#18755)
364
343
  (0,external_highcharts_src_js_default_namespaceObject.addEvent)(chart, 'load', canvasToSVG, { order: -1 });
@@ -1344,7 +1323,7 @@ class WGLRenderer {
1344
1323
  if (!('pixelRatio' in options)) {
1345
1324
  options.pixelRatio = 1;
1346
1325
  }
1347
- (0,external_highcharts_src_js_default_namespaceObject.merge)(true, this.settings, options);
1326
+ ;(0,external_highcharts_src_js_default_namespaceObject.merge)(true, this.settings, options);
1348
1327
  }
1349
1328
  /**
1350
1329
  * Allocate a float buffer to fit all series
@@ -2582,13 +2561,19 @@ const { setLength: DataTableCore_setLength, splice: DataTableCore_splice } = Dat
2582
2561
  class DataTableCore {
2583
2562
  constructor(options = {}) {
2584
2563
  this.isDataTable = true;
2585
- this.autoId = !options.id;
2564
+ // Reject IDs that would pollute the prototype of ID-keyed maps.
2565
+ const id = this.isPollutingKey(options.id) ? void 0 : options.id;
2566
+ this.autoId = !id;
2586
2567
  this.columns = {};
2587
- this.id = (options.id || (0,external_highcharts_src_js_default_namespaceObject.uniqueKey)());
2568
+ this.id = (id || (0,external_highcharts_src_js_default_namespaceObject.uniqueKey)());
2588
2569
  this.rowCount = 0;
2589
2570
  this.versionTag = (0,external_highcharts_src_js_default_namespaceObject.uniqueKey)();
2590
2571
  let rowCount = 0;
2591
2572
  (0,external_highcharts_src_js_default_namespaceObject.objectEach)(options.columns || {}, (column, columnId) => {
2573
+ if (columnId === '__proto__' ||
2574
+ columnId === 'constructor') {
2575
+ return;
2576
+ }
2592
2577
  this.columns[columnId] = column.slice();
2593
2578
  rowCount = Math.max(rowCount, column.length);
2594
2579
  });
@@ -2599,6 +2584,17 @@ class DataTableCore {
2599
2584
  * Functions
2600
2585
  *
2601
2586
  * */
2587
+ /**
2588
+ * Checks whether a key would pollute the prototype if used to index a
2589
+ * plain object (e.g. as a column ID or table ID).
2590
+ *
2591
+ * @private
2592
+ * @param {string|undefined} key The key to check.
2593
+ * @return {boolean} True if the key is unsafe to use.
2594
+ */
2595
+ isPollutingKey(key) {
2596
+ return key === '__proto__' || key === 'constructor';
2597
+ }
2602
2598
  /**
2603
2599
  * Applies a row count to the table by setting the `rowCount` property and
2604
2600
  * adjusting the length of all columns.
@@ -2645,7 +2641,7 @@ class DataTableCore {
2645
2641
  });
2646
2642
  this.rowCount = length;
2647
2643
  }
2648
- (0,external_highcharts_src_js_default_namespaceObject.fireEvent)(this, 'afterDeleteRows', { rowIndex, rowCount });
2644
+ ;(0,external_highcharts_src_js_default_namespaceObject.fireEvent)(this, 'afterDeleteRows', { rowIndex, rowCount });
2649
2645
  this.versionTag = (0,external_highcharts_src_js_default_namespaceObject.uniqueKey)();
2650
2646
  }
2651
2647
  /**
@@ -2757,6 +2753,10 @@ class DataTableCore {
2757
2753
  setColumns(columns, rowIndex, eventDetail) {
2758
2754
  let rowCount = this.rowCount;
2759
2755
  (0,external_highcharts_src_js_default_namespaceObject.objectEach)(columns, (column, columnId) => {
2756
+ if (columnId === '__proto__' ||
2757
+ columnId === 'constructor') {
2758
+ return;
2759
+ }
2760
2760
  this.columns[columnId] = column.slice();
2761
2761
  rowCount = column.length;
2762
2762
  });
@@ -2795,14 +2795,17 @@ class DataTableCore {
2795
2795
  * @emits #afterSetRows
2796
2796
  */
2797
2797
  setRow(row, rowIndex = this.rowCount, insert, eventDetail) {
2798
- var _a;
2799
2798
  const { columns } = this, indexRowCount = insert ? this.rowCount + 1 : rowIndex + 1, rowKeys = Object.keys(row);
2800
2799
  if (eventDetail?.addColumns !== false) {
2801
2800
  for (let i = 0, iEnd = rowKeys.length; i < iEnd; i++) {
2802
- columns[_a = rowKeys[i]] || (columns[_a] = new Array(this.rowCount));
2801
+ const rowKey = rowKeys[i];
2802
+ if (!this.isPollutingKey(rowKey) &&
2803
+ !Object.hasOwnProperty.call(columns, rowKey)) {
2804
+ columns[rowKey] = new Array(this.rowCount);
2805
+ }
2803
2806
  }
2804
2807
  }
2805
- (0,external_highcharts_src_js_default_namespaceObject.objectEach)(columns, (column, columnId) => {
2808
+ ;(0,external_highcharts_src_js_default_namespaceObject.objectEach)(columns, (column, columnId) => {
2806
2809
  if (column) {
2807
2810
  if (insert) {
2808
2811
  column = DataTableCore_splice(column, rowIndex, 0, true, [row[columnId]]).array;
@@ -2973,7 +2976,7 @@ function BoostSeries_compose(SeriesClass, seriesTypes, PointClass, wglMode) {
2973
2976
  if (wglMode) {
2974
2977
  seriesProto.renderCanvas = seriesRenderCanvas;
2975
2978
  }
2976
- (0,external_highcharts_src_js_default_namespaceObject.wrap)(seriesProto, 'getExtremes', wrapSeriesGetExtremes);
2979
+ ;(0,external_highcharts_src_js_default_namespaceObject.wrap)(seriesProto, 'getExtremes', wrapSeriesGetExtremes);
2977
2980
  (0,external_highcharts_src_js_default_namespaceObject.wrap)(seriesProto, 'processData', wrapSeriesProcessData);
2978
2981
  (0,external_highcharts_src_js_default_namespaceObject.wrap)(seriesProto, 'searchPoint', wrapSeriesSearchPoint);
2979
2982
  [
@@ -3219,20 +3222,11 @@ function createAndAttachRenderer(chart, series) {
3219
3222
  */
3220
3223
  function destroyGraphics(series) {
3221
3224
  const points = series.points;
3222
- if (points) {
3223
- let point, i;
3224
- for (i = 0; i < points.length; i = i + 1) {
3225
- point = points[i];
3226
- if (point && point.destroyElements) {
3227
- point.destroyElements(); // #7557
3228
- }
3229
- }
3230
- }
3225
+ points?.forEach((point) => {
3226
+ point?.destroyElements?.(); // #7557
3227
+ });
3231
3228
  ['graph', 'area', 'tracker'].forEach((prop) => {
3232
- const seriesProp = series[prop];
3233
- if (seriesProp) {
3234
- series[prop] = seriesProp.destroy();
3235
- }
3229
+ series[prop] = series[prop]?.destroy();
3236
3230
  });
3237
3231
  for (const zone of series.zones) {
3238
3232
  (0,external_highcharts_src_js_default_namespaceObject.destroyObjectProperties)(zone, void 0, true);
@@ -3845,7 +3839,7 @@ function seriesRenderCanvas() {
3845
3839
  const boostOptions = renderer.settings, chunkSize = ((0,external_highcharts_src_js_default_namespaceObject.isNumber)(boostOptions.chunkSize) && boostOptions.chunkSize > 0 ?
3846
3840
  boostOptions.chunkSize :
3847
3841
  CHUNK_SIZE), doneProcessing = () => {
3848
- (0,external_highcharts_src_js_default_namespaceObject.fireEvent)(this, 'renderedCanvas');
3842
+ ;(0,external_highcharts_src_js_default_namespaceObject.fireEvent)(this, 'renderedCanvas');
3849
3843
  // Go back to prototype, ready to build
3850
3844
  delete this.buildKDTree;
3851
3845
  // Check that options exist, as async processing
@@ -3919,7 +3913,7 @@ function wrapSeriesFunctions(seriesProto, seriesTypes, method) {
3919
3913
  this.renderCanvas();
3920
3914
  }
3921
3915
  }
3922
- (0,external_highcharts_src_js_default_namespaceObject.wrap)(seriesProto, method, branch);
3916
+ ;(0,external_highcharts_src_js_default_namespaceObject.wrap)(seriesProto, method, branch);
3923
3917
  // Special case for some types, when translate method is already wrapped
3924
3918
  if (method === 'translate') {
3925
3919
  for (const type of [
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Highcharts JS v13.0.2 (2026-08-27)
2
+ * Highcharts JS v13.1.0 (2026-09-18)
3
3
  * @module highcharts/modules/broken-axis
4
4
  * @requires highcharts
5
5
  *
@@ -8,4 +8,4 @@
8
8
  *
9
9
  * A commercial license may be required depending on use,
10
10
  * see www.highcharts.com/license
11
- */import*as e from"../highcharts.js";let t={};t.n=e=>{let i=e&&e.__esModule?()=>e.default:()=>e;return t.d(i,{a:i}),i},t.d=(e,i)=>{if(Array.isArray(i))for(var r=0;r<i.length;){var s=i[r++],n=i[r++];t.o(e,s)?0===n&&r++:0===n?Object.defineProperty(e,s,{enumerable:!0,value:i[r++]}):Object.defineProperty(e,s,{enumerable:!0,get:n})}else for(var s in i)t.o(i,s)&&!t.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:i[s]})},t.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);let i=e.default;var r,s=t.n(i);let n=e.default.StackItem;var o=t.n(n);!function(e){function t(){void 0!==this.brokenAxis&&this.brokenAxis.setBreaks(this.options.breaks,!1)}function r(){Object.keys(this.options.breaks?.[0]||{}).length&&(this.options.ordinal=!1)}function s(){let e=this.brokenAxis;if(e?.hasBreaks){let t=this.tickPositions,i=this.tickPositions.info,r=[];for(let i=0;i<t.length;i++)e.isInAnyBreak(t[i])||r.push(t[i]);this.tickPositions=r,this.tickPositions.info=i}}function n(){this.brokenAxis||(this.brokenAxis=new h(this))}function a(){let{isDirty:e,options:{connectNulls:t},points:i,xAxis:r,yAxis:s}=this;if(e){let e=i.length;for(;e--;){let n=i[e],o=(null!==n.y||!1!==t)&&(r?.brokenAxis?.isInAnyBreak(n.x,!0)||s?.brokenAxis?.isInAnyBreak(n.y,!0));n.visible=!o&&!1!==n.options.visible}}}function l(){this.drawBreaks(this.xAxis,["x"]),this.drawBreaks(this.yAxis,this.pointArrayMap??["y"])}function f(e,t){let r,s,n,o=this,a=o.points;if(e?.brokenAxis?.hasBreaks){let l=e.brokenAxis;t.forEach(function(t){r=l?.breakArray||[],s=e.isXAxis?e.min:o.options.threshold??e.min,a.forEach(function(o){n=o["stack"+t.toUpperCase()]??o[t],r.forEach(function(t){if((0,i.isNumber)(s)&&(0,i.isNumber)(n)){let r="";s<t.from&&n>t.to||s>t.from&&n<t.from?r="pointBreak":(s<t.from&&n>t.from&&n<t.to||s>t.from&&n>t.to&&n<t.from)&&(r="pointInBreak"),r&&(0,i.fireEvent)(e,r,{point:o,brk:t})}})})})}}function u(){let e=this.currentDataGrouping,t=e?.gapSize,i=this.points.slice(),r=this.yAxis,s=this.options.gapSize,n=i.length-1;if(s&&n>0){let e,a;for("value"!==this.options.gapUnit&&(s*=this.basePointRange),t&&t>s&&t>=this.basePointRange&&(s=t);n--;)if(a&&!1!==a.visible||(a=i[n+1]),e=i[n],!1!==a.visible&&!1!==e.visible){if(a.x-e.x>s){let t=(e.x+a.x)/2;i.splice(n+1,0,{isNull:!0,x:t}),r.stacking&&this.options.stacking&&((r.stacking.stacks[this.stackKey][t]=new(o())(r,r.options.stackLabels,!1,t,this.stack??"")).total=0)}a=e}}return this.getGraphPath(i)}e.compose=function(e,o){if(!e.keepProps.includes("brokenAxis")){e.keepProps.push("brokenAxis"),(0,i.addEvent)(e,"init",n),(0,i.addEvent)(e,"afterInit",t),(0,i.addEvent)(e,"afterSetTickPositions",s),(0,i.addEvent)(e,"afterSetOptions",r);let h=o.prototype;h.drawBreaks=f,h.gappedPath=u,(0,i.addEvent)(o,"afterGeneratePoints",a),(0,i.addEvent)(o,"afterRender",l)}return e};class h{static isInBreak(e,t){let i=e.repeat||1/0,r=e.from,s=e.to-e.from,n=t>=r?(t-r)%i:i-(r-t)%i;return e.inclusive?n<=s:n<s&&0!==n}static lin2Val(e){let t=this.min||0,r=this.brokenAxis,s=r?.breakArray;if(!s?.length||!(0,i.isNumber)(e))return e;let n=e;if(e>t)for(let e of s)if(e.from>n)break;else e.to<=n&&e.to>t?n+=e.len:h.isInBreak(e,n)&&(n+=e.len);else if(e<t)for(let e of s)if(e.from>t)break;else e.from>=n&&e.from<t?n-=e.len:h.isInBreak(e,n)&&(n-=e.len);return n}static val2Lin(e){let t=this.min||0,r=this.brokenAxis,s=r?.breakArray;if(!s?.length||!(0,i.isNumber)(e))return e;let n=e;if(e>t){for(let i of s)if(i.to<=e&&i.to>t)n-=i.len;else if(i.from>e)break;else if(h.isInBreak(i,e)){n-=e-i.from;break}}else if(e<t){for(let i of s)if(i.from>=e&&i.from<t)n+=i.len;else if(i.from>t)break;else if(h.isInBreak(i,e)){n+=i.to-e;break}}return n}constructor(e){this.axis=e}findBreakAt(e,t){return(0,i.find)(t,function(t){return t.from<e&&e<t.to})}isInAnyBreak(e,t){let r=this.axis,s=r.options.breaks||[],n=s.length,o,a,l;if(n&&(0,i.isNumber)(e)){for(;n--;)h.isInBreak(s[n],e)&&(o=!0,a||(a=s[n].showPoints??!r.isXAxis));l=o&&t?o&&!a:o}return l}setBreaks(e,t){let r=this,s=r.axis,n=s.chart.time,o=(0,i.isArray)(e)&&!!Object.keys(e?.[0]||{}).length;s.isDirty=(r.hasBreaks??!1)!==o,r.hasBreaks=o,e?.forEach(e=>{e.from=n.parse(e.from)||0,e.to=n.parse(e.to)||0}),e!==s.options.breaks&&(s.options.breaks=s.userOptions.breaks=e),s.forceRedraw=!0,s.series.forEach(function(e){e.isDirty=!0}),o||s.val2lin!==h.val2Lin||(delete s.val2lin,delete s.lin2val),o&&(s.userOptions.ordinal=!1,s.lin2val=h.lin2Val,s.val2lin=h.val2Lin,s.setExtremes=function(e,t,i,n,o){if(r.hasBreaks&&!s.treeGrid?.tree){let i,s=this.brokenAxis.breakArray||[];for(;i=r.findBreakAt(e,s);)e=i.to;for(;i=r.findBreakAt(t,s);)t=i.from;t<e&&(t=e)}s.constructor.prototype.setExtremes.call(this,e,t,i,n,o)},s.setAxisTranslation=function(){if(s.constructor.prototype.setAxisTranslation.call(this),r.unitLength=void 0,r.hasBreaks){let e=s.options.breaks||[],t=[],n=[],o=s.pointRangePadding??0,a=0,l,f,u=s.userMin??s.min,k=s.userMax??s.max,c,m,b=(0,i.isNumber)(u)?Math.min(s.dataMin??u,u):s.dataMin??u,p=(0,i.isNumber)(k)?Math.max(s.dataMax??k,k):s.dataMax??k;s.treeGrid?.tree||e.forEach(function(e){f=e.repeat||1/0,(0,i.isNumber)(u)&&(0,i.isNumber)(k)&&(h.isInBreak(e,u)&&(u+=e.to%f-u%f),h.isInBreak(e,k)&&(k-=k%f-e.from%f))}),(0,i.isNumber)(b)&&(0,i.isNumber)(p)&&e.forEach(function(e){for(c=e.from,f=e.repeat||1/0;c-f>b;)c-=f;for(;c<b;)c+=f;for(m=c;m<p;m+=f)t.push({value:m,move:"in"}),t.push({value:m+e.to-e.from,move:"out",size:e.breakSize})}),t.sort(function(e,t){return e.value===t.value?("in"!==e.move)-("in"!==t.move):e.value-t.value}),l=0,c=b,t.forEach(e=>{1===(l+="in"===e.move?1:-1)&&"in"===e.move&&(c=e.value),0===l&&(0,i.isNumber)(c)&&(n.push({from:c,to:e.value,len:e.value-c-(e.size||0)}),(0,i.isNumber)(u)&&(0,i.isNumber)(k)&&c<k&&e.value>u&&(a+=e.value-c-(e.size||0)))}),r.breakArray=n,(0,i.isNumber)(u)&&(0,i.isNumber)(k)&&(0,i.isNumber)(s.min)&&(r.unitLength=k-u-a+o,(0,i.fireEvent)(s,"afterBreaks"),s.staticScale?s.transA=s.staticScale:r.unitLength&&(s.transA*=(k-s.min+o)/r.unitLength),o&&(s.minPixelPadding=s.transA*(s.minPointOffset||0)),s.min=u,s.max=k)}}),(t??!0)&&s.chart.redraw()}}e.Additions=h}(r||(r={}));let a=r,l=s();l.BrokenAxis=l.BrokenAxis||a,l.BrokenAxis.compose(l.Axis,l.Series);let f=s();export{f as default};
11
+ */import*as e from"../highcharts.js";let t={};t.n=e=>{let i=e&&e.__esModule?()=>e.default:()=>e;return t.d(i,{a:i}),i},t.d=(e,i)=>{for(var r in i)t.o(i,r)&&!t.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:i[r]})},t.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);let i=e.default;var r,s=t.n(i);let n=e.default.StackItem;var o=t.n(n);let{composed:a}=s();!function(e){function t(){void 0!==this.brokenAxis&&this.brokenAxis.setBreaks(this.options.breaks,!1)}function r(){Object.keys(this.options.breaks?.[0]||{}).length&&(this.options.ordinal=!1)}function s(){let e=this.brokenAxis;if(e?.hasBreaks){let t=this.tickPositions,i=this.tickPositions.info,r=[];for(let i=0;i<t.length;i++)e.isInAnyBreak(t[i])||r.push(t[i]);this.tickPositions=r,this.tickPositions.info=i}}function n(){this.brokenAxis||(this.brokenAxis=new k(this))}function l(){let{isDirty:e,options:{connectNulls:t},points:i,xAxis:r,yAxis:s}=this;if(e){let e=i.length;for(;e--;){let n=i[e],o=(null!==n.y||!1!==t)&&(r?.brokenAxis?.isInAnyBreak(n.x,!0)||s?.brokenAxis?.isInAnyBreak(n.y,!0));n.visible=!o&&!1!==n.options.visible}}}function f(){this.drawBreaks(this.xAxis,["x"]),this.drawBreaks(this.yAxis,this.pointArrayMap??["y"])}function u(e,t){let r,s,n,o=this,a=o.points;if(e?.brokenAxis?.hasBreaks){let l=e.brokenAxis;t.forEach(function(t){r=l?.breakArray||[],s=e.isXAxis?e.min:o.options.threshold??e.min,a.forEach(function(o){n=o["stack"+t.toUpperCase()]??o[t],r.forEach(function(t){if((0,i.isNumber)(s)&&(0,i.isNumber)(n)){let r="";s<t.from&&n>t.to||s>t.from&&n<t.from?r="pointBreak":(s<t.from&&n>t.from&&n<t.to||s>t.from&&n>t.to&&n<t.from)&&(r="pointInBreak"),r&&(0,i.fireEvent)(e,r,{point:o,brk:t})}})})})}}function h(){let e=this.currentDataGrouping,t=e?.gapSize,i=this.points.slice(),r=this.yAxis,s=this.options.gapSize,n=i.length-1;if(s&&n>0){let e,a;for("value"!==this.options.gapUnit&&(s*=this.basePointRange),t&&t>s&&t>=this.basePointRange&&(s=t);n--;)if(a&&!1!==a.visible||(a=i[n+1]),e=i[n],!1!==a.visible&&!1!==e.visible){if(a.x-e.x>s){let t=(e.x+a.x)/2;i.splice(n+1,0,{isNull:!0,x:t}),r.stacking&&this.options.stacking&&((r.stacking.stacks[this.stackKey][t]=new(o())(r,!1,t,this.stack??"")).total=0)}a=e}}return this.getGraphPath(i)}e.compose=function(e,o){if((0,i.pushUnique)(a,"Axis.Broken")){(0,i.addEvent)(e,"init",n),(0,i.addEvent)(e,"afterInit",t),(0,i.addEvent)(e,"afterSetTickPositions",s),(0,i.addEvent)(e,"afterSetOptions",r);let a=o.prototype;a.drawBreaks=u,a.gappedPath=h,(0,i.addEvent)(o,"afterGeneratePoints",l),(0,i.addEvent)(o,"afterRender",f)}return e};class k{static isInBreak(e,t){let i=e.repeat||1/0,r=e.from,s=e.to-e.from,n=t>=r?(t-r)%i:i-(r-t)%i;return e.inclusive?n<=s:n<s&&0!==n}static lin2Val(e){let t=this.min||0,r=this.brokenAxis,s=r?.breakArray;if(!s?.length||!(0,i.isNumber)(e))return e;let n=e;if(e>t)for(let e of s)if(e.from>n)break;else e.to<=n&&e.to>t?n+=e.len:k.isInBreak(e,n)&&(n+=e.len);else if(e<t)for(let e of s)if(e.from>t)break;else e.from>=n&&e.from<t?n-=e.len:k.isInBreak(e,n)&&(n-=e.len);return n}static val2Lin(e){let t=this.min||0,r=this.brokenAxis,s=r?.breakArray;if(!s?.length||!(0,i.isNumber)(e))return e;let n=e;if(e>t){for(let i of s)if(i.to<=e&&i.to>t)n-=i.len;else if(i.from>e)break;else if(k.isInBreak(i,e)){n-=e-i.from;break}}else if(e<t){for(let i of s)if(i.from>=e&&i.from<t)n+=i.len;else if(i.from>t)break;else if(k.isInBreak(i,e)){n+=i.to-e;break}}return n}constructor(e){this.axis=e}findBreakAt(e,t){return(0,i.find)(t,function(t){return t.from<e&&e<t.to})}isInAnyBreak(e,t){let r=this.axis,s=r.options.breaks||[],n=s.length,o,a,l;if(n&&(0,i.isNumber)(e)){for(;n--;)k.isInBreak(s[n],e)&&(o=!0,a||(a=s[n].showPoints??!r.isXAxis));l=o&&t?o&&!a:o}return l}setBreaks(e,t){let r=this,s=r.axis,n=s.chart.time,o=(0,i.isArray)(e)&&!!Object.keys(e?.[0]||{}).length;s.isDirty=(r.hasBreaks??!1)!==o,r.hasBreaks=o,e?.forEach(e=>{e.from=n.parse(e.from)||0,e.to=n.parse(e.to)||0}),e!==s.options.breaks&&(s.options.breaks=s.userOptions.breaks=e),s.forceRedraw=!0,s.series.forEach(function(e){e.isDirty=!0}),o||s.val2lin!==k.val2Lin||(delete s.val2lin,delete s.lin2val),o&&(s.userOptions.ordinal=!1,s.lin2val=k.lin2Val,s.val2lin=k.val2Lin,s.setExtremes=function(e,t,i,n,o){if(r.hasBreaks&&!s.treeGrid?.tree){let i,s=this.brokenAxis.breakArray||[];for(;i=r.findBreakAt(e,s);)e=i.to;for(;i=r.findBreakAt(t,s);)t=i.from;t<e&&(t=e)}s.constructor.prototype.setExtremes.call(this,e,t,i,n,o)},s.setAxisTranslation=function(){if(s.constructor.prototype.setAxisTranslation.call(this),r.unitLength=void 0,r.hasBreaks){let e=s.options.breaks||[],t=[],n=[],o=s.pointRangePadding??0,a=0,l,f,u=s.userMin??s.min,h=s.userMax??s.max,c,m,b=(0,i.isNumber)(u)?Math.min(s.dataMin??u,u):s.dataMin??u,p=(0,i.isNumber)(h)?Math.max(s.dataMax??h,h):s.dataMax??h;s.treeGrid?.tree||e.forEach(function(e){f=e.repeat||1/0,(0,i.isNumber)(u)&&(0,i.isNumber)(h)&&(k.isInBreak(e,u)&&(u+=e.to%f-u%f),k.isInBreak(e,h)&&(h-=h%f-e.from%f))}),(0,i.isNumber)(b)&&(0,i.isNumber)(p)&&e.forEach(function(e){for(c=e.from,f=e.repeat||1/0;c-f>b;)c-=f;for(;c<b;)c+=f;for(m=c;m<p;m+=f)t.push({value:m,move:"in"}),t.push({value:m+e.to-e.from,move:"out",size:e.breakSize})}),t.sort(function(e,t){return e.value===t.value?("in"!==e.move)-("in"!==t.move):e.value-t.value}),l=0,c=b,t.forEach(e=>{1===(l+="in"===e.move?1:-1)&&"in"===e.move&&(c=e.value),0===l&&(0,i.isNumber)(c)&&(n.push({from:c,to:e.value,len:e.value-c-(e.size||0)}),(0,i.isNumber)(u)&&(0,i.isNumber)(h)&&c<h&&e.value>u&&(a+=e.value-c-(e.size||0)))}),r.breakArray=n,(0,i.isNumber)(u)&&(0,i.isNumber)(h)&&(0,i.isNumber)(s.min)&&(r.unitLength=h-u-a+o,(0,i.fireEvent)(s,"afterBreaks"),s.staticScale?s.transA=s.staticScale:r.unitLength&&(s.transA*=(h-s.min+o)/r.unitLength),o&&(s.minPixelPadding=s.transA*(s.minPointOffset||0)),s.min=u,s.max=h)}}),(t??!0)&&s.chart.redraw()}}e.Additions=k}(r||(r={}));let l=r,f=s();f.BrokenAxis=f.BrokenAxis||l,f.BrokenAxis.compose(f.Axis,f.Series);let u=s();export{u as default};