highcharts 10.0.0 → 10.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (500) hide show
  1. package/bower.json +1 -1
  2. package/es-modules/Accessibility/A11yI18n.js +4 -4
  3. package/es-modules/Accessibility/Components/ContainerComponent.js +8 -9
  4. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +14 -9
  5. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +31 -15
  6. package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +23 -4
  7. package/es-modules/Accessibility/FocusBorder.js +6 -5
  8. package/es-modules/Accessibility/Options/LangOptions.js +36 -31
  9. package/es-modules/Accessibility/Options/Options.js +66 -3
  10. package/es-modules/Accessibility/Utils/ChartUtilities.js +9 -4
  11. package/es-modules/Core/Axis/Axis.js +30 -27
  12. package/es-modules/Core/Axis/GridAxis.js +5 -2
  13. package/es-modules/Core/Axis/LogarithmicAxis.js +1 -1
  14. package/es-modules/Core/Axis/OrdinalAxis.js +3 -2
  15. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +1 -1
  16. package/es-modules/Core/Axis/StackingAxis.js +0 -1
  17. package/es-modules/Core/Axis/Tick.js +2 -2
  18. package/es-modules/Core/Chart/Chart.js +21 -3
  19. package/es-modules/Core/Chart/ChartDefaults.js +11 -0
  20. package/es-modules/Core/Chart/StockChart.js +1 -1
  21. package/es-modules/Core/DefaultOptions.js +6 -4
  22. package/es-modules/Core/Globals.js +1 -1
  23. package/es-modules/Core/Legend/Legend.js +1 -1
  24. package/es-modules/Core/Navigator.js +1 -1
  25. package/es-modules/Core/Renderer/HTML/AST.js +9 -6
  26. package/es-modules/Core/Renderer/SVG/SVGElement.js +22 -22
  27. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +16 -13
  28. package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +1 -1
  29. package/es-modules/Core/Scrollbar.js +9 -5
  30. package/es-modules/Core/Series/DataLabel.js +54 -33
  31. package/es-modules/Core/Series/Series.js +19 -7
  32. package/es-modules/Core/Utilities.js +1 -1
  33. package/es-modules/Extensions/Annotations/Annotations.js +2 -2
  34. package/es-modules/Extensions/Annotations/ControlPoint.js +1 -1
  35. package/es-modules/Extensions/Annotations/NavigationBindings.js +9 -1
  36. package/es-modules/Extensions/Annotations/Popup.js +1 -1
  37. package/es-modules/Extensions/Breadcrumbs.js +2 -3
  38. package/es-modules/Extensions/DataGrouping.js +3 -1
  39. package/es-modules/Extensions/Debugger/ErrorMessages.js +4 -0
  40. package/es-modules/Extensions/Drilldown.js +6 -4
  41. package/es-modules/Extensions/ExportData.js +1 -2
  42. package/es-modules/Extensions/Exporting/Exporting.js +22 -13
  43. package/es-modules/Extensions/FullScreen.js +121 -54
  44. package/es-modules/Extensions/GeoJSON.js +3 -2
  45. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
  46. package/es-modules/Extensions/Oldie/Oldie.js +1 -1
  47. package/es-modules/Extensions/OverlappingDataLabels.js +5 -4
  48. package/es-modules/Extensions/Polar.js +4 -1
  49. package/es-modules/Extensions/Stacking.js +1 -1
  50. package/es-modules/Extensions/Themes/HighContrastDark.js +10 -10
  51. package/es-modules/Extensions/Themes/HighContrastLight.js +9 -9
  52. package/es-modules/Maps/MapNavigation.js +1 -5
  53. package/es-modules/Maps/MapView.js +6 -2
  54. package/es-modules/Maps/MapViewOptionsDefault.js +3 -1
  55. package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +9 -1
  56. package/es-modules/Series/CenteredUtilities.js +6 -1
  57. package/es-modules/Series/Flags/FlagsSeries.js +7 -12
  58. package/es-modules/Series/Gauge/GaugeSeries.js +1 -1
  59. package/es-modules/Series/Heatmap/HeatmapSeries.js +13 -20
  60. package/es-modules/Series/Map/MapSeries.js +11 -1
  61. package/es-modules/Series/MapBubble/MapBubbleSeries.js +49 -3
  62. package/es-modules/Series/MapPoint/MapPointSeries.js +4 -0
  63. package/es-modules/Series/Pie/PieDataLabel.js +3 -1
  64. package/es-modules/Series/Pie/PieSeries.js +12 -1
  65. package/es-modules/Series/Sankey/SankeySeries.js +3 -1
  66. package/es-modules/Series/Sunburst/SunburstSeries.js +1 -1
  67. package/es-modules/Series/Wordcloud/WordcloudSeries.js +4 -4
  68. package/es-modules/Stock/StockToolsBindings.js +31 -24
  69. package/es-modules/Stock/StockToolsGui.js +1 -1
  70. package/es-modules/masters/highcharts-3d.src.js +1 -1
  71. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  72. package/es-modules/masters/highcharts-more.src.js +1 -1
  73. package/es-modules/masters/highcharts.src.js +1 -1
  74. package/es-modules/masters/highmaps.src.js +1 -1
  75. package/es-modules/masters/highstock.src.js +1 -1
  76. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  77. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  78. package/es-modules/masters/indicators/ao.src.js +1 -1
  79. package/es-modules/masters/indicators/apo.src.js +1 -1
  80. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  81. package/es-modules/masters/indicators/aroon.src.js +1 -1
  82. package/es-modules/masters/indicators/atr.src.js +1 -1
  83. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  84. package/es-modules/masters/indicators/cci.src.js +1 -1
  85. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  86. package/es-modules/masters/indicators/cmf.src.js +1 -1
  87. package/es-modules/masters/indicators/cmo.src.js +1 -1
  88. package/es-modules/masters/indicators/dema.src.js +1 -1
  89. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  90. package/es-modules/masters/indicators/dmi.src.js +1 -1
  91. package/es-modules/masters/indicators/dpo.src.js +1 -1
  92. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  93. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  94. package/es-modules/masters/indicators/indicators.src.js +1 -1
  95. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  96. package/es-modules/masters/indicators/klinger.src.js +1 -1
  97. package/es-modules/masters/indicators/macd.src.js +1 -1
  98. package/es-modules/masters/indicators/mfi.src.js +1 -1
  99. package/es-modules/masters/indicators/momentum.src.js +1 -1
  100. package/es-modules/masters/indicators/natr.src.js +1 -1
  101. package/es-modules/masters/indicators/obv.src.js +1 -1
  102. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  103. package/es-modules/masters/indicators/ppo.src.js +1 -1
  104. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  105. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  106. package/es-modules/masters/indicators/psar.src.js +1 -1
  107. package/es-modules/masters/indicators/regressions.src.js +1 -1
  108. package/es-modules/masters/indicators/roc.src.js +1 -1
  109. package/es-modules/masters/indicators/rsi.src.js +1 -1
  110. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  111. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  112. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  113. package/es-modules/masters/indicators/tema.src.js +1 -1
  114. package/es-modules/masters/indicators/trendline.src.js +1 -1
  115. package/es-modules/masters/indicators/trix.src.js +1 -1
  116. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  117. package/es-modules/masters/indicators/vwap.src.js +1 -1
  118. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  119. package/es-modules/masters/indicators/wma.src.js +1 -1
  120. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  121. package/es-modules/masters/modules/accessibility.src.js +1 -1
  122. package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
  123. package/es-modules/masters/modules/annotations.src.js +1 -1
  124. package/es-modules/masters/modules/arc-diagram.src.js +1 -1
  125. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  126. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  127. package/es-modules/masters/modules/boost.src.js +1 -1
  128. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  129. package/es-modules/masters/modules/bullet.src.js +1 -1
  130. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  131. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  132. package/es-modules/masters/modules/cylinder.src.js +1 -1
  133. package/es-modules/masters/modules/data.src.js +1 -1
  134. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  135. package/es-modules/masters/modules/debugger.src.js +1 -1
  136. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  137. package/es-modules/masters/modules/dotplot.src.js +1 -1
  138. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  139. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  140. package/es-modules/masters/modules/drilldown.src.js +1 -1
  141. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  142. package/es-modules/masters/modules/export-data.src.js +1 -1
  143. package/es-modules/masters/modules/exporting.src.js +1 -1
  144. package/es-modules/masters/modules/full-screen.src.js +1 -1
  145. package/es-modules/masters/modules/funnel.src.js +1 -1
  146. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  147. package/es-modules/masters/modules/gantt.src.js +1 -1
  148. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  149. package/es-modules/masters/modules/heatmap.src.js +1 -1
  150. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  151. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  152. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  153. package/es-modules/masters/modules/item-series.src.js +1 -1
  154. package/es-modules/masters/modules/lollipop.src.js +1 -1
  155. package/es-modules/masters/modules/map.src.js +1 -1
  156. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  157. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  158. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  159. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  160. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  161. package/es-modules/masters/modules/oldie.src.js +1 -1
  162. package/es-modules/masters/modules/organization.src.js +1 -1
  163. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  164. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  165. package/es-modules/masters/modules/pareto.src.js +1 -1
  166. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  167. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  168. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  169. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  170. package/es-modules/masters/modules/sankey.src.js +1 -1
  171. package/es-modules/masters/modules/series-label.src.js +1 -1
  172. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  173. package/es-modules/masters/modules/sonification.src.js +1 -1
  174. package/es-modules/masters/modules/static-scale.src.js +1 -1
  175. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  176. package/es-modules/masters/modules/stock.src.js +1 -1
  177. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  178. package/es-modules/masters/modules/sunburst.src.js +1 -1
  179. package/es-modules/masters/modules/tilemap.src.js +1 -1
  180. package/es-modules/masters/modules/timeline.src.js +1 -1
  181. package/es-modules/masters/modules/treegrid.src.js +1 -1
  182. package/es-modules/masters/modules/treemap.src.js +1 -1
  183. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  184. package/es-modules/masters/modules/variwide.src.js +1 -1
  185. package/es-modules/masters/modules/vector.src.js +1 -1
  186. package/es-modules/masters/modules/venn.src.js +1 -1
  187. package/es-modules/masters/modules/windbarb.src.js +1 -1
  188. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  189. package/es-modules/masters/modules/xrange.src.js +1 -1
  190. package/es-modules/masters/themes/avocado.src.js +1 -1
  191. package/es-modules/masters/themes/brand-dark.src.js +1 -1
  192. package/es-modules/masters/themes/brand-light.src.js +1 -1
  193. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  194. package/es-modules/masters/themes/dark-green.src.js +1 -1
  195. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  196. package/es-modules/masters/themes/gray.src.js +1 -1
  197. package/es-modules/masters/themes/grid-light.src.js +1 -1
  198. package/es-modules/masters/themes/grid.src.js +1 -1
  199. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  200. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  201. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  202. package/es-modules/masters/themes/skies.src.js +1 -1
  203. package/es-modules/masters/themes/sunset.src.js +1 -1
  204. package/highcharts-3d.js +2 -2
  205. package/highcharts-3d.src.js +2 -2
  206. package/highcharts-gantt.js +805 -802
  207. package/highcharts-gantt.js.map +1 -1
  208. package/highcharts-gantt.src.js +261 -144
  209. package/highcharts-more.js +5 -5
  210. package/highcharts-more.js.map +1 -1
  211. package/highcharts-more.src.js +6 -3
  212. package/highcharts.d.ts +1077 -53
  213. package/highcharts.js +591 -588
  214. package/highcharts.js.map +1 -1
  215. package/highcharts.src.d.ts +1077 -53
  216. package/highcharts.src.js +246 -136
  217. package/highmaps.js +758 -756
  218. package/highmaps.js.map +1 -1
  219. package/highmaps.src.js +336 -171
  220. package/highstock.js +792 -789
  221. package/highstock.js.map +1 -1
  222. package/highstock.src.js +272 -157
  223. package/indicators/acceleration-bands.js +1 -1
  224. package/indicators/acceleration-bands.src.js +1 -1
  225. package/indicators/accumulation-distribution.js +1 -1
  226. package/indicators/accumulation-distribution.src.js +1 -1
  227. package/indicators/ao.js +1 -1
  228. package/indicators/ao.src.js +1 -1
  229. package/indicators/apo.js +1 -1
  230. package/indicators/apo.src.js +1 -1
  231. package/indicators/aroon-oscillator.js +1 -1
  232. package/indicators/aroon-oscillator.src.js +1 -1
  233. package/indicators/aroon.js +1 -1
  234. package/indicators/aroon.src.js +1 -1
  235. package/indicators/atr.js +1 -1
  236. package/indicators/atr.src.js +1 -1
  237. package/indicators/bollinger-bands.js +1 -1
  238. package/indicators/bollinger-bands.src.js +1 -1
  239. package/indicators/cci.js +1 -1
  240. package/indicators/cci.src.js +1 -1
  241. package/indicators/chaikin.js +1 -1
  242. package/indicators/chaikin.src.js +1 -1
  243. package/indicators/cmf.js +1 -1
  244. package/indicators/cmf.src.js +1 -1
  245. package/indicators/cmo.js +1 -1
  246. package/indicators/cmo.src.js +1 -1
  247. package/indicators/dema.js +1 -1
  248. package/indicators/dema.src.js +1 -1
  249. package/indicators/disparity-index.js +1 -1
  250. package/indicators/disparity-index.src.js +1 -1
  251. package/indicators/dmi.js +1 -1
  252. package/indicators/dmi.src.js +1 -1
  253. package/indicators/dpo.js +1 -1
  254. package/indicators/dpo.src.js +1 -1
  255. package/indicators/ichimoku-kinko-hyo.js +1 -1
  256. package/indicators/ichimoku-kinko-hyo.src.js +1 -1
  257. package/indicators/indicators-all.js +1 -1
  258. package/indicators/indicators-all.src.js +1 -1
  259. package/indicators/indicators.js +1 -1
  260. package/indicators/indicators.src.js +1 -1
  261. package/indicators/keltner-channels.js +1 -1
  262. package/indicators/keltner-channels.src.js +1 -1
  263. package/indicators/klinger.js +1 -1
  264. package/indicators/klinger.src.js +1 -1
  265. package/indicators/macd.js +1 -1
  266. package/indicators/macd.src.js +1 -1
  267. package/indicators/mfi.js +1 -1
  268. package/indicators/mfi.src.js +1 -1
  269. package/indicators/momentum.js +1 -1
  270. package/indicators/momentum.src.js +1 -1
  271. package/indicators/natr.js +1 -1
  272. package/indicators/natr.src.js +1 -1
  273. package/indicators/obv.js +1 -1
  274. package/indicators/obv.src.js +1 -1
  275. package/indicators/pivot-points.js +1 -1
  276. package/indicators/pivot-points.src.js +1 -1
  277. package/indicators/ppo.js +1 -1
  278. package/indicators/ppo.src.js +1 -1
  279. package/indicators/price-channel.js +1 -1
  280. package/indicators/price-channel.src.js +1 -1
  281. package/indicators/price-envelopes.js +1 -1
  282. package/indicators/price-envelopes.src.js +1 -1
  283. package/indicators/psar.js +1 -1
  284. package/indicators/psar.src.js +1 -1
  285. package/indicators/regressions.js +1 -1
  286. package/indicators/regressions.src.js +1 -1
  287. package/indicators/roc.js +1 -1
  288. package/indicators/roc.src.js +1 -1
  289. package/indicators/rsi.js +1 -1
  290. package/indicators/rsi.src.js +1 -1
  291. package/indicators/slow-stochastic.js +1 -1
  292. package/indicators/slow-stochastic.src.js +1 -1
  293. package/indicators/stochastic.js +1 -1
  294. package/indicators/stochastic.src.js +1 -1
  295. package/indicators/supertrend.js +1 -1
  296. package/indicators/supertrend.src.js +1 -1
  297. package/indicators/tema.js +1 -1
  298. package/indicators/tema.src.js +1 -1
  299. package/indicators/trendline.js +1 -1
  300. package/indicators/trendline.src.js +1 -1
  301. package/indicators/trix.js +1 -1
  302. package/indicators/trix.src.js +1 -1
  303. package/indicators/volume-by-price.js +1 -1
  304. package/indicators/volume-by-price.src.js +1 -1
  305. package/indicators/vwap.js +1 -1
  306. package/indicators/vwap.src.js +1 -1
  307. package/indicators/williams-r.js +1 -1
  308. package/indicators/williams-r.src.js +1 -1
  309. package/indicators/wma.js +1 -1
  310. package/indicators/wma.src.js +1 -1
  311. package/indicators/zigzag.js +1 -1
  312. package/indicators/zigzag.src.js +1 -1
  313. package/modules/accessibility.js +240 -238
  314. package/modules/accessibility.js.map +1 -1
  315. package/modules/accessibility.src.js +220 -87
  316. package/modules/annotations-advanced.js +6 -6
  317. package/modules/annotations-advanced.js.map +1 -1
  318. package/modules/annotations-advanced.src.js +14 -6
  319. package/modules/annotations.js +6 -6
  320. package/modules/annotations.js.map +1 -1
  321. package/modules/annotations.src.js +14 -6
  322. package/modules/arc-diagram.js +7 -7
  323. package/modules/arc-diagram.js.map +1 -1
  324. package/modules/arc-diagram.src.js +10 -2
  325. package/modules/arrow-symbols.js +1 -1
  326. package/modules/arrow-symbols.src.js +1 -1
  327. package/modules/boost-canvas.js +1 -1
  328. package/modules/boost-canvas.src.js +1 -1
  329. package/modules/boost.js +1 -1
  330. package/modules/boost.src.js +1 -1
  331. package/modules/broken-axis.js +1 -1
  332. package/modules/broken-axis.src.js +1 -1
  333. package/modules/bullet.js +1 -1
  334. package/modules/bullet.src.js +1 -1
  335. package/modules/coloraxis.js +1 -1
  336. package/modules/coloraxis.src.js +1 -1
  337. package/modules/current-date-indicator.js +1 -1
  338. package/modules/current-date-indicator.src.js +1 -1
  339. package/modules/cylinder.js +1 -1
  340. package/modules/cylinder.src.js +1 -1
  341. package/modules/data.js +1 -1
  342. package/modules/data.src.js +1 -1
  343. package/modules/datagrouping.js +7 -7
  344. package/modules/datagrouping.js.map +1 -1
  345. package/modules/datagrouping.src.js +4 -2
  346. package/modules/debugger.js +6 -5
  347. package/modules/debugger.js.map +1 -1
  348. package/modules/debugger.src.js +5 -1
  349. package/modules/dependency-wheel.js +1 -1
  350. package/modules/dependency-wheel.src.js +1 -1
  351. package/modules/dotplot.js +1 -1
  352. package/modules/dotplot.src.js +1 -1
  353. package/modules/drag-panes.js +1 -1
  354. package/modules/drag-panes.src.js +1 -1
  355. package/modules/draggable-points.js +1 -1
  356. package/modules/draggable-points.src.js +1 -1
  357. package/modules/drilldown.js +36 -37
  358. package/modules/drilldown.js.map +1 -1
  359. package/modules/drilldown.src.js +9 -9
  360. package/modules/dumbbell.js +1 -1
  361. package/modules/dumbbell.src.js +1 -1
  362. package/modules/export-data.js +13 -13
  363. package/modules/export-data.js.map +1 -1
  364. package/modules/export-data.src.js +2 -3
  365. package/modules/exporting.js +39 -39
  366. package/modules/exporting.js.map +1 -1
  367. package/modules/exporting.src.js +146 -75
  368. package/modules/full-screen.js +8 -8
  369. package/modules/full-screen.js.map +1 -1
  370. package/modules/full-screen.src.js +125 -57
  371. package/modules/funnel.js +1 -1
  372. package/modules/funnel.src.js +1 -1
  373. package/modules/funnel3d.js +1 -1
  374. package/modules/funnel3d.src.js +1 -1
  375. package/modules/gantt.js +218 -217
  376. package/modules/gantt.js.map +1 -1
  377. package/modules/gantt.src.js +16 -9
  378. package/modules/grid-axis.js +21 -21
  379. package/modules/grid-axis.js.map +1 -1
  380. package/modules/grid-axis.src.js +6 -3
  381. package/modules/heatmap.js +40 -40
  382. package/modules/heatmap.js.map +1 -1
  383. package/modules/heatmap.src.js +14 -21
  384. package/modules/heikinashi.js +1 -1
  385. package/modules/heikinashi.src.js +1 -1
  386. package/modules/histogram-bellcurve.js +1 -1
  387. package/modules/histogram-bellcurve.src.js +1 -1
  388. package/modules/hollowcandlestick.js +1 -1
  389. package/modules/hollowcandlestick.src.js +1 -1
  390. package/modules/item-series.js +1 -1
  391. package/modules/item-series.src.js +1 -1
  392. package/modules/lollipop.js +1 -1
  393. package/modules/lollipop.src.js +1 -1
  394. package/modules/map.js +169 -169
  395. package/modules/map.js.map +1 -1
  396. package/modules/map.src.js +91 -36
  397. package/modules/marker-clusters.js +1 -1
  398. package/modules/marker-clusters.src.js +1 -1
  399. package/modules/networkgraph.js +1 -1
  400. package/modules/networkgraph.src.js +1 -1
  401. package/modules/no-data-to-display.js +1 -1
  402. package/modules/no-data-to-display.src.js +1 -1
  403. package/modules/offline-exporting.js +2 -2
  404. package/modules/offline-exporting.src.js +2 -2
  405. package/modules/oldie-polyfills.js +1 -1
  406. package/modules/oldie-polyfills.src.js +1 -1
  407. package/modules/oldie.js +2 -2
  408. package/modules/oldie.src.js +2 -2
  409. package/modules/organization.js +1 -1
  410. package/modules/organization.src.js +1 -1
  411. package/modules/overlapping-datalabels.js +1 -1
  412. package/modules/overlapping-datalabels.src.js +1 -1
  413. package/modules/parallel-coordinates.js +1 -1
  414. package/modules/parallel-coordinates.src.js +1 -1
  415. package/modules/pareto.js +1 -1
  416. package/modules/pareto.src.js +1 -1
  417. package/modules/pathfinder.js +1 -1
  418. package/modules/pathfinder.src.js +1 -1
  419. package/modules/pattern-fill.js +1 -1
  420. package/modules/pattern-fill.src.js +1 -1
  421. package/modules/price-indicator.js +1 -1
  422. package/modules/price-indicator.src.js +1 -1
  423. package/modules/pyramid3d.js +1 -1
  424. package/modules/pyramid3d.src.js +1 -1
  425. package/modules/sankey.js +5 -5
  426. package/modules/sankey.js.map +1 -1
  427. package/modules/sankey.src.js +4 -2
  428. package/modules/series-label.js +1 -1
  429. package/modules/series-label.src.js +1 -1
  430. package/modules/solid-gauge.js +1 -1
  431. package/modules/solid-gauge.src.js +1 -1
  432. package/modules/sonification.js +1 -1
  433. package/modules/sonification.src.js +1 -1
  434. package/modules/static-scale.js +1 -1
  435. package/modules/static-scale.src.js +1 -1
  436. package/modules/stock-tools.js +137 -137
  437. package/modules/stock-tools.js.map +1 -1
  438. package/modules/stock-tools.src.js +46 -30
  439. package/modules/stock.js +204 -204
  440. package/modules/stock.js.map +1 -1
  441. package/modules/stock.src.js +27 -22
  442. package/modules/streamgraph.js +1 -1
  443. package/modules/streamgraph.src.js +1 -1
  444. package/modules/sunburst.js +69 -69
  445. package/modules/sunburst.js.map +1 -1
  446. package/modules/sunburst.src.js +4 -6
  447. package/modules/tilemap.js +1 -1
  448. package/modules/tilemap.src.js +1 -1
  449. package/modules/timeline.js +1 -1
  450. package/modules/timeline.src.js +1 -1
  451. package/modules/treegrid.js +56 -56
  452. package/modules/treegrid.js.map +1 -1
  453. package/modules/treegrid.src.js +6 -3
  454. package/modules/treemap.js +50 -50
  455. package/modules/treemap.js.map +1 -1
  456. package/modules/treemap.src.js +3 -5
  457. package/modules/variable-pie.js +1 -1
  458. package/modules/variable-pie.src.js +1 -1
  459. package/modules/variwide.js +1 -1
  460. package/modules/variwide.src.js +1 -1
  461. package/modules/vector.js +1 -1
  462. package/modules/vector.src.js +1 -1
  463. package/modules/venn.js +1 -1
  464. package/modules/venn.src.js +1 -1
  465. package/modules/windbarb.js +1 -1
  466. package/modules/windbarb.src.js +1 -1
  467. package/modules/wordcloud.js +4 -3
  468. package/modules/wordcloud.js.map +1 -1
  469. package/modules/wordcloud.src.js +5 -5
  470. package/modules/xrange.js +1 -1
  471. package/modules/xrange.src.js +1 -1
  472. package/package.json +1 -1
  473. package/themes/avocado.js +1 -1
  474. package/themes/avocado.src.js +1 -1
  475. package/themes/brand-dark.js +1 -1
  476. package/themes/brand-dark.src.js +1 -1
  477. package/themes/brand-light.js +1 -1
  478. package/themes/brand-light.src.js +1 -1
  479. package/themes/dark-blue.js +1 -1
  480. package/themes/dark-blue.src.js +1 -1
  481. package/themes/dark-green.js +1 -1
  482. package/themes/dark-green.src.js +1 -1
  483. package/themes/dark-unica.js +1 -1
  484. package/themes/dark-unica.src.js +1 -1
  485. package/themes/gray.js +1 -1
  486. package/themes/gray.src.js +1 -1
  487. package/themes/grid-light.js +1 -1
  488. package/themes/grid-light.src.js +1 -1
  489. package/themes/grid.js +1 -1
  490. package/themes/grid.src.js +1 -1
  491. package/themes/high-contrast-dark.js +2 -2
  492. package/themes/high-contrast-dark.src.js +11 -11
  493. package/themes/high-contrast-light.js +2 -2
  494. package/themes/high-contrast-light.src.js +10 -10
  495. package/themes/sand-signika.js +1 -1
  496. package/themes/sand-signika.src.js +1 -1
  497. package/themes/skies.js +1 -1
  498. package/themes/skies.src.js +1 -1
  499. package/themes/sunset.js +1 -1
  500. package/themes/sunset.src.js +1 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highcharts JS v10.0.0 (2022-03-07)
