highcharts 9.1.1 → 9.2.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 (718) hide show
  1. package/bower.json +1 -1
  2. package/css/annotations/popup.css +29 -28
  3. package/css/annotations/popup.scss +29 -27
  4. package/css/highcharts.css +15 -0
  5. package/css/highcharts.scss +12 -0
  6. package/css/stocktools/gui.css +1 -0
  7. package/css/stocktools/gui.scss +1 -0
  8. package/css/themes/dark-unica.css +15 -0
  9. package/css/themes/grid-light.css +15 -0
  10. package/css/themes/sand-signika.css +15 -0
  11. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +8 -2
  12. package/es-modules/Accessibility/Components/LegendComponent.js +19 -8
  13. package/es-modules/Accessibility/Components/MenuComponent.js +19 -13
  14. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +4 -8
  15. package/es-modules/Accessibility/FocusBorder.js +1 -3
  16. package/es-modules/Accessibility/Options/LangOptions.js +3 -3
  17. package/es-modules/Accessibility/Utils/Announcer.js +22 -5
  18. package/es-modules/Accessibility/Utils/ChartUtilities.js +6 -1
  19. package/es-modules/Core/Animation/AnimationUtilities.js +12 -4
  20. package/es-modules/Core/Animation/Fx.js +15 -12
  21. package/es-modules/Core/Axis/Axis.js +25 -13
  22. package/es-modules/Core/Axis/AxisDefaults.js +0 -1
  23. package/es-modules/Core/Axis/BrokenAxis.js +32 -15
  24. package/es-modules/Core/Axis/Color/ColorAxis.js +665 -0
  25. package/es-modules/Core/Axis/Color/ColorAxisComposition.js +237 -0
  26. package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +434 -0
  27. package/es-modules/Core/Axis/DateTimeAxis.js +163 -133
  28. package/es-modules/Core/Axis/GridAxis.js +8 -3
  29. package/es-modules/Core/Axis/LogarithmicAxis.js +159 -117
  30. package/es-modules/Core/Axis/OrdinalAxis.js +666 -460
  31. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +874 -0
  32. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js +292 -0
  33. package/es-modules/Core/Axis/RadialAxis.js +858 -745
  34. package/es-modules/Core/Axis/ScrollbarAxis.js +7 -0
  35. package/es-modules/Core/Axis/StackingAxis.js +159 -140
  36. package/es-modules/Core/Axis/Tick.js +17 -27
  37. package/es-modules/Core/Chart/Chart.js +24 -38
  38. package/es-modules/Core/Chart/ChartDefaults.js +1 -1
  39. package/es-modules/Core/Chart/StockChart.js +12 -0
  40. package/es-modules/Core/Color/Color.js +96 -104
  41. package/es-modules/Core/DefaultOptions.js +269 -248
  42. package/es-modules/Core/Foundation.js +9 -8
  43. package/es-modules/Core/Geometry/CircleUtilities.js +385 -0
  44. package/es-modules/Core/Geometry/GeometryUtilities.js +83 -0
  45. package/es-modules/Core/Globals.js +23 -1
  46. package/es-modules/{Extensions/Ajax.js → Core/HttpUtilities.js} +86 -42
  47. package/es-modules/Core/{Legend.js → Legend/Legend.js} +142 -116
  48. package/es-modules/{Mixins → Core/Legend}/LegendSymbol.js +54 -38
  49. package/es-modules/Core/Navigator.js +3 -0
  50. package/es-modules/Core/Pointer.js +9 -0
  51. package/es-modules/Core/Renderer/HTML/AST.js +100 -82
  52. package/es-modules/Core/Renderer/HTML/HTMLElement.js +17 -7
  53. package/es-modules/Core/Renderer/HTML/HTMLRenderer.js +26 -9
  54. package/es-modules/Core/Renderer/RendererRegistry.js +9 -4
  55. package/es-modules/Core/Renderer/RendererUtilities.js +159 -0
  56. package/es-modules/Core/Renderer/SVG/SVGElement.js +13 -7
  57. package/es-modules/Core/Renderer/SVG/SVGLabel.js +9 -29
  58. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +2 -2
  59. package/es-modules/Core/Renderer/SVG/TextBuilder.js +18 -16
  60. package/es-modules/Core/Responsive.js +166 -148
  61. package/es-modules/Core/Series/DataLabel.js +564 -0
  62. package/es-modules/Core/Series/Point.js +233 -209
  63. package/es-modules/Core/Series/Series.js +174 -2339
  64. package/es-modules/Core/Series/SeriesDefaults.js +2293 -0
  65. package/es-modules/Core/Series/SeriesRegistry.js +3 -9
  66. package/es-modules/Core/Time.js +78 -2
  67. package/es-modules/Core/Tooltip.js +178 -236
  68. package/es-modules/Core/Utilities.js +409 -394
  69. package/es-modules/Extensions/Annotations/Annotations.js +102 -49
  70. package/es-modules/Extensions/Annotations/Mixins/EventEmitterMixin.js +9 -1
  71. package/es-modules/Extensions/Annotations/NavigationBindings.js +30 -25
  72. package/es-modules/Extensions/Annotations/Popup.js +16 -7
  73. package/es-modules/Extensions/Boost/BoostOverrides.js +5 -1
  74. package/es-modules/Extensions/Boost/WGLRenderer.js +5 -4
  75. package/es-modules/Extensions/Boost/WGLVBuffer.js +3 -0
  76. package/es-modules/Extensions/BoostCanvas.js +1 -1
  77. package/es-modules/Extensions/CurrentDateIndication.js +1 -1
  78. package/es-modules/Extensions/Data.js +82 -76
  79. package/es-modules/Extensions/DataGrouping.js +225 -184
  80. package/es-modules/Extensions/Debugger/ErrorMessages.js +2 -2
  81. package/es-modules/Extensions/DraggablePoints.js +13 -5
  82. package/es-modules/Extensions/Drilldown.js +41 -14
  83. package/es-modules/Extensions/ExportData.js +7 -4
  84. package/es-modules/Extensions/Exporting/Exporting.js +1273 -0
  85. package/es-modules/Extensions/Exporting/ExportingDefaults.js +803 -0
  86. package/es-modules/Extensions/Exporting/ExportingSymbols.js +73 -0
  87. package/es-modules/Extensions/FullScreen.js +7 -5
  88. package/es-modules/Extensions/NoDataToDisplay.js +1 -1
  89. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +617 -0
  90. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +58 -0
  91. package/es-modules/Extensions/Oldie/Oldie.js +1 -1
  92. package/es-modules/Extensions/Pane.js +0 -1
  93. package/es-modules/Extensions/PatternFill.js +23 -10
  94. package/es-modules/Extensions/Polar.js +2 -1
  95. package/es-modules/Extensions/RangeSelector.js +1 -1
  96. package/es-modules/Extensions/Themes/Avocado.js +49 -20
  97. package/es-modules/Extensions/Themes/DarkBlue.js +226 -203
  98. package/es-modules/Extensions/Themes/DarkGreen.js +231 -203
  99. package/es-modules/Extensions/Themes/DarkUnica.js +201 -172
  100. package/es-modules/Extensions/Themes/Gray.js +228 -205
  101. package/es-modules/Extensions/Themes/Grid.js +109 -81
  102. package/es-modules/Extensions/Themes/GridLight.js +83 -55
  103. package/es-modules/Extensions/Themes/HighContrastDark.js +192 -164
  104. package/es-modules/Extensions/Themes/HighContrastLight.js +49 -21
  105. package/es-modules/Extensions/Themes/SandSignika.js +115 -86
  106. package/es-modules/Extensions/Themes/Skies.js +102 -74
  107. package/es-modules/Extensions/Themes/Sunset.js +47 -19
  108. package/es-modules/Mixins/ColorSeries.js +0 -1
  109. package/es-modules/Mixins/MultipleLines.js +6 -0
  110. package/es-modules/Mixins/TreeSeries.js +1 -1
  111. package/es-modules/Series/Area/AreaSeries.js +2 -2
  112. package/es-modules/Series/AreaSpline/AreaSplineSeries.js +2 -2
  113. package/es-modules/Series/Bubble/BubbleLegendComposition.js +279 -0
  114. package/es-modules/Series/Bubble/BubbleLegendDefaults.js +267 -0
  115. package/es-modules/Series/Bubble/BubbleLegendItem.js +472 -0
  116. package/es-modules/Series/Bubble/BubbleSeries.js +6 -2
  117. package/es-modules/Series/Column/ColumnDataLabel.js +109 -0
  118. package/es-modules/Series/Column/ColumnSeries.js +39 -26
  119. package/es-modules/Series/Column3D/Column3DComposition.js +5 -2
  120. package/es-modules/Series/Flags/FlagsSeries.js +8 -1
  121. package/es-modules/Series/Gantt/GanttSeries.js +3 -3
  122. package/es-modules/Series/Heatmap/HeatmapSeries.js +9 -5
  123. package/es-modules/Series/HeikinAshi/HeikinAshiPoint.js +60 -0
  124. package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +277 -0
  125. package/es-modules/Series/HollowCandlestick/HollowCandlestickPoint.js +83 -0
  126. package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +370 -0
  127. package/es-modules/Series/Line/LineSeries.js +12 -8
  128. package/es-modules/Series/Map/MapSeries.js +5 -3
  129. package/es-modules/Series/MapBubble/MapBubbleSeries.js +6 -5
  130. package/es-modules/Series/OHLC/OHLCPoint.js +11 -0
  131. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +3 -1
  132. package/es-modules/Series/Pie/PieDataLabel.js +448 -0
  133. package/es-modules/Series/Pie/PiePoint.js +35 -34
  134. package/es-modules/Series/Pie/PieSeries.js +19 -16
  135. package/es-modules/Series/Polygon/PolygonSeries.js +3 -3
  136. package/es-modules/Series/Sankey/SankeySeries.js +9 -7
  137. package/es-modules/Series/SolidGauge/SolidGaugeSeries.js +2 -2
  138. package/es-modules/Series/Sunburst/SunburstSeries.js +1 -14
  139. package/es-modules/Series/Timeline/TimelinePoint.js +6 -0
  140. package/es-modules/Series/Timeline/TimelineSeries.js +14 -17
  141. package/es-modules/Series/Treemap/TreemapSeries.js +3 -3
  142. package/es-modules/Series/Venn/VennSeries.js +4 -4
  143. package/es-modules/Series/Venn/VennUtils.js +10 -16
  144. package/es-modules/Series/Waterfall/WaterfallSeries.js +40 -35
  145. package/es-modules/Series/Wordcloud/WordcloudSeries.js +1 -0
  146. package/es-modules/Series/XRange/XRangeSeries.js +4 -2
  147. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +92 -75
  148. package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +20 -8
  149. package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +17 -4
  150. package/es-modules/Stock/StockToolsBindings.js +77 -38
  151. package/es-modules/Stock/StockToolsGui.js +28 -3
  152. package/es-modules/masters/highcharts-3d.src.js +1 -1
  153. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  154. package/es-modules/masters/highcharts-more.src.js +11 -7
  155. package/es-modules/masters/highcharts.src.js +25 -9
  156. package/es-modules/masters/highmaps.src.js +1 -1
  157. package/es-modules/masters/highstock.src.js +1 -1
  158. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  159. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  160. package/es-modules/masters/indicators/ao.src.js +1 -1
  161. package/es-modules/masters/indicators/apo.src.js +1 -1
  162. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  163. package/es-modules/masters/indicators/aroon.src.js +1 -1
  164. package/es-modules/masters/indicators/atr.src.js +1 -1
  165. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  166. package/es-modules/masters/indicators/cci.src.js +1 -1
  167. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  168. package/es-modules/masters/indicators/cmf.src.js +1 -1
  169. package/es-modules/masters/indicators/cmo.src.js +1 -1
  170. package/es-modules/masters/indicators/dema.src.js +1 -1
  171. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  172. package/es-modules/masters/indicators/dmi.src.js +1 -1
  173. package/es-modules/masters/indicators/dpo.src.js +1 -1
  174. package/es-modules/masters/indicators/ema.src.js +1 -1
  175. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  176. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  177. package/es-modules/masters/indicators/indicators.src.js +1 -1
  178. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  179. package/es-modules/masters/indicators/klinger.src.js +1 -1
  180. package/es-modules/masters/indicators/macd.src.js +1 -1
  181. package/es-modules/masters/indicators/mfi.src.js +1 -1
  182. package/es-modules/masters/indicators/momentum.src.js +1 -1
  183. package/es-modules/masters/indicators/natr.src.js +1 -1
  184. package/es-modules/masters/indicators/obv.src.js +1 -1
  185. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  186. package/es-modules/masters/indicators/ppo.src.js +1 -1
  187. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  188. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  189. package/es-modules/masters/indicators/psar.src.js +1 -1
  190. package/es-modules/masters/indicators/regressions.src.js +1 -1
  191. package/es-modules/masters/indicators/roc.src.js +1 -1
  192. package/es-modules/masters/indicators/rsi.src.js +1 -1
  193. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  194. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  195. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  196. package/es-modules/masters/indicators/tema.src.js +1 -1
  197. package/es-modules/masters/indicators/trendline.src.js +1 -1
  198. package/es-modules/masters/indicators/trix.src.js +1 -1
  199. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  200. package/es-modules/masters/indicators/vwap.src.js +1 -1
  201. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  202. package/es-modules/masters/indicators/wma.src.js +1 -1
  203. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  204. package/es-modules/masters/modules/accessibility.src.js +1 -1
  205. package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
  206. package/es-modules/masters/modules/annotations.src.js +1 -1
  207. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  208. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  209. package/es-modules/masters/modules/boost.src.js +1 -1
  210. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  211. package/es-modules/masters/modules/bullet.src.js +1 -1
  212. package/es-modules/masters/modules/coloraxis.src.js +6 -2
  213. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  214. package/es-modules/masters/modules/cylinder.src.js +1 -1
  215. package/es-modules/masters/modules/data.src.js +8 -1
  216. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  217. package/es-modules/masters/modules/debugger.src.js +1 -1
  218. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  219. package/es-modules/masters/modules/dotplot.src.js +1 -1
  220. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  221. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  222. package/es-modules/masters/modules/drilldown.src.js +1 -1
  223. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  224. package/es-modules/masters/modules/export-data.src.js +1 -1
  225. package/es-modules/masters/modules/exporting.src.js +10 -2
  226. package/es-modules/masters/modules/full-screen.src.js +1 -1
  227. package/es-modules/masters/modules/funnel.src.js +1 -1
  228. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  229. package/es-modules/masters/modules/gantt.src.js +9 -4
  230. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  231. package/es-modules/masters/modules/heatmap.src.js +6 -2
  232. package/es-modules/masters/modules/heikinashi.src.js +14 -0
  233. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  234. package/es-modules/masters/modules/hollowcandlestick.src.js +14 -0
  235. package/es-modules/masters/modules/item-series.src.js +1 -1
  236. package/es-modules/masters/modules/lollipop.src.js +1 -1
  237. package/es-modules/masters/modules/map.src.js +10 -6
  238. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  239. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  240. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  241. package/es-modules/masters/modules/offline-exporting.src.js +8 -2
  242. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  243. package/es-modules/masters/modules/oldie.src.js +1 -1
  244. package/es-modules/masters/modules/organization.src.js +1 -1
  245. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  246. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  247. package/es-modules/masters/modules/pareto.src.js +1 -1
  248. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  249. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  250. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  251. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  252. package/es-modules/masters/modules/sankey.src.js +1 -1
  253. package/es-modules/masters/modules/series-label.src.js +1 -1
  254. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  255. package/es-modules/masters/modules/sonification.src.js +1 -1
  256. package/es-modules/masters/modules/static-scale.src.js +1 -1
  257. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  258. package/es-modules/masters/modules/stock.src.js +3 -2
  259. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  260. package/es-modules/masters/modules/sunburst.src.js +1 -1
  261. package/es-modules/masters/modules/tilemap.src.js +1 -1
  262. package/es-modules/masters/modules/timeline.src.js +1 -1
  263. package/es-modules/masters/modules/treegrid.src.js +1 -1
  264. package/es-modules/masters/modules/treemap.src.js +1 -1
  265. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  266. package/es-modules/masters/modules/variwide.src.js +1 -1
  267. package/es-modules/masters/modules/vector.src.js +1 -1
  268. package/es-modules/masters/modules/venn.src.js +1 -1
  269. package/es-modules/masters/modules/windbarb.src.js +1 -1
  270. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  271. package/es-modules/masters/modules/xrange.src.js +1 -1
  272. package/es-modules/masters/themes/avocado.src.js +5 -2
  273. package/es-modules/masters/themes/dark-blue.src.js +5 -2
  274. package/es-modules/masters/themes/dark-green.src.js +5 -2
  275. package/es-modules/masters/themes/dark-unica.src.js +5 -2
  276. package/es-modules/masters/themes/gray.src.js +5 -2
  277. package/es-modules/masters/themes/grid-light.src.js +5 -2
  278. package/es-modules/masters/themes/grid.src.js +5 -2
  279. package/es-modules/masters/themes/high-contrast-dark.src.js +5 -2
  280. package/es-modules/masters/themes/high-contrast-light.src.js +5 -2
  281. package/es-modules/masters/themes/sand-signika.src.js +5 -2
  282. package/es-modules/masters/themes/skies.src.js +5 -2
  283. package/es-modules/masters/themes/sunset.src.js +5 -2
  284. package/gfx/stock-icons/annotations-hidden.svg +1 -1
  285. package/gfx/stock-icons/annotations-visible.svg +2 -2
  286. package/gfx/stock-icons/arrow-bottom.svg +1 -1
  287. package/gfx/stock-icons/arrow-left.svg +1 -1
  288. package/gfx/stock-icons/arrow-line.svg +1 -1
  289. package/gfx/stock-icons/arrow-ray.svg +1 -1
  290. package/gfx/stock-icons/arrow-right.svg +1 -1
  291. package/gfx/stock-icons/arrow-segment.svg +1 -2
  292. package/gfx/stock-icons/circle.svg +1 -1
  293. package/gfx/stock-icons/close.svg +2 -2
  294. package/gfx/stock-icons/crooked-3.svg +1 -1
  295. package/gfx/stock-icons/crooked-5.svg +1 -1
  296. package/gfx/stock-icons/current-price-hide.svg +3 -3
  297. package/gfx/stock-icons/current-price-show.svg +2 -2
  298. package/gfx/stock-icons/destroy.svg +1 -1
  299. package/gfx/stock-icons/drawing.svg +18 -0
  300. package/gfx/stock-icons/edit.svg +1 -1
  301. package/gfx/stock-icons/elliott-3.svg +1 -1
  302. package/gfx/stock-icons/elliott-5.svg +1 -1
  303. package/gfx/stock-icons/ellipse.svg +11 -0
  304. package/gfx/stock-icons/fibonacci-timezone.svg +16 -0
  305. package/gfx/stock-icons/fibonacci.svg +1 -1
  306. package/gfx/stock-icons/flag-basic.svg +1 -1
  307. package/gfx/stock-icons/flag-diamond.svg +2 -2
  308. package/gfx/stock-icons/flag-elipse.svg +1 -1
  309. package/gfx/stock-icons/flag-trapeze.svg +2 -2
  310. package/gfx/stock-icons/fullscreen.svg +4 -4
  311. package/gfx/stock-icons/horizontal-line.svg +1 -1
  312. package/gfx/stock-icons/indicators.svg +3 -3
  313. package/gfx/stock-icons/label.svg +4 -4
  314. package/gfx/stock-icons/line.svg +1 -1
  315. package/gfx/stock-icons/linear.svg +11 -0
  316. package/gfx/stock-icons/logarithmic.svg +1 -0
  317. package/gfx/stock-icons/measure-x.svg +2 -2
  318. package/gfx/stock-icons/measure-xy.svg +1 -1
  319. package/gfx/stock-icons/measure-y.svg +1 -1
  320. package/gfx/stock-icons/panning.svg +17 -0
  321. package/gfx/stock-icons/parallel-channel.svg +1 -1
  322. package/gfx/stock-icons/pitchfork.svg +1 -1
  323. package/gfx/stock-icons/ray.svg +1 -1
  324. package/gfx/stock-icons/rectangle.svg +1 -1
  325. package/gfx/stock-icons/remove-annotations.svg +2 -2
  326. package/gfx/stock-icons/save-chart.svg +3 -3
  327. package/gfx/stock-icons/segment.svg +1 -1
  328. package/gfx/stock-icons/separator.svg +1 -1
  329. package/gfx/stock-icons/series-candlestick.svg +1 -1
  330. package/gfx/stock-icons/series-heikin-ashi.svg +1 -0
  331. package/gfx/stock-icons/series-hlc.svg +1 -0
  332. package/gfx/stock-icons/series-hollow-candlestick.svg +1 -0
  333. package/gfx/stock-icons/series-line.svg +1 -1
  334. package/gfx/stock-icons/series-ohlc.svg +4 -4
  335. package/gfx/stock-icons/time-cycles.svg +35 -0
  336. package/gfx/stock-icons/vertical-arrow.svg +1 -1
  337. package/gfx/stock-icons/vertical-counter.svg +1 -1
  338. package/gfx/stock-icons/vertical-double-arrow.svg +1 -1
  339. package/gfx/stock-icons/vertical-label.svg +3 -3
  340. package/gfx/stock-icons/vertical-line.svg +1 -1
  341. package/gfx/stock-icons/zoom-x.svg +2 -2
  342. package/gfx/stock-icons/zoom-xy.svg +2 -2
  343. package/gfx/stock-icons/zoom-y.svg +2 -2
  344. package/highcharts-3d.js +24 -24
  345. package/highcharts-3d.js.map +1 -1
  346. package/highcharts-3d.src.js +6 -3
  347. package/highcharts-gantt.js +800 -792
  348. package/highcharts-gantt.js.map +1 -1
  349. package/highcharts-gantt.src.js +16535 -15918
  350. package/highcharts-more.d.ts +73 -1
  351. package/highcharts-more.js +193 -192
  352. package/highcharts-more.js.map +1 -1
  353. package/highcharts-more.src.d.ts +73 -1
  354. package/highcharts-more.src.js +8044 -7839
  355. package/highcharts.d.ts +3850 -177
  356. package/highcharts.js +589 -581
  357. package/highcharts.js.map +1 -1
  358. package/highcharts.src.d.ts +3850 -177
  359. package/highcharts.src.js +16635 -16060
  360. package/highmaps.js +708 -698
  361. package/highmaps.js.map +1 -1
  362. package/highmaps.src.js +17419 -16521
  363. package/highstock.js +782 -769
  364. package/highstock.js.map +1 -1
  365. package/highstock.src.js +28867 -27975
  366. package/indicators/acceleration-bands.js +9 -9
  367. package/indicators/acceleration-bands.js.map +1 -1
  368. package/indicators/acceleration-bands.src.js +7 -1
  369. package/indicators/accumulation-distribution.js +1 -1
  370. package/indicators/accumulation-distribution.src.js +1 -1
  371. package/indicators/ao.js +1 -1
  372. package/indicators/ao.src.js +1 -1
  373. package/indicators/apo.js +1 -1
  374. package/indicators/apo.src.js +1 -1
  375. package/indicators/aroon-oscillator.js +9 -9
  376. package/indicators/aroon-oscillator.js.map +1 -1
  377. package/indicators/aroon-oscillator.src.js +7 -1
  378. package/indicators/aroon.js +9 -9
  379. package/indicators/aroon.js.map +1 -1
  380. package/indicators/aroon.src.js +7 -1
  381. package/indicators/atr.js +1 -1
  382. package/indicators/atr.src.js +1 -1
  383. package/indicators/bollinger-bands.js +9 -9
  384. package/indicators/bollinger-bands.js.map +1 -1
  385. package/indicators/bollinger-bands.src.js +7 -1
  386. package/indicators/cci.js +1 -1
  387. package/indicators/cci.src.js +1 -1
  388. package/indicators/chaikin.js +1 -1
  389. package/indicators/chaikin.src.js +1 -1
  390. package/indicators/cmf.js +1 -1
  391. package/indicators/cmf.src.js +1 -1
  392. package/indicators/cmo.js +1 -1
  393. package/indicators/cmo.src.js +1 -1
  394. package/indicators/dema.js +1 -1
  395. package/indicators/dema.src.js +1 -1
  396. package/indicators/disparity-index.js +1 -1
  397. package/indicators/disparity-index.src.js +1 -1
  398. package/indicators/dmi.js +11 -11
  399. package/indicators/dmi.js.map +1 -1
  400. package/indicators/dmi.src.js +7 -1
  401. package/indicators/dpo.js +1 -1
  402. package/indicators/dpo.src.js +1 -1
  403. package/indicators/ema.js +1 -1
  404. package/indicators/ema.src.js +1 -1
  405. package/indicators/ichimoku-kinko-hyo.js +1 -1
  406. package/indicators/ichimoku-kinko-hyo.src.js +1 -1
  407. package/indicators/indicators-all.js +203 -200
  408. package/indicators/indicators-all.js.map +1 -1
  409. package/indicators/indicators-all.src.js +206 -104
  410. package/indicators/indicators.js +12 -11
  411. package/indicators/indicators.js.map +1 -1
  412. package/indicators/indicators.src.js +108 -90
  413. package/indicators/keltner-channels.js +9 -9
  414. package/indicators/keltner-channels.js.map +1 -1
  415. package/indicators/keltner-channels.src.js +7 -1
  416. package/indicators/klinger.js +13 -13
  417. package/indicators/klinger.js.map +1 -1
  418. package/indicators/klinger.src.js +7 -1
  419. package/indicators/macd.js +1 -1
  420. package/indicators/macd.src.js +1 -1
  421. package/indicators/mfi.js +1 -1
  422. package/indicators/mfi.src.js +1 -1
  423. package/indicators/momentum.js +1 -1
  424. package/indicators/momentum.src.js +1 -1
  425. package/indicators/natr.js +1 -1
  426. package/indicators/natr.src.js +1 -1
  427. package/indicators/obv.js +1 -1
  428. package/indicators/obv.src.js +1 -1
  429. package/indicators/pivot-points.js +1 -1
  430. package/indicators/pivot-points.src.js +1 -1
  431. package/indicators/ppo.js +1 -1
  432. package/indicators/ppo.src.js +1 -1
  433. package/indicators/price-channel.js +9 -9
  434. package/indicators/price-channel.js.map +1 -1
  435. package/indicators/price-channel.src.js +7 -1
  436. package/indicators/price-envelopes.js +1 -1
  437. package/indicators/price-envelopes.src.js +1 -1
  438. package/indicators/psar.js +1 -1
  439. package/indicators/psar.src.js +1 -1
  440. package/indicators/regressions.js +1 -1
  441. package/indicators/regressions.src.js +1 -1
  442. package/indicators/roc.js +1 -1
  443. package/indicators/roc.src.js +1 -1
  444. package/indicators/rsi.js +1 -1
  445. package/indicators/rsi.src.js +1 -1
  446. package/indicators/slow-stochastic.js +1 -1
  447. package/indicators/slow-stochastic.src.js +1 -1
  448. package/indicators/stochastic.js +10 -10
  449. package/indicators/stochastic.js.map +1 -1
  450. package/indicators/stochastic.src.js +7 -1
  451. package/indicators/supertrend.js +10 -10
  452. package/indicators/supertrend.js.map +1 -1
  453. package/indicators/supertrend.src.js +23 -10
  454. package/indicators/tema.js +1 -1
  455. package/indicators/tema.src.js +1 -1
  456. package/indicators/trendline.js +1 -1
  457. package/indicators/trendline.src.js +1 -1
  458. package/indicators/trix.js +1 -1
  459. package/indicators/trix.src.js +1 -1
  460. package/indicators/volume-by-price.js +17 -15
  461. package/indicators/volume-by-price.js.map +1 -1
  462. package/indicators/volume-by-price.src.js +71 -6
  463. package/indicators/vwap.js +1 -1
  464. package/indicators/vwap.src.js +1 -1
  465. package/indicators/williams-r.js +1 -1
  466. package/indicators/williams-r.src.js +1 -1
  467. package/indicators/wma.js +1 -1
  468. package/indicators/wma.src.js +1 -1
  469. package/indicators/zigzag.js +1 -1
  470. package/indicators/zigzag.src.js +1 -1
  471. package/modules/accessibility.js +203 -202
  472. package/modules/accessibility.js.map +1 -1
  473. package/modules/accessibility.src.js +89 -49
  474. package/modules/annotations-advanced.js +164 -163
  475. package/modules/annotations-advanced.js.map +1 -1
  476. package/modules/annotations-advanced.src.js +162 -87
  477. package/modules/annotations.js +111 -111
  478. package/modules/annotations.js.map +1 -1
  479. package/modules/annotations.src.js +162 -87
  480. package/modules/arrow-symbols.js +1 -1
  481. package/modules/arrow-symbols.src.js +1 -1
  482. package/modules/boost-canvas.js +2 -2
  483. package/modules/boost-canvas.js.map +1 -1
  484. package/modules/boost-canvas.src.js +2 -2
  485. package/modules/boost.js +52 -52
  486. package/modules/boost.js.map +1 -1
  487. package/modules/boost.src.js +15 -7
  488. package/modules/broken-axis.js +13 -13
  489. package/modules/broken-axis.js.map +1 -1
  490. package/modules/broken-axis.src.js +34 -15
  491. package/modules/bullet.js +1 -1
  492. package/modules/bullet.src.js +1 -1
  493. package/modules/coloraxis.js +24 -22
  494. package/modules/coloraxis.js.map +1 -1
  495. package/modules/coloraxis.src.js +954 -774
  496. package/modules/current-date-indicator.js +2 -2
  497. package/modules/current-date-indicator.js.map +1 -1
  498. package/modules/current-date-indicator.src.js +2 -2
  499. package/modules/cylinder.js +1 -1
  500. package/modules/cylinder.src.js +1 -1
  501. package/modules/data.js +33 -32
  502. package/modules/data.js.map +1 -1
  503. package/modules/data.src.js +182 -134
  504. package/modules/datagrouping.d.ts +5 -0
  505. package/modules/datagrouping.js +20 -20
  506. package/modules/datagrouping.js.map +1 -1
  507. package/modules/datagrouping.src.d.ts +5 -0
  508. package/modules/datagrouping.src.js +270 -228
  509. package/modules/debugger.js +3 -3
  510. package/modules/debugger.js.map +1 -1
  511. package/modules/debugger.src.js +3 -3
  512. package/modules/dependency-wheel.js +1 -1
  513. package/modules/dependency-wheel.src.js +1 -1
  514. package/modules/dotplot.js +1 -1
  515. package/modules/dotplot.src.js +1 -1
  516. package/modules/drag-panes.js +1 -1
  517. package/modules/drag-panes.src.js +1 -1
  518. package/modules/draggable-points.js +34 -34
  519. package/modules/draggable-points.js.map +1 -1
  520. package/modules/draggable-points.src.js +14 -5
  521. package/modules/drilldown.d.ts +27 -0
  522. package/modules/drilldown.js +18 -18
  523. package/modules/drilldown.js.map +1 -1
  524. package/modules/drilldown.src.d.ts +27 -0
  525. package/modules/drilldown.src.js +42 -16
  526. package/modules/dumbbell.js +1 -1
  527. package/modules/dumbbell.src.js +1 -1
  528. package/modules/export-data.js +20 -20
  529. package/modules/export-data.js.map +1 -1
  530. package/modules/export-data.src.js +8 -5
  531. package/modules/exporting.d.ts +29 -0
  532. package/modules/exporting.js +38 -35
  533. package/modules/exporting.js.map +1 -1
  534. package/modules/exporting.src.d.ts +29 -0
  535. package/modules/exporting.src.js +1937 -1614
  536. package/modules/full-screen.js +2 -2
  537. package/modules/full-screen.js.map +1 -1
  538. package/modules/full-screen.src.js +8 -6
  539. package/modules/funnel.js +1 -1
  540. package/modules/funnel.src.js +1 -1
  541. package/modules/funnel3d.js +1 -1
  542. package/modules/funnel3d.src.js +1 -1
  543. package/modules/gantt.js +218 -217
  544. package/modules/gantt.js.map +1 -1
  545. package/modules/gantt.src.js +74 -32
  546. package/modules/grid-axis.js +23 -22
  547. package/modules/grid-axis.js.map +1 -1
  548. package/modules/grid-axis.src.js +9 -4
  549. package/modules/heatmap.js +39 -37
  550. package/modules/heatmap.js.map +1 -1
  551. package/modules/heatmap.src.js +963 -779
  552. package/modules/heikinashi.js +17 -0
  553. package/modules/heikinashi.js.map +1 -0
  554. package/modules/heikinashi.src.js +394 -0
  555. package/modules/histogram-bellcurve.js +1 -1
  556. package/modules/histogram-bellcurve.src.js +1 -1
  557. package/modules/hollowcandlestick.js +18 -0
  558. package/modules/hollowcandlestick.js.map +1 -0
  559. package/modules/hollowcandlestick.src.js +504 -0
  560. package/modules/item-series.js +1 -1
  561. package/modules/item-series.src.js +1 -1
  562. package/modules/lollipop.js +1 -1
  563. package/modules/lollipop.src.js +1 -1
  564. package/modules/map.d.ts +9 -0
  565. package/modules/map.js +122 -119
  566. package/modules/map.js.map +1 -1
  567. package/modules/map.src.d.ts +9 -0
  568. package/modules/map.src.js +1655 -1332
  569. package/modules/marker-clusters.js +1 -1
  570. package/modules/marker-clusters.src.js +1 -1
  571. package/modules/networkgraph.js +1 -1
  572. package/modules/networkgraph.src.js +1 -1
  573. package/modules/no-data-to-display.js +3 -3
  574. package/modules/no-data-to-display.js.map +1 -1
  575. package/modules/no-data-to-display.src.js +2 -2
  576. package/modules/offline-exporting.js +18 -16
  577. package/modules/offline-exporting.js.map +1 -1
  578. package/modules/offline-exporting.src.js +623 -562
  579. package/modules/oldie-polyfills.js +1 -1
  580. package/modules/oldie-polyfills.src.js +1 -1
  581. package/modules/oldie.js +2 -2
  582. package/modules/oldie.src.js +2 -2
  583. package/modules/organization.js +1 -1
  584. package/modules/organization.src.js +1 -1
  585. package/modules/overlapping-datalabels.js +1 -1
  586. package/modules/overlapping-datalabels.src.js +1 -1
  587. package/modules/parallel-coordinates.js +1 -1
  588. package/modules/parallel-coordinates.src.js +1 -1
  589. package/modules/pareto.js +1 -1
  590. package/modules/pareto.src.js +1 -1
  591. package/modules/pathfinder.js +1 -1
  592. package/modules/pathfinder.src.js +1 -1
  593. package/modules/pattern-fill.js +14 -14
  594. package/modules/pattern-fill.js.map +1 -1
  595. package/modules/pattern-fill.src.js +24 -12
  596. package/modules/price-indicator.js +1 -1
  597. package/modules/price-indicator.src.js +1 -1
  598. package/modules/pyramid3d.js +1 -1
  599. package/modules/pyramid3d.src.js +1 -1
  600. package/modules/sankey.js +28 -28
  601. package/modules/sankey.js.map +1 -1
  602. package/modules/sankey.src.js +11 -11
  603. package/modules/series-label.js +1 -1
  604. package/modules/series-label.src.js +1 -1
  605. package/modules/solid-gauge.js +2 -2
  606. package/modules/solid-gauge.js.map +1 -1
  607. package/modules/solid-gauge.src.js +3 -3
  608. package/modules/sonification.js +1 -1
  609. package/modules/sonification.src.js +1 -1
  610. package/modules/static-scale.js +1 -1
  611. package/modules/static-scale.src.js +1 -1
  612. package/modules/stock-tools.js +159 -157
  613. package/modules/stock-tools.js.map +1 -1
  614. package/modules/stock-tools.src.js +253 -123
  615. package/modules/stock.d.ts +5 -0
  616. package/modules/stock.js +196 -191
  617. package/modules/stock.js.map +1 -1
  618. package/modules/stock.src.d.ts +5 -0
  619. package/modules/stock.src.js +7749 -7432
  620. package/modules/streamgraph.js +1 -1
  621. package/modules/streamgraph.src.js +1 -1
  622. package/modules/sunburst.js +5 -5
  623. package/modules/sunburst.js.map +1 -1
  624. package/modules/sunburst.src.js +6 -19
  625. package/modules/tilemap.js +1 -1
  626. package/modules/tilemap.src.js +1 -1
  627. package/modules/timeline.js +18 -17
  628. package/modules/timeline.js.map +1 -1
  629. package/modules/timeline.src.js +21 -24
  630. package/modules/treegrid.js +57 -57
  631. package/modules/treegrid.js.map +1 -1
  632. package/modules/treegrid.src.js +43 -19
  633. package/modules/treemap.js +5 -5
  634. package/modules/treemap.js.map +1 -1
  635. package/modules/treemap.src.js +5 -5
  636. package/modules/variable-pie.js +1 -1
  637. package/modules/variable-pie.src.js +1 -1
  638. package/modules/variwide.js +1 -1
  639. package/modules/variwide.src.js +1 -1
  640. package/modules/vector.js +1 -1
  641. package/modules/vector.src.js +1 -1
  642. package/modules/venn.js +31 -30
  643. package/modules/venn.js.map +1 -1
  644. package/modules/venn.src.js +508 -424
  645. package/modules/windbarb.js +1 -1
  646. package/modules/windbarb.src.js +1 -1
  647. package/modules/wordcloud.js +4 -4
  648. package/modules/wordcloud.js.map +1 -1
  649. package/modules/wordcloud.src.js +2 -1
  650. package/modules/xrange.js +17 -17
  651. package/modules/xrange.js.map +1 -1
  652. package/modules/xrange.src.js +7 -4
  653. package/package.json +1 -1
  654. package/themes/avocado.d.ts +6 -1
  655. package/themes/avocado.js +3 -3
  656. package/themes/avocado.js.map +1 -1
  657. package/themes/avocado.src.d.ts +6 -1
  658. package/themes/avocado.src.js +53 -22
  659. package/themes/dark-blue.d.ts +6 -1
  660. package/themes/dark-blue.js +3 -3
  661. package/themes/dark-blue.js.map +1 -1
  662. package/themes/dark-blue.src.d.ts +6 -1
  663. package/themes/dark-blue.src.js +231 -205
  664. package/themes/dark-green.d.ts +6 -1
  665. package/themes/dark-green.js +4 -4
  666. package/themes/dark-green.js.map +1 -1
  667. package/themes/dark-green.src.d.ts +6 -1
  668. package/themes/dark-green.src.js +236 -205
  669. package/themes/dark-unica.d.ts +6 -1
  670. package/themes/dark-unica.js +7 -7
  671. package/themes/dark-unica.js.map +1 -1
  672. package/themes/dark-unica.src.d.ts +6 -1
  673. package/themes/dark-unica.src.js +206 -174
  674. package/themes/gray.d.ts +6 -1
  675. package/themes/gray.js +3 -3
  676. package/themes/gray.js.map +1 -1
  677. package/themes/gray.src.d.ts +6 -1
  678. package/themes/gray.src.js +233 -207
  679. package/themes/grid-light.d.ts +6 -1
  680. package/themes/grid-light.js +4 -4
  681. package/themes/grid-light.js.map +1 -1
  682. package/themes/grid-light.src.d.ts +6 -1
  683. package/themes/grid-light.src.js +88 -57
  684. package/themes/grid.d.ts +6 -1
  685. package/themes/grid.js +3 -3
  686. package/themes/grid.js.map +1 -1
  687. package/themes/grid.src.d.ts +6 -1
  688. package/themes/grid.src.js +114 -83
  689. package/themes/high-contrast-dark.js +5 -4
  690. package/themes/high-contrast-dark.js.map +1 -1
  691. package/themes/high-contrast-dark.src.js +197 -166
  692. package/themes/high-contrast-light.js +3 -3
  693. package/themes/high-contrast-light.js.map +1 -1
  694. package/themes/high-contrast-light.src.js +54 -23
  695. package/themes/sand-signika.d.ts +6 -1
  696. package/themes/sand-signika.js +5 -5
  697. package/themes/sand-signika.js.map +1 -1
  698. package/themes/sand-signika.src.d.ts +6 -1
  699. package/themes/sand-signika.src.js +119 -88
  700. package/themes/skies.d.ts +6 -1
  701. package/themes/skies.js +5 -5
  702. package/themes/skies.js.map +1 -1
  703. package/themes/skies.src.d.ts +6 -1
  704. package/themes/skies.src.js +107 -76
  705. package/themes/sunset.d.ts +6 -1
  706. package/themes/sunset.js +3 -3
  707. package/themes/sunset.js.map +1 -1
  708. package/themes/sunset.src.d.ts +6 -1
  709. package/themes/sunset.src.js +52 -21
  710. package/es-modules/Core/Axis/ColorAxis.js +0 -1164
  711. package/es-modules/Core/Axis/HiddenAxis.js +0 -46
  712. package/es-modules/Core/Axis/PlotLineOrBand.js +0 -1051
  713. package/es-modules/Core/Series/DataLabels.js +0 -1173
  714. package/es-modules/Extensions/Exporting.js +0 -2024
  715. package/es-modules/Extensions/OfflineExporting.js +0 -621
  716. package/es-modules/Mixins/Geometry.js +0 -56
  717. package/es-modules/Mixins/GeometryCircles.js +0 -320
  718. package/es-modules/Series/Bubble/BubbleLegend.js +0 -893
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highstock JS v9.1.1 (2021-06-04)
2
+ * @license Highstock JS v9.2.2 (2021-08-24)
3
3
  *
