highcharts 9.2.0 → 9.3.1

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 (755) hide show
  1. package/README.md +13 -6
  2. package/bower.json +1 -1
  3. package/css/annotations/popup.css +48 -8
  4. package/css/annotations/popup.scss +70 -22
  5. package/css/highcharts.css +45 -0
  6. package/css/highcharts.scss +40 -0
  7. package/css/themes/dark-unica.css +45 -0
  8. package/css/themes/grid-light.css +45 -0
  9. package/css/themes/sand-signika.css +45 -0
  10. package/es-modules/Accessibility/A11yI18n.js +273 -224
  11. package/es-modules/Accessibility/Accessibility.js +237 -128
  12. package/es-modules/Accessibility/AccessibilityComponent.js +79 -314
  13. package/es-modules/Accessibility/Components/AnnotationsA11y.js +10 -0
  14. package/es-modules/Accessibility/Components/ContainerComponent.js +52 -27
  15. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +173 -104
  16. package/es-modules/Accessibility/Components/LegendComponent.js +97 -65
  17. package/es-modules/Accessibility/Components/MenuComponent.js +243 -149
  18. package/es-modules/Accessibility/Components/RangeSelectorComponent.js +170 -88
  19. package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +152 -115
  20. package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +133 -68
  21. package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +64 -27
  22. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +38 -21
  23. package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +380 -325
  24. package/es-modules/Accessibility/Components/ZoomComponent.js +28 -20
  25. package/es-modules/Accessibility/FocusBorder.js +192 -147
  26. package/es-modules/Accessibility/HighContrastMode.js +78 -66
  27. package/es-modules/Accessibility/HighContrastTheme.js +10 -0
  28. package/es-modules/Accessibility/KeyboardNavigation.js +146 -71
  29. package/es-modules/Accessibility/KeyboardNavigationHandler.js +71 -44
  30. package/es-modules/Accessibility/Options/DeprecatedOptions.js +11 -1
  31. package/es-modules/Accessibility/Options/LangOptions.js +1 -2
  32. package/es-modules/Accessibility/Options/Options.js +32 -17
  33. package/es-modules/Accessibility/ProxyElement.js +212 -0
  34. package/es-modules/Accessibility/ProxyProvider.js +305 -0
  35. package/es-modules/Accessibility/Utils/Announcer.js +15 -8
  36. package/es-modules/Accessibility/Utils/ChartUtilities.js +41 -16
  37. package/es-modules/Accessibility/Utils/DOMElementProvider.js +27 -15
  38. package/es-modules/Accessibility/Utils/EventProvider.js +27 -17
  39. package/es-modules/Accessibility/Utils/HTMLUtilities.js +125 -30
  40. package/es-modules/Core/Axis/Axis.js +37 -30
  41. package/es-modules/Core/Axis/AxisDefaults.js +35 -24
  42. package/es-modules/Core/Axis/Color/ColorAxisComposition.js +54 -4
  43. package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +5 -5
  44. package/es-modules/Core/Axis/OrdinalAxis.js +5 -13
  45. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +4 -5
  46. package/es-modules/Core/Axis/ScrollbarAxis.js +10 -3
  47. package/es-modules/Core/Axis/TreeGridAxis.js +2 -2
  48. package/es-modules/Core/Axis/TreeGridTick.js +1 -2
  49. package/es-modules/Core/Chart/Chart.js +2 -3
  50. package/es-modules/Core/Chart/ChartDefaults.js +3 -4
  51. package/es-modules/Core/Chart/ChartNavigationComposition.js +92 -0
  52. package/es-modules/Core/Chart/MapChart.js +10 -22
  53. package/es-modules/Core/Chart/StockChart.js +3 -293
  54. package/es-modules/Core/Color/Palettes.js +22 -0
  55. package/es-modules/Core/DefaultOptions.js +19 -17
  56. package/es-modules/Core/Foundation.js +39 -31
  57. package/es-modules/Core/Globals.js +1 -1
  58. package/es-modules/Core/HttpUtilities.js +3 -3
  59. package/es-modules/Core/Legend/Legend.js +7 -3
  60. package/es-modules/Core/Navigator.js +7 -8
  61. package/es-modules/Core/Pointer.js +39 -36
  62. package/es-modules/Core/Renderer/HTML/AST.js +3 -6
  63. package/es-modules/Core/Renderer/HTML/HTMLElement.js +23 -18
  64. package/es-modules/Core/Renderer/SVG/SVGElement.js +3 -4
  65. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +21 -18
  66. package/es-modules/Core/Renderer/SVG/TextBuilder.js +17 -13
  67. package/es-modules/Core/ScrollbarDefaults.js +10 -9
  68. package/es-modules/Core/Series/DataLabel.js +2 -3
  69. package/es-modules/Core/Series/Point.js +5 -3
  70. package/es-modules/Core/Series/Series.js +156 -162
  71. package/es-modules/Core/Series/SeriesDefaults.js +3 -4
  72. package/es-modules/Core/Series/SeriesRegistry.js +1 -2
  73. package/es-modules/Core/Tooltip.js +44 -17
  74. package/es-modules/Core/Utilities.js +15 -7
  75. package/es-modules/Data/DataConverter.js +489 -0
  76. package/es-modules/Data/DataPromise.js +252 -0
  77. package/es-modules/Data/DataSeriesConverter.js +203 -0
  78. package/es-modules/Data/DataTable.js +1204 -0
  79. package/es-modules/Data/Modifiers/ChainModifier.js +299 -0
  80. package/es-modules/Data/Modifiers/DataModifier.js +303 -0
  81. package/es-modules/Data/Modifiers/GroupModifier.js +144 -0
  82. package/es-modules/Data/Modifiers/InvertModifier.js +254 -0
  83. package/es-modules/Data/Modifiers/RangeModifier.js +143 -0
  84. package/es-modules/Data/Modifiers/SeriesPointsModifier.js +110 -0
  85. package/es-modules/Data/Modifiers/SortModifier.js +249 -0
  86. package/es-modules/Data/Parsers/CSVParser.js +399 -0
  87. package/es-modules/Data/Parsers/DataParser.js +101 -0
  88. package/es-modules/Data/Parsers/GoogleSheetsParser.js +220 -0
  89. package/es-modules/Data/Parsers/HTMLTableParser.js +213 -0
  90. package/es-modules/Data/Stores/CSVStore.js +317 -0
  91. package/es-modules/Data/Stores/DataStore.js +276 -0
  92. package/es-modules/Data/Stores/GoogleSheetsStore.js +167 -0
  93. package/es-modules/Data/Stores/HTMLTableStore.js +351 -0
  94. package/es-modules/Extensions/Annotations/Annotations.js +61 -11
  95. package/es-modules/Extensions/Annotations/ControlPoint.js +1 -1
  96. package/es-modules/Extensions/Annotations/Controllables/ControllableEllipse.js +199 -0
  97. package/es-modules/Extensions/Annotations/Mixins/ControllableMixin.js +7 -1
  98. package/es-modules/Extensions/Annotations/NavigationBindings.js +90 -28
  99. package/es-modules/Extensions/Annotations/Popup.js +479 -141
  100. package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +51 -2
  101. package/es-modules/Extensions/Annotations/Types/CrookedLine.js +1 -1
  102. package/es-modules/Extensions/Annotations/Types/Fibonacci.js +2 -3
  103. package/es-modules/Extensions/Annotations/Types/FibonacciTimeZones.js +219 -0
  104. package/es-modules/Extensions/Annotations/Types/InfinityLine.js +1 -1
  105. package/es-modules/Extensions/Annotations/Types/Measure.js +14 -8
  106. package/es-modules/Extensions/Annotations/Types/Pitchfork.js +5 -5
  107. package/es-modules/Extensions/Annotations/Types/TimeCycles.js +207 -0
  108. package/es-modules/Extensions/Annotations/Types/Tunnel.js +3 -5
  109. package/es-modules/Extensions/Annotations/Types/VerticalLine.js +1 -1
  110. package/es-modules/Extensions/Boost/BoostOptions.js +2 -2
  111. package/es-modules/Extensions/Boost/BoostOverrides.js +3 -1
  112. package/es-modules/Extensions/Boost/WGLShader.js +4 -3
  113. package/es-modules/Extensions/BoostCanvas.js +1 -2
  114. package/es-modules/Extensions/CurrentDateIndication.js +2 -3
  115. package/es-modules/Extensions/Data.js +73 -67
  116. package/es-modules/Extensions/DataGrouping.js +33 -18
  117. package/es-modules/Extensions/Debugger/ErrorMessages.js +2 -2
  118. package/es-modules/Extensions/DownloadURL.js +2 -2
  119. package/es-modules/Extensions/DragPanes.js +1 -2
  120. package/es-modules/Extensions/Drilldown.js +2 -3
  121. package/es-modules/Extensions/Exporting/Exporting.js +12 -11
  122. package/es-modules/Extensions/Exporting/ExportingDefaults.js +8 -15
  123. package/es-modules/Extensions/GeoJSON.js +39 -63
  124. package/es-modules/Extensions/MarkerClusters.js +115 -97
  125. package/es-modules/Extensions/NoDataToDisplay.js +1 -2
  126. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +10 -9
  127. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
  128. package/es-modules/Extensions/Oldie/Oldie.js +2 -3
  129. package/es-modules/Extensions/Pane.js +5 -6
  130. package/es-modules/Extensions/Polar.js +1 -1
  131. package/es-modules/Extensions/RangeSelector.js +3 -4
  132. package/es-modules/Extensions/Sonification/ChartSonify.js +247 -637
  133. package/es-modules/Extensions/Sonification/Earcon.js +136 -102
  134. package/es-modules/Extensions/Sonification/Instrument.js +496 -426
  135. package/es-modules/Extensions/Sonification/MusicalFrequencies.js +10 -0
  136. package/es-modules/Extensions/Sonification/Options.js +10 -0
  137. package/es-modules/Extensions/Sonification/PointSonify.js +203 -152
  138. package/es-modules/Extensions/Sonification/SeriesSonify.js +459 -0
  139. package/es-modules/Extensions/Sonification/SignalHandler.js +124 -0
  140. package/es-modules/Extensions/Sonification/Sonification.js +26 -52
  141. package/es-modules/Extensions/Sonification/{Utilities.js → SonificationUtilities.js} +62 -84
  142. package/es-modules/Extensions/Sonification/Timeline.js +255 -567
  143. package/es-modules/Extensions/Sonification/TimelineEvent.js +158 -0
  144. package/es-modules/Extensions/Sonification/TimelinePath.js +311 -0
  145. package/es-modules/Maps/MapNavigation.js +27 -64
  146. package/es-modules/Maps/MapNavigationOptionsDefault.js +3 -0
  147. package/es-modules/Maps/MapPointer.js +7 -5
  148. package/es-modules/Maps/MapView.js +450 -0
  149. package/es-modules/Maps/MapViewOptionsDefault.js +97 -0
  150. package/es-modules/Maps/Projection.js +436 -0
  151. package/es-modules/Maps/ProjectionDefinition.js +9 -0
  152. package/es-modules/Maps/Projections/EqualEarth.js +42 -0
  153. package/es-modules/Maps/Projections/LambertConformalConic.js +52 -0
  154. package/es-modules/Maps/Projections/Miller.js +16 -0
  155. package/es-modules/Maps/Projections/Orthographic.js +26 -0
  156. package/es-modules/Maps/Projections/ProjectionRegistry.js +19 -0
  157. package/es-modules/Maps/Projections/WebMercator.js +24 -0
  158. package/es-modules/Series/AreaRange/AreaRangeSeries.js +4 -5
  159. package/es-modules/Series/Bellcurve/BellcurveSeries.js +2 -8
  160. package/es-modules/Series/BoxPlot/BoxPlotSeries.js +1 -2
  161. package/es-modules/Series/Bubble/BubbleLegendDefaults.js +1 -2
  162. package/es-modules/Series/Bubble/BubbleLegendItem.js +3 -3
  163. package/es-modules/Series/Bubble/BubblePoint.js +5 -0
  164. package/es-modules/Series/Bubble/BubbleSeries.js +90 -50
  165. package/es-modules/Series/Candlestick/CandlestickSeries.js +10 -18
  166. package/es-modules/{Mixins/CenteredSeries.js → Series/CenteredUtilities.js} +45 -23
  167. package/es-modules/Series/ColorMapComposition.js +109 -0
  168. package/es-modules/Series/Column/ColumnDataLabel.js +5 -5
  169. package/es-modules/Series/Column/ColumnSeries.js +3 -4
  170. package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +6 -6
  171. package/es-modules/Series/DataModifyComposition.js +539 -0
  172. package/es-modules/Series/DependencyWheel/DependencyWheelPoint.js +2 -6
  173. package/es-modules/Series/DerivedComposition.js +137 -0
  174. package/es-modules/Series/DrawPointComposition.js +111 -0
  175. package/es-modules/Series/Dumbbell/DumbbellSeries.js +2 -3
  176. package/es-modules/Series/ErrorBar/ErrorBarSeries.js +1 -2
  177. package/es-modules/Series/Flags/FlagsSeries.js +18 -25
  178. package/es-modules/Series/Funnel/FunnelSeries.js +6 -5
  179. package/es-modules/Series/Gantt/GanttSeries.js +0 -2
  180. package/es-modules/Series/Gauge/GaugePoint.js +1 -1
  181. package/es-modules/Series/Gauge/GaugeSeries.js +7 -7
  182. package/es-modules/Series/HLC/HLCPoint.js +55 -0
  183. package/es-modules/Series/HLC/HLCSeries.js +383 -0
  184. package/es-modules/Series/Heatmap/HeatmapPoint.js +3 -4
  185. package/es-modules/Series/Heatmap/HeatmapSeries.js +19 -6
  186. package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +2 -3
  187. package/es-modules/Series/Histogram/HistogramSeries.js +3 -7
  188. package/es-modules/Series/HollowCandlestick/HollowCandlestickPoint.js +2 -2
  189. package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +33 -34
  190. package/es-modules/Series/Line/LineSeries.js +1 -2
  191. package/es-modules/Series/Map/MapPoint.js +23 -16
  192. package/es-modules/Series/Map/MapSeries.js +271 -309
  193. package/es-modules/Series/MapBubble/MapBubblePoint.js +0 -3
  194. package/es-modules/Series/MapBubble/MapBubbleSeries.js +10 -1
  195. package/es-modules/Series/MapLine/MapLineSeries.js +2 -0
  196. package/es-modules/Series/MapPoint/MapPointPoint.js +5 -1
  197. package/es-modules/Series/MapPoint/MapPointSeries.js +99 -14
  198. package/es-modules/Series/Networkgraph/Networkgraph.js +5 -5
  199. package/es-modules/{Mixins/Nodes.js → Series/NodesComposition.js} +76 -29
  200. package/es-modules/Series/OHLC/OHLCPoint.js +2 -6
  201. package/es-modules/Series/OHLC/OHLCSeries.js +55 -183
  202. package/es-modules/{Mixins/OnSeries.js → Series/OnSeriesComposition.js} +53 -21
  203. package/es-modules/Series/Organization/OrganizationSeries.js +2 -3
  204. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +46 -6
  205. package/es-modules/Series/ParetoSeries/ParetoSeries.js +3 -7
  206. package/es-modules/Series/Pie/PieDataLabel.js +1 -2
  207. package/es-modules/Series/Pie/PieSeries.js +6 -7
  208. package/es-modules/Series/Sankey/SankeyPoint.js +0 -4
  209. package/es-modules/Series/Sankey/SankeySeries.js +89 -20
  210. package/es-modules/Series/Sunburst/SunburstPoint.js +2 -3
  211. package/es-modules/Series/Sunburst/SunburstSeries.js +4 -4
  212. package/es-modules/Series/Tilemap/TilemapPoint.js +2 -3
  213. package/es-modules/Series/Timeline/TimelineSeries.js +3 -4
  214. package/es-modules/{Mixins/TreeSeries.js → Series/TreeUtilities.js} +86 -76
  215. package/es-modules/Series/Treemap/TreemapPoint.js +2 -2
  216. package/es-modules/Series/Treemap/TreemapSeries.js +8 -8
  217. package/es-modules/Series/Venn/VennPoint.js +16 -7
  218. package/es-modules/Series/Venn/VennSeries.js +5 -8
  219. package/es-modules/Series/Venn/VennUtils.js +550 -439
  220. package/es-modules/Series/Waterfall/WaterfallSeries.js +2 -3
  221. package/es-modules/Series/Windbarb/WindbarbSeries.js +23 -24
  222. package/es-modules/Series/Wordcloud/WordcloudPoint.js +8 -6
  223. package/es-modules/Series/Wordcloud/WordcloudSeries.js +24 -20
  224. package/es-modules/Series/Wordcloud/WordcloudUtils.js +673 -484
  225. package/es-modules/Series/XRange/XRangePoint.js +1 -0
  226. package/es-modules/Stock/Indicators/ABands/ABandsIndicator.js +3 -6
  227. package/es-modules/Stock/Indicators/AO/AOIndicator.js +2 -3
  228. package/es-modules/Stock/Indicators/APO/APOIndicator.js +14 -20
  229. package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +3 -6
  230. package/es-modules/Stock/Indicators/AroonOscillator/AroonOscillatorIndicator.js +11 -13
  231. package/es-modules/Stock/Indicators/ArrayUtilities.js +47 -0
  232. package/es-modules/Stock/Indicators/BB/BBIndicator.js +27 -11
  233. package/es-modules/Stock/Indicators/Chaikin/ChaikinIndicator.js +6 -12
  234. package/es-modules/Stock/Indicators/DEMA/DEMAIndicator.js +1 -11
  235. package/es-modules/Stock/Indicators/DMI/DMIIndicator.js +19 -11
  236. package/es-modules/Stock/Indicators/DisparityIndex/DisparityIndexIndicator.js +17 -11
  237. package/es-modules/Stock/Indicators/EMA/EMAIndicator.js +1 -3
  238. package/es-modules/Stock/Indicators/KeltnerChannels/KeltnerChannelsIndicator.js +11 -9
  239. package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +8 -16
  240. package/es-modules/Stock/Indicators/LinearRegression/LinearRegression.js +2 -2
  241. package/es-modules/Stock/Indicators/LinearRegressionAngle/LinearRegressionAngle.js +2 -2
  242. package/es-modules/Stock/Indicators/LinearRegressionIntercept/LinearRegressionIntercept.js +2 -2
  243. package/es-modules/Stock/Indicators/LinearRegressionSlopes/LinearRegressionSlopes.js +2 -2
  244. package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +1 -2
  245. package/es-modules/{Mixins/MultipleLines.js → Stock/Indicators/MultipleLinesComposition.js} +136 -87
  246. package/es-modules/Stock/Indicators/NATR/NATRIndicator.js +1 -3
  247. package/es-modules/Stock/Indicators/PC/PCIndicator.js +14 -13
  248. package/es-modules/Stock/Indicators/PPO/PPOIndicator.js +1 -11
  249. package/es-modules/Stock/Indicators/SMA/SMAComposition.js +0 -26
  250. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +32 -49
  251. package/es-modules/Stock/Indicators/SlowStochastic/SlowStochasticIndicator.js +0 -8
  252. package/es-modules/Stock/Indicators/Stochastic/StochasticIndicator.js +15 -8
  253. package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +4 -6
  254. package/es-modules/Stock/Indicators/TEMA/TEMAIndicator.js +26 -11
  255. package/es-modules/Stock/Indicators/TRIX/TRIXIndicator.js +6 -12
  256. package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +23 -7
  257. package/es-modules/Stock/Indicators/WilliamsR/WilliamsRIndicator.js +2 -3
  258. package/es-modules/Stock/StockToolsBindings.js +144 -42
  259. package/es-modules/Stock/StockToolsGui.js +409 -15
  260. package/es-modules/masters/highcharts-3d.src.js +1 -1
  261. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  262. package/es-modules/masters/highcharts-more.src.js +1 -1
  263. package/es-modules/masters/highcharts.src.js +1 -1
  264. package/es-modules/masters/highmaps.src.js +1 -1
  265. package/es-modules/masters/highstock.src.js +1 -1
  266. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  267. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  268. package/es-modules/masters/indicators/ao.src.js +1 -1
  269. package/es-modules/masters/indicators/apo.src.js +1 -1
  270. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  271. package/es-modules/masters/indicators/aroon.src.js +1 -1
  272. package/es-modules/masters/indicators/atr.src.js +1 -1
  273. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  274. package/es-modules/masters/indicators/cci.src.js +1 -1
  275. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  276. package/es-modules/masters/indicators/cmf.src.js +1 -1
  277. package/es-modules/masters/indicators/cmo.src.js +1 -1
  278. package/es-modules/masters/indicators/dema.src.js +1 -1
  279. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  280. package/es-modules/masters/indicators/dmi.src.js +1 -1
  281. package/es-modules/masters/indicators/dpo.src.js +1 -1
  282. package/es-modules/masters/indicators/ema.src.js +4 -10
  283. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  284. package/es-modules/masters/indicators/indicators-all.src.js +2 -2
  285. package/es-modules/masters/indicators/indicators.src.js +2 -1
  286. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  287. package/es-modules/masters/indicators/klinger.src.js +1 -1
  288. package/es-modules/masters/indicators/macd.src.js +1 -1
  289. package/es-modules/masters/indicators/mfi.src.js +1 -1
  290. package/es-modules/masters/indicators/momentum.src.js +1 -1
  291. package/es-modules/masters/indicators/natr.src.js +1 -1
  292. package/es-modules/masters/indicators/obv.src.js +1 -1
  293. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  294. package/es-modules/masters/indicators/ppo.src.js +1 -1
  295. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  296. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  297. package/es-modules/masters/indicators/psar.src.js +1 -1
  298. package/es-modules/masters/indicators/regressions.src.js +1 -1
  299. package/es-modules/masters/indicators/roc.src.js +1 -1
  300. package/es-modules/masters/indicators/rsi.src.js +1 -1
  301. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  302. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  303. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  304. package/es-modules/masters/indicators/tema.src.js +1 -1
  305. package/es-modules/masters/indicators/trendline.src.js +1 -1
  306. package/es-modules/masters/indicators/trix.src.js +1 -1
  307. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  308. package/es-modules/masters/indicators/vwap.src.js +1 -1
  309. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  310. package/es-modules/masters/indicators/wma.src.js +1 -1
  311. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  312. package/es-modules/masters/modules/accessibility.src.js +16 -2
  313. package/es-modules/masters/modules/annotations-advanced.src.js +3 -1
  314. package/es-modules/masters/modules/annotations.src.js +1 -1
  315. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  316. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  317. package/es-modules/masters/modules/boost.src.js +1 -1
  318. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  319. package/es-modules/masters/modules/bullet.src.js +1 -1
  320. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  321. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  322. package/es-modules/masters/modules/cylinder.src.js +1 -1
  323. package/es-modules/masters/modules/data.src.js +6 -3
  324. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  325. package/es-modules/masters/modules/debugger.src.js +1 -1
  326. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  327. package/es-modules/masters/modules/dotplot.src.js +1 -1
  328. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  329. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  330. package/es-modules/masters/modules/drilldown.src.js +1 -1
  331. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  332. package/es-modules/masters/modules/export-data.src.js +1 -1
  333. package/es-modules/masters/modules/exporting.src.js +1 -1
  334. package/es-modules/masters/modules/full-screen.src.js +1 -1
  335. package/es-modules/masters/modules/funnel.src.js +1 -1
  336. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  337. package/es-modules/masters/modules/gantt.src.js +1 -1
  338. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  339. package/es-modules/masters/modules/heatmap.src.js +1 -2
  340. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  341. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  342. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  343. package/es-modules/masters/modules/item-series.src.js +1 -1
  344. package/es-modules/masters/modules/lollipop.src.js +1 -1
  345. package/es-modules/masters/modules/map.src.js +1 -3
  346. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  347. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  348. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  349. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  350. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  351. package/es-modules/masters/modules/oldie.src.js +1 -1
  352. package/es-modules/masters/modules/organization.src.js +1 -1
  353. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  354. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  355. package/es-modules/masters/modules/pareto.src.js +1 -1
  356. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  357. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  358. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  359. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  360. package/es-modules/masters/modules/sankey.src.js +1 -1
  361. package/es-modules/masters/modules/series-label.src.js +1 -1
  362. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  363. package/es-modules/masters/modules/sonification.src.js +33 -2
  364. package/es-modules/masters/modules/static-scale.src.js +1 -1
  365. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  366. package/es-modules/masters/modules/stock.src.js +4 -1
  367. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  368. package/es-modules/masters/modules/sunburst.src.js +1 -1
  369. package/es-modules/masters/modules/tilemap.src.js +1 -1
  370. package/es-modules/masters/modules/timeline.src.js +1 -1
  371. package/es-modules/masters/modules/treegrid.src.js +1 -1
  372. package/es-modules/masters/modules/treemap.src.js +1 -1
  373. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  374. package/es-modules/masters/modules/variwide.src.js +1 -1
  375. package/es-modules/masters/modules/vector.src.js +1 -1
  376. package/es-modules/masters/modules/venn.src.js +1 -1
  377. package/es-modules/masters/modules/windbarb.src.js +1 -1
  378. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  379. package/es-modules/masters/modules/xrange.src.js +1 -1
  380. package/es-modules/masters/themes/avocado.src.js +1 -1
  381. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  382. package/es-modules/masters/themes/dark-green.src.js +1 -1
  383. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  384. package/es-modules/masters/themes/gray.src.js +1 -1
  385. package/es-modules/masters/themes/grid-light.src.js +1 -1
  386. package/es-modules/masters/themes/grid.src.js +1 -1
  387. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  388. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  389. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  390. package/es-modules/masters/themes/skies.src.js +1 -1
  391. package/es-modules/masters/themes/sunset.src.js +1 -1
  392. package/highcharts-3d.js +1 -1
  393. package/highcharts-3d.src.js +1 -1
  394. package/highcharts-gantt.js +799 -801
  395. package/highcharts-gantt.js.map +1 -1
  396. package/highcharts-gantt.src.js +793 -755
  397. package/highcharts-more.js +194 -193
  398. package/highcharts-more.js.map +1 -1
  399. package/highcharts-more.src.js +208 -120
  400. package/highcharts.d.ts +9814 -4231
  401. package/highcharts.js +585 -587
  402. package/highcharts.js.map +1 -1
  403. package/highcharts.src.d.ts +9814 -4231
  404. package/highcharts.src.js +626 -603
  405. package/highmaps.js +728 -707
  406. package/highmaps.js.map +1 -1
  407. package/highmaps.src.js +2824 -1613
  408. package/highstock.js +788 -782
  409. package/highstock.js.map +1 -1
  410. package/highstock.src.js +1913 -1284
  411. package/indicators/acceleration-bands.js +10 -9
  412. package/indicators/acceleration-bands.js.map +1 -1
  413. package/indicators/acceleration-bands.src.js +156 -112
  414. package/indicators/accumulation-distribution.js +1 -1
  415. package/indicators/accumulation-distribution.src.js +1 -1
  416. package/indicators/ao.js +6 -6
  417. package/indicators/ao.js.map +1 -1
  418. package/indicators/ao.src.js +4 -4
  419. package/indicators/apo.js +5 -6
  420. package/indicators/apo.js.map +1 -1
  421. package/indicators/apo.src.js +16 -84
  422. package/indicators/aroon-oscillator.js +9 -9
  423. package/indicators/aroon-oscillator.js.map +1 -1
  424. package/indicators/aroon-oscillator.src.js +160 -177
  425. package/indicators/aroon.js +9 -9
  426. package/indicators/aroon.js.map +1 -1
  427. package/indicators/aroon.src.js +156 -112
  428. package/indicators/atr.js +1 -1
  429. package/indicators/atr.src.js +1 -1
  430. package/indicators/bollinger-bands.js +10 -9
  431. package/indicators/bollinger-bands.js.map +1 -1
  432. package/indicators/bollinger-bands.src.js +180 -117
  433. package/indicators/cci.js +1 -1
  434. package/indicators/cci.src.js +1 -1
  435. package/indicators/chaikin.js +8 -9
  436. package/indicators/chaikin.js.map +1 -1
  437. package/indicators/chaikin.src.js +8 -76
  438. package/indicators/cmf.js +1 -1
  439. package/indicators/cmf.src.js +1 -1
  440. package/indicators/cmo.js +1 -1
  441. package/indicators/cmo.src.js +1 -1
  442. package/indicators/dema.js +5 -6
  443. package/indicators/dema.js.map +1 -1
  444. package/indicators/dema.src.js +3 -75
  445. package/indicators/disparity-index.js +6 -7
  446. package/indicators/disparity-index.js.map +1 -1
  447. package/indicators/disparity-index.src.js +19 -74
  448. package/indicators/dmi.js +11 -11
  449. package/indicators/dmi.js.map +1 -1
  450. package/indicators/dmi.src.js +173 -116
  451. package/indicators/dpo.js +1 -1
  452. package/indicators/dpo.src.js +1 -1
  453. package/indicators/ema.js +1 -13
  454. package/indicators/ema.js.map +1 -1
  455. package/indicators/ema.src.js +7 -188
  456. package/indicators/ichimoku-kinko-hyo.js +1 -1
  457. package/indicators/ichimoku-kinko-hyo.src.js +1 -1
  458. package/indicators/indicators-all.js +197 -203
  459. package/indicators/indicators-all.js.map +1 -1
  460. package/indicators/indicators-all.src.js +677 -743
  461. package/indicators/indicators.js +12 -12
  462. package/indicators/indicators.js.map +1 -1
  463. package/indicators/indicators.src.js +213 -143
  464. package/indicators/keltner-channels.js +10 -10
  465. package/indicators/keltner-channels.js.map +1 -1
  466. package/indicators/keltner-channels.src.js +164 -118
  467. package/indicators/klinger.js +12 -13
  468. package/indicators/klinger.js.map +1 -1
  469. package/indicators/klinger.src.js +161 -184
  470. package/indicators/macd.js +2 -2
  471. package/indicators/macd.js.map +1 -1
  472. package/indicators/macd.src.js +2 -3
  473. package/indicators/mfi.js +1 -1
  474. package/indicators/mfi.src.js +1 -1
  475. package/indicators/momentum.js +1 -1
  476. package/indicators/momentum.src.js +1 -1
  477. package/indicators/natr.js +3 -3
  478. package/indicators/natr.js.map +1 -1
  479. package/indicators/natr.src.js +2 -4
  480. package/indicators/obv.js +1 -1
  481. package/indicators/obv.src.js +1 -1
  482. package/indicators/pivot-points.js +1 -1
  483. package/indicators/pivot-points.src.js +1 -1
  484. package/indicators/ppo.js +5 -6
  485. package/indicators/ppo.js.map +1 -1
  486. package/indicators/ppo.src.js +3 -75
  487. package/indicators/price-channel.js +9 -9
  488. package/indicators/price-channel.js.map +1 -1
  489. package/indicators/price-channel.src.js +207 -168
  490. package/indicators/price-envelopes.js +1 -1
  491. package/indicators/price-envelopes.src.js +1 -1
  492. package/indicators/psar.js +1 -1
  493. package/indicators/psar.src.js +1 -1
  494. package/indicators/regressions.js +1 -1
  495. package/indicators/regressions.src.js +9 -9
  496. package/indicators/roc.js +1 -1
  497. package/indicators/roc.src.js +1 -1
  498. package/indicators/rsi.js +1 -1
  499. package/indicators/rsi.src.js +1 -1
  500. package/indicators/slow-stochastic.js +5 -6
  501. package/indicators/slow-stochastic.js.map +1 -1
  502. package/indicators/slow-stochastic.src.js +2 -72
  503. package/indicators/stochastic.js +10 -10
  504. package/indicators/stochastic.js.map +1 -1
  505. package/indicators/stochastic.src.js +209 -164
  506. package/indicators/supertrend.js +10 -10
  507. package/indicators/supertrend.js.map +1 -1
  508. package/indicators/supertrend.src.js +6 -7
  509. package/indicators/tema.js +6 -7
  510. package/indicators/tema.js.map +1 -1
  511. package/indicators/tema.src.js +28 -75
  512. package/indicators/trendline.js +1 -1
  513. package/indicators/trendline.src.js +1 -1
  514. package/indicators/trix.js +4 -5
  515. package/indicators/trix.js.map +1 -1
  516. package/indicators/trix.src.js +8 -76
  517. package/indicators/volume-by-price.js +16 -16
  518. package/indicators/volume-by-price.js.map +1 -1
  519. package/indicators/volume-by-price.src.js +24 -7
  520. package/indicators/vwap.js +1 -1
  521. package/indicators/vwap.src.js +1 -1
  522. package/indicators/williams-r.js +5 -6
  523. package/indicators/williams-r.js.map +1 -1
  524. package/indicators/williams-r.src.js +41 -51
  525. package/indicators/wma.js +1 -1
  526. package/indicators/wma.src.js +1 -1
  527. package/indicators/zigzag.js +1 -1
  528. package/indicators/zigzag.src.js +1 -1
  529. package/modules/accessibility.d.ts +5 -0
  530. package/modules/accessibility.js +237 -216
  531. package/modules/accessibility.js.map +1 -1
  532. package/modules/accessibility.src.d.ts +5 -0
  533. package/modules/accessibility.src.js +7400 -6078
  534. package/modules/annotations-advanced.d.ts +30 -0
  535. package/modules/annotations-advanced.js +192 -165
  536. package/modules/annotations-advanced.js.map +1 -1
  537. package/modules/annotations-advanced.src.d.ts +30 -0
  538. package/modules/annotations-advanced.src.js +1604 -332
  539. package/modules/annotations.js +121 -106
  540. package/modules/annotations.js.map +1 -1
  541. package/modules/annotations.src.js +981 -238
  542. package/modules/arrow-symbols.js +1 -1
  543. package/modules/arrow-symbols.src.js +1 -1
  544. package/modules/boost-canvas.js +15 -15
  545. package/modules/boost-canvas.js.map +1 -1
  546. package/modules/boost-canvas.src.js +3 -3
  547. package/modules/boost.js +79 -79
  548. package/modules/boost.js.map +1 -1
  549. package/modules/boost.src.js +10 -9
  550. package/modules/broken-axis.js +1 -1
  551. package/modules/broken-axis.src.js +1 -1
  552. package/modules/bullet.js +1 -1
  553. package/modules/bullet.src.js +1 -1
  554. package/modules/coloraxis.js +24 -24
  555. package/modules/coloraxis.js.map +1 -1
  556. package/modules/coloraxis.src.js +69 -98
  557. package/modules/current-date-indicator.js +4 -4
  558. package/modules/current-date-indicator.js.map +1 -1
  559. package/modules/current-date-indicator.src.js +4 -4
  560. package/modules/cylinder.js +1 -1
  561. package/modules/cylinder.src.js +1 -1
  562. package/modules/data.js +32 -32
  563. package/modules/data.js.map +1 -1
  564. package/modules/data.src.js +85 -88
  565. package/modules/datagrouping.js +20 -20
  566. package/modules/datagrouping.js.map +1 -1
  567. package/modules/datagrouping.src.js +35 -19
  568. package/modules/debugger.js +3 -3
  569. package/modules/debugger.js.map +1 -1
  570. package/modules/debugger.src.js +3 -3
  571. package/modules/dependency-wheel.js +11 -11
  572. package/modules/dependency-wheel.js.map +1 -1
  573. package/modules/dependency-wheel.src.js +4 -7
  574. package/modules/dotplot.js +1 -1
  575. package/modules/dotplot.src.js +1 -1
  576. package/modules/drag-panes.js +8 -8
  577. package/modules/drag-panes.js.map +1 -1
  578. package/modules/drag-panes.src.js +3 -3
  579. package/modules/draggable-points.js +1 -1
  580. package/modules/draggable-points.src.js +1 -1
  581. package/modules/drilldown.js +24 -24
  582. package/modules/drilldown.js.map +1 -1
  583. package/modules/drilldown.src.js +4 -4
  584. package/modules/dumbbell.js +17 -17
  585. package/modules/dumbbell.js.map +1 -1
  586. package/modules/dumbbell.src.js +4 -4
  587. package/modules/export-data.js +1 -1
  588. package/modules/export-data.js.map +1 -1
  589. package/modules/export-data.src.js +3 -3
  590. package/modules/exporting.js +39 -38
  591. package/modules/exporting.js.map +1 -1
  592. package/modules/exporting.src.js +102 -72
  593. package/modules/full-screen.js +1 -1
  594. package/modules/full-screen.src.js +1 -1
  595. package/modules/funnel.js +12 -12
  596. package/modules/funnel.js.map +1 -1
  597. package/modules/funnel.src.js +9 -6
  598. package/modules/funnel3d.js +1 -1
  599. package/modules/funnel3d.src.js +1 -1
  600. package/modules/gantt.js +217 -218
  601. package/modules/gantt.js.map +1 -1
  602. package/modules/gantt.src.js +167 -152
  603. package/modules/grid-axis.js +1 -1
  604. package/modules/grid-axis.src.js +1 -1
  605. package/modules/heatmap.js +39 -39
  606. package/modules/heatmap.js.map +1 -1
  607. package/modules/heatmap.src.js +177 -162
  608. package/modules/heikinashi.js +1 -1
  609. package/modules/heikinashi.src.js +4 -4
  610. package/modules/histogram-bellcurve.js +13 -13
  611. package/modules/histogram-bellcurve.js.map +1 -1
  612. package/modules/histogram-bellcurve.src.js +91 -86
  613. package/modules/hollowcandlestick.js +9 -9
  614. package/modules/hollowcandlestick.js.map +1 -1
  615. package/modules/hollowcandlestick.src.js +37 -37
  616. package/modules/item-series.js +1 -1
  617. package/modules/item-series.src.js +1 -1
  618. package/modules/lollipop.js +1 -1
  619. package/modules/lollipop.src.js +1 -1
  620. package/modules/map.d.ts +136 -14
  621. package/modules/map.js +144 -122
  622. package/modules/map.js.map +1 -1
  623. package/modules/map.src.d.ts +136 -14
  624. package/modules/map.src.js +2227 -1039
  625. package/modules/marker-clusters.js +36 -36
  626. package/modules/marker-clusters.js.map +1 -1
  627. package/modules/marker-clusters.src.js +173 -142
  628. package/modules/networkgraph.d.ts +12 -1
  629. package/modules/networkgraph.js +49 -49
  630. package/modules/networkgraph.js.map +1 -1
  631. package/modules/networkgraph.src.d.ts +12 -1
  632. package/modules/networkgraph.src.js +91 -43
  633. package/modules/no-data-to-display.js +5 -5
  634. package/modules/no-data-to-display.js.map +1 -1
  635. package/modules/no-data-to-display.src.js +3 -3
  636. package/modules/offline-exporting.js +18 -17
  637. package/modules/offline-exporting.js.map +1 -1
  638. package/modules/offline-exporting.src.js +14 -14
  639. package/modules/oldie-polyfills.js +1 -1
  640. package/modules/oldie-polyfills.src.js +1 -1
  641. package/modules/oldie.js +26 -26
  642. package/modules/oldie.js.map +1 -1
  643. package/modules/oldie.src.js +4 -4
  644. package/modules/organization.js +13 -13
  645. package/modules/organization.js.map +1 -1
  646. package/modules/organization.src.js +4 -4
  647. package/modules/overlapping-datalabels.js +1 -1
  648. package/modules/overlapping-datalabels.src.js +1 -1
  649. package/modules/parallel-coordinates.js +1 -1
  650. package/modules/parallel-coordinates.src.js +1 -1
  651. package/modules/pareto.js +7 -7
  652. package/modules/pareto.js.map +1 -1
  653. package/modules/pareto.src.js +89 -78
  654. package/modules/pathfinder.js +1 -1
  655. package/modules/pathfinder.src.js +1 -1
  656. package/modules/pattern-fill.js +1 -1
  657. package/modules/pattern-fill.src.js +1 -1
  658. package/modules/price-indicator.js +1 -1
  659. package/modules/price-indicator.src.js +1 -1
  660. package/modules/pyramid3d.js +1 -1
  661. package/modules/pyramid3d.src.js +1 -1
  662. package/modules/sankey.d.ts +12 -1
  663. package/modules/sankey.js +29 -29
  664. package/modules/sankey.js.map +1 -1
  665. package/modules/sankey.src.d.ts +12 -1
  666. package/modules/sankey.src.js +300 -176
  667. package/modules/series-label.js +1 -1
  668. package/modules/series-label.src.js +1 -1
  669. package/modules/solid-gauge.js +1 -1
  670. package/modules/solid-gauge.src.js +1 -1
  671. package/modules/sonification.js +59 -55
  672. package/modules/sonification.js.map +1 -1
  673. package/modules/sonification.src.js +3034 -2553
  674. package/modules/static-scale.js +1 -1
  675. package/modules/static-scale.src.js +1 -1
  676. package/modules/stock-tools.js +178 -163
  677. package/modules/stock-tools.js.map +1 -1
  678. package/modules/stock-tools.src.js +1028 -144
  679. package/modules/stock.d.ts +39 -6
  680. package/modules/stock.js +204 -196
  681. package/modules/stock.js.map +1 -1
  682. package/modules/stock.src.d.ts +39 -6
  683. package/modules/stock.src.js +1667 -1061
  684. package/modules/streamgraph.js +1 -1
  685. package/modules/streamgraph.src.js +1 -1
  686. package/modules/sunburst.js +61 -60
  687. package/modules/sunburst.js.map +1 -1
  688. package/modules/sunburst.src.js +329 -266
  689. package/modules/tilemap.js +17 -17
  690. package/modules/tilemap.js.map +1 -1
  691. package/modules/tilemap.src.js +3 -4
  692. package/modules/timeline.js +18 -18
  693. package/modules/timeline.js.map +1 -1
  694. package/modules/timeline.src.js +5 -5
  695. package/modules/treegrid.js +56 -57
  696. package/modules/treegrid.js.map +1 -1
  697. package/modules/treegrid.src.js +126 -120
  698. package/modules/treemap.js +41 -41
  699. package/modules/treemap.js.map +1 -1
  700. package/modules/treemap.src.js +319 -254
  701. package/modules/variable-pie.js +1 -1
  702. package/modules/variable-pie.src.js +1 -1
  703. package/modules/variwide.js +1 -1
  704. package/modules/variwide.src.js +1 -1
  705. package/modules/vector.js +1 -1
  706. package/modules/vector.src.js +1 -1
  707. package/modules/venn.js +31 -31
  708. package/modules/venn.js.map +1 -1
  709. package/modules/venn.src.js +731 -721
  710. package/modules/windbarb.js +15 -15
  711. package/modules/windbarb.js.map +1 -1
  712. package/modules/windbarb.src.js +90 -62
  713. package/modules/wordcloud.js +23 -24
  714. package/modules/wordcloud.js.map +1 -1
  715. package/modules/wordcloud.src.js +897 -949
  716. package/modules/xrange.js +2 -2
  717. package/modules/xrange.js.map +1 -1
  718. package/modules/xrange.src.js +2 -1
  719. package/package.json +1 -1
  720. package/themes/avocado.js +1 -1
  721. package/themes/avocado.src.js +1 -1
  722. package/themes/dark-blue.js +1 -1
  723. package/themes/dark-blue.src.js +1 -1
  724. package/themes/dark-green.js +1 -1
  725. package/themes/dark-green.src.js +1 -1
  726. package/themes/dark-unica.js +1 -1
  727. package/themes/dark-unica.src.js +1 -1
  728. package/themes/gray.js +1 -1
  729. package/themes/gray.src.js +1 -1
  730. package/themes/grid-light.js +1 -1
  731. package/themes/grid-light.src.js +1 -1
  732. package/themes/grid.js +1 -1
  733. package/themes/grid.src.js +1 -1
  734. package/themes/high-contrast-dark.js +1 -1
  735. package/themes/high-contrast-dark.src.js +1 -1
  736. package/themes/high-contrast-light.js +1 -1
  737. package/themes/high-contrast-light.src.js +1 -1
  738. package/themes/sand-signika.js +1 -1
  739. package/themes/sand-signika.src.js +1 -1
  740. package/themes/skies.js +1 -1
  741. package/themes/skies.src.js +1 -1
  742. package/themes/sunset.js +1 -1
  743. package/themes/sunset.src.js +1 -1
  744. package/es-modules/Core/Axis/MapAxis.js +0 -157
  745. package/es-modules/Core/Color/Palette.js +0 -82
  746. package/es-modules/Extensions/Sonification/InstrumentDefinitions.js +0 -32
  747. package/es-modules/Mixins/ColorMapSeries.js +0 -82
  748. package/es-modules/Mixins/ColorSeries.js +0 -77
  749. package/es-modules/Mixins/DerivedSeries.js +0 -118
  750. package/es-modules/Mixins/DrawPoint.js +0 -81
  751. package/es-modules/Mixins/IndicatorRequired.js +0 -56
  752. package/es-modules/Mixins/Navigation.js +0 -54
  753. package/es-modules/Mixins/NelderMead.js +0 -132
  754. package/es-modules/Mixins/Polygon.js +0 -259
  755. package/es-modules/Mixins/ReduceArray.js +0 -54