2
+ * @license Highcharts JS v10.1.0 (2022-04-29)
3
3
  *
4
4
  * Accessibility module
5
5
  *
@@ -52,7 +52,8 @@
52
52
  *
53
53
  * */
54
54
  var format = F.format;
55
- var pick = U.pick;
55
+ var getNestedProperty = U.getNestedProperty,
56
+ pick = U.pick;
56
57
  /* *
57
58
  *
58
59
  * Composition
@@ -111,7 +112,7 @@
111
112
  var lenArg = Number(eachArguments[1]),
112
113
  len = void 0;
113
114
  result = '';
114
- arr = ctx[eachArguments[0]];
115
+ arr = getNestedProperty(eachArguments[0], ctx);
115
116
  if (arr) {
116
117
  lenArg = isNaN(lenArg) ? arr.length : lenArg;
117
118
  len = lenArg < 0 ?
@@ -126,7 +127,7 @@
126
127
  }
127
128
  // Dealing with a plural-function?
128
129
  if (pluralStart > -1) {
129
- var pluralEnd = (statement.slice(pluralStart).indexOf(')') + pluralStart), pluralStatement = statement.substring(pluralStart + 8, pluralEnd), pluralArguments = pluralStatement.split(','), num = Number(ctx[pluralArguments[0]]);
130
+ var pluralEnd = (statement.slice(pluralStart).indexOf(')') + pluralStart), pluralStatement = statement.substring(pluralStart + 8, pluralEnd), pluralArguments = pluralStatement.split(','), num = Number(getNestedProperty(pluralArguments[0], ctx));
130
131
  switch (num) {
131
132
  case 0:
132
133
  result = pick(pluralArguments[4], pluralArguments[1]);
@@ -149,7 +150,7 @@
149
150
  ix = Number(statement.substring(indexStart + 1,
150
151
  indexEnd));
151
152
  var val = void 0;
152
- arr = ctx[arrayName];
153
+ arr = getNestedProperty(arrayName, ctx);
153
154
  if (!isNaN(ix) && arr) {
154
155
  if (ix < 0) {
155
156
  val = arr[arr.length + ix];
@@ -768,9 +769,11 @@
768
769
  */