4
4
  * Advanced Highcharts Stock tools
5
5
  *
@@ -150,11 +150,20 @@
150
150
  prevChartY = e.chartY;
151
151
  }, H.isTouchDevice ? { passive: false } : void 0);
152
152
  emitter.removeMouseUp = addEvent(H.doc, H.isTouchDevice ? 'touchend' : 'mouseup', function (e) {
153
+ // Sometimes the target is the annotation and sometimes its the
154
+ // controllable
155
+ var annotation = pick(emitter.target && emitter.target.annotation,
156
+ emitter.target);
157
+ if (annotation) {
158
+ // Keep annotation selected after dragging control point
159
+ annotation.cancelClick = emitter.hasDragged;
160
+ }
153
161
  emitter.cancelClick = emitter.hasDragged;
154
162
  emitter.hasDragged = false;
155
163
  emitter.chart.hasDraggedAnnotation = false;
156
164
  // ControlPoints vs Annotation:
157
- fireEvent(pick(emitter.target, emitter), 'afterUpdate');
165
+ fireEvent(pick(annotation, // #15952
166
+ emitter), 'afterUpdate');
158
167
  emitter.onMouseUp(e);
159
168
  }, H.isTouchDevice ? { passive: false } : void 0);
160
169
  },
@@ -2610,9 +2619,14 @@
2610
2619
  var mergedOptions = {};
