highcharts 10.3.1 → 10.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (625) hide show
  1. package/bower.json +1 -1
  2. package/es-modules/Accessibility/Accessibility.js +1 -1
  3. package/es-modules/Accessibility/Components/ZoomComponent.js +26 -32
  4. package/es-modules/Accessibility/KeyboardNavigation.js +5 -4
  5. package/es-modules/Accessibility/Utils/HTMLUtilities.js +14 -2
  6. package/es-modules/Core/Axis/Stacking/StackingAxis.js +5 -3
  7. package/es-modules/Core/Axis/WaterfallAxis.js +14 -11
  8. package/es-modules/Core/Chart/Chart.js +3 -1
  9. package/es-modules/Core/Chart/ChartDefaults.js +2 -0
  10. package/es-modules/Core/Globals.js +1 -1
  11. package/es-modules/Core/Pointer.js +4 -3
  12. package/es-modules/Core/Renderer/HTML/AST.js +6 -0
  13. package/es-modules/Core/Renderer/SVG/SVGElement.js +13 -60
  14. package/es-modules/Core/Renderer/SVG/SVGLabel.js +3 -4
  15. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +1 -1
  16. package/es-modules/Core/Series/DataLabel.js +4 -7
  17. package/es-modules/Core/Series/Point.js +8 -9
  18. package/es-modules/Core/Series/Series.js +33 -78
  19. package/es-modules/Core/Series/SeriesDefaults.js +4 -1
  20. package/es-modules/Core/Tooltip.js +35 -19
  21. package/es-modules/Extensions/Annotations/NavigationBindingsDefaults.js +1 -1
  22. package/es-modules/Extensions/Annotations/Popup/Popup.js +6 -1
  23. package/es-modules/Extensions/Annotations/Popup/PopupComposition.js +1 -1
  24. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
  25. package/es-modules/Extensions/Oldie/Oldie.js +1 -1
  26. package/es-modules/Extensions/PatternFill.js +12 -10
  27. package/es-modules/Extensions/ScrollablePlotArea.js +5 -0
  28. package/es-modules/Extensions/SeriesLabel/SeriesLabel.js +116 -89
  29. package/es-modules/Gantt/Pathfinder.js +8 -7
  30. package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +3 -1
  31. package/es-modules/Series/AreaRange/AreaRangeSeries.js +10 -0
  32. package/es-modules/Series/Bubble/BubbleSeries.js +3 -6
  33. package/es-modules/Series/Column/ColumnSeries.js +3 -3
  34. package/es-modules/Series/Flags/FlagsSeries.js +1 -6
  35. package/es-modules/Series/Line/LineSeries.js +5 -2
  36. package/es-modules/Series/Map/MapPoint.js +34 -10
  37. package/es-modules/Series/Map/MapSeries.js +7 -6
  38. package/es-modules/Series/OnSeriesComposition.js +2 -2
  39. package/es-modules/Series/Sankey/SankeySeries.js +4 -0
  40. package/es-modules/Series/Scatter/ScatterSeriesDefaults.js +1 -1
  41. package/es-modules/Series/Treegraph/TreegraphPoint.js +1 -3
  42. package/es-modules/Series/Treegraph/TreegraphSeries.js +9 -0
  43. package/es-modules/Series/Waterfall/WaterfallSeries.js +91 -89
  44. package/es-modules/Series/Windbarb/WindbarbSeries.js +1 -2
  45. package/es-modules/Series/XRange/XRangeSeries.js +6 -0
  46. package/es-modules/Stock/Navigator/Navigator.js +9 -3
  47. package/es-modules/Stock/StockTools/StockToolbar.js +1 -1
  48. package/es-modules/masters/highcharts-3d.src.d.ts +4 -0
  49. package/es-modules/masters/highcharts-3d.src.js +1 -1
  50. package/es-modules/masters/highcharts-gantt.src.d.ts +3 -0
  51. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  52. package/es-modules/masters/highcharts-more.src.d.ts +10 -0
  53. package/es-modules/masters/highcharts-more.src.js +1 -1
  54. package/es-modules/masters/highcharts.src.d.ts +10 -0
  55. package/es-modules/masters/highcharts.src.js +1 -1
  56. package/es-modules/masters/highmaps.src.d.ts +3 -0
  57. package/es-modules/masters/highmaps.src.js +1 -1
  58. package/es-modules/masters/highstock.src.d.ts +3 -0
  59. package/es-modules/masters/highstock.src.js +1 -1
  60. package/es-modules/masters/indicators/acceleration-bands.src.d.ts +1 -0
  61. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  62. package/es-modules/masters/indicators/accumulation-distribution.src.d.ts +1 -0
  63. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  64. package/es-modules/masters/indicators/ao.src.d.ts +1 -0
  65. package/es-modules/masters/indicators/ao.src.js +1 -1
  66. package/es-modules/masters/indicators/apo.src.d.ts +1 -0
  67. package/es-modules/masters/indicators/apo.src.js +1 -1
  68. package/es-modules/masters/indicators/aroon-oscillator.src.d.ts +1 -0
  69. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  70. package/es-modules/masters/indicators/aroon.src.d.ts +1 -0
  71. package/es-modules/masters/indicators/aroon.src.js +1 -1
  72. package/es-modules/masters/indicators/atr.src.d.ts +1 -0
  73. package/es-modules/masters/indicators/atr.src.js +1 -1
  74. package/es-modules/masters/indicators/bollinger-bands.src.d.ts +1 -0
  75. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  76. package/es-modules/masters/indicators/cci.src.d.ts +1 -0
  77. package/es-modules/masters/indicators/cci.src.js +1 -1
  78. package/es-modules/masters/indicators/chaikin.src.d.ts +1 -0
  79. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  80. package/es-modules/masters/indicators/cmf.src.d.ts +1 -0
  81. package/es-modules/masters/indicators/cmf.src.js +1 -1
  82. package/es-modules/masters/indicators/cmo.src.d.ts +1 -0
  83. package/es-modules/masters/indicators/cmo.src.js +1 -1
  84. package/es-modules/masters/indicators/dema.src.d.ts +1 -0
  85. package/es-modules/masters/indicators/dema.src.js +1 -1
  86. package/es-modules/masters/indicators/disparity-index.src.d.ts +1 -0
  87. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  88. package/es-modules/masters/indicators/dmi.src.d.ts +1 -0
  89. package/es-modules/masters/indicators/dmi.src.js +1 -1
  90. package/es-modules/masters/indicators/dpo.src.d.ts +1 -0
  91. package/es-modules/masters/indicators/dpo.src.js +1 -1
  92. package/es-modules/masters/indicators/ema.src.d.ts +0 -0
  93. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.d.ts +1 -0
  94. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  95. package/es-modules/masters/indicators/indicators-all.src.d.ts +60 -0
  96. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  97. package/es-modules/masters/indicators/indicators.src.d.ts +2 -0
  98. package/es-modules/masters/indicators/indicators.src.js +1 -1
  99. package/es-modules/masters/indicators/keltner-channels.src.d.ts +1 -0
  100. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  101. package/es-modules/masters/indicators/klinger.src.d.ts +1 -0
  102. package/es-modules/masters/indicators/klinger.src.js +1 -1
  103. package/es-modules/masters/indicators/macd.src.d.ts +1 -0
  104. package/es-modules/masters/indicators/macd.src.js +1 -1
  105. package/es-modules/masters/indicators/mfi.src.d.ts +1 -0
  106. package/es-modules/masters/indicators/mfi.src.js +1 -1
  107. package/es-modules/masters/indicators/momentum.src.d.ts +1 -0
  108. package/es-modules/masters/indicators/momentum.src.js +1 -1
  109. package/es-modules/masters/indicators/natr.src.d.ts +1 -0
  110. package/es-modules/masters/indicators/natr.src.js +1 -1
  111. package/es-modules/masters/indicators/obv.src.d.ts +1 -0
  112. package/es-modules/masters/indicators/obv.src.js +1 -1
  113. package/es-modules/masters/indicators/pivot-points.src.d.ts +1 -0
  114. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  115. package/es-modules/masters/indicators/ppo.src.d.ts +1 -0
  116. package/es-modules/masters/indicators/ppo.src.js +1 -1
  117. package/es-modules/masters/indicators/price-channel.src.d.ts +1 -0
  118. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  119. package/es-modules/masters/indicators/price-envelopes.src.d.ts +1 -0
  120. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  121. package/es-modules/masters/indicators/psar.src.d.ts +1 -0
  122. package/es-modules/masters/indicators/psar.src.js +1 -1
  123. package/es-modules/masters/indicators/regressions.src.d.ts +4 -0
  124. package/es-modules/masters/indicators/regressions.src.js +1 -1
  125. package/es-modules/masters/indicators/roc.src.d.ts +1 -0
  126. package/es-modules/masters/indicators/roc.src.js +1 -1
  127. package/es-modules/masters/indicators/rsi.src.d.ts +1 -0
  128. package/es-modules/masters/indicators/rsi.src.js +1 -1
  129. package/es-modules/masters/indicators/slow-stochastic.src.d.ts +1 -0
  130. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  131. package/es-modules/masters/indicators/stochastic.src.d.ts +1 -0
  132. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  133. package/es-modules/masters/indicators/supertrend.src.d.ts +1 -0
  134. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  135. package/es-modules/masters/indicators/tema.src.d.ts +1 -0
  136. package/es-modules/masters/indicators/tema.src.js +1 -1
  137. package/es-modules/masters/indicators/trendline.src.d.ts +1 -0
  138. package/es-modules/masters/indicators/trendline.src.js +1 -1
  139. package/es-modules/masters/indicators/trix.src.d.ts +1 -0
  140. package/es-modules/masters/indicators/trix.src.js +1 -1
  141. package/es-modules/masters/indicators/volume-by-price.src.d.ts +1 -0
  142. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  143. package/es-modules/masters/indicators/vwap.src.d.ts +1 -0
  144. package/es-modules/masters/indicators/vwap.src.js +1 -1
  145. package/es-modules/masters/indicators/williams-r.src.d.ts +1 -0
  146. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  147. package/es-modules/masters/indicators/wma.src.d.ts +1 -0
  148. package/es-modules/masters/indicators/wma.src.js +1 -1
  149. package/es-modules/masters/indicators/zigzag.src.d.ts +1 -0
  150. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  151. package/es-modules/masters/modules/accessibility.src.d.ts +13 -0
  152. package/es-modules/masters/modules/accessibility.src.js +2 -2
  153. package/es-modules/masters/modules/annotations-advanced.src.d.ts +11 -0
  154. package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
  155. package/es-modules/masters/modules/annotations.src.d.ts +1 -0
  156. package/es-modules/masters/modules/annotations.src.js +1 -1
  157. package/es-modules/masters/modules/arc-diagram.src.d.ts +1 -0
  158. package/es-modules/masters/modules/arc-diagram.src.js +1 -1
  159. package/es-modules/masters/modules/arrow-symbols.src.d.ts +1 -0
  160. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  161. package/es-modules/masters/modules/boost-canvas.src.d.ts +1 -0
  162. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  163. package/es-modules/masters/modules/boost.src.d.ts +14 -0
  164. package/es-modules/masters/modules/boost.src.js +1 -1
  165. package/es-modules/masters/modules/broken-axis.src.d.ts +1 -0
  166. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  167. package/es-modules/masters/modules/bullet.src.d.ts +1 -0
  168. package/es-modules/masters/modules/bullet.src.js +1 -1
  169. package/es-modules/masters/modules/coloraxis.src.d.ts +1 -0
  170. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  171. package/es-modules/masters/modules/current-date-indicator.src.d.ts +1 -0
  172. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  173. package/es-modules/masters/modules/cylinder.src.d.ts +1 -0
  174. package/es-modules/masters/modules/cylinder.src.js +1 -1
  175. package/es-modules/masters/modules/data.src.d.ts +1 -0
  176. package/es-modules/masters/modules/data.src.js +1 -1
  177. package/es-modules/masters/modules/datagrouping.src.d.ts +1 -0
  178. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  179. package/es-modules/masters/modules/debugger.src.d.ts +12 -0
  180. package/es-modules/masters/modules/debugger.src.js +1 -1
  181. package/es-modules/masters/modules/dependency-wheel.src.d.ts +1 -0
  182. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  183. package/es-modules/masters/modules/dotplot.src.d.ts +1 -0
  184. package/es-modules/masters/modules/dotplot.src.js +1 -1
  185. package/es-modules/masters/modules/drag-panes.src.d.ts +1 -0
  186. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  187. package/es-modules/masters/modules/draggable-points.src.d.ts +1 -0
  188. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  189. package/es-modules/masters/modules/drilldown.src.d.ts +2 -0
  190. package/es-modules/masters/modules/drilldown.src.js +1 -1
  191. package/es-modules/masters/modules/dumbbell.src.d.ts +1 -0
  192. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  193. package/es-modules/masters/modules/export-data.src.d.ts +1 -0
  194. package/es-modules/masters/modules/export-data.src.js +1 -1
  195. package/es-modules/masters/modules/exporting.src.d.ts +1 -0
  196. package/es-modules/masters/modules/exporting.src.js +1 -1
  197. package/es-modules/masters/modules/full-screen.src.d.ts +1 -0
  198. package/es-modules/masters/modules/full-screen.src.js +1 -1
  199. package/es-modules/masters/modules/funnel.src.d.ts +2 -0
  200. package/es-modules/masters/modules/funnel.src.js +1 -1
  201. package/es-modules/masters/modules/funnel3d.src.d.ts +2 -0
  202. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  203. package/es-modules/masters/modules/gantt.src.d.ts +1 -0
  204. package/es-modules/masters/modules/gantt.src.js +1 -1
  205. package/es-modules/masters/modules/grid-axis.src.d.ts +1 -0
  206. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  207. package/es-modules/masters/modules/heatmap.src.d.ts +1 -0
  208. package/es-modules/masters/modules/heatmap.src.js +1 -1
  209. package/es-modules/masters/modules/heikinashi.src.d.ts +1 -0
  210. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  211. package/es-modules/masters/modules/histogram-bellcurve.src.d.ts +2 -0
  212. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  213. package/es-modules/masters/modules/hollowcandlestick.src.d.ts +1 -0
  214. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  215. package/es-modules/masters/modules/item-series.src.d.ts +1 -0
  216. package/es-modules/masters/modules/item-series.src.js +1 -1
  217. package/es-modules/masters/modules/lollipop.src.d.ts +1 -0
  218. package/es-modules/masters/modules/lollipop.src.js +1 -1
  219. package/es-modules/masters/modules/map.src.d.ts +7 -0
  220. package/es-modules/masters/modules/map.src.js +1 -1
  221. package/es-modules/masters/modules/marker-clusters.src.d.ts +1 -0
  222. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  223. package/es-modules/masters/modules/networkgraph.src.d.ts +1 -0
  224. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  225. package/es-modules/masters/modules/no-data-to-display.src.d.ts +1 -0
  226. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  227. package/es-modules/masters/modules/offline-exporting.src.d.ts +1 -0
  228. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  229. package/es-modules/masters/modules/oldie-polyfills.src.d.ts +1 -0
  230. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  231. package/es-modules/masters/modules/oldie.src.d.ts +1 -0
  232. package/es-modules/masters/modules/oldie.src.js +1 -1
  233. package/es-modules/masters/modules/organization.src.d.ts +1 -0
  234. package/es-modules/masters/modules/organization.src.js +1 -1
  235. package/es-modules/masters/modules/overlapping-datalabels.src.d.ts +1 -0
  236. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  237. package/es-modules/masters/modules/parallel-coordinates.src.d.ts +1 -0
  238. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  239. package/es-modules/masters/modules/pareto.src.d.ts +1 -0
  240. package/es-modules/masters/modules/pareto.src.js +1 -1
  241. package/es-modules/masters/modules/pathfinder.src.d.ts +1 -0
  242. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  243. package/es-modules/masters/modules/pattern-fill.src.d.ts +1 -0
  244. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  245. package/es-modules/masters/modules/price-indicator.src.d.ts +1 -0
  246. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  247. package/es-modules/masters/modules/pyramid3d.src.d.ts +1 -0
  248. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  249. package/es-modules/masters/modules/sankey.src.d.ts +1 -0
  250. package/es-modules/masters/modules/sankey.src.js +1 -1
  251. package/es-modules/masters/modules/series-label.src.d.ts +1 -0
  252. package/es-modules/masters/modules/series-label.src.js +1 -1
  253. package/es-modules/masters/modules/series-on-point.src.d.ts +13 -0
  254. package/es-modules/masters/modules/series-on-point.src.js +1 -1
  255. package/es-modules/masters/modules/solid-gauge.src.d.ts +1 -0
  256. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  257. package/es-modules/masters/modules/sonification.src.d.ts +12 -0
  258. package/es-modules/masters/modules/sonification.src.js +1 -1
  259. package/es-modules/masters/modules/static-scale.src.d.ts +1 -0
  260. package/es-modules/masters/modules/static-scale.src.js +1 -1
  261. package/es-modules/masters/modules/stock-tools.src.d.ts +1 -0
  262. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  263. package/es-modules/masters/modules/stock.src.d.ts +4 -0
  264. package/es-modules/masters/modules/stock.src.js +1 -1
  265. package/es-modules/masters/modules/streamgraph.src.d.ts +1 -0
  266. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  267. package/es-modules/masters/modules/sunburst.src.d.ts +2 -0
  268. package/es-modules/masters/modules/sunburst.src.js +1 -1
  269. package/es-modules/masters/modules/tilemap.src.d.ts +1 -0
  270. package/es-modules/masters/modules/tilemap.src.js +1 -1
  271. package/es-modules/masters/modules/timeline.src.d.ts +1 -0
  272. package/es-modules/masters/modules/timeline.src.js +1 -1
  273. package/es-modules/masters/modules/treegraph.src.d.ts +1 -0
  274. package/es-modules/masters/modules/treegraph.src.js +1 -1
  275. package/es-modules/masters/modules/treegrid.src.d.ts +1 -0
  276. package/es-modules/masters/modules/treegrid.src.js +1 -1
  277. package/es-modules/masters/modules/treemap.src.d.ts +1 -0
  278. package/es-modules/masters/modules/treemap.src.js +1 -1
  279. package/es-modules/masters/modules/variable-pie.src.d.ts +1 -0
  280. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  281. package/es-modules/masters/modules/variwide.src.d.ts +1 -0
  282. package/es-modules/masters/modules/variwide.src.js +1 -1
  283. package/es-modules/masters/modules/vector.src.d.ts +1 -0
  284. package/es-modules/masters/modules/vector.src.js +1 -1
  285. package/es-modules/masters/modules/venn.src.d.ts +1 -0
  286. package/es-modules/masters/modules/venn.src.js +1 -1
  287. package/es-modules/masters/modules/windbarb.src.d.ts +1 -0
  288. package/es-modules/masters/modules/windbarb.src.js +1 -1
  289. package/es-modules/masters/modules/wordcloud.src.d.ts +1 -0
  290. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  291. package/es-modules/masters/modules/xrange.src.d.ts +1 -0
  292. package/es-modules/masters/modules/xrange.src.js +1 -1
  293. package/es-modules/masters/themes/avocado.src.d.ts +1 -0
  294. package/es-modules/masters/themes/avocado.src.js +1 -1
  295. package/es-modules/masters/themes/brand-dark.src.d.ts +1 -0
  296. package/es-modules/masters/themes/brand-dark.src.js +1 -1
  297. package/es-modules/masters/themes/brand-light.src.d.ts +1 -0
  298. package/es-modules/masters/themes/brand-light.src.js +1 -1
  299. package/es-modules/masters/themes/dark-blue.src.d.ts +1 -0
  300. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  301. package/es-modules/masters/themes/dark-green.src.d.ts +1 -0
  302. package/es-modules/masters/themes/dark-green.src.js +1 -1
  303. package/es-modules/masters/themes/dark-unica.src.d.ts +1 -0
  304. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  305. package/es-modules/masters/themes/gray.src.d.ts +1 -0
  306. package/es-modules/masters/themes/gray.src.js +1 -1
  307. package/es-modules/masters/themes/grid-light.src.d.ts +1 -0
  308. package/es-modules/masters/themes/grid-light.src.js +1 -1
  309. package/es-modules/masters/themes/grid.src.d.ts +1 -0
  310. package/es-modules/masters/themes/grid.src.js +1 -1
  311. package/es-modules/masters/themes/high-contrast-dark.src.d.ts +1 -0
  312. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  313. package/es-modules/masters/themes/high-contrast-light.src.d.ts +1 -0
  314. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  315. package/es-modules/masters/themes/sand-signika.src.d.ts +1 -0
  316. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  317. package/es-modules/masters/themes/skies.src.d.ts +1 -0
  318. package/es-modules/masters/themes/skies.src.js +1 -1
  319. package/es-modules/masters/themes/sunset.src.d.ts +1 -0
  320. package/es-modules/masters/themes/sunset.src.js +1 -1
  321. package/gfx/dashboard-icons/add.svg +8 -0
  322. package/gfx/dashboard-icons/close.svg +1 -0
  323. package/gfx/dashboard-icons/computer.svg +1 -0
  324. package/gfx/dashboard-icons/destroy.svg +1 -0
  325. package/gfx/dashboard-icons/drag.svg +1 -0
  326. package/gfx/dashboard-icons/menu.svg +8 -0
  327. package/gfx/dashboard-icons/settings.svg +1 -0
  328. package/gfx/dashboard-icons/smartphone.svg +46 -0
  329. package/gfx/dashboard-icons/tablet.svg +71 -0
  330. package/highcharts-3d.js +1 -1
  331. package/highcharts-3d.src.js +1 -1
  332. package/highcharts-gantt.js +809 -809
  333. package/highcharts-gantt.js.map +1 -1
  334. package/highcharts-gantt.src.js +180 -218
  335. package/highcharts-more.d.ts +6 -0
  336. package/highcharts-more.js +174 -174
  337. package/highcharts-more.js.map +1 -1
  338. package/highcharts-more.src.d.ts +6 -0
  339. package/highcharts-more.src.js +128 -116
  340. package/highcharts.d.ts +2356 -25971
  341. package/highcharts.js +587 -587
  342. package/highcharts.js.map +1 -1
  343. package/highcharts.src.d.ts +2356 -25971
  344. package/highcharts.src.js +155 -208
  345. package/highmaps.js +756 -756
  346. package/highmaps.js.map +1 -1
  347. package/highmaps.src.js +207 -232
  348. package/highstock.js +795 -796
  349. package/highstock.js.map +1 -1
  350. package/highstock.src.js +169 -219
  351. package/indicators/acceleration-bands.js +1 -1
  352. package/indicators/acceleration-bands.src.js +1 -1
  353. package/indicators/accumulation-distribution.js +1 -1
  354. package/indicators/accumulation-distribution.src.js +1 -1
  355. package/indicators/ao.js +1 -1
  356. package/indicators/ao.src.js +1 -1
  357. package/indicators/apo.js +1 -1
  358. package/indicators/apo.src.js +1 -1
  359. package/indicators/aroon-oscillator.js +1 -1
  360. package/indicators/aroon-oscillator.src.js +1 -1
  361. package/indicators/aroon.js +1 -1
  362. package/indicators/aroon.src.js +1 -1
  363. package/indicators/atr.js +1 -1
  364. package/indicators/atr.src.js +1 -1
  365. package/indicators/bollinger-bands.js +1 -1
  366. package/indicators/bollinger-bands.src.js +1 -1
  367. package/indicators/cci.js +1 -1
  368. package/indicators/cci.src.js +1 -1
  369. package/indicators/chaikin.js +1 -1
  370. package/indicators/chaikin.src.js +1 -1
  371. package/indicators/cmf.js +1 -1
  372. package/indicators/cmf.src.js +1 -1
  373. package/indicators/cmo.js +1 -1
  374. package/indicators/cmo.src.js +1 -1
  375. package/indicators/dema.js +1 -1
  376. package/indicators/dema.src.js +1 -1
  377. package/indicators/disparity-index.js +1 -1
  378. package/indicators/disparity-index.src.js +1 -1
  379. package/indicators/dmi.js +1 -1
  380. package/indicators/dmi.src.js +1 -1
  381. package/indicators/dpo.js +1 -1
  382. package/indicators/dpo.src.js +1 -1
  383. package/indicators/ichimoku-kinko-hyo.js +1 -1
  384. package/indicators/ichimoku-kinko-hyo.src.js +1 -1
  385. package/indicators/indicators-all.js +1 -1
  386. package/indicators/indicators-all.src.js +1 -1
  387. package/indicators/indicators.js +1 -1
  388. package/indicators/indicators.src.js +1 -1
  389. package/indicators/keltner-channels.js +1 -1
  390. package/indicators/keltner-channels.src.js +1 -1
  391. package/indicators/klinger.js +1 -1
  392. package/indicators/klinger.src.js +1 -1
  393. package/indicators/macd.js +1 -1
  394. package/indicators/macd.src.js +1 -1
  395. package/indicators/mfi.js +1 -1
  396. package/indicators/mfi.src.js +1 -1
  397. package/indicators/momentum.js +1 -1
  398. package/indicators/momentum.src.js +1 -1
  399. package/indicators/natr.js +1 -1
  400. package/indicators/natr.src.js +1 -1
  401. package/indicators/obv.js +1 -1
  402. package/indicators/obv.src.js +1 -1
  403. package/indicators/pivot-points.js +1 -1
  404. package/indicators/pivot-points.src.js +1 -1
  405. package/indicators/ppo.js +1 -1
  406. package/indicators/ppo.src.js +1 -1
  407. package/indicators/price-channel.js +1 -1
  408. package/indicators/price-channel.src.js +1 -1
  409. package/indicators/price-envelopes.js +1 -1
  410. package/indicators/price-envelopes.src.js +1 -1
  411. package/indicators/psar.js +1 -1
  412. package/indicators/psar.src.js +1 -1
  413. package/indicators/regressions.js +1 -1
  414. package/indicators/regressions.src.js +1 -1
  415. package/indicators/roc.js +1 -1
  416. package/indicators/roc.src.js +1 -1
  417. package/indicators/rsi.js +1 -1
  418. package/indicators/rsi.src.js +1 -1
  419. package/indicators/slow-stochastic.js +1 -1
  420. package/indicators/slow-stochastic.src.js +1 -1
  421. package/indicators/stochastic.js +1 -1
  422. package/indicators/stochastic.src.js +1 -1
  423. package/indicators/supertrend.js +1 -1
  424. package/indicators/supertrend.src.js +1 -1
  425. package/indicators/tema.js +1 -1
  426. package/indicators/tema.src.js +1 -1
  427. package/indicators/trendline.js +1 -1
  428. package/indicators/trendline.src.js +1 -1
  429. package/indicators/trix.js +1 -1
  430. package/indicators/trix.src.js +1 -1
  431. package/indicators/volume-by-price.js +1 -1
  432. package/indicators/volume-by-price.src.js +1 -1
  433. package/indicators/vwap.js +1 -1
  434. package/indicators/vwap.src.js +1 -1
  435. package/indicators/williams-r.js +1 -1
  436. package/indicators/williams-r.src.js +1 -1
  437. package/indicators/wma.js +1 -1
  438. package/indicators/wma.src.js +1 -1
  439. package/indicators/zigzag.js +1 -1
  440. package/indicators/zigzag.src.js +1 -1
  441. package/modules/accessibility.js +233 -232
  442. package/modules/accessibility.js.map +1 -1
  443. package/modules/accessibility.src.js +58 -43
  444. package/modules/annotations-advanced.js +166 -165
  445. package/modules/annotations-advanced.js.map +1 -1
  446. package/modules/annotations-advanced.src.js +9 -4
  447. package/modules/annotations.js +41 -40
  448. package/modules/annotations.js.map +1 -1
  449. package/modules/annotations.src.js +9 -4
  450. package/modules/arc-diagram.js +3 -3
  451. package/modules/arc-diagram.js.map +1 -1
  452. package/modules/arc-diagram.src.js +4 -2
  453. package/modules/arrow-symbols.js +1 -1
  454. package/modules/arrow-symbols.src.js +1 -1
  455. package/modules/boost-canvas.js +1 -1
  456. package/modules/boost-canvas.src.js +1 -1
  457. package/modules/boost.js +1 -1
  458. package/modules/boost.src.js +1 -1
  459. package/modules/broken-axis.js +1 -1
  460. package/modules/broken-axis.src.js +1 -1
  461. package/modules/bullet.js +1 -1
  462. package/modules/bullet.src.js +1 -1
  463. package/modules/coloraxis.js +1 -1
  464. package/modules/coloraxis.src.js +1 -1
  465. package/modules/current-date-indicator.js +1 -1
  466. package/modules/current-date-indicator.src.js +1 -1
  467. package/modules/cylinder.js +1 -1
  468. package/modules/cylinder.src.js +1 -1
  469. package/modules/data.js +1 -1
  470. package/modules/data.src.js +1 -1
  471. package/modules/datagrouping.js +1 -1
  472. package/modules/datagrouping.src.js +1 -1
  473. package/modules/debugger.js +1 -1
  474. package/modules/debugger.src.js +1 -1
  475. package/modules/dependency-wheel.js +1 -1
  476. package/modules/dependency-wheel.src.js +1 -1
  477. package/modules/dotplot.js +1 -1
  478. package/modules/dotplot.src.js +1 -1
  479. package/modules/drag-panes.js +1 -1
  480. package/modules/drag-panes.src.js +1 -1
  481. package/modules/draggable-points.js +1 -1
  482. package/modules/draggable-points.src.js +1 -1
  483. package/modules/drilldown.js +1 -1
  484. package/modules/drilldown.src.js +1 -1
  485. package/modules/dumbbell.js +1 -1
  486. package/modules/dumbbell.src.js +1 -1
  487. package/modules/export-data.js +1 -1
  488. package/modules/export-data.src.js +1 -1
  489. package/modules/exporting.js +1 -1
  490. package/modules/exporting.src.js +1 -1
  491. package/modules/full-screen.js +1 -1
  492. package/modules/full-screen.src.js +1 -1
  493. package/modules/funnel.js +1 -1
  494. package/modules/funnel.src.js +1 -1
  495. package/modules/funnel3d.js +1 -1
  496. package/modules/funnel3d.src.js +1 -1
  497. package/modules/gantt.js +220 -219
  498. package/modules/gantt.js.map +1 -1
  499. package/modules/gantt.src.js +26 -11
  500. package/modules/grid-axis.js +1 -1
  501. package/modules/grid-axis.src.js +1 -1
  502. package/modules/heatmap.js +1 -1
  503. package/modules/heatmap.src.js +1 -1
  504. package/modules/heikinashi.js +1 -1
  505. package/modules/heikinashi.src.js +1 -1
  506. package/modules/histogram-bellcurve.js +1 -1
  507. package/modules/histogram-bellcurve.src.js +1 -1
  508. package/modules/hollowcandlestick.js +1 -1
  509. package/modules/hollowcandlestick.src.js +1 -1
  510. package/modules/item-series.js +1 -1
  511. package/modules/item-series.src.js +1 -1
  512. package/modules/lollipop.js +1 -1
  513. package/modules/lollipop.src.js +1 -1
  514. package/modules/map.js +171 -170
  515. package/modules/map.js.map +1 -1
  516. package/modules/map.src.js +53 -25
  517. package/modules/marker-clusters.js +1 -1
  518. package/modules/marker-clusters.src.js +1 -1
  519. package/modules/networkgraph.js +1 -1
  520. package/modules/networkgraph.src.js +1 -1
  521. package/modules/no-data-to-display.js +1 -1
  522. package/modules/no-data-to-display.src.js +1 -1
  523. package/modules/offline-exporting.js +2 -2
  524. package/modules/offline-exporting.src.js +2 -2
  525. package/modules/oldie-polyfills.js +1 -1
  526. package/modules/oldie-polyfills.src.js +1 -1
  527. package/modules/oldie.js +2 -2
  528. package/modules/oldie.src.js +2 -2
  529. package/modules/organization.js +1 -1
  530. package/modules/organization.src.js +1 -1
  531. package/modules/overlapping-datalabels.js +1 -1
  532. package/modules/overlapping-datalabels.src.js +1 -1
  533. package/modules/parallel-coordinates.js +1 -1
  534. package/modules/parallel-coordinates.src.js +1 -1
  535. package/modules/pareto.js +1 -1
  536. package/modules/pareto.src.js +1 -1
  537. package/modules/pathfinder.js +27 -27
  538. package/modules/pathfinder.js.map +1 -1
  539. package/modules/pathfinder.src.js +9 -8
  540. package/modules/pattern-fill.js +2 -2
  541. package/modules/pattern-fill.js.map +1 -1
  542. package/modules/pattern-fill.src.js +13 -11
  543. package/modules/price-indicator.js +1 -1
  544. package/modules/price-indicator.src.js +1 -1
  545. package/modules/pyramid3d.js +1 -1
  546. package/modules/pyramid3d.src.js +1 -1
  547. package/modules/sankey.js +20 -20
  548. package/modules/sankey.js.map +1 -1
  549. package/modules/sankey.src.js +5 -1
  550. package/modules/series-label.js +19 -18
  551. package/modules/series-label.js.map +1 -1
  552. package/modules/series-label.src.js +134 -98
  553. package/modules/series-on-point.js +1 -1
  554. package/modules/series-on-point.src.js +1 -1
  555. package/modules/solid-gauge.js +1 -1
  556. package/modules/solid-gauge.src.js +1 -1
  557. package/modules/sonification.js +1 -1
  558. package/modules/sonification.src.js +1 -1
  559. package/modules/static-scale.js +1 -1
  560. package/modules/static-scale.src.js +1 -1
  561. package/modules/stock-tools.js +2 -2
  562. package/modules/stock-tools.src.js +3 -3
  563. package/modules/stock.js +205 -205
  564. package/modules/stock.js.map +1 -1
  565. package/modules/stock.src.js +15 -12
  566. package/modules/streamgraph.js +1 -1
  567. package/modules/streamgraph.src.js +1 -1
  568. package/modules/sunburst.js +1 -1
  569. package/modules/sunburst.src.js +1 -1
  570. package/modules/tilemap.js +1 -1
  571. package/modules/tilemap.src.js +1 -1
  572. package/modules/timeline.js +1 -1
  573. package/modules/timeline.src.js +1 -1
  574. package/modules/treegraph.js +32 -31
  575. package/modules/treegraph.js.map +1 -1
  576. package/modules/treegraph.src.js +11 -4
  577. package/modules/treegrid.js +1 -1
  578. package/modules/treegrid.src.js +1 -1
  579. package/modules/treemap.js +1 -1
  580. package/modules/treemap.src.js +1 -1
  581. package/modules/variable-pie.js +1 -1
  582. package/modules/variable-pie.src.js +1 -1
  583. package/modules/variwide.js +1 -1
  584. package/modules/variwide.src.js +1 -1
  585. package/modules/vector.js +1 -1
  586. package/modules/vector.src.js +1 -1
  587. package/modules/venn.js +1 -1
  588. package/modules/venn.src.js +1 -1
  589. package/modules/windbarb.js +15 -15
  590. package/modules/windbarb.js.map +1 -1
  591. package/modules/windbarb.src.js +4 -5
  592. package/modules/wordcloud.js +1 -1
  593. package/modules/wordcloud.src.js +1 -1
  594. package/modules/xrange.js +9 -8
  595. package/modules/xrange.js.map +1 -1
  596. package/modules/xrange.src.js +7 -1
  597. package/package.json +1 -1
  598. package/themes/avocado.js +1 -1
  599. package/themes/avocado.src.js +1 -1
  600. package/themes/brand-dark.js +1 -1
  601. package/themes/brand-dark.src.js +1 -1
  602. package/themes/brand-light.js +1 -1
  603. package/themes/brand-light.src.js +1 -1
  604. package/themes/dark-blue.js +1 -1
  605. package/themes/dark-blue.src.js +1 -1
  606. package/themes/dark-green.js +1 -1
  607. package/themes/dark-green.src.js +1 -1
  608. package/themes/dark-unica.js +1 -1
  609. package/themes/dark-unica.src.js +1 -1
  610. package/themes/gray.js +1 -1
  611. package/themes/gray.src.js +1 -1
  612. package/themes/grid-light.js +1 -1
  613. package/themes/grid-light.src.js +1 -1
  614. package/themes/grid.js +1 -1
  615. package/themes/grid.src.js +1 -1
  616. package/themes/high-contrast-dark.js +1 -1
  617. package/themes/high-contrast-dark.src.js +1 -1
  618. package/themes/high-contrast-light.js +1 -1
  619. package/themes/high-contrast-light.src.js +1 -1
  620. package/themes/sand-signika.js +1 -1
  621. package/themes/sand-signika.src.js +1 -1
  622. package/themes/skies.js +1 -1
  623. package/themes/skies.src.js +1 -1
  624. package/themes/sunset.js +1 -1
  625. package/themes/sunset.src.js +1 -1
