highcharts 10.1.0 → 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 (772) hide show
  1. package/bower.json +1 -1
  2. package/es-modules/Accessibility/Accessibility.js +2 -3
  3. package/es-modules/Accessibility/Components/AnnotationsA11y.js +3 -3
  4. package/es-modules/Accessibility/Components/ContainerComponent.js +3 -1
  5. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +5 -3
  6. package/es-modules/Accessibility/Components/LegendComponent.js +3 -3
  7. package/es-modules/Accessibility/Components/MenuComponent.js +3 -1
  8. package/es-modules/Accessibility/Components/RangeSelectorComponent.js +3 -1
  9. package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +3 -1
  10. package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +12 -6
  11. package/es-modules/Accessibility/Components/ZoomComponent.js +30 -70
  12. package/es-modules/Accessibility/HighContrastMode.js +1 -1
  13. package/es-modules/Accessibility/KeyboardNavigation.js +2 -2
  14. package/es-modules/Accessibility/Options/{Options.js → A11yDefaults.js} +6 -1
  15. package/es-modules/Accessibility/Options/DeprecatedOptions.js +12 -2
  16. package/es-modules/Accessibility/Options/{LangOptions.js → LangDefaults.js} +10 -0
  17. package/es-modules/Accessibility/Utils/ChartUtilities.js +1 -1
  18. package/es-modules/Core/Animation/Fx.js +1 -1
  19. package/es-modules/Core/Axis/Axis.js +18 -19
  20. package/es-modules/Core/Axis/AxisDefaults.js +8 -8
  21. package/es-modules/Core/Axis/Color/ColorAxis.js +4 -2
  22. package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +3 -3
  23. package/es-modules/Core/Axis/DateTimeAxis.js +5 -3
  24. package/es-modules/Core/Axis/GridAxis.js +817 -821
  25. package/es-modules/Core/Axis/OrdinalAxis.js +23 -1
  26. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +2 -2
  27. package/es-modules/Core/Axis/Tick.js +20 -16
  28. package/es-modules/Core/Axis/TreeGridTick.js +2 -2
  29. package/es-modules/Core/Axis/ZAxis.js +3 -1
  30. package/es-modules/Core/Chart/Chart.js +13 -12
  31. package/es-modules/Core/Chart/ChartDefaults.js +3 -3
  32. package/es-modules/Core/Chart/GanttChart.js +3 -1
  33. package/es-modules/Core/Chart/MapChart.js +3 -1
  34. package/es-modules/Core/Chart/StockChart.js +6 -4
  35. package/es-modules/Core/Color/Color.js +1 -1
  36. package/es-modules/Core/DefaultOptions.js +11 -11
  37. package/es-modules/Core/Globals.js +1 -1
  38. package/es-modules/Core/HttpUtilities.js +39 -37
  39. package/es-modules/Core/Legend/Legend.js +3 -3
  40. package/es-modules/Core/MSPointer.js +3 -1
  41. package/es-modules/Core/Navigator.js +6 -6
  42. package/es-modules/Core/Pointer.js +1 -1
  43. package/es-modules/Core/Renderer/HTML/AST.js +1 -1
  44. package/es-modules/Core/Renderer/HTML/HTMLElement.js +3 -1
  45. package/es-modules/Core/Renderer/HTML/HTMLRenderer.js +3 -1
  46. package/es-modules/Core/Renderer/SVG/SVGElement.js +7 -7
  47. package/es-modules/Core/Renderer/SVG/SVGLabel.js +3 -1
  48. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +37 -35
  49. package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +3 -1
  50. package/es-modules/Core/ScrollbarDefaults.js +8 -8
  51. package/es-modules/Core/Series/DataLabel.js +2 -2
  52. package/es-modules/Core/Series/Point.js +9 -0
  53. package/es-modules/Core/Series/Series.js +5 -5
  54. package/es-modules/Core/Series/Series3D.js +3 -1
  55. package/es-modules/Core/Series/SeriesDefaults.js +3 -3
  56. package/es-modules/Core/Time.js +6 -7
  57. package/es-modules/Core/Tooltip.js +3 -3
  58. package/es-modules/Core/Utilities.js +5 -5
  59. package/es-modules/Data/DataConverter.js +1 -1
  60. package/es-modules/Data/DataTable.js +12 -10
  61. package/es-modules/Data/Modifiers/ChainModifier.js +3 -1
  62. package/es-modules/Data/Modifiers/GroupModifier.js +3 -1
  63. package/es-modules/Data/Modifiers/InvertModifier.js +9 -7
  64. package/es-modules/Data/Modifiers/RangeModifier.js +3 -1
  65. package/es-modules/Data/Modifiers/SeriesPointsModifier.js +3 -1
  66. package/es-modules/Data/Modifiers/SortModifier.js +3 -1
  67. package/es-modules/Data/Parsers/CSVParser.js +3 -1
  68. package/es-modules/Data/Parsers/DataParser.js +1 -1
  69. package/es-modules/Data/Parsers/GoogleSheetsParser.js +3 -2
  70. package/es-modules/Data/Parsers/HTMLTableParser.js +3 -1
  71. package/es-modules/Data/Stores/CSVStore.js +8 -5
  72. package/es-modules/Data/Stores/GoogleSheetsStore.js +3 -1
  73. package/es-modules/Data/Stores/HTMLTableStore.js +3 -1
  74. package/es-modules/Extensions/Annotations/{Annotations.js → Annotation.js} +21 -9
  75. package/es-modules/Extensions/Annotations/AnnotationsDefaults.js +0 -0
  76. package/es-modules/Extensions/Annotations/Controllables/ControllableEllipse.js +5 -2
  77. package/es-modules/Extensions/Annotations/NavigationBindings.js +8 -5
  78. package/es-modules/Extensions/Annotations/Popup.js +2 -2
  79. package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +13 -9
  80. package/es-modules/Extensions/Annotations/Types/CrookedLine.js +4 -2
  81. package/es-modules/Extensions/Annotations/Types/ElliottWave.js +4 -2
  82. package/es-modules/Extensions/Annotations/Types/Fibonacci.js +5 -3
  83. package/es-modules/Extensions/Annotations/Types/FibonacciTimeZones.js +4 -2
  84. package/es-modules/Extensions/Annotations/Types/InfinityLine.js +4 -2
  85. package/es-modules/Extensions/Annotations/Types/Measure.js +4 -2
  86. package/es-modules/Extensions/Annotations/Types/Pitchfork.js +4 -2
  87. package/es-modules/Extensions/Annotations/Types/TimeCycles.js +4 -2
  88. package/es-modules/Extensions/Annotations/Types/Tunnel.js +5 -2
  89. package/es-modules/Extensions/Annotations/Types/VerticalLine.js +4 -2
  90. package/es-modules/Extensions/Boost/BoostAttach.js +5 -1
  91. package/es-modules/Extensions/Boost/BoostInit.js +3 -2
  92. package/es-modules/Extensions/BoostCanvas.js +11 -5
  93. package/es-modules/Extensions/Breadcrumbs.js +31 -6
  94. package/es-modules/Extensions/CurrentDateIndication.js +1 -1
  95. package/es-modules/Extensions/Data.js +638 -602
  96. package/es-modules/Extensions/DownloadURL.js +3 -3
  97. package/es-modules/Extensions/DragPanes.js +1 -1
  98. package/es-modules/Extensions/Drilldown.js +2 -2
  99. package/es-modules/Extensions/ExportData.js +57 -7
  100. package/es-modules/Extensions/Exporting/Exporting.js +3 -3
  101. package/es-modules/Extensions/Exporting/ExportingDefaults.js +7 -7
  102. package/es-modules/Extensions/GeoJSON.js +0 -2
  103. package/es-modules/Extensions/MarkerClusters.js +3 -3
  104. package/es-modules/Extensions/NoDataToDisplay.js +1 -1
  105. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
  106. package/es-modules/Extensions/Oldie/Oldie.js +2 -2
  107. package/es-modules/Extensions/Pane.js +3 -3
  108. package/es-modules/Extensions/ParallelCoordinates.js +1 -1
  109. package/es-modules/Extensions/PatternFill.js +14 -2
  110. package/es-modules/Extensions/RangeSelector.js +29 -18
  111. package/es-modules/Extensions/ScrollablePlotArea.js +3 -3
  112. package/es-modules/Extensions/{SeriesLabel.js → SeriesLabel/SeriesLabel.js} +262 -384
  113. package/es-modules/Extensions/SeriesLabel/SeriesLabelDefaults.js +124 -0
  114. package/es-modules/Extensions/SeriesLabel/SeriesLabelUtilities.js +67 -0
  115. package/es-modules/Extensions/Sonification/Earcon.js +1 -1
  116. package/es-modules/Extensions/Stacking.js +1 -1
  117. package/es-modules/Maps/MapNavigation.js +2 -2
  118. package/es-modules/Maps/MapView.js +23 -16
  119. package/es-modules/Maps/MapViewInsetsOptionsDefault.js +1 -1
  120. package/es-modules/Maps/Projection.js +13 -11
  121. package/es-modules/Series/ArcDiagram/ArcDiagramPoint.js +3 -1
  122. package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +3 -1
  123. package/es-modules/Series/Area/AreaSeries.js +21 -14
  124. package/es-modules/Series/AreaRange/AreaRangePoint.js +24 -11
  125. package/es-modules/Series/AreaRange/AreaRangeSeries.js +154 -147
  126. package/es-modules/Series/AreaSpline/AreaSplineSeries.js +45 -41
  127. package/es-modules/Series/AreaSplineRange/AreaSplineRangeSeries.js +43 -43
  128. package/es-modules/Series/Bar/BarSeries.js +3 -1
  129. package/es-modules/Series/Bellcurve/BellcurveSeries.js +3 -1
  130. package/es-modules/Series/BoxPlot/BoxPlotSeries.js +4 -2
  131. package/es-modules/Series/Bubble/BubbleLegendDefaults.js +1 -1
  132. package/es-modules/Series/Bubble/BubblePoint.js +3 -1
  133. package/es-modules/Series/Bubble/BubbleSeries.js +15 -6
  134. package/es-modules/Series/Bullet/BulletPoint.js +3 -1
  135. package/es-modules/Series/Bullet/BulletSeries.js +4 -3
  136. package/es-modules/Series/Candlestick/CandlestickSeries.js +5 -3
  137. package/es-modules/Series/CenteredUtilities.js +2 -1
  138. package/es-modules/Series/ColorMapComposition.js +111 -0
  139. package/es-modules/Series/Column/ColumnSeries.js +6 -4
  140. package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +3 -1
  141. package/es-modules/Series/ColumnRange/ColumnRangePoint.js +17 -13
  142. package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +60 -57
  143. package/es-modules/Series/Cylinder/CylinderPoint.js +3 -1
  144. package/es-modules/Series/Cylinder/CylinderSeries.js +3 -1
  145. package/es-modules/Series/DependencyWheel/DependencyWheelPoint.js +3 -1
  146. package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +3 -1
  147. package/es-modules/Series/DotPlot/DotPlotSeries.js +3 -1
  148. package/es-modules/Series/DrawPointUtilities.js +87 -0
  149. package/es-modules/Series/Dumbbell/DumbbellPoint.js +3 -1
  150. package/es-modules/Series/Dumbbell/DumbbellSeries.js +4 -2
  151. package/es-modules/Series/ErrorBar/ErrorBarSeries.js +4 -2
  152. package/es-modules/Series/Flags/FlagsPoint.js +4 -1
  153. package/es-modules/Series/Flags/FlagsSeries.js +6 -4
  154. package/es-modules/Series/Funnel/FunnelSeries.js +5 -3
  155. package/es-modules/Series/Funnel3D/Funnel3DPoint.js +3 -1
  156. package/es-modules/Series/Funnel3D/Funnel3DSeries.js +3 -1
  157. package/es-modules/Series/Gantt/GanttPoint.js +3 -1
  158. package/es-modules/Series/Gantt/GanttSeries.js +3 -1
  159. package/es-modules/Series/Gauge/GaugePoint.js +3 -1
  160. package/es-modules/Series/Gauge/GaugeSeries.js +195 -173
  161. package/es-modules/Series/HLC/HLCPoint.js +3 -1
  162. package/es-modules/Series/HLC/HLCSeries.js +4 -2
  163. package/es-modules/Series/Heatmap/HeatmapPoint.js +7 -5
  164. package/es-modules/Series/Heatmap/HeatmapSeries.js +16 -13
  165. package/es-modules/Series/HeikinAshi/HeikinAshiPoint.js +3 -1
  166. package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +3 -1
  167. package/es-modules/Series/Histogram/HistogramSeries.js +3 -1
  168. package/es-modules/Series/HollowCandlestick/HollowCandlestickPoint.js +3 -1
  169. package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +11 -9
  170. package/es-modules/Series/Item/ItemPoint.js +3 -1
  171. package/es-modules/Series/Item/ItemSeries.js +3 -1
  172. package/es-modules/Series/Line/LineSeries.js +4 -2
  173. package/es-modules/Series/Lollipop/LollipopPoint.js +3 -1
  174. package/es-modules/Series/Lollipop/LollipopSeries.js +3 -1
  175. package/es-modules/Series/Map/MapPoint.js +8 -6
  176. package/es-modules/Series/Map/MapSeries.js +98 -26
  177. package/es-modules/Series/MapBubble/MapBubblePoint.js +3 -1
  178. package/es-modules/Series/MapBubble/MapBubbleSeries.js +3 -1
  179. package/es-modules/Series/MapLine/MapLineSeries.js +18 -1
  180. package/es-modules/Series/MapPoint/MapPointPoint.js +4 -2
  181. package/es-modules/Series/MapPoint/MapPointSeries.js +10 -2
  182. package/es-modules/Series/Networkgraph/Networkgraph.js +3 -1
  183. package/es-modules/Series/NodesComposition.js +45 -40
  184. package/es-modules/Series/OHLC/OHLCPoint.js +3 -1
  185. package/es-modules/Series/OHLC/OHLCSeries.js +3 -1
  186. package/es-modules/Series/Organization/OrganizationPoint.js +3 -1
  187. package/es-modules/Series/Organization/OrganizationSeries.js +5 -3
  188. package/es-modules/Series/PackedBubble/PackedBubbleComposition.js +0 -2
  189. package/es-modules/Series/PackedBubble/PackedBubblePoint.js +3 -1
  190. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +3 -1
  191. package/es-modules/Series/ParetoSeries/ParetoSeries.js +3 -1
  192. package/es-modules/Series/Pie/PieDataLabel.js +1 -1
  193. package/es-modules/Series/Pie/PiePoint.js +3 -1
  194. package/es-modules/Series/Pie/PieSeries.js +39 -36
  195. package/es-modules/Series/Pie3D/Pie3DPoint.js +3 -1
  196. package/es-modules/Series/Pie3D/Pie3DSeries.js +3 -1
  197. package/es-modules/Series/PolarComposition.js +819 -0
  198. package/es-modules/Series/Polygon/PolygonSeries.js +3 -1
  199. package/es-modules/Series/Pyramid/PyramidSeries.js +3 -1
  200. package/es-modules/Series/Pyramid3D/Pyramid3DSeries.js +3 -1
  201. package/es-modules/Series/Sankey/SankeyPoint.js +3 -1
  202. package/es-modules/Series/Sankey/SankeySeries.js +22 -8
  203. package/es-modules/Series/Scatter/ScatterSeries.js +10 -5
  204. package/es-modules/Series/Scatter3D/Scatter3DPoint.js +3 -1
  205. package/es-modules/Series/Scatter3D/Scatter3DSeries.js +3 -1
  206. package/es-modules/Series/SeriesOnPointComposition.js +391 -0
  207. package/es-modules/Series/SolidGauge/SolidGaugeSeries.js +5 -3
  208. package/es-modules/Series/Spline/SplineSeries.js +13 -4
  209. package/es-modules/Series/Streamgraph/StreamgraphSeries.js +3 -1
  210. package/es-modules/Series/Sunburst/SunburstPoint.js +3 -3
  211. package/es-modules/Series/Sunburst/SunburstSeries.js +7 -2
  212. package/es-modules/Series/Tilemap/TilemapPoint.js +3 -1
  213. package/es-modules/Series/Tilemap/TilemapSeries.js +3 -1
  214. package/es-modules/Series/Timeline/TimelinePoint.js +3 -1
  215. package/es-modules/Series/Timeline/TimelineSeries.js +6 -4
  216. package/es-modules/Series/Treemap/TreemapPoint.js +8 -4
  217. package/es-modules/Series/Treemap/TreemapSeries.js +9 -7
  218. package/es-modules/Series/VariablePie/VariablePieSeries.js +3 -1
  219. package/es-modules/Series/Variwide/VariwidePoint.js +3 -1
  220. package/es-modules/Series/Variwide/VariwideSeries.js +3 -1
  221. package/es-modules/Series/Vector/VectorSeries.js +3 -1
  222. package/es-modules/Series/Venn/VennPoint.js +5 -5
  223. package/es-modules/Series/Venn/VennSeries.js +9 -6
  224. package/es-modules/Series/Waterfall/WaterfallPoint.js +3 -1
  225. package/es-modules/Series/Waterfall/WaterfallSeries.js +14 -12
  226. package/es-modules/Series/Windbarb/WindbarbPoint.js +3 -1
  227. package/es-modules/Series/Windbarb/WindbarbSeries.js +3 -1
  228. package/es-modules/Series/Wordcloud/WordcloudPoint.js +6 -6
  229. package/es-modules/Series/Wordcloud/WordcloudSeries.js +7 -4
  230. package/es-modules/Series/XRange/XRangePoint.js +3 -1
  231. package/es-modules/Series/XRange/XRangeSeries.js +3 -1
  232. package/es-modules/Stock/Indicators/ABands/ABandsIndicator.js +3 -1
  233. package/es-modules/Stock/Indicators/AD/ADIndicator.js +3 -1
  234. package/es-modules/Stock/Indicators/AO/AOIndicator.js +5 -3
  235. package/es-modules/Stock/Indicators/APO/APOIndicator.js +3 -1
  236. package/es-modules/Stock/Indicators/ATR/ATRIndicator.js +3 -1
  237. package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +3 -1
  238. package/es-modules/Stock/Indicators/AroonOscillator/AroonOscillatorIndicator.js +3 -1
  239. package/es-modules/Stock/Indicators/BB/BBIndicator.js +6 -4
  240. package/es-modules/Stock/Indicators/CCI/CCIIndicator.js +3 -1
  241. package/es-modules/Stock/Indicators/CMF/CMFIndicator.js +3 -1
  242. package/es-modules/Stock/Indicators/CMO/CMOIndicator.js +3 -1
  243. package/es-modules/Stock/Indicators/Chaikin/ChaikinIndicator.js +3 -1
  244. package/es-modules/Stock/Indicators/DEMA/DEMAIndicator.js +3 -1
  245. package/es-modules/Stock/Indicators/DMI/DMIIndicator.js +13 -7
  246. package/es-modules/Stock/Indicators/DPO/DPOIndicator.js +3 -1
  247. package/es-modules/Stock/Indicators/DisparityIndex/DisparityIndexIndicator.js +3 -1
  248. package/es-modules/Stock/Indicators/EMA/EMAIndicator.js +3 -1
  249. package/es-modules/Stock/Indicators/IKH/IKHIndicator.js +3 -1
  250. package/es-modules/Stock/Indicators/KeltnerChannels/KeltnerChannelsIndicator.js +3 -1
  251. package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +3 -1
  252. package/es-modules/Stock/Indicators/LinearRegression/LinearRegression.js +3 -1
  253. package/es-modules/Stock/Indicators/LinearRegressionAngle/LinearRegressionAngle.js +3 -1
  254. package/es-modules/Stock/Indicators/LinearRegressionIntercept/LinearRegressionIntercept.js +3 -1
  255. package/es-modules/Stock/Indicators/LinearRegressionSlopes/LinearRegressionSlopes.js +3 -1
  256. package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +26 -13
  257. package/es-modules/Stock/Indicators/MFI/MFIIndicator.js +3 -1
  258. package/es-modules/Stock/Indicators/Momentum/MomentumIndicator.js +3 -1
  259. package/es-modules/Stock/Indicators/MultipleLinesComposition.js +85 -95
  260. package/es-modules/Stock/Indicators/NATR/NATRIndicator.js +3 -1
  261. package/es-modules/Stock/Indicators/OBV/OBVIndicator.js +3 -1
  262. package/es-modules/Stock/Indicators/PC/PCIndicator.js +3 -1
  263. package/es-modules/Stock/Indicators/PPO/PPOIndicator.js +3 -1
  264. package/es-modules/Stock/Indicators/PSAR/PSARIndicator.js +3 -1
  265. package/es-modules/Stock/Indicators/PivotPoints/PivotPointsIndicator.js +3 -1
  266. package/es-modules/Stock/Indicators/PivotPoints/PivotPointsPoint.js +3 -1
  267. package/es-modules/Stock/Indicators/PriceEnvelopes/PriceEnvelopesIndicator.js +3 -1
  268. package/es-modules/Stock/Indicators/ROC/ROCIndicator.js +3 -1
  269. package/es-modules/Stock/Indicators/RSI/RSIIndicator.js +3 -1
  270. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +3 -1
  271. package/es-modules/Stock/Indicators/SlowStochastic/SlowStochasticIndicator.js +3 -1
  272. package/es-modules/Stock/Indicators/Stochastic/StochasticIndicator.js +3 -1
  273. package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +6 -4
  274. package/es-modules/Stock/Indicators/TEMA/TEMAIndicator.js +3 -1
  275. package/es-modules/Stock/Indicators/TRIX/TRIXIndicator.js +3 -1
  276. package/es-modules/Stock/Indicators/TrendLine/TrendLineIndicator.js +3 -1
  277. package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +3 -1
  278. package/es-modules/Stock/Indicators/VBP/VBPPoint.js +3 -1
  279. package/es-modules/Stock/Indicators/VWAP/VWAPIndicator.js +3 -1
  280. package/es-modules/Stock/Indicators/WMA/WMAIndicator.js +3 -1
  281. package/es-modules/Stock/Indicators/WilliamsR/WilliamsRIndicator.js +3 -1
  282. package/es-modules/Stock/Indicators/Zigzag/ZigzagIndicator.js +3 -1
  283. package/es-modules/Stock/StockToolsBindings.js +20 -19
  284. package/es-modules/Stock/StockToolsGui.js +1 -1
  285. package/es-modules/masters/highcharts-3d.src.js +1 -1
  286. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  287. package/es-modules/masters/highcharts-more.src.js +4 -4
  288. package/es-modules/masters/highcharts.src.js +1 -1
  289. package/es-modules/masters/highmaps.src.js +1 -1
  290. package/es-modules/masters/highstock.src.js +1 -1
  291. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  292. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  293. package/es-modules/masters/indicators/ao.src.js +1 -1
  294. package/es-modules/masters/indicators/apo.src.js +1 -1
  295. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  296. package/es-modules/masters/indicators/aroon.src.js +1 -1
  297. package/es-modules/masters/indicators/atr.src.js +1 -1
  298. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  299. package/es-modules/masters/indicators/cci.src.js +1 -1
  300. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  301. package/es-modules/masters/indicators/cmf.src.js +1 -1
  302. package/es-modules/masters/indicators/cmo.src.js +1 -1
  303. package/es-modules/masters/indicators/dema.src.js +1 -1
  304. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  305. package/es-modules/masters/indicators/dmi.src.js +1 -1
  306. package/es-modules/masters/indicators/dpo.src.js +1 -1
  307. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  308. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  309. package/es-modules/masters/indicators/indicators.src.js +1 -1
  310. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  311. package/es-modules/masters/indicators/klinger.src.js +1 -1
  312. package/es-modules/masters/indicators/macd.src.js +1 -1
  313. package/es-modules/masters/indicators/mfi.src.js +1 -1
  314. package/es-modules/masters/indicators/momentum.src.js +1 -1
  315. package/es-modules/masters/indicators/natr.src.js +1 -1
  316. package/es-modules/masters/indicators/obv.src.js +1 -1
  317. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  318. package/es-modules/masters/indicators/ppo.src.js +1 -1
  319. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  320. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  321. package/es-modules/masters/indicators/psar.src.js +1 -1
  322. package/es-modules/masters/indicators/regressions.src.js +1 -1
  323. package/es-modules/masters/indicators/roc.src.js +1 -1
  324. package/es-modules/masters/indicators/rsi.src.js +1 -1
  325. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  326. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  327. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  328. package/es-modules/masters/indicators/tema.src.js +1 -1
  329. package/es-modules/masters/indicators/trendline.src.js +1 -1
  330. package/es-modules/masters/indicators/trix.src.js +1 -1
  331. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  332. package/es-modules/masters/indicators/vwap.src.js +1 -1
  333. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  334. package/es-modules/masters/indicators/wma.src.js +1 -1
  335. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  336. package/es-modules/masters/modules/accessibility.src.js +1 -1
  337. package/es-modules/masters/modules/annotations-advanced.src.js +2 -2
  338. package/es-modules/masters/modules/annotations.src.js +2 -2
  339. package/es-modules/masters/modules/arc-diagram.src.js +1 -1
  340. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  341. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  342. package/es-modules/masters/modules/boost.src.js +1 -1
  343. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  344. package/es-modules/masters/modules/bullet.src.js +1 -1
  345. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  346. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  347. package/es-modules/masters/modules/cylinder.src.js +1 -1
  348. package/es-modules/masters/modules/data.src.js +2 -1
  349. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  350. package/es-modules/masters/modules/debugger.src.js +1 -1
  351. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  352. package/es-modules/masters/modules/dotplot.src.js +1 -1
  353. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  354. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  355. package/es-modules/masters/modules/drilldown.src.js +1 -1
  356. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  357. package/es-modules/masters/modules/export-data.src.js +1 -1
  358. package/es-modules/masters/modules/exporting.src.js +1 -1
  359. package/es-modules/masters/modules/full-screen.src.js +1 -1
  360. package/es-modules/masters/modules/funnel.src.js +1 -1
  361. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  362. package/es-modules/masters/modules/gantt.src.js +1 -1
  363. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  364. package/es-modules/masters/modules/heatmap.src.js +1 -1
  365. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  366. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  367. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  368. package/es-modules/masters/modules/item-series.src.js +1 -1
  369. package/es-modules/masters/modules/lollipop.src.js +1 -1
  370. package/es-modules/masters/modules/map.src.js +1 -1
  371. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  372. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  373. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  374. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  375. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  376. package/es-modules/masters/modules/oldie.src.js +1 -1
  377. package/es-modules/masters/modules/organization.src.js +1 -1
  378. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  379. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  380. package/es-modules/masters/modules/pareto.src.js +1 -1
  381. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  382. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  383. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  384. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  385. package/es-modules/masters/modules/sankey.src.js +1 -1
  386. package/es-modules/masters/modules/series-label.src.js +5 -2
  387. package/es-modules/masters/modules/series-on-point.src.js +16 -0
  388. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  389. package/es-modules/masters/modules/sonification.src.js +2 -6
  390. package/es-modules/masters/modules/static-scale.src.js +1 -1
  391. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  392. package/es-modules/masters/modules/stock.src.js +1 -1
  393. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  394. package/es-modules/masters/modules/sunburst.src.js +1 -1
  395. package/es-modules/masters/modules/tilemap.src.js +1 -1
  396. package/es-modules/masters/modules/timeline.src.js +1 -1
  397. package/es-modules/masters/modules/treegrid.src.js +1 -1
  398. package/es-modules/masters/modules/treemap.src.js +1 -1
  399. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  400. package/es-modules/masters/modules/variwide.src.js +1 -1
  401. package/es-modules/masters/modules/vector.src.js +1 -1
  402. package/es-modules/masters/modules/venn.src.js +1 -1
  403. package/es-modules/masters/modules/windbarb.src.js +1 -1
  404. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  405. package/es-modules/masters/modules/xrange.src.js +1 -1
  406. package/es-modules/masters/themes/avocado.src.js +1 -1
  407. package/es-modules/masters/themes/brand-dark.src.js +1 -1
  408. package/es-modules/masters/themes/brand-light.src.js +1 -1
  409. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  410. package/es-modules/masters/themes/dark-green.src.js +1 -1
  411. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  412. package/es-modules/masters/themes/gray.src.js +1 -1
  413. package/es-modules/masters/themes/grid-light.src.js +1 -1
  414. package/es-modules/masters/themes/grid.src.js +1 -1
  415. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  416. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  417. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  418. package/es-modules/masters/themes/skies.src.js +1 -1
  419. package/es-modules/masters/themes/sunset.src.js +1 -1
  420. package/highcharts-3d.js +1 -1
  421. package/highcharts-3d.src.js +1 -1
  422. package/highcharts-gantt.js +811 -809
  423. package/highcharts-gantt.js.map +1 -1
  424. package/highcharts-gantt.src.js +1271 -1213
  425. package/highcharts-more.d.ts +10 -0
  426. package/highcharts-more.js +194 -195
  427. package/highcharts-more.js.map +1 -1
  428. package/highcharts-more.src.d.ts +10 -0
  429. package/highcharts-more.src.js +5649 -5515
  430. package/highcharts.d.ts +9118 -429
  431. package/highcharts.js +595 -594
  432. package/highcharts.js.map +1 -1
  433. package/highcharts.src.d.ts +9118 -429
  434. package/highcharts.src.js +335 -285
  435. package/highmaps.js +763 -760
  436. package/highmaps.js.map +1 -1
  437. package/highmaps.src.js +640 -448
  438. package/highstock.js +797 -794
  439. package/highstock.js.map +1 -1
  440. package/highstock.src.js +414 -327
  441. package/indicators/acceleration-bands.d.ts +1 -17
  442. package/indicators/acceleration-bands.js +11 -12
  443. package/indicators/acceleration-bands.js.map +1 -1
  444. package/indicators/acceleration-bands.src.d.ts +1 -17
  445. package/indicators/acceleration-bands.src.js +89 -99
  446. package/indicators/accumulation-distribution.js +1 -1
  447. package/indicators/accumulation-distribution.src.js +1 -1
  448. package/indicators/ao.js +1 -1
  449. package/indicators/ao.src.js +3 -3
  450. package/indicators/apo.js +1 -1
  451. package/indicators/apo.src.js +1 -1
  452. package/indicators/aroon-oscillator.d.ts +1 -17
  453. package/indicators/aroon-oscillator.js +10 -10
  454. package/indicators/aroon-oscillator.js.map +1 -1
  455. package/indicators/aroon-oscillator.src.d.ts +1 -17
  456. package/indicators/aroon-oscillator.src.js +89 -99
  457. package/indicators/aroon.d.ts +1 -17
  458. package/indicators/aroon.js +11 -11
  459. package/indicators/aroon.js.map +1 -1
  460. package/indicators/aroon.src.d.ts +1 -17
  461. package/indicators/aroon.src.js +89 -99
  462. package/indicators/atr.js +1 -1
  463. package/indicators/atr.src.js +1 -1
  464. package/indicators/bollinger-bands.d.ts +1 -17
  465. package/indicators/bollinger-bands.js +11 -12
  466. package/indicators/bollinger-bands.js.map +1 -1
  467. package/indicators/bollinger-bands.src.d.ts +1 -17
  468. package/indicators/bollinger-bands.src.js +92 -102
  469. package/indicators/cci.js +1 -1
  470. package/indicators/cci.src.js +1 -1
  471. package/indicators/chaikin.js +1 -1
  472. package/indicators/chaikin.src.js +1 -1
  473. package/indicators/cmf.js +1 -1
  474. package/indicators/cmf.src.js +1 -1
  475. package/indicators/cmo.js +1 -1
  476. package/indicators/cmo.src.js +1 -1
  477. package/indicators/dema.js +1 -1
  478. package/indicators/dema.src.js +1 -1
  479. package/indicators/disparity-index.js +1 -1
  480. package/indicators/disparity-index.src.js +1 -1
  481. package/indicators/dmi.js +12 -12
  482. package/indicators/dmi.js.map +1 -1
  483. package/indicators/dmi.src.js +99 -105
  484. package/indicators/dpo.js +1 -1
  485. package/indicators/dpo.src.js +1 -1
  486. package/indicators/ichimoku-kinko-hyo.js +1 -1
  487. package/indicators/ichimoku-kinko-hyo.src.js +1 -1
  488. package/indicators/indicators-all.d.ts +1 -17
  489. package/indicators/indicators-all.js +195 -194
  490. package/indicators/indicators-all.js.map +1 -1
  491. package/indicators/indicators-all.src.d.ts +1 -17
  492. package/indicators/indicators-all.src.js +131 -125
  493. package/indicators/indicators.js +1 -1
  494. package/indicators/indicators.src.js +1 -1
  495. package/indicators/keltner-channels.d.ts +1 -17
  496. package/indicators/keltner-channels.js +11 -12
  497. package/indicators/keltner-channels.js.map +1 -1
  498. package/indicators/keltner-channels.src.d.ts +1 -17
  499. package/indicators/keltner-channels.src.js +89 -99
  500. package/indicators/klinger.js +14 -14
  501. package/indicators/klinger.js.map +1 -1
  502. package/indicators/klinger.src.js +89 -99
  503. package/indicators/macd.js +10 -9
  504. package/indicators/macd.js.map +1 -1
  505. package/indicators/macd.src.js +25 -13
  506. package/indicators/mfi.js +1 -1
  507. package/indicators/mfi.src.js +1 -1
  508. package/indicators/momentum.js +1 -1
  509. package/indicators/momentum.src.js +1 -1
  510. package/indicators/natr.js +1 -1
  511. package/indicators/natr.src.js +1 -1
  512. package/indicators/obv.js +1 -1
  513. package/indicators/obv.src.js +1 -1
  514. package/indicators/pivot-points.js +1 -1
  515. package/indicators/pivot-points.src.js +1 -1
  516. package/indicators/ppo.js +1 -1
  517. package/indicators/ppo.src.js +1 -1
  518. package/indicators/price-channel.d.ts +1 -17
  519. package/indicators/price-channel.js +11 -11
  520. package/indicators/price-channel.js.map +1 -1
  521. package/indicators/price-channel.src.d.ts +1 -17
  522. package/indicators/price-channel.src.js +89 -99
  523. package/indicators/price-envelopes.js +1 -1
  524. package/indicators/price-envelopes.src.js +1 -1
  525. package/indicators/psar.js +1 -1
  526. package/indicators/psar.src.js +1 -1
  527. package/indicators/regressions.js +1 -1
  528. package/indicators/regressions.src.js +1 -1
  529. package/indicators/roc.js +1 -1
  530. package/indicators/roc.src.js +1 -1
  531. package/indicators/rsi.js +1 -1
  532. package/indicators/rsi.src.js +1 -1
  533. package/indicators/slow-stochastic.js +1 -1
  534. package/indicators/slow-stochastic.src.js +1 -1
  535. package/indicators/stochastic.d.ts +1 -17
  536. package/indicators/stochastic.js +12 -12
  537. package/indicators/stochastic.js.map +1 -1
  538. package/indicators/stochastic.src.d.ts +1 -17
  539. package/indicators/stochastic.src.js +89 -99
  540. package/indicators/supertrend.js +1 -1
  541. package/indicators/supertrend.src.js +4 -4
  542. package/indicators/tema.js +1 -1
  543. package/indicators/tema.src.js +1 -1
  544. package/indicators/trendline.js +1 -1
  545. package/indicators/trendline.src.js +1 -1
  546. package/indicators/trix.js +1 -1
  547. package/indicators/trix.src.js +1 -1
  548. package/indicators/volume-by-price.js +1 -1
  549. package/indicators/volume-by-price.src.js +1 -1
  550. package/indicators/vwap.js +1 -1
  551. package/indicators/vwap.src.js +1 -1
  552. package/indicators/williams-r.js +1 -1
  553. package/indicators/williams-r.src.js +1 -1
  554. package/indicators/wma.js +1 -1
  555. package/indicators/wma.src.js +1 -1
  556. package/indicators/zigzag.js +1 -1
  557. package/indicators/zigzag.src.js +1 -1
  558. package/modules/accessibility.js +230 -229
  559. package/modules/accessibility.js.map +1 -1
  560. package/modules/accessibility.src.js +110 -115
  561. package/modules/annotations-advanced.js +187 -187
  562. package/modules/annotations-advanced.js.map +1 -1
  563. package/modules/annotations-advanced.src.js +62 -39
  564. package/modules/annotations.js +61 -61
  565. package/modules/annotations.js.map +1 -1
  566. package/modules/annotations.src.js +38 -20
  567. package/modules/arc-diagram.js +1 -1
  568. package/modules/arc-diagram.src.js +1 -1
  569. package/modules/arrow-symbols.js +1 -1
  570. package/modules/arrow-symbols.src.js +1 -1
  571. package/modules/boost-canvas.js +12 -11
  572. package/modules/boost-canvas.js.map +1 -1
  573. package/modules/boost-canvas.src.js +12 -6
  574. package/modules/boost.js +81 -80
  575. package/modules/boost.js.map +1 -1
  576. package/modules/boost.src.js +20 -9
  577. package/modules/broken-axis.js +1 -1
  578. package/modules/broken-axis.src.js +1 -1
  579. package/modules/bullet.js +1 -1
  580. package/modules/bullet.js.map +1 -1
  581. package/modules/bullet.src.js +2 -5
  582. package/modules/coloraxis.js +2 -2
  583. package/modules/coloraxis.js.map +1 -1
  584. package/modules/coloraxis.src.js +5 -5
  585. package/modules/current-date-indicator.js +1 -1
  586. package/modules/current-date-indicator.src.js +2 -2
  587. package/modules/cylinder.js +1 -1
  588. package/modules/cylinder.src.js +1 -1
  589. package/modules/data.d.ts +12 -12
  590. package/modules/data.js +33 -34
  591. package/modules/data.js.map +1 -1
  592. package/modules/data.src.d.ts +12 -12
  593. package/modules/data.src.js +862 -829
  594. package/modules/datagrouping.js +1 -1
  595. package/modules/datagrouping.src.js +1 -1
  596. package/modules/debugger.js +1 -1
  597. package/modules/debugger.src.js +1 -1
  598. package/modules/dependency-wheel.js +1 -1
  599. package/modules/dependency-wheel.src.js +1 -1
  600. package/modules/dotplot.js +1 -1
  601. package/modules/dotplot.src.js +1 -1
  602. package/modules/drag-panes.js +1 -1
  603. package/modules/drag-panes.src.js +2 -2
  604. package/modules/draggable-points.js +1 -1
  605. package/modules/draggable-points.src.js +1 -1
  606. package/modules/drilldown.js +37 -36
  607. package/modules/drilldown.js.map +1 -1
  608. package/modules/drilldown.src.js +40 -9
  609. package/modules/dumbbell.d.ts +4 -0
  610. package/modules/dumbbell.js +17 -17
  611. package/modules/dumbbell.js.map +1 -1
  612. package/modules/dumbbell.src.d.ts +4 -0
  613. package/modules/dumbbell.src.js +24 -12
  614. package/modules/export-data.js +24 -22
  615. package/modules/export-data.js.map +1 -1
  616. package/modules/export-data.src.js +76 -11
  617. package/modules/exporting.d.ts +8 -8
  618. package/modules/exporting.js +36 -36
  619. package/modules/exporting.js.map +1 -1
  620. package/modules/exporting.src.d.ts +8 -8
  621. package/modules/exporting.src.js +50 -50
  622. package/modules/full-screen.js +1 -1
  623. package/modules/full-screen.src.js +1 -1
  624. package/modules/funnel.js +1 -1
  625. package/modules/funnel.src.js +3 -3
  626. package/modules/funnel3d.js +1 -1
  627. package/modules/funnel3d.src.js +1 -1
  628. package/modules/gantt.js +218 -218
  629. package/modules/gantt.js.map +1 -1
  630. package/modules/gantt.src.js +935 -927
  631. package/modules/grid-axis.js +23 -23
  632. package/modules/grid-axis.js.map +1 -1
  633. package/modules/grid-axis.src.js +886 -890
  634. package/modules/heatmap.js +40 -40
  635. package/modules/heatmap.js.map +1 -1
  636. package/modules/heatmap.src.js +115 -87
  637. package/modules/heikinashi.js +1 -1
  638. package/modules/heikinashi.src.js +1 -1
  639. package/modules/histogram-bellcurve.js +1 -1
  640. package/modules/histogram-bellcurve.src.js +1 -1
  641. package/modules/hollowcandlestick.js +1 -1
  642. package/modules/hollowcandlestick.src.js +9 -9
  643. package/modules/item-series.js +1 -1
  644. package/modules/item-series.src.js +1 -1
  645. package/modules/lollipop.js +1 -1
  646. package/modules/lollipop.src.js +1 -1
  647. package/modules/map.js +171 -169
  648. package/modules/map.js.map +1 -1
  649. package/modules/map.src.js +306 -164
  650. package/modules/marker-clusters.js +1 -1
  651. package/modules/marker-clusters.js.map +1 -1
  652. package/modules/marker-clusters.src.js +2 -6
  653. package/modules/networkgraph.d.ts +1 -17
  654. package/modules/networkgraph.js +49 -49
  655. package/modules/networkgraph.js.map +1 -1
  656. package/modules/networkgraph.src.d.ts +1 -17
  657. package/modules/networkgraph.src.js +55 -45
  658. package/modules/no-data-to-display.js +1 -1
  659. package/modules/no-data-to-display.src.js +2 -2
  660. package/modules/offline-exporting.js +3 -3
  661. package/modules/offline-exporting.js.map +1 -1
  662. package/modules/offline-exporting.src.js +5 -5
  663. package/modules/oldie-polyfills.js +1 -1
  664. package/modules/oldie-polyfills.src.js +1 -1
  665. package/modules/oldie.js +2 -2
  666. package/modules/oldie.src.js +3 -3
  667. package/modules/organization.js +1 -1
  668. package/modules/organization.src.js +3 -3
  669. package/modules/overlapping-datalabels.js +1 -1
  670. package/modules/overlapping-datalabels.src.js +1 -1
  671. package/modules/parallel-coordinates.js +2 -2
  672. package/modules/parallel-coordinates.js.map +1 -1
  673. package/modules/parallel-coordinates.src.js +2 -2
  674. package/modules/pareto.js +1 -1
  675. package/modules/pareto.src.js +1 -1
  676. package/modules/pathfinder.js +1 -1
  677. package/modules/pathfinder.src.js +1 -1
  678. package/modules/pattern-fill.js +15 -14
  679. package/modules/pattern-fill.js.map +1 -1
  680. package/modules/pattern-fill.src.js +15 -2
  681. package/modules/price-indicator.js +1 -1
  682. package/modules/price-indicator.src.js +1 -1
  683. package/modules/pyramid3d.js +1 -1
  684. package/modules/pyramid3d.src.js +1 -1
  685. package/modules/sankey.d.ts +1 -17
  686. package/modules/sankey.js +32 -32
  687. package/modules/sankey.js.map +1 -1
  688. package/modules/sankey.src.d.ts +1 -17
  689. package/modules/sankey.src.js +86 -55
  690. package/modules/series-label.js +18 -18
  691. package/modules/series-label.js.map +1 -1
  692. package/modules/series-label.src.js +472 -385
  693. package/modules/series-on-point.js +18 -0
  694. package/modules/series-on-point.js.map +1 -0
  695. package/modules/series-on-point.src.js +464 -0
  696. package/modules/solid-gauge.js +4 -4
  697. package/modules/solid-gauge.js.map +1 -1
  698. package/modules/solid-gauge.src.js +5 -5
  699. package/modules/sonification.js +1 -1
  700. package/modules/sonification.js.map +1 -1
  701. package/modules/sonification.src.js +3 -7
  702. package/modules/static-scale.js +1 -1
  703. package/modules/static-scale.src.js +1 -1
  704. package/modules/stock-tools.js +142 -142
  705. package/modules/stock-tools.js.map +1 -1
  706. package/modules/stock-tools.src.js +57 -38
  707. package/modules/stock.js +205 -204
  708. package/modules/stock.js.map +1 -1
  709. package/modules/stock.src.js +80 -43
  710. package/modules/streamgraph.js +1 -1
  711. package/modules/streamgraph.src.js +1 -1
  712. package/modules/sunburst.js +73 -73
  713. package/modules/sunburst.js.map +1 -1
  714. package/modules/sunburst.src.js +211 -177
  715. package/modules/tilemap.js +1 -1
  716. package/modules/tilemap.src.js +1 -1
  717. package/modules/timeline.js +1 -1
  718. package/modules/timeline.src.js +4 -4
  719. package/modules/treegrid.js +56 -56
  720. package/modules/treegrid.js.map +1 -1
  721. package/modules/treegrid.src.js +888 -892
  722. package/modules/treemap.js +54 -53
  723. package/modules/treemap.js.map +1 -1
  724. package/modules/treemap.src.js +208 -176
  725. package/modules/variable-pie.js +1 -1
  726. package/modules/variable-pie.src.js +1 -1
  727. package/modules/variwide.js +1 -1
  728. package/modules/variwide.src.js +1 -1
  729. package/modules/vector.js +1 -1
  730. package/modules/vector.src.js +1 -1
  731. package/modules/venn.js +31 -31
  732. package/modules/venn.js.map +1 -1
  733. package/modules/venn.src.js +78 -107
  734. package/modules/windbarb.js +1 -1
  735. package/modules/windbarb.src.js +1 -1
  736. package/modules/wordcloud.js +23 -24
  737. package/modules/wordcloud.js.map +1 -1
  738. package/modules/wordcloud.src.js +78 -107
  739. package/modules/xrange.js +1 -1
  740. package/modules/xrange.src.js +1 -1
  741. package/package.json +1 -1
  742. package/themes/avocado.js +1 -1
  743. package/themes/avocado.src.js +1 -1
  744. package/themes/brand-dark.js +1 -1
  745. package/themes/brand-dark.src.js +1 -1
  746. package/themes/brand-light.js +1 -1
  747. package/themes/brand-light.src.js +1 -1
  748. package/themes/dark-blue.js +1 -1
  749. package/themes/dark-blue.src.js +1 -1
  750. package/themes/dark-green.js +1 -1
  751. package/themes/dark-green.src.js +1 -1
  752. package/themes/dark-unica.js +1 -1
  753. package/themes/dark-unica.src.js +1 -1
  754. package/themes/gray.js +1 -1
  755. package/themes/gray.src.js +1 -1
  756. package/themes/grid-light.js +1 -1
  757. package/themes/grid-light.src.js +1 -1
  758. package/themes/grid.js +1 -1
  759. package/themes/grid.src.js +1 -1
  760. package/themes/high-contrast-dark.js +1 -1
  761. package/themes/high-contrast-dark.src.js +1 -1
  762. package/themes/high-contrast-light.js +1 -1
  763. package/themes/high-contrast-light.src.js +1 -1
  764. package/themes/sand-signika.js +1 -1
  765. package/themes/sand-signika.src.js +1 -1
  766. package/themes/skies.js +1 -1
  767. package/themes/skies.src.js +1 -1
  768. package/themes/sunset.js +1 -1
  769. package/themes/sunset.src.js +1 -1
  770. package/es-modules/Extensions/Polar.js +0 -743
  771. package/es-modules/Series/ColorMapMixin.js +0 -84
  772. package/es-modules/Series/DrawPointComposition.js +0 -114