2611
2620
  ['labels', 'shapes'].forEach(function (name) {
2612
2621
  if (baseOptions[name]) {
2613
- mergedOptions[name] = splat(newOptions[name]).map(function (basicOptions, i) {
2614
- return merge(baseOptions[name][i], basicOptions);
2615
- });
2622
+ if (newOptions[name]) {
2623
+ mergedOptions[name] = splat(newOptions[name]).map(function (basicOptions, i) {
2624
+ return merge(baseOptions[name][i], basicOptions);
2625
+ });
2626
+ }
2627
+ else {
2628
+ mergedOptions[name] = baseOptions[name];
2629
+ }
2616
2630
  }
2617
2631
  });
2618
2632
  return mergedOptions;
@@ -2644,14 +2658,13 @@
2644
2658
  .concat(this.options.shapes || [])
2645
2659
  .reduce(function (axes,
2646
2660
  labelOrShape) {
2647
- return [
2648
- xAxes[labelOrShape &&
2649
- labelOrShape.point &&
2650
- labelOrShape.point.xAxis] || axes[0],
2651
- yAxes[labelOrShape &&
2652
- labelOrShape.point &&
2653
- labelOrShape.point.yAxis] || axes[1]
2654
- ];
2661
+ var point = labelOrShape &&
2662
+ (labelOrShape.point ||
2663
+ (labelOrShape.points && labelOrShape.points[0]));
2664
+ return [
2665
+ xAxes[point && point.xAxis] || axes[0],
2666
+ yAxes[point && point.yAxis] || axes[1]
2667
+ ];
2655
2668
  }, []);
