highcharts 9.3.3 → 10.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (917) hide show
  1. package/bower.json +1 -1
  2. package/css/highcharts.css +19 -2
  3. package/css/highcharts.scss +17 -2
  4. package/css/themes/dark-unica.css +19 -2
  5. package/css/themes/grid-light.css +19 -2
  6. package/css/themes/sand-signika.css +19 -2
  7. package/es-modules/Accessibility/A11yI18n.js +4 -4
  8. package/es-modules/Accessibility/Accessibility.js +3 -4
  9. package/es-modules/Accessibility/Components/AnnotationsA11y.js +3 -3
  10. package/es-modules/Accessibility/Components/ContainerComponent.js +11 -10
  11. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +18 -11
  12. package/es-modules/Accessibility/Components/LegendComponent.js +34 -26
  13. package/es-modules/Accessibility/Components/MenuComponent.js +7 -6
  14. package/es-modules/Accessibility/Components/RangeSelectorComponent.js +5 -3
  15. package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +7 -6
  16. package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +1 -1
  17. package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +3 -2
  18. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +34 -18
  19. package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +96 -39
  20. package/es-modules/Accessibility/Components/ZoomComponent.js +43 -80
  21. package/es-modules/Accessibility/FocusBorder.js +6 -5
  22. package/es-modules/Accessibility/HighContrastMode.js +3 -3
  23. package/es-modules/Accessibility/KeyboardNavigation.js +113 -98
  24. package/es-modules/Accessibility/Options/{Options.js → A11yDefaults.js} +72 -4
  25. package/es-modules/Accessibility/Options/DeprecatedOptions.js +12 -2
  26. package/es-modules/Accessibility/Options/{LangOptions.js → LangDefaults.js} +46 -31
  27. package/es-modules/Accessibility/ProxyElement.js +14 -6
  28. package/es-modules/Accessibility/ProxyProvider.js +10 -2
  29. package/es-modules/Accessibility/Utils/ChartUtilities.js +10 -5
  30. package/es-modules/Core/Animation/Fx.js +1 -1
  31. package/es-modules/Core/Axis/Axis.js +197 -91
  32. package/es-modules/Core/Axis/AxisDefaults.js +8 -8
  33. package/es-modules/Core/Axis/Color/ColorAxis.js +26 -7
  34. package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +3 -3
  35. package/es-modules/Core/Axis/DateTimeAxis.js +5 -3
  36. package/es-modules/Core/Axis/GridAxis.js +821 -821
  37. package/es-modules/Core/Axis/LogarithmicAxis.js +1 -1
  38. package/es-modules/Core/Axis/OrdinalAxis.js +26 -3
  39. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +3 -3
  40. package/es-modules/Core/Axis/StackingAxis.js +0 -1
  41. package/es-modules/Core/Axis/Tick.js +22 -18
  42. package/es-modules/Core/Axis/TreeGridTick.js +13 -2
  43. package/es-modules/Core/Axis/ZAxis.js +3 -1
  44. package/es-modules/Core/Chart/Chart.js +27 -8
  45. package/es-modules/Core/Chart/Chart3D.js +1 -11
  46. package/es-modules/Core/Chart/ChartDefaults.js +46 -14
  47. package/es-modules/Core/Chart/GanttChart.js +3 -1
  48. package/es-modules/Core/Chart/MapChart.js +4 -7
  49. package/es-modules/Core/Chart/StockChart.js +7 -5
  50. package/es-modules/Core/Color/Color.js +1 -1
  51. package/es-modules/Core/DefaultOptions.js +19 -15
  52. package/es-modules/Core/Geometry/PolygonClip.js +84 -0
  53. package/es-modules/Core/Globals.js +4 -18
  54. package/es-modules/Core/HttpUtilities.js +46 -39
  55. package/es-modules/Core/Legend/Legend.js +14 -12
  56. package/es-modules/Core/MSPointer.js +3 -1
  57. package/es-modules/Core/Navigator.js +16 -13
  58. package/es-modules/Core/Pointer.js +16 -12
  59. package/es-modules/Core/Renderer/HTML/AST.js +68 -8
  60. package/es-modules/Core/Renderer/HTML/HTMLElement.js +3 -1
  61. package/es-modules/Core/Renderer/HTML/HTMLRenderer.js +3 -1
  62. package/es-modules/Core/Renderer/SVG/SVGElement.js +54 -70
  63. package/es-modules/Core/Renderer/SVG/SVGElement3D.js +17 -5
  64. package/es-modules/Core/Renderer/SVG/SVGLabel.js +3 -1
  65. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +60 -55
  66. package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +4 -2
  67. package/es-modules/Core/Renderer/SVG/TextBuilder.js +12 -10
  68. package/es-modules/Core/Scrollbar.js +9 -5
  69. package/es-modules/Core/ScrollbarDefaults.js +8 -8
  70. package/es-modules/Core/Series/DataLabel.js +67 -38
  71. package/es-modules/Core/Series/Point.js +11 -2
  72. package/es-modules/Core/Series/Series.js +57 -27
  73. package/es-modules/Core/Series/Series3D.js +3 -1
  74. package/es-modules/Core/Series/SeriesDefaults.js +7 -4
  75. package/es-modules/Core/Time.js +6 -7
  76. package/es-modules/Core/Tooltip.js +17 -34
  77. package/es-modules/Core/Utilities.js +33 -33
  78. package/es-modules/Data/DataConverter.js +1 -1
  79. package/es-modules/Data/DataTable.js +12 -10
  80. package/es-modules/Data/Modifiers/ChainModifier.js +3 -1
  81. package/es-modules/Data/Modifiers/GroupModifier.js +3 -1
  82. package/es-modules/Data/Modifiers/InvertModifier.js +9 -7
  83. package/es-modules/Data/Modifiers/RangeModifier.js +3 -1
  84. package/es-modules/Data/Modifiers/SeriesPointsModifier.js +3 -1
  85. package/es-modules/Data/Modifiers/SortModifier.js +3 -1
  86. package/es-modules/Data/Parsers/CSVParser.js +3 -1
  87. package/es-modules/Data/Parsers/DataParser.js +1 -1
  88. package/es-modules/Data/Parsers/GoogleSheetsParser.js +3 -2
  89. package/es-modules/Data/Parsers/HTMLTableParser.js +3 -1
  90. package/es-modules/Data/Stores/CSVStore.js +8 -5
  91. package/es-modules/Data/Stores/GoogleSheetsStore.js +3 -1
  92. package/es-modules/Data/Stores/HTMLTableStore.js +3 -1
  93. package/es-modules/Extensions/Annotations/{Annotations.js → Annotation.js} +30 -11
  94. package/es-modules/Extensions/Annotations/AnnotationsDefaults.js +0 -0
  95. package/es-modules/Extensions/Annotations/ControlPoint.js +1 -1
  96. package/es-modules/Extensions/Annotations/Controllables/ControllableEllipse.js +5 -2
  97. package/es-modules/Extensions/Annotations/MockPoint.js +1 -1
  98. package/es-modules/Extensions/Annotations/NavigationBindings.js +16 -5
  99. package/es-modules/Extensions/Annotations/Popup.js +2 -2
  100. package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +18 -12
  101. package/es-modules/Extensions/Annotations/Types/CrookedLine.js +4 -2
  102. package/es-modules/Extensions/Annotations/Types/ElliottWave.js +4 -2
  103. package/es-modules/Extensions/Annotations/Types/Fibonacci.js +5 -3
  104. package/es-modules/Extensions/Annotations/Types/FibonacciTimeZones.js +4 -2
  105. package/es-modules/Extensions/Annotations/Types/InfinityLine.js +4 -2
  106. package/es-modules/Extensions/Annotations/Types/Measure.js +4 -2
  107. package/es-modules/Extensions/Annotations/Types/Pitchfork.js +4 -2
  108. package/es-modules/Extensions/Annotations/Types/TimeCycles.js +4 -2
  109. package/es-modules/Extensions/Annotations/Types/Tunnel.js +5 -2
  110. package/es-modules/Extensions/Annotations/Types/VerticalLine.js +4 -2
  111. package/es-modules/Extensions/Boost/BoostAttach.js +5 -1
  112. package/es-modules/Extensions/Boost/BoostInit.js +9 -3
  113. package/es-modules/Extensions/Boost/BoostOptions.js +26 -0
  114. package/es-modules/Extensions/Boost/Boostables.js +1 -0
  115. package/es-modules/Extensions/Boost/WGLRenderer.js +48 -37
  116. package/es-modules/Extensions/Boost/WGLShader.js +4 -3
  117. package/es-modules/Extensions/BoostCanvas.js +11 -5
  118. package/es-modules/Extensions/Breadcrumbs.js +898 -0
  119. package/es-modules/Extensions/CurrentDateIndication.js +1 -1
  120. package/es-modules/Extensions/Data.js +661 -613
  121. package/es-modules/Extensions/DataGrouping.js +8 -3
  122. package/es-modules/Extensions/Debugger/ErrorMessages.js +4 -0
  123. package/es-modules/Extensions/DownloadURL.js +3 -3
  124. package/es-modules/Extensions/DragPanes.js +1 -1
  125. package/es-modules/Extensions/DraggablePoints.js +9 -7
  126. package/es-modules/Extensions/Drilldown.js +152 -97
  127. package/es-modules/Extensions/ExportData.js +58 -9
  128. package/es-modules/Extensions/Exporting/Exporting.js +34 -23
  129. package/es-modules/Extensions/Exporting/ExportingDefaults.js +56 -8
  130. package/es-modules/Extensions/FullScreen.js +121 -54
  131. package/es-modules/Extensions/GeoJSON.js +149 -125
  132. package/es-modules/Extensions/MarkerClusters.js +36 -22
  133. package/es-modules/Extensions/NoDataToDisplay.js +1 -1
  134. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +110 -22
  135. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
  136. package/es-modules/Extensions/Oldie/Oldie.js +2 -2
  137. package/es-modules/Extensions/OverlappingDataLabels.js +5 -4
  138. package/es-modules/Extensions/Pane.js +3 -3
  139. package/es-modules/Extensions/ParallelCoordinates.js +1 -1
  140. package/es-modules/Extensions/PatternFill.js +14 -2
  141. package/es-modules/Extensions/RangeSelector.js +29 -18
  142. package/es-modules/Extensions/ScrollablePlotArea.js +8 -4
  143. package/es-modules/Extensions/{SeriesLabel.js → SeriesLabel/SeriesLabel.js} +262 -384
  144. package/es-modules/Extensions/SeriesLabel/SeriesLabelDefaults.js +124 -0
  145. package/es-modules/Extensions/SeriesLabel/SeriesLabelUtilities.js +67 -0
  146. package/es-modules/Extensions/Sonification/Earcon.js +1 -1
  147. package/es-modules/Extensions/Stacking.js +5 -4
  148. package/es-modules/Extensions/Themes/HighContrastDark.js +10 -10
  149. package/es-modules/Extensions/Themes/HighContrastLight.js +10 -10
  150. package/es-modules/Maps/MapNavigation.js +49 -12
  151. package/es-modules/Maps/MapPointer.js +16 -0
  152. package/es-modules/Maps/MapUtilities.js +56 -0
  153. package/es-modules/Maps/MapView.js +619 -137
  154. package/es-modules/Maps/MapViewInsetsOptionsDefault.js +148 -0
  155. package/es-modules/Maps/MapViewOptionsDefault.js +60 -20
  156. package/es-modules/Maps/Projection.js +182 -88
  157. package/es-modules/Maps/Projections/EqualEarth.js +15 -6
  158. package/es-modules/Maps/Projections/LambertConformalConic.js +27 -19
  159. package/es-modules/Maps/Projections/Miller.js +23 -10
  160. package/es-modules/Maps/Projections/Orthographic.js +21 -10
  161. package/es-modules/Maps/Projections/WebMercator.js +25 -13
  162. package/es-modules/Series/ArcDiagram/ArcDiagramPoint.js +79 -0
  163. package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +591 -0
  164. package/es-modules/Series/Area/AreaSeries.js +21 -14
  165. package/es-modules/Series/AreaRange/AreaRangePoint.js +24 -11
  166. package/es-modules/Series/AreaRange/AreaRangeSeries.js +154 -147
  167. package/es-modules/Series/AreaSpline/AreaSplineSeries.js +45 -41
  168. package/es-modules/Series/AreaSplineRange/AreaSplineRangeSeries.js +43 -43
  169. package/es-modules/Series/Bar/BarSeries.js +3 -1
  170. package/es-modules/Series/Bellcurve/BellcurveSeries.js +3 -1
  171. package/es-modules/Series/BoxPlot/BoxPlotSeries.js +4 -2
  172. package/es-modules/Series/Bubble/BubbleLegendDefaults.js +1 -1
  173. package/es-modules/Series/Bubble/BubblePoint.js +3 -1
  174. package/es-modules/Series/Bubble/BubbleSeries.js +15 -6
  175. package/es-modules/Series/Bullet/BulletPoint.js +3 -1
  176. package/es-modules/Series/Bullet/BulletSeries.js +4 -3
  177. package/es-modules/Series/Candlestick/CandlestickSeries.js +5 -3
  178. package/es-modules/Series/CenteredUtilities.js +8 -2
  179. package/es-modules/Series/ColorMapComposition.js +111 -0
  180. package/es-modules/Series/Column/ColumnSeries.js +10 -7
  181. package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +3 -1
  182. package/es-modules/Series/ColumnRange/ColumnRangePoint.js +17 -13
  183. package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +60 -57
  184. package/es-modules/Series/Cylinder/CylinderPoint.js +3 -1
  185. package/es-modules/Series/Cylinder/CylinderSeries.js +3 -1
  186. package/es-modules/Series/DataModifyComposition.js +1 -0
  187. package/es-modules/Series/DependencyWheel/DependencyWheelPoint.js +3 -1
  188. package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +5 -3
  189. package/es-modules/Series/DotPlot/DotPlotSeries.js +3 -1
  190. package/es-modules/Series/DrawPointUtilities.js +87 -0
  191. package/es-modules/Series/Dumbbell/DumbbellPoint.js +3 -1
  192. package/es-modules/Series/Dumbbell/DumbbellSeries.js +4 -2
  193. package/es-modules/Series/ErrorBar/ErrorBarSeries.js +4 -2
  194. package/es-modules/Series/Flags/FlagsPoint.js +4 -1
  195. package/es-modules/Series/Flags/FlagsSeries.js +13 -16
  196. package/es-modules/Series/Funnel/FunnelSeries.js +5 -3
  197. package/es-modules/Series/Funnel3D/Funnel3DPoint.js +3 -1
  198. package/es-modules/Series/Funnel3D/Funnel3DSeries.js +3 -1
  199. package/es-modules/Series/Gantt/GanttPoint.js +3 -1
  200. package/es-modules/Series/Gantt/GanttSeries.js +3 -1
  201. package/es-modules/Series/Gauge/GaugePoint.js +3 -1
  202. package/es-modules/Series/Gauge/GaugeSeries.js +196 -174
  203. package/es-modules/Series/HLC/HLCPoint.js +3 -1
  204. package/es-modules/Series/HLC/HLCSeries.js +4 -2
  205. package/es-modules/Series/Heatmap/HeatmapPoint.js +7 -5
  206. package/es-modules/Series/Heatmap/HeatmapSeries.js +29 -33
  207. package/es-modules/Series/HeikinAshi/HeikinAshiPoint.js +3 -1
  208. package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +3 -1
  209. package/es-modules/Series/Histogram/HistogramSeries.js +3 -1
  210. package/es-modules/Series/HollowCandlestick/HollowCandlestickPoint.js +3 -1
  211. package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +11 -9
  212. package/es-modules/Series/Item/ItemPoint.js +3 -1
  213. package/es-modules/Series/Item/ItemSeries.js +3 -1
  214. package/es-modules/Series/Line/LineSeries.js +4 -2
  215. package/es-modules/Series/Lollipop/LollipopPoint.js +3 -1
  216. package/es-modules/Series/Lollipop/LollipopSeries.js +4 -2
  217. package/es-modules/Series/Map/MapPoint.js +32 -7
  218. package/es-modules/Series/Map/MapSeries.js +298 -189
  219. package/es-modules/Series/MapBubble/MapBubblePoint.js +19 -25
  220. package/es-modules/Series/MapBubble/MapBubbleSeries.js +61 -2
  221. package/es-modules/Series/MapLine/MapLineSeries.js +18 -1
  222. package/es-modules/Series/MapPoint/MapPointPoint.js +6 -10
  223. package/es-modules/Series/MapPoint/MapPointSeries.js +50 -16
  224. package/es-modules/Series/Networkgraph/Networkgraph.js +3 -1
  225. package/es-modules/Series/NodesComposition.js +101 -49
  226. package/es-modules/Series/OHLC/OHLCPoint.js +3 -1
  227. package/es-modules/Series/OHLC/OHLCSeries.js +10 -1
  228. package/es-modules/Series/Organization/OrganizationPoint.js +71 -3
  229. package/es-modules/Series/Organization/OrganizationSeries.js +84 -28
  230. package/es-modules/Series/PackedBubble/PackedBubbleComposition.js +0 -2
  231. package/es-modules/Series/PackedBubble/PackedBubblePoint.js +3 -1
  232. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +3 -1
  233. package/es-modules/Series/ParetoSeries/ParetoSeries.js +3 -1
  234. package/es-modules/Series/Pie/PieDataLabel.js +4 -2
  235. package/es-modules/Series/Pie/PiePoint.js +15 -6
  236. package/es-modules/Series/Pie/PieSeries.js +51 -37
  237. package/es-modules/Series/Pie3D/Pie3DPoint.js +3 -1
  238. package/es-modules/Series/Pie3D/Pie3DSeries.js +22 -1
  239. package/es-modules/Series/PolarComposition.js +819 -0
  240. package/es-modules/Series/Polygon/PolygonSeries.js +3 -1
  241. package/es-modules/Series/Pyramid/PyramidSeries.js +3 -1
  242. package/es-modules/Series/Pyramid3D/Pyramid3DSeries.js +3 -1
  243. package/es-modules/Series/Sankey/SankeyColumnComposition.js +193 -0
  244. package/es-modules/Series/Sankey/SankeyPoint.js +40 -2
  245. package/es-modules/Series/Sankey/SankeySeries.js +35 -136
  246. package/es-modules/Series/Scatter/ScatterSeries.js +11 -6
  247. package/es-modules/Series/Scatter3D/Scatter3DPoint.js +3 -1
  248. package/es-modules/Series/Scatter3D/Scatter3DSeries.js +3 -1
  249. package/es-modules/Series/SeriesOnPointComposition.js +391 -0
  250. package/es-modules/Series/SolidGauge/SolidGaugeSeries.js +5 -3
  251. package/es-modules/Series/Spline/SplineSeries.js +13 -4
  252. package/es-modules/Series/Streamgraph/StreamgraphSeries.js +3 -1
  253. package/es-modules/Series/Sunburst/SunburstPoint.js +3 -3
  254. package/es-modules/Series/Sunburst/SunburstSeries.js +21 -5
  255. package/es-modules/Series/Tilemap/TilemapPoint.js +3 -1
  256. package/es-modules/Series/Tilemap/TilemapSeries.js +3 -1
  257. package/es-modules/Series/Timeline/TimelinePoint.js +3 -1
  258. package/es-modules/Series/Timeline/TimelineSeries.js +6 -4
  259. package/es-modules/Series/Treemap/TreemapPoint.js +8 -4
  260. package/es-modules/Series/Treemap/TreemapSeries.js +97 -87
  261. package/es-modules/Series/VariablePie/VariablePieSeries.js +3 -1
  262. package/es-modules/Series/Variwide/VariwidePoint.js +3 -1
  263. package/es-modules/Series/Variwide/VariwideSeries.js +3 -1
  264. package/es-modules/Series/Vector/VectorSeries.js +3 -1
  265. package/es-modules/Series/Venn/VennPoint.js +5 -5
  266. package/es-modules/Series/Venn/VennSeries.js +9 -6
  267. package/es-modules/Series/Waterfall/WaterfallPoint.js +3 -1
  268. package/es-modules/Series/Waterfall/WaterfallSeries.js +16 -12
  269. package/es-modules/Series/Windbarb/WindbarbPoint.js +3 -1
  270. package/es-modules/Series/Windbarb/WindbarbSeries.js +3 -1
  271. package/es-modules/Series/Wordcloud/WordcloudPoint.js +6 -6
  272. package/es-modules/Series/Wordcloud/WordcloudSeries.js +11 -8
  273. package/es-modules/Series/XRange/XRangePoint.js +3 -1
  274. package/es-modules/Series/XRange/XRangeSeries.js +3 -1
  275. package/es-modules/Stock/Indicators/ABands/ABandsIndicator.js +3 -1
  276. package/es-modules/Stock/Indicators/AD/ADIndicator.js +3 -1
  277. package/es-modules/Stock/Indicators/AO/AOIndicator.js +5 -3
  278. package/es-modules/Stock/Indicators/APO/APOIndicator.js +3 -1
  279. package/es-modules/Stock/Indicators/ATR/ATRIndicator.js +3 -1
  280. package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +3 -1
  281. package/es-modules/Stock/Indicators/AroonOscillator/AroonOscillatorIndicator.js +3 -1
  282. package/es-modules/Stock/Indicators/BB/BBIndicator.js +6 -4
  283. package/es-modules/Stock/Indicators/CCI/CCIIndicator.js +3 -1
  284. package/es-modules/Stock/Indicators/CMF/CMFIndicator.js +3 -1
  285. package/es-modules/Stock/Indicators/CMO/CMOIndicator.js +3 -1
  286. package/es-modules/Stock/Indicators/Chaikin/ChaikinIndicator.js +3 -1
  287. package/es-modules/Stock/Indicators/DEMA/DEMAIndicator.js +3 -1
  288. package/es-modules/Stock/Indicators/DMI/DMIIndicator.js +13 -7
  289. package/es-modules/Stock/Indicators/DPO/DPOIndicator.js +3 -1
  290. package/es-modules/Stock/Indicators/DisparityIndex/DisparityIndexIndicator.js +3 -1
  291. package/es-modules/Stock/Indicators/EMA/EMAIndicator.js +3 -1
  292. package/es-modules/Stock/Indicators/IKH/IKHIndicator.js +3 -1
  293. package/es-modules/Stock/Indicators/KeltnerChannels/KeltnerChannelsIndicator.js +3 -1
  294. package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +3 -1
  295. package/es-modules/Stock/Indicators/LinearRegression/LinearRegression.js +3 -1
  296. package/es-modules/Stock/Indicators/LinearRegressionAngle/LinearRegressionAngle.js +3 -1
  297. package/es-modules/Stock/Indicators/LinearRegressionIntercept/LinearRegressionIntercept.js +3 -1
  298. package/es-modules/Stock/Indicators/LinearRegressionSlopes/LinearRegressionSlopes.js +3 -1
  299. package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +26 -13
  300. package/es-modules/Stock/Indicators/MFI/MFIIndicator.js +3 -1
  301. package/es-modules/Stock/Indicators/Momentum/MomentumIndicator.js +3 -1
  302. package/es-modules/Stock/Indicators/MultipleLinesComposition.js +85 -95
  303. package/es-modules/Stock/Indicators/NATR/NATRIndicator.js +3 -1
  304. package/es-modules/Stock/Indicators/OBV/OBVIndicator.js +3 -1
  305. package/es-modules/Stock/Indicators/PC/PCIndicator.js +3 -1
  306. package/es-modules/Stock/Indicators/PPO/PPOIndicator.js +3 -1
  307. package/es-modules/Stock/Indicators/PSAR/PSARIndicator.js +3 -1
  308. package/es-modules/Stock/Indicators/PivotPoints/PivotPointsIndicator.js +3 -1
  309. package/es-modules/Stock/Indicators/PivotPoints/PivotPointsPoint.js +3 -1
  310. package/es-modules/Stock/Indicators/PriceEnvelopes/PriceEnvelopesIndicator.js +3 -1
  311. package/es-modules/Stock/Indicators/ROC/ROCIndicator.js +3 -1
  312. package/es-modules/Stock/Indicators/RSI/RSIIndicator.js +3 -1
  313. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +12 -3
  314. package/es-modules/Stock/Indicators/SlowStochastic/SlowStochasticIndicator.js +3 -1
  315. package/es-modules/Stock/Indicators/Stochastic/StochasticIndicator.js +3 -1
  316. package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +6 -4
  317. package/es-modules/Stock/Indicators/TEMA/TEMAIndicator.js +3 -1
  318. package/es-modules/Stock/Indicators/TRIX/TRIXIndicator.js +3 -1
  319. package/es-modules/Stock/Indicators/TrendLine/TrendLineIndicator.js +3 -1
  320. package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +3 -1
  321. package/es-modules/Stock/Indicators/VBP/VBPPoint.js +3 -1
  322. package/es-modules/Stock/Indicators/VWAP/VWAPIndicator.js +3 -1
  323. package/es-modules/Stock/Indicators/WMA/WMAIndicator.js +3 -1
  324. package/es-modules/Stock/Indicators/WilliamsR/WilliamsRIndicator.js +3 -1
  325. package/es-modules/Stock/Indicators/Zigzag/ZigzagIndicator.js +3 -1
  326. package/es-modules/Stock/StockToolsBindings.js +51 -43
  327. package/es-modules/Stock/StockToolsGui.js +1 -1
  328. package/es-modules/masters/highcharts-3d.src.js +1 -1
  329. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  330. package/es-modules/masters/highcharts-more.src.js +4 -4
  331. package/es-modules/masters/highcharts.src.js +1 -1
  332. package/es-modules/masters/highmaps.src.js +1 -1
  333. package/es-modules/masters/highstock.src.js +1 -1
  334. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  335. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  336. package/es-modules/masters/indicators/ao.src.js +1 -1
  337. package/es-modules/masters/indicators/apo.src.js +1 -1
  338. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  339. package/es-modules/masters/indicators/aroon.src.js +1 -1
  340. package/es-modules/masters/indicators/atr.src.js +1 -1
  341. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  342. package/es-modules/masters/indicators/cci.src.js +1 -1
  343. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  344. package/es-modules/masters/indicators/cmf.src.js +1 -1
  345. package/es-modules/masters/indicators/cmo.src.js +1 -1
  346. package/es-modules/masters/indicators/dema.src.js +1 -1
  347. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  348. package/es-modules/masters/indicators/dmi.src.js +1 -1
  349. package/es-modules/masters/indicators/dpo.src.js +1 -1
  350. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  351. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  352. package/es-modules/masters/indicators/indicators.src.js +1 -1
  353. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  354. package/es-modules/masters/indicators/klinger.src.js +1 -1
  355. package/es-modules/masters/indicators/macd.src.js +1 -1
  356. package/es-modules/masters/indicators/mfi.src.js +1 -1
  357. package/es-modules/masters/indicators/momentum.src.js +1 -1
  358. package/es-modules/masters/indicators/natr.src.js +1 -1
  359. package/es-modules/masters/indicators/obv.src.js +1 -1
  360. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  361. package/es-modules/masters/indicators/ppo.src.js +1 -1
  362. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  363. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  364. package/es-modules/masters/indicators/psar.src.js +1 -1
  365. package/es-modules/masters/indicators/regressions.src.js +1 -1
  366. package/es-modules/masters/indicators/roc.src.js +1 -1
  367. package/es-modules/masters/indicators/rsi.src.js +1 -1
  368. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  369. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  370. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  371. package/es-modules/masters/indicators/tema.src.js +1 -1
  372. package/es-modules/masters/indicators/trendline.src.js +1 -1
  373. package/es-modules/masters/indicators/trix.src.js +1 -1
  374. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  375. package/es-modules/masters/indicators/vwap.src.js +1 -1
  376. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  377. package/es-modules/masters/indicators/wma.src.js +1 -1
  378. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  379. package/es-modules/masters/modules/accessibility.src.js +1 -1
  380. package/es-modules/masters/modules/annotations-advanced.src.js +2 -2
  381. package/es-modules/masters/modules/annotations.src.js +2 -2
  382. package/es-modules/masters/modules/arc-diagram.src.js +14 -0
  383. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  384. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  385. package/es-modules/masters/modules/boost.src.js +1 -1
  386. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  387. package/es-modules/masters/modules/bullet.src.js +1 -1
  388. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  389. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  390. package/es-modules/masters/modules/cylinder.src.js +1 -1
  391. package/es-modules/masters/modules/data.src.js +2 -1
  392. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  393. package/es-modules/masters/modules/debugger.src.js +1 -1
  394. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  395. package/es-modules/masters/modules/dotplot.src.js +1 -1
  396. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  397. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  398. package/es-modules/masters/modules/drilldown.src.js +2 -1
  399. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  400. package/es-modules/masters/modules/export-data.src.js +1 -1
  401. package/es-modules/masters/modules/exporting.src.js +1 -1
  402. package/es-modules/masters/modules/full-screen.src.js +1 -1
  403. package/es-modules/masters/modules/funnel.src.js +1 -1
  404. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  405. package/es-modules/masters/modules/gantt.src.js +1 -1
  406. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  407. package/es-modules/masters/modules/heatmap.src.js +1 -1
  408. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  409. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  410. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  411. package/es-modules/masters/modules/item-series.src.js +1 -1
  412. package/es-modules/masters/modules/lollipop.src.js +1 -1
  413. package/es-modules/masters/modules/map.src.js +5 -1
  414. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  415. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  416. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  417. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  418. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  419. package/es-modules/masters/modules/oldie.src.js +1 -1
  420. package/es-modules/masters/modules/organization.src.js +1 -1
  421. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  422. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  423. package/es-modules/masters/modules/pareto.src.js +1 -1
  424. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  425. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  426. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  427. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  428. package/es-modules/masters/modules/sankey.src.js +1 -1
  429. package/es-modules/masters/modules/series-label.src.js +5 -2
  430. package/es-modules/masters/modules/series-on-point.src.js +16 -0
  431. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  432. package/es-modules/masters/modules/sonification.src.js +2 -6
  433. package/es-modules/masters/modules/static-scale.src.js +1 -1
  434. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  435. package/es-modules/masters/modules/stock.src.js +1 -1
  436. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  437. package/es-modules/masters/modules/sunburst.src.js +1 -1
  438. package/es-modules/masters/modules/tilemap.src.js +1 -1
  439. package/es-modules/masters/modules/timeline.src.js +1 -1
  440. package/es-modules/masters/modules/treegrid.src.js +1 -1
  441. package/es-modules/masters/modules/treemap.src.js +5 -1
  442. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  443. package/es-modules/masters/modules/variwide.src.js +1 -1
  444. package/es-modules/masters/modules/vector.src.js +1 -1
  445. package/es-modules/masters/modules/venn.src.js +1 -1
  446. package/es-modules/masters/modules/windbarb.src.js +1 -1
  447. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  448. package/es-modules/masters/modules/xrange.src.js +1 -1
  449. package/es-modules/masters/themes/avocado.src.js +1 -1
  450. package/es-modules/masters/themes/brand-dark.src.js +1 -1
  451. package/es-modules/masters/themes/brand-light.src.js +1 -1
  452. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  453. package/es-modules/masters/themes/dark-green.src.js +1 -1
  454. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  455. package/es-modules/masters/themes/gray.src.js +1 -1
  456. package/es-modules/masters/themes/grid-light.src.js +1 -1
  457. package/es-modules/masters/themes/grid.src.js +1 -1
  458. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  459. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  460. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  461. package/es-modules/masters/themes/skies.src.js +1 -1
  462. package/es-modules/masters/themes/sunset.src.js +1 -1
  463. package/highcharts-3d.js +99 -98
  464. package/highcharts-3d.js.map +1 -1
  465. package/highcharts-3d.src.js +51 -21
  466. package/highcharts-gantt.js +811 -801
  467. package/highcharts-gantt.js.map +1 -1
  468. package/highcharts-gantt.src.js +2020 -1607
  469. package/highcharts-more.d.ts +10 -0
  470. package/highcharts-more.js +194 -194
  471. package/highcharts-more.js.map +1 -1
  472. package/highcharts-more.src.d.ts +10 -0
  473. package/highcharts-more.src.js +3512 -3364
  474. package/highcharts.d.ts +12336 -965
  475. package/highcharts.js +595 -586
  476. package/highcharts.js.map +1 -1
  477. package/highcharts.src.d.ts +12336 -965
  478. package/highcharts.src.js +1047 -665
  479. package/highmaps.js +763 -728
  480. package/highmaps.js.map +1 -1
  481. package/highmaps.src.js +4482 -2639
  482. package/highstock.js +798 -788
  483. package/highstock.js.map +1 -1
  484. package/highstock.src.js +1177 -739
  485. package/indicators/acceleration-bands.d.ts +1 -17
  486. package/indicators/acceleration-bands.js +11 -11
  487. package/indicators/acceleration-bands.js.map +1 -1
  488. package/indicators/acceleration-bands.src.d.ts +1 -17
  489. package/indicators/acceleration-bands.src.js +99 -100
  490. package/indicators/accumulation-distribution.js +5 -5
  491. package/indicators/accumulation-distribution.js.map +1 -1
  492. package/indicators/accumulation-distribution.src.js +11 -2
  493. package/indicators/ao.js +6 -6
  494. package/indicators/ao.js.map +1 -1
  495. package/indicators/ao.src.js +13 -4
  496. package/indicators/apo.js +5 -5
  497. package/indicators/apo.js.map +1 -1
  498. package/indicators/apo.src.js +11 -2
  499. package/indicators/aroon-oscillator.d.ts +1 -17
  500. package/indicators/aroon-oscillator.js +10 -10
  501. package/indicators/aroon-oscillator.js.map +1 -1
  502. package/indicators/aroon-oscillator.src.d.ts +1 -17
  503. package/indicators/aroon-oscillator.src.js +99 -100
  504. package/indicators/aroon.d.ts +1 -17
  505. package/indicators/aroon.js +11 -11
  506. package/indicators/aroon.js.map +1 -1
  507. package/indicators/aroon.src.d.ts +1 -17
  508. package/indicators/aroon.src.js +99 -100
  509. package/indicators/atr.js +5 -5
  510. package/indicators/atr.js.map +1 -1
  511. package/indicators/atr.src.js +11 -2
  512. package/indicators/bollinger-bands.d.ts +1 -17
  513. package/indicators/bollinger-bands.js +11 -12
  514. package/indicators/bollinger-bands.js.map +1 -1
  515. package/indicators/bollinger-bands.src.d.ts +1 -17
  516. package/indicators/bollinger-bands.src.js +102 -103
  517. package/indicators/cci.js +5 -5
  518. package/indicators/cci.js.map +1 -1
  519. package/indicators/cci.src.js +11 -2
  520. package/indicators/chaikin.js +8 -8
  521. package/indicators/chaikin.js.map +1 -1
  522. package/indicators/chaikin.src.js +11 -2
  523. package/indicators/cmf.js +6 -6
  524. package/indicators/cmf.js.map +1 -1
  525. package/indicators/cmf.src.js +11 -2
  526. package/indicators/cmo.js +5 -5
  527. package/indicators/cmo.js.map +1 -1
  528. package/indicators/cmo.src.js +11 -2
  529. package/indicators/dema.js +5 -5
  530. package/indicators/dema.js.map +1 -1
  531. package/indicators/dema.src.js +11 -2
  532. package/indicators/disparity-index.js +6 -6
  533. package/indicators/disparity-index.js.map +1 -1
  534. package/indicators/disparity-index.src.js +11 -2
  535. package/indicators/dmi.js +12 -12
  536. package/indicators/dmi.js.map +1 -1
  537. package/indicators/dmi.src.js +109 -106
  538. package/indicators/dpo.js +5 -5
  539. package/indicators/dpo.js.map +1 -1
  540. package/indicators/dpo.src.js +11 -2
  541. package/indicators/ema.js +2 -1
  542. package/indicators/ema.js.map +1 -1
  543. package/indicators/ema.src.js +10 -1
  544. package/indicators/ichimoku-kinko-hyo.js +16 -16
  545. package/indicators/ichimoku-kinko-hyo.js.map +1 -1
  546. package/indicators/ichimoku-kinko-hyo.src.js +11 -2
  547. package/indicators/indicators-all.d.ts +1 -17
  548. package/indicators/indicators-all.js +198 -196
  549. package/indicators/indicators-all.js.map +1 -1
  550. package/indicators/indicators-all.src.d.ts +1 -17
  551. package/indicators/indicators-all.src.js +151 -129
  552. package/indicators/indicators.js +13 -12
  553. package/indicators/indicators.js.map +1 -1
  554. package/indicators/indicators.src.js +21 -5
  555. package/indicators/keltner-channels.d.ts +1 -17
  556. package/indicators/keltner-channels.js +11 -11
  557. package/indicators/keltner-channels.js.map +1 -1
  558. package/indicators/keltner-channels.src.d.ts +1 -17
  559. package/indicators/keltner-channels.src.js +99 -100
  560. package/indicators/klinger.js +14 -14
  561. package/indicators/klinger.js.map +1 -1
  562. package/indicators/klinger.src.js +99 -100
  563. package/indicators/macd.js +13 -11
  564. package/indicators/macd.js.map +1 -1
  565. package/indicators/macd.src.js +35 -14
  566. package/indicators/mfi.js +6 -6
  567. package/indicators/mfi.js.map +1 -1
  568. package/indicators/mfi.src.js +11 -2
  569. package/indicators/momentum.js +5 -5
  570. package/indicators/momentum.js.map +1 -1
  571. package/indicators/momentum.src.js +11 -2
  572. package/indicators/natr.js +5 -4
  573. package/indicators/natr.js.map +1 -1
  574. package/indicators/natr.src.js +11 -2
  575. package/indicators/obv.js +5 -5
  576. package/indicators/obv.js.map +1 -1
  577. package/indicators/obv.src.js +11 -2
  578. package/indicators/pivot-points.js +11 -11
  579. package/indicators/pivot-points.js.map +1 -1
  580. package/indicators/pivot-points.src.js +11 -2
  581. package/indicators/ppo.js +5 -5
  582. package/indicators/ppo.js.map +1 -1
  583. package/indicators/ppo.src.js +11 -2
  584. package/indicators/price-channel.d.ts +1 -17
  585. package/indicators/price-channel.js +11 -11
  586. package/indicators/price-channel.js.map +1 -1
  587. package/indicators/price-channel.src.d.ts +1 -17
  588. package/indicators/price-channel.src.js +99 -100
  589. package/indicators/price-envelopes.js +8 -8
  590. package/indicators/price-envelopes.js.map +1 -1
  591. package/indicators/price-envelopes.src.js +11 -2
  592. package/indicators/psar.js +7 -6
  593. package/indicators/psar.js.map +1 -1
  594. package/indicators/psar.src.js +11 -2
  595. package/indicators/regressions.js +12 -12
  596. package/indicators/regressions.js.map +1 -1
  597. package/indicators/regressions.src.js +11 -2
  598. package/indicators/roc.js +5 -5
  599. package/indicators/roc.js.map +1 -1
  600. package/indicators/roc.src.js +11 -2
  601. package/indicators/rsi.js +6 -5
  602. package/indicators/rsi.js.map +1 -1
  603. package/indicators/rsi.src.js +11 -2
  604. package/indicators/slow-stochastic.js +5 -5
  605. package/indicators/slow-stochastic.js.map +1 -1
  606. package/indicators/slow-stochastic.src.js +11 -2
  607. package/indicators/stochastic.d.ts +1 -17
  608. package/indicators/stochastic.js +12 -12
  609. package/indicators/stochastic.js.map +1 -1
  610. package/indicators/stochastic.src.d.ts +1 -17
  611. package/indicators/stochastic.src.js +99 -100
  612. package/indicators/supertrend.js +10 -10
  613. package/indicators/supertrend.js.map +1 -1
  614. package/indicators/supertrend.src.js +14 -5
  615. package/indicators/tema.js +6 -6
  616. package/indicators/tema.js.map +1 -1
  617. package/indicators/tema.src.js +11 -2
  618. package/indicators/trendline.js +5 -5
  619. package/indicators/trendline.js.map +1 -1
  620. package/indicators/trendline.src.js +11 -2
  621. package/indicators/trix.js +4 -4
  622. package/indicators/trix.js.map +1 -1
  623. package/indicators/trix.src.js +11 -2
  624. package/indicators/volume-by-price.js +17 -17
  625. package/indicators/volume-by-price.js.map +1 -1
  626. package/indicators/volume-by-price.src.js +11 -2
  627. package/indicators/vwap.js +5 -5
  628. package/indicators/vwap.js.map +1 -1
  629. package/indicators/vwap.src.js +11 -2
  630. package/indicators/williams-r.js +6 -5
  631. package/indicators/williams-r.js.map +1 -1
  632. package/indicators/williams-r.src.js +11 -2
  633. package/indicators/wma.js +5 -5
  634. package/indicators/wma.js.map +1 -1
  635. package/indicators/wma.src.js +11 -2
  636. package/indicators/zigzag.js +6 -6
  637. package/indicators/zigzag.js.map +1 -1
  638. package/indicators/zigzag.src.js +11 -2
  639. package/lib/jspdf.js +299 -184
  640. package/lib/jspdf.src.js +25266 -18067
  641. package/lib/svg2pdf.js +35 -31
  642. package/lib/svg2pdf.src.js +5721 -4179
  643. package/modules/accessibility.js +242 -237
  644. package/modules/accessibility.js.map +1 -1
  645. package/modules/accessibility.src.js +599 -390
  646. package/modules/annotations-advanced.js +192 -192
  647. package/modules/annotations-advanced.js.map +1 -1
  648. package/modules/annotations-advanced.src.js +96 -47
  649. package/modules/annotations.js +126 -126
  650. package/modules/annotations.js.map +1 -1
  651. package/modules/annotations.src.js +67 -25
  652. package/modules/arc-diagram.js +25 -0
  653. package/modules/arc-diagram.js.map +1 -0
  654. package/modules/arc-diagram.src.js +778 -0
  655. package/modules/arrow-symbols.js +4 -3
  656. package/modules/arrow-symbols.js.map +1 -1
  657. package/modules/arrow-symbols.src.js +11 -2
  658. package/modules/boost-canvas.js +16 -15
  659. package/modules/boost-canvas.js.map +1 -1
  660. package/modules/boost-canvas.src.js +22 -7
  661. package/modules/boost.js +81 -79
  662. package/modules/boost.js.map +1 -1
  663. package/modules/boost.src.js +90 -51
  664. package/modules/broken-axis.js +13 -13
  665. package/modules/broken-axis.js.map +1 -1
  666. package/modules/broken-axis.src.js +11 -2
  667. package/modules/bullet.js +9 -9
  668. package/modules/bullet.js.map +1 -1
  669. package/modules/bullet.src.js +12 -6
  670. package/modules/coloraxis.js +24 -24
  671. package/modules/coloraxis.js.map +1 -1
  672. package/modules/coloraxis.src.js +37 -11
  673. package/modules/current-date-indicator.js +5 -4
  674. package/modules/current-date-indicator.js.map +1 -1
  675. package/modules/current-date-indicator.src.js +12 -3
  676. package/modules/cylinder.js +11 -11
  677. package/modules/cylinder.js.map +1 -1
  678. package/modules/cylinder.src.js +11 -2
  679. package/modules/data.d.ts +12 -12
  680. package/modules/data.js +33 -33
  681. package/modules/data.js.map +1 -1
  682. package/modules/data.src.d.ts +12 -12
  683. package/modules/data.src.js +906 -846
  684. package/modules/datagrouping.js +21 -20
  685. package/modules/datagrouping.js.map +1 -1
  686. package/modules/datagrouping.src.js +19 -5
  687. package/modules/debugger.js +8 -7
  688. package/modules/debugger.js.map +1 -1
  689. package/modules/debugger.src.js +15 -2
  690. package/modules/dependency-wheel.js +12 -11
  691. package/modules/dependency-wheel.js.map +1 -1
  692. package/modules/dependency-wheel.src.js +14 -5
  693. package/modules/dotplot.js +6 -6
  694. package/modules/dotplot.js.map +1 -1
  695. package/modules/dotplot.src.js +11 -2
  696. package/modules/drag-panes.js +10 -10
  697. package/modules/drag-panes.js.map +1 -1
  698. package/modules/drag-panes.src.js +12 -3
  699. package/modules/draggable-points.js +35 -34
  700. package/modules/draggable-points.js.map +1 -1
  701. package/modules/draggable-points.src.js +20 -9
  702. package/modules/drilldown.d.ts +19 -0
  703. package/modules/drilldown.js +37 -25
  704. package/modules/drilldown.js.map +1 -1
  705. package/modules/drilldown.src.d.ts +19 -0
  706. package/modules/drilldown.src.js +1124 -108
  707. package/modules/dumbbell.d.ts +4 -0
  708. package/modules/dumbbell.js +17 -17
  709. package/modules/dumbbell.js.map +1 -1
  710. package/modules/dumbbell.src.d.ts +4 -0
  711. package/modules/dumbbell.src.js +34 -13
  712. package/modules/export-data.js +24 -21
  713. package/modules/export-data.js.map +1 -1
  714. package/modules/export-data.src.js +87 -14
  715. package/modules/exporting.d.ts +8 -8
  716. package/modules/exporting.js +39 -39
  717. package/modules/exporting.js.map +1 -1
  718. package/modules/exporting.src.d.ts +8 -8
  719. package/modules/exporting.src.js +270 -135
  720. package/modules/full-screen.js +8 -7
  721. package/modules/full-screen.js.map +1 -1
  722. package/modules/full-screen.src.js +135 -58
  723. package/modules/funnel.js +12 -12
  724. package/modules/funnel.js.map +1 -1
  725. package/modules/funnel.src.js +13 -4
  726. package/modules/funnel3d.js +21 -21
  727. package/modules/funnel3d.js.map +1 -1
  728. package/modules/funnel3d.src.js +11 -2
  729. package/modules/gantt.js +218 -217
  730. package/modules/gantt.js.map +1 -1
  731. package/modules/gantt.src.js +983 -943
  732. package/modules/grid-axis.js +23 -23
  733. package/modules/grid-axis.js.map +1 -1
  734. package/modules/grid-axis.src.js +900 -890
  735. package/modules/heatmap.js +40 -39
  736. package/modules/heatmap.js.map +1 -1
  737. package/modules/heatmap.src.js +160 -113
  738. package/modules/heikinashi.js +8 -8
  739. package/modules/heikinashi.js.map +1 -1
  740. package/modules/heikinashi.src.js +11 -2
  741. package/modules/histogram-bellcurve.js +13 -13
  742. package/modules/histogram-bellcurve.js.map +1 -1
  743. package/modules/histogram-bellcurve.src.js +11 -2
  744. package/modules/hollowcandlestick.js +9 -9
  745. package/modules/hollowcandlestick.js.map +1 -1
  746. package/modules/hollowcandlestick.src.js +19 -10
  747. package/modules/item-series.js +12 -12
  748. package/modules/item-series.js.map +1 -1
  749. package/modules/item-series.src.js +11 -2
  750. package/modules/lollipop.js +7 -7
  751. package/modules/lollipop.js.map +1 -1
  752. package/modules/lollipop.src.js +12 -3
  753. package/modules/map.d.ts +80 -43
  754. package/modules/map.js +171 -144
  755. package/modules/map.js.map +1 -1
  756. package/modules/map.src.d.ts +80 -43
  757. package/modules/map.src.js +8292 -6822
  758. package/modules/marker-clusters.js +36 -36
  759. package/modules/marker-clusters.js.map +1 -1
  760. package/modules/marker-clusters.src.js +48 -28
  761. package/modules/networkgraph.d.ts +1 -12
  762. package/modules/networkgraph.js +46 -45
  763. package/modules/networkgraph.js.map +1 -1
  764. package/modules/networkgraph.src.d.ts +1 -12
  765. package/modules/networkgraph.src.js +127 -55
  766. package/modules/no-data-to-display.js +5 -5
  767. package/modules/no-data-to-display.js.map +1 -1
  768. package/modules/no-data-to-display.src.js +12 -3
  769. package/modules/offline-exporting.js +20 -18
  770. package/modules/offline-exporting.js.map +1 -1
  771. package/modules/offline-exporting.src.js +129 -28
  772. package/modules/oldie-polyfills.js +7 -7
  773. package/modules/oldie-polyfills.js.map +1 -1
  774. package/modules/oldie-polyfills.src.js +11 -2
  775. package/modules/oldie.js +30 -30
  776. package/modules/oldie.js.map +1 -1
  777. package/modules/oldie.src.js +13 -4
  778. package/modules/organization.js +16 -14
  779. package/modules/organization.js.map +1 -1
  780. package/modules/organization.src.js +168 -34
  781. package/modules/overlapping-datalabels.js +3 -2
  782. package/modules/overlapping-datalabels.js.map +1 -1
  783. package/modules/overlapping-datalabels.src.js +11 -2
  784. package/modules/parallel-coordinates.js +11 -11
  785. package/modules/parallel-coordinates.js.map +1 -1
  786. package/modules/parallel-coordinates.src.js +12 -3
  787. package/modules/pareto.js +7 -7
  788. package/modules/pareto.js.map +1 -1
  789. package/modules/pareto.src.js +11 -2
  790. package/modules/pathfinder.js +31 -31
  791. package/modules/pathfinder.js.map +1 -1
  792. package/modules/pathfinder.src.js +11 -2
  793. package/modules/pattern-fill.js +15 -14
  794. package/modules/pattern-fill.js.map +1 -1
  795. package/modules/pattern-fill.src.js +25 -3
  796. package/modules/price-indicator.js +5 -5
  797. package/modules/price-indicator.js.map +1 -1
  798. package/modules/price-indicator.src.js +11 -2
  799. package/modules/pyramid3d.js +4 -4
  800. package/modules/pyramid3d.js.map +1 -1
  801. package/modules/pyramid3d.src.js +11 -2
  802. package/modules/sankey.d.ts +1 -12
  803. package/modules/sankey.js +32 -29
  804. package/modules/sankey.js.map +1 -1
  805. package/modules/sankey.src.d.ts +1 -12
  806. package/modules/sankey.src.js +422 -207
  807. package/modules/series-label.js +18 -17
  808. package/modules/series-label.js.map +1 -1
  809. package/modules/series-label.src.js +482 -386
  810. package/modules/series-on-point.js +18 -0
  811. package/modules/series-on-point.js.map +1 -0
  812. package/modules/series-on-point.src.js +464 -0
  813. package/modules/solid-gauge.js +10 -10
  814. package/modules/solid-gauge.js.map +1 -1
  815. package/modules/solid-gauge.src.js +15 -6
  816. package/modules/sonification.js +59 -59
  817. package/modules/sonification.js.map +1 -1
  818. package/modules/sonification.src.js +13 -8
  819. package/modules/static-scale.js +5 -4
  820. package/modules/static-scale.js.map +1 -1
  821. package/modules/static-scale.src.js +11 -2
  822. package/modules/stock-tools.js +167 -167
  823. package/modules/stock-tools.js.map +1 -1
  824. package/modules/stock-tools.src.js +118 -67
  825. package/modules/stock.js +205 -204
  826. package/modules/stock.js.map +1 -1
  827. package/modules/stock.src.js +141 -76
  828. package/modules/streamgraph.js +5 -4
  829. package/modules/streamgraph.js.map +1 -1
  830. package/modules/streamgraph.src.js +11 -2
  831. package/modules/sunburst.d.ts +3 -0
  832. package/modules/sunburst.js +73 -60
  833. package/modules/sunburst.js.map +1 -1
  834. package/modules/sunburst.src.d.ts +3 -0
  835. package/modules/sunburst.src.js +1391 -406
  836. package/modules/tilemap.js +17 -17
  837. package/modules/tilemap.js.map +1 -1
  838. package/modules/tilemap.src.js +11 -2
  839. package/modules/timeline.js +18 -18
  840. package/modules/timeline.js.map +1 -1
  841. package/modules/timeline.src.js +14 -5
  842. package/modules/treegrid.js +57 -56
  843. package/modules/treegrid.js.map +1 -1
  844. package/modules/treegrid.src.js +913 -892
  845. package/modules/treemap.d.ts +3 -0
  846. package/modules/treemap.js +54 -41
  847. package/modules/treemap.js.map +1 -1
  848. package/modules/treemap.src.d.ts +3 -0
  849. package/modules/treemap.src.js +1229 -255
  850. package/modules/variable-pie.js +9 -9
  851. package/modules/variable-pie.js.map +1 -1
  852. package/modules/variable-pie.src.js +11 -2
  853. package/modules/variwide.js +12 -12
  854. package/modules/variwide.js.map +1 -1
  855. package/modules/variwide.src.js +11 -2
  856. package/modules/vector.js +8 -7
  857. package/modules/vector.js.map +1 -1
  858. package/modules/vector.src.js +11 -2
  859. package/modules/venn.js +31 -31
  860. package/modules/venn.js.map +1 -1
  861. package/modules/venn.src.js +88 -105
  862. package/modules/windbarb.js +15 -15
  863. package/modules/windbarb.js.map +1 -1
  864. package/modules/windbarb.src.js +11 -2
  865. package/modules/wordcloud.js +23 -23
  866. package/modules/wordcloud.js.map +1 -1
  867. package/modules/wordcloud.src.js +92 -109
  868. package/modules/xrange.js +16 -16
  869. package/modules/xrange.js.map +1 -1
  870. package/modules/xrange.src.js +11 -2
  871. package/package.json +1 -1
  872. package/themes/avocado.js +4 -3
  873. package/themes/avocado.js.map +1 -1
  874. package/themes/avocado.src.js +11 -2
  875. package/themes/brand-dark.js +9 -8
  876. package/themes/brand-dark.js.map +1 -1
  877. package/themes/brand-dark.src.js +11 -2
  878. package/themes/brand-light.js +8 -8
  879. package/themes/brand-light.js.map +1 -1
  880. package/themes/brand-light.src.js +11 -2
  881. package/themes/dark-blue.js +9 -8
  882. package/themes/dark-blue.js.map +1 -1
  883. package/themes/dark-blue.src.js +11 -2
  884. package/themes/dark-green.js +9 -8
  885. package/themes/dark-green.js.map +1 -1
  886. package/themes/dark-green.src.js +11 -2
  887. package/themes/dark-unica.js +8 -7
  888. package/themes/dark-unica.js.map +1 -1
  889. package/themes/dark-unica.src.js +11 -2
  890. package/themes/gray.js +9 -8
  891. package/themes/gray.js.map +1 -1
  892. package/themes/gray.src.js +11 -2
  893. package/themes/grid-light.js +5 -4
  894. package/themes/grid-light.js.map +1 -1
  895. package/themes/grid-light.src.js +11 -2
  896. package/themes/grid.js +5 -5
  897. package/themes/grid.js.map +1 -1
  898. package/themes/grid.src.js +11 -2
  899. package/themes/high-contrast-dark.js +7 -7
  900. package/themes/high-contrast-dark.js.map +1 -1
  901. package/themes/high-contrast-dark.src.js +21 -12
  902. package/themes/high-contrast-light.js +3 -3
  903. package/themes/high-contrast-light.js.map +1 -1
  904. package/themes/high-contrast-light.src.js +21 -12
  905. package/themes/sand-signika.js +5 -5
  906. package/themes/sand-signika.js.map +1 -1
  907. package/themes/sand-signika.src.js +11 -2
  908. package/themes/skies.js +5 -5
  909. package/themes/skies.js.map +1 -1
  910. package/themes/skies.src.js +11 -2
  911. package/themes/sunset.js +3 -3
  912. package/themes/sunset.js.map +1 -1
  913. package/themes/sunset.src.js +11 -2
  914. package/es-modules/Extensions/Polar.js +0 -740
  915. package/es-modules/Maps/ProjectionDefinition.js +0 -9
  916. package/es-modules/Series/ColorMapMixin.js +0 -84
  917. package/es-modules/Series/DrawPointComposition.js +0 -111