769
770
  function getAxisTimeLengthDesc(axis) {
770
771
  var chart = axis.chart,
771
- range = {};
772
+ range = {},
773
+ min = axis.dataMin || axis.min || 0,
774
+ max = axis.dataMax || axis.max || 0;
772
775
  var rangeUnit = 'Seconds';
773
- range.Seconds = ((axis.max || 0) - (axis.min || 0)) / 1000;
776
+ range.Seconds = (max - min) / 1000;
774
777
  range.Minutes = range.Seconds / 60;
775
778
  range.Hours = range.Minutes / 60;
776
779
  range.Days = range.Hours / 24;
@@ -800,9 +803,15 @@
800
803
  options.accessibility &&
801
804
  options.accessibility.screenReaderSection.axisRangeDateFormat ||
802
805
  ''),
803
- format = function (axisKey) {
804
- return axis.dateTime ? chart.time.dateFormat(dateRangeFormat,
805
- axis[axisKey]) : axis[axisKey];
806
+ extremes = {
807
+ min: axis.dataMin || axis.min || 0,
808
+ max: axis.dataMax || axis.max || 0
809
+ },
810
+ format = function (key) {
811
+ return axis.dateTime ?
812
+ chart.time.dateFormat(dateRangeFormat,
813
+ extremes[key]) :
814
+ extremes[key].toString();
806
815
  };
807
816
  return chart.langFormat('accessibility.axis.rangeFromTo', {
808
817
  chart: chart,
@@ -1463,20 +1472,19 @@
1463
1472
  }
1464
1473
  };
1465
1474
  /**
1475
+ * Set attributes on the chart container element.
1466
1476
  * @private
1467
1477
  */
1468
1478
  ContainerComponent.prototype.setRenderToAttrs = function () {
1469
- var chart = this.chart;
1470
- if (chart.options.accessibility.landmarkVerbosity !== 'disabled') {
1471
- chart.renderTo.setAttribute('role', 'region');
1472
- }
1473
- else {
1474
- chart.renderTo.removeAttribute('role');
1479
+ var chart = this.chart, shouldHaveLandmark = chart.options.accessibility
1480
+ .landmarkVerbosity !== 'disabled', containerLabel = chart.langFormat('accessibility.chartContainerLabel', {
1481
+ title: getChartTitle(chart),
1482
+ chart: chart
1483
+ });
1484
+ if (containerLabel) {
1485
+ chart.renderTo.setAttribute('role', shouldHaveLandmark ? 'region' : 'group');
1486
+ chart.renderTo.setAttribute('aria-label', containerLabel);
1475
1487
  }
1476
- chart.renderTo.setAttribute('aria-label', chart.langFormat('accessibility.chartContainerLabel', {
1477
- title: getChartTitle(chart),
1478
- chart: chart
1479
- }));
1480
1488
  };
1481
1489
  /**
1482
1490
  * @private
@@ -1681,15 +1689,21 @@
1681
1689
  }
1682
1690
  // Add the border rect
1683
1691
  var bb = this.getBBox(),
1684
- pad = pick(margin, 3);
1692
+ pad = pick(margin, 3),
1693
+ parent = this.parentGroup,
1694
+ scaleX = this.scaleX || parent && parent.scaleX,
1695
+ scaleY = this.scaleY || parent && parent.scaleY,
1696
+ oneDefined = scaleX ? !scaleY : scaleY,
1697
+ scaleBoth = oneDefined ? Math.abs(scaleX || scaleY || 1) :
1698
+ (Math.abs(scaleX || 1) + Math.abs(scaleY || 1)) / 2;
1685
1699
  bb.x += this.translateX ? this.translateX : 0;
1686
1700
  bb.y += this.translateY ? this.translateY : 0;
1687
1701
  var borderPosX = bb.x - pad,
1688
1702
  borderPosY = bb.y - pad,
1689
1703
  borderWidth = bb.width + 2 * pad,
1690
1704
  borderHeight = bb.height + 2 * pad;
1691
- // For text elements, apply x and y offset, #11397.
1692
1705
  /**
1706
+ * For text elements, apply x and y offset, #11397.
1693
1707
  * @private
1694
1708
  */
1695
1709
  function getTextAnchorCorrection(text) {
@@ -1737,16 +1751,16 @@
1737
1751
  }
1738
1752
  }
1739
1753
  }