2656
2669
  this.clipXAxis = linkedAxes[0];
2657
2670
  this.clipYAxis = linkedAxes[1];
@@ -2765,10 +2778,16 @@
2765
2778
  */
2766
2779
  Annotation.prototype.setVisibility = function (visible) {
2767
2780
  var options = this.options,
2781
+ navigation = this.chart.navigationBindings,
2768
2782
  visibility = pick(visible, !options.visible);
2769
2783
  this.graphic.attr('visibility', visibility ? 'visible' : 'hidden');
2770
2784
  if (!visibility) {
2771
2785
  this.setControlPointsVisibility(false);
2786
+ if (navigation.activeAnnotation === this &&
2787
+ navigation.popup &&
2788
+ navigation.popup.formType === 'annotation-toolbar') {
2789
+ fireEvent(navigation, 'closePopup');
2790
+ }
2772
2791
  }
2773
2792
  options.visible = visibility;
2774
2793
  };
@@ -3294,46 +3313,18 @@
3294
3313
  *
3295
3314
  * @sample highcharts/annotations/mock-point/
3296
3315
  * Attach annotation to a mock point
3316
+ * @sample highcharts/annotations/mock-points/
3317
+ * Attach annotation to a mock point with different ways
3297
3318
  *
3298
3319
  * @declare Highcharts.AnnotationMockPointOptionsObject
