highcharts 9.2.1 → 9.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (896) 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 +46 -1
  6. package/css/highcharts.scss +40 -0
  7. package/css/stocktools/gui.css +1 -1
  8. package/css/themes/dark-unica.css +46 -1
  9. package/css/themes/grid-light.css +46 -1
  10. package/css/themes/sand-signika.css +46 -1
  11. package/es-modules/Accessibility/A11yI18n.js +269 -224
  12. package/es-modules/Accessibility/Accessibility.js +244 -129
  13. package/es-modules/Accessibility/AccessibilityComponent.js +78 -313
  14. package/es-modules/Accessibility/Components/AnnotationsA11y.js +19 -5
  15. package/es-modules/Accessibility/Components/ContainerComponent.js +53 -28
  16. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +178 -120
  17. package/es-modules/Accessibility/Components/LegendComponent.js +251 -129
  18. package/es-modules/Accessibility/Components/MenuComponent.js +239 -154
  19. package/es-modules/Accessibility/Components/RangeSelectorComponent.js +172 -93
  20. package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +161 -115
  21. package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +138 -69
  22. package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +67 -28
  23. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +48 -56
  24. package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +387 -343
  25. package/es-modules/Accessibility/Components/ZoomComponent.js +156 -70
  26. package/es-modules/Accessibility/FocusBorder.js +192 -152
  27. package/es-modules/Accessibility/HighContrastMode.js +79 -66
  28. package/es-modules/Accessibility/HighContrastTheme.js +10 -0
  29. package/es-modules/Accessibility/KeyboardNavigation.js +151 -75
  30. package/es-modules/Accessibility/KeyboardNavigationHandler.js +71 -44
  31. package/es-modules/Accessibility/Options/DeprecatedOptions.js +21 -4
  32. package/es-modules/Accessibility/Options/LangOptions.js +4 -5
  33. package/es-modules/Accessibility/Options/Options.js +32 -17
  34. package/es-modules/Accessibility/ProxyElement.js +218 -0
  35. package/es-modules/Accessibility/ProxyProvider.js +302 -0
  36. package/es-modules/Accessibility/Utils/Announcer.js +17 -10
  37. package/es-modules/Accessibility/Utils/ChartUtilities.js +55 -45
  38. package/es-modules/Accessibility/Utils/DOMElementProvider.js +27 -15
  39. package/es-modules/Accessibility/Utils/EventProvider.js +27 -17
  40. package/es-modules/Accessibility/Utils/HTMLUtilities.js +125 -42
  41. package/es-modules/Core/Animation/Fx.js +5 -14
  42. package/es-modules/Core/Axis/Axis.js +77 -96
  43. package/es-modules/Core/Axis/Axis3D.js +10 -4
  44. package/es-modules/Core/Axis/AxisDefaults.js +35 -24
  45. package/es-modules/Core/Axis/BrokenAxis.js +17 -11
  46. package/es-modules/Core/Axis/Color/ColorAxis.js +7 -4
  47. package/es-modules/Core/Axis/Color/ColorAxisComposition.js +55 -5
  48. package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +5 -5
  49. package/es-modules/Core/Axis/DateTimeAxis.js +3 -14
  50. package/es-modules/Core/Axis/GridAxis.js +26 -16
  51. package/es-modules/Core/Axis/NavigatorAxis.js +0 -5
  52. package/es-modules/Core/Axis/OrdinalAxis.js +88 -92
  53. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +4 -5
  54. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js +0 -5
  55. package/es-modules/Core/Axis/RadialAxis.js +7 -28
  56. package/es-modules/Core/Axis/ScrollbarAxis.js +27 -12
  57. package/es-modules/Core/Axis/StackingAxis.js +2 -1
  58. package/es-modules/Core/Axis/Tick.js +2 -4
  59. package/es-modules/Core/Axis/TreeGridAxis.js +28 -19
  60. package/es-modules/Core/Axis/TreeGridTick.js +5 -3
  61. package/es-modules/Core/Axis/WaterfallAxis.js +1 -1
  62. package/es-modules/Core/Axis/ZAxis.js +1 -1
  63. package/es-modules/Core/Chart/Chart.js +44 -47
  64. package/es-modules/Core/Chart/Chart3D.js +23 -10
  65. package/es-modules/Core/Chart/ChartDefaults.js +3 -4
  66. package/es-modules/Core/Chart/ChartNavigationComposition.js +92 -0
  67. package/es-modules/Core/Chart/GanttChart.js +4 -4
  68. package/es-modules/Core/Chart/MapChart.js +13 -25
  69. package/es-modules/Core/Chart/StockChart.js +13 -316
  70. package/es-modules/Core/Color/Palettes.js +22 -0
  71. package/es-modules/Core/DefaultOptions.js +22 -19
  72. package/es-modules/Core/Foundation.js +39 -31
  73. package/es-modules/Core/Geometry/CircleUtilities.js +2 -1
  74. package/es-modules/Core/Globals.js +1 -1
  75. package/es-modules/Core/HttpUtilities.js +8 -7
  76. package/es-modules/Core/Legend/Legend.js +19 -16
  77. package/es-modules/Core/Navigator.js +41 -30
  78. package/es-modules/Core/Pointer.js +52 -45
  79. package/es-modules/Core/Renderer/HTML/AST.js +29 -14
  80. package/es-modules/Core/Renderer/HTML/HTMLElement.js +27 -20
  81. package/es-modules/Core/Renderer/HTML/HTMLRenderer.js +8 -6
  82. package/es-modules/Core/Renderer/RendererUtilities.js +2 -2
  83. package/es-modules/Core/Renderer/SVG/SVGElement.js +11 -20
  84. package/es-modules/Core/Renderer/SVG/SVGLabel.js +17 -8
  85. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +25 -29
  86. package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +12 -5
  87. package/es-modules/Core/Renderer/SVG/TextBuilder.js +18 -12
  88. package/es-modules/Core/Responsive.js +2 -3
  89. package/es-modules/Core/Scrollbar.js +14 -12
  90. package/es-modules/Core/ScrollbarDefaults.js +10 -9
  91. package/es-modules/Core/Series/DataLabel.js +19 -15
  92. package/es-modules/Core/Series/Point.js +22 -19
  93. package/es-modules/Core/Series/Series.js +200 -235
  94. package/es-modules/Core/Series/SeriesDefaults.js +8 -8
  95. package/es-modules/Core/Series/SeriesRegistry.js +1 -2
  96. package/es-modules/Core/Time.js +14 -11
  97. package/es-modules/Core/Tooltip.js +63 -53
  98. package/es-modules/Core/Utilities.js +20 -24
  99. package/es-modules/Data/DataConverter.js +483 -0
  100. package/es-modules/Data/DataPromise.js +252 -0
  101. package/es-modules/Data/DataSeriesConverter.js +207 -0
  102. package/es-modules/Data/DataTable.js +1205 -0
  103. package/es-modules/Data/Modifiers/ChainModifier.js +299 -0
  104. package/es-modules/Data/Modifiers/DataModifier.js +303 -0
  105. package/es-modules/Data/Modifiers/GroupModifier.js +144 -0
  106. package/es-modules/Data/Modifiers/InvertModifier.js +254 -0
  107. package/es-modules/Data/Modifiers/RangeModifier.js +143 -0
  108. package/es-modules/Data/Modifiers/SeriesPointsModifier.js +110 -0
  109. package/es-modules/Data/Modifiers/SortModifier.js +249 -0
  110. package/es-modules/Data/Parsers/CSVParser.js +400 -0
  111. package/es-modules/Data/Parsers/DataParser.js +101 -0
  112. package/es-modules/Data/Parsers/GoogleSheetsParser.js +223 -0
  113. package/es-modules/Data/Parsers/HTMLTableParser.js +213 -0
  114. package/es-modules/Data/Stores/CSVStore.js +317 -0
  115. package/es-modules/Data/Stores/DataStore.js +276 -0
  116. package/es-modules/Data/Stores/GoogleSheetsStore.js +169 -0
  117. package/es-modules/Data/Stores/HTMLTableStore.js +353 -0
  118. package/es-modules/Extensions/Annotations/Annotations.js +69 -18
  119. package/es-modules/Extensions/Annotations/ControlPoint.js +1 -3
  120. package/es-modules/Extensions/Annotations/Controllables/ControllableCircle.js +1 -1
  121. package/es-modules/Extensions/Annotations/Controllables/ControllableEllipse.js +199 -0
  122. package/es-modules/Extensions/Annotations/Controllables/ControllableImage.js +1 -1
  123. package/es-modules/Extensions/Annotations/Controllables/ControllableLabel.js +3 -6
  124. package/es-modules/Extensions/Annotations/Controllables/ControllablePath.js +3 -2
  125. package/es-modules/Extensions/Annotations/Controllables/ControllableRect.js +1 -1
  126. package/es-modules/Extensions/Annotations/Mixins/ControllableMixin.js +13 -4
  127. package/es-modules/Extensions/Annotations/Mixins/EventEmitterMixin.js +0 -1
  128. package/es-modules/Extensions/Annotations/Mixins/MarkerMixin.js +5 -4
  129. package/es-modules/Extensions/Annotations/NavigationBindings.js +120 -53
  130. package/es-modules/Extensions/Annotations/Popup.js +494 -148
  131. package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +51 -2
  132. package/es-modules/Extensions/Annotations/Types/CrookedLine.js +5 -3
  133. package/es-modules/Extensions/Annotations/Types/ElliottWave.js +1 -1
  134. package/es-modules/Extensions/Annotations/Types/Fibonacci.js +2 -3
  135. package/es-modules/Extensions/Annotations/Types/FibonacciTimeZones.js +219 -0
  136. package/es-modules/Extensions/Annotations/Types/InfinityLine.js +1 -1
  137. package/es-modules/Extensions/Annotations/Types/Measure.js +29 -19
  138. package/es-modules/Extensions/Annotations/Types/Pitchfork.js +7 -6
  139. package/es-modules/Extensions/Annotations/Types/TimeCycles.js +211 -0
  140. package/es-modules/Extensions/Annotations/Types/Tunnel.js +13 -10
  141. package/es-modules/Extensions/Annotations/Types/VerticalLine.js +1 -1
  142. package/es-modules/Extensions/Boost/BoostOptions.js +2 -2
  143. package/es-modules/Extensions/Boost/BoostOverrides.js +6 -10
  144. package/es-modules/Extensions/Boost/BoostUtils.js +0 -6
  145. package/es-modules/Extensions/Boost/WGLRenderer.js +16 -12
  146. package/es-modules/Extensions/Boost/WGLShader.js +13 -11
  147. package/es-modules/Extensions/Boost/WGLVBuffer.js +4 -7
  148. package/es-modules/Extensions/BoostCanvas.js +1 -2
  149. package/es-modules/Extensions/CurrentDateIndication.js +2 -3
  150. package/es-modules/Extensions/Data.js +77 -115
  151. package/es-modules/Extensions/DataGrouping.js +54 -32
  152. package/es-modules/Extensions/Debugger/ErrorMessages.js +2 -2
  153. package/es-modules/Extensions/DownloadURL.js +2 -2
  154. package/es-modules/Extensions/DragPanes.js +1 -2
  155. package/es-modules/Extensions/DraggablePoints.js +7 -8
  156. package/es-modules/Extensions/Drilldown.js +11 -7
  157. package/es-modules/Extensions/ExportData.js +6 -5
  158. package/es-modules/Extensions/Exporting/Exporting.js +35 -48
  159. package/es-modules/Extensions/Exporting/ExportingDefaults.js +8 -15
  160. package/es-modules/Extensions/FullScreen.js +4 -3
  161. package/es-modules/Extensions/GeoJSON.js +42 -66
  162. package/es-modules/Extensions/MarkerClusters.js +118 -98
  163. package/es-modules/Extensions/Math3D.js +4 -4
  164. package/es-modules/Extensions/NoDataToDisplay.js +1 -2
  165. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +33 -33
  166. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
  167. package/es-modules/Extensions/Oldie/Oldie.js +14 -79
  168. package/es-modules/Extensions/Oldie/VMLAxis3D.js +5 -1
  169. package/es-modules/Extensions/OverlappingDataLabels.js +10 -6
  170. package/es-modules/Extensions/Pane.js +11 -12
  171. package/es-modules/Extensions/ParallelCoordinates.js +5 -3
  172. package/es-modules/Extensions/PatternFill.js +17 -11
  173. package/es-modules/Extensions/Polar.js +7 -4
  174. package/es-modules/Extensions/PriceIndication.js +2 -1
  175. package/es-modules/Extensions/RangeSelector.js +22 -59
  176. package/es-modules/Extensions/ScrollablePlotArea.js +2 -2
  177. package/es-modules/Extensions/SeriesLabel.js +1 -1
  178. package/es-modules/Extensions/Sonification/ChartSonify.js +279 -663
  179. package/es-modules/Extensions/Sonification/Earcon.js +136 -102
  180. package/es-modules/Extensions/Sonification/Instrument.js +493 -426
  181. package/es-modules/Extensions/Sonification/MusicalFrequencies.js +10 -0
  182. package/es-modules/Extensions/Sonification/Options.js +10 -0
  183. package/es-modules/Extensions/Sonification/PointSonify.js +207 -152
  184. package/es-modules/Extensions/Sonification/SeriesSonify.js +474 -0
  185. package/es-modules/Extensions/Sonification/SignalHandler.js +122 -0
  186. package/es-modules/Extensions/Sonification/Sonification.js +27 -53
  187. package/es-modules/Extensions/Sonification/{Utilities.js → SonificationUtilities.js} +70 -88
  188. package/es-modules/Extensions/Sonification/Timeline.js +250 -567
  189. package/es-modules/Extensions/Sonification/TimelineEvent.js +157 -0
  190. package/es-modules/Extensions/Sonification/TimelinePath.js +311 -0
  191. package/es-modules/Extensions/Stacking.js +5 -23
  192. package/es-modules/Extensions/Themes/BrandDark.js +293 -0
  193. package/es-modules/Extensions/Themes/BrandLight.js +259 -0
  194. package/es-modules/Extensions/Themes/DarkUnica.js +4 -2
  195. package/es-modules/Extensions/Themes/Grid.js +4 -2
  196. package/es-modules/Extensions/Themes/GridLight.js +4 -2
  197. package/es-modules/Gantt/Connection.js +2 -2
  198. package/es-modules/Gantt/Pathfinder.js +6 -5
  199. package/es-modules/Gantt/PathfinderAlgorithms.js +12 -12
  200. package/es-modules/Maps/MapNavigation.js +30 -68
  201. package/es-modules/Maps/MapNavigationOptionsDefault.js +3 -0
  202. package/es-modules/Maps/MapPointer.js +8 -5
  203. package/es-modules/Maps/MapSymbols.js +23 -3
  204. package/es-modules/Maps/MapView.js +450 -0
  205. package/es-modules/Maps/MapViewOptionsDefault.js +97 -0
  206. package/es-modules/Maps/Projection.js +436 -0
  207. package/es-modules/Maps/ProjectionDefinition.js +9 -0
  208. package/es-modules/Maps/Projections/EqualEarth.js +42 -0
  209. package/es-modules/Maps/Projections/LambertConformalConic.js +52 -0
  210. package/es-modules/Maps/Projections/Miller.js +16 -0
  211. package/es-modules/Maps/Projections/Orthographic.js +26 -0
  212. package/es-modules/Maps/Projections/ProjectionRegistry.js +19 -0
  213. package/es-modules/Maps/Projections/WebMercator.js +24 -0
  214. package/es-modules/Series/Area/AreaSeries.js +13 -13
  215. package/es-modules/Series/Area3DSeries.js +4 -2
  216. package/es-modules/Series/AreaRange/AreaRangeSeries.js +28 -17
  217. package/es-modules/Series/Bellcurve/BellcurveSeries.js +4 -9
  218. package/es-modules/Series/BoxPlot/BoxPlotSeries.js +1 -2
  219. package/es-modules/Series/Bubble/BubbleLegendDefaults.js +1 -2
  220. package/es-modules/Series/Bubble/BubbleLegendItem.js +5 -15
  221. package/es-modules/Series/Bubble/BubblePoint.js +5 -0
  222. package/es-modules/Series/Bubble/BubbleSeries.js +90 -50
  223. package/es-modules/Series/Candlestick/CandlestickSeries.js +10 -19
  224. package/es-modules/{Mixins/CenteredSeries.js → Series/CenteredUtilities.js} +45 -23
  225. package/es-modules/{Mixins/ColorMapSeries.js → Series/ColorMapMixin.js} +10 -8
  226. package/es-modules/Series/Column/ColumnDataLabel.js +5 -5
  227. package/es-modules/Series/Column/ColumnSeries.js +19 -18
  228. package/es-modules/Series/Column3D/Column3DComposition.js +1 -2
  229. package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +11 -8
  230. package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +2 -1
  231. package/es-modules/Series/Cylinder/CylinderComposition.js +36 -4
  232. package/es-modules/Series/DataModifyComposition.js +539 -0
  233. package/es-modules/Series/DependencyWheel/DependencyWheelPoint.js +2 -6
  234. package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +1 -1
  235. package/es-modules/Series/DerivedComposition.js +137 -0
  236. package/es-modules/Series/DrawPointComposition.js +111 -0
  237. package/es-modules/Series/Dumbbell/DumbbellPoint.js +0 -1
  238. package/es-modules/Series/Dumbbell/DumbbellSeries.js +2 -6
  239. package/es-modules/Series/ErrorBar/ErrorBarSeries.js +1 -2
  240. package/es-modules/Series/Flags/FlagsSeries.js +18 -25
  241. package/es-modules/Series/Flags/FlagsSymbols.js +2 -2
  242. package/es-modules/Series/Funnel/FunnelSeries.js +6 -5
  243. package/es-modules/Series/Funnel3D/Funnel3DComposition.js +14 -8
  244. package/es-modules/Series/Funnel3D/Funnel3DSeries.js +2 -1
  245. package/es-modules/Series/Gantt/GanttPoint.js +1 -1
  246. package/es-modules/Series/Gantt/GanttSeries.js +3 -3
  247. package/es-modules/Series/Gauge/GaugePoint.js +1 -1
  248. package/es-modules/Series/Gauge/GaugeSeries.js +7 -7
  249. package/es-modules/Series/HLC/HLCPoint.js +55 -0
  250. package/es-modules/Series/HLC/HLCSeries.js +378 -0
  251. package/es-modules/Series/Heatmap/HeatmapPoint.js +13 -14
  252. package/es-modules/Series/Heatmap/HeatmapSeries.js +24 -12
  253. package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +10 -9
  254. package/es-modules/Series/Histogram/HistogramSeries.js +7 -11
  255. package/es-modules/Series/HollowCandlestick/HollowCandlestickPoint.js +1 -4
  256. package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +28 -30
  257. package/es-modules/Series/Item/ItemSeries.js +4 -5
  258. package/es-modules/Series/Line/LineSeries.js +1 -2
  259. package/es-modules/Series/Map/MapPoint.js +27 -14
  260. package/es-modules/Series/Map/MapSeries.js +283 -322
  261. package/es-modules/Series/MapBubble/MapBubblePoint.js +0 -3
  262. package/es-modules/Series/MapBubble/MapBubbleSeries.js +10 -1
  263. package/es-modules/Series/MapLine/MapLineSeries.js +2 -4
  264. package/es-modules/Series/MapPoint/MapPointPoint.js +5 -1
  265. package/es-modules/Series/MapPoint/MapPointSeries.js +99 -14
  266. package/es-modules/Series/Networkgraph/DraggableNodes.js +0 -4
  267. package/es-modules/Series/Networkgraph/Integrations.js +8 -22
  268. package/es-modules/Series/Networkgraph/Networkgraph.js +6 -10
  269. package/es-modules/Series/Networkgraph/QuadTree.js +1 -3
  270. package/es-modules/{Mixins/Nodes.js → Series/NodesComposition.js} +78 -30
  271. package/es-modules/Series/OHLC/OHLCPoint.js +2 -7
  272. package/es-modules/Series/OHLC/OHLCSeries.js +55 -183
  273. package/es-modules/{Mixins/OnSeries.js → Series/OnSeriesComposition.js} +53 -21
  274. package/es-modules/Series/Organization/OrganizationSeries.js +6 -5
  275. package/es-modules/Series/PackedBubble/PackedBubbleComposition.js +1 -0
  276. package/es-modules/Series/PackedBubble/PackedBubblePoint.js +1 -1
  277. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +48 -10
  278. package/es-modules/Series/ParetoSeries/ParetoSeries.js +3 -7
  279. package/es-modules/Series/Pie/PieDataLabel.js +1 -2
  280. package/es-modules/Series/Pie/PiePoint.js +2 -2
  281. package/es-modules/Series/Pie/PieSeries.js +7 -8
  282. package/es-modules/Series/Pie3D/Pie3DComposition.js +2 -1
  283. package/es-modules/Series/Pie3D/Pie3DPoint.js +2 -1
  284. package/es-modules/Series/Pie3D/Pie3DSeries.js +1 -1
  285. package/es-modules/Series/Pyramid3D/Pyramid3DSeries.js +2 -1
  286. package/es-modules/Series/Sankey/SankeyPoint.js +0 -4
  287. package/es-modules/Series/Sankey/SankeySeries.js +92 -22
  288. package/es-modules/Series/SolidGauge/SolidGaugeComposition.js +3 -1
  289. package/es-modules/Series/Spline/SplineSeries.js +0 -8
  290. package/es-modules/Series/Sunburst/SunburstPoint.js +2 -3
  291. package/es-modules/Series/Sunburst/SunburstSeries.js +6 -6
  292. package/es-modules/Series/Sunburst/SunburstUtilities.js +3 -2
  293. package/es-modules/Series/Tilemap/TilemapPoint.js +2 -5
  294. package/es-modules/Series/Tilemap/TilemapShapes.js +0 -7
  295. package/es-modules/Series/Timeline/TimelineSeries.js +3 -4
  296. package/es-modules/{Mixins/TreeSeries.js → Series/TreeUtilities.js} +88 -78
  297. package/es-modules/Series/Treemap/TreemapPoint.js +2 -2
  298. package/es-modules/Series/Treemap/TreemapSeries.js +22 -25
  299. package/es-modules/Series/Variwide/VariwideSeries.js +5 -1
  300. package/es-modules/Series/Venn/VennPoint.js +16 -7
  301. package/es-modules/Series/Venn/VennSeries.js +11 -17
  302. package/es-modules/Series/Venn/VennUtils.js +551 -439
  303. package/es-modules/Series/Waterfall/WaterfallSeries.js +8 -6
  304. package/es-modules/Series/Windbarb/WindbarbSeries.js +23 -24
  305. package/es-modules/Series/Wordcloud/WordcloudPoint.js +8 -6
  306. package/es-modules/Series/Wordcloud/WordcloudSeries.js +26 -22
  307. package/es-modules/Series/Wordcloud/WordcloudUtils.js +669 -484
  308. package/es-modules/Series/XRange/XRangePoint.js +7 -12
  309. package/es-modules/Series/XRange/XRangeSeries.js +4 -20
  310. package/es-modules/Stock/Indicators/ABands/ABandsIndicator.js +15 -6
  311. package/es-modules/Stock/Indicators/AO/AOIndicator.js +2 -3
  312. package/es-modules/Stock/Indicators/APO/APOIndicator.js +14 -20
  313. package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +4 -6
  314. package/es-modules/Stock/Indicators/AroonOscillator/AroonOscillatorIndicator.js +11 -13
  315. package/es-modules/Stock/Indicators/ArrayUtilities.js +47 -0
  316. package/es-modules/Stock/Indicators/BB/BBIndicator.js +39 -11
  317. package/es-modules/Stock/Indicators/CMF/CMFIndicator.js +35 -15
  318. package/es-modules/Stock/Indicators/Chaikin/ChaikinIndicator.js +6 -12
  319. package/es-modules/Stock/Indicators/DEMA/DEMAIndicator.js +1 -11
  320. package/es-modules/Stock/Indicators/DMI/DMIIndicator.js +28 -16
  321. package/es-modules/Stock/Indicators/DisparityIndex/DisparityIndexIndicator.js +18 -11
  322. package/es-modules/Stock/Indicators/EMA/EMAIndicator.js +1 -3
  323. package/es-modules/Stock/Indicators/IKH/IKHIndicator.js +6 -6
  324. package/es-modules/Stock/Indicators/KeltnerChannels/KeltnerChannelsIndicator.js +23 -9
  325. package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +16 -19
  326. package/es-modules/Stock/Indicators/LinearRegression/LinearRegression.js +32 -14
  327. package/es-modules/Stock/Indicators/LinearRegressionAngle/LinearRegressionAngle.js +2 -2
  328. package/es-modules/Stock/Indicators/LinearRegressionIntercept/LinearRegressionIntercept.js +2 -2
  329. package/es-modules/Stock/Indicators/LinearRegressionSlopes/LinearRegressionSlopes.js +2 -2
  330. package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +2 -3
  331. package/es-modules/Stock/Indicators/MultipleLinesComposition.js +294 -0
  332. package/es-modules/Stock/Indicators/NATR/NATRIndicator.js +1 -3
  333. package/es-modules/Stock/Indicators/PC/PCIndicator.js +25 -13
  334. package/es-modules/Stock/Indicators/PPO/PPOIndicator.js +1 -11
  335. package/es-modules/Stock/Indicators/PivotPoints/PivotPointsIndicator.js +2 -1
  336. package/es-modules/Stock/Indicators/RSI/RSIIndicator.js +2 -1
  337. package/es-modules/Stock/Indicators/SMA/SMAComposition.js +0 -26
  338. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +32 -50
  339. package/es-modules/Stock/Indicators/SlowStochastic/SlowStochasticIndicator.js +0 -8
  340. package/es-modules/Stock/Indicators/Stochastic/StochasticIndicator.js +18 -9
  341. package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +4 -6
  342. package/es-modules/Stock/Indicators/TEMA/TEMAIndicator.js +26 -11
  343. package/es-modules/Stock/Indicators/TRIX/TRIXIndicator.js +6 -12
  344. package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +26 -10
  345. package/es-modules/Stock/Indicators/VWAP/VWAPIndicator.js +19 -7
  346. package/es-modules/Stock/Indicators/WilliamsR/WilliamsRIndicator.js +2 -3
  347. package/es-modules/Stock/StockToolsBindings.js +156 -47
  348. package/es-modules/Stock/StockToolsGui.js +442 -37
  349. package/es-modules/masters/highcharts-3d.src.js +1 -1
  350. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  351. package/es-modules/masters/highcharts-more.src.js +1 -1
  352. package/es-modules/masters/highcharts.src.js +1 -1
  353. package/es-modules/masters/highmaps.src.js +1 -1
  354. package/es-modules/masters/highstock.src.js +1 -1
  355. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  356. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  357. package/es-modules/masters/indicators/ao.src.js +1 -1
  358. package/es-modules/masters/indicators/apo.src.js +1 -1
  359. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  360. package/es-modules/masters/indicators/aroon.src.js +1 -1
  361. package/es-modules/masters/indicators/atr.src.js +1 -1
  362. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  363. package/es-modules/masters/indicators/cci.src.js +1 -1
  364. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  365. package/es-modules/masters/indicators/cmf.src.js +1 -1
  366. package/es-modules/masters/indicators/cmo.src.js +1 -1
  367. package/es-modules/masters/indicators/dema.src.js +1 -1
  368. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  369. package/es-modules/masters/indicators/dmi.src.js +1 -1
  370. package/es-modules/masters/indicators/dpo.src.js +1 -1
  371. package/es-modules/masters/indicators/ema.src.js +4 -10
  372. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  373. package/es-modules/masters/indicators/indicators-all.src.js +2 -2
  374. package/es-modules/masters/indicators/indicators.src.js +2 -1
  375. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  376. package/es-modules/masters/indicators/klinger.src.js +1 -1
  377. package/es-modules/masters/indicators/macd.src.js +1 -1
  378. package/es-modules/masters/indicators/mfi.src.js +1 -1
  379. package/es-modules/masters/indicators/momentum.src.js +1 -1
  380. package/es-modules/masters/indicators/natr.src.js +1 -1
  381. package/es-modules/masters/indicators/obv.src.js +1 -1
  382. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  383. package/es-modules/masters/indicators/ppo.src.js +1 -1
  384. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  385. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  386. package/es-modules/masters/indicators/psar.src.js +1 -1
  387. package/es-modules/masters/indicators/regressions.src.js +1 -1
  388. package/es-modules/masters/indicators/roc.src.js +1 -1
  389. package/es-modules/masters/indicators/rsi.src.js +1 -1
  390. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  391. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  392. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  393. package/es-modules/masters/indicators/tema.src.js +1 -1
  394. package/es-modules/masters/indicators/trendline.src.js +1 -1
  395. package/es-modules/masters/indicators/trix.src.js +1 -1
  396. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  397. package/es-modules/masters/indicators/vwap.src.js +1 -1
  398. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  399. package/es-modules/masters/indicators/wma.src.js +1 -1
  400. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  401. package/es-modules/masters/modules/accessibility.src.js +16 -2
  402. package/es-modules/masters/modules/annotations-advanced.src.js +3 -1
  403. package/es-modules/masters/modules/annotations.src.js +1 -1
  404. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  405. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  406. package/es-modules/masters/modules/boost.src.js +1 -1
  407. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  408. package/es-modules/masters/modules/bullet.src.js +1 -1
  409. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  410. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  411. package/es-modules/masters/modules/cylinder.src.js +1 -1
  412. package/es-modules/masters/modules/data.src.js +6 -3
  413. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  414. package/es-modules/masters/modules/debugger.src.js +1 -1
  415. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  416. package/es-modules/masters/modules/dotplot.src.js +1 -1
  417. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  418. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  419. package/es-modules/masters/modules/drilldown.src.js +1 -1
  420. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  421. package/es-modules/masters/modules/export-data.src.js +1 -1
  422. package/es-modules/masters/modules/exporting.src.js +1 -1
  423. package/es-modules/masters/modules/full-screen.src.js +1 -1
  424. package/es-modules/masters/modules/funnel.src.js +1 -1
  425. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  426. package/es-modules/masters/modules/gantt.src.js +1 -1
  427. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  428. package/es-modules/masters/modules/heatmap.src.js +1 -2
  429. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  430. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  431. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  432. package/es-modules/masters/modules/item-series.src.js +1 -1
  433. package/es-modules/masters/modules/lollipop.src.js +1 -1
  434. package/es-modules/masters/modules/map.src.js +1 -3
  435. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  436. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  437. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  438. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  439. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  440. package/es-modules/masters/modules/oldie.src.js +1 -1
  441. package/es-modules/masters/modules/organization.src.js +1 -1
  442. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  443. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  444. package/es-modules/masters/modules/pareto.src.js +1 -1
  445. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  446. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  447. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  448. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  449. package/es-modules/masters/modules/sankey.src.js +1 -1
  450. package/es-modules/masters/modules/series-label.src.js +1 -1
  451. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  452. package/es-modules/masters/modules/sonification.src.js +33 -2
  453. package/es-modules/masters/modules/static-scale.src.js +1 -1
  454. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  455. package/es-modules/masters/modules/stock.src.js +4 -1
  456. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  457. package/es-modules/masters/modules/sunburst.src.js +1 -1
  458. package/es-modules/masters/modules/tilemap.src.js +1 -1
  459. package/es-modules/masters/modules/timeline.src.js +1 -1
  460. package/es-modules/masters/modules/treegrid.src.js +1 -1
  461. package/es-modules/masters/modules/treemap.src.js +1 -1
  462. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  463. package/es-modules/masters/modules/variwide.src.js +1 -1
  464. package/es-modules/masters/modules/vector.src.js +1 -1
  465. package/es-modules/masters/modules/venn.src.js +1 -1
  466. package/es-modules/masters/modules/windbarb.src.js +1 -1
  467. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  468. package/es-modules/masters/modules/xrange.src.js +1 -1
  469. package/es-modules/masters/themes/avocado.src.js +1 -1
  470. package/es-modules/masters/themes/brand-dark.src.js +14 -0
  471. package/es-modules/masters/themes/brand-light.src.js +14 -0
  472. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  473. package/es-modules/masters/themes/dark-green.src.js +1 -1
  474. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  475. package/es-modules/masters/themes/gray.src.js +1 -1
  476. package/es-modules/masters/themes/grid-light.src.js +1 -1
  477. package/es-modules/masters/themes/grid.src.js +1 -1
  478. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  479. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  480. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  481. package/es-modules/masters/themes/skies.src.js +1 -1
  482. package/es-modules/masters/themes/sunset.src.js +1 -1
  483. package/highcharts-3d.js +1 -1
  484. package/highcharts-3d.js.map +1 -1
  485. package/highcharts-3d.src.js +65 -35
  486. package/highcharts-gantt.js +800 -803
  487. package/highcharts-gantt.js.map +1 -1
  488. package/highcharts-gantt.src.js +1359 -1429
  489. package/highcharts-more.js +194 -193
  490. package/highcharts-more.js.map +1 -1
  491. package/highcharts-more.src.js +280 -222
  492. package/highcharts.d.ts +10228 -768
  493. package/highcharts.js +585 -588
  494. package/highcharts.js.map +1 -1
  495. package/highcharts.src.d.ts +10228 -768
  496. package/highcharts.src.js +995 -1066
  497. package/highmaps.js +727 -707
  498. package/highmaps.js.map +1 -1
  499. package/highmaps.src.js +3243 -2135
  500. package/highstock.js +788 -783
  501. package/highstock.js.map +1 -1
  502. package/highstock.src.js +2492 -1981
  503. package/indicators/acceleration-bands.d.ts +17 -1
  504. package/indicators/acceleration-bands.js +11 -9
  505. package/indicators/acceleration-bands.js.map +1 -1
  506. package/indicators/acceleration-bands.src.d.ts +17 -1
  507. package/indicators/acceleration-bands.src.js +238 -112
  508. package/indicators/accumulation-distribution.js +1 -1
  509. package/indicators/accumulation-distribution.src.js +1 -1
  510. package/indicators/ao.js +6 -6
  511. package/indicators/ao.js.map +1 -1
  512. package/indicators/ao.src.js +4 -4
  513. package/indicators/apo.js +5 -6
  514. package/indicators/apo.js.map +1 -1
  515. package/indicators/apo.src.js +16 -84
  516. package/indicators/aroon-oscillator.d.ts +17 -1
  517. package/indicators/aroon-oscillator.js +10 -9
  518. package/indicators/aroon-oscillator.js.map +1 -1
  519. package/indicators/aroon-oscillator.src.d.ts +17 -1
  520. package/indicators/aroon-oscillator.src.js +230 -177
  521. package/indicators/aroon.d.ts +17 -1
  522. package/indicators/aroon.js +11 -9
  523. package/indicators/aroon.js.map +1 -1
  524. package/indicators/aroon.src.d.ts +17 -1
  525. package/indicators/aroon.src.js +227 -112
  526. package/indicators/atr.js +1 -1
  527. package/indicators/atr.src.js +1 -1
  528. package/indicators/bollinger-bands.d.ts +17 -1
  529. package/indicators/bollinger-bands.js +12 -9
  530. package/indicators/bollinger-bands.js.map +1 -1
  531. package/indicators/bollinger-bands.src.d.ts +17 -1
  532. package/indicators/bollinger-bands.src.js +262 -117
  533. package/indicators/cci.js +1 -1
  534. package/indicators/cci.src.js +1 -1
  535. package/indicators/chaikin.js +8 -9
  536. package/indicators/chaikin.js.map +1 -1
  537. package/indicators/chaikin.src.js +8 -76
  538. package/indicators/cmf.js +1 -1
  539. package/indicators/cmf.js.map +1 -1
  540. package/indicators/cmf.src.js +36 -16
  541. package/indicators/cmo.js +1 -1
  542. package/indicators/cmo.src.js +1 -1
  543. package/indicators/dema.js +5 -6
  544. package/indicators/dema.js.map +1 -1
  545. package/indicators/dema.src.js +3 -75
  546. package/indicators/disparity-index.js +6 -7
  547. package/indicators/disparity-index.js.map +1 -1
  548. package/indicators/disparity-index.src.js +20 -74
  549. package/indicators/dmi.js +12 -11
  550. package/indicators/dmi.js.map +1 -1
  551. package/indicators/dmi.src.js +252 -121
  552. package/indicators/dpo.js +1 -1
  553. package/indicators/dpo.src.js +1 -1
  554. package/indicators/ema.js +1 -13
  555. package/indicators/ema.js.map +1 -1
  556. package/indicators/ema.src.js +7 -188
  557. package/indicators/ichimoku-kinko-hyo.js +1 -1
  558. package/indicators/ichimoku-kinko-hyo.js.map +1 -1
  559. package/indicators/ichimoku-kinko-hyo.src.js +7 -7
  560. package/indicators/indicators-all.d.ts +17 -1
  561. package/indicators/indicators-all.js +198 -203
  562. package/indicators/indicators-all.js.map +1 -1
  563. package/indicators/indicators-all.src.d.ts +17 -1
  564. package/indicators/indicators-all.src.js +892 -777
  565. package/indicators/indicators.js +12 -12
  566. package/indicators/indicators.js.map +1 -1
  567. package/indicators/indicators.src.js +213 -144
  568. package/indicators/keltner-channels.d.ts +17 -1
  569. package/indicators/keltner-channels.js +11 -10
  570. package/indicators/keltner-channels.js.map +1 -1
  571. package/indicators/keltner-channels.src.d.ts +17 -1
  572. package/indicators/keltner-channels.src.js +246 -118
  573. package/indicators/klinger.js +14 -13
  574. package/indicators/klinger.js.map +1 -1
  575. package/indicators/klinger.src.js +239 -187
  576. package/indicators/macd.js +2 -2
  577. package/indicators/macd.js.map +1 -1
  578. package/indicators/macd.src.js +3 -4
  579. package/indicators/mfi.js +1 -1
  580. package/indicators/mfi.src.js +1 -1
  581. package/indicators/momentum.js +1 -1
  582. package/indicators/momentum.src.js +1 -1
  583. package/indicators/natr.js +3 -3
  584. package/indicators/natr.js.map +1 -1
  585. package/indicators/natr.src.js +2 -4
  586. package/indicators/obv.js +1 -1
  587. package/indicators/obv.src.js +1 -1
  588. package/indicators/pivot-points.js +1 -1
  589. package/indicators/pivot-points.js.map +1 -1
  590. package/indicators/pivot-points.src.js +3 -2
  591. package/indicators/ppo.js +5 -6
  592. package/indicators/ppo.js.map +1 -1
  593. package/indicators/ppo.src.js +3 -75
  594. package/indicators/price-channel.d.ts +17 -1
  595. package/indicators/price-channel.js +11 -9
  596. package/indicators/price-channel.js.map +1 -1
  597. package/indicators/price-channel.src.d.ts +17 -1
  598. package/indicators/price-channel.src.js +288 -168
  599. package/indicators/price-envelopes.js +1 -1
  600. package/indicators/price-envelopes.src.js +1 -1
  601. package/indicators/psar.js +1 -1
  602. package/indicators/psar.src.js +1 -1
  603. package/indicators/regressions.js +1 -1
  604. package/indicators/regressions.js.map +1 -1
  605. package/indicators/regressions.src.js +39 -21
  606. package/indicators/roc.js +1 -1
  607. package/indicators/roc.src.js +1 -1
  608. package/indicators/rsi.js +1 -1
  609. package/indicators/rsi.js.map +1 -1
  610. package/indicators/rsi.src.js +3 -2
  611. package/indicators/slow-stochastic.js +5 -6
  612. package/indicators/slow-stochastic.js.map +1 -1
  613. package/indicators/slow-stochastic.src.js +2 -72
  614. package/indicators/stochastic.d.ts +17 -1
  615. package/indicators/stochastic.js +12 -10
  616. package/indicators/stochastic.js.map +1 -1
  617. package/indicators/stochastic.src.d.ts +17 -1
  618. package/indicators/stochastic.src.js +282 -165
  619. package/indicators/supertrend.js +10 -10
  620. package/indicators/supertrend.js.map +1 -1
  621. package/indicators/supertrend.src.js +6 -7
  622. package/indicators/tema.js +6 -7
  623. package/indicators/tema.js.map +1 -1
  624. package/indicators/tema.src.js +28 -75
  625. package/indicators/trendline.js +1 -1
  626. package/indicators/trendline.src.js +1 -1
  627. package/indicators/trix.js +4 -5
  628. package/indicators/trix.js.map +1 -1
  629. package/indicators/trix.src.js +8 -76
  630. package/indicators/volume-by-price.js +16 -16
  631. package/indicators/volume-by-price.js.map +1 -1
  632. package/indicators/volume-by-price.src.js +27 -10
  633. package/indicators/vwap.js +1 -1
  634. package/indicators/vwap.js.map +1 -1
  635. package/indicators/vwap.src.js +20 -8
  636. package/indicators/williams-r.js +5 -6
  637. package/indicators/williams-r.js.map +1 -1
  638. package/indicators/williams-r.src.js +41 -51
  639. package/indicators/wma.js +1 -1
  640. package/indicators/wma.src.js +1 -1
  641. package/indicators/zigzag.js +1 -1
  642. package/indicators/zigzag.src.js +1 -1
  643. package/modules/accessibility.d.ts +0 -30
  644. package/modules/accessibility.js +240 -216
  645. package/modules/accessibility.js.map +1 -1
  646. package/modules/accessibility.src.d.ts +0 -30
  647. package/modules/accessibility.src.js +7807 -6400
  648. package/modules/annotations-advanced.d.ts +30 -0
  649. package/modules/annotations-advanced.js +192 -165
  650. package/modules/annotations-advanced.js.map +1 -1
  651. package/modules/annotations-advanced.src.d.ts +30 -0
  652. package/modules/annotations-advanced.src.js +1716 -416
  653. package/modules/annotations.js +125 -110
  654. package/modules/annotations.js.map +1 -1
  655. package/modules/annotations.src.js +1059 -304
  656. package/modules/arrow-symbols.js +1 -1
  657. package/modules/arrow-symbols.src.js +1 -1
  658. package/modules/boost-canvas.js +15 -15
  659. package/modules/boost-canvas.js.map +1 -1
  660. package/modules/boost-canvas.src.js +3 -3
  661. package/modules/boost.js +79 -79
  662. package/modules/boost.js.map +1 -1
  663. package/modules/boost.src.js +42 -51
  664. package/modules/broken-axis.js +1 -1
  665. package/modules/broken-axis.js.map +1 -1
  666. package/modules/broken-axis.src.js +18 -12
  667. package/modules/bullet.js +1 -1
  668. package/modules/bullet.src.js +1 -1
  669. package/modules/coloraxis.js +24 -24
  670. package/modules/coloraxis.js.map +1 -1
  671. package/modules/coloraxis.src.js +77 -103
  672. package/modules/current-date-indicator.js +4 -4
  673. package/modules/current-date-indicator.js.map +1 -1
  674. package/modules/current-date-indicator.src.js +4 -4
  675. package/modules/cylinder.js +1 -1
  676. package/modules/cylinder.js.map +1 -1
  677. package/modules/cylinder.src.js +37 -5
  678. package/modules/data.d.ts +6 -6
  679. package/modules/data.js +32 -32
  680. package/modules/data.js.map +1 -1
  681. package/modules/data.src.d.ts +6 -6
  682. package/modules/data.src.js +94 -140
  683. package/modules/datagrouping.js +20 -20
  684. package/modules/datagrouping.js.map +1 -1
  685. package/modules/datagrouping.src.js +56 -33
  686. package/modules/debugger.js +3 -3
  687. package/modules/debugger.js.map +1 -1
  688. package/modules/debugger.src.js +3 -3
  689. package/modules/dependency-wheel.js +11 -11
  690. package/modules/dependency-wheel.js.map +1 -1
  691. package/modules/dependency-wheel.src.js +5 -8
  692. package/modules/dotplot.js +1 -1
  693. package/modules/dotplot.src.js +1 -1
  694. package/modules/drag-panes.js +8 -8
  695. package/modules/drag-panes.js.map +1 -1
  696. package/modules/drag-panes.src.js +3 -3
  697. package/modules/draggable-points.js +1 -1
  698. package/modules/draggable-points.js.map +1 -1
  699. package/modules/draggable-points.src.js +8 -9
  700. package/modules/drilldown.js +24 -24
  701. package/modules/drilldown.js.map +1 -1
  702. package/modules/drilldown.src.js +13 -8
  703. package/modules/dumbbell.js +17 -17
  704. package/modules/dumbbell.js.map +1 -1
  705. package/modules/dumbbell.src.js +4 -8
  706. package/modules/export-data.js +19 -19
  707. package/modules/export-data.js.map +1 -1
  708. package/modules/export-data.src.js +9 -8
  709. package/modules/exporting.js +39 -38
  710. package/modules/exporting.js.map +1 -1
  711. package/modules/exporting.src.js +134 -116
  712. package/modules/full-screen.js +1 -1
  713. package/modules/full-screen.js.map +1 -1
  714. package/modules/full-screen.src.js +5 -4
  715. package/modules/funnel.js +12 -12
  716. package/modules/funnel.js.map +1 -1
  717. package/modules/funnel.src.js +9 -6
  718. package/modules/funnel3d.js +1 -1
  719. package/modules/funnel3d.js.map +1 -1
  720. package/modules/funnel3d.src.js +17 -10
  721. package/modules/gantt.js +217 -218
  722. package/modules/gantt.js.map +1 -1
  723. package/modules/gantt.src.js +364 -363
  724. package/modules/grid-axis.js +1 -1
  725. package/modules/grid-axis.js.map +1 -1
  726. package/modules/grid-axis.src.js +27 -19
  727. package/modules/heatmap.js +39 -39
  728. package/modules/heatmap.js.map +1 -1
  729. package/modules/heatmap.src.js +132 -141
  730. package/modules/heikinashi.js +1 -1
  731. package/modules/heikinashi.js.map +1 -1
  732. package/modules/heikinashi.src.js +12 -10
  733. package/modules/histogram-bellcurve.js +13 -13
  734. package/modules/histogram-bellcurve.js.map +1 -1
  735. package/modules/histogram-bellcurve.src.js +97 -91
  736. package/modules/hollowcandlestick.js +9 -9
  737. package/modules/hollowcandlestick.js.map +1 -1
  738. package/modules/hollowcandlestick.src.js +31 -35
  739. package/modules/item-series.js +6 -6
  740. package/modules/item-series.js.map +1 -1
  741. package/modules/item-series.src.js +6 -6
  742. package/modules/lollipop.js +1 -1
  743. package/modules/lollipop.src.js +1 -1
  744. package/modules/map.d.ts +138 -14
  745. package/modules/map.js +144 -122
  746. package/modules/map.js.map +1 -1
  747. package/modules/map.src.d.ts +138 -14
  748. package/modules/map.src.js +2253 -1074
  749. package/modules/marker-clusters.js +36 -36
  750. package/modules/marker-clusters.js.map +1 -1
  751. package/modules/marker-clusters.src.js +176 -143
  752. package/modules/networkgraph.d.ts +12 -1
  753. package/modules/networkgraph.js +49 -49
  754. package/modules/networkgraph.js.map +1 -1
  755. package/modules/networkgraph.src.d.ts +12 -1
  756. package/modules/networkgraph.src.js +103 -78
  757. package/modules/no-data-to-display.js +5 -5
  758. package/modules/no-data-to-display.js.map +1 -1
  759. package/modules/no-data-to-display.src.js +3 -3
  760. package/modules/offline-exporting.js +18 -17
  761. package/modules/offline-exporting.js.map +1 -1
  762. package/modules/offline-exporting.src.js +39 -44
  763. package/modules/oldie-polyfills.js +1 -1
  764. package/modules/oldie-polyfills.src.js +1 -1
  765. package/modules/oldie.js +26 -26
  766. package/modules/oldie.js.map +1 -1
  767. package/modules/oldie.src.js +21 -81
  768. package/modules/organization.js +13 -13
  769. package/modules/organization.js.map +1 -1
  770. package/modules/organization.src.js +8 -6
  771. package/modules/overlapping-datalabels.js +1 -1
  772. package/modules/overlapping-datalabels.src.js +1 -1
  773. package/modules/parallel-coordinates.js +1 -1
  774. package/modules/parallel-coordinates.js.map +1 -1
  775. package/modules/parallel-coordinates.src.js +6 -4
  776. package/modules/pareto.js +7 -7
  777. package/modules/pareto.js.map +1 -1
  778. package/modules/pareto.src.js +89 -78
  779. package/modules/pathfinder.js +1 -1
  780. package/modules/pathfinder.js.map +1 -1
  781. package/modules/pathfinder.src.js +21 -20
  782. package/modules/pattern-fill.js +1 -1
  783. package/modules/pattern-fill.js.map +1 -1
  784. package/modules/pattern-fill.src.js +18 -12
  785. package/modules/price-indicator.js +1 -1
  786. package/modules/price-indicator.js.map +1 -1
  787. package/modules/price-indicator.src.js +3 -2
  788. package/modules/pyramid3d.js +1 -1
  789. package/modules/pyramid3d.js.map +1 -1
  790. package/modules/pyramid3d.src.js +3 -2
  791. package/modules/sankey.d.ts +12 -1
  792. package/modules/sankey.js +29 -29
  793. package/modules/sankey.js.map +1 -1
  794. package/modules/sankey.src.d.ts +12 -1
  795. package/modules/sankey.src.js +307 -181
  796. package/modules/series-label.js +1 -1
  797. package/modules/series-label.js.map +1 -1
  798. package/modules/series-label.src.js +2 -2
  799. package/modules/solid-gauge.js +1 -1
  800. package/modules/solid-gauge.js.map +1 -1
  801. package/modules/solid-gauge.src.js +17 -2
  802. package/modules/sonification.js +59 -55
  803. package/modules/sonification.js.map +1 -1
  804. package/modules/sonification.src.js +3093 -2594
  805. package/modules/static-scale.js +1 -1
  806. package/modules/static-scale.src.js +1 -1
  807. package/modules/stock-tools.js +178 -163
  808. package/modules/stock-tools.js.map +1 -1
  809. package/modules/stock-tools.src.js +1136 -229
  810. package/modules/stock.d.ts +39 -6
  811. package/modules/stock.js +204 -196
  812. package/modules/stock.js.map +1 -1
  813. package/modules/stock.src.d.ts +39 -6
  814. package/modules/stock.src.js +1822 -1240
  815. package/modules/streamgraph.js +1 -1
  816. package/modules/streamgraph.src.js +1 -1
  817. package/modules/sunburst.js +60 -60
  818. package/modules/sunburst.js.map +1 -1
  819. package/modules/sunburst.src.js +281 -248
  820. package/modules/tilemap.js +17 -17
  821. package/modules/tilemap.js.map +1 -1
  822. package/modules/tilemap.src.js +3 -13
  823. package/modules/timeline.js +18 -18
  824. package/modules/timeline.js.map +1 -1
  825. package/modules/timeline.src.js +5 -5
  826. package/modules/treegrid.js +56 -57
  827. package/modules/treegrid.js.map +1 -1
  828. package/modules/treegrid.src.js +201 -169
  829. package/modules/treemap.js +41 -41
  830. package/modules/treemap.js.map +1 -1
  831. package/modules/treemap.src.js +266 -232
  832. package/modules/variable-pie.js +1 -1
  833. package/modules/variable-pie.src.js +1 -1
  834. package/modules/variwide.js +1 -1
  835. package/modules/variwide.js.map +1 -1
  836. package/modules/variwide.src.js +7 -3
  837. package/modules/vector.js +1 -1
  838. package/modules/vector.src.js +1 -1
  839. package/modules/venn.js +31 -31
  840. package/modules/venn.js.map +1 -1
  841. package/modules/venn.src.js +740 -731
  842. package/modules/windbarb.js +15 -15
  843. package/modules/windbarb.js.map +1 -1
  844. package/modules/windbarb.src.js +90 -62
  845. package/modules/wordcloud.js +23 -24
  846. package/modules/wordcloud.js.map +1 -1
  847. package/modules/wordcloud.src.js +898 -954
  848. package/modules/xrange.js +2 -2
  849. package/modules/xrange.js.map +1 -1
  850. package/modules/xrange.src.js +12 -33
  851. package/package.json +1 -1
  852. package/themes/avocado.js +1 -1
  853. package/themes/avocado.src.js +1 -1
  854. package/themes/brand-dark.js +15 -0
  855. package/themes/brand-dark.js.map +1 -0
  856. package/themes/brand-dark.src.js +328 -0
  857. package/themes/brand-light.js +15 -0
  858. package/themes/brand-light.js.map +1 -0
  859. package/themes/brand-light.src.js +294 -0
  860. package/themes/dark-blue.js +1 -1
  861. package/themes/dark-blue.src.js +1 -1
  862. package/themes/dark-green.js +1 -1
  863. package/themes/dark-green.src.js +1 -1
  864. package/themes/dark-unica.js +1 -1
  865. package/themes/dark-unica.js.map +1 -1
  866. package/themes/dark-unica.src.js +5 -3
  867. package/themes/gray.js +1 -1
  868. package/themes/gray.src.js +1 -1
  869. package/themes/grid-light.js +1 -1
  870. package/themes/grid-light.js.map +1 -1
  871. package/themes/grid-light.src.js +5 -3
  872. package/themes/grid.js +1 -1
  873. package/themes/grid.js.map +1 -1
  874. package/themes/grid.src.js +5 -3
  875. package/themes/high-contrast-dark.js +1 -1
  876. package/themes/high-contrast-dark.src.js +1 -1
  877. package/themes/high-contrast-light.js +1 -1
  878. package/themes/high-contrast-light.src.js +1 -1
  879. package/themes/sand-signika.js +1 -1
  880. package/themes/sand-signika.src.js +1 -1
  881. package/themes/skies.js +1 -1
  882. package/themes/skies.src.js +1 -1
  883. package/themes/sunset.js +1 -1
  884. package/themes/sunset.src.js +1 -1
  885. package/es-modules/Core/Axis/MapAxis.js +0 -157
  886. package/es-modules/Core/Color/Palette.js +0 -82
  887. package/es-modules/Extensions/Sonification/InstrumentDefinitions.js +0 -32
  888. package/es-modules/Mixins/ColorSeries.js +0 -77
  889. package/es-modules/Mixins/DerivedSeries.js +0 -118
  890. package/es-modules/Mixins/DrawPoint.js +0 -81
  891. package/es-modules/Mixins/IndicatorRequired.js +0 -56
  892. package/es-modules/Mixins/MultipleLines.js +0 -181
  893. package/es-modules/Mixins/Navigation.js +0 -54
  894. package/es-modules/Mixins/NelderMead.js +0 -132
  895. package/es-modules/Mixins/Polygon.js +0 -259
  896. package/es-modules/Mixins/ReduceArray.js +0 -54