1740
- this.focusBorder = this.renderer.rect(borderPosX, borderPosY, borderWidth, borderHeight, parseInt((attribs && attribs.r || 0).toString(), 10))
1754
+ this.focusBorder = this.renderer.rect(borderPosX, borderPosY, borderWidth, borderHeight, parseInt((attribs && attribs.r || 0).toString(), 10) / scaleBoth)
1741
1755
  .addClass('highcharts-focus-border')
1742
1756
  .attr({
1743
1757
  zIndex: 99
1744
1758
  })
1745
- .add(this.parentGroup);
1759
+ .add(parent);
1746
1760
  if (!this.renderer.styledMode) {
1747
1761
  this.focusBorder.attr({
1748
1762
  stroke: attribs && attribs.stroke,
1749
- 'stroke-width': attribs && attribs.strokeWidth
1763
+ 'stroke-width': (attribs && attribs.strokeWidth || 0) / scaleBoth
1750
1764
  });
1751
1765
  }
1752
1766
  avgElementAddUpdateFocusBorderHooks(this, margin, attribs);
@@ -2185,11 +2199,13 @@
2185
2199
  function getTypeDescription(chart, types) {
2186
2200
  var firstType = types[0],
2187
2201
  firstSeries = chart.series && chart.series[0] || {},
2202
+ mapTitle = chart.mapView && chart.mapView.geoMap &&
2203
+ chart.mapView.geoMap.title,
2188
2204
  formatContext = {
2189
2205
  numSeries: chart.series.length,
2190
2206
  numPoints: firstSeries.points && firstSeries.points.length,
2191
2207
  chart: chart,
2192
- mapTitle: firstSeries.mapTitle
2208
+ mapTitle: mapTitle
2193
2209
  };
2194
2210
  if (!firstType) {
2195
2211
  return getTypeDescForEmptyChart(chart, formatContext);
@@ -2383,23 +2399,27 @@
2383
2399
  }
2384
2400
  };
2385
2401
  /**
2402
+ * Apply a11y attributes to a screen reader info section
2386
2403
  * @private
2387
2404
  * @param {Highcharts.HTMLDOMElement} sectionDiv The section element
2388
2405
  * @param {string} regionKey Name/key of the region we are setting attrs for
2389
2406
  */