@@ -7,36 +7,6 @@
7
7
  * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
8
8
  *
9
9
  * */
10
- 'use strict';
11
- import A from '../Core/Animation/AnimationUtilities.js';
12
- var animObject = A.animObject;
13
- import Chart from '../Core/Chart/Chart.js';
14
- import F from '../Core/FormatUtilities.js';
15
- var format = F.format;
16
- import D from '../Core/DefaultOptions.js';
17
- var setOptions = D.setOptions;
18
- import Series from '../Core/Series/Series.js';
19
- import SVGRenderer from '../Core/Renderer/SVG/SVGRenderer.js';
20
- var symbols = SVGRenderer.prototype.symbols;
21
- import U from '../Core/Utilities.js';
22
- var addEvent = U.addEvent, extend = U.extend, fireEvent = U.fireEvent, isNumber = U.isNumber, pick = U.pick, syncTimeout = U.syncTimeout;
23
- /**
24
- * Containing the position of a box that should be avoided by labels.
25
- *
26
- * @interface Highcharts.LabelIntersectBoxObject
27
- */ /**
28
- * @name Highcharts.LabelIntersectBoxObject#bottom
29
- * @type {number}
30
- */ /**
31
- * @name Highcharts.LabelIntersectBoxObject#left
32
- * @type {number}
33
- */ /**
34
- * @name Highcharts.LabelIntersectBoxObject#right
35
- * @type {number}
36
- */ /**
37
- * @name Highcharts.LabelIntersectBoxObject#top
38
- * @type {number}
39
- */
40
10
  /*
41
11
  * Highcharts module to place labels next to a series in a natural position.
42
12
  *
@@ -50,338 +20,39 @@ var addEvent = U.addEvent, extend = U.extend, fireEvent = U.fireEvent, isNumber
50
20
  * https://jsfiddle.net/highcharts/264Nm/
51
21
  * https://jsfiddle.net/highcharts/y5A37/
52
22
  */