@@ -0,0 +1,101 @@
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
+ * - Sebastian Bochan
12
+ * - Gøran Slettemark
13
+ *
14
+ * */
15
+ 'use strict';
16
+ import DataTable from '../DataTable.js';
17
+ import U from '../../Core/Utilities.js';
18
+ var addEvent = U.addEvent, fireEvent = U.fireEvent, uniqueKey = U.uniqueKey;
19
+ /* *
20
+ *
21
+ * Class
22
+ *
23
+ * */
24
+ /**
25
+ * Abstract class providing an interface and basic methods for a DataParser
26
+ *
27
+ * @private
28
+ */
29
+ var DataParser = /** @class */ (function () {
30
+ function DataParser() {
31
+ }
32
+ /* *
33
+ *
34
+ * Static Functions
35
+ *
36
+ * */
37
+ /**
38
+ * Converts an array of columns to a table instance. Second dimension of the
39
+ * array are the row cells.
40
+ *
41
+ * @param {Array<DataTable.Column>} [columns]
42
+ * Array to convert.
43
+ *
44
+ * @param {Array<string>} [headers]
45
+ * Column names to use.
46
+ *
47
+ * @return {DataTable}
48
+ * Table instance from the arrays.
49
+ */
50
+ DataParser.getTableFromColumns = function (columns, headers) {
51
+ if (columns === void 0) { columns = []; }
52
+ if (headers === void 0) { headers = []; }
53
+ var table = new DataTable();
54
+ for (var i = 0, iEnd = Math.max(headers.length, columns.length); i < iEnd; ++i) {
55
+ table.setColumn(headers[i] || "" + i, columns[i]);
56
+ }
57
+ return table;
58
+ };
59
+ /**
60
+ * Emits an event on the DataParser instance.
61
+ *
62
+ * @param {DataParser.Event} [e]
63
+ * Event object containing additional event data
64
+ */
65
+ DataParser.prototype.emit = function (e) {
66
+ fireEvent(this, e.type, e);
67
+ };
68
+ /**
69
+ * Registers a callback for a specific parser event.
70
+ *
71
+ * @param {string} type
72
+ * Event type as a string.
73
+ *
74
+ * @param {DataEventEmitter.EventCallback} callback
75
+ * Function to register for an modifier callback.
76
+ *
77
+ * @return {Function}
78
+ * Function to unregister callback from the modifier event.
79
+ */
80
+ DataParser.prototype.on = function (type, callback) {
81
+ return addEvent(this, type, callback);
82
+ };
83
+ /* *
84
+ *
85
+ * Static Properties
86
+ *
87
+ * */
88
+ /**
89
+ * Default options
90
+ */
91
+ DataParser.defaultOptions = {
92
+ startColumn: 0,
93
+ endColumn: Number.MAX_VALUE,
94
+ startRow: 0,
95
+ endRow: Number.MAX_VALUE,
96
+ firstRowAsNames: true,
97
+ switchRowsAndColumns: false
98
+ };
99
+ return DataParser;
100
+ }());
101
+ export default DataParser;
@@ -0,0 +1,223 @@
1
+ /* *
2
+ *
3
+ * (c) 2012-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
+ * - Torstein Hønsi
11
+ * - Gøran Slettemark
12
+ * - Wojciech Chmiel
13
+ * - Sophie Bremer
14
+ *
15
+ * */
16
+ 'use strict';
17
+ var __extends = (this && this.__extends) || (function () {
18
+ var extendStatics = function (d, b) {
19
+ extendStatics = Object.setPrototypeOf ||
20
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
21
+ function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
22
+ return extendStatics(d, b);
23
+ };
24
+ return function (d, b) {
25
+ extendStatics(d, b);
26
+ function __() { this.constructor = d; }
27
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
28
+ };
29
+ })();
30
+ var __assign = (this && this.__assign) || function () {
31
+ __assign = Object.assign || function(t) {
32
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
33
+ s = arguments[i];
34
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
35
+ t[p] = s[p];
36
+ }
37
+ return t;
38
+ };
39
+ return __assign.apply(this, arguments);
40
+ };
41
+ import DataParser from './DataParser.js';
42
+ import DataConverter from '../DataConverter.js';
43
+ import U from '../../Core/Utilities.js';
44
+ var merge = U.merge, uniqueKey = U.uniqueKey;
45
+ /* eslint-disable no-invalid-this, require-jsdoc, valid-jsdoc */
46
+ /* *
47
+ *
48
+ * Class
49
+ *
50
+ * */
51
+ /**
52
+ * Handles parsing and transformation of an Google Sheets to a table.
53
+ *
54
+ * @private
55
+ */
56
+ var GoogleSheetsParser = /** @class */ (function (_super) {
57
+ __extends(GoogleSheetsParser, _super);
58
+ /* *
59
+ *
60
+ * Constructor
61
+ *
62
+ * */
63
+ /**
64
+ * Constructs an instance of the GoogleSheetsParser.
65
+ *
66
+ * @param {GoogleSheetsParser.OptionsType} [options]
67
+ * Options for the Google Sheets parser.
68
+ *
69
+ * @param {DataConverter} converter
70
+ * Parser data converter.
71
+ */
72
+ function GoogleSheetsParser(options, converter) {
73
+ var _this = _super.call(this) || this;
74
+ _this.columns = [];
75
+ _this.headers = [];
76
+ _this.options = merge(GoogleSheetsParser.defaultOptions, options);
77
+ _this.converter = converter || new DataConverter();
78
+ return _this;
79
+ }
80
+ /* *
81
+ *
82
+ * Functions
83
+ *
84
+ * */
85
+ GoogleSheetsParser.prototype.getSheetColumns = function (json) {
86
+ var parser = this, _a = parser.options, startColumn = _a.startColumn, endColumn = _a.endColumn, startRow = _a.startRow, endRow = _a.endRow, columns = [], cells = json.feed.entry, cellCount = (cells || []).length;
87
+ var cell, colCount = 0, rowCount = 0, val, gr, gc, cellInner, i, j;
88
+ // First, find the total number of columns and rows that
89
+ // are actually filled with data
90
+ for (i = 0; i < cellCount; i++) {
91
+ cell = cells[i];
92
+ colCount = Math.max(colCount, cell.gs$cell.col);
93
+ rowCount = Math.max(rowCount, cell.gs$cell.row);
94
+ }
95
+ // Set up arrays containing the column data
96
+ for (i = 0; i < colCount; i++) {
97
+ if (i >= startColumn && i <= endColumn) {
98
+ // Create new columns with the length of either
99
+ // end-start or rowCount
100
+ columns[i - startColumn] = [];
101
+ }
102
+ }
103
+ // Loop over the cells and assign the value to the right
104
+ // place in the column arrays
105
+ for (i = 0; i < cellCount; i++) {
106
+ cell = cells[i];
107
+ gr = cell.gs$cell.row - 1; // rows start at 1
108
+ gc = cell.gs$cell.col - 1; // columns start at 1
109
+ // If both row and col falls inside start and end set the
110
+ // transposed cell value in the newly created columns
111
+ if (gc >= startColumn && gc <= endColumn &&
112
+ gr >= startRow && gr <= endRow) {
113
+ cellInner = cell.gs$cell || cell.content;
114
+ val = null;
115
+ if (cellInner.numericValue) {
116
+ if (cellInner.$t.indexOf('/') >= 0 || (cellInner.$t.indexOf('-') >= 0 &&
117
+ cellInner.$t.indexOf('.') === -1)) {
118
+ // This is a date - for future reference.
119
+ val = cellInner.$t;
120
+ }
121
+ else if (cellInner.$t.indexOf('%') > 0) {
122
+ // Percentage
123
+ val = parseFloat(cellInner.numericValue) * 100;
124
+ }
125
+ else {
126
+ val = parseFloat(cellInner.numericValue);
127
+ }
128
+ }
129
+ else if (cellInner.$t && cellInner.$t.length) {
130
+ val = cellInner.$t;
131
+ }
132
+ columns[gc - startColumn][gr - startRow] = val;
133
+ }
134
+ }
135
+ // Insert null for empty spreadsheet cells (#5298)
136
+ for (i = 0; i < colCount; i++) {
137
+ var column = columns[i];
138
+ // TODO: should this check be necessary?
139
+ if (column.length) {
140
+ for (i = 0; i < column.length; i++) {
141
+ if (typeof column[i] === 'undefined') {
142
+ column[i] = null;
143
+ }
144
+ }
145
+ }
146
+ }
147
+ return columns;
148
+ };
149
+ /**
150
+ * Initiates the parsing of the Google Sheet
151
+ *
152
+ * @param {GoogleSheetsParser.OptionsType}[options]
153
+ * Options for the parser
154
+ *
155
+ * @param {DataEventEmitter.EventDetail} [eventDetail]
156
+ * Custom information for pending events.
157
+ *
158
+ * @emits GoogleSheetsParser#parse
159
+ * @emits GoogleSheetsParser#afterParse
160
+ */
161
+ GoogleSheetsParser.prototype.parse = function (jsonProp, eventDetail) {
162
+ var parser = this, parserOptions = merge(true, parser.options, { json: jsonProp }), converter = parser.converter, json = parserOptions.json, cells = json.feed.entry, headers = parser.headers;
163
+ var column;
164
+ if (!cells || cells.length === 0) {
165
+ return false;
166
+ }
167
+ parser.headers = [];
168
+ parser.columns = [];
169
+ parser.emit({
170
+ type: 'parse',
171
+ columns: parser.columns,
172
+ detail: eventDetail,
173
+ headers: parser.headers
174
+ });
175
+ parser.columns = parser.getSheetColumns(json);
176
+ for (var i = 0, iEnd = parser.columns.length; i < iEnd; i++) {
177
+ column = parser.columns[i];
178
+ parser.headers[i] = parserOptions.firstRowAsNames ?
179
+ column.splice(0, 1).toString() :
180
+ uniqueKey();
181
+ for (var j = 0, jEnd = column.length; j < jEnd; ++j) {
182
+ if (column[j] && typeof column[j] === 'string') {
183
+ var cellValue = converter.asGuessedType(column[j]);
184
+ if (cellValue instanceof Date) {
185
+ cellValue = cellValue.getTime();
186
+ }
187
+ parser.columns[i][j] = cellValue;
188
+ }
189
+ }
190
+ }
191
+ parser.emit({
192
+ type: 'afterParse',
193
+ columns: parser.columns,
194
+ detail: eventDetail,
195
+ headers: parser.headers
196
+ });
197
+ };
198
+ /**
199
+ * Handles converting the parsed data to a table.
200
+ *
201
+ * @return {DataTable}
202
+ * Table from the parsed Google Sheet
203
+ */
204
+ GoogleSheetsParser.prototype.getTable = function () {
205
+ return DataParser.getTableFromColumns(this.columns, this.headers);
206
+ };
207
+ /* *
208
+ *
209
+ * Static Properties
210
+ *
211
+ * */
212
+ /**
213
+ * Default options
214
+ */
215
+ GoogleSheetsParser.defaultOptions = __assign(__assign({}, DataParser.defaultOptions), { json: {} });
216
+ return GoogleSheetsParser;
217
+ }(DataParser));
218
+ /* *
219
+ *
220
+ * Export
221
+ *
222
+ * */
223
+ export default GoogleSheetsParser;
@@ -0,0 +1,213 @@
1
+ /* *
2
+ *
3
+ * (c) 2012-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
+ * - Torstein Hønsi
11
+ * - Gøran Slettemark
12
+ * - Wojciech Chmiel
13
+ * - Sophie Bremer
14
+ *
15
+ * */
16
+ 'use strict';
17
+ var __extends = (this && this.__extends) || (function () {
18
+ var extendStatics = function (d, b) {
19
+ extendStatics = Object.setPrototypeOf ||
20
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
21
+ function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
22
+ return extendStatics(d, b);
23
+ };
24
+ return function (d, b) {
25
+ extendStatics(d, b);
26
+ function __() { this.constructor = d; }
27
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
28
+ };
29
+ })();
30
+ var __assign = (this && this.__assign) || function () {
31
+ __assign = Object.assign || function(t) {
32
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
33
+ s = arguments[i];
34
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
35
+ t[p] = s[p];
36
+ }
37
+ return t;
38
+ };
39
+ return __assign.apply(this, arguments);
40
+ };
41
+ import DataParser from './DataParser.js';
42
+ import DataConverter from '../DataConverter.js';
43
+ import U from '../../Core/Utilities.js';
44
+ var merge = U.merge;
45
+ /* *
46
+ *
47
+ * Class
48
+ *
49
+ * */
50
+ /**
51
+ * Handles parsing and transformation of an HTML table to a table.
52
+ *
53
+ * @private
54
+ */
55
+ var HTMLTableParser = /** @class */ (function (_super) {
56
+ __extends(HTMLTableParser, _super);
57
+ /* *
58
+ *
59
+ * Constructor
60
+ *
61
+ * */
62
+ /**
63
+ * Constructs an instance of the HTML table parser.
64
+ *
65
+ * @param {HTMLTableParser.OptionsType} [options]
66
+ * Options for the CSV parser.
67
+ *
68
+ * @param {HTMLElement | null} tableElement
69
+ * The HTML table to parse
70
+ *
71
+ * @param {DataConverter} converter
72
+ * Parser data converter.
73
+ */
74
+ function HTMLTableParser(options, tableElement, converter) {
75
+ if (tableElement === void 0) { tableElement = null; }
76
+ var _this = _super.call(this) || this;
77
+ _this.columns = [];
78
+ _this.headers = [];
79
+ _this.options = merge(HTMLTableParser.defaultOptions, options);
80
+ _this.converter = converter || new DataConverter();
81
+ if (tableElement) {
82
+ _this.tableElement = tableElement;
83
+ _this.tableElementID = tableElement.id;
84
+ }
85
+ else if (options && options.tableHTML) {
86
+ _this.tableElement = options.tableHTML;
87
+ _this.tableElementID = options.tableHTML.id;
88
+ }
89
+ return _this;
90
+ }
91
+ /* *
92
+ *
93
+ * Functions
94
+ *
95
+ * */
96
+ /**
97
+ * Initiates the parsing of the HTML table
98
+ *
99
+ * @param {HTMLTableParser.OptionsType}[options]
100
+ * Options for the parser
101
+ *
102
+ * @param {DataEventEmitter.EventDetail} [eventDetail]
103
+ * Custom information for pending events.
104
+ *
105
+ * @emits CSVDataParser#parse
106
+ * @emits CSVDataParser#afterParse
107
+ * @emits HTMLTableParser#parseError
108
+ */
109
+ HTMLTableParser.prototype.parse = function (options, eventDetail) {
110
+ var parser = this, converter = this.converter, columns = [], headers = [], parseOptions = merge(parser.options, options), endRow = parseOptions.endRow, startColumn = parseOptions.startColumn, endColumn = parseOptions.endColumn, firstRowAsNames = parseOptions.firstRowAsNames, tableHTML = parseOptions.tableHTML || this.tableElement;
111
+ if (!(tableHTML instanceof HTMLElement)) {
112
+ parser.emit({
113
+ type: 'parseError',
114
+ columns: columns,
115
+ detail: eventDetail,
116
+ headers: headers,
117
+ error: 'Not a valid HTML Table'
118
+ });
119
+ return;
120
+ }
121
+ parser.tableElement = this.tableElement;
122
+ parser.tableElementID = tableHTML.id;
123
+ this.emit({
124
+ type: 'parse',
125
+ columns: parser.columns,
126
+ detail: eventDetail,
127
+ headers: parser.headers
128
+ });
129
+ var rows = tableHTML.getElementsByTagName('tr'), rowsCount = rows.length;
130
+ var rowIndex = 0, item, startRow = parseOptions.startRow;
131
+ // Insert headers from the first row
132
+ if (firstRowAsNames && rowsCount) {
133
+ var items = rows[0].children, itemsLength = items.length;
134
+ for (var i = startColumn; i < itemsLength; i++) {
135
+ if (i > endColumn) {
136
+ break;
137
+ }
138
+ item = items[i];
139
+ if (item.tagName === 'TD' ||
140
+ item.tagName === 'TH') {
141
+ headers.push(item.innerHTML);
142
+ }
143
+ }
144
+ startRow++;
145
+ }
146
+ while (rowIndex < rowsCount) {
147
+ if (rowIndex >= startRow && rowIndex <= endRow) {
148
+ var columnsInRow = rows[rowIndex].children, columnsInRowLength = columnsInRow.length;
149
+ var columnIndex = 0;
150
+ while (columnIndex < columnsInRowLength) {
151
+ var relativeColumnIndex = columnIndex - startColumn, row = columns[relativeColumnIndex];
152
+ item = columnsInRow[columnIndex];
153
+ if ((item.tagName === 'TD' ||
154
+ item.tagName === 'TH') &&
155
+ (columnIndex >= startColumn &&
156
+ columnIndex <= endColumn)) {
157
+ if (!columns[relativeColumnIndex]) {
158
+ columns[relativeColumnIndex] = [];
159
+ }
160
+ var cellValue = converter.asGuessedType(item.innerHTML);
161
+ if (cellValue instanceof Date) {
162
+ cellValue = cellValue.getTime();
163
+ }
164
+ columns[relativeColumnIndex][rowIndex - startRow] = cellValue;
165
+ // Loop over all previous indices and make sure
166
+ // they are nulls, not undefined.
167
+ var i = 1;
168
+ while (rowIndex - startRow >= i &&
169
+ row[rowIndex - startRow - i] === void 0) {
170
+ row[rowIndex - startRow - i] = null;
171
+ i++;
172
+ }
173
+ }
174
+ columnIndex++;
175
+ }
176
+ }
177
+ rowIndex++;
178
+ }
179
+ this.columns = columns;
180
+ this.headers = headers;
181
+ this.emit({
182
+ type: 'afterParse',
183
+ columns: columns,
184
+ detail: eventDetail,
185
+ headers: headers
186
+ });
187
+ };
188
+ /**
189
+ * Handles converting the parsed data to a table.
190
+ *
191
+ * @return {DataTable}
192
+ * Table from the parsed HTML table
193
+ */
194
+ HTMLTableParser.prototype.getTable = function () {
195
+ return DataParser.getTableFromColumns(this.columns, this.headers);
196
+ };
197
+ /* *
198
+ *
199
+ * Static Properties
200
+ *
201
+ * */
202
+ /**
203
+ * Default options
204
+ */
205
+ HTMLTableParser.defaultOptions = __assign({}, DataParser.defaultOptions);
206
+ return HTMLTableParser;
207
+ }(DataParser));
208
+ /* *
209
+ *
210
+ * Export
211
+ *
212
+ * */
213
+ export default HTMLTableParser;