2390
2407
  InfoRegionsComponent.prototype.setScreenReaderSectionAttribs = function (sectionDiv, regionKey) {
2391
- var labelLangKey = ('accessibility.screenReaderSection.' + regionKey + 'RegionLabel'), chart = this.chart, labelText = chart.langFormat(labelLangKey, { chart: chart, chartTitle: getChartTitle(chart) }), sectionId = 'highcharts-screen-reader-region-' + regionKey + '-' +
2392
- chart.index;
2408
+ var chart = this.chart,
2409
+ labelText = chart.langFormat('accessibility.screenReaderSection.' + regionKey +
2410
+ 'RegionLabel', { chart: chart,
2411
+ chartTitle: getChartTitle(chart) }),
2412
+ sectionId = "highcharts-screen-reader-region-" + regionKey + "-" + chart.index;
2393
2413
  attr(sectionDiv, {
2394
2414
  id: sectionId,
2395
- 'aria-label': labelText
2415
+ 'aria-label': labelText || void 0
2396
2416
  });
2397
2417
  // Sections are wrapped to be positioned relatively to chart in case
2398
2418
  // elements inside are tabbed to.
2399
2419
  sectionDiv.style.position = 'relative';
2400
- if (chart.options.accessibility.landmarkVerbosity === 'all' &&
2401
- labelText) {
2402
- sectionDiv.setAttribute('role', 'region');
2420
+ if (labelText) {
2421
+ sectionDiv.setAttribute('role', chart.options.accessibility.landmarkVerbosity === 'all' ?
2422
+ 'region' : 'group');
2403
2423
  }
2404
2424
  };
2405
2425
  /**
@@ -2620,7 +2640,10 @@
2620
2640
  return axes.length > 1 || axes[0] &&
2621
2641
  pick(axes[0].options.accessibility &&
2622
2642
  axes[0].options.accessibility.enabled, defaultCondition);
2623
- }, hasNoMap = !!chart.types && chart.types.indexOf('map') < 0, hasCartesian = !!chart.hasCartesianSeries, showXAxes = shouldDescribeColl('xAxis', !chart.angular && hasCartesian && hasNoMap), showYAxes = shouldDescribeColl('yAxis', hasCartesian && hasNoMap), desc = {};
2643
+ }, hasNoMap = !!chart.types &&
2644
+ chart.types.indexOf('map') < 0 &&
2645
+ chart.types.indexOf('treemap') < 0 &&
2646
+ chart.types.indexOf('tilemap') < 0, hasCartesian = !!chart.hasCartesianSeries, showXAxes = shouldDescribeColl('xAxis', !chart.angular && hasCartesian && hasNoMap), showYAxes = shouldDescribeColl('yAxis', hasCartesian && hasNoMap), desc = {};
2624
2647
  if (showXAxes) {
2625
2648
  desc.xAxis = this.getAxisDescriptionText('xAxis');
2626
2649
  }
@@ -4152,14 +4175,21 @@
4152
4175
  }) || null;
4153
4176
  }
4154
4177
  /**
4178
+ * Whether or not we should add a dummy point element in
4179
+ * order to describe a point that has no graphic.
4155
4180
  * @private
4156
4181
  */
4157
4182
  function shouldAddDummyPoint(point) {
4158
4183
  // Note: Sunburst series use isNull for hidden points on drilldown.
4159
4184
  // Ignore these.
4160
- var isSunburst = point.series && point.series.is('sunburst'),
4161
- isNull = point.isNull;
4162
- return isNull && !isSunburst;
4185
+ var series = point.series,
4186
+ chart = series && series.chart,
4187
+ isSunburst = series && series.is('sunburst'),
4188
+ isNull = point.isNull,
4189
+ shouldDescribeNull = chart &&
4190
+ chart
4191
+ .options.accessibility.point.describeNull;
4192
+ return isNull && !isSunburst && shouldDescribeNull;
4163
4193
  }
4164
4194
  /**
4165
4195
  * @private
@@ -4440,15 +4470,21 @@
4440
4470
  */
4441
4471
  function describePointsInSeries(series) {
4442
4472
  var setScreenReaderProps = shouldSetScreenReaderPropsOnPoints(series),
4443
- setKeyboardProps = shouldSetKeyboardNavPropsOnPoints(series);
4473
+ setKeyboardProps = shouldSetKeyboardNavPropsOnPoints(series),
4474
+ shouldDescribeNullPoints = series.chart.options.accessibility
4475
+ .point.describeNull;
4444
4476
  if (setScreenReaderProps || setKeyboardProps) {
4445
4477
  series.points.forEach(function (point) {
4446
4478
  var pointEl = point.graphic && point.graphic.element ||
4447
- shouldAddDummyPoint(point) && addDummyPointElement(point);
4448
- var pointA11yDisabled = (point.options &&
4479
+ shouldAddDummyPoint(point) && addDummyPointElement(point),
4480
+ pointA11yDisabled = (point.options &&
4449
4481
  point.options.accessibility &&
4450
4482
  point.options.accessibility.enabled === false);
4451
4483
  if (pointEl) {
4484
+ if (point.isNull && !shouldDescribeNullPoints) {
4485
+ pointEl.setAttribute('aria-hidden', true);
4486
+ return;
4487
+ }
4452
4488
  // We always set tabindex, as long as we are setting props.
4453
4489
  // When setting tabindex, also remove default outline to
4454
4490
  // avoid ugly border on click.
@@ -4476,14 +4512,19 @@
4476
4512
  description = getSeriesDescriptionText(series),
4477
4513
  shouldDescribeAxis = function (coll) {
4478
4514
  return chart[coll] && chart[coll].length > 1 && series[coll];
4479
- }, xAxisInfo = getSeriesAxisDescriptionText(series, 'xAxis'), yAxisInfo = getSeriesAxisDescriptionText(series, 'yAxis'), summaryContext = {
4480
- name: series.name || '',
4481
- ix: series.index + 1,
4482
- numSeries: chart.series && chart.series.length,
4483
- numPoints: series.points && series.points.length,
4484
- series: series
4485
- }, combinationSuffix = chartTypes.length > 1 ? 'Combination' : '', summary = chart.langFormat('accessibility.series.summary.' + series.type + combinationSuffix, summaryContext) || chart.langFormat('accessibility.series.summary.default' + combinationSuffix, summaryContext);
4486
- return summary + (description ? ' ' + description : '') + (shouldDescribeAxis('yAxis') ? ' ' + yAxisInfo : '') + (shouldDescribeAxis('xAxis') ? ' ' + xAxisInfo : '');
4515
+ }, seriesNumber = series.index + 1, xAxisInfo = getSeriesAxisDescriptionText(series, 'xAxis'), yAxisInfo = getSeriesAxisDescriptionText(series, 'yAxis'), summaryContext = {
4516
+ seriesNumber: seriesNumber,
4517
+ series: series,
4518
+ chart: chart
4519
+ }, combinationSuffix = chartTypes.length > 1 ? 'Combination' : '', summary = chart.langFormat('accessibility.series.summary.' + series.type + combinationSuffix, summaryContext) || chart.langFormat('accessibility.series.summary.default' + combinationSuffix, summaryContext), axisDescription = (shouldDescribeAxis('yAxis') ? ' ' + yAxisInfo + '.' : '') + (shouldDescribeAxis('xAxis') ? ' ' + xAxisInfo + '.' : ''), formatStr = chart.options.accessibility.series.descriptionFormat || '';
4520
+ return format(formatStr, {
4521
+ seriesDescription: summary,
4522
+ authorDescription: (description ? ' ' + description : ''),
4523
+ axisDescription: axisDescription,
4524
+ series: series,
4525
+ chart: chart,
4526
+ seriesNumber: seriesNumber
4527
+ }, void 0);
4487
4528
  }
4488
4529
  /**
4489
4530
  * Set a11y props on a series element
@@ -4501,7 +4542,10 @@
4501
4542
  }
4502
4543
  else if (landmarkVerbosity === 'all') {
4503
4544
  seriesElement.setAttribute('role', 'region');
4504
- } /* else do not add role */
4545
+ }
4546
+ else {
4547
+ seriesElement.setAttribute('role', 'group');
4548
+ }
4505
4549
  seriesElement.setAttribute('tabindex', '-1');
4506
4550
  if (!series.chart.styledMode) {
4507
4551
  // Don't show browser outline on click, despite tabindex
@@ -4534,7 +4578,7 @@
4534
4578
  describeSeriesElement(series, seriesEl);
4535
4579
  }
4536
4580
  else {
4537
- seriesEl.setAttribute('aria-label', '');
4581
+ seriesEl.removeAttribute('aria-label');
4538
4582
  }
4539
4583
  }
4540
4584
  }
@@ -8822,8 +8866,7 @@
8822
8866
  }]
8823
8867
  ],
8824
8868
  init: function () {
8825
- highlightFirstValidPointInChart(chart);
8826
- return this.response.success;
8869
+ return keyboardNavigation.onHandlerInit(this);
8827
8870
  },
8828
8871
  validate: function () {
8829
8872
  return !!getFirstValidPointInChart(chart);
@@ -8845,6 +8888,25 @@
8845
8888
  isNext = keyCode === keys.right || keyCode === keys.down;
8846
8889
  return this.attemptHighlightAdjacentPoint(handler, isNext);
8847
8890
  };
8891
+ /**
8892
+ * When keyboard navigation inits.
8893
+ * @private
8894
+ * @param {Highcharts.KeyboardNavigationHandler} handler The handler object
8895
+ * @return {number}
8896
+ * response
8897
+ */
8898
+ SeriesKeyboardNavigation.prototype.onHandlerInit = function (handler) {
8899
+ var chart = this.chart,
8900
+ kbdNavOptions = chart.options.accessibility.keyboardNavigation;
8901
+ if (kbdNavOptions.seriesNavigation.rememberPointFocus &&
8902
+ chart.highlightedPoint) {
8903
+ chart.highlightedPoint.highlight();
8904
+ }
8905
+ else {
8906
+ highlightFirstValidPointInChart(chart);
8907
+ }
8908
+ return handler.response.success;
8909
+ };
8848
8910
  /**
8849
8911
  * @private
8850
8912
  * @param {Highcharts.KeyboardNavigationHandler} handler
@@ -8874,7 +8936,8 @@
8874
8936
  * @private
8875
8937
  */
8876
8938
  SeriesKeyboardNavigation.prototype.onHandlerTerminate = function () {
8877
- var chart = this.chart;
8939
+ var chart = this.chart,
8940
+ kbdNavOptions = chart.options.accessibility.keyboardNavigation;
8878
8941
  if (chart.tooltip) {
8879
8942
  chart.tooltip.hide(0);
8880
8943
  }
@@ -8885,7 +8948,9 @@
8885
8948
  if (chart.highlightedPoint && chart.highlightedPoint.onMouseOut) {
8886
8949
  chart.highlightedPoint.onMouseOut();
8887
8950
  }
8888
- delete chart.highlightedPoint;
8951
+ if (!kbdNavOptions.seriesNavigation.rememberPointFocus) {
8952
+ delete chart.highlightedPoint;
8953
+ }
8889
8954
  };
8890
8955
  /**
8891
8956
  * Function that attempts to highlight next/prev point. Handles wrap around.
@@ -10206,7 +10271,17 @@
10206
10271
  */
