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
@@ -26,15 +26,14 @@ var getStartAndEndRadians = CenteredSeriesMixin.getStartAndEndRadians;
26
26
  import ColumnSeries from '../Column/ColumnSeries.js';
27
27
  import H from '../../Core/Globals.js';
28
28
  var noop = H.noop;
29
- import LegendSymbolMixin from '../../Mixins/LegendSymbol.js';
30
- import palette from '../../Core/Color/Palette.js';
29
+ import LegendSymbol from '../../Core/Legend/LegendSymbol.js';
30
+ import Palette from '../../Core/Color/Palette.js';
31
31
  import PiePoint from './PiePoint.js';
32
32
  import Series from '../../Core/Series/Series.js';
33
33
  import SeriesRegistry from '../../Core/Series/SeriesRegistry.js';
34
34
  import Symbols from '../../Core/Renderer/SVG/Symbols.js';
35
35
  import U from '../../Core/Utilities.js';
36
36
  var clamp = U.clamp, extend = U.extend, fireEvent = U.fireEvent, merge = U.merge, pick = U.pick, relativeLength = U.relativeLength;
37
- import '../../Core/DefaultOptions.js';
38
37
  /* *
39
38
  *
40
39
  * Class
@@ -112,7 +111,8 @@ var PieSeries = /** @class */ (function (_super) {
112
111
  * @private
113
112
  */
114
113
  PieSeries.prototype.drawEmpty = function () {
115
- var centerX, centerY, start = this.startAngleRad, end = this.endAngleRad, options = this.options;
114
+ var start = this.startAngleRad, end = this.endAngleRad, options = this.options;
115
+ var centerX, centerY;
116
116
  // Draw auxiliary graph if there're no visible points.
117
117
  if (this.total === 0 && this.center) {
118
118
  centerX = this.center[0];
@@ -134,7 +134,7 @@ var PieSeries = /** @class */ (function (_super) {
134
134
  this.graph.attr({
135
135
  'stroke-width': options.borderWidth,
136
136
  fill: options.fillColor || 'none',
137
- stroke: options.color || palette.neutralColor20
137
+ stroke: options.color || Palette.neutralColor20
138
138
  });
139
139
  }
140
140
  }
@@ -182,9 +182,9 @@ var PieSeries = /** @class */ (function (_super) {
182
182
  // Variable pie has individual radius
183
183
  radius = this.radii ?
184
184
  this.radii[point.index] || 0 :
185
- center[2] / 2, angle, x;
186
- angle = Math.asin(clamp((y - center[1]) / (radius + point.labelDistance), -1, 1));
187
- x = center[0] +
185
+ center[2] / 2;
186
+ var angle = Math.asin(clamp((y - center[1]) / (radius + point.labelDistance), -1, 1));
187
+ var x = center[0] +
188
188
  (left ? -1 : 1) *
189
189
  (Math.cos(angle) * (radius + point.labelDistance)) +
190
190
  (point.labelDistance > 0 ?
@@ -205,7 +205,8 @@ var PieSeries = /** @class */ (function (_super) {
205
205
  * @private
206
206
  */
207
207
  PieSeries.prototype.redrawPoints = function () {
208
- var series = this, chart = series.chart, renderer = chart.renderer, groupTranslation, graphic, pointAttr, shapeArgs, shadow = series.options.shadow;
208
+ var series = this, chart = series.chart, renderer = chart.renderer, shadow = series.options.shadow;
209
+ var groupTranslation, graphic, pointAttr, shapeArgs;
209
210
  this.drawEmpty();
210
211
  if (shadow && !series.shadowGroup && !chart.styledMode) {
211
212
  series.shadowGroup = renderer
@@ -285,11 +286,12 @@ var PieSeries = /** @class */ (function (_super) {
285
286
  */
286
287
  PieSeries.prototype.translate = function (positions) {
287
288
  this.generatePoints();
288
- var series = this, cumulative = 0, precision = 1000, // issue #172
289
- options = series.options, slicedOffset = options.slicedOffset, connectorOffset = slicedOffset + (options.borderWidth || 0), finalConnectorOffset, start, end, angle, radians = getStartAndEndRadians(options.startAngle, options.endAngle), startAngleRad = series.startAngleRad = radians.start, endAngleRad = series.endAngleRad = radians.end, circ = endAngleRad - startAngleRad, // 2 * Math.PI,
290
- points = series.points,
289
+ var series = this, precision = 1000, // issue #172
290
+ options = series.options, slicedOffset = options.slicedOffset, connectorOffset = slicedOffset + (options.borderWidth || 0), radians = getStartAndEndRadians(options.startAngle, options.endAngle), startAngleRad = series.startAngleRad = radians.start, endAngleRad = series.endAngleRad = radians.end, circ = endAngleRad - startAngleRad, // 2 * Math.PI,
291
+ points = series.points, labelDistance = options.dataLabels.distance, ignoreHiddenPoint = options.ignoreHiddenPoint, len = points.length;
292
+ var finalConnectorOffset, start, end, angle,
291
293
  // the x component of the radius vector for a given point
292
- radiusX, radiusY, labelDistance = options.dataLabels.distance, ignoreHiddenPoint = options.ignoreHiddenPoint, i, len = points.length, point;
294
+ radiusX, radiusY, i, point, cumulative = 0;
293
295
  // Get positions - either an integer or a percentage string must be
294
296
  // given. If positions are passed as a parameter, we're in a
295
297
  // recursive loop for adjusting space for data labels.
@@ -394,7 +396,8 @@ var PieSeries = /** @class */ (function (_super) {
394
396
  * @private
395
397
  */
396
398
  PieSeries.prototype.updateTotals = function () {
397
- var i, total = 0, points = this.points, len = points.length, point, ignoreHiddenPoint = this.options.ignoreHiddenPoint;
399
+ var points = this.points, len = points.length, ignoreHiddenPoint = this.options.ignoreHiddenPoint;
400
+ var i, point, total = 0;
398
401
  // Get the total sum
399
402
  for (i = 0; i < len; i++) {
400
403
  point = points[i];
@@ -903,7 +906,7 @@ var PieSeries = /** @class */ (function (_super) {
903
906
  *
904
907
  * @private
905
908
  */
906
- borderColor: palette.backgroundColor,
909
+ borderColor: Palette.backgroundColor,
907
910
  /**
908
911
  * The width of the border surrounding each slice.
909
912
  *
@@ -958,7 +961,7 @@ extend(PieSeries.prototype, {
958
961
  axisTypes: [],
959
962
  directTouch: true,
960
963
  drawGraph: void 0,
961
- drawLegendSymbol: LegendSymbolMixin.drawRectangle,
964
+ drawLegendSymbol: LegendSymbol.drawRectangle,
962
965
  drawTracker: ColumnSeries.prototype.drawTracker,
963
966
  getCenter: CenteredSeriesMixin.getCenter,
964
967
  getSymbol: noop,
@@ -23,12 +23,12 @@ var __extends = (this && this.__extends) || (function () {
23
23
  })();
24
24
  import H from '../../Core/Globals.js';
25
25
  var noop = H.noop;
26
- import LegendSymbolMixin from '../../Mixins/LegendSymbol.js';
26
+ import LegendSymbol from '../../Core/Legend/LegendSymbol.js';
27
27
  import SeriesRegistry from '../../Core/Series/SeriesRegistry.js';
28
28
  var Series = SeriesRegistry.series, _a = SeriesRegistry.seriesTypes, AreaSeries = _a.area, LineSeries = _a.line, ScatterSeries = _a.scatter;
29
29
  import U from '../../Core/Utilities.js';
30
30
  var extend = U.extend, merge = U.merge;
31
- import '../../Core/Legend.js';
31
+ import '../../Core/Legend/Legend.js';
32
32
  /* *
33
33
  *
34
34
  * Class
@@ -107,7 +107,7 @@ var PolygonSeries = /** @class */ (function (_super) {
107
107
  }(ScatterSeries));
108
108
  extend(PolygonSeries.prototype, {
109
109
  type: 'polygon',
110
- drawLegendSymbol: LegendSymbolMixin.drawRectangle,
110
+ drawLegendSymbol: LegendSymbol.drawRectangle,
111
111
  drawTracker: Series.prototype.drawTracker,
112
112
  setStackedPoints: noop // No stacking points on polygons (#5310)
113
113
  });
@@ -152,7 +152,7 @@ var SankeySeries = /** @class */ (function (_super) {
152
152
  SankeySeries.prototype.createNodeColumns = function () {
153
153
  var columns = [];
154
154
  this.nodes.forEach(function (node) {
155
- var fromColumn = -1, fromNode, i, point;
155
+ var fromColumn = -1, fromNode;
156
156
  if (!defined(node.options.column)) {
157
157
  // No links to this node, place it left
158
158
  if (node.linksTo.length === 0) {
@@ -161,9 +161,11 @@ var SankeySeries = /** @class */ (function (_super) {
161
161
  // highest order column that links to this one.
162
162
  }
163
163
  else {
164
- for (i = 0; i < node.linksTo.length; i++) {
165
- point = node.linksTo[0];
166
- if (point.fromNode.column > fromColumn) {
164
+ for (var i = 0; i < node.linksTo.length; i++) {
165
+ var point = node.linksTo[i];
166
+ if (point.fromNode.column > fromColumn &&
167
+ point.fromNode !== node // #16080
168
+ ) {
167
169
  fromNode = point.fromNode;
168
170
  fromColumn = fromNode.column;
169
171
  }
@@ -173,15 +175,15 @@ var SankeySeries = /** @class */ (function (_super) {
173
175
  if (fromNode &&
174
176
  fromNode.options.layout === 'hanging') {
175
177
  node.hangsFrom = fromNode;
176
- i = -1; // Reuse existing variable i
178
+ var i_1 = -1;
177
179
  find(fromNode.linksFrom, function (link, index) {
178
180
  var found = link.toNode === node;
179
181
  if (found) {
180
- i = index;
182
+ i_1 = index;
181
183
  }
182
184
  return found;
183
185
  });
184
- node.column += i;
186
+ node.column += i_1;
185
187
  }
186
188
  }
187
189
  }
@@ -23,7 +23,7 @@ var __extends = (this && this.__extends) || (function () {
23
23
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
24
24
  };
25
25
  })();
26
- import LegendSymbolMixin from '../../Mixins/LegendSymbol.js';
26
+ import LegendSymbol from '../../Core/Legend/LegendSymbol.js';
27
27
  import SeriesRegistry from '../../Core/Series/SeriesRegistry.js';
28
28
  var _a = SeriesRegistry.seriesTypes, GaugeSeries = _a.gauge, pieProto = _a.pie.prototype;
29
29
  import SolidGaugeAxis from '../../Core/Axis/SolidGaugeAxis.js';
@@ -267,7 +267,7 @@ var SolidGaugeSeries = /** @class */ (function (_super) {
267
267
  return SolidGaugeSeries;
268
268
  }(GaugeSeries));
269
269
  extend(SolidGaugeSeries.prototype, {
270
- drawLegendSymbol: LegendSymbolMixin.drawRectangle
270
+ drawLegendSymbol: LegendSymbol.drawRectangle
271
271
  });
272
272
  SeriesRegistry.registerSeriesType('solidgauge', SolidGaugeSeries);
273
273
  /* *
@@ -692,18 +692,6 @@ var SunburstSeries = /** @class */ (function (_super) {
692
692
  * @type {object}
693
693
  * @apioption plotOptions.sunburst.levels.levelSize
694
694
  */
695
- /**
696
- * Can set a `rotation` on all points which lies on the same level.
697
- *
698
- * @type {number}
699
- * @apioption plotOptions.sunburst.levels.rotation
700
- */
701
- /**
702
- * Can set a `rotationMode` on all points which lies on the same level.
703
- *
704
- * @type {string}
705
- * @apioption plotOptions.sunburst.levels.rotationMode
706
- */
707
695
  /**
708
696
  * When enabled the user can click on a point which is a parent and
709
697
  * zoom in on its children. Deprecated and replaced by
@@ -760,8 +748,7 @@ var SunburstSeries = /** @class */ (function (_super) {
760
748
  * resulting in a better layout, however multiple lines and
761
749
  * `textOutline` are not supported.
762
750
  *
763
- * The `series.rotation` option takes precedence over
764
- * `rotationMode`.
751
+ * The `rotation` option takes precedence over `rotationMode`.
765
752
  *
766
753
  * @type {string}
767
754
  * @sample {highcharts} highcharts/plotoptions/sunburst-datalabels-rotationmode-circular/
@@ -25,6 +25,7 @@ var __extends = (this && this.__extends) || (function () {
25
25
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
26
26
  };
27
27
  })();
28
+ import Point from '../../Core/Series/Point.js';
28
29
  import SeriesRegistry from '../../Core/Series/SeriesRegistry.js';
29
30
  var Series = SeriesRegistry.series, PiePoint = SeriesRegistry.seriesTypes.pie.prototype.pointClass;
30
31
  import U from '../../Core/Utilities.js';
@@ -152,6 +153,11 @@ var TimelinePoint = /** @class */ (function (_super) {
152
153
  series.chart.redraw();
153
154
  }
154
155
  };
156
+ TimelinePoint.prototype.applyOptions = function (options, x) {
157
+ options = Point.prototype.optionsToObject.call(this, options);
158
+ this.userDLOptions = merge(this.userDLOptions, options.dataLabels);
159
+ return _super.prototype.applyOptions.call(this, options, x);
160
+ };
155
161
  return TimelinePoint;
156
162
  }(Series.prototype.pointClass));
157
163
  /* *
@@ -25,7 +25,7 @@ var __extends = (this && this.__extends) || (function () {
25
25
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
26
26
  };
27
27
  })();
28
- import LegendSymbolMixin from '../../Mixins/LegendSymbol.js';
28
+ import LegendSymbol from '../../Core/Legend/LegendSymbol.js';
29
29
  import palette from '../../Core/Color/Palette.js';
30
30
  import SeriesRegistry from '../../Core/Series/SeriesRegistry.js';
31
31
  var _a = SeriesRegistry.seriesTypes, ColumnSeries = _a.column, LineSeries = _a.line;
@@ -125,22 +125,19 @@ var TimelineSeries = /** @class */ (function (_super) {
125
125
  });
126
126
  };
127
127
  TimelineSeries.prototype.distributeDL = function () {
128
- var series = this, dataLabelsOptions = series.options.dataLabels, options, pointDLOptions, newOptions = {}, visibilityIndex = 1, distance = dataLabelsOptions.distance;
129
- series.points.forEach(function (point) {
130
- if (point.visible && !point.isNull) {
131
- options = point.options;
132
- pointDLOptions = point.options.dataLabels;
133
- if (!series.hasRendered) {
134
- point.userDLOptions =
135
- merge({}, pointDLOptions);
136
- }
137
- newOptions[series.chart.inverted ? 'x' : 'y'] =
138
- dataLabelsOptions.alternate && visibilityIndex % 2 ?
139
- -distance : distance;
140
- options.dataLabels = merge(newOptions, point.userDLOptions);
128
+ var series = this, dataLabelsOptions = series.options.dataLabels;
129
+ var visibilityIndex = 1;
130
+ if (dataLabelsOptions) {
131
+ var distance_1 = dataLabelsOptions.distance || 0;
132
+ series.points.forEach(function (point) {
133
+ var _a;
134
+ point.options.dataLabels = merge((_a = {},
135
+ _a[series.chart.inverted ? 'x' : 'y'] = dataLabelsOptions.alternate && visibilityIndex % 2 ?
136
+ -distance_1 : distance_1,
137
+ _a), point.userDLOptions);
141
138
  visibilityIndex++;
142
- }
143
- });
139
+ });
140
+ }
144
141
  };
145
142
  TimelineSeries.prototype.generatePoints = function () {
146
143
  var series = this;
@@ -435,7 +432,7 @@ var TimelineSeries = /** @class */ (function (_super) {
435
432
  }(LineSeries));
436
433
  extend(TimelineSeries.prototype, {
437
434
  // Use a simple symbol from LegendSymbolMixin
438
- drawLegendSymbol: LegendSymbolMixin.drawRectangle,
435
+ drawLegendSymbol: LegendSymbol.drawRectangle,
439
436
  // Use a group of trackers from TrackerMixin
440
437
  drawTracker: ColumnSeries.prototype.drawTracker,
441
438
  pointClass: TimelinePoint,
@@ -29,7 +29,7 @@ import ColorMapMixin from '../../Mixins/ColorMapSeries.js';
29
29
  var colorMapSeriesMixin = ColorMapMixin.colorMapSeriesMixin;
30
30
  import H from '../../Core/Globals.js';
31
31
  var noop = H.noop;
32
- import LegendSymbolMixin from '../../Mixins/LegendSymbol.js';
32
+ import LegendSymbol from '../../Core/Legend/LegendSymbol.js';
33
33
  import palette from '../../Core/Color/Palette.js';
34
34
  import SeriesRegistry from '../../Core/Series/SeriesRegistry.js';
35
35
  var Series = SeriesRegistry.series, _a = SeriesRegistry.seriesTypes, ColumnSeries = _a.column, HeatmapSeries = _a.heatmap, ScatterSeries = _a.scatter;
@@ -1367,7 +1367,7 @@ extend(TreemapSeries.prototype, {
1367
1367
  buildKDTree: noop,
1368
1368
  colorKey: 'colorValue',
1369
1369
  directTouch: true,
1370
- drawLegendSymbol: LegendSymbolMixin.drawRectangle,
1370
+ drawLegendSymbol: LegendSymbol.drawRectangle,
1371
1371
  getExtremesFromAll: true,
1372
1372
  getSymbol: noop,
1373
1373
  optionalAxis: 'colorAxis',
@@ -1435,7 +1435,7 @@ export default TreemapSeries;
1435
1435
  *
1436
1436
  * @type {Array<number|null|*>}
1437
1437
  * @extends series.heatmap.data
1438
- * @excluding x, y
1438
+ * @excluding x, y, pointPadding
1439
1439
  * @product highcharts
1440
1440
  * @apioption series.treemap.data
1441
1441
  */
@@ -32,10 +32,10 @@ import A from '../../Core/Animation/AnimationUtilities.js';
32
32
  var animObject = A.animObject;
33
33
  import Color from '../../Core/Color/Color.js';
34
34
  var color = Color.parse;
35
- import GeometryMixin from '../../Mixins/Geometry.js';
36
- var getCenterOfPoints = GeometryMixin.getCenterOfPoints, getDistanceBetweenPoints = GeometryMixin.getDistanceBetweenPoints;
37
- import GeometryCirclesModule from '../../Mixins/GeometryCircles.js';
38
- var getAreaOfCircle = GeometryCirclesModule.getAreaOfCircle, getAreaOfIntersectionBetweenCircles = GeometryCirclesModule.getAreaOfIntersectionBetweenCircles, getCircleCircleIntersection = GeometryCirclesModule.getCircleCircleIntersection, getCirclesIntersectionPolygon = GeometryCirclesModule.getCirclesIntersectionPolygon, getOverlapBetweenCirclesByDistance = GeometryCirclesModule.getOverlapBetweenCircles, isCircle1CompletelyOverlappingCircle2 = GeometryCirclesModule.isCircle1CompletelyOverlappingCircle2, isPointInsideAllCircles = GeometryCirclesModule.isPointInsideAllCircles, isPointInsideCircle = GeometryCirclesModule.isPointInsideCircle, isPointOutsideAllCircles = GeometryCirclesModule.isPointOutsideAllCircles;
35
+ import CU from '../../Core/Geometry/CircleUtilities.js';
36
+ var getAreaOfIntersectionBetweenCircles = CU.getAreaOfIntersectionBetweenCircles, getCirclesIntersectionPolygon = CU.getCirclesIntersectionPolygon, isCircle1CompletelyOverlappingCircle2 = CU.isCircle1CompletelyOverlappingCircle2, isPointInsideAllCircles = CU.isPointInsideAllCircles, isPointOutsideAllCircles = CU.isPointOutsideAllCircles;
37
+ import GU from '../../Core/Geometry/GeometryUtilities.js';
38
+ var getCenterOfPoints = GU.getCenterOfPoints;
39
39
  import NelderMeadMixin from '../../Mixins/NelderMead.js';
40
40
  var nelderMead = NelderMeadMixin.nelderMead;
41
41
  import palette from '../../Core/Color/Palette.js';
@@ -14,11 +14,11 @@
14
14
  * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
15
15
  *
16
16
  * */
17
- import GeometryCirclesModule from '../../Mixins/GeometryCircles.js';
18
- var getAreaOfCircle = GeometryCirclesModule.getAreaOfCircle, getCircleCircleIntersection = GeometryCirclesModule.getCircleCircleIntersection, getOverlapBetweenCirclesByDistance = GeometryCirclesModule.getOverlapBetweenCircles, isPointInsideAllCircles = GeometryCirclesModule.isPointInsideAllCircles, isPointInsideCircle = GeometryCirclesModule.isPointInsideCircle, isPointOutsideAllCircles = GeometryCirclesModule.isPointOutsideAllCircles;
19
- import GeometryMixin from '../../Mixins/Geometry.js';
17
+ import CU from '../../Core/Geometry/CircleUtilities.js';
18
+ var getAreaOfCircle = CU.getAreaOfCircle, getCircleCircleIntersection = CU.getCircleCircleIntersection, getOverlapBetweenCirclesByDistance = CU.getOverlapBetweenCircles, isPointInsideAllCircles = CU.isPointInsideAllCircles, isPointInsideCircle = CU.isPointInsideCircle, isPointOutsideAllCircles = CU.isPointOutsideAllCircles;
19
+ import GU from '../../Core/Geometry/GeometryUtilities.js';
20
+ var getDistanceBetweenPoints = GU.getDistanceBetweenPoints;
20
21
  import NelderMeadMixin from '../../Mixins/NelderMead.js';
21
- var getDistanceBetweenPoints = GeometryMixin.getDistanceBetweenPoints;
22
22
  import U from '../../Core/Utilities.js';
23
23
  var extend = U.extend, isArray = U.isArray, isNumber = U.isNumber, isObject = U.isObject, isString = U.isString;
24
24
  /* *
@@ -33,8 +33,8 @@ var VennUtils;
33
33
  * Properties
34
34
  *
35
35
  * */
36
- VennUtils.geometry = GeometryMixin;
37
- VennUtils.geometryCircles = GeometryCirclesModule;
36
+ VennUtils.geometry = GU;
37
+ VennUtils.geometryCircles = CU;
38
38
  VennUtils.nelderMead = NelderMeadMixin;
39
39
  /* *
40
40
  *
@@ -58,13 +58,10 @@ var VennUtils;
58
58
  // Calculate the amount of overlap per set.
59
59
  var mapOfIdToProps = relations
60
60
  // Filter out relations consisting of 2 sets.
61
- .filter(function (relation) {
62
- return relation.sets.length === 2;
63
- })
61
+ .filter(function (relation) { return (relation.sets.length === 2); })
64
62
  // Sum up the amount of overlap for each set.
65
63
  .reduce(function (map, relation) {
66
- var sets = relation.sets;
67
- sets.forEach(function (set, i, arr) {
64
+ relation.sets.forEach(function (set, i, arr) {
68
65
  if (!isObject(map[set])) {
69
66
  map[set] = {
70
67
  overlapping: {},
@@ -192,9 +189,7 @@ var VennUtils;
192
189
  * Returns available width for the label.
193
190
  */
194
191
  function getLabelWidth(pos, internal, external) {
195
- var radius = internal.reduce(function (min, circle) {
196
- return Math.min(circle.r, min);
197
- }, Infinity),
192
+ var radius = internal.reduce(function (min, circle) { return Math.min(circle.r, min); }, Infinity),
198
193
  // Filter out external circles that are completely overlapping.
199
194
  filteredExternals = external.filter(function (circle) {
200
195
  return !isPointInsideCircle(pos, circle);
@@ -340,8 +335,7 @@ var VennUtils;
340
335
  // Iterate and position the remaining sets.
341
336
  sortedByOverlap.forEach(function (set) {
342
337
  var circle = set.circle, radius = circle.r, overlapping = set.overlapping;
343
- var bestPosition = positionedSets
344
- .reduce(function (best, positionedSet, i) {
338
+ var bestPosition = positionedSets.reduce(function (best, positionedSet, i) {
345
339
  var positionedCircle = positionedSet.circle, overlap = overlapping[positionedSet.sets[0]];
346
340
  // Calculate the distance between the sets to get the
347
341
  // correct overlap
@@ -27,7 +27,7 @@ import palette from '../../Core/Color/Palette.js';
27
27
  import SeriesRegistry from '../../Core/Series/SeriesRegistry.js';
28
28
  var _a = SeriesRegistry.seriesTypes, ColumnSeries = _a.column, LineSeries = _a.line;
29
29
  import U from '../../Core/Utilities.js';
30
- var arrayMax = U.arrayMax, arrayMin = U.arrayMin, correctFloat = U.correctFloat, extend = U.extend, merge = U.merge, objectEach = U.objectEach, pick = U.pick;
30
+ var arrayMax = U.arrayMax, arrayMin = U.arrayMin, correctFloat = U.correctFloat, extend = U.extend, isNumber = U.isNumber, merge = U.merge, objectEach = U.objectEach, pick = U.pick;
31
31
  import WaterfallAxis from '../../Core/Axis/WaterfallAxis.js';
32
32
  import WaterfallPoint from './WaterfallPoint.js';
33
33
  import '../../Core/DefaultOptions.js';
@@ -96,23 +96,24 @@ var WaterfallSeries = /** @class */ (function (_super) {
96
96
  };
97
97
  // Translate data points from raw values
98
98
  WaterfallSeries.prototype.translate = function () {
99
- var series = this, options = series.options, yAxis = series.yAxis, len, i, points, point, shapeArgs, y, yValue, previousY, previousIntermediate, range, minPointLength = pick(options.minPointLength, 5), halfMinPointLength = minPointLength / 2, threshold = options.threshold, stacking = options.stacking, tooltipY, actualStack = yAxis.waterfall.stacks[series.stackKey], actualStackX, dummyStackItem, total, pointY, yPos, hPos;
99
+ var series = this, options = series.options, yAxis = series.yAxis, y, minPointLength = pick(options.minPointLength, 5), halfMinPointLength = minPointLength / 2, threshold = options.threshold || 0, previousY = threshold, previousIntermediate = threshold, stacking = options.stacking, actualStack = yAxis.waterfall.stacks[series.stackKey], total, yPos, hPos;
100
100
  // run column series translate
101
101
  ColumnSeries.prototype.translate.apply(series);
102
- previousY = previousIntermediate = threshold;
103
- points = series.points;
104
- for (i = 0, len = points.length; i < len; i++) {
105
- // cache current point object
106
- point = points[i];
107
- yValue = series.processedYData[i];
108
- shapeArgs = point.shapeArgs;
109
- range = [0, yValue];
110
- pointY = point.y;
102
+ var points = series.points;
103
+ for (var i = 0; i < points.length; i++) {
104
+ var point = points[i];
105
+ var yValue = series.processedYData[i];
106
+ var shapeArgs = point.shapeArgs;
107
+ if (!shapeArgs || !isNumber(yValue)) {
108
+ continue;
109
+ }
110
+ var range = [0, yValue];
111
+ var pointY = point.y;
111
112
  // code responsible for correct positions of stacked points
112
113
  // starts here
113
114
  if (stacking) {
114
115
  if (actualStack) {
115
- actualStackX = actualStack[i];
116
+ var actualStackX = actualStack[i];
116
117
  if (stacking === 'overlap') {
117
118
  total =
118
119
  actualStackX.stackState[actualStackX.stateIndex--];
@@ -167,11 +168,11 @@ var WaterfallSeries = /** @class */ (function (_super) {
167
168
  yPos = y;
168
169
  hPos = y - pointY;
169
170
  }
170
- point.below = yPos <= pick(threshold, 0);
171
- shapeArgs.y = yAxis.translate(yPos, 0, 1, 0, 1);
171
+ point.below = yPos <= threshold;
172
+ shapeArgs.y = yAxis.translate(yPos, false, true, false, true) || 0;
172
173
  shapeArgs.height = Math.abs(shapeArgs.y -
173
- yAxis.translate(hPos, 0, 1, 0, 1));
174
- dummyStackItem = yAxis.waterfall.dummyStackItem;
174
+ (yAxis.translate(hPos, false, true, false, true) || 0));
175
+ var dummyStackItem = yAxis.waterfall.dummyStackItem;
175
176
  if (dummyStackItem) {
176
177
  dummyStackItem.x = i;
177
178
  dummyStackItem.label = actualStack[i].label;
@@ -181,14 +182,13 @@ var WaterfallSeries = /** @class */ (function (_super) {
181
182
  }
182
183
  else {
183
184
  // up points
184
- y =
185
- Math.max(previousY, previousY + pointY) + range[0];
186
- shapeArgs.y =
187
- yAxis.translate(y, 0, 1, 0, 1);
185
+ y = Math.max(previousY, previousY + pointY) + range[0];
186
+ shapeArgs.y = yAxis.translate(y, false, true, false, true) || 0;
188
187
  // sum points
189
188
  if (point.isSum) {
190
- shapeArgs.y = yAxis.translate(range[1], 0, 1, 0, 1);
191
- shapeArgs.height = Math.min(yAxis.translate(range[0], 0, 1, 0, 1), yAxis.len) - shapeArgs.y; // #4256
189
+ shapeArgs.y = yAxis.translate(range[1], false, true, false, true) || 0;
190
+ shapeArgs.height = Math.min(yAxis.translate(range[0], false, true, false, true) || 0, yAxis.len) - shapeArgs.y; // #4256
191
+ point.below = range[1] <= threshold;
192
192
  }
193
193
  else if (point.isIntermediateSum) {
194
194
  if (pointY >= 0) {
@@ -205,19 +205,20 @@ var WaterfallSeries = /** @class */ (function (_super) {
205
205
  hPos ^= yPos;
206
206
  yPos ^= hPos;
207
207
  }
208
- shapeArgs.y = yAxis.translate(yPos, 0, 1, 0, 1);
208
+ shapeArgs.y = yAxis.translate(yPos, false, true, false, true) || 0;
209
209
  shapeArgs.height = Math.abs(shapeArgs.y -
210
- Math.min(yAxis.translate(hPos, 0, 1, 0, 1), yAxis.len));
210
+ Math.min(yAxis.translate(hPos, false, true, false, true) || 0, yAxis.len));
211
211
  previousIntermediate += range[1];
212
+ point.below = yPos <= threshold;
212
213
  // If it's not the sum point, update previous stack end position
213
214
  // and get shape height (#3886)
214
215
  }
215
216
  else {
216
217
  shapeArgs.height = yValue > 0 ?
217
- yAxis.translate(previousY, 0, 1, 0, 1) - shapeArgs.y :
218
- yAxis.translate(previousY, 0, 1, 0, 1) - yAxis.translate(previousY - yValue, 0, 1, 0, 1);
218
+ (yAxis.translate(previousY, false, true, false, true) || 0) - shapeArgs.y :
219
+ (yAxis.translate(previousY, false, true, false, true) || 0) - (yAxis.translate(previousY - yValue, false, true, false, true) || 0);
219
220
  previousY += yValue;
220
- point.below = previousY < pick(threshold, 0);
221
+ point.below = previousY < threshold;
221
222
  }
222
223
  // #3952 Negative sum or intermediate sum not rendered correctly
223
224
  if (shapeArgs.height < 0) {
@@ -226,10 +227,10 @@ var WaterfallSeries = /** @class */ (function (_super) {
226
227
  }
227
228
  }
228
229
  point.plotY = shapeArgs.y =
229
- Math.round(shapeArgs.y) - (series.borderWidth % 2) / 2;
230
+ Math.round(shapeArgs.y || 0) - (series.borderWidth % 2) / 2;
230
231
  // #3151
231
232
  shapeArgs.height =
232
- Math.max(Math.round(shapeArgs.height), 0.001);
233
+ Math.max(Math.round(shapeArgs.height || 0), 0.001);
233
234
  point.yBottom = shapeArgs.y + shapeArgs.height;
234
235
  if (shapeArgs.height <= minPointLength && !point.isNull) {
235
236
  shapeArgs.height = minPointLength;
@@ -249,13 +250,17 @@ var WaterfallSeries = /** @class */ (function (_super) {
249
250
  point.minPointLengthOffset = 0;
250
251
  }
251
252
  // Correct tooltip placement (#3014)
252
- tooltipY =
253
- point.plotY + (point.negative ? shapeArgs.height : 0);
254
- if (series.chart.inverted) {
255
- point.tooltipPos[0] = yAxis.len - tooltipY;
253
+ var tooltipY = point.plotY + (point.negative ? shapeArgs.height : 0);
254
+ if (point.below) { // #15334
255
+ point.plotY += shapeArgs.height;
256
256
  }
257
- else {
258
- point.tooltipPos[1] = tooltipY;
257
+ if (point.tooltipPos) {
258
+ if (series.chart.inverted) {
259
+ point.tooltipPos[0] = yAxis.len - tooltipY;
260
+ }
261
+ else {
262
+ point.tooltipPos[1] = tooltipY;
263
+ }
259
264
  }
260
265
  }
261
266
  };
@@ -160,6 +160,7 @@ var WordcloudSeries = /** @class */ (function (_super) {
160
160
  }), attr = extend(series.pointAttribs(point, (point.selected && 'select')), {
161
161
  align: 'center',
162
162
  'alignment-baseline': 'middle',
163
+ 'dominant-baseline': 'middle',
163
164
  x: placement.x,
164
165
  y: placement.y,
165
166
  text: point.name,
@@ -207,10 +207,12 @@ var XRangeSeries = /** @class */ (function (_super) {
207
207
  yAxis.categories) {
208
208
  point.plotY = yAxis.translate(point.y, 0, 1, 0, 1, options.pointPlacement);
209
209
  }
210
+ var x = Math.floor(Math.min(plotX, plotX2)) + crisper;
211
+ var x2 = Math.floor(Math.max(plotX, plotX2)) + crisper;
210
212
  var shapeArgs = {
211
- x: Math.floor(Math.min(plotX, plotX2)) + crisper,
213
+ x: x,
212
214
  y: Math.floor(point.plotY + yOffset) + crisper,
213
- width: Math.round(Math.abs(plotX2 - plotX)),
215
+ width: x2 - x,
214
216
  height: pointHeight,
215
217
  r: series.options.borderRadius
216
218
  };