@@ -20,7 +20,13 @@ import H from '../Globals.js';
20
20
  var deg2rad = H.deg2rad;
21
21
  import Tick from './Tick.js';
22
22
  import U from '../Utilities.js';
23
- var arrayMax = U.arrayMax, arrayMin = U.arrayMin, clamp = U.clamp, correctFloat = U.correctFloat, defined = U.defined, destroyObjectProperties = U.destroyObjectProperties, erase = U.erase, error = U.error, extend = U.extend, fireEvent = U.fireEvent, getMagnitude = U.getMagnitude, isArray = U.isArray, isNumber = U.isNumber, isString = U.isString, merge = U.merge, normalizeTickInterval = U.normalizeTickInterval, objectEach = U.objectEach, pick = U.pick, relativeLength = U.relativeLength, removeEvent = U.removeEvent, splat = U.splat, syncTimeout = U.syncTimeout;
23
+ var arrayMax = U.arrayMax, arrayMin = U.arrayMin, clamp = U.clamp, correctFloat = U.correctFloat, defined = U.defined, destroyObjectProperties = U.destroyObjectProperties, erase = U.erase, error = U.error, extend = U.extend, fireEvent = U.fireEvent, isArray = U.isArray, isNumber = U.isNumber, isString = U.isString, merge = U.merge, normalizeTickInterval = U.normalizeTickInterval, objectEach = U.objectEach, pick = U.pick, relativeLength = U.relativeLength, removeEvent = U.removeEvent, splat = U.splat, syncTimeout = U.syncTimeout;
24
+ var getNormalizedTickInterval = function (axis, tickInterval) { return normalizeTickInterval(tickInterval, void 0, void 0, pick(axis.options.allowDecimals,
25
+ // If the tick interval is greather than 0.5, avoid decimals, as
26
+ // linear axes are often used to render discrete values (#3363). If
27
+ // a tick amount is set, allow decimals by default, as it increases
28
+ // the chances for a good fit.
29
+ tickInterval < 0.5 || axis.tickAmount !== void 0), !!axis.tickAmount); };
24
30
  /* *
25
31
  *
26
32
  * Class
@@ -67,7 +73,6 @@ var Axis = /** @class */ (function () {
67
73
  function Axis(chart, userOptions) {
68
74
  this.alternateBands = void 0;
69
75
  this.bottom = void 0;
70
- this.categories = void 0;
71
76
  this.chart = void 0;
72
77
  this.closestPointRange = void 0;
73
78
  this.coll = void 0;
@@ -228,7 +233,7 @@ var Axis = /** @class */ (function () {
228
233
  * @type {Array<string>}
229
234
  * @readonly
230
235
  */
231
- axis.categories = options.categories || axis.hasNames;
236
+ axis.categories = options.categories || (axis.hasNames ? [] : void 0);
232
237
  if (!axis.names) { // Preserve on update (#3830)
233
238
  axis.names = [];
234
239
  axis.names.keys = {};
@@ -372,7 +377,7 @@ var Axis = /** @class */ (function () {
372
377
  axis.tickInterval;
373
378
  var i = numericSymbols && numericSymbols.length, multi, ret;
374
379
  if (categories) {
375
- ret = "" + this.value;
380
+ ret = "".concat(this.value);
376
381
  }
377
382
  else if (dateTimeLabelFormat) { // datetime axis
378
383
  ret = time.dateFormat(dateTimeLabelFormat, value);
@@ -444,7 +449,6 @@ var Axis = /** @class */ (function () {
444
449
  if (axis.isXAxis) {
445
450
  xData = series.xData;
446
451
  if (xData.length) {
447
- var isPositive = function (number) { return number > 0; };
448
452
  xData = axis.logarithmic ?
449
453
  xData.filter(axis.validatePositiveValue) :
450
454
  xData;
@@ -513,7 +517,11 @@ var Axis = /** @class */ (function () {
513
517
  */
514
518
  Axis.prototype.translate = function (val, backwards, cvsCoord, old, handleLog, pointPlacement) {
515
519
  var axis = (this.linkedParent || this), // #1417
516
- localMin = old && axis.old ? axis.old.min : axis.min, minPixelPadding = axis.minPixelPadding, doPostTranslate = (axis.isOrdinal ||
520
+ localMin = (old && axis.old ? axis.old.min : axis.min);
521
+ if (!isNumber(localMin)) {
522
+ return NaN;
523
+ }
524
+ var minPixelPadding = axis.minPixelPadding, doPostTranslate = (axis.isOrdinal ||
517
525
  axis.brokenAxis && axis.brokenAxis.hasBreaks ||
518
526
  (axis.logarithmic && handleLog)) && axis.lin2val;
519
527
  var sign = 1, cvsOffset = 0, localA = old && axis.old ? axis.old.transA : axis.transA, returnValue = 0;
@@ -546,14 +554,11 @@ var Axis = /** @class */ (function () {
546
554
  if (doPostTranslate) { // log, ordinal and broken axis
547
555
  val = axis.val2lin(val);
548
556
  }
549
- returnValue = isNumber(localMin) ?
550
- (sign * (val - localMin) * localA +
551
- cvsOffset +
552
- (sign * minPixelPadding) +
553
- (isNumber(pointPlacement) ?
554
- localA * pointPlacement :
555
- 0)) :
556
- void 0;
557
+ var value = sign * (val - localMin) * localA;
558
+ returnValue = (!axis.isRadial ? correctFloat(value) : value) +
559
+ cvsOffset +
560
+ (sign * minPixelPadding) +
561
+ (isNumber(pointPlacement) ? localA * pointPlacement : 0);
557
562
  }
558
563
  return returnValue;
559
564
  };
@@ -573,7 +578,7 @@ var Axis = /** @class */ (function () {
573
578
  * Pixel position of the value on the chart or axis.
574
579
  */
575
580
  Axis.prototype.toPixels = function (value, paneCoordinates) {
576
- return this.translate(value, false, !this.horiz, null, true) +
581
+ return this.translate(value, false, !this.horiz, void 0, true) +
577
582
  (paneCoordinates ? 0 : this.pos);
578
583
  };
579
584
  /**
@@ -593,7 +598,7 @@ var Axis = /** @class */ (function () {
593
598
  * The axis value.
594
599
  */
595
600
  Axis.prototype.toValue = function (pixel, paneCoordinates) {
596
- return this.translate(pixel - (paneCoordinates ? 0 : this.pos), true, !this.horiz, null, true);
601
+ return this.translate(pixel - (paneCoordinates ? 0 : this.pos), true, !this.horiz, void 0, true);
597
602
  };
598
603
  /**
599
604
  * Create the path for a plot line that goes from the given value on
@@ -637,7 +642,7 @@ var Axis = /** @class */ (function () {
637
642
  translatedValue: translatedValue
638
643
  };
639
644
  fireEvent(this, 'getPlotLinePath', evt, function (e) {
640
- translatedValue = pick(translatedValue, axis.translate(value, null, null, old));
645
+ translatedValue = pick(translatedValue, axis.translate(value, void 0, void 0, old));
641
646
  // Keep the translated value within sane bounds, and avoid Infinity
642
647
  // to fail the isNumber test (#7709).
643
648
  translatedValue = clamp(translatedValue, -1e5, 1e5);
@@ -902,18 +907,18 @@ var Axis = /** @class */ (function () {
902
907
  * The X value that the point is given.
903
908
  */
904
909
  Axis.prototype.nameToX = function (point) {
905
- var explicitCategories = isArray(this.categories), names = explicitCategories ? this.categories : this.names;
910
+ var explicitCategories = isArray(this.options.categories), names = explicitCategories ? this.categories : this.names;
906
911
  var nameX = point.options.x, x;
907
912
  point.series.requireSorting = false;
908
913
  if (!defined(nameX)) {
909
- nameX = this.options.uniqueNames ?
914
+ nameX = this.options.uniqueNames && names ?
910
915
  (explicitCategories ?
911
916
  names.indexOf(point.name) :
912
917
  pick(names.keys[point.name], -1)) :
913
918
  point.series.autoIncrement();
914
919
  }
915
920
  if (nameX === -1) { // Not found in currenct categories
916
- if (!explicitCategories) {
921
+ if (!explicitCategories && names) {
917
922
  x = names.length;
918
923
  }
919
924
  }
@@ -1280,15 +1285,9 @@ var Axis = /** @class */ (function () {
1280
1285
  if (!tickIntervalOption && axis.tickInterval < minTickInterval) {
1281
1286
  axis.tickInterval = minTickInterval;
1282
1287
  }
1283
- // for linear axes, get magnitude and normalize the interval
1288
+ // For linear axes, normalize the interval
1284
1289
  if (!axis.dateTime && !axis.logarithmic && !tickIntervalOption) {
1285
- axis.tickInterval = normalizeTickInterval(axis.tickInterval, void 0, getMagnitude(axis.tickInterval), pick(options.allowDecimals,
1286
- // If the tick interval is greather than 0.5, avoid
1287
- // decimals, as linear axes are often used to render
1288
- // discrete values. #3363. If a tick amount is set, allow
1289
- // decimals by default, as it increases the chances for a
1290
- // good fit.
1291
- axis.tickInterval < 0.5 || this.tickAmount !== void 0), !!this.tickAmount);
1290
+ axis.tickInterval = getNormalizedTickInterval(axis, axis.tickInterval);
1292
1291
  }
1293
1292
  // Prevent ticks from getting so close that we can't draw the labels
1294
1293
  if (!this.tickAmount) {
@@ -1365,7 +1364,21 @@ var Axis = /** @class */ (function () {
1365
1364
  tickPositions = axis.logarithmic.getLogTickPositions(this.tickInterval, this.min, this.max);
1366
1365
  }
1367
1366
  else {
1368
- tickPositions = this.getLinearTickPositions(this.tickInterval, this.min, this.max);
1367
+ var startingTickInterval = this.tickInterval;
1368
+ var adjustedTickInterval = startingTickInterval;
1369
+ while (adjustedTickInterval <= startingTickInterval * 2) {
1370
+ tickPositions = this.getLinearTickPositions(this.tickInterval, this.min, this.max);
1371
+ // If there are more tick positions than the set tickAmount,
1372
+ // increase the tickInterval and continue until it fits.
1373
+ // (#17100)
1374
+ if (this.tickAmount &&
1375
+ tickPositions.length > this.tickAmount) {
1376
+ this.tickInterval = getNormalizedTickInterval(this, adjustedTickInterval *= 1.1);
1377
+ }
1378
+ else {
1379
+ break;
1380
+ }
1381
+ }
1369
1382
  }
1370
1383
  // Too dense ticks, keep only the first and last (#4477)
1371
1384
  if (tickPositions.length > this.len) {
@@ -1461,38 +1474,87 @@ var Axis = /** @class */ (function () {
1461
1474
  * True if there are other axes.
1462
1475
  */
1463
1476
  Axis.prototype.alignToOthers = function () {
1464
- var axis = this, others = // Whether there is another axis to pair with this one
1465
- {}, options = axis.options;
1477
+ var axis = this, alignedAxes = [this], options = axis.options, alignThresholds = (this.coll === 'yAxis' &&
1478
+ this.chart.options.chart.alignThresholds), thresholdAlignments = [];
1466
1479
  var hasOther;
1467
- if (
1468
- // Only if alignTicks is true
1469
- this.chart.options.chart.alignTicks !== false &&
1470
- options.alignTicks &&
1480
+ axis.thresholdAlignment = void 0;
1481
+ if ((
1482
+ // Only if alignTicks or alignThresholds is true
1483
+ (this.chart.options.chart.alignTicks !== false &&
1484
+ options.alignTicks) || (alignThresholds)) &&
1471
1485
  // Disabled when startOnTick or endOnTick are false (#7604)
1472
1486
  options.startOnTick !== false &&
1473
1487
  options.endOnTick !== false &&
1474
1488
  // Don't try to align ticks on a log axis, they are not evenly
1475
1489
  // spaced (#6021)
1476
1490
  !axis.logarithmic) {
1477
- this.chart[this.coll].forEach(function (axis) {
1478
- var otherOptions = axis.options, horiz = axis.horiz, key = [
1479
- horiz ? otherOptions.left : otherOptions.top,
1480
- otherOptions.width,
1481
- otherOptions.height,
1482
- otherOptions.pane
1491
+ // Get a key identifying which pane the axis belongs to
1492
+ var getKey_1 = function (axis) {
1493
+ var horiz = axis.horiz, options = axis.options;
1494
+ return [
1495
+ horiz ? options.left : options.top,
1496
+ options.width,
1497
+ options.height,
1498
+ options.pane
1483
1499
  ].join(',');
1484
- if (axis.series.length) { // #4442
1485
- if (others[key]) {
1486
- hasOther = true; // #4201
1487
- }
1488
- else {
1489
- others[key] = 1;
1490
- }
1500
+ };
1501
+ var thisKey_1 = getKey_1(this);
1502
+ this.chart[this.coll].forEach(function (otherAxis) {
1503
+ var series = otherAxis.series;
1504
+ if (
1505
+ // #4442
1506
+ series.length &&
1507
+ series.some(function (s) { return s.visible; }) &&
1508
+ otherAxis !== axis &&
1509
+ getKey_1(otherAxis) === thisKey_1) {
1510
+ hasOther = true; // #4201
1511
+ alignedAxes.push(otherAxis);
1512
+ }
1513
+ });
1514
+ }
1515
+ if (hasOther && alignThresholds) {
1516
+ // Handle alignThresholds. The `thresholdAlignments` array keeps
1517
+ // records of where each axis in the group wants its threshold, from
1518
+ // 0 which is on `axis.min`, to 1 which is on `axis.max`.
1519
+ alignedAxes.forEach(function (otherAxis) {
1520
+ var threshAlign = otherAxis.getThresholdAlignment(axis);
1521
+ if (isNumber(threshAlign)) {
1522
+ thresholdAlignments.push(threshAlign);
1491
1523
  }
1492
1524
  });
1525
+ // For each of the axes in the group, record the average
1526
+ // `thresholdAlignment`.
1527
+ var thresholdAlignment_1 = thresholdAlignments.length > 1 ?
1528
+ thresholdAlignments.reduce(function (sum, n) { return (sum += n); }, 0) / thresholdAlignments.length :
1529
+ void 0;
1530
+ alignedAxes.forEach(function (axis) {
1531
+ axis.thresholdAlignment = thresholdAlignment_1;
1532
+ });
1493
1533
  }
1494
1534
  return hasOther;
1495
1535
  };
1536
+ /**
1537
+ * Where the axis wants its threshold, from 0 which is on `axis.min`, to 1 which
1538
+ * is on `axis.max`.
1539
+ *
1540
+ * @private
1541
+ * @function Highcharts.Axis#getThresholdAlignment
1542
+ */
1543
+ Axis.prototype.getThresholdAlignment = function (callerAxis) {
1544
+ if (!isNumber(this.dataMin) ||
1545
+ (this !== callerAxis &&
1546
+ this.series.some(function (s) { return (s.isDirty || s.isDirtyData); }))) {
1547
+ this.getSeriesExtremes();
1548
+ }
1549
+ if (isNumber(this.threshold)) {
1550
+ var thresholdAlignment = clamp(((this.threshold - (this.dataMin || 0)) /
1551
+ ((this.dataMax || 0) - (this.dataMin || 0))), 0, 1);
1552
+ if (this.options.reversed) {
1553
+ thresholdAlignment = 1 - thresholdAlignment;
1554
+ }
1555
+ return thresholdAlignment;
1556
+ }
1557
+ };
1496
1558
  /**
1497
1559
  * Find the max ticks of either the x and y axis collection, and record it
1498
1560
  * in `this.tickAmount`.
@@ -1534,39 +1596,89 @@ var Axis = /** @class */ (function () {
1534
1596
  * @function Highcharts.Axis#adjustTickAmount
1535
1597
  */
1536
1598
  Axis.prototype.adjustTickAmount = function () {
1537
- var axis = this, axisOptions = axis.options, tickInterval = axis.tickInterval, tickPositions = axis.tickPositions, tickAmount = axis.tickAmount, finalTickAmt = axis.finalTickAmt, currentTickAmount = tickPositions && tickPositions.length, threshold = pick(axis.threshold, axis.softThreshold ? 0 : null);
1538
- var len, i;
1539
- if (axis.hasData() &&
1540
- isNumber(axis.min) &&
1541
- isNumber(axis.max)) { // #14769
1542
- if (currentTickAmount < tickAmount) {
1599
+ var axis = this, finalTickAmt = axis.finalTickAmt, max = axis.max, min = axis.min, options = axis.options, tickPositions = axis.tickPositions, tickAmount = axis.tickAmount, thresholdAlignment = axis.thresholdAlignment, currentTickAmount = tickPositions && tickPositions.length, threshold = pick(axis.threshold, axis.softThreshold ? 0 : null);
1600
+ var len, i, tickInterval = axis.tickInterval, thresholdTickIndex;
1601
+ var
1602
+ // Extend the tickPositions by appending a position
1603
+ append = function () { return tickPositions.push(correctFloat(tickPositions[tickPositions.length - 1] +
1604
+ tickInterval)); },
1605
+ // Extend the tickPositions by prepending a position
1606
+ prepend = function () { return tickPositions.unshift(correctFloat(tickPositions[0] - tickInterval)); };
1607
+ // If `thresholdAlignment` is a number, it means the `alignThresholds`
1608
+ // option is true. The `thresholdAlignment` is a scalar value between 0
1609
+ // and 1 for where the threshold should be relative to `axis.min` and
1610
+ // `axis.max`. Now that we know the tick amount, convert this to the
1611
+ // tick index. Unless `thresholdAlignment` is exactly 0 or 1, avoid the
1612
+ // first or last tick because that would lead to series being clipped.
1613
+ if (isNumber(thresholdAlignment)) {
1614
+ thresholdTickIndex = thresholdAlignment < 0.5 ?
1615
+ Math.ceil(thresholdAlignment * (tickAmount - 1)) :
1616
+ Math.floor(thresholdAlignment * (tickAmount - 1));
1617
+ if (options.reversed) {
1618
+ thresholdTickIndex = tickAmount - 1 - thresholdTickIndex;
1619
+ }
1620
+ }
1621
+ if (axis.hasData() && isNumber(min) && isNumber(max)) { // #14769
1622
+ // Adjust extremes and translation to the modified tick positions
1623
+ var adjustExtremes = function () {
1624
+ axis.transA *= (currentTickAmount - 1) / (tickAmount - 1);
1625
+ // Do not crop when ticks are not extremes (#9841)
1626
+ axis.min = options.startOnTick ?
1627
+ tickPositions[0] :
1628
+ Math.min(min, tickPositions[0]);
1629
+ axis.max = options.endOnTick ?
1630
+ tickPositions[tickPositions.length - 1] :
1631
+ Math.max(max, tickPositions[tickPositions.length - 1]);
1632
+ };
1633
+ // When the axis is subject to the alignThresholds option. Use
1634
+ // axis.threshold because the local threshold includes the
1635
+ // `softThreshold`.
1636
+ if (isNumber(thresholdTickIndex) && isNumber(axis.threshold)) {
1637
+ // Throw away the previously computed tickPositions and start
1638
+ // from scratch with only the threshold itself, then add ticks
1639
+ // below the threshold first, then fill up above the threshold.
1640
+ // If we are not able to fill up to axis.max, double the
1641
+ // tickInterval and run again.
1642
+ while (tickPositions[thresholdTickIndex] !== threshold ||
1643
+ tickPositions.length !== tickAmount ||
1644
+ tickPositions[0] > min ||
1645
+ tickPositions[tickPositions.length - 1] < max) {
1646
+ tickPositions.length = 0;
1647
+ tickPositions.push(axis.threshold);
1648
+ while (tickPositions.length < tickAmount) {
1649
+ if (
1650
+ // Start by prepending positions until the threshold
1651
+ // is at the required index...
1652
+ tickPositions[thresholdTickIndex] === void 0 ||
1653
+ tickPositions[thresholdTickIndex] > axis.threshold) {
1654
+ prepend();
1655
+ }
1656
+ else {
1657
+ // ... then append positions until we have the
1658
+ // required length
1659
+ append();
1660
+ }
1661
+ }
1662
+ // Safety vent
1663
+ if (tickInterval > axis.tickInterval * 8) {
1664
+ break;
1665
+ }
1666
+ tickInterval *= 2;
1667
+ }
1668
+ adjustExtremes();
1669
+ }
1670
+ else if (currentTickAmount < tickAmount) {
1543
1671
  while (tickPositions.length < tickAmount) {
1544
1672
  // Extend evenly for both sides unless we're on the
1545
1673
  // threshold (#3965)
1546
- if (tickPositions.length % 2 ||
1547
- axis.min === threshold) {
1548
- // to the end
1549
- tickPositions.push(correctFloat(tickPositions[tickPositions.length - 1] +
1550
- tickInterval));
1674
+ if (tickPositions.length % 2 || min === threshold) {
1675
+ append();
1551
1676
  }
1552
1677
  else {
1553
- // to the start
1554
- tickPositions.unshift(correctFloat(tickPositions[0] - tickInterval));
1678
+ prepend();
1555
1679
  }
1556
1680
  }
1557
- axis.transA *= (currentTickAmount - 1) / (tickAmount - 1);
1558
- // Do not crop when ticks are not extremes (#9841)
1559
- axis.min = axisOptions.startOnTick ?
1560
- tickPositions[0] :
1561
- Math.min(axis.min, tickPositions[0]);
1562
- axis.max = axisOptions.endOnTick ?
1563
- tickPositions[tickPositions.length - 1] :
1564
- Math.max(axis.max, tickPositions[tickPositions.length - 1]);
1565
- // We have too many ticks, run second pass to try to reduce ticks
1566
- }
1567
- else if (currentTickAmount > tickAmount) {
1568
- axis.tickInterval *= 2;
1569
- axis.setTickPositions();
1681
+ adjustExtremes();
1570
1682
  }
1571
1683
  // The finalTickAmt property is set in getTickAmount
1572
1684
  if (defined(finalTickAmt)) {
@@ -1804,7 +1916,7 @@ var Axis = /** @class */ (function () {
1804
1916
  * @param {number} threshold
1805
1917
  * The threshold in axis values.
1806
1918
  *
1807
- * @return {number|undefined}
1919
+ * @return {number}
1808
1920
  * The translated threshold position in terms of pixels, and corrected to
1809
1921
  * stay within the axis bounds.
1810
1922
  */
@@ -2233,8 +2345,8 @@ var Axis = /** @class */ (function () {
2233
2345
  if (!axis.axisGroup) {
2234
2346
  var createGroup = function (name, suffix, zIndex) { return renderer.g(name)
2235
2347
  .attr({ zIndex: zIndex })
2236
- .addClass("highcharts-" + coll.toLowerCase() + suffix + " " +
2237
- (_this.isRadial ? "highcharts-radial-axis" + suffix + " " : '') +
2348
+ .addClass("highcharts-".concat(coll.toLowerCase()).concat(suffix, " ") +
2349
+ (_this.isRadial ? "highcharts-radial-axis".concat(suffix, " ") : '') +
2238
2350
  (className || ''))
2239
2351
  .add(axisParent); };
2240
2352
  axis.gridGroup = createGroup('grid', '-grid', options.gridZIndex);
@@ -2405,18 +2517,18 @@ var Axis = /** @class */ (function () {
2405
2517
  // The part of a multiline text that is below the baseline of the
2406
2518
  // first line. Subtract 1 to preserve pixel-perfectness from the
2407
2519
  // old behaviour (v5.0.12), where only one line was allowed.
2408
- textHeightOvershoot = Math.max(axisTitle.getBBox(null, 0).height - fontMetrics.h - 1, 0),
2520
+ textHeightOvershoot = axisTitle ? Math.max(axisTitle.getBBox(false, 0).height - fontMetrics.h - 1, 0) : 0,
2409
2521
  // the position in the length direction of the axis
2410
- alongAxis = {
2522
+ alongAxis = ({
2411
2523
  low: margin + (horiz ? 0 : axisLength),
2412
2524
  middle: margin + axisLength / 2,
2413
2525
  high: margin + (horiz ? axisLength : 0)
2414
- }[axisTitleOptions.align],
2526
+ })[axisTitleOptions.align],
2415
2527
  // the position in the perpendicular direction of the axis
2416
2528
  offAxis = (horiz ? axisTop + this.height : axisLeft) +
2417
2529
  (horiz ? 1 : -1) * // horizontal axis reverses the margin
2418
2530
  (opposite ? -1 : 1) * // so does opposite axes
2419
- this.axisTitleMargin +
2531
+ (this.axisTitleMargin || 0) +
2420
2532
  [
2421
2533
  -textHeightOvershoot,
2422
2534
  textHeightOvershoot,
@@ -2618,14 +2730,8 @@ var Axis = /** @class */ (function () {
2618
2730
  }
2619
2731
  if (axisTitle && showAxis) {
2620
2732
  var titleXy = axis.getTitlePosition();
2621
- if (isNumber(titleXy.y)) {
2622
- axisTitle[axisTitle.isNew ? 'attr' : 'animate'](titleXy);
2623
- axisTitle.isNew = false;
2624
- }
2625
- else {
2626
- axisTitle.attr('y', -9999);
2627
- axisTitle.isNew = true;
2628
- }
2733
+ axisTitle[axisTitle.isNew ? 'attr' : 'animate'](titleXy);
2734
+ axisTitle.isNew = false;
2629
2735
  }
2630
2736
  // Stacked totals:
2631
2737
  if (stackLabelOptions && stackLabelOptions.enabled && axis.stacking) {
@@ -2812,10 +2918,10 @@ var Axis = /** @class */ (function () {
2812
2918
  stroke: options.color ||
2813
2919
  (categorized ?
2814
2920
  Color
2815
- .parse("#ccd6eb" /* highlightColor20 */)
2921
+ .parse("#ccd6eb" /* Palette.highlightColor20 */)
2816
2922
  .setOpacity(0.25)
2817
2923
  .get() :
2818
- "#cccccc" /* neutralColor20 */),
2924
+ "#cccccc" /* Palette.neutralColor20 */),
2819
2925
  'stroke-width': pick(options.width, 1)
2820
2926
  }).css({
2821
2927
  'pointer-events': 'none'
@@ -966,7 +966,7 @@ var AxisDefaults;
966
966
  */
967
967
  style: {
968
968
  /** @internal */
969
- color: "#666666" /* neutralColor60 */,
969
+ color: "#666666" /* Palette.neutralColor60 */,
970
970
  /** @internal */
971
971
  cursor: 'default',
972
972
  /** @internal */
@@ -1801,7 +1801,7 @@ var AxisDefaults;
1801
1801
  */
1802
1802
  style: {
1803
1803
  /** @internal */
1804
- color: "#666666" /* neutralColor60 */
1804
+ color: "#666666" /* Palette.neutralColor60 */
1805
1805
  }
1806
1806
  },
1807
1807
  /**
@@ -1918,7 +1918,7 @@ var AxisDefaults;
1918
1918
  * @type {Highcharts.ColorType}
1919
1919
  * @default #f2f2f2
1920
1920
  */
1921
- minorGridLineColor: "#f2f2f2" /* neutralColor5 */,
1921
+ minorGridLineColor: "#f2f2f2" /* Palette.neutralColor5 */,
1922
1922
  /**
1923
1923
  * Width of the minor, secondary grid lines.
1924
1924
  *
@@ -1944,7 +1944,7 @@ var AxisDefaults;
1944
1944
  * @type {Highcharts.ColorType}
1945
1945
  * @default #999999
1946
1946
  */
1947
- minorTickColor: "#999999" /* neutralColor40 */,
1947
+ minorTickColor: "#999999" /* Palette.neutralColor40 */,
1948
1948
  /**
1949
1949
  * The color of the line marking the axis itself.
1950
1950
  *
@@ -1965,7 +1965,7 @@ var AxisDefaults;
1965
1965
  * @type {Highcharts.ColorType}
1966
1966
  * @default #ccd6eb
1967
1967
  */
1968
- lineColor: "#ccd6eb" /* highlightColor20 */,
1968
+ lineColor: "#ccd6eb" /* Palette.highlightColor20 */,
1969
1969
  /**
1970
1970
  * The width of the line marking the axis itself.
1971
1971
  *
@@ -2002,7 +2002,7 @@ var AxisDefaults;
2002
2002
  * @type {Highcharts.ColorType}
2003
2003
  * @default #e6e6e6
2004
2004
  */
2005
- gridLineColor: "#e6e6e6" /* neutralColor10 */,
2005
+ gridLineColor: "#e6e6e6" /* Palette.neutralColor10 */,
2006
2006
  /**
2007
2007
  * The width of the grid lines extending the ticks across the plot area.
2008
2008
  * Defaults to 1 on the Y axis and 0 on the X axis, except for 3d
@@ -2060,7 +2060,7 @@ var AxisDefaults;
2060
2060
  * @type {Highcharts.ColorType}
2061
2061
  * @default #ccd6eb
2062
2062
  */
2063
- tickColor: "#ccd6eb" /* highlightColor20 */
2063
+ tickColor: "#ccd6eb" /* Palette.highlightColor20 */
2064
2064
  // tickWidth: 1
2065
2065
  };
2066
2066
  /**
@@ -2850,7 +2850,7 @@ var AxisDefaults;
2850
2850
  */
2851
2851
  style: {
2852
2852
  /** @internal */
2853
- color: "#000000" /* neutralColor100 */,
2853
+ color: "#000000" /* Palette.neutralColor100 */,
2854
2854
  /** @internal */
2855
2855
  fontSize: '11px',
2856
2856
  /** @internal */
@@ -12,10 +12,12 @@ var __extends = (this && this.__extends) || (function () {
12
12
  var extendStatics = function (d, b) {
13
13
  extendStatics = Object.setPrototypeOf ||
14
14
  ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
15
- function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
15
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
16
16
  return extendStatics(d, b);
17
17
  };
18
18
  return function (d, b) {
19
+ if (typeof b !== "function" && b !== null)
20
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
19
21
  extendStatics(d, b);
20
22
  function __() { this.constructor = d; }
21
23
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
@@ -302,6 +304,16 @@ var ColorAxis = /** @class */ (function (_super) {
302
304
  axis.axisParent = group;
303
305
  // Call the base
304
306
  _super.prototype.getOffset.call(this);
307
+ var legend_1 = this.chart.legend;
308
+ // Adds `maxLabelLength` needed for label padding corrections done
309
+ // by `render()` and `getMargins()` (#15551).
310
+ legend_1.allItems.forEach(function (item) {
311
+ if (item instanceof ColorAxis) {
312
+ item.drawLegendSymbol(legend_1, item);
313
+ }
314
+ });
315
+ legend_1.render();
316
+ this.chart.getMargins(true);
305
317
  // First time only
306
318
  if (!axis.added) {
307
319
  axis.added = true;
@@ -344,17 +356,24 @@ var ColorAxis = /** @class */ (function (_super) {
344
356
  var horiz = axis.horiz;
345
357
  var width = pick(legendOptions.symbolWidth, horiz ? ColorAxis.defaultLegendLength : 12);
346
358
  var height = pick(legendOptions.symbolHeight, horiz ? 12 : ColorAxis.defaultLegendLength);
347
- var labelPadding = pick(legendOptions.labelPadding, horiz ? 16 : 30);
359
+ var labelPadding = pick(
360
+ // @todo: This option is not documented, nor implemented when
361
+ // vertical
362
+ legendOptions.labelPadding, horiz ? 16 : 30);
348
363
  var itemDistance = pick(legendOptions.itemDistance, 10);
349
364
  this.setLegendColor();
350
365
  // Create the gradient
351
- item.legendSymbol = this.chart.renderer.rect(0, legend.baseline - 11, width, height).attr({
352
- zIndex: 1
353
- }).add(item.legendGroup);
366
+ if (!item.legendSymbol) {
367
+ item.legendSymbol = this.chart.renderer.rect(0, legend.baseline - 11, width, height).attr({
368
+ zIndex: 1
369
+ }).add(item.legendGroup);
370
+ }
354
371
  // Set how much space this legend item takes up
355
372
  axis.legendItemWidth = (width +
356
373
  padding +
357
- (horiz ? itemDistance : labelPadding));
374
+ (horiz ?
375
+ itemDistance :
376
+ this.options.labels.x + this.maxLabelLength));
358
377
  axis.legendItemHeight = height + padding + (horiz ? labelPadding : 0);
359
378
  };
360
379
  /**
@@ -608,7 +627,7 @@ var ColorAxis = /** @class */ (function (_super) {
608
627
  setState: noop,
609
628
  isDataClass: true,
610
629
  setVisible: function () {
611
- vis = axis.visible = !vis;
630
+ this.visible = vis = axis.visible = !vis;
612
631
  axis.series.forEach(function (series) {
613
632
  series.points.forEach(function (point) {
614
633
  if (point.dataClass === i) {
@@ -297,7 +297,7 @@ var colorAxisDefaults = {
297
297
  * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
298
298
  * @product highcharts highstock highmaps
299
299
  */
300
- color: "#999999" /* neutralColor40 */
300
+ color: "#999999" /* Palette.neutralColor40 */
301
301
  },
302
302
  /**
303
303
  * The axis labels show the number for each tick.
@@ -339,7 +339,7 @@ var colorAxisDefaults = {
339
339
  * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
340
340
  * @product highcharts highstock highmaps
341
341
  */
342
- minColor: "#e6ebf5" /* highlightColor10 */,
342
+ minColor: "#e6ebf5" /* Palette.highlightColor10 */,
343
343
  /**
344
344
  * The color to represent the maximum of the color axis. Unless
345
345
  * [dataClasses](#colorAxis.dataClasses) or
@@ -358,7 +358,7 @@ var colorAxisDefaults = {
358
358
  * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
359
359
  * @product highcharts highstock highmaps
360
360
  */
361
- maxColor: "#003399" /* highlightColor100 */,
361
+ maxColor: "#003399" /* Palette.highlightColor100 */,
362
362
  /**
363
363
  * Color stops for the gradient of a scalar color axis. Use this in
364
364
  * cases where a linear gradient between a `minColor` and `maxColor`
@@ -179,10 +179,12 @@ var DateTimeAxis;
179
179
  * @private
180
180
  */
181
181
  Additions.prototype.getXDateFormat = function (x, dateTimeLabelFormats) {
182
- var axis = this.axis;
182
+ var axis = this.axis, time = axis.chart.time;
183
183
  return axis.closestPointRange ?
184
- axis.chart.time.getDateFormat(axis.closestPointRange, x, axis.options.startOfWeek, dateTimeLabelFormats) || dateTimeLabelFormats.year : // #2546, 2581
185
- dateTimeLabelFormats.day;
184
+ time.getDateFormat(axis.closestPointRange, x, axis.options.startOfWeek, dateTimeLabelFormats) ||
185
+ // #2546, 2581
186
+ time.resolveDTLFormat(dateTimeLabelFormats.year).main :
187
+ time.resolveDTLFormat(dateTimeLabelFormats.day).main;
186
188
  };
187
189
  return Additions;
188
190
  }());