10207
10272
  accessibility: {
10208
10273
  /**
10209
- * Enable accessibility functionality for the chart.
10274
+ * Enable accessibility functionality for the chart. For more
10275
+ * information on how to include these features, and why this is
10276
+ * recommended, see [Highcharts Accessibility](https://www.highcharts.com/docs/accessibility/accessibility-module).
10277
+ *
10278
+ * Highcharts will by default emit a warning to the console if
10279
+ * the [accessibility module](https://code.highcharts.com/modules/accessibility.js)
10280
+ * is not loaded. Setting this option to `false` will override
10281
+ * and silence the warning.
10282
+ *
10283
+ * Once the module is loaded, setting this option to `false`
10284
+ * will disable the module for this chart.
10210
10285
  *
10211
10286
  * @since 5.0.0
10212
10287
  */
@@ -10320,12 +10395,43 @@
10320
10395
  * of the series for a screen reader user. If `false` is returned,
10321
10396
  * the default formatter will be used for that series.
10322
10397
  *
10398
+ * @see [series.descriptionFormat](#accessibility.series.descriptionFormat)
10323
10399
  * @see [series.description](#plotOptions.series.description)
10324
10400
  *
10325
10401
  * @type {Highcharts.ScreenReaderFormatterCallbackFunction<Highcharts.Series>}
10326
10402
  * @since 8.0.0
10327
10403
  * @apioption accessibility.series.descriptionFormatter
10328
10404
  */
10405
+ /**
10406
+ * Format to use for describing the data series group to assistive
10407
+ * technology - including screen readers.
10408
+ *
10409
+ * The series context and its subproperties are available under the
10410
+ * variable `{series}`, for example `{series.name}` for the series
10411
+ * name, and `{series.points.length}` for the number of data points.
10412
+ *
10413
+ * The chart context and its subproperties are available under the
10414
+ * variable `{chart}`, for example `{chart.series.length}` for the
10415
+ * number of series in the chart.
10416
+ *
10417
+ * `{seriesDescription}` refers to the automatic description of the
10418
+ * series type and number of points added by Highcharts by default.
10419
+ * `{authorDescription}` refers to the description added in
10420
+ * [series.description](#plotOptions.series.description) if one is
10421
+ * present. `{axisDescription}` refers to the description added if
10422
+ * the chart has multiple X or Y axes.
10423
+ *
10424
+ * Note that if [series.descriptionFormatter](#accessibility.series.descriptionFormatter)
10425
+ * is declared it will take precedence, and this option will be
10426
+ * overridden.
10427
+ *
10428
+ * @sample highcharts/accessibility/advanced-accessible
10429
+ * Accessible low-medium-high chart
10430
+ *
10431
+ * @type {string}
10432
+ * @since 10.1.0
10433
+ */
10434
+ descriptionFormat: '{seriesDescription}{authorDescription}{axisDescription}',
10329
10435
  /**
10330
10436
  * Whether or not to add series descriptions to charts with a single
10331
10437
  * series.
@@ -10427,6 +10533,8 @@
10427
10533
  * to assistive technology - including screen readers.
10428
10534
  * The point context is available as `{point}`.
10429
10535
  *
10536
+ * Other available context variables include `{index}`, `{value}`, and `{xDescription}`.
10537
+ *
10430
10538
  * Additionally, the series name, annotation info, and
10431
10539
  * description added in `point.accessibility.description`
10432
10540
  * is added by default if relevant. To override this, use the
@@ -10439,7 +10547,18 @@
10439
10547
  * @type {string}
10440
10548
  * @since 8.0.1
10441
10549
  */
10442
- valueDescriptionFormat: '{index}. {xDescription}{separator}{value}.'
10550
+ valueDescriptionFormat: '{xDescription}{separator}{value}.',
10551
+ /**
10552
+ * Whether or not to describe points with the value `null` to
10553
+ * assistive technology, such as screen readers.
10554
+ *
10555
+ * @sample {highmaps} maps/demo/all-areas-as-null
10556
+ * Accessible map with null points
10557
+ *
10558
+ * @type {boolean}
10559
+ * @since 10.1.0
10560
+ */
10561
+ describeNull: true
10443
10562
  },
10444
10563
  /**
10445
10564
  * Amount of landmarks/regions to create for screen reader users. More
@@ -10683,7 +10802,16 @@
10683
10802
  * @type {boolean|number}
10684
10803
  * @since 8.0.0
10685
10804
  */
10686
- pointNavigationEnabledThreshold: false
10805
+ pointNavigationEnabledThreshold: false,
10806
+ /**
10807
+ * Remember which point was focused even after navigating away
10808
+ * from the series, so that when navigating back to the series
10809
+ * you start at the last focused point.
10810
+ *
10811
+ * @type {boolean}
10812
+ * @since 10.1.0
10813
+ */
10814
+ rememberPointFocus: false
10687
10815
  }
10688
10816
  },
10689
10817
  /**
@@ -11017,7 +11145,7 @@
11017
11145
  * @since 8.0.0
11018
11146
  */