53
- ''; // detach doclets above
54
- var labelDistance = 3;
55
- setOptions({
56
- /**
57
- * @optionparent plotOptions
58
- *
59
- * @private
60
- */
61
- plotOptions: {
62
- series: {
63
- /**
64
- * Series labels are placed as close to the series as possible in a
65
- * natural way, seeking to avoid other series. The goal of this
66
- * feature is to make the chart more easily readable, like if a
67
- * human designer placed the labels in the optimal position.
68
- *
69
- * The series labels currently work with series types having a
70
- * `graph` or an `area`.
71
- *
72
- * @sample highcharts/series-label/line-chart
73
- * Line chart
74
- * @sample highcharts/demo/streamgraph
75
- * Stream graph
76
- * @sample highcharts/series-label/stock-chart
77
- * Stock chart
78
- *
79
- * @declare Highcharts.SeriesLabelOptionsObject
80
- * @since 6.0.0
81
- * @product highcharts highstock gantt
82
- * @requires modules/series-label
83
- */
84
- label: {
85
- /**
86
- * Enable the series label per series.
87
- */
88
- enabled: true,
89
- /**
90
- * Allow labels to be placed distant to the graph if necessary,
91
- * and draw a connector line to the graph. Setting this option
92
- * to true may decrease the performance significantly, since the
93
- * algorithm with systematically search for open spaces in the
94
- * whole plot area. Visually, it may also result in a more
95
- * cluttered chart, though more of the series will be labeled.
96
- */
97
- connectorAllowed: false,
98
- /**
99
- * If the label is closer than this to a neighbour graph, draw a
100
- * connector.
101
- */
102
- connectorNeighbourDistance: 24,
103
- /**
104
- * A format string for the label, with support for a subset of
105
- * HTML. Variables are enclosed by curly brackets. Available
106
- * variables are `name`, `options.xxx`, `color` and other
107
- * members from the `series` object. Use this option also to set
108
- * a static text for the label.
109
- *
110
- * @type string
111
- * @since 8.1.0
112
- */
113
- format: void 0,
114
- /**
115
- * Callback function to format each of the series' labels. The
116
- * `this` keyword refers to the series object. By default the
117
- * `formatter` is undefined and the `series.name` is rendered.
118
- *
119
- * @type {Highcharts.FormatterCallbackFunction<Series>}
120
- * @since 8.1.0
121
- */
122
- formatter: void 0,
123
- /**
124
- * For area-like series, allow the font size to vary so that
125
- * small areas get a smaller font size. The default applies this
126
- * effect to area-like series but not line-like series.
127
- *
128
- * @type {number|null}
129
- */
130
- minFontSize: null,
131
- /**
132
- * For area-like series, allow the font size to vary so that
133
- * small areas get a smaller font size. The default applies this
134
- * effect to area-like series but not line-like series.
135
- *
136
- * @type {number|null}
137
- */
138
- maxFontSize: null,
139
- /**
140
- * Draw the label on the area of an area series. By default it
141
- * is drawn on the area. Set it to `false` to draw it next to
142
- * the graph instead.
143
- *
144
- * @type {boolean|null}
145
- */
146
- onArea: null,
147
- /**
148
- * Styles for the series label. The color defaults to the series
149
- * color, or a contrast color if `onArea`.
150
- *
151
- * @type {Highcharts.CSSObject}
152
- */
153
- style: {
154
- /** @internal */
155
- fontWeight: 'bold'
156
- },
157
- /**
158
- * An array of boxes to avoid when laying out the labels. Each
159
- * item has a `left`, `right`, `top` and `bottom` property.
160
- *
161
- * @type {Array<Highcharts.LabelIntersectBoxObject>}
162
- */
163
- boxesToAvoid: []
164
- }
165
- }
166
- }
167
- });
168
- /* eslint-disable valid-jsdoc */
169
- /**
170
- * Counter-clockwise, part of the fast line intersection logic.
171
- *
172
- * @private
173
- * @function ccw
174
- */
175
- function ccw(x1, y1, x2, y2, x3, y3) {
176
- var cw = ((y3 - y1) * (x2 - x1)) - ((y2 - y1) * (x3 - x1));
177
- return cw > 0 ? true : !(cw < 0);
178
- }
179
- /**
180
- * Detect if two lines intersect.
23
+ 'use strict';
24
+ import A from '../../Core/Animation/AnimationUtilities.js';
25
+ var animObject = A.animObject;
26
+ import Chart from '../../Core/Chart/Chart.js';
27
+ import FU from '../../Core/FormatUtilities.js';
28
+ var format = FU.format;
29
+ import D from '../../Core/DefaultOptions.js';
30
+ var setOptions = D.setOptions;
31
+ import SeriesLabelDefaults from './SeriesLabelDefaults.js';
32
+ import SLU from './SeriesLabelUtilities.js';
33
+ var boxIntersectLine = SLU.boxIntersectLine, intersectRect = SLU.intersectRect;
34
+ import U from '../../Core/Utilities.js';
35
+ var addEvent = U.addEvent, extend = U.extend, fireEvent = U.fireEvent, isNumber = U.isNumber, pick = U.pick, syncTimeout = U.syncTimeout;
36
+ /* *
181
37
  *
182
- * @private
183
- * @function intersectLine
184
- */
185
- function intersectLine(x1, y1, x2, y2, x3, y3, x4, y4) {
186
- return ccw(x1, y1, x3, y3, x4, y4) !== ccw(x2, y2, x3, y3, x4, y4) &&
187
- ccw(x1, y1, x2, y2, x3, y3) !== ccw(x1, y1, x2, y2, x4, y4);
188
- }
189
- /**
190
- * Detect if a box intersects with a line.
38
+ * Constants
191
39
  *
192
- * @private
193
- * @function boxIntersectLine
194
- */
195
- function boxIntersectLine(x, y, w, h, x1, y1, x2, y2) {
196
- return (intersectLine(x, y, x + w, y, x1, y1, x2, y2) || // top of label
197
- intersectLine(x + w, y, x + w, y + h, x1, y1, x2, y2) || // right
198
- intersectLine(x, y + h, x + w, y + h, x1, y1, x2, y2) || // bottom
199
- intersectLine(x, y, x, y + h, x1, y1, x2, y2) // left of label
200
- );
201
- }
202
- /**
203
- * General symbol definition for labels with connector.
204
- */
205
- symbols.connector = function (x, y, w, h, options) {
206
- var anchorX = options && options.anchorX, anchorY = options && options.anchorY;
207
- var path, yOffset, lateral = w / 2;
208
- if (isNumber(anchorX) && isNumber(anchorY)) {
209
- path = [['M', anchorX, anchorY]];
210
- // Prefer 45 deg connectors
211
- yOffset = y - anchorY;
212
- if (yOffset < 0) {
213
- yOffset = -h - yOffset;
214
- }
215
- if (yOffset < w) {
216
- lateral = anchorX < x + (w / 2) ? yOffset : w - yOffset;
217
- }
218
- // Anchor below label
219
- if (anchorY > y + h) {
220
- path.push(['L', x + lateral, y + h]);
221
- // Anchor above label
222
- }
223
- else if (anchorY < y) {
224
- path.push(['L', x + lateral, y]);
225
- // Anchor left of label
226
- }
227
- else if (anchorX < x) {
228
- path.push(['L', x, y + h / 2]);
229
- // Anchor right of label
230
- }
231
- else if (anchorX > x + w) {
232
- path.push(['L', x + w, y + h / 2]);
233
- }
234
- }
235
- return path || [];
236
- };
237
- /**
238
- * Points to avoid. In addition to actual data points, the label should avoid
239
- * interpolated positions.
40
+ * */
41
+ var composedClasses = [];
42
+ var labelDistance = 3;
43
+ /* *
240
44
  *
241
- * @private
242
- * @function Highcharts.Series#getPointsOnGraph
243
- */
244
- Series.prototype.getPointsOnGraph = function () {
245
- if (!this.xAxis && !this.yAxis) {
246
- return;
247
- }
248
- var distance = 16, points = this.points, interpolated = [], graph = this.graph || this.area, node = graph.element, inverted = this.chart.inverted, xAxis = this.xAxis, yAxis = this.yAxis, paneLeft = inverted ? yAxis.pos : xAxis.pos, paneTop = inverted ? xAxis.pos : yAxis.pos, onArea = pick(this.options.label.onArea, !!this.area), translatedThreshold = yAxis.getThreshold(this.options.threshold), grid = {};
249
- var point, last, i, deltaX, deltaY, delta, len, n, j, d;
250
- /**
251
- * Push the point to the interpolated points, but only if that position in
252
- * the grid has not been occupied. As a performance optimization, we divide
253
- * the plot area into a grid and only add one point per series (#9815).
254
- * @private
255
- */
256
- function pushDiscrete(point) {
257
- var cellSize = 8, key = Math.round(point.plotX / cellSize) + ',' +
258
- Math.round(point.plotY / cellSize);
259
- if (!grid[key]) {
260
- grid[key] = 1;
261
- interpolated.push(point);
262
- }
263
- }
264
- // For splines, get the point at length (possible caveat: peaks are not
265
- // correctly detected)
266
- if (this.getPointSpline &&
267
- node.getPointAtLength &&
268
- !onArea &&
269
- // Not performing well on complex series, node.getPointAtLength is too
270
- // heavy (#9815)
271
- points.length < this.chart.plotSizeX / distance) {
272
- // If it is animating towards a path definition, use that briefly, and
273
- // reset
274
- if (graph.toD) {
275
- d = graph.attr('d');
276
- graph.attr({ d: graph.toD });
277
- }
278
- len = node.getTotalLength();
279
- for (i = 0; i < len; i += distance) {
280
- point = node.getPointAtLength(i);
281
- pushDiscrete({
282
- chartX: paneLeft + point.x,
283
- chartY: paneTop + point.y,
284
- plotX: point.x,
285
- plotY: point.y
286
- });
287
- }
288
- if (d) {
289
- graph.attr({ d: d });
290
- }
291
- // Last point
292
- point = points[points.length - 1];
293
- point.chartX = paneLeft + point.plotX;
294
- point.chartY = paneTop + point.plotY;
295
- pushDiscrete(point);
296
- // Interpolate
297
- }
298
- else {
299
- len = points.length;
300
- for (i = 0; i < len; i += 1) {
301
- point = points[i];
302
- last = points[i - 1];
303
- // Absolute coordinates so we can compare different panes
304
- point.chartX = paneLeft + point.plotX;
305
- point.chartY = paneTop + point.plotY;
306
- if (onArea) {
307
- // Vertically centered inside area
308
- point.chartCenterY = paneTop + (point.plotY +
309
- pick(point.yBottom, translatedThreshold)) / 2;
310
- }
311
- // Add interpolated points
312
- if (i > 0) {
313
- deltaX = Math.abs(point.chartX - last.chartX);
314
- deltaY = Math.abs(point.chartY - last.chartY);
315
- delta = Math.max(deltaX, deltaY);
316
- if (delta > distance) {
317
- n = Math.ceil(delta / distance);
318
- for (j = 1; j < n; j += 1) {
319
- pushDiscrete({
320
- chartX: last.chartX +
321
- (point.chartX - last.chartX) *
322
- (j / n),
323
- chartY: last.chartY +
324
- (point.chartY - last.chartY) *
325
- (j / n),
326
- chartCenterY: last.chartCenterY +
327
- (point.chartCenterY -
328
- last.chartCenterY) * (j / n),
329
- plotX: last.plotX +
330
- (point.plotX - last.plotX) *
331
- (j / n),
332
- plotY: last.plotY +
333
- (point.plotY - last.plotY) *
334
- (j / n)
335
- });
336
- }
337
- }
338
- }
339
- // Add the real point in order to find positive and negative peaks
340
- if (isNumber(point.plotY)) {
341
- pushDiscrete(point);
342
- }
343
- }
344
- }
345
- // Get the bounding box so we can do a quick check first if the bounding
346
- // boxes overlap.
347
- /*
348
- interpolated.bBox = node.getBBox();
349
- interpolated.bBox.x += paneLeft;
350
- interpolated.bBox.y += paneTop;
351
- */
352
- return interpolated;
353
- };
354
- /**
355
- * Overridable function to return series-specific font sizes for the labels. By
356
- * default it returns bigger font sizes for series with the greater sum of y
357
- * values.
45
+ * Functions
358
46
  *
359
- * @private
360
- * @function Highcharts.Series#labelFontSize
361
- */
362
- Series.prototype.labelFontSize = function (minFontSize, maxFontSize) {
363
- return minFontSize + ((this.sum / this.chart.labelSeriesMaxSum) *
364
- (maxFontSize - minFontSize)) + 'px';
365
- };
47
+ * */
366
48
  /**
367
49
  * Check whether a proposed label position is clear of other elements.
368
- *
369
50
  * @private
370
- * @function Highcharts.Series#checkClearPoint
371
51
  */