3299
- * @type {string|*}
3320
+ * @type {
3321
+ * string|
3322
+ * Highcharts.AnnotationMockPointOptionsObject|
3323
+ * Highcharts.AnnotationMockPointFunction
3324
+ * }
3300
3325
  * @requires modules/annotations
3301
3326
  * @apioption annotations.labels.point
3302
3327
  */
3303
- /**
3304
- * The x position of the point. Units can be either in axis
3305
- * or chart pixel coordinates.
3306
- *
3307
- * @type {number}
3308
- * @apioption annotations.labels.point.x
3309
- */
3310
- /**
3311
- * The y position of the point. Units can be either in axis
3312
- * or chart pixel coordinates.
3313
- *
3314
- * @type {number}
3315
- * @apioption annotations.labels.point.y
3316
- */
3317
- /**
3318
- * This number defines which xAxis the point is connected to.
3319
- * It refers to either the axis id or the index of the axis in
3320
- * the xAxis array. If the option is not configured or the axis
3321
- * is not found the point's x coordinate refers to the chart
3322
- * pixels.
3323
- *
3324
- * @type {number|string|null}
3325
- * @apioption annotations.labels.point.xAxis
3326
- */
3327
- /**
3328
- * This number defines which yAxis the point is connected to.
3329
- * It refers to either the axis id or the index of the axis in
3330
- * the yAxis array. If the option is not configured or the axis
3331
- * is not found the point's y coordinate refers to the chart
3332
- * pixels.
3333
- *
3334
- * @type {number|string|null}
3335
- * @apioption annotations.labels.point.yAxis
3336
- */
3337
3328
  /**
3338
3329
  * An array of shapes for the annotation. For options that apply
3339
3330
  * to multiple shapes, then can be added to the
@@ -3349,20 +3340,30 @@
3349
3340
  * series - it is referenced by the point's id - or a new point
3350
3341
  * with defined x, y properties and optionally axes.
3351
3342
  *
3343
+ * @sample highcharts/annotations/mock-points/
3344
+ * Attach annotation to a mock point with different ways
3345
+ *
3352
3346
  * @declare Highcharts.AnnotationMockPointOptionsObject
3353
- * @type {string|Highcharts.AnnotationMockPointOptionsObject}
3347
+ * @type {
3348
+ * string|
3349
+ * Highcharts.AnnotationMockPointOptionsObject|
3350
+ * Highcharts.AnnotationMockPointFunction
3351
+ * }
3354
3352
  * @extends annotations.labels.point
3353
+ * @requires modules/annotations
3355
3354
  * @apioption annotations.shapes.point
3356
3355
  */
