highcharts 10.2.1 → 10.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (732) hide show
  1. package/bower.json +1 -1
  2. package/es-modules/Accessibility/Accessibility.js +1 -1
  3. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +9 -6
  4. package/es-modules/Accessibility/Components/LegendComponent.js +36 -32
  5. package/es-modules/Accessibility/Components/RangeSelectorComponent.js +1 -1
  6. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +16 -16
  7. package/es-modules/Accessibility/Options/LangDefaults.js +4 -0
  8. package/es-modules/Core/Axis/Axis.js +42 -32
  9. package/es-modules/Core/Axis/Axis3DComposition.js +501 -0
  10. package/es-modules/Core/Axis/Axis3DDefaults.js +130 -0
  11. package/es-modules/Core/Axis/AxisDefaults.js +20 -7
  12. package/es-modules/Core/Axis/Color/ColorAxis.js +46 -52
  13. package/es-modules/Core/Axis/Color/ColorAxisComposition.js +4 -2
  14. package/es-modules/Core/Axis/NavigatorAxisComposition.js +161 -0
  15. package/es-modules/Core/Axis/OrdinalAxis.js +2 -1
  16. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +1 -1
  17. package/es-modules/Core/Axis/RadialAxis.js +19 -5
  18. package/es-modules/Core/Axis/Tick.js +1 -1
  19. package/es-modules/Core/Axis/Tick3DComposition.js +71 -0
  20. package/es-modules/Core/Chart/Chart.js +16 -20
  21. package/es-modules/Core/Chart/Chart3D.js +4 -4
  22. package/es-modules/Core/Chart/ChartDefaults.js +33 -43
  23. package/es-modules/Core/Chart/GanttChart.js +1 -1
  24. package/es-modules/Core/Chart/MapChart.js +1 -1
  25. package/es-modules/Core/Chart/StockChart.js +11 -28
  26. package/es-modules/Core/{DefaultOptions.js → Defaults.js} +21 -37
  27. package/es-modules/Core/FormatUtilities.js +1 -1
  28. package/es-modules/Core/Globals.js +1 -1
  29. package/es-modules/Core/Legend/Legend.js +114 -110
  30. package/es-modules/Core/Legend/LegendSymbol.js +9 -6
  31. package/es-modules/Core/MSPointer.js +4 -2
  32. package/es-modules/Core/Pointer.js +125 -75
  33. package/es-modules/Core/Renderer/SVG/SVGElement.js +0 -3
  34. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +28 -14
  35. package/es-modules/Core/Series/DataLabel.js +8 -5
  36. package/es-modules/Core/Series/Point.js +38 -22
  37. package/es-modules/Core/Series/Series.js +12 -9
  38. package/es-modules/Core/Series/SeriesDefaults.js +36 -24
  39. package/es-modules/Core/Series/SeriesRegistry.js +2 -2
  40. package/es-modules/Core/Time.js +6 -5
  41. package/es-modules/Core/Tooltip.js +6 -28
  42. package/es-modules/Core/Utilities.js +6 -8
  43. package/es-modules/Extensions/Annotations/Annotation.js +1 -1
  44. package/es-modules/Extensions/Annotations/AnnotationDefaults.js +13 -8
  45. package/es-modules/Extensions/Annotations/MockPoint.js +2 -1
  46. package/es-modules/Extensions/Annotations/NavigationBindings.js +4 -5
  47. package/es-modules/Extensions/Annotations/NavigationBindingsDefaults.js +1 -1
  48. package/es-modules/Extensions/Annotations/Popup/Popup.js +2 -2
  49. package/es-modules/Extensions/Annotations/Popup/PopupAnnotations.js +4 -4
  50. package/es-modules/Extensions/Annotations/Popup/PopupComposition.js +1 -1
  51. package/es-modules/Extensions/Boost/BoostSeries.js +11 -8
  52. package/es-modules/Extensions/Breadcrumbs.js +2 -2
  53. package/es-modules/Extensions/Data.js +2 -2
  54. package/es-modules/Extensions/DataGrouping/ApproximationDefaults.js +157 -0
  55. package/es-modules/Extensions/DataGrouping/ApproximationRegistry.js +35 -0
  56. package/es-modules/Extensions/DataGrouping/DataGrouping.js +469 -0
  57. package/es-modules/Extensions/DataGrouping/DataGroupingAxisComposition.js +174 -0
  58. package/es-modules/Extensions/DataGrouping/DataGroupingDefaults.js +143 -0
  59. package/es-modules/Extensions/DataGrouping/DataGroupingSeriesComposition.js +479 -0
  60. package/es-modules/Extensions/Debugger/Debugger.js +1 -1
  61. package/es-modules/Extensions/DraggablePoints.js +6 -2
  62. package/es-modules/Extensions/Drilldown.js +3 -5
  63. package/es-modules/Extensions/ExportData/ExportData.js +31 -5
  64. package/es-modules/Extensions/Exporting/Exporting.js +47 -60
  65. package/es-modules/Extensions/Exporting/ExportingDefaults.js +22 -24
  66. package/es-modules/Extensions/GeoJSON.js +3 -1
  67. package/es-modules/Extensions/MarkerClusters.js +1 -1
  68. package/es-modules/Extensions/NoDataToDisplay.js +1 -1
  69. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +5 -5
  70. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
  71. package/es-modules/Extensions/Oldie/Oldie.js +3 -3
  72. package/es-modules/Extensions/Oldie/VMLRenderer3D.js +1 -1
  73. package/es-modules/Extensions/OldiePolyfills.js +3 -1
  74. package/es-modules/Extensions/Pane.js +42 -5
  75. package/es-modules/Extensions/ParallelCoordinates.js +5 -1
  76. package/es-modules/Extensions/PatternFill.js +10 -10
  77. package/es-modules/Extensions/SeriesLabel/SeriesLabel.js +2 -2
  78. package/es-modules/Extensions/SeriesLabel/SeriesLabelDefaults.js +4 -0
  79. package/es-modules/Extensions/Sonification/Sonification.js +1 -1
  80. package/es-modules/Extensions/Themes/Avocado.js +1 -1
  81. package/es-modules/Extensions/Themes/BrandDark.js +1 -1
  82. package/es-modules/Extensions/Themes/BrandLight.js +1 -1
  83. package/es-modules/Extensions/Themes/DarkBlue.js +1 -1
  84. package/es-modules/Extensions/Themes/DarkGreen.js +1 -1
  85. package/es-modules/Extensions/Themes/DarkUnica.js +1 -1
  86. package/es-modules/Extensions/Themes/Gray.js +1 -1
  87. package/es-modules/Extensions/Themes/Grid.js +1 -1
  88. package/es-modules/Extensions/Themes/GridLight.js +1 -1
  89. package/es-modules/Extensions/Themes/HighContrastDark.js +1 -1
  90. package/es-modules/Extensions/Themes/HighContrastLight.js +1 -1
  91. package/es-modules/Extensions/Themes/SandSignika.js +1 -1
  92. package/es-modules/Extensions/Themes/Skies.js +1 -1
  93. package/es-modules/Extensions/Themes/Sunset.js +1 -1
  94. package/es-modules/Gantt/Connection.js +5 -5
  95. package/es-modules/Gantt/Pathfinder.js +6 -6
  96. package/es-modules/Maps/MapNavigation.js +1 -1
  97. package/es-modules/Maps/{MapNavigationOptionsDefault.js → MapNavigationDefaults.js} +4 -4
  98. package/es-modules/Maps/MapViewOptionsDefault.js +4 -4
  99. package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +3 -5
  100. package/es-modules/Series/AreaRange/AreaRangePoint.js +6 -10
  101. package/es-modules/Series/AreaRange/AreaRangeSeries.js +59 -48
  102. package/es-modules/Series/BoxPlot/BoxPlotSeries.js +4 -1
  103. package/es-modules/Series/Bubble/BubbleLegendComposition.js +22 -16
  104. package/es-modules/Series/Bubble/BubbleLegendItem.js +17 -21
  105. package/es-modules/Series/Candlestick/CandlestickSeries.js +15 -175
  106. package/es-modules/Series/Candlestick/CandlestickSeriesDefaults.js +179 -0
  107. package/es-modules/Series/Column/ColumnSeries.js +25 -506
  108. package/es-modules/Series/Column/ColumnSeriesDefaults.js +487 -0
  109. package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +40 -36
  110. package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +2 -106
  111. package/es-modules/Series/DependencyWheel/DependencyWheelSeriesDefaults.js +183 -0
  112. package/es-modules/Series/DotPlot/DotPlotSeries.js +11 -12
  113. package/es-modules/Series/DrawPointUtilities.js +2 -14
  114. package/es-modules/Series/Dumbbell/DumbbellPoint.js +5 -4
  115. package/es-modules/Series/Dumbbell/DumbbellSeries.js +11 -7
  116. package/es-modules/Series/ErrorBar/ErrorBarSeries.js +19 -136
  117. package/es-modules/Series/ErrorBar/ErrorBarSeriesDefaults.js +147 -0
  118. package/es-modules/Series/Flags/FlagsPoint.js +2 -3
  119. package/es-modules/Series/Flags/FlagsSeries.js +31 -298
  120. package/es-modules/Series/Flags/FlagsSeriesDefaults.js +295 -0
  121. package/es-modules/Series/Flags/FlagsSymbols.js +96 -71
  122. package/es-modules/Series/HLC/HLCPoint.js +2 -2
  123. package/es-modules/Series/HLC/HLCSeries.js +7 -172
  124. package/es-modules/Series/HLC/HLCSeriesDefaults.js +184 -0
  125. package/es-modules/Series/Heatmap/HeatmapSeries.js +3 -0
  126. package/es-modules/Series/HeikinAshi/HeikinAshiPoint.js +3 -20
  127. package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +78 -139
  128. package/es-modules/Series/HeikinAshi/HeikinAshiSeriesDefaults.js +102 -0
  129. package/es-modules/Series/Item/ItemPoint.js +0 -1
  130. package/es-modules/Series/Item/ItemSeries.js +13 -8
  131. package/es-modules/Series/Line/LineSeries.js +8 -4
  132. package/es-modules/Series/Map/MapPoint.js +19 -1
  133. package/es-modules/Series/Map/MapSeries.js +7 -3
  134. package/es-modules/Series/MapBubble/MapBubbleSeries.js +4 -0
  135. package/es-modules/Series/MapPoint/MapPointPoint.js +0 -5
  136. package/es-modules/Series/MapPoint/MapPointSeries.js +24 -9
  137. package/es-modules/Series/Networkgraph/NetworkgraphSeries.js +2 -5
  138. package/es-modules/Series/Networkgraph/NetworkgraphSeriesDefaults.js +2 -0
  139. package/es-modules/Series/OHLC/OHLCPoint.js +0 -2
  140. package/es-modules/Series/OHLC/OHLCSeries.js +64 -160
  141. package/es-modules/Series/OHLC/OHLCSeriesDefaults.js +151 -0
  142. package/es-modules/Series/Organization/OrganizationPoint.js +0 -2
  143. package/es-modules/Series/Organization/OrganizationSeries.js +96 -469
  144. package/es-modules/Series/Organization/OrganizationSeriesDefaults.js +415 -0
  145. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +3 -10
  146. package/es-modules/Series/PackedBubble/PackedBubbleSeriesDefaults.js +2 -0
  147. package/es-modules/Series/PathUtilities.js +74 -0
  148. package/es-modules/Series/Pie/PieSeries.js +2 -644
  149. package/es-modules/Series/Pie/PieSeriesDefaults.js +660 -0
  150. package/es-modules/Series/PolarComposition.js +233 -15
  151. package/es-modules/Series/Sankey/SankeySeries.js +27 -530
  152. package/es-modules/Series/Sankey/SankeySeriesDefaults.js +522 -0
  153. package/es-modules/Series/Scatter/ScatterSeries.js +2 -172
  154. package/es-modules/Series/Scatter/ScatterSeriesDefaults.js +188 -0
  155. package/es-modules/Series/SolidGauge/SolidGaugeSeries.js +12 -182
  156. package/es-modules/Series/SolidGauge/SolidGaugeSeriesDefaults.js +199 -0
  157. package/es-modules/Series/Sunburst/SunburstNode.js +34 -0
  158. package/es-modules/Series/Sunburst/SunburstPoint.js +2 -1
  159. package/es-modules/Series/Sunburst/SunburstSeries.js +3 -1
  160. package/es-modules/Series/Timeline/TimelineSeries.js +2 -231
  161. package/es-modules/Series/Timeline/TimelineSeriesDefaults.js +248 -0
  162. package/es-modules/Series/TreeUtilities.js +1 -2
  163. package/es-modules/Series/Treegraph/TreegraphLayout.js +338 -0
  164. package/es-modules/Series/Treegraph/TreegraphLink.js +92 -0
  165. package/es-modules/Series/Treegraph/TreegraphNode.js +206 -0
  166. package/es-modules/Series/Treegraph/TreegraphPoint.js +175 -0
  167. package/es-modules/Series/Treegraph/TreegraphSeries.js +510 -0
  168. package/es-modules/Series/Treegraph/TreegraphSeriesDefaults.js +231 -0
  169. package/es-modules/Series/Treemap/TreemapNode.js +48 -0
  170. package/es-modules/Series/Treemap/TreemapPoint.js +2 -1
  171. package/es-modules/Series/Treemap/TreemapSeries.js +29 -27
  172. package/es-modules/Series/Variwide/VariwideComposition.js +70 -26
  173. package/es-modules/Series/Variwide/VariwidePoint.js +8 -7
  174. package/es-modules/Series/Variwide/VariwideSeries.js +19 -14
  175. package/es-modules/Series/Vector/VectorSeries.js +2 -2
  176. package/es-modules/Series/Venn/VennSeries.js +14 -0
  177. package/es-modules/Series/Waterfall/WaterfallSeries.js +0 -1
  178. package/es-modules/Series/Windbarb/WindbarbSeries.js +3 -2
  179. package/es-modules/Series/Wordcloud/WordcloudSeries.js +3 -0
  180. package/es-modules/Stock/Indicators/AO/AOIndicator.js +1 -2
  181. package/es-modules/Stock/Indicators/BB/BBIndicator.js +15 -4
  182. package/es-modules/Stock/Indicators/IKH/IKHIndicator.js +21 -18
  183. package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +1 -2
  184. package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +1 -2
  185. package/es-modules/Stock/Indicators/PivotPoints/PivotPointsIndicator.js +1 -1
  186. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +0 -1
  187. package/es-modules/Stock/Indicators/SlowStochastic/SlowStochasticIndicator.js +3 -4
  188. package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +1 -2
  189. package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +6 -7
  190. package/es-modules/{Core → Stock/Navigator}/Navigator.js +112 -686
  191. package/es-modules/Stock/Navigator/NavigatorComposition.js +218 -0
  192. package/es-modules/Stock/Navigator/NavigatorDefaults.js +490 -0
  193. package/es-modules/Stock/Navigator/NavigatorSymbols.js +44 -0
  194. package/es-modules/{Extensions → Stock/RangeSelector}/RangeSelector.js +154 -818
  195. package/es-modules/Stock/RangeSelector/RangeSelectorComposition.js +286 -0
  196. package/es-modules/Stock/RangeSelector/RangeSelectorDefaults.js +521 -0
  197. package/es-modules/{Core → Stock/Scrollbar}/Scrollbar.js +4 -4
  198. package/es-modules/{Core → Stock/Scrollbar}/ScrollbarDefaults.js +1 -1
  199. package/es-modules/Stock/{StockToolbar.js → StockTools/StockToolbar.js} +2 -2
  200. package/es-modules/Stock/{StockTools.js → StockTools/StockTools.js} +3 -3
  201. package/es-modules/Stock/{StockToolsBindings.js → StockTools/StockToolsBindings.js} +3 -3
  202. package/es-modules/Stock/{StockToolsDefaults.js → StockTools/StockToolsDefaults.js} +4 -4
  203. package/es-modules/Stock/{StockToolsGui.js → StockTools/StockToolsGui.js} +4 -4
  204. package/es-modules/Stock/{StockToolsUtilities.js → StockTools/StockToolsUtilities.js} +4 -4
  205. package/es-modules/masters/highcharts-3d.src.js +3 -5
  206. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  207. package/es-modules/masters/highcharts-more.src.js +1 -1
  208. package/es-modules/masters/highcharts.src.js +6 -6
  209. package/es-modules/masters/highmaps.src.js +1 -1
  210. package/es-modules/masters/highstock.src.js +1 -1
  211. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  212. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  213. package/es-modules/masters/indicators/ao.src.js +1 -1
  214. package/es-modules/masters/indicators/apo.src.js +1 -1
  215. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  216. package/es-modules/masters/indicators/aroon.src.js +1 -1
  217. package/es-modules/masters/indicators/atr.src.js +1 -1
  218. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  219. package/es-modules/masters/indicators/cci.src.js +1 -1
  220. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  221. package/es-modules/masters/indicators/cmf.src.js +1 -1
  222. package/es-modules/masters/indicators/cmo.src.js +1 -1
  223. package/es-modules/masters/indicators/dema.src.js +1 -1
  224. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  225. package/es-modules/masters/indicators/dmi.src.js +1 -1
  226. package/es-modules/masters/indicators/dpo.src.js +1 -1
  227. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  228. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  229. package/es-modules/masters/indicators/indicators.src.js +1 -1
  230. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  231. package/es-modules/masters/indicators/klinger.src.js +1 -1
  232. package/es-modules/masters/indicators/macd.src.js +1 -1
  233. package/es-modules/masters/indicators/mfi.src.js +1 -1
  234. package/es-modules/masters/indicators/momentum.src.js +1 -1
  235. package/es-modules/masters/indicators/natr.src.js +1 -1
  236. package/es-modules/masters/indicators/obv.src.js +1 -1
  237. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  238. package/es-modules/masters/indicators/ppo.src.js +1 -1
  239. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  240. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  241. package/es-modules/masters/indicators/psar.src.js +1 -1
  242. package/es-modules/masters/indicators/regressions.src.js +1 -1
  243. package/es-modules/masters/indicators/roc.src.js +1 -1
  244. package/es-modules/masters/indicators/rsi.src.js +1 -1
  245. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  246. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  247. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  248. package/es-modules/masters/indicators/tema.src.js +1 -1
  249. package/es-modules/masters/indicators/trendline.src.js +1 -1
  250. package/es-modules/masters/indicators/trix.src.js +1 -1
  251. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  252. package/es-modules/masters/indicators/vwap.src.js +1 -1
  253. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  254. package/es-modules/masters/indicators/wma.src.js +1 -1
  255. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  256. package/es-modules/masters/modules/accessibility.src.js +1 -1
  257. package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
  258. package/es-modules/masters/modules/annotations.src.js +1 -1
  259. package/es-modules/masters/modules/arc-diagram.src.js +1 -1
  260. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  261. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  262. package/es-modules/masters/modules/boost.src.js +1 -1
  263. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  264. package/es-modules/masters/modules/bullet.src.js +1 -1
  265. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  266. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  267. package/es-modules/masters/modules/cylinder.src.js +1 -1
  268. package/es-modules/masters/modules/data.src.js +1 -1
  269. package/es-modules/masters/modules/datagrouping.src.js +11 -3
  270. package/es-modules/masters/modules/debugger.src.js +1 -1
  271. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  272. package/es-modules/masters/modules/dotplot.src.js +1 -1
  273. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  274. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  275. package/es-modules/masters/modules/drilldown.src.js +1 -1
  276. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  277. package/es-modules/masters/modules/export-data.src.js +1 -1
  278. package/es-modules/masters/modules/exporting.src.js +1 -1
  279. package/es-modules/masters/modules/full-screen.src.js +1 -1
  280. package/es-modules/masters/modules/funnel.src.js +1 -1
  281. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  282. package/es-modules/masters/modules/gantt.src.js +9 -5
  283. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  284. package/es-modules/masters/modules/heatmap.src.js +1 -1
  285. package/es-modules/masters/modules/heikinashi.src.js +5 -2
  286. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  287. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  288. package/es-modules/masters/modules/item-series.src.js +1 -1
  289. package/es-modules/masters/modules/lollipop.src.js +1 -1
  290. package/es-modules/masters/modules/map.src.js +1 -1
  291. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  292. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  293. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  294. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  295. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  296. package/es-modules/masters/modules/oldie.src.js +1 -1
  297. package/es-modules/masters/modules/organization.src.js +1 -1
  298. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  299. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  300. package/es-modules/masters/modules/pareto.src.js +1 -1
  301. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  302. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  303. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  304. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  305. package/es-modules/masters/modules/sankey.src.js +1 -1
  306. package/es-modules/masters/modules/series-label.src.js +1 -1
  307. package/es-modules/masters/modules/series-on-point.src.js +1 -1
  308. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  309. package/es-modules/masters/modules/sonification.src.js +1 -1
  310. package/es-modules/masters/modules/static-scale.src.js +1 -1
  311. package/es-modules/masters/modules/stock-tools.src.js +4 -4
  312. package/es-modules/masters/modules/stock.src.js +17 -11
  313. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  314. package/es-modules/masters/modules/sunburst.src.js +1 -1
  315. package/es-modules/masters/modules/tilemap.src.js +1 -1
  316. package/es-modules/masters/modules/timeline.src.js +1 -1
  317. package/es-modules/masters/modules/treegraph.src.js +13 -0
  318. package/es-modules/masters/modules/treegrid.src.js +1 -1
  319. package/es-modules/masters/modules/treemap.src.js +1 -1
  320. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  321. package/es-modules/masters/modules/variwide.src.js +5 -2
  322. package/es-modules/masters/modules/vector.src.js +1 -1
  323. package/es-modules/masters/modules/venn.src.js +1 -1
  324. package/es-modules/masters/modules/windbarb.src.js +1 -1
  325. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  326. package/es-modules/masters/modules/xrange.src.js +1 -1
  327. package/es-modules/masters/themes/avocado.src.js +1 -1
  328. package/es-modules/masters/themes/brand-dark.src.js +1 -1
  329. package/es-modules/masters/themes/brand-light.src.js +1 -1
  330. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  331. package/es-modules/masters/themes/dark-green.src.js +1 -1
  332. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  333. package/es-modules/masters/themes/gray.src.js +1 -1
  334. package/es-modules/masters/themes/grid-light.src.js +1 -1
  335. package/es-modules/masters/themes/grid.src.js +1 -1
  336. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  337. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  338. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  339. package/es-modules/masters/themes/skies.src.js +1 -1
  340. package/es-modules/masters/themes/sunset.src.js +1 -1
  341. package/highcharts-3d.js +97 -98
  342. package/highcharts-3d.js.map +1 -1
  343. package/highcharts-3d.src.js +476 -449
  344. package/highcharts-gantt.js +811 -808
  345. package/highcharts-gantt.js.map +1 -1
  346. package/highcharts-gantt.src.js +14619 -14112
  347. package/highcharts-more.d.ts +0 -8
  348. package/highcharts-more.js +208 -201
  349. package/highcharts-more.js.map +1 -1
  350. package/highcharts-more.src.d.ts +0 -8
  351. package/highcharts-more.src.js +679 -289
  352. package/highcharts.d.ts +30739 -6156
  353. package/highcharts.js +590 -589
  354. package/highcharts.js.map +1 -1
  355. package/highcharts.src.d.ts +30739 -6156
  356. package/highcharts.src.js +1988 -1799
  357. package/highmaps.js +759 -757
  358. package/highmaps.js.map +1 -1
  359. package/highmaps.src.js +2339 -2077
  360. package/highstock.js +802 -794
  361. package/highstock.js.map +1 -1
  362. package/highstock.src.js +12349 -11416
  363. package/indicators/acceleration-bands.js +1 -1
  364. package/indicators/acceleration-bands.src.js +1 -1
  365. package/indicators/accumulation-distribution.js +1 -1
  366. package/indicators/accumulation-distribution.src.js +1 -1
  367. package/indicators/ao.js +6 -6
  368. package/indicators/ao.js.map +1 -1
  369. package/indicators/ao.src.js +4 -3
  370. package/indicators/apo.js +1 -1
  371. package/indicators/apo.src.js +1 -1
  372. package/indicators/aroon-oscillator.js +1 -1
  373. package/indicators/aroon-oscillator.src.js +1 -1
  374. package/indicators/aroon.js +1 -1
  375. package/indicators/aroon.src.js +1 -1
  376. package/indicators/atr.js +1 -1
  377. package/indicators/atr.src.js +1 -1
  378. package/indicators/bollinger-bands.js +1 -1
  379. package/indicators/bollinger-bands.js.map +1 -1
  380. package/indicators/bollinger-bands.src.js +16 -5
  381. package/indicators/cci.js +1 -1
  382. package/indicators/cci.src.js +1 -1
  383. package/indicators/chaikin.js +1 -1
  384. package/indicators/chaikin.src.js +1 -1
  385. package/indicators/cmf.js +1 -1
  386. package/indicators/cmf.src.js +1 -1
  387. package/indicators/cmo.d.ts +17 -0
  388. package/indicators/cmo.js +1 -1
  389. package/indicators/cmo.src.d.ts +17 -0
  390. package/indicators/cmo.src.js +1 -1
  391. package/indicators/dema.js +1 -1
  392. package/indicators/dema.src.js +1 -1
  393. package/indicators/disparity-index.d.ts +17 -0
  394. package/indicators/disparity-index.js +1 -1
  395. package/indicators/disparity-index.src.d.ts +17 -0
  396. package/indicators/disparity-index.src.js +1 -1
  397. package/indicators/dmi.d.ts +17 -0
  398. package/indicators/dmi.js +1 -1
  399. package/indicators/dmi.src.d.ts +17 -0
  400. package/indicators/dmi.src.js +1 -1
  401. package/indicators/dpo.js +1 -1
  402. package/indicators/dpo.src.js +1 -1
  403. package/indicators/ichimoku-kinko-hyo.js +14 -14
  404. package/indicators/ichimoku-kinko-hyo.js.map +1 -1
  405. package/indicators/ichimoku-kinko-hyo.src.js +22 -19
  406. package/indicators/indicators-all.js +198 -199
  407. package/indicators/indicators-all.js.map +1 -1
  408. package/indicators/indicators-all.src.js +63 -57
  409. package/indicators/indicators.js +13 -13
  410. package/indicators/indicators.js.map +1 -1
  411. package/indicators/indicators.src.js +1 -15
  412. package/indicators/keltner-channels.js +1 -1
  413. package/indicators/keltner-channels.src.js +1 -1
  414. package/indicators/klinger.d.ts +17 -0
  415. package/indicators/klinger.js +12 -12
  416. package/indicators/klinger.js.map +1 -1
  417. package/indicators/klinger.src.d.ts +17 -0
  418. package/indicators/klinger.src.js +4 -3
  419. package/indicators/macd.js +1 -1
  420. package/indicators/macd.js.map +1 -1
  421. package/indicators/macd.src.js +4 -3
  422. package/indicators/mfi.js +1 -1
  423. package/indicators/mfi.src.js +1 -1
  424. package/indicators/momentum.js +1 -1
  425. package/indicators/momentum.src.js +1 -1
  426. package/indicators/natr.js +1 -1
  427. package/indicators/natr.src.js +1 -1
  428. package/indicators/obv.d.ts +17 -0
  429. package/indicators/obv.js +1 -1
  430. package/indicators/obv.src.d.ts +17 -0
  431. package/indicators/obv.src.js +1 -1
  432. package/indicators/pivot-points.js +2 -2
  433. package/indicators/pivot-points.js.map +1 -1
  434. package/indicators/pivot-points.src.js +2 -2
  435. package/indicators/ppo.js +1 -1
  436. package/indicators/ppo.src.js +1 -1
  437. package/indicators/price-channel.js +1 -1
  438. package/indicators/price-channel.src.js +1 -1
  439. package/indicators/price-envelopes.js +1 -1
  440. package/indicators/price-envelopes.src.js +1 -1
  441. package/indicators/psar.js +1 -1
  442. package/indicators/psar.src.js +1 -1
  443. package/indicators/regressions.js +1 -1
  444. package/indicators/regressions.src.js +1 -1
  445. package/indicators/roc.js +1 -1
  446. package/indicators/roc.src.js +1 -1
  447. package/indicators/rsi.js +1 -1
  448. package/indicators/rsi.src.js +1 -1
  449. package/indicators/slow-stochastic.js +5 -5
  450. package/indicators/slow-stochastic.js.map +1 -1
  451. package/indicators/slow-stochastic.src.js +6 -5
  452. package/indicators/stochastic.js +1 -1
  453. package/indicators/stochastic.src.js +1 -1
  454. package/indicators/supertrend.js +7 -7
  455. package/indicators/supertrend.js.map +1 -1
  456. package/indicators/supertrend.src.js +4 -3
  457. package/indicators/tema.js +1 -1
  458. package/indicators/tema.src.js +1 -1
  459. package/indicators/trendline.js +1 -1
  460. package/indicators/trendline.src.js +1 -1
  461. package/indicators/trix.js +1 -1
  462. package/indicators/trix.src.js +1 -1
  463. package/indicators/volume-by-price.js +17 -17
  464. package/indicators/volume-by-price.js.map +1 -1
  465. package/indicators/volume-by-price.src.js +9 -8
  466. package/indicators/vwap.js +1 -1
  467. package/indicators/vwap.src.js +1 -1
  468. package/indicators/williams-r.js +1 -1
  469. package/indicators/williams-r.src.js +1 -1
  470. package/indicators/wma.js +1 -1
  471. package/indicators/wma.src.js +1 -1
  472. package/indicators/zigzag.js +1 -1
  473. package/indicators/zigzag.src.js +1 -1
  474. package/modules/accessibility.js +214 -213
  475. package/modules/accessibility.js.map +1 -1
  476. package/modules/accessibility.src.js +991 -835
  477. package/modules/annotations-advanced.js +16 -16
  478. package/modules/annotations-advanced.js.map +1 -1
  479. package/modules/annotations-advanced.src.js +29 -24
  480. package/modules/annotations.js +91 -91
  481. package/modules/annotations.js.map +1 -1
  482. package/modules/annotations.src.js +29 -24
  483. package/modules/arc-diagram.d.ts +17 -0
  484. package/modules/arc-diagram.js +15 -15
  485. package/modules/arc-diagram.js.map +1 -1
  486. package/modules/arc-diagram.src.d.ts +17 -0
  487. package/modules/arc-diagram.src.js +6 -6
  488. package/modules/arrow-symbols.js +1 -1
  489. package/modules/arrow-symbols.src.js +1 -1
  490. package/modules/boost-canvas.js +19 -19
  491. package/modules/boost-canvas.js.map +1 -1
  492. package/modules/boost-canvas.src.js +13 -8
  493. package/modules/boost.js +37 -37
  494. package/modules/boost.js.map +1 -1
  495. package/modules/boost.src.js +13 -8
  496. package/modules/broken-axis.js +1 -1
  497. package/modules/broken-axis.src.js +1 -1
  498. package/modules/bullet.js +1 -1
  499. package/modules/bullet.src.js +1 -1
  500. package/modules/coloraxis.js +25 -24
  501. package/modules/coloraxis.js.map +1 -1
  502. package/modules/coloraxis.src.js +77 -58
  503. package/modules/current-date-indicator.js +1 -1
  504. package/modules/current-date-indicator.src.js +1 -1
  505. package/modules/cylinder.js +1 -1
  506. package/modules/cylinder.src.js +1 -1
  507. package/modules/data.js +27 -27
  508. package/modules/data.js.map +1 -1
  509. package/modules/data.src.js +3 -3
  510. package/modules/datagrouping.d.ts +31 -0
  511. package/modules/datagrouping.js +23 -21
  512. package/modules/datagrouping.js.map +1 -1
  513. package/modules/datagrouping.src.d.ts +31 -0
  514. package/modules/datagrouping.src.js +921 -640
  515. package/modules/debugger.js +3 -3
  516. package/modules/debugger.js.map +1 -1
  517. package/modules/debugger.src.js +2 -2
  518. package/modules/dependency-wheel.js +12 -12
  519. package/modules/dependency-wheel.js.map +1 -1
  520. package/modules/dependency-wheel.src.js +191 -108
  521. package/modules/dotplot.js +6 -6
  522. package/modules/dotplot.js.map +1 -1
  523. package/modules/dotplot.src.js +10 -13
  524. package/modules/drag-panes.js +1 -1
  525. package/modules/drag-panes.src.js +1 -1
  526. package/modules/draggable-points.js +5 -5
  527. package/modules/draggable-points.js.map +1 -1
  528. package/modules/draggable-points.src.js +7 -3
  529. package/modules/drilldown.js +37 -37
  530. package/modules/drilldown.js.map +1 -1
  531. package/modules/drilldown.src.js +5 -6
  532. package/modules/dumbbell.js +17 -17
  533. package/modules/dumbbell.js.map +1 -1
  534. package/modules/dumbbell.src.js +27 -22
  535. package/modules/export-data.js +26 -25
  536. package/modules/export-data.js.map +1 -1
  537. package/modules/export-data.src.js +33 -6
  538. package/modules/exporting.js +36 -35
  539. package/modules/exporting.js.map +1 -1
  540. package/modules/exporting.src.js +81 -88
  541. package/modules/full-screen.js +1 -1
  542. package/modules/full-screen.src.js +1 -1
  543. package/modules/funnel.js +1 -1
  544. package/modules/funnel.src.js +1 -1
  545. package/modules/funnel3d.js +1 -1
  546. package/modules/funnel3d.src.js +1 -1
  547. package/modules/gantt.js +221 -219
  548. package/modules/gantt.js.map +1 -1
  549. package/modules/gantt.src.js +12842 -12524
  550. package/modules/grid-axis.js +1 -1
  551. package/modules/grid-axis.src.js +1 -1
  552. package/modules/heatmap.js +40 -40
  553. package/modules/heatmap.js.map +1 -1
  554. package/modules/heatmap.src.js +80 -58
  555. package/modules/heikinashi.d.ts +17 -0
  556. package/modules/heikinashi.js +9 -8
  557. package/modules/heikinashi.js.map +1 -1
  558. package/modules/heikinashi.src.d.ts +17 -0
  559. package/modules/heikinashi.src.js +192 -165
  560. package/modules/histogram-bellcurve.js +1 -1
  561. package/modules/histogram-bellcurve.src.js +1 -1
  562. package/modules/hollowcandlestick.d.ts +17 -0
  563. package/modules/hollowcandlestick.js +1 -1
  564. package/modules/hollowcandlestick.src.d.ts +17 -0
  565. package/modules/hollowcandlestick.src.js +1 -1
  566. package/modules/item-series.js +12 -12
  567. package/modules/item-series.js.map +1 -1
  568. package/modules/item-series.src.js +14 -10
  569. package/modules/lollipop.js +1 -1
  570. package/modules/lollipop.src.js +1 -1
  571. package/modules/map.js +172 -171
  572. package/modules/map.js.map +1 -1
  573. package/modules/map.src.js +194 -121
  574. package/modules/marker-clusters.js +2 -2
  575. package/modules/marker-clusters.js.map +1 -1
  576. package/modules/marker-clusters.src.js +2 -2
  577. package/modules/networkgraph.js +8 -8
  578. package/modules/networkgraph.js.map +1 -1
  579. package/modules/networkgraph.src.js +5 -6
  580. package/modules/no-data-to-display.js +4 -4
  581. package/modules/no-data-to-display.js.map +1 -1
  582. package/modules/no-data-to-display.src.js +2 -2
  583. package/modules/offline-exporting.js +4 -4
  584. package/modules/offline-exporting.js.map +1 -1
  585. package/modules/offline-exporting.src.js +7 -7
  586. package/modules/oldie-polyfills.js +7 -7
  587. package/modules/oldie-polyfills.js.map +1 -1
  588. package/modules/oldie-polyfills.src.js +9 -7
  589. package/modules/oldie.js +30 -30
  590. package/modules/oldie.js.map +1 -1
  591. package/modules/oldie.src.js +5 -5
  592. package/modules/organization.js +18 -16
  593. package/modules/organization.js.map +1 -1
  594. package/modules/organization.src.js +659 -495
  595. package/modules/overlapping-datalabels.js +1 -1
  596. package/modules/overlapping-datalabels.src.js +1 -1
  597. package/modules/parallel-coordinates.js +10 -10
  598. package/modules/parallel-coordinates.js.map +1 -1
  599. package/modules/parallel-coordinates.src.js +6 -2
  600. package/modules/pareto.js +1 -1
  601. package/modules/pareto.src.js +1 -1
  602. package/modules/pathfinder.js +31 -31
  603. package/modules/pathfinder.js.map +1 -1
  604. package/modules/pathfinder.src.js +19 -23
  605. package/modules/pattern-fill.js +2 -2
  606. package/modules/pattern-fill.js.map +1 -1
  607. package/modules/pattern-fill.src.js +11 -11
  608. package/modules/price-indicator.js +1 -1
  609. package/modules/price-indicator.src.js +1 -1
  610. package/modules/pyramid3d.js +1 -1
  611. package/modules/pyramid3d.src.js +1 -1
  612. package/modules/sankey.js +33 -32
  613. package/modules/sankey.js.map +1 -1
  614. package/modules/sankey.src.js +571 -550
  615. package/modules/series-label.js +17 -17
  616. package/modules/series-label.js.map +1 -1
  617. package/modules/series-label.src.js +7 -3
  618. package/modules/series-on-point.d.ts +17 -0
  619. package/modules/series-on-point.js +1 -1
  620. package/modules/series-on-point.src.d.ts +17 -0
  621. package/modules/series-on-point.src.js +1 -1
  622. package/modules/solid-gauge.js +11 -10
  623. package/modules/solid-gauge.js.map +1 -1
  624. package/modules/solid-gauge.src.js +220 -192
  625. package/modules/sonification.js +2 -2
  626. package/modules/sonification.js.map +1 -1
  627. package/modules/sonification.src.js +2 -2
  628. package/modules/static-scale.js +1 -1
  629. package/modules/static-scale.src.js +1 -1
  630. package/modules/stock-tools.js +59 -59
  631. package/modules/stock-tools.js.map +1 -1
  632. package/modules/stock-tools.src.js +19 -21
  633. package/modules/stock.d.ts +26 -6
  634. package/modules/stock.js +212 -205
  635. package/modules/stock.js.map +1 -1
  636. package/modules/stock.src.d.ts +26 -6
  637. package/modules/stock.src.js +11361 -10617
  638. package/modules/streamgraph.js +1 -1
  639. package/modules/streamgraph.src.js +1 -1
  640. package/modules/sunburst.js +75 -73
  641. package/modules/sunburst.js.map +1 -1
  642. package/modules/sunburst.src.js +133 -57
  643. package/modules/tilemap.js +1 -1
  644. package/modules/tilemap.src.js +1 -1
  645. package/modules/timeline.js +18 -18
  646. package/modules/timeline.js.map +1 -1
  647. package/modules/timeline.src.js +257 -233
  648. package/modules/treegraph.d.ts +17 -0
  649. package/modules/treegraph.js +44 -0
  650. package/modules/treegraph.js.map +1 -0
  651. package/modules/treegraph.src.d.ts +17 -0
  652. package/modules/treegraph.src.js +1829 -0
  653. package/modules/treegrid.js +2 -2
  654. package/modules/treegrid.js.map +1 -1
  655. package/modules/treegrid.src.js +2 -3
  656. package/modules/treemap.js +54 -53
  657. package/modules/treemap.js.map +1 -1
  658. package/modules/treemap.src.js +90 -52
  659. package/modules/variable-pie.js +1 -1
  660. package/modules/variable-pie.src.js +1 -1
  661. package/modules/variwide.js +12 -12
  662. package/modules/variwide.js.map +1 -1
  663. package/modules/variwide.src.js +158 -106
  664. package/modules/vector.js +1 -1
  665. package/modules/vector.src.js +3 -3
  666. package/modules/venn.js +31 -31
  667. package/modules/venn.js.map +1 -1
  668. package/modules/venn.src.js +17 -16
  669. package/modules/windbarb.js +15 -15
  670. package/modules/windbarb.js.map +1 -1
  671. package/modules/windbarb.src.js +41 -4
  672. package/modules/wordcloud.js +23 -23
  673. package/modules/wordcloud.js.map +1 -1
  674. package/modules/wordcloud.src.js +6 -15
  675. package/modules/xrange.js +1 -1
  676. package/modules/xrange.src.js +1 -1
  677. package/package.json +1 -1
  678. package/themes/avocado.js +2 -3
  679. package/themes/avocado.js.map +1 -1
  680. package/themes/avocado.src.js +2 -2
  681. package/themes/brand-dark.d.ts +22 -0
  682. package/themes/brand-dark.js +3 -3
  683. package/themes/brand-dark.js.map +1 -1
  684. package/themes/brand-dark.src.d.ts +22 -0
  685. package/themes/brand-dark.src.js +2 -2
  686. package/themes/brand-light.d.ts +22 -0
  687. package/themes/brand-light.js +2 -2
  688. package/themes/brand-light.js.map +1 -1
  689. package/themes/brand-light.src.d.ts +22 -0
  690. package/themes/brand-light.src.js +2 -2
  691. package/themes/dark-blue.js +2 -2
  692. package/themes/dark-blue.js.map +1 -1
  693. package/themes/dark-blue.src.js +2 -2
  694. package/themes/dark-green.js +2 -2
  695. package/themes/dark-green.js.map +1 -1
  696. package/themes/dark-green.src.js +2 -2
  697. package/themes/dark-unica.js +2 -2
  698. package/themes/dark-unica.js.map +1 -1
  699. package/themes/dark-unica.src.js +2 -2
  700. package/themes/gray.js +2 -2
  701. package/themes/gray.js.map +1 -1
  702. package/themes/gray.src.js +2 -2
  703. package/themes/grid-light.js +2 -2
  704. package/themes/grid-light.js.map +1 -1
  705. package/themes/grid-light.src.js +2 -2
  706. package/themes/grid.js +2 -2
  707. package/themes/grid.js.map +1 -1
  708. package/themes/grid.src.js +2 -2
  709. package/themes/high-contrast-dark.d.ts +22 -0
  710. package/themes/high-contrast-dark.js +2 -2
  711. package/themes/high-contrast-dark.js.map +1 -1
  712. package/themes/high-contrast-dark.src.d.ts +22 -0
  713. package/themes/high-contrast-dark.src.js +2 -2
  714. package/themes/high-contrast-light.d.ts +22 -0
  715. package/themes/high-contrast-light.js +2 -2
  716. package/themes/high-contrast-light.js.map +1 -1
  717. package/themes/high-contrast-light.src.d.ts +22 -0
  718. package/themes/high-contrast-light.src.js +2 -2
  719. package/themes/sand-signika.js +2 -2
  720. package/themes/sand-signika.js.map +1 -1
  721. package/themes/sand-signika.src.js +2 -2
  722. package/themes/skies.js +2 -2
  723. package/themes/skies.js.map +1 -1
  724. package/themes/skies.src.js +2 -2
  725. package/themes/sunset.js +2 -2
  726. package/themes/sunset.js.map +1 -1
  727. package/themes/sunset.src.js +2 -2
  728. package/es-modules/Core/Axis/Axis3D.js +0 -612
  729. package/es-modules/Core/Axis/NavigatorAxis.js +0 -159
  730. package/es-modules/Core/Axis/Tick3D.js +0 -68
  731. package/es-modules/Extensions/DataGrouping.js +0 -1177
  732. package/es-modules/Stock/Indicators/SMA/SMAComposition.js +0 -12