@@ -0,0 +1,1204 @@
1
+ /* *
2
+ *
3
+ * (c) 2020-2021 Highsoft AS
4
+ *
5
+ * License: www.highcharts.com/license
6
+ *
7
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
8
+ *
9
+ * Authors:
10
+ * - Sophie Bremer
11
+ * - Gøran Slettemark
12
+ *
13
+ * */
14
+ 'use strict';
15
+ var __spreadArrays = (this && this.__spreadArrays) || function () {
16
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
17
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
18
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
19
+ r[k] = a[j];
20
+ return r;
21
+ };
22
+ import DataPromise from './DataPromise.js';
23
+ import U from '../Core/Utilities.js';
24
+ var addEvent = U.addEvent, fireEvent = U.fireEvent, uniqueKey = U.uniqueKey;
25
+ /* *
26
+ *
27
+ * Class
28
+ *
29
+ * */
30
+ /**
31
+ * Class to manage columns and rows in a table structure.
32
+ *
33
+ * @private
34
+ * @class
35
+ * @name Highcharts.DataTable
36
+ *
37
+ * @param {Highcharts.DataTableColumnCollection} [columns]
38
+ * Collection of columns.
39
+ *
40
+ * @param {string} [id]
41
+ * DataTable identifier.
42
+ */
43
+ var DataTable = /** @class */ (function () {
44
+ /* *
45
+ *
46
+ * Constructors
47
+ *
48
+ * */
49
+ /**
50
+ * Constructs an instance of the DataTable class.
51
+ *
52
+ * @param {Highcharts.DataTableColumnCollection} [columns]
53
+ * Collection of columns.
54
+ *
55
+ * @param {string} [id]
56
+ * DataTable identifier.
57
+ */
58
+ function DataTable(columns, id) {
59
+ if (columns === void 0) { columns = {}; }
60
+ /* *
61
+ *
62
+ * Properties
63
+ *
64
+ * */
65
+ /**
66
+ * Mapping aliases to column names.
67
+ * @private
68
+ */
69
+ this.aliasMap = {};
70
+ /**
71
+ * Whether the ID was automatic generated or given.
72
+ *
73
+ * @name Highcharts.DataTable#autoId
74
+ * @type {boolean}
75
+ */
76
+ this.autoId = !id;
77
+ this.columns = {};
78
+ /**
79
+ * ID of the table.
80
+ *
81
+ * @name Highcharts.DataTable#id
82
+ * @type {string}
83
+ */
84
+ this.id = (id || uniqueKey());
85
+ this.modified = this;
86
+ this.rowCount = 0;
87
+ this.versionTag = uniqueKey();
88
+ var columnNames = Object.keys(columns), thisColumns = this.columns;
89
+ var rowCount = 0;
90
+ for (var i = 0, iEnd = columnNames.length, column = void 0, columnName = void 0; i < iEnd; ++i) {
91
+ columnName = columnNames[i];
92
+ column = columns[columnName].slice();
93
+ thisColumns[columnName] = column;
94
+ rowCount = Math.max(rowCount, column.length);
95
+ }
96
+ for (var i = 0, iEnd = columnNames.length; i < iEnd; ++i) {
97
+ thisColumns[columnNames[i]].length = rowCount;
98
+ }
99
+ this.rowCount = rowCount;
100
+ }
101
+ /* *
102
+ *
103
+ * Static Functions
104
+ *
105
+ * */
106
+ /**
107
+ * Tests whether a row contains only null values.
108
+ *
109
+ * @function Highcharts.DataTable.isNull
110
+ *
111
+ * @param {Highcharts.DataTableRow|Highcharts.DataTableRowObject} row
112
+ * Row to test.
113
+ *
114
+ * @return {boolean}
115
+ * Returns `true`, if the row contains only null, otherwise `false`.
116
+ *
117
+ * @example
118
+ * if (DataTable.isNull(row)) {
119
+ * // handle null
120
+ * }
121
+ */
122
+ DataTable.isNull = function (row) {
123
+ if (row === DataTable.NULL) {
124
+ return true;
125
+ }
126
+ if (row instanceof Array) {
127
+ if (!row.length) {
128
+ return false;
129
+ }
130
+ for (var i = 0, iEnd = row.length; i < iEnd; ++i) {
131
+ if (row[i] !== null) {
132
+ return false;
133
+ }
134
+ }
135
+ }
136
+ else {
137
+ var columnNames = Object.keys(row);
138
+ if (!columnNames.length) {
139
+ return false;
140
+ }
141
+ for (var i = 0, iEnd = columnNames.length; i < iEnd; ++i) {
142
+ if (row[columnNames[i]] !== null) {
143
+ return false;
144
+ }
145
+ }
146
+ }
147
+ return true;
148
+ };
149
+ /* *
150
+ *
151
+ * Functions
152
+ *
153
+ * */
154
+ /**
155
+ * Returns a clone of this data table.
156
+ *
157
+ * @function Highcharts.DataTable#clone
158
+ *
159
+ * @param {boolean} [skipColumns]
160
+ * Whether to clone columns or not.
161
+ *
162
+ * @param {Highcharts.DataTableEventDetail} [eventDetail]
163
+ * Custom information for pending events.
164
+ *
165
+ * @return {Highcharts.DataTable}
166
+ * Clone of this data table.
167
+ *
168
+ * @emits #cloneTable
169
+ * @emits #afterCloneTable
170
+ */
171
+ DataTable.prototype.clone = function (skipColumns, eventDetail) {
172
+ var table = this, aliasMap = table.aliasMap, aliases = Object.keys(table.aliasMap);
173
+ table.emit({ type: 'cloneTable', detail: eventDetail });
174
+ var tableClone = new DataTable((skipColumns ? {} : table.columns), (table.autoId ? void 0 : table.id));
175
+ if (!skipColumns) {
176
+ tableClone.versionTag = table.versionTag;
177
+ if (aliases.length) {
178
+ var cloneAliasMap = tableClone.aliasMap;
179
+ for (var i = 0, iEnd = aliases.length, alias = void 0; i < iEnd; ++i) {
180
+ alias = aliases[i];
181
+ cloneAliasMap[alias] = aliasMap[alias];
182
+ }
183
+ }
184
+ }
185
+ table.emit({
186
+ type: 'afterCloneTable',
187
+ detail: eventDetail,
188
+ tableClone: tableClone
189
+ });
190
+ return tableClone;
191
+ };
192
+ /**
193
+ * Deletes a column alias and returns the original column name.
194
+ *
195
+ * @function Highcharts.DataTable#deleteColumnAlias
196
+ *
197
+ * @param {string} alias
198
+ * The alias to delete.
199
+ *
200
+ * @return {string|undefined}
201
+ * Returns the original column name, if found.
202
+ */
203
+ DataTable.prototype.deleteColumnAlias = function (alias) {
204
+ var _a;
205
+ var table = this, aliasMap = table.aliasMap, deletedAlias = aliasMap[alias], modifier = table.modifier;
206
+ if (deletedAlias) {
207
+ delete table.aliasMap[alias];
208
+ if (modifier) {
209
+ modifier.modifyColumns(table, (_a = {}, _a[deletedAlias] = new Array(table.rowCount), _a), 0);
210
+ }
211
+ }
212
+ return deletedAlias;
213
+ };
214
+ /**
215
+ * Deletes columns from the table.
216
+ *
217
+ * @function Highcharts.DataTable#deleteColumns
218
+ *
219
+ * @param {Array<string>} [columnNames]
220
+ * Names (no alias) of columns to delete. If no array is provided, all
221
+ * columns will be deleted.
222
+ *
223
+ * @param {Highcharts.DataTableEventDetail} [eventDetail]
224
+ * Custom information for pending events.
225
+ *
226
+ * @return {Highcharts.DataTableColumnCollection|undefined}
227
+ * Returns the deleted columns, if found.
228
+ *
229
+ * @emits #deleteColumns
230
+ * @emits #afterDeleteColumns
231
+ */
232
+ DataTable.prototype.deleteColumns = function (columnNames, eventDetail) {
233
+ var table = this, columns = table.columns, deletedColumns = {}, modifiedColumns = {}, modifier = table.modifier, rowCount = table.rowCount;
234
+ columnNames = (columnNames || Object.keys(columns));
235
+ if (columnNames.length) {
236
+ table.emit({
237
+ type: 'deleteColumns',
238
+ columnNames: columnNames,
239
+ detail: eventDetail
240
+ });
241
+ for (var i = 0, iEnd = columnNames.length, column = void 0, columnName = void 0; i < iEnd; ++i) {
242
+ columnName = columnNames[i];
243
+ column = columns[columnName];
244
+ if (column) {
245
+ deletedColumns[columnName] = column;
246
+ modifiedColumns[columnName] = new Array(rowCount);
247
+ }
248
+ delete columns[columnName];
249
+ }
250
+ if (!Object.keys(columns).length) {
251
+ table.rowCount = 0;
252
+ }
253
+ if (modifier) {
254
+ modifier.modifyColumns(table, modifiedColumns, 0, eventDetail);
255
+ }
256
+ table.emit({
257
+ type: 'afterDeleteColumns',
258
+ columns: deletedColumns,
259
+ columnNames: columnNames,
260
+ detail: eventDetail
261
+ });
262
+ return deletedColumns;
263
+ }
264
+ };
265
+ /**
266
+ * Deletes rows in this table.
267
+ *
268
+ * @function Highcharts.DataTable#deleteRows
269
+ *
270
+ * @param {number} [rowIndex]
271
+ * Index to start delete of rows. If not specified, all rows will be
272
+ * deleted.
273
+ *
274
+ * @param {number} [rowCount=1]
275
+ * Number of rows to delete.
276
+ *
277
+ * @param {Highcharts.DataTableEventDetail} [eventDetail]
278
+ * Custom information for pending events.
279
+ *
280
+ * @return {Array<Highcharts.DataTableRow>}
281
+ * Returns the deleted rows, if found.
282
+ *
283
+ * @emits #deleteRows
284
+ * @emits #afterDeleteRows
285
+ */
286
+ DataTable.prototype.deleteRows = function (rowIndex, rowCount, eventDetail) {
287
+ if (rowCount === void 0) { rowCount = 1; }
288
+ var table = this, deletedRows = [], modifiedRows = [], modifier = table.modifier;
289
+ table.emit({
290
+ type: 'deleteRows',
291
+ detail: eventDetail,
292
+ rowCount: rowCount,
293
+ rowIndex: (rowIndex || 0)
294
+ });
295
+ if (typeof rowIndex === 'undefined') {
296
+ rowIndex = 0;
297
+ rowCount = table.rowCount;
298
+ }
299
+ if (rowCount > 0 && rowIndex < table.rowCount) {
300
+ var columns = table.columns, columnNames = Object.keys(columns);
301
+ for (var i = 0, iEnd = columnNames.length, column = void 0, deletedCells = void 0; i < iEnd; ++i) {
302
+ column = columns[columnNames[i]];
303
+ deletedCells = column.splice(rowIndex, rowCount);
304
+ if (!i) {
305
+ table.rowCount = column.length;
306
+ }
307
+ for (var j = 0, jEnd = deletedCells.length; j < jEnd; ++j) {
308
+ deletedRows[j] = (deletedRows[j] || []);
309
+ deletedRows[j][i] = deletedCells[j];
310
+ }
311
+ modifiedRows.push(new Array(iEnd));
312
+ }
313
+ }
314
+ if (modifier) {
315
+ modifier.modifyRows(table, modifiedRows, (rowIndex || 0), eventDetail);
316
+ }
317
+ table.emit({
318
+ type: 'afterDeleteRows',
319
+ detail: eventDetail,
320
+ rowCount: rowCount,
321
+ rowIndex: (rowIndex || 0),
322
+ rows: deletedRows
323
+ });
324
+ return deletedRows;
325
+ };
326
+ /**
327
+ * Emits an event on this table to all registered callbacks of the given
328
+ * event.
329
+ * @private
330
+ *
331
+ * @param {DataTable.Event} e
332
+ * Event object with event information.
333
+ */
334
+ DataTable.prototype.emit = function (e) {
335
+ var frame = this;
336
+ switch (e.type) {
337
+ case 'afterDeleteColumns':
338
+ case 'afterDeleteRows':
339
+ case 'afterSetCell':
340
+ case 'afterSetColumns':
341
+ case 'afterSetRows':
342
+ frame.versionTag = uniqueKey();
343
+ break;
344
+ default:
345
+ }
346
+ fireEvent(frame, e.type, e);
347
+ };
348
+ /**
349
+ * Fetches a single cell value.
350
+ *
351
+ * @function Highcharts.DataTable#getCell
352
+ *
353
+ * @param {string} columnNameOrAlias
354
+ * Column name or alias of the cell to retrieve.
355
+ *
356
+ * @param {number} rowIndex
357
+ * Row index of the cell to retrieve.
358
+ *
359
+ * @return {Highcharts.DataTableCellType|undefined}
360
+ * Returns the cell value or `undefined`.
361
+ */
362
+ DataTable.prototype.getCell = function (columnNameOrAlias, rowIndex) {
363
+ var table = this;
364
+ columnNameOrAlias = (table.aliasMap[columnNameOrAlias] ||
365
+ columnNameOrAlias);
366
+ var column = table.columns[columnNameOrAlias];
367
+ if (column) {
368
+ return column[rowIndex];
369
+ }
370
+ };
371
+ /**
372
+ * Fetches a cell value for the given row as a boolean.
373
+ *
374
+ * @function Highcharts.DataTable#getCellAsBoolean
375
+ *
376
+ * @param {string} columnNameOrAlias
377
+ * Column name or alias to fetch.
378
+ *
379
+ * @param {number} rowIndex
380
+ * Row index to fetch.
381
+ *
382
+ * @return {boolean}
383
+ * Returns the cell value of the row as a boolean.
384
+ */
385
+ DataTable.prototype.getCellAsBoolean = function (columnNameOrAlias, rowIndex) {
386
+ var table = this;
387
+ columnNameOrAlias = (table.aliasMap[columnNameOrAlias] ||
388
+ columnNameOrAlias);
389
+ var column = table.columns[columnNameOrAlias];
390
+ return !!(column && column[rowIndex]);
391
+ };
392
+ /**
393
+ * Fetches a cell value for the given row as a number.
394
+ *
395
+ * @function Highcharts.DataTable#getCellAsNumber
396
+ *
397
+ * @param {string} columnNameOrAlias
398
+ * Column name or alias to fetch.
399
+ *
400
+ * @param {number} rowIndex
401
+ * Row index to fetch.
402
+ *
403
+ * @param {boolean} [useNaN]
404
+ * Whether to return NaN instead of `null` and `undefined`.
405
+ *
406
+ * @return {number|null}
407
+ * Returns the cell value of the row as a number.
408
+ */
409
+ DataTable.prototype.getCellAsNumber = function (columnNameOrAlias, rowIndex, useNaN) {
410
+ var table = this;
411
+ columnNameOrAlias = (table.aliasMap[columnNameOrAlias] ||
412
+ columnNameOrAlias);
413
+ var column = table.columns[columnNameOrAlias];
414
+ var cellValue = (column && column[rowIndex]);
415
+ switch (typeof cellValue) {
416
+ case 'boolean':
417
+ return (cellValue ? 1 : 0);
418
+ case 'number':
419
+ return (isNaN(cellValue) && !useNaN ? null : cellValue);
420
+ }
421
+ cellValue = parseFloat("" + cellValue);
422
+ return (isNaN(cellValue) && !useNaN ? null : cellValue);
423
+ };
424
+ /**
425
+ * Fetches a cell value for the given row as a string.
426
+ *
427
+ * @function Highcharts.DataTable#getCellAsString
428
+ *
429
+ * @param {string} columnNameOrAlias
430
+ * Column name or alias to fetch.
431
+ *
432
+ * @param {number} rowIndex
433
+ * Row index to fetch.
434
+ *
435
+ * @return {string}
436
+ * Returns the cell value of the row as a string.
437
+ */
438
+ DataTable.prototype.getCellAsString = function (columnNameOrAlias, rowIndex) {
439
+ var table = this;
440
+ columnNameOrAlias = (table.aliasMap[columnNameOrAlias] ||
441
+ columnNameOrAlias);
442
+ var column = table.columns[columnNameOrAlias];
443
+ return "" + (column && column[rowIndex]);
444
+ };
445
+ /**
446
+ * Fetches the given column by the canonical column name or by an alias.
447
+ * This function is a simplified wrap of {@link getColumns}.
448
+ *
449
+ * @function Highcharts.DataTable#getColumn
450
+ *
451
+ * @param {string} columnNameOrAlias
452
+ * Name or alias of the column to get, alias takes precedence.
453
+ *
454
+ * @param {boolean} [asReference]
455
+ * Whether to return the column as a readonly reference.
456
+ *
457
+ * @return {Highcharts.DataTableColumn|undefined}
458
+ * A copy of the column, or `undefined` if not found.
459
+ */
460
+ DataTable.prototype.getColumn = function (columnNameOrAlias, asReference) {
461
+ return this.getColumns([columnNameOrAlias], asReference)[columnNameOrAlias];
462
+ };
463
+ /**
464
+ * Fetches all column aliases.
465
+ *
466
+ * @function Highcharts.DataTable#getColumnAliases
467
+ *
468
+ * @return {Array<string>}
469
+ * Returns all column aliases.
470
+ */
471
+ DataTable.prototype.getColumnAliases = function () {
472
+ var table = this, columnAliases = Object.keys(table.aliasMap);
473
+ return columnAliases;
474
+ };
475
+ /**
476
+ * Fetches the given column by the canonical column name or by an alias, and
477
+ * validates the type of the first few cells. If the first defined cell is
478
+ * of type number, it assumes for performance reasons, that all cells are of
479
+ * type number or `null`. Otherwise it will convert all cells to number
480
+ * type, except `null`.
481
+ *
482
+ * @function Highcharts.DataTable#getColumnAsNumbers
483
+ *
484
+ * @param {string} columnNameOrAlias
485
+ * Name or alias of the column to get, alias takes precedence.
486
+ *
487
+ * @param {boolean} [useNaN]
488
+ * Whether to use NaN instead of `null` and `undefined`.
489
+ *
490
+ * @return {Array<(number|null)>}
491
+ * A copy of the column, or an empty array if not found.
492
+ */
493
+ DataTable.prototype.getColumnAsNumbers = function (columnNameOrAlias, useNaN) {
494
+ var table = this, columns = table.columns;
495
+ columnNameOrAlias = (table.aliasMap[columnNameOrAlias] ||
496
+ columnNameOrAlias);
497
+ var column = columns[columnNameOrAlias], columnAsNumber = [];
498
+ if (column) {
499
+ var columnLength = column.length;
500
+ if (useNaN) {
501
+ for (var i = 0; i < columnLength; ++i) {
502
+ columnAsNumber.push(table.getCellAsNumber(columnNameOrAlias, i, true));
503
+ }
504
+ }
505
+ else {
506
+ for (var i = 0, cellValue = void 0; i < columnLength; ++i) {
507
+ cellValue = column[i];
508
+ if (typeof cellValue === 'number') {
509
+ // assume unmixed data for performance reasons
510
+ return column.slice();
511
+ }
512
+ if (cellValue !== null &&
513
+ typeof cellValue !== 'undefined') {
514
+ break;
515
+ }
516
+ }
517
+ for (var i = 0; i < columnLength; ++i) {
518
+ columnAsNumber.push(table.getCellAsNumber(columnNameOrAlias, i));
519
+ }
520
+ }
521
+ }
522
+ return columnAsNumber;
523
+ };
524
+ /**
525
+ * Fetches all column names.
526
+ *
527
+ * @function Highcharts.DataTable#getColumnNames
528
+ *
529
+ * @return {Array<string>}
530
+ * Returns all column names.
531
+ */
532
+ DataTable.prototype.getColumnNames = function () {
533
+ var table = this, columnNames = Object.keys(table.columns);
534
+ return columnNames;
535
+ };
536
+ /**
537
+ * Retrieves all or the given columns.
538
+ *
539
+ * @function Highcharts.DataTable#getColumns
540
+ *
541
+ * @param {Array<string>} [columnNamesOrAliases]
542
+ * Column names or aliases to retrieve. Aliases taking precedence.
543
+ *
544
+ * @param {boolean} [asReference]
545
+ * Whether to return columns as a readonly reference.
546
+ *
547
+ * @return {Highcharts.DataTableColumnCollection}
548
+ * Collection of columns. If a requested column was not found, it is
549
+ * `undefined`.
550
+ */
551
+ DataTable.prototype.getColumns = function (columnNamesOrAliases, asReference) {
552
+ var table = this, tableAliasMap = table.aliasMap, tableColumns = table.columns, columns = {};
553
+ columnNamesOrAliases = (columnNamesOrAliases || Object.keys(tableColumns));
554
+ for (var i = 0, iEnd = columnNamesOrAliases.length, column = void 0, columnName = void 0; i < iEnd; ++i) {
555
+ columnName = columnNamesOrAliases[i];
556
+ column = tableColumns[(tableAliasMap[columnName] || columnName)];
557
+ if (column) {
558
+ columns[columnName] = (asReference ? column : column.slice());
559
+ }
560
+ }
561
+ return columns;
562
+ };
563
+ /**
564
+ * Retrieves the modifier for the table.
565
+ * @private
566
+ *
567
+ * @return {Highcharts.DataModifier|undefined}
568
+ * Returns the modifier or `undefined`.
569
+ */
570
+ DataTable.prototype.getModifier = function () {
571
+ return this.modifier;
572
+ };
573
+ /**
574
+ * Retrieves the row at a given index. This function is a simplified wrap of
575
+ * {@link getRows}.
576
+ *
577
+ * @function Highcharts.DataTable#getRow
578
+ *
579
+ * @param {number} rowIndex
580
+ * Row index.
581
+ *
582
+ * @param {Array<string>} [columnNamesOrAliases]
583
+ * Column names or aliases in order to retrieve.
584
+ *
585
+ * @return {Highcharts.DataTableRow}
586
+ * Returns the row values, or `undefined` if not found.
587
+ */
588
+ DataTable.prototype.getRow = function (rowIndex, columnNamesOrAliases) {
589
+ return this.getRows(rowIndex, 1, columnNamesOrAliases)[0];
590
+ };
591
+ /**
592
+ * Returns the number of rows in this table.
593
+ *
594
+ * @function Highcharts.DataTable#getRowCount
595
+ *
596
+ * @return {number}
597
+ * Number of rows in this table.
598
+ */
599
+ DataTable.prototype.getRowCount = function () {
600
+ // @todo Implement via property getter `.length` browsers supported
601
+ return this.rowCount;
602
+ };
603
+ /**
604
+ * Retrieves the index of the first row matching a specific cell value.
605
+ *
606
+ * @function Highcharts.DataTable#getRowIndexBy
607
+ *
608
+ * @param {string} columnNameOrAlias
609
+ * Column to search in.
610
+ *
611
+ * @param {Highcharts.DataTableCellType} cellValue
612
+ * Cell value to search for. `NaN` and `undefined` are not supported.
613
+ *
614
+ * @param {number} [rowIndexOffset]
615
+ * Index offset to start searching.
616
+ *
617
+ * @return {number|undefined}
618
+ * Index of the first row matching the cell value.
619
+ */
620
+ DataTable.prototype.getRowIndexBy = function (columnNameOrAlias, cellValue, rowIndexOffset) {
621
+ var table = this;
622
+ columnNameOrAlias = (table.aliasMap[columnNameOrAlias] ||
623
+ columnNameOrAlias);
624
+ var column = table.columns[columnNameOrAlias];
625
+ if (column) {
626
+ var rowIndex = column.indexOf(cellValue, rowIndexOffset);
627
+ if (rowIndex !== -1) {
628
+ return rowIndex;
629
+ }
630
+ }
631
+ };
632
+ /**
633
+ * Retrieves the row at a given index. This function is a simplified wrap of
634
+ * {@link getRowObjects}.
635
+ *
636
+ * @function Highcharts.DataTable#getRowObject
637
+ *
638
+ * @param {number} rowIndex
639
+ * Row index.
640
+ *
641
+ * @param {Array<string>} [columnNamesOrAliases]
642
+ * Column names or aliases and their order to retrieve.
643
+ *
644
+ * @return {Highcharts.DataTableRowObject}
645
+ * Returns the row values, or `undefined` if not found.
646
+ */
647
+ DataTable.prototype.getRowObject = function (rowIndex, columnNamesOrAliases) {
648
+ return this.getRowObjects(rowIndex, 1, columnNamesOrAliases)[0];
649
+ };
650
+ /**
651
+ * Fetches all or a number of rows.
652
+ *
653
+ * @function Highcharts.DataTable#getRowObjects
654
+ *
655
+ * @param {number} [rowIndex]
656
+ * Index of the first row to fetch. Defaults to first row at index `0`.
657
+ *
658
+ * @param {number} [rowCount]
659
+ * Number of rows to fetch. Defaults to maximal number of rows.
660
+ *
661
+ * @param {Array<string>} [columnNamesOrAliases]
662
+ * Column names or aliases and their order to retrieve.
663
+ *
664
+ * @return {Highcharts.DataTableRowObject}
665
+ * Returns retrieved rows.
666
+ */
667
+ DataTable.prototype.getRowObjects = function (rowIndex, rowCount, columnNamesOrAliases) {
668
+ if (rowIndex === void 0) { rowIndex = 0; }
669
+ if (rowCount === void 0) { rowCount = (this.rowCount - rowIndex); }
670
+ var table = this, aliasMap = table.aliasMap, columns = table.columns, rows = new Array(rowCount);
671
+ columnNamesOrAliases = (columnNamesOrAliases || Object.keys(columns));
672
+ var columnNamesLength = columnNamesOrAliases.length;
673
+ for (var i = rowIndex, i2 = 0, iEnd = Math.min(table.rowCount, (rowIndex + rowCount)), row = void 0; i < iEnd; ++i, ++i2) {
674
+ row = rows[i2] = {};
675
+ for (var j = 0, jEnd = columnNamesLength, columnName = void 0; j < jEnd; ++j) {
676
+ columnName = columnNamesOrAliases[j];
677
+ row[columnName] = columns[(aliasMap[columnName] || columnName)][i];
678
+ }
679
+ }
680
+ return rows;
681
+ };
682
+ /**
683
+ * Fetches all or a number of rows.
684
+ *
685
+ * @function Highcharts.DataTable#getRows
686
+ *
687
+ * @param {number} [rowIndex]
688
+ * Index of the first row to fetch. Defaults to first row at index `0`.
689
+ *
690
+ * @param {number} [rowCount]
691
+ * Number of rows to fetch. Defaults to maximal number of rows.
692
+ *
693
+ * @param {Array<string>} [columnNamesOrAliases]
694
+ * Column names or aliases and their order to retrieve.
695
+ *
696
+ * @return {Highcharts.DataTableRow}
697
+ * Returns retrieved rows.
698
+ */
699
+ DataTable.prototype.getRows = function (rowIndex, rowCount, columnNamesOrAliases) {
700
+ if (rowIndex === void 0) { rowIndex = 0; }
701
+ if (rowCount === void 0) { rowCount = (this.rowCount - rowIndex); }
702
+ var table = this, aliasMap = table.aliasMap, columns = table.columns, rows = new Array(rowCount);
703
+ columnNamesOrAliases = (columnNamesOrAliases || Object.keys(columns));
704
+ var columnNamesLength = columnNamesOrAliases.length;
705
+ for (var i = rowIndex, i2 = 0, iEnd = Math.min(table.rowCount, (rowIndex + rowCount)), columnName = void 0, row = void 0; i < iEnd; ++i, ++i2) {
706
+ row = rows[i2] = new Array(columnNamesLength);
707
+ for (var j = 0; j < columnNamesLength; ++j) {
708
+ columnName = columnNamesOrAliases[j];
709
+ row[j] = columns[(aliasMap[columnName] || columnName)][i];
710
+ }
711
+ }
712
+ return rows;
713
+ };
714
+ /**
715
+ * Returns the unique version tag of the current state of the table.
716
+ *
717
+ * @function Highcharts.DataTable#getVersionTag
718
+ *
719
+ * @return {string}
720
+ * Unique version tag.
721
+ */
722
+ DataTable.prototype.getVersionTag = function () {
723
+ return this.versionTag;
724
+ };
725
+ /**
726
+ * Checks for given column names or aliases.
727
+ *
728
+ * @function Highcharts.DataTable#hasColumns
729
+ *
730
+ * @param {Array<string>} columnNamesOrAliases
731
+ * Column names of aliases to check.
732
+ *
733
+ * @return {boolean}
734
+ * Returns `true` if all columns have been found, otherwise `false`.
735
+ */
736
+ DataTable.prototype.hasColumns = function (columnNamesOrAliases) {
737
+ var table = this, aliasMap = table.aliasMap, columns = table.columns;
738
+ for (var i = 0, iEnd = columnNamesOrAliases.length, columnName = void 0; i < iEnd; ++i) {
739
+ columnName = columnNamesOrAliases[i];
740
+ if (!columns[columnName] && !aliasMap[columnName]) {
741
+ return false;
742
+ }
743
+ }
744
+ return true;
745
+ };
746
+ /**
747
+ * Searches for a specific cell value.
748
+ *
749
+ * @function Highcharts.DataTable#hasRowWith
750
+ *
751
+ * @param {string} columnNameOrAlias
752
+ * Column to search in.
753
+ *
754
+ * @param {boolean|number|string|Highcharts.DataTable} cellValue
755
+ * Cell value to search for. `NaN` and `undefined` are not supported.
756
+ *
757
+ * @return {boolean}
758
+ * True, if a row has been found, otherwise false.
759
+ */
760
+ DataTable.prototype.hasRowWith = function (columnNameOrAlias, cellValue) {
761
+ var table = this;
762
+ columnNameOrAlias = (table.aliasMap[columnNameOrAlias] ||
763
+ columnNameOrAlias);
764
+ var column = table.columns[columnNameOrAlias];
765
+ if (column) {
766
+ return (column.indexOf(cellValue) !== -1);
767
+ }
768
+ return false;
769
+ };
770
+ /**
771
+ * Registers a callback for a specific event.
772
+ *
773
+ * @function Highcharts.DataTable#on
774
+ *
775
+ * @param {string} type
776
+ * Event type as a string.
777
+ *
778
+ * @param {Highcharts.EventCallbackFunction<Highcharts.DataTable>} callback
779
+ * Function to register for an event callback.
780
+ *
781
+ * @return {Function}
782
+ * Function to unregister callback from the event.
783
+ */
784
+ DataTable.prototype.on = function (type, callback) {
785
+ return addEvent(this, type, callback);
786
+ };
787
+ /**
788
+ * Renames a column of cell values.
789
+ *
790
+ * @function Highcharts.DataTable#renameColumn
791
+ *
792
+ * @param {string} columnName
793
+ * Name of the column to be renamed.
794
+ *
795
+ * @param {string} newColumnName
796
+ * New name of the column. An existing column with the same name will be
797
+ * replaced.
798
+ *
799
+ * @return {boolean}
800
+ * Returns `true` if successful, `false` if the column was not found.
801
+ */
802
+ DataTable.prototype.renameColumn = function (columnName, newColumnName) {
803
+ var table = this, columns = table.columns;
804
+ if (columns[columnName]) {
805
+ if (columnName !== newColumnName) {
806
+ var aliasMap = table.aliasMap;
807
+ if (aliasMap[newColumnName]) {
808
+ delete aliasMap[newColumnName];
809
+ }
810
+ columns[newColumnName] = columns[columnName];
811
+ delete columns[columnName];
812
+ }
813
+ return true;
814
+ }
815
+ return false;
816
+ };
817
+ /**
818
+ * Sets a cell value based on the row index and column name or alias. Will
819
+ * insert a new column, if not found.
820
+ *
821
+ * @function Highcharts.DataTable#setCell
822
+ *
823
+ * @param {string} columnNameOrAlias
824
+ * Column name or alias to set.
825
+ *
826
+ * @param {number|undefined} rowIndex
827
+ * Row index to set.
828
+ *
829
+ * @param {Highcharts.DataTableCellType} cellValue
830
+ * Cell value to set.
831
+ *
832
+ * @param {Highcharts.DataTableEventDetail} [eventDetail]
833
+ * Custom information for pending events.
834
+ *
835
+ * @emits #setCell
836
+ * @emits #afterSetCell
837
+ */
838
+ DataTable.prototype.setCell = function (columnNameOrAlias, rowIndex, cellValue, eventDetail) {
839
+ var table = this, columns = table.columns, modifier = table.modifier;
840
+ columnNameOrAlias = (table.aliasMap[columnNameOrAlias] ||
841
+ columnNameOrAlias);
842
+ var column = columns[columnNameOrAlias];
843
+ if (column && column[rowIndex] === cellValue) {
844
+ return;
845
+ }
846
+ table.emit({
847
+ type: 'setCell',
848
+ cellValue: cellValue,
849
+ columnName: columnNameOrAlias,
850
+ detail: eventDetail,
851
+ rowIndex: rowIndex
852
+ });
853
+ if (!column) {
854
+ column = columns[columnNameOrAlias] = new Array(table.rowCount);
855
+ }
856
+ if (rowIndex >= table.rowCount) {
857
+ table.rowCount = (rowIndex + 1);
858
+ }
859
+ column[rowIndex] = cellValue;
860
+ if (modifier) {
861
+ modifier.modifyCell(table, columnNameOrAlias, rowIndex, cellValue);
862
+ }
863
+ table.emit({
864
+ type: 'afterSetCell',
865
+ cellValue: cellValue,
866
+ columnName: columnNameOrAlias,
867
+ detail: eventDetail,
868
+ rowIndex: rowIndex
869
+ });
870
+ };
871
+ /**
872
+ * Sets cell values for a column. Will insert a new column, if not found.
873
+ *
874
+ * @function Highcharts.DataTable#setColumn
875
+ *
876
+ * @param {string} columnNameOrAlias
877
+ * Column name or alias to set.
878
+ *
879
+ * @param {Highcharts.DataTableColumn} [column]
880
+ * Values to set in the column.
881
+ *
882
+ * @param {number} [rowIndex=0]
883
+ * Index of the first row to change. (Default: 0)
884
+ *
885
+ * @param {Highcharts.DataTableEventDetail} [eventDetail]
886
+ * Custom information for pending events.
887
+ *
888
+ * @emits #setColumns
889
+ * @emits #afterSetColumns
890
+ */
891
+ DataTable.prototype.setColumn = function (columnNameOrAlias, column, rowIndex, eventDetail) {
892
+ var _a;
893
+ if (column === void 0) { column = []; }
894
+ if (rowIndex === void 0) { rowIndex = 0; }
895
+ this.setColumns((_a = {}, _a[columnNameOrAlias] = column, _a), rowIndex, eventDetail);
896
+ };
897
+ /**
898
+ * Defines an alias for a column.
899
+ *
900
+ * @function Highcharts.DataTable#setColumnAlias
901
+ *
902
+ * @param {string} columnAlias
903
+ * Column alias to create.
904
+ *
905
+ * @param {string} columnName
906
+ * Column name to create an alias for.
907
+ *
908
+ * @return {boolean}
909
+ * True if successfully changed, false if reserved.
910
+ */
911
+ DataTable.prototype.setColumnAlias = function (columnAlias, columnName) {
912
+ var aliasMap = this.aliasMap;
913
+ if (!aliasMap[columnAlias]) {
914
+ aliasMap[columnAlias] = columnName;
915
+ return true;
916
+ }
917
+ return false;
918
+ };
919
+ /**
920
+ * Sets cell values for multiple columns. Will insert new columns, if not
921
+ * found.
922
+ *
923
+ * @function Highcharts.DataTable#setColumns
924
+ *
925
+ * @param {Highcharts.DataTableColumnCollection} columns
926
+ * Columns as a collection, where the keys are the column names or aliases.
927
+ *
928
+ * @param {number} [rowIndex]
929
+ * Index of the first row to change. Keep undefined to reset.
930
+ *
931
+ * @param {Highcharts.DataTableEventDetail} [eventDetail]
932
+ * Custom information for pending events.
933
+ *
934
+ * @emits #setColumns
935
+ * @emits #afterSetColumns
936
+ */
937
+ DataTable.prototype.setColumns = function (columns, rowIndex, eventDetail) {
938
+ var table = this, tableColumns = table.columns, tableModifier = table.modifier, tableRowCount = table.rowCount, reset = (typeof rowIndex === 'undefined'), columnNames = Object.keys(columns);
939
+ table.emit({
940
+ type: 'setColumns',
941
+ columns: columns,
942
+ columnNames: columnNames,
943
+ detail: eventDetail,
944
+ rowIndex: rowIndex
945
+ });
946
+ for (var i = 0, iEnd = columnNames.length, column = void 0, columnName = void 0; i < iEnd; ++i) {
947
+ columnName = columnNames[i];
948
+ column = columns[columnName];
949
+ columnName = (table.aliasMap[columnName] ||
950
+ columnName);
951
+ if (reset) {
952
+ tableColumns[columnName] = column.slice();
953
+ table.rowCount = column.length;
954
+ }
955
+ else {
956
+ var tableColumn = (tableColumns[columnName] ?
957
+ tableColumns[columnName] :
958
+ tableColumns[columnName] = new Array(table.rowCount));
959
+ rowIndex = (rowIndex || 0);
960
+ if (rowIndex > tableRowCount) {
961
+ tableColumn.length = rowIndex;
962
+ tableColumn.push.apply(tableColumn, column);
963
+ }
964
+ else {
965
+ tableColumn.splice.apply(tableColumn, __spreadArrays([rowIndex, (column.length - rowIndex)], column));
966
+ }
967
+ table.rowCount = Math.max(table.rowCount, tableColumn.length);
968
+ }
969
+ }
970
+ var tableColumnNames = Object.keys(tableColumns);
971
+ for (var i = 0, iEnd = tableColumnNames.length; i < iEnd; ++i) {
972
+ tableColumns[tableColumnNames[i]].length = table.rowCount;
973
+ }
974
+ if (tableModifier) {
975
+ tableModifier.modifyColumns(table, columns, (rowIndex || 0));
976
+ }
977
+ table.emit({
978
+ type: 'afterSetColumns',
979
+ columns: columns,
980
+ columnNames: columnNames,
981
+ detail: eventDetail,
982
+ rowIndex: rowIndex
983
+ });
984
+ };
985
+ /**
986
+ * Sets or unsets the modifier for the table.
987
+ * @private
988
+ *
989
+ * @param {Highcharts.DataModifier} [modifier]
990
+ * Modifier to set, or `undefined` to unset.
991
+ *
992
+ * @param {Highcharts.DataTableEventDetail} [eventDetail]
993
+ * Custom information for pending events.
994
+ *
995
+ * @return {Promise<Highcharts.DataTable>}
996
+ * Resolves to this table if successfull, or rejects on failure.
997
+ *
998
+ * @emits #setModifier
999
+ * @emits #afterSetModifier
1000
+ */
1001
+ DataTable.prototype.setModifier = function (modifier, eventDetail) {
1002
+ var table = this;
1003
+ var promise;
1004
+ table.emit({
1005
+ type: 'setModifier',
1006
+ detail: eventDetail,
1007
+ modifier: modifier,
1008
+ modified: table.modified
1009
+ });
1010
+ table.modifier = modifier;
1011
+ if (modifier) {
1012
+ promise = modifier.modify(table);
1013
+ }
1014
+ else {
1015
+ promise = DataPromise
1016
+ .resolve(table)
1017
+ .then(function (table) {
1018
+ table.modified = table;
1019
+ return table;
1020
+ });
1021
+ }
1022
+ return promise
1023
+ .then(function (table) {
1024
+ table.emit({
1025
+ type: 'afterSetModifier',
1026
+ detail: eventDetail,
1027
+ modifier: modifier,
1028
+ modified: table.modified
1029
+ });
1030
+ return table;
1031
+ })['catch'](function (error) {
1032
+ table.emit({
1033
+ type: 'setModifierError',
1034
+ error: error,
1035
+ modifier: modifier,
1036
+ modified: table.modified
1037
+ });
1038
+ throw error;
1039
+ });
1040
+ };
1041
+ /**
1042
+ * Sets cell values of a row. Will insert a new row, if no index was
1043
+ * provided, or if the index is higher than the total number of table rows.
1044
+ *
1045
+ * Note: This function is just a simplified wrap of
1046
+ * {@link Highcharts.DataTable#setRows}.
1047
+ *
1048
+ * @function Highcharts.DataTable#setRow
1049
+ *
1050
+ * @param {Highcharts.DataTableRow|Highcharts.DataTableRowObject} row
1051
+ * Cell values to set.
1052
+ *
1053
+ * @param {number} [rowIndex]
1054
+ * Index of the row to set. Leave `undefind` to add as a new row.
1055
+ *
1056
+ * @param {Highcharts.DataTableEventDetail} [eventDetail]
1057
+ * Custom information for pending events.
1058
+ *
1059
+ * @emits #setRows
1060
+ * @emits #afterSetRows
1061
+ */
1062
+ DataTable.prototype.setRow = function (row, rowIndex, eventDetail) {
1063
+ this.setRows([row], rowIndex, eventDetail);
1064
+ };
1065
+ /**
1066
+ * Sets cell values for multiple rows. Will insert new rows, if no index was
1067
+ * was provided, or if the index is higher than the total number of table
1068
+ * rows.
1069
+ *
1070
+ * @function Highcharts.DataTable#setRows
1071
+ *
1072
+ * @param {Array<(Highcharts.DataTableRow|Highcharts.DataTableRowObject)>} rows
1073
+ * Row values to set.
1074
+ *
1075
+ * @param {number} [rowIndex]
1076
+ * Index of the first row to set. Leave `undefind` to add as new rows.
1077
+ *
1078
+ * @param {Highcharts.DataTableEventDetail} [eventDetail]
1079
+ * Custom information for pending events.
1080
+ *
1081
+ * @emits #setRows
1082
+ * @emits #afterSetRows
1083
+ */
1084
+ DataTable.prototype.setRows = function (rows, rowIndex, eventDetail) {
1085
+ if (rowIndex === void 0) { rowIndex = this.rowCount; }
1086
+ var table = this, aliasMap = table.aliasMap, columns = table.columns, columnNames = Object.keys(columns), modifier = table.modifier, rowCount = rows.length;
1087
+ table.emit({
1088
+ type: 'setRows',
1089
+ detail: eventDetail,
1090
+ rowCount: rowCount,
1091
+ rowIndex: rowIndex,
1092
+ rows: rows
1093
+ });
1094
+ for (var i = 0, i2 = rowIndex, row = void 0; i < rowCount; ++i, ++i2) {
1095
+ row = rows[i];
1096
+ if (row === DataTable.NULL) {
1097
+ for (var j = 0, jEnd = columnNames.length; j < jEnd; ++j) {
1098
+ columns[columnNames[j]][i2] = null;
1099
+ }
1100
+ }
1101
+ else if (row instanceof Array) {
1102
+ for (var j = 0, jEnd = columnNames.length; j < jEnd; ++j) {
1103
+ columns[columnNames[j]][i2] = row[j];
1104
+ }
1105
+ }
1106
+ else {
1107
+ var rowColumnNames = Object.keys(row);
1108
+ for (var j = 0, jEnd = rowColumnNames.length, rowColumnName = void 0; j < jEnd; ++j) {
1109
+ rowColumnName = rowColumnNames[j];
1110
+ rowColumnName = (aliasMap[rowColumnName] || rowColumnName);
1111
+ if (!columns[rowColumnName]) {
1112
+ columns[rowColumnName] = new Array(i2 + 1);
1113
+ }
1114
+ columns[rowColumnName][i2] = row[rowColumnName];
1115
+ }
1116
+ }
1117
+ }
1118
+ var indexRowCount = (rowIndex + rowCount);
1119
+ if (indexRowCount > table.rowCount) {
1120
+ table.rowCount = indexRowCount;
1121
+ for (var i = 0, iEnd = columnNames.length; i < iEnd; ++i) {
1122
+ columns[columnNames[i]].length = indexRowCount;
1123
+ }
1124
+ }
1125
+ if (modifier) {
1126
+ modifier.modifyRows(table, rows, rowIndex);
1127
+ }
1128
+ table.emit({
1129
+ type: 'afterSetRows',
1130
+ detail: eventDetail,
1131
+ rowCount: rowCount,
1132
+ rowIndex: rowIndex,
1133
+ rows: rows
1134
+ });
1135
+ };
1136
+ /* *
1137
+ *
1138
+ * Static Functions
1139
+ *
1140
+ * */
1141
+ /**
1142
+ * Null state for a row record.
1143
+ *
1144
+ * @name Highcharts.DataTable.NULL
1145
+ * @type {Highcharts.DataTableRowObject}
1146
+ *
1147
+ * @see {@link Highcharts.DataTable.isNull} for a null test.
1148
+ *
1149
+ * @example
1150
+ * table.setRows([DataTable.NULL, DataTable.NULL], 10);
1151
+ */
1152
+ DataTable.NULL = {};
1153
+ return DataTable;
1154
+ }());
1155
+ /* *
1156
+ *
1157
+ * Default Export
1158
+ *
1159
+ * */
1160
+ export default DataTable;
1161
+ /* *
1162
+ *
1163
+ * API Declarations
1164
+ *
1165
+ * */
1166
+ /**
1167
+ * Possible value types for a table cell.
1168
+ * @private
1169
+ * @typedef {boolean|null|number|string|Highcharts.DataTable|undefined} Highcharts.DataTableCellType
1170
+ */
1171
+ /**
1172
+ * Array of table cells in vertical expansion.
1173
+ * @private
1174
+ * @typedef {Array<Highcharts.DataTableCellType>} Highcharts.DataTableColumn
1175
+ */
1176
+ /**
1177
+ * Collection of columns, where the key is the column name (or alias) and
1178
+ * the value is an array of column values.
1179
+ * @private
1180
+ * @interface Highcharts.DataTableColumnCollection
1181
+ * @readonly
1182
+ */ /**
1183
+ * @name Highcharts.DataTableColumnCollection#[key:string]
1184
+ * @type {Highcharts.DataTableColumn}
1185
+ */
1186
+ /**
1187
+ * Custom information for an event.
1188
+ * @private
1189
+ * @typedef Highcharts.DataTableEventDetail
1190
+ * @type {Record<string,(boolean|number|string|null|undefined)>}
1191
+ */
1192
+ /**
1193
+ * Array of table cells in horizontal expansion. Index of the array is the index
1194
+ * of the column names.
1195
+ * @private
1196
+ * @typedef {Array<Highcharts.DataTableCellType>} Highcharts.DataTableRow
1197
+ */
1198
+ /**
1199
+ * Record of table cells in horizontal expansion. Keys of the record are the
1200
+ * column names (or aliases).
1201
+ * @private
1202
+ * @typedef {Record<string,Highcharts.DataTableCellType>} Highcharts.DataTableRowObject
1203
+ */
1204
+ (''); // keeps doclets above in transpiled file