3357
3356
  /**
3358
- * An array of points for the shape. This option is available
3357
+ * An array of points for the shape
3358
+ * or a callback function that returns that shape point.
3359
+ *
3360
+ * This option is available
3359
3361
  * for shapes which can use multiple points such as path. A
3360
3362
  * point can be either a point object or a point's id.
3361
3363
  *
3362
3364
  * @see [annotations.shapes.point](annotations.shapes.point.html)
3363
3365
  *
3364
- * @declare Highcharts.AnnotationMockPointOptionsObject
3365
- * @type {Array<string|*>}
3366
+ * @type {Array<Highcharts.AnnotationShapePointOptions>}
3366
3367
  * @extends annotations.labels.point
3367
3368
  * @apioption annotations.shapes.points
3368
3369
  */
@@ -3781,6 +3782,68 @@
3781
3782
  }
3782
3783
  });
3783
3784
  H.Annotation = Annotation;
3785
+ /* eslint-enable no-invalid-this, valid-jsdoc */
3786
+ /**
3787
+ * Object of shape point.
3788
+ *
3789
+ * @interface Highcharts.AnnotationMockPointOptionsObject
3790
+ *
3791
+ */
3792
+ /**
3793
+ * The x position of the point. Units can be either in axis
3794
+ * or chart pixel coordinates.
3795
+ *
3796
+ * @type {number}
3797
+ * @name Highcharts.AnnotationMockPointOptionsObject.x
3798
+ */
3799
+ /**
3800
+ * The y position of the point. Units can be either in axis
3801
+ * or chart pixel coordinates.
3802
+ *
3803
+ * @type {number}
3804
+ * @name Highcharts.AnnotationMockPointOptionsObject.y
3805
+ */
3806
+ /**
3807
+ * This number defines which xAxis the point is connected to.
3808
+ * It refers to either the axis id or the index of the axis in
3809
+ * the xAxis array. If the option is not configured or the axis
3810
+ * is not found the point's x coordinate refers to the chart
3811
+ * pixels.
3812
+ *
3813
+ * @type {number|string|null}
3814
+ * @name Highcharts.AnnotationMockPointOptionsObject.xAxis
3815
+ */
3816
+ /**
3817
+ * This number defines which yAxis the point is connected to.
3818
+ * It refers to either the axis id or the index of the axis in
3819
+ * the yAxis array. If the option is not configured or the axis
3820
+ * is not found the point's y coordinate refers to the chart
3821
+ * pixels.
3822
+ *
3823
+ * @type {number|string|null}
3824
+ * @name Highcharts.AnnotationMockPointOptionsObject.yAxis
3825
+ */
3826
+ /**
3827
+ * Callback function that returns the annotation shape point.
3828
+ *
3829
+ * @callback Highcharts.AnnotationMockPointFunction
3830
+ *
3831
+ * @param {Highcharts.Annotation} annotation
3832
+ * An annotation instance.
3833
+ *
3834
+ * @return {Highcharts.AnnotationMockPointOptionsObject}
3835
+ * Annotations shape point.
3836
+ */
3837
+ /**
3838
+ * Shape point as string, object or function.
3839
+ *
3840
+ * @typedef {
3841
+ * string|
3842
+ * Highcharts.AnnotationMockPointOptionsObject|
3843
+ * Highcharts.AnnotationMockPointFunction
3844
+ * }Highcharts.AnnotationShapePointOptions
3845
+ */
3846
+ ''; // required by JSDoc parsing
3784
3847
 