11019
11147
  screenReaderSection: {
11020
- beforeRegionLabel: 'Chart screen reader information, {chartTitle}.',
11148
+ beforeRegionLabel: '',
11021
11149
  afterRegionLabel: '',
11022
11150
  /**
11023
11151
  * Language options for annotation descriptions.
@@ -11183,12 +11311,12 @@
11183
11311
  xAxisDescriptionPlural: 'The chart has {numAxes} X axes displaying {#each(names, -1) }and {names[-1]}.',
11184
11312
  yAxisDescriptionSingular: 'The chart has 1 Y axis displaying {names[0]}. {ranges[0]}',
11185
11313
  yAxisDescriptionPlural: 'The chart has {numAxes} Y axes displaying {#each(names, -1) }and {names[-1]}.',
11186
- timeRangeDays: 'Range: {range} days.',
11187
- timeRangeHours: 'Range: {range} hours.',
11188
- timeRangeMinutes: 'Range: {range} minutes.',
11189
- timeRangeSeconds: 'Range: {range} seconds.',
11190
- rangeFromTo: 'Range: {rangeFrom} to {rangeTo}.',
11191
- rangeCategories: 'Range: {numCategories} categories.'
11314
+ timeRangeDays: 'Data range: {range} days.',
11315
+ timeRangeHours: 'Data range: {range} hours.',
11316
+ timeRangeMinutes: 'Data range: {range} minutes.',
11317
+ timeRangeSeconds: 'Data range: {range} seconds.',
11318
+ rangeFromTo: 'Data ranges from {rangeFrom} to {rangeTo}.',
11319
+ rangeCategories: 'Data range: {numCategories} categories.'
11192
11320
  },
11193
11321
  /**
11194
11322
  * Exporting menu format strings for accessibility module.
@@ -11219,34 +11347,39 @@
11219
11347
  * If a definition does not exist for the specific series type
11220
11348
  * and mode, the 'default' lang definitions are used.
11221
11349
  *
11350
+ * Chart and its subproperties can be accessed with the `{chart}` variable.
11351
+ * The series and its subproperties can be accessed with the `{series}` variable.
11352
+ *
11353
+ * The series index (starting from 1) can be accessed with the `{seriesNumber}` variable.
11354
+ *
11222
11355
  * @since 6.0.6
11223
11356
  */
11224
11357
  summary: {
11225
11358
  /* eslint-disable max-len */
11226
- 'default': '{name}, series {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.',
11227
- defaultCombination: '{name}, series {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.',
11228
- line: '{name}, line {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.',
11229
- lineCombination: '{name}, series {ix} of {numSeries}. Line with {numPoints} data {#plural(numPoints, points, point)}.',
11230
- spline: '{name}, line {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.',
11231
- splineCombination: '{name}, series {ix} of {numSeries}. Line with {numPoints} data {#plural(numPoints, points, point)}.',
11232
- column: '{name}, bar series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bars, bar)}.',
11233
- columnCombination: '{name}, series {ix} of {numSeries}. Bar series with {numPoints} {#plural(numPoints, bars, bar)}.',
11234
- bar: '{name}, bar series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bars, bar)}.',
11235
- barCombination: '{name}, series {ix} of {numSeries}. Bar series with {numPoints} {#plural(numPoints, bars, bar)}.',
11236
- pie: '{name}, pie {ix} of {numSeries} with {numPoints} {#plural(numPoints, slices, slice)}.',
11237
- pieCombination: '{name}, series {ix} of {numSeries}. Pie with {numPoints} {#plural(numPoints, slices, slice)}.',
11238
- scatter: '{name}, scatter plot {ix} of {numSeries} with {numPoints} {#plural(numPoints, points, point)}.',
11239
- scatterCombination: '{name}, series {ix} of {numSeries}, scatter plot with {numPoints} {#plural(numPoints, points, point)}.',
11240
- boxplot: '{name}, boxplot {ix} of {numSeries} with {numPoints} {#plural(numPoints, boxes, box)}.',
11241
- boxplotCombination: '{name}, series {ix} of {numSeries}. Boxplot with {numPoints} {#plural(numPoints, boxes, box)}.',
11242
- bubble: '{name}, bubble series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bubbles, bubble)}.',
11243
- bubbleCombination: '{name}, series {ix} of {numSeries}. Bubble series with {numPoints} {#plural(numPoints, bubbles, bubble)}.',
11244
- map: '{name}, map {ix} of {numSeries} with {numPoints} {#plural(numPoints, areas, area)}.',
11245
- mapCombination: '{name}, series {ix} of {numSeries}. Map with {numPoints} {#plural(numPoints, areas, area)}.',
11246
- mapline: '{name}, line {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.',
11247
- maplineCombination: '{name}, series {ix} of {numSeries}. Line with {numPoints} data {#plural(numPoints, points, point)}.',
11248
- mapbubble: '{name}, bubble series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bubbles, bubble)}.',
11249
- mapbubbleCombination: '{name}, series {ix} of {numSeries}. Bubble series with {numPoints} {#plural(numPoints, bubbles, bubble)}.'
11359
+ 'default': '{series.name}, series {seriesNumber} of {chart.series.length} with {series.points.length} data {#plural(series.points.length, points, point)}.',
11360
+ defaultCombination: '{series.name}, series {seriesNumber} of {chart.series.length} with {series.points.length} data {#plural(series.points.length, points, point)}.',
11361
+ line: '{series.name}, line {seriesNumber} of {chart.series.length} with {series.points.length} data {#plural(series.points.length, points, point)}.',
11362
+ lineCombination: '{series.name}, series {seriesNumber} of {chart.series.length}. Line with {series.points.length} data {#plural(series.points.length, points, point)}.',
11363
+ spline: '{series.name}, line {seriesNumber} of {chart.series.length} with {series.points.length} data {#plural(series.points.length, points, point)}.',
11364
+ splineCombination: '{series.name}, series {seriesNumber} of {chart.series.length}. Line with {series.points.length} data {#plural(series.points.length, points, point)}.',
11365
+ column: '{series.name}, bar series {seriesNumber} of {chart.series.length} with {series.points.length} {#plural(series.points.length, bars, bar)}.',
11366
+ columnCombination: '{series.name}, series {seriesNumber} of {chart.series.length}. Bar series with {series.points.length} {#plural(series.points.length, bars, bar)}.',
11367
+ bar: '{series.name}, bar series {seriesNumber} of {chart.series.length} with {series.points.length} {#plural(series.points.length, bars, bar)}.',
11368
+ barCombination: '{series.name}, series {seriesNumber} of {chart.series.length}. Bar series with {series.points.length} {#plural(series.points.length, bars, bar)}.',
11369
+ pie: '{series.name}, pie {seriesNumber} of {chart.series.length} with {series.points.length} {#plural(series.points.length, slices, slice)}.',
11370
+ pieCombination: '{series.name}, series {seriesNumber} of {chart.series.length}. Pie with {series.points.length} {#plural(series.points.length, slices, slice)}.',
11371
+ scatter: '{series.name}, scatter plot {seriesNumber} of {chart.series.length} with {series.points.length} {#plural(series.points.length, points, point)}.',
11372
+ scatterCombination: '{series.name}, series {seriesNumber} of {chart.series.length}, scatter plot with {series.points.length} {#plural(series.points.length, points, point)}.',
11373
+ boxplot: '{series.name}, boxplot {seriesNumber} of {chart.series.length} with {series.points.length} {#plural(series.points.length, boxes, box)}.',
11374
+ boxplotCombination: '{series.name}, series {seriesNumber} of {chart.series.length}. Boxplot with {series.points.length} {#plural(series.points.length, boxes, box)}.',
11375
+ bubble: '{series.name}, bubble series {seriesNumber} of {chart.series.length} with {series.points.length} {#plural(series.points.length, bubbles, bubble)}.',
11376
+ bubbleCombination: '{series.name}, series {seriesNumber} of {chart.series.length}. Bubble series with {series.points.length} {#plural(series.points.length, bubbles, bubble)}.',
11377
+ map: '{series.name}, map {seriesNumber} of {chart.series.length} with {series.points.length} {#plural(series.points.length, areas, area)}.',
11378
+ mapCombination: '{series.name}, series {seriesNumber} of {chart.series.length}. Map with {series.points.length} {#plural(series.points.length, areas, area)}.',
11379
+ mapline: '{series.name}, line {seriesNumber} of {chart.series.length} with {series.points.length} data {#plural(series.points.length, points, point)}.',
11380
+ maplineCombination: '{series.name}, series {seriesNumber} of {chart.series.length}. Line with {series.points.length} data {#plural(series.points.length, points, point)}.',
11381
+ mapbubble: '{series.name}, bubble series {seriesNumber} of {chart.series.length} with {series.points.length} {#plural(series.points.length, bubbles, bubble)}.',
11382
+ mapbubbleCombination: '{series.name}, series {seriesNumber} of {chart.series.length}. Bubble series with {series.points.length} {#plural(series.points.length, bubbles, bubble)}.'
11250
11383
  },
11251
11384
  /**
11252
11385
  * User supplied description text. This is added in the point
@@ -1,5 +1,5 @@
1
1
  /*
2
- Highcharts JS v10.0.0 (2022-03-07)
2
+ Highcharts JS v10.1.0 (2022-04-29)
3
3
 
4
4
  Annotations module
5
5
 
@@ -14,8 +14,8 @@ this.removeDrag());this.removeMouseUp&&(this.removeMouseUp=this.removeMouseUp())
14
14
  l(g.doc,g.isTouchDevice?"touchend":"mouseup",function(d){var a=m(b.target&&b.target.annotation,b.target);a&&(a.cancelClick=b.hasDragged);b.cancelClick=b.hasDragged;b.hasDragged=!1;b.chart.hasDraggedAnnotation=!1;k(m(a,b),"afterUpdate");b.onMouseUp(d)},g.isTouchDevice?{passive:!1}:void 0)}},onMouseUp:function(a){var b=this.chart;a=this.target||this;var d=b.options.annotations;b=b.annotations.indexOf(a);this.removeDocEvents();d[b]=a.options},onDrag:function(a){if(this.chart.isInsidePlot(a.chartX-this.chart.plotLeft,
15
15
  a.chartY-this.chart.plotTop,{visiblePlotOnly:!0})){var b=this.mouseMoveToTranslation(a);"x"===this.options.draggable&&(b.y=0);"y"===this.options.draggable&&(b.x=0);this.points.length?this.translate(b.x,b.y):(this.shapes.forEach(function(d){d.translate(b.x,b.y)}),this.labels.forEach(function(d){d.translate(b.x,b.y)}));this.redraw(!1)}},mouseMoveToRadians:function(a,b,d){var f=a.prevChartY-d,h=a.prevChartX-b;d=a.chartY-d;a=a.chartX-b;this.chart.inverted&&(b=h,h=f,f=b,b=a,a=d,d=b);return Math.atan2(d,
16
16
  a)-Math.atan2(f,h)},mouseMoveToTranslation:function(a){var b=a.chartX-a.prevChartX;a=a.chartY-a.prevChartY;if(this.chart.inverted){var d=a;a=b;b=d}return{x:b,y:a}},mouseMoveToScale:function(a,b,d){b=(a.chartX-b||1)/(a.prevChartX-b||1);a=(a.chartY-d||1)/(a.prevChartY-d||1);this.chart.inverted&&(d=a,a=b,b=d);return{x:b,y:a}},destroy:function(){this.removeDocEvents();e(this);this.hcEvents=null}}});v(c,"Extensions/Annotations/ControlPoint.js",[c["Core/Utilities.js"],c["Extensions/Annotations/Mixins/EventEmitterMixin.js"]],
17
- function(g,c){var l=g.merge,k=g.pick;return function(){function g(g,e,a,b){this.addEvents=c.addEvents;this.graphic=void 0;this.mouseMoveToRadians=c.mouseMoveToRadians;this.mouseMoveToScale=c.mouseMoveToScale;this.mouseMoveToTranslation=c.mouseMoveToTranslation;this.onDrag=c.onDrag;this.onMouseDown=c.onMouseDown;this.onMouseUp=c.onMouseUp;this.removeDocEvents=c.removeDocEvents;this.nonDOMEvents=["drag"];this.chart=g;this.target=e;this.options=a;this.index=k(a.index,b)}g.prototype.setVisibility=function(g){this.graphic.attr("visibility",
18
- g?"visible":"hidden");this.options.visible=g};g.prototype.render=function(){var g=this.chart,e=this.options;this.graphic=g.renderer.symbol(e.symbol,0,0,e.width,e.height).add(g.controlPointsGroup).css(e.style);this.setVisibility(e.visible);this.addEvents()};g.prototype.redraw=function(g){this.graphic[g?"animate":"attr"](this.options.positioner.call(this,this.target))};g.prototype.destroy=function(){c.destroy.call(this);this.graphic&&(this.graphic=this.graphic.destroy());this.options=this.target=this.chart=
17
+ function(g,c){var l=g.merge,k=g.pick;return function(){function g(g,e,a,b){this.addEvents=c.addEvents;this.graphic=void 0;this.mouseMoveToRadians=c.mouseMoveToRadians;this.mouseMoveToScale=c.mouseMoveToScale;this.mouseMoveToTranslation=c.mouseMoveToTranslation;this.onDrag=c.onDrag;this.onMouseDown=c.onMouseDown;this.onMouseUp=c.onMouseUp;this.removeDocEvents=c.removeDocEvents;this.nonDOMEvents=["drag"];this.chart=g;this.target=e;this.options=a;this.index=k(a.index,b)}g.prototype.setVisibility=function(g){this.graphic[g?
18
+ "show":"hide"]();this.options.visible=g};g.prototype.render=function(){var g=this.chart,e=this.options;this.graphic=g.renderer.symbol(e.symbol,0,0,e.width,e.height).add(g.controlPointsGroup).css(e.style);this.setVisibility(e.visible);this.addEvents()};g.prototype.redraw=function(g){this.graphic[g?"animate":"attr"](this.options.positioner.call(this,this.target))};g.prototype.destroy=function(){c.destroy.call(this);this.graphic&&(this.graphic=this.graphic.destroy());this.options=this.target=this.chart=
19
19
  null};g.prototype.update=function(g){var e=this.chart,a=this.target,b=this.index;g=l(!0,this.options,g);this.destroy();this.constructor(e,a,g,b);this.render(e.controlPointsGroup);this.redraw()};return g}()});v(c,"Extensions/Annotations/MockPoint.js",[c["Core/Series/Series.js"],c["Core/Utilities.js"],c["Core/Axis/Axis.js"]],function(g,c,n){var l=c.defined,r=c.fireEvent;return function(){function c(e,a,b){this.y=this.x=this.ttBelow=this.plotY=this.plotX=this.negative=this.isInside=void 0;this.mock=
20
20
  !0;this.series={visible:!0,chart:e,getPlotBox:g.prototype.getPlotBox};this.target=a||null;this.options=b;this.applyOptions(this.getOptions())}c.fromPoint=function(e){return new c(e.series.chart,null,{x:e.x,y:e.y,xAxis:e.series.xAxis,yAxis:e.series.yAxis})};c.pointToPixels=function(e,a){var b=e.series,d=b.chart,f=e.plotX,h=e.plotY;d.inverted&&(e.mock?(f=e.plotY,h=e.plotX):(f=d.plotWidth-e.plotY,h=d.plotHeight-e.plotX));b&&!a&&(e=b.getPlotBox(),f+=e.translateX,h+=e.translateY);return{x:f,y:h}};c.pointToOptions=
21
21
  function(e){return{x:e.x,y:e.y,xAxis:e.series.xAxis,yAxis:e.series.yAxis}};c.prototype.hasDynamicOptions=function(){return"function"===typeof this.options};c.prototype.getOptions=function(){return this.hasDynamicOptions()?this.options(this.target):this.options};c.prototype.applyOptions=function(e){this.command=e.command;this.setAxis(e,"x");this.setAxis(e,"y");this.refresh()};c.prototype.setAxis=function(e,a){a+="Axis";e=e[a];var b=this.series.chart;this.series[a]=e instanceof n?e:l(e)?b[a][e]||b.get(e):
@@ -65,8 +65,8 @@ b);this.userOptions=b;b=this.getLabelsAndShapesOptions(this.options,b);this.opti
65
65
  b)}):a[f])});return d};h.prototype.addShapes=function(){(this.options.shapes||[]).forEach(function(a,b){a=this.initShape(a,b);x(!0,this.options.shapes[b],a.options)},this)};h.prototype.addLabels=function(){(this.options.labels||[]).forEach(function(a,b){a=this.initLabel(a,b);x(!0,this.options.labels[b],a.options)},this)};h.prototype.addClipPaths=function(){this.setClipAxes();this.clipXAxis&&this.clipYAxis&&this.options.crop&&(this.clipRect=this.chart.renderer.clipRect(this.getClipBox()))};h.prototype.setClipAxes=
66
66
  function(){var a=this.chart.xAxis,b=this.chart.yAxis,d=(this.options.labels||[]).concat(this.options.shapes||[]).reduce(function(d,f){f=f&&(f.point||f.points&&f.points[0]);return[a[f&&f.xAxis]||d[0],b[f&&f.yAxis]||d[1]]},[]);this.clipXAxis=d[0];this.clipYAxis=d[1]};h.prototype.getClipBox=function(){if(this.clipXAxis&&this.clipYAxis)return{x:this.clipXAxis.left,y:this.clipYAxis.top,width:this.clipXAxis.width,height:this.clipYAxis.height}};h.prototype.setLabelCollector=function(){var a=this;a.labelCollector=
67
67
  function(){return a.labels.reduce(function(a,b){b.options.allowOverlap||a.push(b.graphic);return a},[])};a.chart.labelCollectors.push(a.labelCollector)};h.prototype.setOptions=function(a){this.options=x(this.defaultOptions,a)};h.prototype.redraw=function(a){this.linkPoints();this.graphic||this.render();this.clipRect&&this.clipRect.animate(this.getClipBox());this.redrawItems(this.shapes,a);this.redrawItems(this.labels,a);n.redraw.call(this,a)};h.prototype.redrawItems=function(a,b){for(var d=a.length;d--;)this.redrawItem(a[d],
68
- b)};h.prototype.renderItems=function(a){for(var b=a.length;b--;)this.renderItem(a[b])};h.prototype.render=function(){var a=this.chart.renderer;this.graphic=a.g("annotation").attr({opacity:0,zIndex:this.options.zIndex,visibility:this.options.visible?"visible":"hidden"}).add();this.shapesGroup=a.g("annotation-shapes").add(this.graphic);this.options.crop&&this.shapesGroup.clip(this.chart.plotBoxClip);this.labelsGroup=a.g("annotation-labels").attr({translateX:0,translateY:0}).add(this.graphic);this.addClipPaths();
69
- this.clipRect&&this.graphic.clip(this.clipRect);this.renderItems(this.shapes);this.renderItems(this.labels);this.addEvents();n.render.call(this)};h.prototype.setVisibility=function(a){var b=this.options,d=this.chart.navigationBindings;a=t(a,!b.visible);this.graphic.attr("visibility",a?"visible":"hidden");a||(this.setControlPointsVisibility(!1),d.activeAnnotation===this&&d.popup&&"annotation-toolbar"===d.popup.formType&&w(d,"closePopup"));b.visible=a};h.prototype.setControlPointsVisibility=function(a){var b=
68
+ b)};h.prototype.renderItems=function(a){for(var b=a.length;b--;)this.renderItem(a[b])};h.prototype.render=function(){var a=this.chart.renderer;this.graphic=a.g("annotation").attr({opacity:0,zIndex:this.options.zIndex,visibility:this.options.visible?"inherit":"hidden"}).add();this.shapesGroup=a.g("annotation-shapes").add(this.graphic);this.options.crop&&this.shapesGroup.clip(this.chart.plotBoxClip);this.labelsGroup=a.g("annotation-labels").attr({translateX:0,translateY:0}).add(this.graphic);this.addClipPaths();
69
+ this.clipRect&&this.graphic.clip(this.clipRect);this.renderItems(this.shapes);this.renderItems(this.labels);this.addEvents();n.render.call(this)};h.prototype.setVisibility=function(a){var b=this.options,d=this.chart.navigationBindings;a=t(a,!b.visible);this.graphic.attr("visibility",a?"inherit":"hidden");a||(this.setControlPointsVisibility(!1),d.activeAnnotation===this&&d.popup&&"annotation-toolbar"===d.popup.formType&&w(d,"closePopup"));b.visible=a};h.prototype.setControlPointsVisibility=function(a){var b=
70
70
  function(b){b.setControlPointsVisibility(a)};n.setControlPointsVisibility.call(this,a);this.shapes.forEach(b);this.labels.forEach(b)};h.prototype.destroy=function(){var a=this.chart,b=function(a){a.destroy()};this.labels.forEach(b);this.shapes.forEach(b);this.clipYAxis=this.clipXAxis=null;y(a.labelCollectors,this.labelCollector);f.destroy.call(this);n.destroy.call(this);z(this,a)};h.prototype.remove=function(){return this.chart.removeAnnotation(this)};h.prototype.update=function(a,b){var d=this.chart,
71
71
  f=this.getLabelsAndShapesOptions(this.userOptions,a),h=d.annotations.indexOf(this);a=x(!0,this.userOptions,a);a.labels=f.labels;a.shapes=f.shapes;this.destroy();this.constructor(d,a);d.options.annotations[h]=a;this.isUpdating=!0;t(b,!0)&&d.redraw();w(this,"afterUpdate");this.isUpdating=!1};h.prototype.initShape=function(a,b){a=x(this.options.shapeOptions,{controlPointOptions:this.options.controlPointOptions},a);b=new h.shapesMap[a.type](this,a,b);b.itemType="shape";this.shapes.push(b);return b};h.prototype.initLabel=
72
72
  function(a,d){a=x(this.options.labelOptions,{controlPointOptions:this.options.controlPointOptions},a);d=new b(this,a,d);d.itemType="label";this.labels.push(d);return d};h.prototype.redrawItem=function(a,b){a.linkPoints();a.shouldBeDrawn()?(a.graphic||this.renderItem(a),a.redraw(t(b,!0)&&a.graphic.placed),a.points.length&&this.adjustVisibility(a)):this.destroyItem(a)};h.prototype.adjustVisibility=function(a){var b=!1,d=a.graphic;a.points.forEach(function(a){!1!==a.series.visible&&!1!==a.visible&&(b=
@@ -196,6 +196,6 @@ a,g,b,b.linkedParent&&b.linkedParent.options.id);h.volumeSeriesID&&this.indicato
196
196
  n,c)}else"params.volumeSeriesID"===m||p(c)||l.call(f,m,d,e,{value:c,type:"text"})})},getAmount:function(){var a=0;this.series.forEach(function(b){var c=b.options;(b.params||c&&c.params)&&a++});return a}},tabs:{init:function(a){var b=this.tabs,c=this.indicators.getAmount.call(a);a&&(a=b.addMenuItem.call(this,"add"),b.addMenuItem.call(this,"edit",c),b.addContentItem.call(this,"add"),b.addContentItem.call(this,"edit"),b.switchTabs.call(this,c),b.selectTab.call(this,a,0))},addMenuItem:function(a,b){var c=
197
197
  this.popup.container,d="highcharts-tab-item",g=this.lang;0===b&&(d+=" highcharts-tab-disabled");b=f("span",{className:d},void 0,c);b.appendChild(e.createTextNode(g[a+"Button"]||a));b.setAttribute("highcharts-data-tab-type",a);return b},addContentItem:function(){return f("div",{className:"highcharts-tab-item-content highcharts-no-mousewheel"},void 0,this.popup.container)},switchTabs:function(a){var b=this,c;this.popup.container.querySelectorAll(".highcharts-tab-item").forEach(function(e,f){c=e.getAttribute("highcharts-data-tab-type");
198
198
  "edit"===c&&0===a||["click","touchstart"].forEach(function(a){d(e,a,function(){b.tabs.deselectAll.call(b);b.tabs.selectTab.call(b,this,f)})})})},selectTab:function(a,b){var c=this.popup.container.querySelectorAll(".highcharts-tab-item-content");a.className+=" highcharts-tab-item-active";c[b].className+=" highcharts-tab-item-show"},deselectAll:function(){var a=this.popup.container,b=a.querySelectorAll(".highcharts-tab-item");a=a.querySelectorAll(".highcharts-tab-item-content");var c;for(c=0;c<b.length;c++)b[c].classList.remove("highcharts-tab-item-active"),
199
- a[c].classList.remove("highcharts-tab-item-show")}}};d(n,"showPopup",function(a){this.popup||(this.popup=new l.Popup(this.chart.container,this.chart.options.navigation.iconsURL||this.chart.options.stockTools&&this.chart.options.stockTools.gui.iconsURL||"https://code.highcharts.com/10.0.0/gfx/stock-icons/",this.chart));this.popup.showForm(a.formType,this.chart,a.options,a.onSubmit)});d(n,"closePopup",function(){this.popup&&this.popup.closePopup()});return l.Popup});v(c,"masters/modules/annotations-advanced.src.js",
199
+ a[c].classList.remove("highcharts-tab-item-show")}}};d(n,"showPopup",function(a){this.popup||(this.popup=new l.Popup(this.chart.container,this.chart.options.navigation.iconsURL||this.chart.options.stockTools&&this.chart.options.stockTools.gui.iconsURL||"https://code.highcharts.com/10.1.0/gfx/stock-icons/",this.chart));this.popup.showForm(a.formType,this.chart,a.options,a.onSubmit)});d(n,"closePopup",function(){this.popup&&this.popup.closePopup()});return l.Popup});v(c,"masters/modules/annotations-advanced.src.js",
200
200
  [],function(){})});
201
201
  //# sourceMappingURL=annotations-advanced.js.map