@@ -199,33 +199,36 @@ var Legend = /** @class */ (function () {
199
199
  * Make events official: Fires the event `afterColorizeItem`.
200
200
  */
201
201
  Legend.prototype.colorizeItem = function (item, visible) {
202
- item.legendGroup[visible ? 'removeClass' : 'addClass']('highcharts-legend-item-hidden');
202
+ var _a = item.legendItem || {}, group = _a.group, label = _a.label, line = _a.line, symbol = _a.symbol;
203
+ if (group) {
204
+ group[visible ? 'removeClass' : 'addClass']('highcharts-legend-item-hidden');
205
+ }
203
206
  if (!this.chart.styledMode) {
204
- var legend = this, options = legend.options, legendItem = item.legendItem, legendLine = item.legendLine, legendSymbol = item.legendSymbol, hiddenColor = legend.itemHiddenStyle.color, textColor = visible ?
207
+ var legend = this, options = legend.options, hiddenColor = legend.itemHiddenStyle.color, textColor = visible ?
205
208
  options.itemStyle.color :
206
209
  hiddenColor, symbolColor = visible ?
207
210
  (item.color || hiddenColor) :
208
211
  hiddenColor, markerOptions = item.options && item.options.marker;
209
212
  var symbolAttr = { fill: symbolColor };
210
- if (legendItem) {
211
- legendItem.css({
213
+ if (label) {
214
+ label.css({
212
215
  fill: textColor,
213
216
  color: textColor // #1553, oldIE
214
217
  });
215
218
  }
216
- if (legendLine) {
217
- legendLine.attr({ stroke: symbolColor });
219
+ if (line) {
220
+ line.attr({ stroke: symbolColor });
218
221
  }
219
- if (legendSymbol) {
222
+ if (symbol) {
220
223
  // Apply marker options
221
- if (markerOptions && legendSymbol.isMarker) { // #585
224
+ if (markerOptions && symbol.isMarker) { // #585
222
225
  symbolAttr = item.pointAttribs();
223
226
  if (!visible) {
224
227
  // #6769
225
228
  symbolAttr.stroke = symbolAttr.fill = hiddenColor;
226
229
  }
227
230
  }
228
- legendSymbol.attr(symbolAttr);
231
+ symbol.attr(symbolAttr);
229
232
  }
230
233
  }
231
234
  fireEvent(this, 'afterColorizeItem', { item: item, visible: visible });
@@ -252,28 +255,22 @@ var Legend = /** @class */ (function () {
252
255
  */
253
256
  Legend.prototype.positionItem = function (item) {
254
257
  var _this = this;
255
- var legend = this, options = legend.options, symbolPadding = options.symbolPadding, ltr = !options.rtl, legendItemPos = item._legendItemPos, itemX = legendItemPos[0], itemY = legendItemPos[1], checkbox = item.checkbox, legendGroup = item.legendGroup;
256
- if (legendGroup && legendGroup.element) {
258
+ var legend = this, _a = item.legendItem || {}, group = _a.group, _b = _a.x, x = _b === void 0 ? 0 : _b, _c = _a.y, y = _c === void 0 ? 0 : _c, options = legend.options, symbolPadding = options.symbolPadding, ltr = !options.rtl, checkbox = item.checkbox;
259
+ if (group && group.element) {
257
260
  var attribs = {
258
261
  translateX: ltr ?
259
- itemX :
260
- legend.legendWidth - itemX - 2 * symbolPadding - 4,
261
- translateY: itemY
262
+ x :
263
+ legend.legendWidth - x - 2 * symbolPadding - 4,
264
+ translateY: y
262
265
  };
263
266
  var complete = function () {
264
267
  fireEvent(_this, 'afterPositionItem', { item: item });
265
268
  };
266
- if (defined(legendGroup.translateY)) {
267
- legendGroup.animate(attribs, void 0, complete);
268
- }
269
- else {
270
- legendGroup.attr(attribs);
271
- complete();
272
- }
269
+ group[defined(group.translateY) ? 'animate' : 'attr'](attribs, void 0, complete);
273
270
  }
274
271
  if (checkbox) {
275
- checkbox.x = itemX;
276
- checkbox.y = itemY;
272
+ checkbox.x = x;
273
+ checkbox.y = y;
277
274
  }
278
275
  };
279
276
  /**
@@ -285,16 +282,18 @@ var Legend = /** @class */ (function () {
285
282
  * The item to remove
286
283
  */
287
284
  Legend.prototype.destroyItem = function (item) {
288
- var checkbox = item.checkbox;
285
+ var checkbox = item.checkbox, legendItem = item.legendItem || {};
289
286
  // destroy SVG elements
290
- ['legendItem', 'legendLine', 'legendSymbol', 'legendGroup'].forEach(function (key) {
291
- if (item[key]) {
292
- item[key] = item[key].destroy();
287
+ for (var _i = 0, _a = ['group', 'label', 'line', 'symbol']; _i < _a.length; _i++) {
288
+ var key = _a[_i];
289
+ if (legendItem[key]) {
290
+ legendItem[key] = legendItem[key].destroy();
293
291
  }
294
- });
292
+ }
295
293
  if (checkbox) {
296
- discardElement(item.checkbox);
294
+ discardElement(checkbox);
297
295
  }
296
+ item.legendItem = void 0;
298
297
  };
299
298
  /**
300
299
  * Destroy the legend. Used internally. To reflow objects, `chart.redraw`
@@ -304,21 +303,14 @@ var Legend = /** @class */ (function () {
304
303
  * @function Highcharts.Legend#destroy
305
304
  */
306
305
  Legend.prototype.destroy = function () {
307
- /**
308
- * @private
309
- * @param {string} key
310
- */
311
- function destroyItems(key) {
312
- if (this[key]) {
313
- this[key] = this[key].destroy();
314
- }
315
- }
306
+ var legend = this;
316
307
  // Destroy items
317
- this.getAllItems().forEach(function (item) {
318
- ['legendItem', 'legendGroup'].forEach(destroyItems, item);
319
- });
308
+ for (var _i = 0, _a = this.getAllItems(); _i < _a.length; _i++) {
309
+ var item = _a[_i];
310
+ this.destroyItem(item);
311
+ }
320
312
  // Destroy legend elements
321
- [
313
+ for (var _b = 0, _c = [
322
314
  'clipRect',
323
315
  'up',
324
316
  'down',
@@ -327,7 +319,12 @@ var Legend = /** @class */ (function () {
327
319
  'box',
328
320
  'title',
329
321
  'group'
330
- ].forEach(destroyItems, this);
322
+ ]; _b < _c.length; _b++) {
323
+ var key = _c[_b];
324
+ if (legend[key]) {
325
+ legend[key] = legend[key].destroy();
326
+ }
327
+ }
331
328
  this.display = null; // Reset in .render on update.
332
329
  };
333
330
  /**
@@ -407,7 +404,7 @@ var Legend = /** @class */ (function () {
407
404
  */
408
405
  Legend.prototype.setText = function (item) {
409
406
  var options = this.options;
410
- item.legendItem.attr({
407
+ item.legendItem.label.attr({
411
408
  text: options.labelFormat ?
412
409
  format(options.labelFormat, item, this.chart) :
413
410
  options.labelFormatter.call(item)
@@ -423,19 +420,19 @@ var Legend = /** @class */ (function () {
423
420
  * The item to render.
424
421
  */
425
422
  Legend.prototype.renderItem = function (item) {
426
- var legend = this, chart = legend.chart, renderer = chart.renderer, options = legend.options, horizontal = options.layout === 'horizontal', symbolWidth = legend.symbolWidth, symbolPadding = options.symbolPadding || 0, itemStyle = legend.itemStyle, itemHiddenStyle = legend.itemHiddenStyle, itemDistance = horizontal ? pick(options.itemDistance, 20) : 0, ltr = !options.rtl, isSeries = !item.series, series = !isSeries && item.series.drawLegendSymbol ?
423
+ var legend = this, legendItem = item.legendItem = item.legendItem || {}, chart = legend.chart, renderer = chart.renderer, options = legend.options, horizontal = options.layout === 'horizontal', symbolWidth = legend.symbolWidth, symbolPadding = options.symbolPadding || 0, itemStyle = legend.itemStyle, itemHiddenStyle = legend.itemHiddenStyle, itemDistance = horizontal ? pick(options.itemDistance, 20) : 0, ltr = !options.rtl, isSeries = !item.series, series = !isSeries && item.series.drawLegendSymbol ?
427
424
  item.series :
428
425
  item, seriesOptions = series.options, showCheckbox = (legend.createCheckboxForItem) &&
429
426
  seriesOptions &&
430
427
  seriesOptions.showCheckbox, useHTML = options.useHTML, itemClassName = item.options.className;
431
- var li = item.legendItem,
428
+ var label = legendItem.label,
432
429
  // full width minus text width
433
430
  itemExtraWidth = symbolWidth + symbolPadding +
434
431
  itemDistance + (showCheckbox ? 20 : 0);
435
- if (!li) { // generate it once, later move it
432
+ if (!label) { // generate it once, later move it
436
433
  // Generate the group box, a group to hold the symbol and text. Text
437
434
  // is to be appended in Legend class.
438
- item.legendGroup = renderer
435
+ legendItem.group = renderer
439
436
  .g('legend-item')
440
437
  .addClass('highcharts-' + series.type + '-series ' +
441
438
  'highcharts-color-' + item.colorIndex +
@@ -446,28 +443,28 @@ var Legend = /** @class */ (function () {
446
443
  .attr({ zIndex: 1 })
447
444
  .add(legend.scrollGroup);
448
445
  // Generate the list item text and add it to the group
449
- item.legendItem = li = renderer.text('', ltr ?
446
+ legendItem.label = label = renderer.text('', ltr ?
450
447
  symbolWidth + symbolPadding :
451
448
  -symbolPadding, legend.baseline || 0, useHTML);
452
449
  if (!chart.styledMode) {
453
450
  // merge to prevent modifying original (#1021)
454
- li.css(merge(item.visible ?
451
+ label.css(merge(item.visible ?
455
452
  itemStyle :
456
453
  itemHiddenStyle));
457
454
  }
458
- li
455
+ label
459
456
  .attr({
460
457
  align: ltr ? 'left' : 'right',
461
458
  zIndex: 2
462
459
  })
463
- .add(item.legendGroup);
460
+ .add(legendItem.group);
464
461
  // Get the baseline for the first item - the font size is equal for
465
462
  // all
466
463
  if (!legend.baseline) {
467
- legend.fontMetrics = renderer.fontMetrics(chart.styledMode ? 12 : itemStyle.fontSize, li);
464
+ legend.fontMetrics = renderer.fontMetrics(chart.styledMode ? 12 : itemStyle.fontSize, label);
468
465
  legend.baseline =
469
466
  legend.fontMetrics.f + 3 + legend.itemMarginTop;
470
- li.attr('y', legend.baseline);
467
+ label.attr('y', legend.baseline);
471
468
  legend.symbolHeight =
472
469
  options.symbolHeight || legend.fontMetrics.f;
473
470
  if (options.squareSymbol) {
@@ -475,14 +472,14 @@ var Legend = /** @class */ (function () {
475
472
  itemExtraWidth = legend.symbolWidth + symbolPadding +
476
473
  itemDistance + (showCheckbox ? 20 : 0);
477
474
  if (ltr) {
478
- li.attr('x', legend.symbolWidth + symbolPadding);
475
+ label.attr('x', legend.symbolWidth + symbolPadding);
479
476
  }
480
477
  }
481
478
  }
482
479
  // Draw the legend symbol inside the group box
483
480
  series.drawLegendSymbol(legend, item);
484
481
  if (legend.setItemEvents) {
485
- legend.setItemEvents(item, li, useHTML);
482
+ legend.setItemEvents(item, label, useHTML);
486
483
  }
487
484
  }
488
485
  // Add the HTML checkbox on top
@@ -493,7 +490,7 @@ var Legend = /** @class */ (function () {
493
490
  legend.colorizeItem(item, item.visible);
494
491
  // Take care of max width and text overflow (#6659)
495
492
  if (chart.styledMode || !itemStyle.width) {
496
- li.css({
493
+ label.css({
497
494
  width: ((options.itemWidth ||
498
495
  legend.widthOption ||
499
496
  chart.spacingBox.width) - itemExtraWidth) + 'px'
@@ -502,15 +499,15 @@ var Legend = /** @class */ (function () {
502
499
  // Always update the text
503
500
  legend.setText(item);
504
501
  // calculate the positions for the next line
505
- var bBox = li.getBBox();
502
+ var bBox = label.getBBox();
506
503
  var fontMetricsH = (legend.fontMetrics && legend.fontMetrics.h) || 0;
507
504
  item.itemWidth = item.checkboxOffset =
508
505
  options.itemWidth ||
509
- item.legendItemWidth ||
506
+ legendItem.labelWidth ||
510
507
  bBox.width + itemExtraWidth;
511
508
  legend.maxItemWidth = Math.max(legend.maxItemWidth, item.itemWidth);
512
509
  legend.totalItemWidth += item.itemWidth;
513
- legend.itemHeight = item.itemHeight = Math.round(item.legendItemHeight ||
510
+ legend.itemHeight = item.itemHeight = Math.round(legendItem.labelHeight ||
514
511
  // use bBox for multiline (#16398)
515
512
  (bBox.height > fontMetricsH * 1.5 ? bBox.height : fontMetricsH));
516
513
  };
@@ -526,7 +523,7 @@ var Legend = /** @class */ (function () {
526
523
  var options = this.options, padding = this.padding, horizontal = options.layout === 'horizontal', itemHeight = item.itemHeight, itemMarginBottom = this.itemMarginBottom, itemMarginTop = this.itemMarginTop, itemDistance = horizontal ? pick(options.itemDistance, 20) : 0, maxLegendWidth = this.maxLegendWidth, itemWidth = (options.alignColumns &&
527
524
  this.totalItemWidth > maxLegendWidth) ?
528
525
  this.maxItemWidth :
529
- item.itemWidth;
526
+ item.itemWidth, legendItem = item.legendItem || {};
530
527
  // If the item exceeds the width, start a new line
531
528
  if (horizontal &&
532
529
  this.itemX - padding + itemWidth > maxLegendWidth) {
@@ -543,7 +540,8 @@ var Legend = /** @class */ (function () {
543
540
  this.lastLineHeight = Math.max(// #915
544
541
  itemHeight, this.lastLineHeight);
545
542
  // cache the position of the newly generated or reordered items
546
- item._legendItemPos = [this.itemX, this.itemY];
543
+ legendItem.x = this.itemX;
544
+ legendItem.y = this.itemY;
547
545
  // advance
548
546
  if (horizontal) {
549
547
  this.itemX += itemWidth;
@@ -579,7 +577,7 @@ var Legend = /** @class */ (function () {
579
577
  if (series && pick(seriesOptions.showInLegend, !defined(seriesOptions.linkedTo) ? void 0 : false, true)) {
580
578
  // Use points or series for the legend item depending on
581
579
  // legendType
582
- allItems = allItems.concat(series.legendItems ||
580
+ allItems = allItems.concat((series.legendItem || {}).labels ||
583
581
  (seriesOptions.legendType === 'point' ?
584
582
  series.data :
585
583
  series));
@@ -658,7 +656,7 @@ var Legend = /** @class */ (function () {
658
656
  });
659
657
  }
660
658
  height = this.itemMarginTop +
661
- item.legendItem.getBBox().height +
659
+ item.legendItem.label.getBBox().height +
662
660
  this.itemMarginBottom;
663
661
  top = item.yAxis.top - chart.plotTop;
664
662
  if (item.visible) {
@@ -677,12 +675,14 @@ var Legend = /** @class */ (function () {
677
675
  });
678
676
  }
679
677
  }, this);
680
- distribute(boxes, chart.plotHeight).forEach(function (box) {
681
- if (box.item._legendItemPos && box.pos) {
682
- box.item._legendItemPos[1] =
683
- chart.plotTop - chart.spacing[0] + box.pos;
678
+ var legendItem;
679
+ for (var _i = 0, _a = distribute(boxes, chart.plotHeight); _i < _a.length; _i++) {
680
+ var box = _a[_i];
681
+ legendItem = box.item.legendItem || {};
682
+ if (box.pos) {
683
+ legendItem.y = chart.plotTop - chart.spacing[0] + box.pos;
684
684
  }
685
- });
685
+ }
686
686
  };
687
687
  /**
688
688
  * Render the legend. This method can be called both before and after
@@ -717,14 +717,17 @@ var Legend = /** @class */ (function () {
717
717
  * @name Highcharts.Legend#group
718
718
  * @type {Highcharts.SVGElement}
719
719
  */
720
- legend.group = legendGroup = renderer.g('legend')
720
+ legend.group = legendGroup = renderer
721
+ .g('legend')
721
722
  .addClass(options.className || '')
722
723
  .attr({ zIndex: 7 })
723
724
  .add();
724
- legend.contentGroup = renderer.g()
725
+ legend.contentGroup = renderer
726
+ .g()
725
727
  .attr({ zIndex: 1 }) // above background
726
728
  .add(legendGroup);
727
- legend.scrollGroup = renderer.g()
729
+ legend.scrollGroup = renderer
730
+ .g()
728
731
  .add(legend.contentGroup);
729
732
  }
730
733
  legend.renderTitle();
@@ -882,7 +885,7 @@ var Legend = /** @class */ (function () {
882
885
  }
883
886
  return legend[key];
884
887
  };
885
- var clipHeight, lastY, spaceHeight = (chart.spacingBox.height +
888
+ var clipHeight, lastY, legendItem, spaceHeight = (chart.spacingBox.height +
886
889
  (alignTop ? -optionsY : optionsY) - padding), nav = this.nav, clipRect = this.clipRect;
887
890
  // Adjust the height
888
891
  if (options.layout === 'horizontal' &&
@@ -906,7 +909,8 @@ var Legend = /** @class */ (function () {
906
909
  // Fill pages with Y positions so that the top of each a legend item
907
910
  // defines the scroll top for each page (#2098)
908
911
  allItems.forEach(function (item, i) {
909
- var y = item._legendItemPos[1], h = Math.round(item.legendItem.getBBox().height);
912
+ legendItem = item.legendItem || {};
913
+ var y = legendItem.y || 0, h = Math.round(legendItem.label.getBBox().height);
910
914
  var len = pages.length;
911
915
  if (!len || (y - pages[len - 1] > clipHeight &&
912
916
  (lastY || y) !== pages[len - 1])) {
@@ -914,9 +918,9 @@ var Legend = /** @class */ (function () {
914
918
  len++;
915
919
  }
916
920
  // Keep track of which page each item is on
917
- item.pageIx = len - 1;
921
+ legendItem.pageIx = len - 1;
918
922
  if (lastY) {
919
- allItems[i - 1].pageIx = len - 1;
923
+ (allItems[i - 1].legendItem || {}).pageIx = len - 1;
920
924
  }
921
925
  // add the last page if needed (#2617, #13683)
922
926
  if (
@@ -927,7 +931,7 @@ var Legend = /** @class */ (function () {
927
931
  // and will fully fit inside a new page
928
932
  h <= clipHeight) {
929
933
  pages.push(y);
930
- item.pageIx = len;
934
+ legendItem.pageIx = len;
931
935
  }
932
936
  if (y !== lastY) {
933
937
  lastY = y;
@@ -1072,19 +1076,19 @@ var Legend = /** @class */ (function () {
1072
1076
  * @private
1073
1077
  * @function Highcharts.Legend#setItemEvents
1074
1078
  * @param {Highcharts.BubbleLegendItem|Point|Highcharts.Series} item
1075
- * @param {Highcharts.SVGElement} legendItem
1079
+ * @param {Highcharts.SVGElement} legendLabel
1076
1080
  * @param {boolean} [useHTML=false]
1077
1081
  * @emits Highcharts.Point#event:legendItemClick
1078
1082
  * @emits Highcharts.Series#event:legendItemClick
1079
1083
  */
1080
- Legend.prototype.setItemEvents = function (item, legendItem, useHTML) {
1081
- var legend = this, boxWrapper = legend.chart.renderer.boxWrapper, isPoint = item instanceof Point, activeClass = 'highcharts-legend-' +
1084
+ Legend.prototype.setItemEvents = function (item, legendLabel, useHTML) {
1085
+ var legend = this, legendItem = item.legendItem || {}, boxWrapper = legend.chart.renderer.boxWrapper, isPoint = item instanceof Point, activeClass = 'highcharts-legend-' +
1082
1086
  (isPoint ? 'point' : 'series') + '-active', styledMode = legend.chart.styledMode,
1083
1087
  // When `useHTML`, the symbol is rendered in other group, so
1084
1088
  // we need to apply events listeners to both places
1085
- legendItems = useHTML ?
1086
- [legendItem, item.legendSymbol] :
1087
- [item.legendGroup];
1089
+ legendElements = useHTML ?
1090
+ [legendLabel, legendItem.symbol] :
1091
+ [legendItem.group];
1088
1092
  var setOtherItemsState = function (state) {
1089
1093
  legend.allItems.forEach(function (otherItem) {
1090
1094
  if (item !== otherItem) {
@@ -1098,7 +1102,8 @@ var Legend = /** @class */ (function () {
1098
1102
  };
1099
1103
  // Set the events on the item group, or in case of useHTML, the item
1100
1104
  // itself (#1249)
1101
- legendItems.forEach(function (element) {
1105
+ for (var _i = 0, legendElements_1 = legendElements; _i < legendElements_1.length; _i++) {
1106
+ var element = legendElements_1[_i];
1102
1107
  if (element) {
1103
1108
  element
1104
1109
  .on('mouseover', function () {
@@ -1113,12 +1118,12 @@ var Legend = /** @class */ (function () {
1113
1118
  boxWrapper.addClass(activeClass);
1114
1119
  }
1115
1120
  if (!styledMode) {
1116
- legendItem.css(legend.options.itemHoverStyle);
1121
+ legendLabel.css(legend.options.itemHoverStyle);
1117
1122
  }
1118
1123
  })
1119
1124
  .on('mouseout', function () {
1120
1125
  if (!legend.chart.styledMode) {
1121
- legendItem.css(merge(item.visible ?
1126
+ legendLabel.css(merge(item.visible ?
1122
1127
  legend.itemStyle :
1123
1128
  legend.itemHiddenStyle));
1124
1129
  }
@@ -1153,7 +1158,7 @@ var Legend = /** @class */ (function () {
1153
1158
  }
1154
1159
  });
1155
1160
  }
1156
- });
1161
+ }
1157
1162
  };
1158
1163
  /**
1159
1164
  * @private
@@ -1181,29 +1186,6 @@ var Legend = /** @class */ (function () {
1181
1186
  };
1182
1187
  return Legend;
1183
1188
  }());
1184
- // Workaround for #2030, horizontal legend items not displaying in IE11 Preview,
1185
- // and for #2580, a similar drawing flaw in Firefox 26.
1186
- // Explore if there's a general cause for this. The problem may be related
1187
- // to nested group elements, as the legend item texts are within 4 group
1188
- // elements.
1189
- if (/Trident\/7\.0/.test(win.navigator && win.navigator.userAgent) ||
1190
- isFirefox) {
1191
- wrap(Legend.prototype, 'positionItem', function (proceed, item) {
1192
- var legend = this,
1193
- // If chart destroyed in sync, this is undefined (#2030)
1194
- runPositionItem = function () {
1195
- if (item._legendItemPos) {
1196
- proceed.call(legend, item);
1197
- }
1198
- };
1199
- // Do it now, for export and to get checkbox placement
1200
- runPositionItem();
1201
- // Do it after to work around the core issue
1202
- if (!legend.bubbleLegend) {
1203
- setTimeout(runPositionItem);
1204
- }
1205
- });
1206
- }
1207
1189
  /* *
1208
1190
  *
1209
1191
  * Default Export
@@ -1215,6 +1197,18 @@ export default Legend;
1215
1197
  * API Declarations
1216
1198
  *
1217
1199
  * */
1200
+ /**
1201
+ * @interface Highcharts.LegendItemObject
1202
+ */ /**
1203
+ * @name Highcharts.LegendItemObject#item
1204
+ * @type {Highcharts.SVGElement|undefined}
1205
+ */ /**
1206
+ * @name Highcharts.LegendItemObject#line
1207
+ * @type {Highcharts.SVGElement|undefined}
1208
+ */ /**
1209
+ * @name Highcharts.LegendItemObject#symbol
1210
+ * @type {Highcharts.SVGElement|undefined}
1211
+ */
1218
1212
  /**
1219
1213
  * Gets fired when the legend item belonging to a point is clicked. The default
1220
1214
  * action is to toggle the visibility of the point. This can be prevented by
@@ -1249,6 +1243,16 @@ export default Legend;
1249
1243
  * @name Highcharts.PointLegendItemClickEventObject#type
1250
1244
  * @type {"legendItemClick"}
1251
1245
  */
1246
+ /**
1247
+ * Series color as used by the legend and some series types.
1248
+ * @name Highcharts.Series#color
1249
+ * @type {Highcharts.ColorType|undefined}
1250
+ */ /**
1251
+ * Legend data for the series.
1252
+ * @name Highcharts.Series#legendItem
1253
+ * @type {Highcharts.LegendItemObject|undefined}
1254
+ * @since 10.3.0
1255
+ */
1252
1256
  /**
1253
1257
  * Gets fired when the legend item belonging to a series is clicked. The default
1254
1258
  * action is to toggle the visibility of the series. This can be prevented by
@@ -36,7 +36,7 @@ var LegendSymbol;
36
36
  * The legend object.
37
37
  */
38
38
  function drawLineMarker(legend) {
39
- var options = this.options, symbolWidth = legend.symbolWidth, symbolHeight = legend.symbolHeight, generalRadius = symbolHeight / 2, renderer = this.chart.renderer, legendItemGroup = this.legendGroup, verticalCenter = legend.baseline -
39
+ var legendItem = this.legendItem = this.legendItem || {}, options = this.options, symbolWidth = legend.symbolWidth, symbolHeight = legend.symbolHeight, generalRadius = symbolHeight / 2, renderer = this.chart.renderer, legendItemGroup = legendItem.group, verticalCenter = legend.baseline -
40
40
  Math.round(legend.fontMetrics.b * 0.3);
41
41
  var attr = {}, legendSymbol, markerOptions = options.marker;
42
42
  // Draw the line
@@ -48,7 +48,7 @@ var LegendSymbol;
48
48
  attr.dashstyle = options.dashStyle;
49
49
  }
50
50
  }
51
- this.legendLine = renderer
51
+ legendItem.line = renderer
52
52
  .path([
53
53
  ['M', 0, verticalCenter],
54
54
  ['L', symbolWidth, verticalCenter]
@@ -68,7 +68,8 @@ var LegendSymbol;
68
68
  });
69
69
  radius = 0;
70
70
  }
71
- this.legendSymbol = legendSymbol = renderer.symbol(this.symbol, (symbolWidth / 2) - radius, verticalCenter - radius, 2 * radius, 2 * radius, markerOptions)
71
+ legendItem.symbol = legendSymbol = renderer
72
+ .symbol(this.symbol, (symbolWidth / 2) - radius, verticalCenter - radius, 2 * radius, 2 * radius, markerOptions)
72
73
  .addClass('highcharts-point')
73
74
  .add(legendItemGroup);
74
75
  legendSymbol.isMarker = true;
@@ -91,13 +92,15 @@ var LegendSymbol;
91
92
  * The series (this) or point
92
93
  */
93
94
  function drawRectangle(legend, item) {
94
- var options = legend.options, symbolHeight = legend.symbolHeight, square = options.squareSymbol, symbolWidth = square ? symbolHeight : legend.symbolWidth;
95
- item.legendSymbol = this.chart.renderer.rect(square ? (legend.symbolWidth - symbolHeight) / 2 : 0, legend.baseline - symbolHeight + 1, // #3988
95
+ var legendItem = item.legendItem || {}, options = legend.options, symbolHeight = legend.symbolHeight, square = options.squareSymbol, symbolWidth = square ? symbolHeight : legend.symbolWidth;
96
+ legendItem.symbol = this.chart.renderer
97
+ .rect(square ? (legend.symbolWidth - symbolHeight) / 2 : 0, legend.baseline - symbolHeight + 1, // #3988
96
98
  symbolWidth, symbolHeight, pick(legend.options.symbolRadius, symbolHeight / 2))
97
99
  .addClass('highcharts-point')
98
100
  .attr({
99
101
  zIndex: 3
100
- }).add(item.legendGroup);
102
+ })
103
+ .add(legendItem.group);
101
104
  }
102
105
  LegendSymbol.drawRectangle = drawRectangle;
103
106
  })(LegendSymbol || (LegendSymbol = {}));
@@ -27,7 +27,7 @@ import H from './Globals.js';
27
27
  var charts = H.charts, doc = H.doc, noop = H.noop, win = H.win;
28
28
  import Pointer from './Pointer.js';
29
29
  import U from './Utilities.js';
30
- var addEvent = U.addEvent, css = U.css, objectEach = U.objectEach, removeEvent = U.removeEvent;
30
+ var addEvent = U.addEvent, css = U.css, objectEach = U.objectEach, pick = U.pick, removeEvent = U.removeEvent;
31
31
  /* *
32
32
  *
33
33
  * Constants
@@ -157,8 +157,10 @@ var MSPointer = /** @class */ (function (_super) {
157
157
  };
158
158
  // Add IE specific touch events to chart
159
159
  MSPointer.prototype.setDOMEvents = function () {
160
+ var tooltip = this.chart.tooltip;
160
161
  _super.prototype.setDOMEvents.call(this);
161
- if (this.hasZoom || this.followTouchMove) {
162
+ if (this.hasZoom ||
163
+ pick((tooltip && tooltip.options.followTouchMove), true)) {
162
164
  this.batchMSEvents(addEvent);
163
165
  }
164
166
  };