3785
3848
  return Annotation;
3786
3849
  });
@@ -3962,14 +4025,10 @@
3962
4025
  updateRectSize: function (event, annotation) {
3963
4026
  var chart = annotation.chart,
3964
4027
  options = annotation.options.typeOptions,
3965
- coords = chart.pointer.getCoordinates(event),
3966
- coordsX = chart.navigationBindings.utils.getAssignedAxis(coords.xAxis),
3967
- coordsY = chart.navigationBindings.utils.getAssignedAxis(coords.yAxis),
3968
- width,
3969
- height;
3970
- if (coordsX && coordsY) {
3971
- width = coordsX.value - options.point.x;
3972
- height = options.point.y - coordsY.value;
4028
+ xAxis = isNumber(options.xAxis) && chart.xAxis[options.xAxis],
4029
+ yAxis = isNumber(options.yAxis) && chart.yAxis[options.yAxis];
4030
+ if (xAxis && yAxis) {
4031
+ var x = xAxis.toValue(event[xAxis.horiz ? 'chartX' : 'chartY']), y = yAxis.toValue(event[yAxis.horiz ? 'chartX' : 'chartY']), width = x - options.point.x, height = options.point.y - y;
3973
4032
  annotation.update({
3974
4033
  typeOptions: {
3975
4034
  background: {
@@ -4159,16 +4218,26 @@
4159
4218
  NavigationBindings.prototype.bindingsChartClick = function (chart, clickEvent) {
4160
4219
  chart = this.chart;
4161
4220
  var navigation = this,
4221
+ activeAnnotation = navigation.activeAnnotation,
4162
4222
  selectedButton = navigation.selectedButton,
4163
4223
  svgContainer = chart.renderer.boxWrapper;
4164
- // Click outside popups, should close them and deselect the annotation
4165
- if (navigation.activeAnnotation &&
4166
- !clickEvent.activeAnnotation &&
4167
- // Element could be removed in the child action, e.g. button
4168
- clickEvent.target.parentNode &&
4169
- // TO DO: Polyfill for IE11?
4170
- !closestPolyfill(clickEvent.target, '.' + PREFIX + 'popup')) {
4171
- fireEvent(navigation, 'closePopup');
4224
+ if (activeAnnotation) {
4225
+ // Click outside popups, should close them and deselect the
4226
+ // annotation
4227
+ if (!activeAnnotation.cancelClick && // #15729
4228
+ !clickEvent.activeAnnotation &&
4229
+ // Element could be removed in the child action, e.g. button
4230
+ clickEvent.target.parentNode &&
4231
+ // TO DO: Polyfill for IE11?
4232
+ !closestPolyfill(clickEvent.target, '.' + PREFIX + 'popup')) {
4233
+ fireEvent(navigation, 'closePopup');
4234
+ }
4235
+ else if (activeAnnotation.cancelClick) {
4236
+ // Reset cancelClick after the other event handlers have run
4237
+ setTimeout(function () {
4238
+ activeAnnotation.cancelClick = false;
4239
+ }, 0);
4240
+ }
4172
4241
  }
4173
4242
  if (!selectedButton || !selectedButton.start) {
4174
4243
  return;
@@ -4930,7 +4999,7 @@
4930
4999
  * from a different server.
4931
5000
  *
4932
5001
  * @type {string}
4933
- * @default https://code.highcharts.com/9.1.1/gfx/stock-icons/
5002
+ * @default https://code.highcharts.com/9.2.2/gfx/stock-icons/
4934
5003
  * @since 7.1.3
4935
5004
  * @apioption navigation.iconsURL
4936
5005
  */
@@ -5016,30 +5085,27 @@
5016
5085
  // className taken from StockToolsBindings.
5017
5086
  var buttonNode = chart.navigationBindings.container[0].querySelectorAll('.' + key);
5018
5087
  if (buttonNode) {
5019
- if (value.noDataState === 'normal') {
5020
- buttonNode.forEach(function (button) {
5088
+ for (var i = 0; i < buttonNode.length; i++) {
5089
+ var button = buttonNode[i];
5090
+ if (value.noDataState === 'normal') {
5021
5091
  // If button has noDataState: 'normal',
5022
5092
  // and has disabledClassName,
5023
5093
  // remove this className.
5024
5094
  if (button.className.indexOf(disabledClassName) !== -1) {
5025
5095
  button.classList.remove(disabledClassName);
5026
5096
  }
5027
- });
5028
- }
5029
- else if (!buttonsEnabled_1) {
5030
- buttonNode.forEach(function (button) {
5097
+ }
5098
+ else if (!buttonsEnabled_1) {
5031
5099
  if (button.className.indexOf(disabledClassName) === -1) {
5032
5100
  button.className += ' ' + disabledClassName;
5033
5101
  }
5034
- });
5035
- }
5036
- else {
5037
- buttonNode.forEach(function (button) {
5102
+ }
5103
+ else {
5038
5104
  // Enable all buttons by deleting the className.
5039
5105
  if (button.className.indexOf(disabledClassName) !== -1) {
5040
5106
  button.classList.remove(disabledClassName);
5041
5107
  }
5042
- });
5108
+ }
5043
5109
  }
5044
5110
  }
5045
5111
  }
@@ -5171,6 +5237,36 @@
5171
5237
  });
5172
5238
  };
5173
5239
  };
5240
+ bindingsUtils.indicatorsWithAxes = [
5241
+ 'ad',
5242
+ 'atr',
5243
+ 'cci',
5244
+ 'cmf',
5245
+ 'disparityindex',
5246
+ 'cmo',
5247
+ 'dmi',
5248
+ 'macd',
5249
+ 'mfi',
5250
+ 'roc',
5251
+ 'rsi',
5252
+ 'ao',
5253
+ 'aroon',
5254
+ 'aroonoscillator',
5255
+ 'trix',
5256
+ 'apo',
5257
+ 'dpo',
5258
+ 'ppo',
5259
+ 'natr',
5260
+ 'obv',
5261
+ 'williamsr',
5262
+ 'stochastic',
5263
+ 'slowstochastic',
5264
+ 'linearRegression',
5265
+ 'linearRegressionSlope',
5266
+ 'linearRegressionIntercept',
5267
+ 'linearRegressionAngle',
5268
+ 'klinger'
5269
+ ];
5174
5270
  bindingsUtils.manageIndicators = function (data) {
5175
5271
  var navigation = this,
5176
5272
  chart = navigation.chart,
@@ -5187,36 +5283,7 @@
5187
5283
  'vbp',
5188
5284
  'vwap'
5189
5285
  ],
5190
- indicatorsWithAxes = [
5191
- 'ad',
5192
- 'atr',
5193
- 'cci',
5194
- 'cmf',
5195
- 'disparityindex',
5196
- 'cmo',
5197
- 'dmi',
5198
- 'macd',
5199
- 'mfi',
5200
- 'roc',
5201
- 'rsi',
5202
- 'ao',
5203
- 'aroon',
5204
- 'aroonoscillator',
5205
- 'trix',
5206
- 'apo',
5207
- 'dpo',
5208
- 'ppo',
5209
- 'natr',
5210
- 'obv',
5211
- 'williamsr',
5212
- 'stochastic',
5213
- 'slowstochastic',
5214
- 'linearRegression',
5215
- 'linearRegressionSlope',
5216
- 'linearRegressionIntercept',
5217
- 'linearRegressionAngle',
5218
- 'klinger'
5219
- ],
5286
+ indicatorsWithAxes = bindingsUtils.indicatorsWithAxes,
5220
5287
  yAxis,
5221
5288
  parentSeries,
5222
5289
  defaultOptions,
@@ -5313,12 +5380,13 @@
5313
5380
  * @return {void}
5314
5381
  */
5315
5382
  bindingsUtils.updateHeight = function (e, annotation) {
5316
- var coordsY = this.utils.getAssignedAxis(this.chart.pointer.getCoordinates(e).yAxis);
5317
- if (coordsY) {
5383
+ var options = annotation.options.typeOptions,
5384
+ yAxis = isNumber(options.yAxis) && this.chart.yAxis[options.yAxis];
5385
+ if (yAxis && options.points) {
5318
5386
  annotation.update({
5319
5387
  typeOptions: {
5320
- height: coordsY.value -
5321
- annotation.options.typeOptions.points[1].y
5388
+ height: yAxis.toValue(e[yAxis.horiz ? 'chartX' : 'chartY']) -
5389
+ (options.points[1].y || 0)
5322
5390
  }
5323
5391
  });
5324
5392
  }
@@ -5414,14 +5482,13 @@
5414
5482
  bindingsUtils.updateNthPoint = function (startIndex) {
5415
5483
  return function (e, annotation) {
5416
5484
  var options = annotation.options.typeOptions,
5417
- coords = this.chart.pointer.getCoordinates(e),
5418
- coordsX = this.utils.getAssignedAxis(coords.xAxis),
5419
- coordsY = this.utils.getAssignedAxis(coords.yAxis);
5420
- if (coordsX && coordsY) {
5485
+ xAxis = isNumber(options.xAxis) && this.chart.xAxis[options.xAxis],
5486
+ yAxis = isNumber(options.yAxis) && this.chart.yAxis[options.yAxis];
5487
+ if (xAxis && yAxis) {
5421
5488
  options.points.forEach(function (point, index) {
5422
5489
  if (index >= startIndex) {
5423
- point.x = coordsX.value;
5424
- point.y = coordsY.value;
5490
+ point.x = xAxis.toValue(e[xAxis.horiz ? 'chartX' : 'chartY']);
5491
+ point.y = yAxis.toValue(e[yAxis.horiz ? 'chartX' : 'chartY']);
5425
5492
  }
5426
5493
  });
5427
5494
  annotation.update({
@@ -6921,6 +6988,44 @@
6921
6988
  fireEvent(this, 'deselectButton', { button: button });
6922
6989
  }
6923
6990
  },
6991
+ /**
6992
+ * Changes main series to `'heikinashi'` type.
6993
+ *
6994
+ * @type {Highcharts.NavigationBindingsOptionsObject}
6995
+ * @product highstock
6996
+ * @default {"className": "highcharts-series-type-heikinashi", "init": function() {}}
6997
+ */
6998
+ seriesTypeHeikinAshi: {
6999
+ /** @ignore-option */
7000
+ className: 'highcharts-series-type-heikinashi',
7001
+ // eslint-disable-next-line valid-jsdoc
7002
+ /** @ignore-option */
7003
+ init: function (button) {
7004
+ this.chart.series[0].update({
7005
+ type: 'heikinashi'
7006
+ });
7007
+ fireEvent(this, 'deselectButton', { button: button });
7008
+ }
7009
+ },
7010
+ /**
7011
+ * Changes main series to `'hollowcandlestick'` type.
7012
+ *
7013
+ * @type {Highcharts.NavigationBindingsOptionsObject}
7014
+ * @product highstock
7015
+ * @default {"className": "highcharts-series-type-hollowcandlestick", "init": function() {}}
7016
+ */
7017
+ seriesTypeHollowCandlestick: {
7018
+ /** @ignore-option */
7019
+ className: 'highcharts-series-type-hollowcandlestick',
7020
+ // eslint-disable-next-line valid-jsdoc
7021
+ /** @ignore-option */
7022
+ init: function (button) {
7023
+ this.chart.series[0].update({
7024
+ type: 'hollowcandlestick'
7025
+ });
7026
+ fireEvent(this, 'deselectButton', { button: button });
7027
+ }
7028
+ },
6924
7029
  /**
6925
7030
  * Displays chart in fullscreen.
6926
7031
  *
@@ -7153,6 +7258,8 @@
7153
7258
  typeOHLC: 'OHLC',
7154
7259
  typeLine: 'Line',
7155
7260
  typeCandlestick: 'Candlestick',
7261
+ typeHollowCandlestick: 'Hollow Candlestick',
7262
+ typeHeikinAshi: 'Heikin Ashi',
7156
7263
  // Basic shapes:
7157
7264
  circle: 'Circle',
7158
7265
  label: 'Label',
@@ -7240,6 +7347,7 @@
7240
7347
  // Indicators' params (#15170):
7241
7348
  index: 'Index',
7242
7349
  period: 'Period',
7350
+ periods: 'Periods',
7243
7351
  standardDeviation: 'Standard deviation',
7244
7352
  periodTenkan: 'Tenkan period',
7245
7353
  periodSenkouSpanB: 'Senkou Span B period',
@@ -7818,12 +7926,15 @@
7818
7926
  * 'typeOHLC',
7819
7927
  * 'typeLine',
7820
7928
  * 'typeCandlestick'
7929
+ * 'typeHollowCandlestick'
7821
7930
  * ]
7822
7931
  */
7823
7932
  items: [
7824
7933
  'typeOHLC',
7825
7934
  'typeLine',
7826
- 'typeCandlestick'
7935
+ 'typeCandlestick',
7936
+ 'typeHollowCandlestick',
7937
+ 'typeHeikinAshi'
7827
7938
  ],
7828
7939
  typeOHLC: {
7829
7940
  /**
@@ -7848,6 +7959,22 @@
7848
7959
  * @type {string}
7849
7960
  */
7850
7961
  symbol: 'series-candlestick.svg'
7962
+ },
7963
+ typeHeikinAshi: {
7964
+ /**
7965
+ * A predefined background symbol for the button.
7966
+ *
7967
+ * @type {string}
7968
+ */
7969
+ symbol: 'series-heikin-ashi.svg'
7970
+ },
7971
+ typeHollowCandlestick: {
7972
+ /**
7973
+ * A predefined background symbol for the button.
7974
+ *
7975
+ * @type {string}
7976
+ */
7977
+ symbol: 'series-hollow-candlestick.svg'
7851
7978
  }
7852
7979
  },
7853
7980
  fullScreen: {
@@ -8234,6 +8361,7 @@
8234
8361
  container.appendChild(wrapper);
8235
8362
  // Mimic event behaviour of being outside chart.container
8236
8363
  [
8364
+ 'mousedown',
8237
8365
  'mousemove',
8238
8366
  'click',
8239
8367
  'touchstart'
@@ -8335,7 +8463,7 @@
8335
8463
  */
8336
8464
  Toolbar.prototype.switchSymbol = function (button, redraw) {
8337
8465
  var buttonWrapper = button.parentNode,
8338
- buttonWrapperClass = buttonWrapper.classList.value,
8466
+ buttonWrapperClass = buttonWrapper.className,
8339
8467
  // main button in first level og GUI
8340
8468
  mainNavButton = buttonWrapper.parentNode.parentNode;
8341
8469
  // if the button is disabled, don't do anything
@@ -8429,7 +8557,7 @@
8429
8557
  Toolbar.prototype.getIconsURL = function () {
8430
8558
  return this.chart.options.navigation.iconsURL ||
8431
8559
  this.options.iconsURL ||
8432
- 'https://code.highcharts.com/9.1.1/gfx/stock-icons/';
8560
+ 'https://code.highcharts.com/9.2.2/gfx/stock-icons/';
8433
8561
  };
8434
8562
  return Toolbar;
8435
8563
  }());
@@ -8474,6 +8602,8 @@
8474
8602
  typeLine: PREFIX + 'series-type-line',
8475
8603
  typeOHLC: PREFIX + 'series-type-ohlc',
8476
8604
  typeCandlestick: PREFIX + 'series-type-candlestick',
8605
+ typeHollowCandlestick: PREFIX + 'series-type-hollowcandlestick',
8606
+ typeHeikinAshi: PREFIX + 'series-type-heikinashi',
8477
8607
  fullScreen: PREFIX + 'full-screen',
8478
8608
  toggleAnnotations: PREFIX + 'toggle-annotations',
8479
8609
  saveChart: PREFIX + 'save-chart',
@@ -14,6 +14,11 @@ import * as _Highcharts from "../highcharts";
14
14
  export function factory(highcharts: typeof Highcharts): void;
15
15
  declare module "../highcharts" {
16
16
  interface Axis {
17
+ /**
18
+ * (Highstock) Check the groupPixelWidth and apply the grouping if
19
+ * needed. Fired only after processing the data.
20
+ */
21
+ applyGrouping(): void;
17
22
  /**
18
23
  * Highcharts Stock only. Set the compare mode on all series belonging
19
24
  * to an Y axis after render time.