372
- Series.prototype.checkClearPoint = function (x, y, bBox, checkDistance) {
373
- var chart = this.chart, onArea = pick(this.options.label.onArea, !!this.area), findDistanceToOthers = (onArea || this.options.label.connectorAllowed), leastDistance = 16;
52
+ function checkClearPoint(series, x, y, bBox, checkDistance) {
53
+ var chart = series.chart, onArea = pick(series.options.label.onArea, !!series.area), findDistanceToOthers = (onArea || series.options.label.connectorAllowed), leastDistance = 16;
374
54
  var distToOthersSquared = Number.MAX_VALUE, // distance to other graphs
375
- distToPointSquared = Number.MAX_VALUE, dist, connectorPoint, series, points, withinRange, xDist, yDist, i, j;
376
- /**
377
- * @private
378
- */
379
- function intersectRect(r1, r2) {
380
- return !(r2.left > r1.right ||
381
- r2.right < r1.left ||
382
- r2.top > r1.bottom ||
383
- r2.bottom < r1.top);
384
- }
55
+ distToPointSquared = Number.MAX_VALUE, dist, connectorPoint, serie, points, withinRange, xDist, yDist, i, j;
385
56
  /**
386
57
  * Get the weight in order to determine the ideal position. Larger distance
387
58
  * to other series gives more weight. Smaller distance to the actual point
@@ -405,9 +76,9 @@ Series.prototype.checkClearPoint = function (x, y, bBox, checkDistance) {
405
76
  // For each position, check if the lines around the label intersect with any
406
77
  // of the graphs.
407
78
  for (i = 0; i < chart.series.length; i += 1) {
408
- series = chart.series[i];
409
- points = series.interpolatedPoints;
410
- if (series.visible && points) {
79
+ serie = chart.series[i];
80
+ points = serie.interpolatedPoints;
81
+ if (serie.visible && points) {
411
82
  for (j = 1; j < points.length; j += 1) {
412
83
  if (
413
84
  // To avoid processing, only check intersection if the X
@@ -430,14 +101,14 @@ Series.prototype.checkClearPoint = function (x, y, bBox, checkDistance) {
430
101
  }
431
102
  // But if it is too far away (a padded box doesn't
432
103
  // intersect), also return.
433
- if (this === series && !withinRange && checkDistance) {
104
+ if (series === serie && !withinRange && checkDistance) {
434
105
  withinRange = boxIntersectLine(x - leastDistance, y - leastDistance, bBox.width + 2 * leastDistance, bBox.height + 2 * leastDistance, points[j - 1].chartX, points[j - 1].chartY, points[j].chartX, points[j].chartY);
435
106
  }
436
107
  }
437
108
  // Find the squared distance from the center of the label. On
438
109
  // area series, avoid its own graph.
439
110
  if ((findDistanceToOthers || withinRange) &&
440
- (this !== series || onArea)) {
111
+ (series !== serie || onArea)) {
441
112
  xDist = x + bBox.width / 2 - points[j].chartX;
442
113
  yDist = y + bBox.height / 2 - points[j].chartY;
443
114
  distToOthersSquared = Math.min(distToOthersSquared, xDist * xDist + yDist * yDist);
@@ -446,9 +117,10 @@ Series.prototype.checkClearPoint = function (x, y, bBox, checkDistance) {
446
117
  // Do we need a connector?
447
118
  if (!onArea &&
448
119
  findDistanceToOthers &&
449
- this === series &&
120
+ series === serie &&
450
121
  ((checkDistance && !withinRange) ||
451
- distToOthersSquared < Math.pow(this.options.label.connectorNeighbourDistance, 2))) {
122
+ distToOthersSquared < Math.pow(series.options.label
123
+ .connectorNeighbourDistance, 2))) {
452
124
  for (j = 1; j < points.length; j += 1) {
453
125
  dist = Math.min((Math.pow(x + bBox.width / 2 - points[j].chartX, 2) +
454
126
  Math.pow(y + bBox.height / 2 - points[j].chartY, 2)), (Math.pow(x - points[j].chartX, 2) +
@@ -471,7 +143,26 @@ Series.prototype.checkClearPoint = function (x, y, bBox, checkDistance) {
471
143
  weight: getWeight(distToOthersSquared, connectorPoint ? distToPointSquared : 0),
472
144
  connectorPoint: connectorPoint
473
145
  } : false;
474
- };
146
+ }
147
+ /**
148
+ * @private
149
+ */
150
+ function compose(ChartClass, SVGRendererClass) {
151
+ if (composedClasses.indexOf(ChartClass) === -1) {
152
+ composedClasses.push(ChartClass);
153
+ // Leave both events, we handle animation differently (#9815)
154
+ addEvent(Chart, 'load', onChartRedraw);
155
+ addEvent(Chart, 'redraw', onChartRedraw);
156
+ }
157
+ if (composedClasses.indexOf(SVGRendererClass) === -1) {
158
+ composedClasses.push(SVGRendererClass);
159
+ SVGRendererClass.prototype.symbols.connector = symbolConnector;
160
+ }
161
+ if (composedClasses.indexOf(setOptions) === -1) {
162
+ composedClasses.push(setOptions);
163
+ setOptions({ plotOptions: { series: { label: SeriesLabelDefaults } } });
164
+ }
165
+ }
475
166
  /**
476
167
  * The main initialize method that runs on chart level after initialization and
477
168
  * redraw. It runs in a timeout to prevent locking, and loops over all series,
@@ -480,13 +171,13 @@ Series.prototype.checkClearPoint = function (x, y, bBox, checkDistance) {
480
171
  * @private
481
172
  * @function Highcharts.Chart#drawSeriesLabels
482
173
  */
483
- Chart.prototype.drawSeriesLabels = function () {
174
+ function drawSeriesLabels(chart) {
484
175
  // console.time('drawSeriesLabels');
485
- var chart = this, labelSeries = this.labelSeries;
176
+ var labelSeries = chart.labelSeries;
486
177
  chart.boxesToAvoid = [];
487
178
  // Build the interpolated points
488
179
  labelSeries.forEach(function (series) {
489
- series.interpolatedPoints = series.getPointsOnGraph();
180
+ series.interpolatedPoints = getPointsOnGraph(series);
490
181
  (series.options.label.boxesToAvoid || []).forEach(function (box) {
491
182
  chart.boxesToAvoid.push(box);
492
183
  });
@@ -535,7 +226,7 @@ Chart.prototype.drawSeriesLabels = function () {
535
226
  labelText = labelOptions.formatter.call(series);
536
227
  }
537
228
  series.labelBySeries = label = chart.renderer
538
- .label(labelText, 0, -9999, 'connector')
229
+ .label(labelText, 0, 0, 'connector')
539
230
  .addClass('highcharts-series-label ' +
540
231
  'highcharts-series-label-' + series.index + ' ' +
541
232
  (series.options.className || '') + ' ' +
@@ -555,7 +246,7 @@ Chart.prototype.drawSeriesLabels = function () {
555
246
  // Adapt label sizes to the sum of the data
556
247
  if (minFontSize && maxFontSize) {
557
248
  label.css({
558
- fontSize: series.labelFontSize(minFontSize, maxFontSize)
249
+ fontSize: labelFontSize(series, minFontSize, maxFontSize)
559
250
  });
560
251
  }
561
252
  label
@@ -575,7 +266,7 @@ Chart.prototype.drawSeriesLabels = function () {
575
266
  x = points[i].chartX - bBox.width / 2;
576
267
  y = points[i].chartCenterY - bBox.height / 2;
577
268
  if (insidePane(x, y, bBox)) {
578
- best = series.checkClearPoint(x, y, bBox);
269
+ best = checkClearPoint(series, x, y, bBox);
579
270
  }
580
271
  if (best) {
581
272
  results.push(best);
@@ -586,7 +277,7 @@ Chart.prototype.drawSeriesLabels = function () {
586
277
  x = points[i].chartX + labelDistance;
587
278
  y = points[i].chartY - bBox.height - labelDistance;
588
279
  if (insidePane(x, y, bBox)) {
589
- best = series.checkClearPoint(x, y, bBox, true);
280
+ best = checkClearPoint(series, x, y, bBox, true);
590
281
  }
591
282
  if (best) {
592
283
  results.push(best);
@@ -595,7 +286,7 @@ Chart.prototype.drawSeriesLabels = function () {
595
286
  x = points[i].chartX + labelDistance;
596
287
  y = points[i].chartY + labelDistance;
597
288
  if (insidePane(x, y, bBox)) {
598
- best = series.checkClearPoint(x, y, bBox, true);
289
+ best = checkClearPoint(series, x, y, bBox, true);
599
290
  }
600
291
  if (best) {
601
292
  results.push(best);
@@ -604,7 +295,7 @@ Chart.prototype.drawSeriesLabels = function () {
604
295
  x = points[i].chartX - bBox.width - labelDistance;
605
296
  y = points[i].chartY + labelDistance;
606
297
  if (insidePane(x, y, bBox)) {
607
- best = series.checkClearPoint(x, y, bBox, true);
298
+ best = checkClearPoint(series, x, y, bBox, true);
608
299
  }
609
300
  if (best) {
610
301
  results.push(best);
@@ -613,7 +304,7 @@ Chart.prototype.drawSeriesLabels = function () {
613
304
  x = points[i].chartX - bBox.width - labelDistance;
614
305
  y = points[i].chartY - bBox.height - labelDistance;
615
306
  if (insidePane(x, y, bBox)) {
616
- best = series.checkClearPoint(x, y, bBox, true);
307
+ best = checkClearPoint(series, x, y, bBox, true);
617
308
  }
618
309
  if (best) {
619
310
  results.push(best);
@@ -624,7 +315,7 @@ Chart.prototype.drawSeriesLabels = function () {
624
315
  if (labelOptions.connectorAllowed && !results.length && !onArea) {
625
316
  for (x = paneLeft + paneWidth - bBox.width; x >= paneLeft; x -= 16) {
626
317
  for (y = paneTop; y < paneTop + paneHeight - bBox.height; y += 16) {
627
- clearPoint = series.checkClearPoint(x, y, bBox, true);
318
+ clearPoint = checkClearPoint(series, x, y, bBox, true);
628
319
  if (clearPoint) {
629
320
  results.push(clearPoint);
630
321
  }
@@ -632,9 +323,7 @@ Chart.prototype.drawSeriesLabels = function () {
632
323
  }
633
324
  }
634
325
  if (results.length) {
635
- results.sort(function (a, b) {
636
- return b.weight - a.weight;
637
- });
326
+ results.sort(function (a, b) { return b.weight - a.weight; });
638
327
  best = results[0];
639
328
  chart.boxesToAvoid.push({
640
329
  left: best.x,
@@ -705,15 +394,139 @@ Chart.prototype.drawSeriesLabels = function () {
705
394
  });
706
395
  fireEvent(chart, 'afterDrawSeriesLabels');
707
396
  // console.timeEnd('drawSeriesLabels');
708
- };
709
- /* eslint-disable no-invalid-this */
397
+ }
710
398
  /**
711
- * Prepare drawing series labels.
399
+ * Points to avoid. In addition to actual data points, the label should avoid
400
+ * interpolated positions.
712
401
  *
713
402
  * @private
714
- * @function drawLabels
403
+ * @function Highcharts.Series#getPointsOnGraph
404
+ */
405
+ function getPointsOnGraph(series) {
406
+ if (!series.xAxis && !series.yAxis) {
407
+ return;
408
+ }
409
+ var distance = 16, points = series.points, interpolated = [], graph = series.graph || series.area, node = graph.element, inverted = series.chart.inverted, xAxis = series.xAxis, yAxis = series.yAxis, paneLeft = inverted ? yAxis.pos : xAxis.pos, paneTop = inverted ? xAxis.pos : yAxis.pos, onArea = pick(series.options.label.onArea, !!series.area), translatedThreshold = yAxis.getThreshold(series.options.threshold), grid = {};
410
+ var point, last, i, deltaX, deltaY, delta, len, n, j, d;
411
+ /**
412
+ * Push the point to the interpolated points, but only if that position in
413
+ * the grid has not been occupied. As a performance optimization, we divide
414
+ * the plot area into a grid and only add one point per series (#9815).
415
+ * @private
416
+ */
417
+ function pushDiscrete(point) {
418
+ var cellSize = 8, key = Math.round(point.plotX / cellSize) + ',' +
419
+ Math.round(point.plotY / cellSize);
420
+ if (!grid[key]) {
421
+ grid[key] = 1;
422
+ interpolated.push(point);
423
+ }
424
+ }
425
+ // For splines, get the point at length (possible caveat: peaks are not
426
+ // correctly detected)
427
+ if (series.getPointSpline &&
428
+ (node.getPointAtLength) &&
429
+ !onArea &&
430
+ // Not performing well on complex series, node.getPointAtLength is too
431
+ // heavy (#9815)
432
+ points.length < series.chart.plotSizeX / distance) {
433
+ // If it is animating towards a path definition, use that briefly, and
434
+ // reset
435
+ if (graph.toD) {
436
+ d = graph.attr('d');
437
+ graph.attr({ d: graph.toD });
438
+ }
439
+ len = node.getTotalLength();
440
+ for (i = 0; i < len; i += distance) {
441
+ point = node.getPointAtLength(i);
442
+ pushDiscrete({
443
+ chartX: paneLeft + point.x,
444
+ chartY: paneTop + point.y,
445
+ plotX: point.x,
446
+ plotY: point.y
447
+ });
448
+ }
449
+ if (d) {
450
+ graph.attr({ d: d });
451
+ }
452
+ // Last point
453
+ point = points[points.length - 1];
454
+ point.chartX = paneLeft + point.plotX;
455
+ point.chartY = paneTop + point.plotY;
456
+ pushDiscrete(point);
457
+ // Interpolate
458
+ }
459
+ else {
460
+ len = points.length;
461
+ for (i = 0; i < len; i += 1) {
462
+ point = points[i];
463
+ last = points[i - 1];
464
+ // Absolute coordinates so we can compare different panes
465
+ point.chartX = paneLeft + point.plotX;
466
+ point.chartY = paneTop + point.plotY;
467
+ if (onArea) {
468
+ // Vertically centered inside area
469
+ point.chartCenterY = paneTop + (point.plotY +
470
+ pick(point.yBottom, translatedThreshold)) / 2;
471
+ }
472
+ // Add interpolated points
473
+ if (i > 0) {
474
+ deltaX = Math.abs(point.chartX - last.chartX);
475
+ deltaY = Math.abs(point.chartY - last.chartY);
476
+ delta = Math.max(deltaX, deltaY);
477
+ if (delta > distance) {
478
+ n = Math.ceil(delta / distance);
479
+ for (j = 1; j < n; j += 1) {
480
+ pushDiscrete({
481
+ chartX: last.chartX +
482
+ (point.chartX - last.chartX) *
483
+ (j / n),
484
+ chartY: last.chartY +
485
+ (point.chartY - last.chartY) *
486
+ (j / n),
487
+ chartCenterY: last.chartCenterY +
488
+ (point.chartCenterY -
489
+ last.chartCenterY) * (j / n),
490
+ plotX: last.plotX +
491
+ (point.plotX - last.plotX) *
492
+ (j / n),
493
+ plotY: last.plotY +
494
+ (point.plotY - last.plotY) *
495
+ (j / n)
496
+ });
497
+ }
498
+ }
499
+ }
500
+ // Add the real point in order to find positive and negative peaks
501
+ if (isNumber(point.plotY)) {
502
+ pushDiscrete(point);
503
+ }
504
+ }
505
+ }
506
+ // Get the bounding box so we can do a quick check first if the bounding
507
+ // boxes overlap.
508
+ /*
509
+ interpolated.bBox = node.getBBox();
510
+ interpolated.bBox.x += paneLeft;
511
+ interpolated.bBox.y += paneTop;
512
+ */
513
+ return interpolated;
514
+ }
515
+ /**
516
+ * Overridable function to return series-specific font sizes for the labels. By
517
+ * default it returns bigger font sizes for series with the greater sum of y
518
+ * values.
519
+ * @private
715
520
  */
716
- function drawLabels(e) {
521
+ function labelFontSize(series, minFontSize, maxFontSize) {
522
+ return minFontSize + ((series.sum / series.chart.labelSeriesMaxSum) *
523
+ (maxFontSize - minFontSize)) + 'px';
524
+ }
525
+ /**
526
+ * Prepare drawing series labels.
527
+ * @private
528
+ */
529
+ function onChartRedraw(e) {
717
530
  if (this.renderer) {
718
531
  var chart_1 = this;
719
532
  var delay_1 = animObject(chart_1.renderer.globalAnimation).duration;
@@ -755,11 +568,76 @@ function drawLabels(e) {
755
568
  });
756
569
  chart_1.seriesLabelTimer = syncTimeout(function () {
757
570
  if (chart_1.series && chart_1.labelSeries) { // #7931, chart destroyed
758
- chart_1.drawSeriesLabels();
571
+ drawSeriesLabels(chart_1);
759
572
  }
760
573
  }, chart_1.renderer.forExport || !delay_1 ? 0 : delay_1);
761
574
  }
762
575
  }
763
- // Leave both events, we handle animation differently (#9815)
764
- addEvent(Chart, 'load', drawLabels);
765
- addEvent(Chart, 'redraw', drawLabels);
576
+ /**
577
+ * General symbol definition for labels with connector.
578
+ * @private
579
+ */
580
+ function symbolConnector(x, y, w, h, options) {
581
+ var anchorX = options && options.anchorX, anchorY = options && options.anchorY;
582
+ var path, yOffset, lateral = w / 2;
583
+ if (isNumber(anchorX) && isNumber(anchorY)) {
584
+ path = [['M', anchorX, anchorY]];
585
+ // Prefer 45 deg connectors
586
+ yOffset = y - anchorY;
587
+ if (yOffset < 0) {
588
+ yOffset = -h - yOffset;
589
+ }
590
+ if (yOffset < w) {
591
+ lateral = anchorX < x + (w / 2) ? yOffset : w - yOffset;
592
+ }
593
+ // Anchor below label
594
+ if (anchorY > y + h) {
595
+ path.push(['L', x + lateral, y + h]);
596
+ // Anchor above label
597
+ }
598
+ else if (anchorY < y) {
599
+ path.push(['L', x + lateral, y]);
600
+ // Anchor left of label
601
+ }
602
+ else if (anchorX < x) {
603
+ path.push(['L', x, y + h / 2]);
604
+ // Anchor right of label
605
+ }
606
+ else if (anchorX > x + w) {
607
+ path.push(['L', x + w, y + h / 2]);
608
+ }
609
+ }
610
+ return path || [];
611
+ }
612
+ /* *
613
+ *
614
+ * Default Export
615
+ *
616
+ * */
617
+ var SeriesLabel = {
618
+ compose: compose
619
+ };
620
+ export default SeriesLabel;
621
+ /* *
622
+ *
623
+ * API Declarations
624
+ *
625
+ * */
626
+ /**
627
+ * Containing the position of a box that should be avoided by labels.
628
+ *
629
+ * @interface Highcharts.LabelIntersectBoxObject
630
+ */ /**
631
+ * @name Highcharts.LabelIntersectBoxObject#bottom
632
+ * @type {number}
633
+ */ /**
634
+ * @name Highcharts.LabelIntersectBoxObject#left
635
+ * @type {number}
636
+ */ /**
637
+ * @name Highcharts.LabelIntersectBoxObject#right
638
+ * @type {number}
639
+ */ /**
640
+ * @name Highcharts.LabelIntersectBoxObject#top
641
+ * @type {number}
642
+ */
643
+ (''); // keeps doclets above in JS file