package/bower.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "highcharts",
3
- "version": "10.3.1",
3
+ "version": "10.3.2",
4
4
  "main": "highcharts.js",
5
5
  "license": "https://www.highcharts.com/license",
6
6
  "types": "highcharts.d.ts"
@@ -323,7 +323,7 @@ var Accessibility = /** @class */ (function () {
323
323
  /**
324
324
  * @private
325
325
  */
326
- function compose(AxisClass, ChartClass, LegendClass, PointClass, SeriesClass, SVGElementClass, RangeSelectorClass) {
326
+ function compose(ChartClass, LegendClass, PointClass, SeriesClass, SVGElementClass, RangeSelectorClass) {
327
327
  // ordered:
328
328
  KeyboardNavigation.compose(ChartClass);
329
329
  NewDataAnnouncer.compose(SeriesClass);
@@ -28,6 +28,8 @@ var __extends = (this && this.__extends) || (function () {
28
28
  import AccessibilityComponent from '../AccessibilityComponent.js';
29
29
  import CU from '../Utils/ChartUtilities.js';
30
30
  var unhideChartElementFromAT = CU.unhideChartElementFromAT;
31
+ import HU from '../Utils/HTMLUtilities.js';
32
+ var getFakeMouseEvent = HU.getFakeMouseEvent;
31
33
  import KeyboardNavigationHandler from '../KeyboardNavigationHandler.js';
32
34
  import U from '../../Core/Utilities.js';
33
35
  var attr = U.attr, pick = U.pick;
@@ -36,33 +38,11 @@ var attr = U.attr, pick = U.pick;
36
38
  * Functions
37
39
  *
38
40
  * */
39
- /**
40
- * Pan along axis in a direction (1 or -1), optionally with a defined
41
- * granularity (number of steps it takes to walk across current view)
42
- * @private
43
- */
44
- function axisPanStep(axis, direction, granularity) {
45
- var gran = granularity || 3;
46
- var extremes = axis.getExtremes();
47
- var step = (extremes.max - extremes.min) / gran * direction;
48
- var newMax = extremes.max + step;
49
- var newMin = extremes.min + step;
50
- var size = newMax - newMin;
51
- if (direction < 0 && newMin < extremes.dataMin) {
52
- newMin = extremes.dataMin;
53
- newMax = newMin + size;
54
- }
55
- else if (direction > 0 && newMax > extremes.dataMax) {
56
- newMax = extremes.dataMax;
57
- newMin = newMax - size;
58
- }
59
- axis.setExtremes(newMin, newMax);
60
- }
61
41
  /**
62
42
  * @private
63
43
  */
64
44
  function chartHasMapZoom(chart) {
65
- return !!((chart.mapZoom) &&
45
+ return !!((chart.mapView) &&
66
46
  chart.mapNavigation &&
67
47
  chart.mapNavigation.navButtons.length);
68
48
  }
@@ -213,16 +193,27 @@ var ZoomComponent = /** @class */ (function (_super) {
213
193
  });
214
194
  };
215
195
  /**
196
+ * Arrow key panning for maps.
216
197
  * @private
217
- * @param {Highcharts.KeyboardNavigationHandler} keyboardNavigationHandler
218
- * @param {number} keyCode
198
+ * @param {Highcharts.KeyboardNavigationHandler} keyboardNavigationHandler The handler context.
199
+ * @param {number} keyCode Key pressed.
219
200
  * @return {number} Response code
220
201
  */
221
202
  ZoomComponent.prototype.onMapKbdArrow = function (keyboardNavigationHandler, keyCode) {
222
- var keys = this.keyCodes, panAxis = (keyCode === keys.up || keyCode === keys.down) ?
223
- 'yAxis' : 'xAxis', stepDirection = (keyCode === keys.left || keyCode === keys.up) ?
224
- -1 : 1;
225
- axisPanStep(this.chart[panAxis][0], stepDirection);
203
+ var chart = this.chart, keys = this.keyCodes, target = chart.container, isY = keyCode === keys.up || keyCode === keys.down, stepDirection = (keyCode === keys.left || keyCode === keys.up) ?
204
+ 1 : -1, granularity = 10, diff = (isY ? chart.plotHeight : chart.plotWidth) /
205
+ granularity * stepDirection,
206
+ // Randomize since same mousedown coords twice is ignored in MapView
207
+ r = Math.random() * 10, startPos = {
208
+ x: target.offsetLeft + chart.plotLeft + chart.plotWidth / 2 + r,
209
+ y: target.offsetTop + chart.plotTop + chart.plotHeight / 2 + r
210
+ }, endPos = isY ? { x: startPos.x, y: startPos.y + diff } :
211
+ { x: startPos.x + diff, y: startPos.y };
212
+ [
213
+ getFakeMouseEvent('mousedown', startPos),
214
+ getFakeMouseEvent('mousemove', endPos),
215
+ getFakeMouseEvent('mouseup', endPos)
216
+ ].forEach(function (e) { return target.dispatchEvent(e); });
226
217
  return keyboardNavigationHandler.response.success;
227
218
  };
228
219
  /**
@@ -240,7 +231,9 @@ var ZoomComponent = /** @class */ (function (_super) {
240
231
  // Deselect old
241
232
  chart.mapNavigation.navButtons[this.focusedMapNavButtonIx].setState(0);
242
233
  if (isMoveOutOfRange) {
243
- chart.mapZoom(); // Reset zoom
234
+ if (chart.mapView) {
235
+ chart.mapView.zoomBy(); // Reset zoom
236
+ }
244
237
  return response[isBackwards ? 'prev' : 'next'];
245
238
  }
246
239
  // Select other button
@@ -251,12 +244,13 @@ var ZoomComponent = /** @class */ (function (_super) {
251
244
  return response.success;
252
245
  };
253
246
  /**
247
+ * Called on map button click.
254
248
  * @private
255
- * @param {Highcharts.KeyboardNavigationHandler} keyboardNavigationHandler
249
+ * @param {Highcharts.KeyboardNavigationHandler} keyboardNavigationHandler The handler context object
256
250
  * @return {number} Response code
257
251
  */
258
252
  ZoomComponent.prototype.onMapKbdClick = function (keyboardNavigationHandler) {
259
- var el = this.chart.mapNavButtons[this.focusedMapNavButtonIx].element;
253
+ var el = this.chart.mapNavigation.navButtons[this.focusedMapNavButtonIx].element;
260
254
  this.fakeClickEvent(el);
261
255
  return keyboardNavigationHandler.response.success;
262
256
  };
@@ -17,7 +17,7 @@ import U from '../Core/Utilities.js';
17
17
  var addEvent = U.addEvent, fireEvent = U.fireEvent;
18
18
  import EventProvider from './Utils/EventProvider.js';
19
19
  import HTMLUtilities from './Utils/HTMLUtilities.js';
20
- var getElement = HTMLUtilities.getElement;
20
+ var getElement = HTMLUtilities.getElement, simulatedEventTarget = HTMLUtilities.simulatedEventTarget;
21
21
  /* *
22
22
  *
23
23
  * Class
@@ -83,7 +83,7 @@ var KeyboardNavigation = /** @class */ (function () {
83
83
  ep.addEvent(this.tabindexContainer, 'keydown', function (e) { return _this.onKeydown(e); });
84
84
  ep.addEvent(this.tabindexContainer, 'focus', function (e) { return _this.onFocus(e); });
85
85
  ['mouseup', 'touchend'].forEach(function (eventName) {
86
- return ep.addEvent(doc, eventName, function () { return _this.onMouseUp(); });
86
+ return ep.addEvent(doc, eventName, function (e) { return _this.onMouseUp(e); });
87
87
  });
88
88
  ['mousedown', 'touchstart'].forEach(function (eventName) {
89
89
  return ep.addEvent(chart.renderTo, eventName, function () {
@@ -209,9 +209,10 @@ var KeyboardNavigation = /** @class */ (function () {
209
209
  * indicator.
210
210
  * @private
211
211
  */
212
- KeyboardNavigation.prototype.onMouseUp = function () {
212
+ KeyboardNavigation.prototype.onMouseUp = function (e) {
213
213
  delete this.isClickingChart;
214
- if (!this.keyboardReset) {
214
+ if (!this.keyboardReset &&
215
+ e.relatedTarget !== simulatedEventTarget) {
215
216
  var chart = this.chart;
216
217
  if (!this.pointerIsOverChart) {
217
218
  var curMod = this.modules &&
@@ -14,6 +14,12 @@ import H from '../../Core/Globals.js';
14
14
  var doc = H.doc, win = H.win;
15
15
  import U from '../../Core/Utilities.js';
16
16
  var css = U.css;
17
+ /* *
18
+ *
19
+ * Constants
20
+ *
21
+ * */
22
+ var simulatedEventTarget = win.EventTarget && new win.EventTarget() || 'none';
17
23
  /* *
18
24
  *
19
25
  * Functions
@@ -133,10 +139,12 @@ function getElement(id) {
133
139
  return doc.getElementById(id);
134
140
  }
135
141
  /**
136
- * Get a fake mouse event of a given type
142
+ * Get a fake mouse event of a given type. If relatedTarget is not given,
143
+ * it will point to simulatedEventTarget, as an indicator that the event
144
+ * is fake.
137
145
  * @private
138
146
  */
139
- function getFakeMouseEvent(type, position) {
147
+ function getFakeMouseEvent(type, position, relatedTarget) {
140
148
  var pos = position || {
141
149
  x: 0,
142
150
  y: 0
@@ -146,6 +154,9 @@ function getFakeMouseEvent(type, position) {
146
154
  bubbles: true,
147
155
  cancelable: true,
148
156
  composed: true,
157
+ button: 0,
158
+ buttons: 1,
159
+ relatedTarget: relatedTarget || simulatedEventTarget,
149
160
  view: win,
150
161
  detail: type === 'click' ? 1 : 0,
151
162
  screenX: pos.x,
@@ -299,6 +310,7 @@ var HTMLUtilities = {
299
310
  removeClass: removeClass,
300
311
  removeElement: removeElement,
301
312
  reverseChildNodes: reverseChildNodes,
313
+ simulatedEventTarget: simulatedEventTarget,
302
314
  stripHTMLTagsFromString: stripHTMLTagsFromString,
303
315
  visuallyHideElement: visuallyHideElement
304
316
  };
@@ -182,12 +182,14 @@ function seriesSetGroupedPoints() {
182
182
  * @function Highcharts.Series#setStackedPoints
183
183
  */
184
184
  function seriesSetStackedPoints(stackingParam) {
185
- var stacking = stackingParam || this.options.stacking;
185
+ var chart = this.chart, stacking = stackingParam || this.options.stacking;
186
186
  if (!stacking || (this.visible !== true &&
187
- this.chart.options.chart.ignoreHiddenSeries !== false)) {
187
+ chart.options.chart.ignoreHiddenSeries !== false)) {
188
188
  return;
189
189
  }
190
- var series = this, xData = series.processedXData, yData = series.processedYData, stackedYData = [], yDataLength = yData.length, seriesOptions = series.options, threshold = seriesOptions.threshold, stackThreshold = pick(seriesOptions.startFromThreshold && threshold, 0), stackOption = seriesOptions.stack, stackKey = stackingParam ? "".concat(series.type, ",").concat(stacking) : series.stackKey, negKey = '-' + stackKey, negStacks = series.negStacks, yAxis = series.yAxis, stacks = yAxis.stacking.stacks, oldStacks = yAxis.stacking.oldStacks;
190
+ var series = this, xData = series.processedXData, yData = series.processedYData, stackedYData = [], yDataLength = yData.length, seriesOptions = series.options, threshold = seriesOptions.threshold, stackThreshold = pick(seriesOptions.startFromThreshold && threshold, 0), stackOption = seriesOptions.stack, stackKey = stackingParam ? "".concat(series.type, ",").concat(stacking) : series.stackKey, negKey = '-' + stackKey, negStacks = series.negStacks, yAxis = stacking === 'group' ?
191
+ chart.yAxis[0] :
192
+ series.yAxis, stacks = yAxis.stacking.stacks, oldStacks = yAxis.stacking.oldStacks;
191
193
  var stackIndicator, isNegative, stack, other, key, pointKey, i, x, y;
192
194
  yAxis.stacking.stacksTouched += 1;
193
195
  // loop over the non-null y values and read them into a local array
@@ -58,20 +58,23 @@ var WaterfallAxis;
58
58
  * @function Highcharts.Axis#renderWaterfallStackTotals
59
59
  */
60
60
  Composition.prototype.renderStackTotals = function () {
61
- var yAxis = this.axis, waterfallStacks = yAxis.waterfall.stacks, stackTotalGroup = (yAxis.stacking && yAxis.stacking.stackTotalGroup), dummyStackItem = new StackItem(yAxis, yAxis.options.stackLabels, false, 0, void 0);
61
+ var yAxis = this.axis, waterfallStacks = yAxis.waterfall.stacks, stackTotalGroup = (yAxis.stacking && yAxis.stacking.stackTotalGroup), dummyStackItem = new StackItem(yAxis, yAxis.options.stackLabels || {}, false, 0, void 0);
62
62
  this.dummyStackItem = dummyStackItem;
63
63
  // Render each waterfall stack total
64
- objectEach(waterfallStacks, function (type) {
65
- objectEach(type, function (stackItem) {
66
- dummyStackItem.total = stackItem.stackTotal;
67
- if (stackItem.label) {
68
- dummyStackItem.label = stackItem.label;
69
- }
70
- StackItem.prototype.render.call(dummyStackItem, stackTotalGroup);
71
- stackItem.label = dummyStackItem.label;
72
- delete dummyStackItem.label;
64
+ if (stackTotalGroup) {
65
+ objectEach(waterfallStacks, function (type) {
66
+ objectEach(type, function (stackItem, key) {
67
+ dummyStackItem.total = stackItem.stackTotal;
68
+ dummyStackItem.x = +key;
69
+ if (stackItem.label) {
70
+ dummyStackItem.label = stackItem.label;
71
+ }
72
+ StackItem.prototype.render.call(dummyStackItem, stackTotalGroup);
73
+ stackItem.label = dummyStackItem.label;
74
+ delete dummyStackItem.label;
75
+ });
73
76
  });
74
- });
77
+ }
75
78
  dummyStackItem.total = null;
76
79
  };
77
80
  return Composition;
@@ -1967,7 +1967,9 @@ var Chart = /** @class */ (function () {
1967
1967
  // Make chart behave as an image with the title as alt text
1968
1968
  this.renderer.boxWrapper.attr({
1969
1969
  role: 'img',
1970
- 'aria-label': (title && title.element.textContent) || ''
1970
+ 'aria-label': ((title && title.element.textContent) || ''
1971
+ // #17753, < is not allowed in SVG attributes
1972
+ ).replace(/</g, '&lt;')
1971
1973
  });
1972
1974
  if (!(options.accessibility && options.accessibility.enabled === false)) {
1973
1975
  error('Highcharts warning: Consider including the ' +
@@ -851,6 +851,8 @@ var ChartDefaults = {
851
851
  * Additional CSS styles to apply inline to the container `div`. Note
852
852
  * that since the default font styles are applied in the renderer, it
853
853
  * is ignorant of the individual chart options and must be set globally.
854
+ * Also note that changing the font size in the `chart.style` options only
855
+ * applies to those elements that do not have a specific `fontSize` setting.
854
856
  *
855
857
  * @see In styled mode, general chart styles can be set with the
856
858
  * `.highcharts-root` class.
@@ -24,7 +24,7 @@ var Globals;
24
24
  * Constants
25
25
  *
26
26
  * */
27
- Globals.SVG_NS = 'http://www.w3.org/2000/svg', Globals.product = 'Highcharts', Globals.version = '10.3.1', Globals.win = (typeof window !== 'undefined' ?
27
+ Globals.SVG_NS = 'http://www.w3.org/2000/svg', Globals.product = 'Highcharts', Globals.version = '10.3.2', Globals.win = (typeof window !== 'undefined' ?
28
28
  window :
29
29
  {}), // eslint-disable-line node/no-unsupported-features/es-builtins
30
30
  Globals.doc = Globals.win.document, Globals.svg = (Globals.doc &&
@@ -1169,7 +1169,7 @@ var Pointer = /** @class */ (function () {
1169
1169
  * @emits Highcharts.Point#event:mouseOut
1170
1170
  * @emits Highcharts.Point#event:mouseOver
1171
1171
  */
1172
- Pointer.prototype.runPointActions = function (e, p) {
1172
+ Pointer.prototype.runPointActions = function (e, p, force) {
1173
1173
  var pointer = this, chart = pointer.chart, series = chart.series, tooltip = (chart.tooltip && chart.tooltip.options.enabled ?
1174
1174
  chart.tooltip :
1175
1175
  void 0), shared = (tooltip ?
@@ -1190,8 +1190,9 @@ var Pointer = /** @class */ (function () {
1190
1190
  // Refresh tooltip for kdpoint if new hover point or tooltip was hidden
1191
1191
  // #3926, #4200
1192
1192
  if (hoverPoint &&
1193
- // !(hoverSeries && hoverSeries.directTouch) &&
1194
- (hoverPoint !== chart.hoverPoint || (tooltip && tooltip.isHidden))) {
1193
+ (force ||
1194
+ hoverPoint !== chart.hoverPoint ||
1195
+ (tooltip && tooltip.isHidden))) {
1195
1196
  (chart.hoverPoints || []).forEach(function (p) {
1196
1197
  if (points.indexOf(p) === -1) {
1197
1198
  p.setState();
@@ -96,6 +96,10 @@ var AST = /** @class */ (function () {
96
96
  });
97
97
  delete attributes[key];
98
98
  }
99
+ // #17753, < is not allowed in SVG attributes
100
+ if (isString(val) && attributes[key]) {
101
+ attributes[key] = val.replace(/</g, '&lt;');
102
+ }
99
103
  });
100
104
  return attributes;
101
105
  };
@@ -374,6 +378,7 @@ var AST = /** @class */ (function () {
374
378
  'x',
375
379
  'x1',
376
380
  'x2',
381
+ 'xlink:href',
377
382
  'y',
378
383
  'y1',
379
384
  'y2',
@@ -467,6 +472,7 @@ var AST = /** @class */ (function () {
467
472
  'text',
468
473
  'textPath',
469
474
  'thead',
475
+ 'title',
470
476
  'tbody',
471
477
  'tspan',
472
478
  'td',
@@ -134,8 +134,6 @@ var SVGElement = /** @class */ (function () {
134
134
  if (parent) {
135
135
  this.parentGroup = parent;
136
136
  }
137
- // Mark as inverted
138
- this.parentInverted = parent && parent.inverted;
139
137
  // Build formatted text
140
138
  if (typeof this.textStr !== 'undefined' &&
141
139
  this.element.nodeName === 'text' // Not for SVGLabel instances
@@ -1210,25 +1208,6 @@ var SVGElement = /** @class */ (function () {
1210
1208
  this.renderer = renderer;
1211
1209
  fireEvent(this, 'afterInit');
1212
1210
  };
1213
- /**
1214
- * Invert a group, rotate and flip. This is used internally on inverted
1215
- * charts, where the points and graphs are drawn as if not inverted, then
1216
- * the series group elements are inverted.
1217
- *
1218
- * @function Highcharts.SVGElement#invert
1219
- *
1220
- * @param {boolean} inverted
1221
- * Whether to invert or not. An inverted shape can be un-inverted by
1222
- * setting it to false.
1223
- *
1224
- * @return {Highcharts.SVGElement}
1225
- * Return the SVGElement for chaining.
1226
- */
1227
- SVGElement.prototype.invert = function (inverted) {
1228
- this.inverted = inverted;
1229
- this.updateTransform();
1230
- return this;
1231
- };
1232
1211
  /**
1233
1212
  * Add an event listener. This is a simple setter that replaces the
1234
1213
  * previous event of the same type added by this function, as opposed to
@@ -1462,10 +1441,10 @@ var SVGElement = /** @class */ (function () {
1462
1441
  * Returns the SVGElement for chaining.
1463
1442
  */
1464
1443
  SVGElement.prototype.shadow = function (shadowOptions, group, cutOff) {
1465
- var shadows = [], element = this.element, oldShadowOptions = this.oldShadowOptions, defaultShadowOptions = {
1444
+ var shadows = [], _a = this, element = _a.element, oldShadowOptions = _a.oldShadowOptions, parentGroup = _a.parentGroup, parentInverted = parentGroup && parentGroup.rotation === 90, defaultShadowOptions = {
1466
1445
  color: "#000000" /* Palette.neutralColor100 */,
1467
- offsetX: this.parentInverted ? -1 : 1,
1468
- offsetY: this.parentInverted ? -1 : 1,
1446
+ offsetX: parentInverted ? -1 : 1,
1447
+ offsetY: parentInverted ? -1 : 1,
1469
1448
  opacity: 0.15,
1470
1449
  width: 3
1471
1450
  };
@@ -1498,7 +1477,7 @@ var SVGElement = /** @class */ (function () {
1498
1477
  }
1499
1478
  else if (!this.shadows) {
1500
1479
  shadowElementOpacity = options.opacity / options.width;
1501
- transform = this.parentInverted ?
1480
+ transform = parentInverted ?
1502
1481
  "translate(".concat(options.offsetY, ", ").concat(options.offsetX, ")") :
1503
1482
  "translate(".concat(options.offsetX, ", ").concat(options.offsetY, ")");
1504
1483
  for (i = 1; i <= options.width; i++) {
@@ -1547,9 +1526,7 @@ var SVGElement = /** @class */ (function () {
1547
1526
  return this.attr({ visibility: inherit ? 'inherit' : 'visible' });
1548
1527
  };
1549
1528
  /**
1550
- * WebKit and Batik have problems with a stroke-width of zero, so in this
1551
- * case we remove the stroke attribute altogether. #1270, #1369, #3065,
1552
- * #3072.
1529
+ * Set the stroke-width and record it on the SVGElement
1553
1530
  *
1554
1531
  * @private
1555
1532
  * @function Highcharts.SVGElement#strokeSetter
@@ -1557,24 +1534,10 @@ var SVGElement = /** @class */ (function () {
1557
1534
  * @param {string} key
1558
1535
  * @param {Highcharts.SVGDOMElement} element
1559
1536
  */
1560
- SVGElement.prototype.strokeSetter = function (value, key, element) {
1537
+ SVGElement.prototype['stroke-widthSetter'] = function (value, key, element) {
1538
+ // Record it for quick access in getter
1561
1539
  this[key] = value;
1562
- // Only apply the stroke attribute if the stroke width is defined and
1563
- // larger than 0
1564
- if (this.stroke && this['stroke-width']) {
1565
- // Use prototype as instance may be overridden
1566
- SVGElement.prototype.fillSetter.call(this, this.stroke, 'stroke', element);
1567
- element.setAttribute('stroke-width', this['stroke-width']);
1568
- this.hasStroke = true;
1569
- }
1570
- else if (key === 'stroke-width' && value === 0 && this.hasStroke) {
1571
- element.removeAttribute('stroke');
1572
- this.hasStroke = false;
1573
- }
1574
- else if (this.renderer.styledMode && this['stroke-width']) {
1575
- element.setAttribute('stroke-width', this['stroke-width']);
1576
- this.hasStroke = true;
1577
- }
1540
+ element.setAttribute(key, value);
1578
1541
  };
1579
1542
  /**
1580
1543
  * Get the computed stroke width in pixel values. This is used extensively
@@ -1765,14 +1728,7 @@ var SVGElement = /** @class */ (function () {
1765
1728
  * @function Highcharts.SVGElement#updateTransform
1766
1729
  */
1767
1730
  SVGElement.prototype.updateTransform = function () {
1768
- var wrapper = this, scaleX = wrapper.scaleX, scaleY = wrapper.scaleY, inverted = wrapper.inverted, rotation = wrapper.rotation, matrix = wrapper.matrix, element = wrapper.element;
1769
- var translateX = wrapper.translateX || 0, translateY = wrapper.translateY || 0;
1770
- // Flipping affects translate as adjustment for flipping around the
1771
- // group's axis
1772
- if (inverted) {
1773
- translateX += wrapper.width;
1774
- translateY += wrapper.height;
1775
- }
1731
+ var _a = this, element = _a.element, matrix = _a.matrix, _b = _a.rotation, rotation = _b === void 0 ? 0 : _b, scaleX = _a.scaleX, scaleY = _a.scaleY, _c = _a.translateX, translateX = _c === void 0 ? 0 : _c, _d = _a.translateY, translateY = _d === void 0 ? 0 : _d;
1776
1732
  // Apply translate. Nearly all transformed elements have translation,
1777
1733
  // so instead of checking for translate = 0, do it always (#1767,
1778
1734
  // #1846).
@@ -1781,11 +1737,8 @@ var SVGElement = /** @class */ (function () {
1781
1737
  if (defined(matrix)) {
1782
1738
  transform.push('matrix(' + matrix.join(',') + ')');
1783
1739
  }
1784
- // apply rotation
1785
- if (inverted) {
1786
- transform.push('rotate(90) scale(-1,1)');
1787
- }
1788
- else if (rotation) { // text rotation
1740
+ // Apply rotation
1741
+ if (rotation) { // text rotation or inverted chart
1789
1742
  transform.push('rotate(' + rotation + ' ' +
1790
1743
  pick(this.rotationOriginX, element.getAttribute('x'), 0) +
1791
1744
  ' ' +
@@ -1795,7 +1748,7 @@ var SVGElement = /** @class */ (function () {
1795
1748
  if (defined(scaleX) || defined(scaleY)) {
1796
1749
  transform.push('scale(' + pick(scaleX, 1) + ' ' + pick(scaleY, 1) + ')');
1797
1750
  }
1798
- if (transform.length && !(wrapper.text || wrapper).textPath) {
1751
+ if (transform.length && !(this.text || this).textPath) {
1799
1752
  element.setAttribute('transform', transform.join(' '));
1800
1753
  }
1801
1754
  };
@@ -1906,7 +1859,7 @@ var SVGElement = /** @class */ (function () {
1906
1859
  return SVGElement;
1907
1860
  }());
1908
1861
  // Some shared setters and getters
1909
- SVGElement.prototype['stroke-widthSetter'] = SVGElement.prototype.strokeSetter;
1862
+ SVGElement.prototype.strokeSetter = SVGElement.prototype.fillSetter;
1910
1863
  SVGElement.prototype.yGetter = SVGElement.prototype.xGetter;
1911
1864
  SVGElement.prototype.matrixSetter =
1912
1865
  SVGElement.prototype.rotationOriginXSetter =
@@ -205,14 +205,13 @@ var SVGLabel = /** @class */ (function (_super) {
205
205
  * box and add it before the text in the DOM.
206
206
  */
207
207
  SVGLabel.prototype.onAdd = function () {
208
- var str = this.textStr;
209
208
  this.text.add(this);
210
209
  this.attr({
211
210
  // Alignment is available now (#3295, 0 not rendered if given
212
211
  // as a value)
213
- text: (defined(str) ? str : ''),
214
- x: this.x,
215
- y: this.y
212
+ text: pick(this.textStr, ''),
213
+ x: this.x || 0,
214
+ y: this.y || 0
216
215
  });
217
216
  if (this.box && defined(this.anchorX)) {
218
217
  this.attr({
@@ -193,7 +193,7 @@ var SVGRenderer = /** @class */ (function () {
193
193
  this.url = this.getReferenceURL();
194
194
  // Add description
195
195
  var desc = this.createElement('desc').add();
196
- desc.element.appendChild(doc.createTextNode('Created with Highcharts 10.3.1'));
196
+ desc.element.appendChild(doc.createTextNode('Created with Highcharts 10.3.2'));
197
197
  renderer.defs = this.createElement('defs').add();
198
198
  renderer.allowHTML = allowHTML;
199
199
  renderer.forExport = forExport;
@@ -44,7 +44,7 @@ var DataLabel;
44
44
  * @private
45
45
  */
46
46
  function alignDataLabel(point, dataLabel, options, alignTo, isNew) {
47
- var series = this, chart = this.chart, inverted = this.isCartesian && chart.inverted, enabledDataSorting = this.enabledDataSorting, plotX = pick(point.dlBox && point.dlBox.centerX, point.plotX), plotY = point.plotY, rotation = options.rotation, align = options.align, isInsidePlot = defined(plotX) &&
47
+ var series = this, chart = this.chart, inverted = this.isCartesian && chart.inverted, enabledDataSorting = this.enabledDataSorting, plotX = point.plotX, plotY = point.plotY, rotation = options.rotation, align = options.align, isInsidePlot = defined(plotX) &&
48
48
  defined(plotY) &&
49
49
  chart.isInsidePlot(plotX, Math.round(plotY), {
50
50
  inverted: inverted,
@@ -61,6 +61,7 @@ var DataLabel;
61
61
  alignAttr, // the final position;
62
62
  justify = pick(options.overflow, (enabledDataSorting ? 'none' : 'justify')) === 'justify', visible = this.visible &&
63
63
  point.visible !== false &&
64
+ defined(plotX) &&
64
65
  (point.series.forceDL ||
65
66
  (enabledDataSorting && !justify) ||
66
67
  isInsidePlot ||
@@ -167,12 +168,8 @@ var DataLabel;
167
168
  // arrow pointing to thie point
168
169
  if (options.shape && !rotation) {
169
170
  dataLabel[isNew ? 'attr' : 'animate']({
170
- anchorX: inverted ?
171
- chart.plotWidth - point.plotY :
172
- point.plotX,
173
- anchorY: inverted ?
174
- chart.plotHeight - point.plotX :
175
- point.plotY
171
+ anchorX: inverted ? chart.plotWidth - plotY : plotX,
172
+ anchorY: inverted ? chart.plotHeight - plotX : plotY
176
173
  });
177
174
  }
178
175
  }
@@ -47,14 +47,6 @@ var Point = /** @class */ (function () {
47
47
  * @type {number|string}
48
48
  */
49
49
  this.category = void 0;
50
- /**
51
- * The point's current color index, used in styled mode instead of
52
- * `color`. The color index is inserted in class names used for styling.
53
- *
54
- * @name Highcharts.Point#colorIndex
55
- * @type {number}
56
- */
57
- this.colorIndex = void 0;
58
50
  this.formatPrefix = 'point';
59
51
  this.id = void 0;
60
52
  this.isNull = false;
@@ -619,6 +611,13 @@ var Point = /** @class */ (function () {
619
611
  }
620
612
  colorIndex = series.colorIndex;
621
613
  }
614
+ /**
615
+ * The point's current color index, used in styled mode instead of
616
+ * `color`. The color index is inserted in class names used for styling.
617
+ *
618
+ * @name Highcharts.Point#colorIndex
619
+ * @type {number|undefined}
620
+ */
622
621
  this.colorIndex = pick(this.options.colorIndex, colorIndex);
623
622
  /**
624
623
  * The point's current color.
@@ -1001,7 +1000,7 @@ var Point = /** @class */ (function () {
1001
1000
  var opacity_1 = pointAttribs.opacity;
1002
1001
  // Some inactive points (e.g. slices in pie) should apply
1003
1002
  // opacity also for their labels
1004
- if (isNumber(opacity_1)) {
1003
+ if (series.options.inactiveOtherPoints && isNumber(opacity_1)) {
1005
1004
  (point.dataLabels || []).forEach(function (label) {
1006
1005
  if (label &&
1007
1006
  !label.hasClass('highcharts-data-label-hidden')) {