highcharts 9.3.3 → 10.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (670) hide show
  1. package/bower.json +1 -1
  2. package/css/highcharts.css +19 -2
  3. package/css/highcharts.scss +17 -2
  4. package/css/themes/dark-unica.css +19 -2
  5. package/css/themes/grid-light.css +19 -2
  6. package/css/themes/sand-signika.css +19 -2
  7. package/es-modules/Accessibility/Accessibility.js +1 -1
  8. package/es-modules/Accessibility/Components/LegendComponent.js +31 -23
  9. package/es-modules/Accessibility/Components/MenuComponent.js +4 -5
  10. package/es-modules/Accessibility/Components/RangeSelectorComponent.js +2 -2
  11. package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +7 -6
  12. package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +1 -1
  13. package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +0 -1
  14. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +3 -3
  15. package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +61 -29
  16. package/es-modules/Accessibility/Components/ZoomComponent.js +13 -10
  17. package/es-modules/Accessibility/HighContrastMode.js +2 -2
  18. package/es-modules/Accessibility/KeyboardNavigation.js +113 -98
  19. package/es-modules/Accessibility/ProxyElement.js +14 -6
  20. package/es-modules/Accessibility/ProxyProvider.js +10 -2
  21. package/es-modules/Core/Axis/Axis.js +150 -46
  22. package/es-modules/Core/Axis/Color/ColorAxis.js +22 -5
  23. package/es-modules/Core/Axis/GridAxis.js +10 -9
  24. package/es-modules/Core/Axis/TreeGridTick.js +11 -0
  25. package/es-modules/Core/Chart/Chart3D.js +1 -11
  26. package/es-modules/Core/Chart/ChartDefaults.js +32 -11
  27. package/es-modules/Core/Chart/MapChart.js +1 -6
  28. package/es-modules/Core/DefaultOptions.js +2 -0
  29. package/es-modules/Core/Geometry/PolygonClip.js +84 -0
  30. package/es-modules/Core/Globals.js +4 -18
  31. package/es-modules/Core/HttpUtilities.js +13 -8
  32. package/es-modules/Core/Legend/Legend.js +10 -8
  33. package/es-modules/Core/Navigator.js +9 -6
  34. package/es-modules/Core/Pointer.js +15 -11
  35. package/es-modules/Core/Renderer/HTML/AST.js +62 -5
  36. package/es-modules/Core/Renderer/SVG/SVGElement.js +25 -41
  37. package/es-modules/Core/Renderer/SVG/SVGElement3D.js +17 -5
  38. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +17 -17
  39. package/es-modules/Core/Renderer/SVG/TextBuilder.js +12 -10
  40. package/es-modules/Core/Series/DataLabel.js +11 -3
  41. package/es-modules/Core/Series/Point.js +2 -2
  42. package/es-modules/Core/Series/Series.js +33 -15
  43. package/es-modules/Core/Series/SeriesDefaults.js +4 -1
  44. package/es-modules/Core/Tooltip.js +14 -31
  45. package/es-modules/Core/Utilities.js +28 -28
  46. package/es-modules/Extensions/Annotations/Annotations.js +7 -0
  47. package/es-modules/Extensions/Annotations/MockPoint.js +1 -1
  48. package/es-modules/Extensions/Annotations/NavigationBindings.js +1 -1
  49. package/es-modules/Extensions/Annotations/Popup.js +1 -1
  50. package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +5 -3
  51. package/es-modules/Extensions/Boost/BoostInit.js +6 -1
  52. package/es-modules/Extensions/Boost/BoostOptions.js +26 -0
  53. package/es-modules/Extensions/Boost/Boostables.js +1 -0
  54. package/es-modules/Extensions/Boost/WGLRenderer.js +48 -37
  55. package/es-modules/Extensions/Boost/WGLShader.js +4 -3
  56. package/es-modules/Extensions/Breadcrumbs.js +874 -0
  57. package/es-modules/Extensions/Data.js +26 -14
  58. package/es-modules/Extensions/DataGrouping.js +5 -2
  59. package/es-modules/Extensions/DraggablePoints.js +9 -7
  60. package/es-modules/Extensions/Drilldown.js +147 -94
  61. package/es-modules/Extensions/Exporting/Exporting.js +9 -7
  62. package/es-modules/Extensions/Exporting/ExportingDefaults.js +49 -1
  63. package/es-modules/Extensions/GeoJSON.js +149 -124
  64. package/es-modules/Extensions/MarkerClusters.js +34 -20
  65. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +110 -22
  66. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
  67. package/es-modules/Extensions/Oldie/Oldie.js +1 -1
  68. package/es-modules/Extensions/ScrollablePlotArea.js +5 -1
  69. package/es-modules/Extensions/Stacking.js +3 -2
  70. package/es-modules/Extensions/Themes/HighContrastDark.js +10 -10
  71. package/es-modules/Extensions/Themes/HighContrastLight.js +10 -10
  72. package/es-modules/Maps/MapNavigation.js +49 -8
  73. package/es-modules/Maps/MapPointer.js +16 -0
  74. package/es-modules/Maps/MapUtilities.js +56 -0
  75. package/es-modules/Maps/MapView.js +606 -135
  76. package/es-modules/Maps/MapViewInsetsOptionsDefault.js +148 -0
  77. package/es-modules/Maps/MapViewOptionsDefault.js +58 -20
  78. package/es-modules/Maps/Projection.js +169 -77
  79. package/es-modules/Maps/Projections/EqualEarth.js +15 -6
  80. package/es-modules/Maps/Projections/LambertConformalConic.js +27 -19
  81. package/es-modules/Maps/Projections/Miller.js +23 -10
  82. package/es-modules/Maps/Projections/Orthographic.js +21 -10
  83. package/es-modules/Maps/Projections/WebMercator.js +25 -13
  84. package/es-modules/Series/ArcDiagram/ArcDiagramPoint.js +77 -0
  85. package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +581 -0
  86. package/es-modules/Series/Column/ColumnSeries.js +4 -3
  87. package/es-modules/Series/DataModifyComposition.js +1 -0
  88. package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +2 -2
  89. package/es-modules/Series/DrawPointComposition.js +7 -4
  90. package/es-modules/Series/Lollipop/LollipopSeries.js +1 -1
  91. package/es-modules/Series/Map/MapPoint.js +24 -1
  92. package/es-modules/Series/Map/MapSeries.js +196 -169
  93. package/es-modules/Series/MapBubble/MapBubblePoint.js +16 -24
  94. package/es-modules/Series/MapBubble/MapBubbleSeries.js +11 -0
  95. package/es-modules/Series/MapPoint/MapPointPoint.js +2 -8
  96. package/es-modules/Series/MapPoint/MapPointSeries.js +36 -14
  97. package/es-modules/Series/NodesComposition.js +60 -13
  98. package/es-modules/Series/OHLC/OHLCSeries.js +7 -0
  99. package/es-modules/Series/Organization/OrganizationPoint.js +68 -2
  100. package/es-modules/Series/Organization/OrganizationSeries.js +79 -25
  101. package/es-modules/Series/Pie/PiePoint.js +12 -5
  102. package/es-modules/Series/Pie3D/Pie3DSeries.js +19 -0
  103. package/es-modules/Series/Sankey/SankeyColumnComposition.js +193 -0
  104. package/es-modules/Series/Sankey/SankeyPoint.js +37 -1
  105. package/es-modules/Series/Sankey/SankeySeries.js +10 -127
  106. package/es-modules/Series/Scatter/ScatterSeries.js +1 -1
  107. package/es-modules/Series/Sunburst/SunburstSeries.js +13 -2
  108. package/es-modules/Series/Treemap/TreemapSeries.js +88 -80
  109. package/es-modules/Series/Waterfall/WaterfallSeries.js +2 -0
  110. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +9 -2
  111. package/es-modules/Stock/StockToolsGui.js +1 -1
  112. package/es-modules/masters/highcharts-3d.src.js +1 -1
  113. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  114. package/es-modules/masters/highcharts-more.src.js +1 -1
  115. package/es-modules/masters/highcharts.src.js +1 -1
  116. package/es-modules/masters/highmaps.src.js +1 -1
  117. package/es-modules/masters/highstock.src.js +1 -1
  118. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  119. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  120. package/es-modules/masters/indicators/ao.src.js +1 -1
  121. package/es-modules/masters/indicators/apo.src.js +1 -1
  122. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  123. package/es-modules/masters/indicators/aroon.src.js +1 -1
  124. package/es-modules/masters/indicators/atr.src.js +1 -1
  125. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  126. package/es-modules/masters/indicators/cci.src.js +1 -1
  127. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  128. package/es-modules/masters/indicators/cmf.src.js +1 -1
  129. package/es-modules/masters/indicators/cmo.src.js +1 -1
  130. package/es-modules/masters/indicators/dema.src.js +1 -1
  131. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  132. package/es-modules/masters/indicators/dmi.src.js +1 -1
  133. package/es-modules/masters/indicators/dpo.src.js +1 -1
  134. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  135. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  136. package/es-modules/masters/indicators/indicators.src.js +1 -1
  137. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  138. package/es-modules/masters/indicators/klinger.src.js +1 -1
  139. package/es-modules/masters/indicators/macd.src.js +1 -1
  140. package/es-modules/masters/indicators/mfi.src.js +1 -1
  141. package/es-modules/masters/indicators/momentum.src.js +1 -1
  142. package/es-modules/masters/indicators/natr.src.js +1 -1
  143. package/es-modules/masters/indicators/obv.src.js +1 -1
  144. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  145. package/es-modules/masters/indicators/ppo.src.js +1 -1
  146. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  147. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  148. package/es-modules/masters/indicators/psar.src.js +1 -1
  149. package/es-modules/masters/indicators/regressions.src.js +1 -1
  150. package/es-modules/masters/indicators/roc.src.js +1 -1
  151. package/es-modules/masters/indicators/rsi.src.js +1 -1
  152. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  153. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  154. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  155. package/es-modules/masters/indicators/tema.src.js +1 -1
  156. package/es-modules/masters/indicators/trendline.src.js +1 -1
  157. package/es-modules/masters/indicators/trix.src.js +1 -1
  158. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  159. package/es-modules/masters/indicators/vwap.src.js +1 -1
  160. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  161. package/es-modules/masters/indicators/wma.src.js +1 -1
  162. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  163. package/es-modules/masters/modules/accessibility.src.js +1 -1
  164. package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
  165. package/es-modules/masters/modules/annotations.src.js +1 -1
  166. package/es-modules/masters/modules/arc-diagram.src.js +14 -0
  167. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  168. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  169. package/es-modules/masters/modules/boost.src.js +1 -1
  170. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  171. package/es-modules/masters/modules/bullet.src.js +1 -1
  172. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  173. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  174. package/es-modules/masters/modules/cylinder.src.js +1 -1
  175. package/es-modules/masters/modules/data.src.js +1 -1
  176. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  177. package/es-modules/masters/modules/debugger.src.js +1 -1
  178. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  179. package/es-modules/masters/modules/dotplot.src.js +1 -1
  180. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  181. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  182. package/es-modules/masters/modules/drilldown.src.js +2 -1
  183. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  184. package/es-modules/masters/modules/export-data.src.js +1 -1
  185. package/es-modules/masters/modules/exporting.src.js +1 -1
  186. package/es-modules/masters/modules/full-screen.src.js +1 -1
  187. package/es-modules/masters/modules/funnel.src.js +1 -1
  188. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  189. package/es-modules/masters/modules/gantt.src.js +1 -1
  190. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  191. package/es-modules/masters/modules/heatmap.src.js +1 -1
  192. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  193. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  194. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  195. package/es-modules/masters/modules/item-series.src.js +1 -1
  196. package/es-modules/masters/modules/lollipop.src.js +1 -1
  197. package/es-modules/masters/modules/map.src.js +5 -1
  198. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  199. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  200. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  201. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  202. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  203. package/es-modules/masters/modules/oldie.src.js +1 -1
  204. package/es-modules/masters/modules/organization.src.js +1 -1
  205. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  206. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  207. package/es-modules/masters/modules/pareto.src.js +1 -1
  208. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  209. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  210. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  211. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  212. package/es-modules/masters/modules/sankey.src.js +1 -1
  213. package/es-modules/masters/modules/series-label.src.js +1 -1
  214. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  215. package/es-modules/masters/modules/sonification.src.js +1 -1
  216. package/es-modules/masters/modules/static-scale.src.js +1 -1
  217. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  218. package/es-modules/masters/modules/stock.src.js +1 -1
  219. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  220. package/es-modules/masters/modules/sunburst.src.js +1 -1
  221. package/es-modules/masters/modules/tilemap.src.js +1 -1
  222. package/es-modules/masters/modules/timeline.src.js +1 -1
  223. package/es-modules/masters/modules/treegrid.src.js +1 -1
  224. package/es-modules/masters/modules/treemap.src.js +5 -1
  225. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  226. package/es-modules/masters/modules/variwide.src.js +1 -1
  227. package/es-modules/masters/modules/vector.src.js +1 -1
  228. package/es-modules/masters/modules/venn.src.js +1 -1
  229. package/es-modules/masters/modules/windbarb.src.js +1 -1
  230. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  231. package/es-modules/masters/modules/xrange.src.js +1 -1
  232. package/es-modules/masters/themes/avocado.src.js +1 -1
  233. package/es-modules/masters/themes/brand-dark.src.js +1 -1
  234. package/es-modules/masters/themes/brand-light.src.js +1 -1
  235. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  236. package/es-modules/masters/themes/dark-green.src.js +1 -1
  237. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  238. package/es-modules/masters/themes/gray.src.js +1 -1
  239. package/es-modules/masters/themes/grid-light.src.js +1 -1
  240. package/es-modules/masters/themes/grid.src.js +1 -1
  241. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  242. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  243. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  244. package/es-modules/masters/themes/skies.src.js +1 -1
  245. package/es-modules/masters/themes/sunset.src.js +1 -1
  246. package/highcharts-3d.js +99 -98
  247. package/highcharts-3d.js.map +1 -1
  248. package/highcharts-3d.src.js +50 -20
  249. package/highcharts-gantt.js +800 -795
  250. package/highcharts-gantt.js.map +1 -1
  251. package/highcharts-gantt.src.js +528 -290
  252. package/highcharts-more.js +195 -194
  253. package/highcharts-more.js.map +1 -1
  254. package/highcharts-more.src.js +13 -2
  255. package/highcharts.d.ts +2162 -504
  256. package/highcharts.js +586 -581
  257. package/highcharts.js.map +1 -1
  258. package/highcharts.src.d.ts +2162 -504
  259. package/highcharts.src.js +494 -272
  260. package/highmaps.js +753 -723
  261. package/highmaps.js.map +1 -1
  262. package/highmaps.src.js +3603 -2117
  263. package/highstock.js +790 -786
  264. package/highstock.js.map +1 -1
  265. package/highstock.src.js +519 -283
  266. package/indicators/acceleration-bands.js +12 -11
  267. package/indicators/acceleration-bands.js.map +1 -1
  268. package/indicators/acceleration-bands.src.js +11 -2
  269. package/indicators/accumulation-distribution.js +5 -5
  270. package/indicators/accumulation-distribution.js.map +1 -1
  271. package/indicators/accumulation-distribution.src.js +11 -2
  272. package/indicators/ao.js +6 -6
  273. package/indicators/ao.js.map +1 -1
  274. package/indicators/ao.src.js +11 -2
  275. package/indicators/apo.js +5 -5
  276. package/indicators/apo.js.map +1 -1
  277. package/indicators/apo.src.js +11 -2
  278. package/indicators/aroon-oscillator.js +10 -10
  279. package/indicators/aroon-oscillator.js.map +1 -1
  280. package/indicators/aroon-oscillator.src.js +11 -2
  281. package/indicators/aroon.js +11 -11
  282. package/indicators/aroon.js.map +1 -1
  283. package/indicators/aroon.src.js +11 -2
  284. package/indicators/atr.js +5 -5
  285. package/indicators/atr.js.map +1 -1
  286. package/indicators/atr.src.js +11 -2
  287. package/indicators/bollinger-bands.js +12 -12
  288. package/indicators/bollinger-bands.js.map +1 -1
  289. package/indicators/bollinger-bands.src.js +11 -2
  290. package/indicators/cci.js +5 -5
  291. package/indicators/cci.js.map +1 -1
  292. package/indicators/cci.src.js +11 -2
  293. package/indicators/chaikin.js +8 -8
  294. package/indicators/chaikin.js.map +1 -1
  295. package/indicators/chaikin.src.js +11 -2
  296. package/indicators/cmf.js +6 -6
  297. package/indicators/cmf.js.map +1 -1
  298. package/indicators/cmf.src.js +11 -2
  299. package/indicators/cmo.js +5 -5
  300. package/indicators/cmo.js.map +1 -1
  301. package/indicators/cmo.src.js +11 -2
  302. package/indicators/dema.js +5 -5
  303. package/indicators/dema.js.map +1 -1
  304. package/indicators/dema.src.js +11 -2
  305. package/indicators/disparity-index.js +6 -6
  306. package/indicators/disparity-index.js.map +1 -1
  307. package/indicators/disparity-index.src.js +11 -2
  308. package/indicators/dmi.js +12 -12
  309. package/indicators/dmi.js.map +1 -1
  310. package/indicators/dmi.src.js +11 -2
  311. package/indicators/dpo.js +5 -5
  312. package/indicators/dpo.js.map +1 -1
  313. package/indicators/dpo.src.js +11 -2
  314. package/indicators/ema.js +2 -1
  315. package/indicators/ema.js.map +1 -1
  316. package/indicators/ema.src.js +10 -1
  317. package/indicators/ichimoku-kinko-hyo.js +16 -16
  318. package/indicators/ichimoku-kinko-hyo.js.map +1 -1
  319. package/indicators/ichimoku-kinko-hyo.src.js +11 -2
  320. package/indicators/indicators-all.js +195 -194
  321. package/indicators/indicators-all.js.map +1 -1
  322. package/indicators/indicators-all.src.js +21 -5
  323. package/indicators/indicators.js +13 -12
  324. package/indicators/indicators.js.map +1 -1
  325. package/indicators/indicators.src.js +21 -5
  326. package/indicators/keltner-channels.js +12 -11
  327. package/indicators/keltner-channels.js.map +1 -1
  328. package/indicators/keltner-channels.src.js +11 -2
  329. package/indicators/klinger.js +13 -13
  330. package/indicators/klinger.js.map +1 -1
  331. package/indicators/klinger.src.js +11 -2
  332. package/indicators/macd.js +12 -11
  333. package/indicators/macd.js.map +1 -1
  334. package/indicators/macd.src.js +11 -2
  335. package/indicators/mfi.js +6 -6
  336. package/indicators/mfi.js.map +1 -1
  337. package/indicators/mfi.src.js +11 -2
  338. package/indicators/momentum.js +5 -5
  339. package/indicators/momentum.js.map +1 -1
  340. package/indicators/momentum.src.js +11 -2
  341. package/indicators/natr.js +5 -4
  342. package/indicators/natr.js.map +1 -1
  343. package/indicators/natr.src.js +11 -2
  344. package/indicators/obv.js +5 -5
  345. package/indicators/obv.js.map +1 -1
  346. package/indicators/obv.src.js +11 -2
  347. package/indicators/pivot-points.js +11 -11
  348. package/indicators/pivot-points.js.map +1 -1
  349. package/indicators/pivot-points.src.js +11 -2
  350. package/indicators/ppo.js +5 -5
  351. package/indicators/ppo.js.map +1 -1
  352. package/indicators/ppo.src.js +11 -2
  353. package/indicators/price-channel.js +11 -11
  354. package/indicators/price-channel.js.map +1 -1
  355. package/indicators/price-channel.src.js +11 -2
  356. package/indicators/price-envelopes.js +8 -8
  357. package/indicators/price-envelopes.js.map +1 -1
  358. package/indicators/price-envelopes.src.js +11 -2
  359. package/indicators/psar.js +7 -6
  360. package/indicators/psar.js.map +1 -1
  361. package/indicators/psar.src.js +11 -2
  362. package/indicators/regressions.js +12 -12
  363. package/indicators/regressions.js.map +1 -1
  364. package/indicators/regressions.src.js +11 -2
  365. package/indicators/roc.js +5 -5
  366. package/indicators/roc.js.map +1 -1
  367. package/indicators/roc.src.js +11 -2
  368. package/indicators/rsi.js +6 -5
  369. package/indicators/rsi.js.map +1 -1
  370. package/indicators/rsi.src.js +11 -2
  371. package/indicators/slow-stochastic.js +5 -5
  372. package/indicators/slow-stochastic.js.map +1 -1
  373. package/indicators/slow-stochastic.src.js +11 -2
  374. package/indicators/stochastic.js +12 -12
  375. package/indicators/stochastic.js.map +1 -1
  376. package/indicators/stochastic.src.js +11 -2
  377. package/indicators/supertrend.js +10 -10
  378. package/indicators/supertrend.js.map +1 -1
  379. package/indicators/supertrend.src.js +11 -2
  380. package/indicators/tema.js +6 -6
  381. package/indicators/tema.js.map +1 -1
  382. package/indicators/tema.src.js +11 -2
  383. package/indicators/trendline.js +5 -5
  384. package/indicators/trendline.js.map +1 -1
  385. package/indicators/trendline.src.js +11 -2
  386. package/indicators/trix.js +4 -4
  387. package/indicators/trix.js.map +1 -1
  388. package/indicators/trix.src.js +11 -2
  389. package/indicators/volume-by-price.js +17 -17
  390. package/indicators/volume-by-price.js.map +1 -1
  391. package/indicators/volume-by-price.src.js +11 -2
  392. package/indicators/vwap.js +5 -5
  393. package/indicators/vwap.js.map +1 -1
  394. package/indicators/vwap.src.js +11 -2
  395. package/indicators/williams-r.js +6 -5
  396. package/indicators/williams-r.js.map +1 -1
  397. package/indicators/williams-r.src.js +11 -2
  398. package/indicators/wma.js +5 -5
  399. package/indicators/wma.js.map +1 -1
  400. package/indicators/wma.src.js +11 -2
  401. package/indicators/zigzag.js +6 -6
  402. package/indicators/zigzag.js.map +1 -1
  403. package/indicators/zigzag.src.js +11 -2
  404. package/lib/jspdf.js +299 -184
  405. package/lib/jspdf.src.js +25266 -18067
  406. package/lib/svg2pdf.js +35 -31
  407. package/lib/svg2pdf.src.js +5721 -4179
  408. package/modules/accessibility.js +231 -229
  409. package/modules/accessibility.js.map +1 -1
  410. package/modules/accessibility.src.js +278 -197
  411. package/modules/annotations-advanced.js +144 -144
  412. package/modules/annotations-advanced.js.map +1 -1
  413. package/modules/annotations-advanced.src.js +26 -8
  414. package/modules/annotations.js +79 -79
  415. package/modules/annotations.js.map +1 -1
  416. package/modules/annotations.src.js +21 -5
  417. package/modules/arc-diagram.js +25 -0
  418. package/modules/arc-diagram.js.map +1 -0
  419. package/modules/arc-diagram.src.js +770 -0
  420. package/modules/arrow-symbols.js +4 -3
  421. package/modules/arrow-symbols.js.map +1 -1
  422. package/modules/arrow-symbols.src.js +11 -2
  423. package/modules/boost-canvas.js +15 -15
  424. package/modules/boost-canvas.js.map +1 -1
  425. package/modules/boost-canvas.src.js +11 -2
  426. package/modules/boost.js +80 -79
  427. package/modules/boost.js.map +1 -1
  428. package/modules/boost.src.js +71 -43
  429. package/modules/broken-axis.js +13 -13
  430. package/modules/broken-axis.js.map +1 -1
  431. package/modules/broken-axis.src.js +11 -2
  432. package/modules/bullet.js +9 -9
  433. package/modules/bullet.js.map +1 -1
  434. package/modules/bullet.src.js +11 -2
  435. package/modules/coloraxis.js +24 -24
  436. package/modules/coloraxis.js.map +1 -1
  437. package/modules/coloraxis.src.js +33 -7
  438. package/modules/current-date-indicator.js +5 -4
  439. package/modules/current-date-indicator.js.map +1 -1
  440. package/modules/current-date-indicator.src.js +11 -2
  441. package/modules/cylinder.js +11 -11
  442. package/modules/cylinder.js.map +1 -1
  443. package/modules/cylinder.src.js +11 -2
  444. package/modules/data.js +34 -33
  445. package/modules/data.js.map +1 -1
  446. package/modules/data.src.js +59 -32
  447. package/modules/datagrouping.js +21 -20
  448. package/modules/datagrouping.js.map +1 -1
  449. package/modules/datagrouping.src.js +16 -4
  450. package/modules/debugger.js +6 -6
  451. package/modules/debugger.js.map +1 -1
  452. package/modules/debugger.src.js +11 -2
  453. package/modules/dependency-wheel.js +12 -11
  454. package/modules/dependency-wheel.js.map +1 -1
  455. package/modules/dependency-wheel.src.js +14 -5
  456. package/modules/dotplot.js +6 -6
  457. package/modules/dotplot.js.map +1 -1
  458. package/modules/dotplot.src.js +11 -2
  459. package/modules/drag-panes.js +10 -10
  460. package/modules/drag-panes.js.map +1 -1
  461. package/modules/drag-panes.src.js +11 -2
  462. package/modules/draggable-points.js +35 -34
  463. package/modules/draggable-points.js.map +1 -1
  464. package/modules/draggable-points.src.js +20 -9
  465. package/modules/drilldown.d.ts +19 -0
  466. package/modules/drilldown.js +37 -25
  467. package/modules/drilldown.js.map +1 -1
  468. package/modules/drilldown.src.d.ts +19 -0
  469. package/modules/drilldown.src.js +1090 -105
  470. package/modules/dumbbell.js +17 -17
  471. package/modules/dumbbell.js.map +1 -1
  472. package/modules/dumbbell.src.js +11 -2
  473. package/modules/export-data.js +21 -20
  474. package/modules/export-data.js.map +1 -1
  475. package/modules/export-data.src.js +11 -2
  476. package/modules/exporting.js +39 -39
  477. package/modules/exporting.js.map +1 -1
  478. package/modules/exporting.src.js +82 -18
  479. package/modules/full-screen.js +8 -7
  480. package/modules/full-screen.js.map +1 -1
  481. package/modules/full-screen.src.js +11 -2
  482. package/modules/funnel.js +12 -12
  483. package/modules/funnel.js.map +1 -1
  484. package/modules/funnel.src.js +11 -2
  485. package/modules/funnel3d.js +21 -21
  486. package/modules/funnel3d.js.map +1 -1
  487. package/modules/funnel3d.src.js +11 -2
  488. package/modules/gantt.js +217 -217
  489. package/modules/gantt.js.map +1 -1
  490. package/modules/gantt.src.js +45 -20
  491. package/modules/grid-axis.js +23 -23
  492. package/modules/grid-axis.js.map +1 -1
  493. package/modules/grid-axis.src.js +22 -11
  494. package/modules/heatmap.js +40 -39
  495. package/modules/heatmap.js.map +1 -1
  496. package/modules/heatmap.src.js +33 -7
  497. package/modules/heikinashi.js +8 -8
  498. package/modules/heikinashi.js.map +1 -1
  499. package/modules/heikinashi.src.js +11 -2
  500. package/modules/histogram-bellcurve.js +13 -13
  501. package/modules/histogram-bellcurve.js.map +1 -1
  502. package/modules/histogram-bellcurve.src.js +11 -2
  503. package/modules/hollowcandlestick.js +9 -9
  504. package/modules/hollowcandlestick.js.map +1 -1
  505. package/modules/hollowcandlestick.src.js +11 -2
  506. package/modules/item-series.js +12 -12
  507. package/modules/item-series.js.map +1 -1
  508. package/modules/item-series.src.js +11 -2
  509. package/modules/lollipop.js +7 -7
  510. package/modules/lollipop.js.map +1 -1
  511. package/modules/lollipop.src.js +12 -3
  512. package/modules/map.d.ts +80 -43
  513. package/modules/map.js +169 -144
  514. package/modules/map.js.map +1 -1
  515. package/modules/map.src.d.ts +80 -43
  516. package/modules/map.src.js +7960 -6687
  517. package/modules/marker-clusters.js +36 -36
  518. package/modules/marker-clusters.js.map +1 -1
  519. package/modules/marker-clusters.src.js +47 -23
  520. package/modules/networkgraph.d.ts +5 -0
  521. package/modules/networkgraph.js +49 -48
  522. package/modules/networkgraph.js.map +1 -1
  523. package/modules/networkgraph.src.d.ts +5 -0
  524. package/modules/networkgraph.src.js +77 -15
  525. package/modules/no-data-to-display.js +5 -5
  526. package/modules/no-data-to-display.js.map +1 -1
  527. package/modules/no-data-to-display.src.js +11 -2
  528. package/modules/offline-exporting.js +20 -18
  529. package/modules/offline-exporting.js.map +1 -1
  530. package/modules/offline-exporting.src.js +126 -25
  531. package/modules/oldie-polyfills.js +7 -7
  532. package/modules/oldie-polyfills.js.map +1 -1
  533. package/modules/oldie-polyfills.src.js +11 -2
  534. package/modules/oldie.js +30 -30
  535. package/modules/oldie.js.map +1 -1
  536. package/modules/oldie.src.js +12 -3
  537. package/modules/organization.js +16 -14
  538. package/modules/organization.js.map +1 -1
  539. package/modules/organization.src.js +166 -32
  540. package/modules/overlapping-datalabels.js +3 -2
  541. package/modules/overlapping-datalabels.js.map +1 -1
  542. package/modules/overlapping-datalabels.src.js +11 -2
  543. package/modules/parallel-coordinates.js +11 -11
  544. package/modules/parallel-coordinates.js.map +1 -1
  545. package/modules/parallel-coordinates.src.js +11 -2
  546. package/modules/pareto.js +7 -7
  547. package/modules/pareto.js.map +1 -1
  548. package/modules/pareto.src.js +11 -2
  549. package/modules/pathfinder.js +31 -31
  550. package/modules/pathfinder.js.map +1 -1
  551. package/modules/pathfinder.src.js +11 -2
  552. package/modules/pattern-fill.js +14 -14
  553. package/modules/pattern-fill.js.map +1 -1
  554. package/modules/pattern-fill.src.js +11 -2
  555. package/modules/price-indicator.js +5 -5
  556. package/modules/price-indicator.js.map +1 -1
  557. package/modules/price-indicator.src.js +11 -2
  558. package/modules/pyramid3d.js +4 -4
  559. package/modules/pyramid3d.js.map +1 -1
  560. package/modules/pyramid3d.src.js +11 -2
  561. package/modules/sankey.d.ts +5 -0
  562. package/modules/sankey.js +32 -29
  563. package/modules/sankey.js.map +1 -1
  564. package/modules/sankey.src.d.ts +5 -0
  565. package/modules/sankey.src.js +338 -156
  566. package/modules/series-label.js +18 -17
  567. package/modules/series-label.js.map +1 -1
  568. package/modules/series-label.src.js +11 -2
  569. package/modules/solid-gauge.js +10 -10
  570. package/modules/solid-gauge.js.map +1 -1
  571. package/modules/solid-gauge.src.js +11 -2
  572. package/modules/sonification.js +59 -59
  573. package/modules/sonification.js.map +1 -1
  574. package/modules/sonification.src.js +11 -2
  575. package/modules/static-scale.js +5 -4
  576. package/modules/static-scale.js.map +1 -1
  577. package/modules/static-scale.src.js +11 -2
  578. package/modules/stock-tools.js +78 -78
  579. package/modules/stock-tools.js.map +1 -1
  580. package/modules/stock-tools.src.js +21 -5
  581. package/modules/stock.js +162 -162
  582. package/modules/stock.js.map +1 -1
  583. package/modules/stock.src.js +36 -13
  584. package/modules/streamgraph.js +5 -4
  585. package/modules/streamgraph.js.map +1 -1
  586. package/modules/streamgraph.src.js +11 -2
  587. package/modules/sunburst.d.ts +3 -0
  588. package/modules/sunburst.js +73 -60
  589. package/modules/sunburst.js.map +1 -1
  590. package/modules/sunburst.src.d.ts +3 -0
  591. package/modules/sunburst.src.js +1049 -96
  592. package/modules/tilemap.js +17 -17
  593. package/modules/tilemap.js.map +1 -1
  594. package/modules/tilemap.src.js +11 -2
  595. package/modules/timeline.js +18 -18
  596. package/modules/timeline.js.map +1 -1
  597. package/modules/timeline.src.js +11 -2
  598. package/modules/treegrid.js +57 -56
  599. package/modules/treegrid.js.map +1 -1
  600. package/modules/treegrid.src.js +33 -11
  601. package/modules/treemap.d.ts +3 -0
  602. package/modules/treemap.js +53 -41
  603. package/modules/treemap.js.map +1 -1
  604. package/modules/treemap.src.d.ts +3 -0
  605. package/modules/treemap.src.js +1039 -95
  606. package/modules/variable-pie.js +9 -9
  607. package/modules/variable-pie.js.map +1 -1
  608. package/modules/variable-pie.src.js +11 -2
  609. package/modules/variwide.js +12 -12
  610. package/modules/variwide.js.map +1 -1
  611. package/modules/variwide.src.js +11 -2
  612. package/modules/vector.js +8 -7
  613. package/modules/vector.js.map +1 -1
  614. package/modules/vector.src.js +11 -2
  615. package/modules/venn.js +31 -31
  616. package/modules/venn.js.map +1 -1
  617. package/modules/venn.src.js +18 -6
  618. package/modules/windbarb.js +15 -15
  619. package/modules/windbarb.js.map +1 -1
  620. package/modules/windbarb.src.js +11 -2
  621. package/modules/wordcloud.js +23 -23
  622. package/modules/wordcloud.js.map +1 -1
  623. package/modules/wordcloud.src.js +18 -6
  624. package/modules/xrange.js +16 -16
  625. package/modules/xrange.js.map +1 -1
  626. package/modules/xrange.src.js +11 -2
  627. package/package.json +1 -1
  628. package/themes/avocado.js +4 -3
  629. package/themes/avocado.js.map +1 -1
  630. package/themes/avocado.src.js +11 -2
  631. package/themes/brand-dark.js +9 -8
  632. package/themes/brand-dark.js.map +1 -1
  633. package/themes/brand-dark.src.js +11 -2
  634. package/themes/brand-light.js +8 -8
  635. package/themes/brand-light.js.map +1 -1
  636. package/themes/brand-light.src.js +11 -2
  637. package/themes/dark-blue.js +9 -8
  638. package/themes/dark-blue.js.map +1 -1
  639. package/themes/dark-blue.src.js +11 -2
  640. package/themes/dark-green.js +9 -8
  641. package/themes/dark-green.js.map +1 -1
  642. package/themes/dark-green.src.js +11 -2
  643. package/themes/dark-unica.js +8 -7
  644. package/themes/dark-unica.js.map +1 -1
  645. package/themes/dark-unica.src.js +11 -2
  646. package/themes/gray.js +9 -8
  647. package/themes/gray.js.map +1 -1
  648. package/themes/gray.src.js +11 -2
  649. package/themes/grid-light.js +5 -4
  650. package/themes/grid-light.js.map +1 -1
  651. package/themes/grid-light.src.js +11 -2
  652. package/themes/grid.js +5 -5
  653. package/themes/grid.js.map +1 -1
  654. package/themes/grid.src.js +11 -2
  655. package/themes/high-contrast-dark.js +7 -7
  656. package/themes/high-contrast-dark.js.map +1 -1
  657. package/themes/high-contrast-dark.src.js +21 -12
  658. package/themes/high-contrast-light.js +3 -3
  659. package/themes/high-contrast-light.js.map +1 -1
  660. package/themes/high-contrast-light.src.js +21 -12
  661. package/themes/sand-signika.js +5 -5
  662. package/themes/sand-signika.js.map +1 -1
  663. package/themes/sand-signika.src.js +11 -2
  664. package/themes/skies.js +5 -5
  665. package/themes/skies.js.map +1 -1
  666. package/themes/skies.src.js +11 -2
  667. package/themes/sunset.js +3 -3
  668. package/themes/sunset.js.map +1 -1
  669. package/themes/sunset.src.js +11 -2
  670. package/es-modules/Maps/ProjectionDefinition.js +0 -9
@@ -0,0 +1,581 @@
1
+ /* *
2
+ *
3
+ * Arc diagram module
4
+ *
5
+ * (c) 2021 Piotr Madej, Grzegorz Blachliński
6
+ *
7
+ * License: www.highcharts.com/license
8
+ *
9
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
10
+ *
11
+ * */
12
+ 'use strict';
13
+ var __extends = (this && this.__extends) || (function () {
14
+ var extendStatics = function (d, b) {
15
+ extendStatics = Object.setPrototypeOf ||
16
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
17
+ function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
18
+ return extendStatics(d, b);
19
+ };
20
+ return function (d, b) {
21
+ extendStatics(d, b);
22
+ function __() { this.constructor = d; }
23
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
24
+ };
25
+ })();
26
+ var __rest = (this && this.__rest) || function (s, e) {
27
+ var t = {};
28
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
29
+ t[p] = s[p];
30
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
31
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
32
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
33
+ t[p[i]] = s[p[i]];
34
+ }
35
+ return t;
36
+ };
37
+ import ArcDiagramPoint from './ArcDiagramPoint.js';
38
+ import SankeyColumnComposition from '../Sankey/SankeyColumnComposition.js';
39
+ import Series from '../../Core/Series/Series.js';
40
+ import SeriesRegistry from '../../Core/Series/SeriesRegistry.js';
41
+ import SVGRenderer from '../../Core/Renderer/SVG/SVGRenderer.js';
42
+ import U from '../../Core/Utilities.js';
43
+ var symbols = SVGRenderer.prototype.symbols;
44
+ var SankeySeries = SeriesRegistry.seriesTypes.sankey;
45
+ var extend = U.extend, merge = U.merge, pick = U.pick, relativeLength = U.relativeLength;
46
+ /* *
47
+ *
48
+ * Class
49
+ *
50
+ * */
51
+ /**
52
+ * @private
53
+ * @class
54
+ * @name Highcharts.seriesTypes.arcdiagram
55
+ *
56
+ * @augments Highcharts.seriesTypes.sankey
57
+ */
58
+ var ArcDiagramSeries = /** @class */ (function (_super) {
59
+ __extends(ArcDiagramSeries, _super);
60
+ function ArcDiagramSeries() {
61
+ var _this = _super !== null && _super.apply(this, arguments) || this;
62
+ /* *
63
+ *
64
+ * Properties
65
+ *
66
+ * */
67
+ _this.data = void 0;
68
+ _this.options = void 0;
69
+ _this.nodeColumns = void 0;
70
+ _this.nodes = void 0;
71
+ _this.points = void 0;
72
+ return _this;
73
+ /* eslint-enable valid-jsdoc */
74
+ }
75
+ /* *
76
+ *
77
+ * Functions
78
+ *
79
+ * */
80
+ /**
81
+ * Create node columns by analyzing the nodes and the relations between
82
+ * incoming and outgoing links.
83
+ * @private
84
+ */
85
+ ArcDiagramSeries.prototype.createNodeColumns = function () {
86
+ var _this = this;
87
+ var series = this, chart = series.chart,
88
+ // column needs casting, to much methods required at the same time
89
+ column = SankeyColumnComposition.compose([], series);
90
+ column.sankeyColumn.maxLength = chart.inverted ?
91
+ chart.plotHeight : chart.plotWidth;
92
+ // Get the translation factor needed for each column to fill up the plot
93
+ // height
94
+ column.sankeyColumn.getTranslationFactor = function (series) {
95
+ var nodes = column.slice(), minLinkWidth = _this.options.minLinkWidth || 0;
96
+ var skipPoint, factor = 0, i, radius, maxRadius = 0, scale = 1, additionalSpace = 0, remainingWidth = (chart.plotSizeX || 0) -
97
+ (series.options.marker &&
98
+ series.options.marker.lineWidth || 0) -
99
+ (column.length - 1) *
100
+ series.nodePadding;
101
+ // Because the minLinkWidth option doesn't obey the direct
102
+ // translation, we need to run translation iteratively, check node
103
+ // heights, remove those nodes affected by minLinkWidth, check
104
+ // again, etc.
105
+ while (column.length) {
106
+ factor = remainingWidth / column.sankeyColumn.sum();
107
+ skipPoint = false;
108
+ i = column.length;
109
+ while (i--) {
110
+ radius = (column[i].getSum()) * factor * scale;
111
+ var plotArea = Math.min(chart.plotHeight, chart.plotWidth);
112
+ if (radius > plotArea) {
113
+ scale = Math.min(plotArea / radius, scale);
114
+ }
115
+ else if (radius < minLinkWidth) {
116
+ column.splice(i, 1);
117
+ remainingWidth -= minLinkWidth;
118
+ radius = minLinkWidth;
119
+ skipPoint = true;
120
+ }
121
+ additionalSpace += radius * (1 - scale) / 2;
122
+ maxRadius = Math.max(maxRadius, radius);
123
+ }
124
+ if (!skipPoint) {
125
+ break;
126
+ }
127
+ }
128
+ // Re-insert original nodes
129
+ column.length = 0;
130
+ nodes.forEach(function (node) {
131
+ node.scale = scale;
132
+ column.push(node);
133
+ });
134
+ column.sankeyColumn.maxRadius = maxRadius;
135
+ column.sankeyColumn.scale = scale;
136
+ column.sankeyColumn.additionalSpace = additionalSpace;
137
+ return factor;
138
+ };
139
+ column.sankeyColumn.offset = function (node, factor) {
140
+ var equalNodes = node.series.options.equalNodes;
141
+ var offset = column.sankeyColumn.additionalSpace || 0, totalNodeOffset, nodePadding = series.nodePadding, maxRadius = Math.min(chart.plotWidth, chart.plotHeight, (column.sankeyColumn.maxLength || 0) /
142
+ series.nodes.length - nodePadding);
143
+ for (var i = 0; i < column.length; i++) {
144
+ var sum = column[i].getSum() *
145
+ (column.sankeyColumn.scale || 0);
146
+ var width = equalNodes ?
147
+ maxRadius :
148
+ Math.max(sum * factor, series.options.minLinkWidth || 0);
149
+ if (sum) {
150
+ totalNodeOffset = width + nodePadding;
151
+ }
152
+ else {
153
+ // If node sum equals 0 nodePadding is missed #12453
154
+ totalNodeOffset = 0;
155
+ }
156
+ if (column[i] === node) {
157
+ return {
158
+ relativeLeft: offset + relativeLength(node.options.offset || 0, totalNodeOffset)
159
+ };
160
+ }
161
+ offset += totalNodeOffset;
162
+ }
163
+ };
164
+ // Add nodes directly to the column right after it's creation
165
+ series.nodes.forEach(function (node) {
166
+ node.column = 0;
167
+ column.push(node);
168
+ });
169
+ return [column];
170
+ };
171
+ /**
172
+ * Run translation operations for one link.
173
+ * @private
174
+ */
175
+ ArcDiagramSeries.prototype.translateLink = function (point) {
176
+ var _a, _b;
177
+ var series = this, fromNode = point.fromNode, toNode = point.toNode, chart = this.chart, translationFactor = series.translationFactor, pointOptions = point.options, seriesOptions = series.options, linkWeight = pick(pointOptions.linkWeight, seriesOptions.linkWeight, Math.max((point.weight || 0) *
178
+ translationFactor *
179
+ fromNode.scale, (series.options.minLinkWidth || 0))), centeredLinks = point.series.options.centeredLinks, nodeTop = fromNode.nodeY;
180
+ var getX = function (node, fromOrTo) {
181
+ var linkLeft = ((node.offset(point, fromOrTo) || 0) *
182
+ translationFactor);
183
+ var x = Math.min(node.nodeX + linkLeft,
184
+ // Prevent links from spilling below the node (#12014)
185
+ node.nodeX + (node.shapeArgs && node.shapeArgs.height || 0) - linkWeight);
186
+ return x;
187
+ };
188
+ var fromX = centeredLinks ?
189
+ fromNode.nodeX +
190
+ ((fromNode.shapeArgs.height || 0) - linkWeight) / 2 :
191
+ getX(fromNode, 'linksFrom'), toX = centeredLinks ? toNode.nodeX +
192
+ ((toNode.shapeArgs.height || 0) - linkWeight) / 2 :
193
+ getX(toNode, 'linksTo'), bottom = nodeTop, linkWidth = linkWeight;
194
+ if (fromX > toX) {
195
+ _a = [toX, fromX], fromX = _a[0], toX = _a[1];
196
+ }
197
+ if (seriesOptions.reversed) {
198
+ _b = [toX, fromX], fromX = _b[0], toX = _b[1];
199
+ bottom = (chart.plotSizeY || 0) - bottom;
200
+ linkWidth = -linkWidth;
201
+ }
202
+ point.shapeType = 'path';
203
+ point.linkBase = [
204
+ fromX,
205
+ fromX + linkWeight,
206
+ toX,
207
+ toX + linkWeight
208
+ ];
209
+ var linkRadius = ((toX + linkWeight - fromX) / Math.abs(toX + linkWeight - fromX)) * pick(seriesOptions.linkRadius, Math.min(Math.abs(toX + linkWeight - fromX) / 2, fromNode.nodeY - Math.abs(linkWeight)));
210
+ point.shapeArgs = {
211
+ d: [
212
+ ['M', fromX, bottom],
213
+ [
214
+ 'A',
215
+ (toX + linkWeight - fromX) / 2,
216
+ linkRadius,
217
+ 0,
218
+ 0,
219
+ 1,
220
+ toX + linkWeight,
221
+ bottom
222
+ ],
223
+ ['L', toX, bottom],
224
+ [
225
+ 'A',
226
+ (toX - fromX - linkWeight) / 2,
227
+ linkRadius - linkWeight,
228
+ 0,
229
+ 0,
230
+ 0,
231
+ fromX + linkWeight,
232
+ bottom
233
+ ],
234
+ ['Z']
235
+ ]
236
+ };
237
+ point.dlBox = {
238
+ x: fromX + (toX - fromX) / 2,
239
+ y: bottom - linkRadius,
240
+ height: linkWeight,
241
+ width: 0
242
+ };
243
+ // And set the tooltip anchor in the middle
244
+ point.tooltipPos = chart.inverted ? [
245
+ (chart.plotSizeY || 0) - point.dlBox.y - linkWeight / 2,
246
+ (chart.plotSizeX || 0) - point.dlBox.x
247
+ ] : [
248
+ point.dlBox.x,
249
+ point.dlBox.y + linkWeight / 2
250
+ ];
251
+ // Pass test in drawPoints
252
+ point.y = point.plotY = 1;
253
+ if (!point.color) {
254
+ point.color = fromNode.color;
255
+ }
256
+ };
257
+ /**
258
+ * Run translation operations for one node.
259
+ * @private
260
+ */
261
+ ArcDiagramSeries.prototype.translateNode = function (node, column) {
262
+ var series = this, translationFactor = series.translationFactor, chart = series.chart, maxNodesLength = chart.inverted ?
263
+ chart.plotWidth : chart.plotHeight, options = series.options, maxRadius = Math.min(chart.plotWidth, chart.plotHeight, maxNodesLength / node.series.nodes.length - this.nodePadding), sum = node.getSum() * (column.sankeyColumn.scale || 0), equalNodes = options.equalNodes, nodeHeight = equalNodes ?
264
+ maxRadius :
265
+ Math.max(sum * translationFactor, this.options.minLinkWidth || 0), crisp = Math.round(options.marker &&
266
+ options.marker.lineWidth || 0) % 2 / 2, nodeOffset = column.sankeyColumn.offset(node, translationFactor), fromNodeLeft = Math.floor(pick(nodeOffset && nodeOffset.absoluteLeft, ((column.sankeyColumn.left(translationFactor) || 0) +
267
+ (nodeOffset && nodeOffset.relativeLeft || 0)))) + crisp, markerOptions = merge(options.marker, node.options.marker), symbol = markerOptions.symbol, markerRadius = markerOptions.radius, top = parseInt(options.offset, 10) *
268
+ ((chart.inverted ?
269
+ chart.plotWidth : chart.plotHeight) - (Math.floor(this.colDistance * (node.column || 0) +
270
+ (markerOptions.lineWidth || 0) / 2) + crisp +
271
+ (column.sankeyColumn.scale || 0) *
272
+ (column.sankeyColumn.maxRadius || 0) / 2)) / 100;
273
+ node.sum = sum;
274
+ // If node sum is 0, don’t render the rect #12453
275
+ if (sum) {
276
+ // Draw the node
277
+ node.nodeX = fromNodeLeft;
278
+ node.nodeY = top;
279
+ var x = fromNodeLeft, width = node.options.width || options.width || nodeHeight, height = node.options.height || options.height || nodeHeight;
280
+ var y = top;
281
+ if (options.reversed) {
282
+ y = (chart.plotSizeY || 0) - top;
283
+ if (chart.inverted) {
284
+ y = (chart.plotSizeY || 0) - top;
285
+ }
286
+ }
287
+ if (this.mapOptionsToLevel) {
288
+ // Calculate data label options for the point
289
+ node.dlOptions = SankeySeries.getDLOptions({
290
+ level: this.mapOptionsToLevel[node.level],
291
+ optionsPoint: node.options
292
+ });
293
+ }
294
+ // Pass test in drawPoints
295
+ node.plotX = 1;
296
+ node.plotY = 1;
297
+ // Set the anchor position for tooltips
298
+ node.tooltipPos = chart.inverted ? [
299
+ (chart.plotSizeY || 0) - y - height / 2,
300
+ (chart.plotSizeX || 0) - x - width / 2
301
+ ] : [
302
+ x + width / 2,
303
+ y + height / 2
304
+ ];
305
+ node.shapeType = 'path';
306
+ node.shapeArgs = {
307
+ d: symbols[symbol || 'circle'](x, y - (markerRadius || height) / 2, markerRadius || width, markerRadius || height),
308
+ width: markerRadius || width,
309
+ height: markerRadius || height
310
+ };
311
+ node.dlBox = {
312
+ x: x + width / 2,
313
+ y: y,
314
+ height: 0,
315
+ width: 0
316
+ };
317
+ }
318
+ else {
319
+ node.dlOptions = {
320
+ enabled: false
321
+ };
322
+ }
323
+ };
324
+ // Networkgraph has two separate collecions of nodes and lines, render
325
+ // dataLabels for both sets:
326
+ ArcDiagramSeries.prototype.drawDataLabels = function () {
327
+ if (this.options.dataLabels) {
328
+ var textPath = this.options.dataLabels.textPath;
329
+ // Render node labels:
330
+ SankeySeries.prototype.drawDataLabels.apply(this, arguments);
331
+ // Render link labels:
332
+ this.points = this.data;
333
+ this.options.dataLabels.textPath =
334
+ this.options.dataLabels.linkTextPath;
335
+ _super.prototype.drawDataLabels.apply(this, arguments);
336
+ // Restore nodes
337
+ this.points = this.points.concat(this.nodes || []);
338
+ this.options.dataLabels.textPath = textPath;
339
+ }
340
+ };
341
+ ArcDiagramSeries.prototype.pointAttribs = function (point, state) {
342
+ if (point && point.isNode) {
343
+ var _a = Series.prototype.pointAttribs.apply(this, arguments), opacity = _a.opacity, attrs = __rest(_a, ["opacity"]);
344
+ return attrs;
345
+ }
346
+ return _super.prototype.pointAttribs.apply(this, arguments);
347
+ };
348
+ ArcDiagramSeries.prototype.markerAttribs = function (point) {
349
+ if (point.isNode) {
350
+ return _super.prototype.markerAttribs.apply(this, arguments);
351
+ }
352
+ return {};
353
+ };
354
+ /**
355
+ * Arc diagram series is a chart drawing style in which
356
+ * the vertices of the chart are positioned along a line
357
+ * on the Euclidean plane and the edges are drawn as a semicircle
358
+ * in one of the two half-planes delimited by the line,
359
+ * or as smooth curves formed by sequences of semicircles.
360
+ *
361
+ * @sample highcharts/demo/arc-diagram/
362
+ * Arc Diagram
363
+ *
364
+ * @extends plotOptions.sankey
365
+ * @since 10.0.0
366
+ * @product highcharts
367
+ * @requires modules/arc-diagram
368
+ * @exclude curveFactor, connectEnds, connectNulls, colorAxis, colorKey,
369
+ * dataSorting, dragDrop, getExtremesFromAll, nodePadding,
370
+ * centerInCategory, pointInterval, pointIntervalUnit,
371
+ * pointPlacement, pointStart, relativeXValue, softThreshold,
372
+ * stack, stacking, step, xAxis, yAxis
373
+ * @optionparent plotOptions.arcdiagram
374
+ */
375
+ ArcDiagramSeries.defaultOptions = merge(SankeySeries.defaultOptions, {
376
+ /**
377
+ * The option to center links rather than position them one after
378
+ * another
379
+ *
380
+ * @type {boolean}
381
+ * @since 10.0.0
382
+ * @default false
383
+ * @product highcharts
384
+ */
385
+ centeredLinks: false,
386
+ /**
387
+ * The radius of the link arc. If not set, series renders a semi-circle
388
+ * between the nodes, except when overflowing the edge of the plot area,
389
+ * in which case an arc touching the edge is rendered. If `linkRadius`
390
+ * is set, an arc extending to the given value is rendered.
391
+ *
392
+ * @type {number}
393
+ * @since 10.0.0
394
+ * @default undefined
395
+ * @product highcharts
396
+ * @apioption series.arcdiagram.linkRadius
397
+ */
398
+ /**
399
+ * The offset of an arc diagram nodes column in relation to the
400
+ * `plotArea`. The offset equal to 50% places nodes in the center of a
401
+ * chart. By default the series is placed so that the biggest node is
402
+ * touching the bottom border of the `plotArea`.
403
+ *
404
+ * @type {string}
405
+ * @since 10.0.0
406
+ * @default '100%'
407
+ * @product highcharts
408
+ * @apioption series.arcdiagram.offset
409
+ */
410
+ offset: '100%',
411
+ /**
412
+ * The global link weight. If not set, width is calculated per link,
413
+ * depending on the weight value.
414
+ *
415
+ * @type {number}
416
+ * @since 10.0.0
417
+ * @default undefined
418
+ * @product highcharts
419
+ * @apioption series.arcdiagram.linkWeight
420
+ */
421
+ /**
422
+ * Whether nodes with different values should have the same size. If set
423
+ * to true, all nodes are calculated based on the `nodePadding` and
424
+ * current `plotArea`. It is possible to override it using the
425
+ * `marker.radius` option.
426
+ *
427
+ * @type {boolean}
428
+ * @since 10.0.0
429
+ * @default false
430
+ * @product highcharts
431
+ */
432
+ equalNodes: false,
433
+ /**
434
+ * Whether the series should be placed on the other side of the
435
+ * `plotArea`.
436
+ *
437
+ * @type {boolean}
438
+ * @since 10.0.0
439
+ * @default false
440
+ * @product highcharts
441
+ */
442
+ reversed: false,
443
+ /**
444
+ * Options for the data labels appearing on top of the nodes and links.
445
+ * For arc diagram charts, data labels are visible for the nodes by
446
+ * default, but hidden for links. This is controlled by modifying the
447
+ * `nodeFormat`, and the `format` that applies to links and is an empty
448
+ * string by default.
449
+ *
450
+ * @declare Highcharts.SeriesArcDiagramDataLabelsOptionsObject
451
+ *
452
+ * @private
453
+ */
454
+ dataLabels: {
455
+ /**
456
+ * Options for a _link_ label text which should follow link
457
+ * connection. Border and background are disabled for a label that
458
+ * follows a path.
459
+ *
460
+ * **Note:** Only SVG-based renderer supports this option. Setting
461
+ * `useHTML` to true will disable this option.
462
+ *
463
+ * @extends plotOptions.arcdiagram.dataLabels.linkTextPath
464
+ * @since 10.0.0
465
+ */
466
+ linkTextPath: {
467
+ attributes: {
468
+ startOffset: '25%'
469
+ }
470
+ }
471
+ },
472
+ /**
473
+ * @extends plotOptions.series.marker
474
+ * @excluding enabled, enabledThreshold, height, width
475
+ */
476
+ marker: {
477
+ symbol: 'circle',
478
+ fillOpacity: 1,
479
+ states: {}
480
+ }
481
+ });
482
+ return ArcDiagramSeries;
483
+ }(SankeySeries));
484
+ extend(ArcDiagramSeries.prototype, {
485
+ orderNodes: false
486
+ });
487
+ ArcDiagramSeries.prototype.pointClass = ArcDiagramPoint;
488
+ SeriesRegistry.registerSeriesType('arcdiagram', ArcDiagramSeries);
489
+ /* *
490
+ *
491
+ * Default Export
492
+ *
493
+ * */
494
+ export default ArcDiagramSeries;
495
+ /* *
496
+ *
497
+ * API Options
498
+ *
499
+ * */
500
+ /**
501
+ * An `arcdiagram` series. If the [type](#series.arcdiagram.type)
502
+ * option is not specified, it is inherited from [chart.type](#chart.type).
503
+ *
504
+ * @extends series,plotOptions.arcdiagram
505
+ * @exclude dataSorting, boostThreshold, boostBlending, curveFactor,
506
+ * connectEnds, connectNulls, colorAxis, colorKey, dataSorting,
507
+ * dragDrop, getExtremesFromAll, nodePadding, centerInCategory,
508
+ * pointInterval, pointIntervalUnit, pointPlacement,
509
+ * pointStart, relativeXValue, softThreshold, stack,
510
+ * stacking, step, xAxis, yAxis
511
+ * @product highcharts
512
+ * @requires modules/sankey
513
+ * @requires modules/arc-diagram
514
+ * @apioption series.arcdiagram
515
+ */
516
+ /**
517
+ * @extends plotOptions.series.marker
518
+ * @excluding enabled, enabledThreshold, height, radius, width
519
+ * @apioption series.arcdiagram.marker
520
+ */
521
+ /**
522
+ * @type {Highcharts.SeriesArcDiagramDataLabelsOptionsObject|Array<Highcharts.SeriesArcDiagramDataLabelsOptionsObject>}
523
+ * @product highcharts
524
+ * @apioption series.arcdiagram.data.dataLabels
525
+ */
526
+ /**
527
+ * A collection of options for the individual nodes. The nodes in an arc diagram
528
+ * are auto-generated instances of `Highcharts.Point`, but options can be
529
+ * applied here and linked by the `id`.
530
+ *
531
+ * @extends series.sankey.nodes
532
+ * @type {Array<*>}
533
+ * @product highcharts
534
+ * @excluding column, level
535
+ * @apioption series.arcdiagram.nodes
536
+ */
537
+ /**
538
+ * Individual data label for each node. The options are the same as the ones for
539
+ * [series.arcdiagram.dataLabels](#series.arcdiagram.dataLabels).
540
+ *
541
+ * @type
542
+ * {Highcharts.SeriesArcDiagramDataLabelsOptionsObject|Array<Highcharts.SeriesArcDiagramDataLabelsOptionsObject>}
543
+ *
544
+ * @apioption series.arcdiagram.nodes.dataLabels
545
+ */
546
+ /**
547
+ * Individual data label for each node. The options are the same as the ones for
548
+ * [series.arcdiagram.dataLabels](#series.arcdiagram.dataLabels).
549
+ *
550
+ * @type
551
+ * {Highcharts.SeriesArcDiagramDataLabelsOptionsObject|Array<Highcharts.SeriesArcDiagramDataLabelsOptionsObject>}
552
+ *
553
+ */
554
+ /**
555
+ * An array of data points for the series. For the `arcdiagram` series type,
556
+ * points can be given in the following way:
557
+ *
558
+ * An array of objects with named values. The following snippet shows only a few
559
+ * settings, see the complete options set below. If the total number of data
560
+ * points exceeds the series' [turboThreshold](#series.area.turboThreshold),
561
+ * this option is not available.
562
+ *
563
+ * ```js
564
+ * data: [{
565
+ * from: 'Category1',
566
+ * to: 'Category2',
567
+ * weight: 2
568
+ * }, {
569
+ * from: 'Category1',
570
+ * to: 'Category3',
571
+ * weight: 5
572
+ * }]
573
+ * ```
574
+ *
575
+ * @type {Array<*>}
576
+ * @extends series.sankey.data
577
+ * @product highcharts
578
+ * @excluding outgoing, dataLabels
579
+ * @apioption series.arcdiagram.data
580
+ */
581
+ ''; // adds doclets above to the transpiled file
@@ -268,8 +268,8 @@ var ColumnSeries = /** @class */ (function (_super) {
268
268
  var _this = this;
269
269
  var stacking = this.options.stacking;
270
270
  if (!point.isNull && metrics.columnCount > 1) {
271
- var indexInCategory_1 = 0;
272
- var totalInCategory_1 = 0;
271
+ var reversedStacks_1 = this.yAxis.options.reversedStacks;
272
+ var indexInCategory_1 = 0, totalInCategory_1 = reversedStacks_1 ? 0 : -metrics.columnCount;
273
273
  // Loop over all the stacks on the Y axis. When stacking is enabled,
274
274
  // these are real point stacks. When stacking is not enabled, but
275
275
  // `centerInCategory` is true, there is one stack handling the
@@ -289,7 +289,8 @@ var ColumnSeries = /** @class */ (function (_super) {
289
289
  indexInCategory_1 = totalInCategory_1;
290
290
  }
291
291
  if (stackItem.hasValidPoints) {
292
- totalInCategory_1++;
292
+ reversedStacks_1 ? // #16169
293
+ totalInCategory_1++ : totalInCategory_1--;
293
294
  }
294
295
  // If `stacking` is not enabled, look for the index
295
296
  // and total of the `group` stack.
@@ -484,6 +484,7 @@ export default DataModifyComposition;
484
484
  * @type {string}
485
485
  * @since 1.0.1
486
486
  * @product highstock
487
+ * @validvalue ["percent", "value"]
487
488
  * @apioption plotOptions.series.compare
488
489
  */
489
490
  /**
@@ -26,6 +26,7 @@ var __extends = (this && this.__extends) || (function () {
26
26
  import A from '../../Core/Animation/AnimationUtilities.js';
27
27
  var animObject = A.animObject;
28
28
  import DependencyWheelPoint from './DependencyWheelPoint.js';
29
+ import SankeyColumnComposition from '../Sankey/SankeyColumnComposition.js';
29
30
  import H from '../../Core/Globals.js';
30
31
  var deg2rad = H.deg2rad;
31
32
  import SeriesRegistry from '../../Core/Series/SeriesRegistry.js';
@@ -99,7 +100,6 @@ var DependencyWheelSeries = /** @class */ (function (_super) {
99
100
  };
100
101
  DependencyWheelSeries.prototype.createNode = function (id) {
101
102
  var node = SankeySeries.prototype.createNode.call(this, id);
102
- node.index = this.nodes.length - 1;
103
103
  /**
104
104
  * Return the sum of incoming and outgoing links.
105
105
  * @private
@@ -155,7 +155,7 @@ var DependencyWheelSeries = /** @class */ (function (_super) {
155
155
  * @private
156
156
  */
157
157
  DependencyWheelSeries.prototype.createNodeColumns = function () {
158
- var columns = [this.createNodeColumn()];
158
+ var columns = [SankeyColumnComposition.compose([], this)];
159
159
  this.nodes.forEach(function (node) {
160
160
  node.column = 0;
161
161
  columns[0].push(node);
@@ -69,12 +69,15 @@ var DrawPointComposition;
69
69
  params.attribs['class'] = this.getClassName();
70
70
  if (this.shouldDraw()) {
71
71
  if (!graphic) {
72
- this.graphic = graphic =
73
- renderer[params.shapeType](params.shapeArgs)
74
- .add(params.group);
72
+ this.graphic = graphic = params.shapeType === 'text' ?
73
+ renderer.text() :
74
+ renderer[params.shapeType](params.shapeArgs || {});
75
+ graphic.add(params.group);
76
+ }
77
+ if (css) {
78
+ graphic.css(css);
75
79
  }
76
80
  graphic
77
- .css(css)
78
81
  .attr(params.attribs)
79
82
  .animate(animatableAttribs, params.isNew ? false : animation, onComplete);
80
83
  }
@@ -129,7 +129,7 @@ export default LollipopSeries;
129
129
  * The `lollipop` series. If the [type](#series.lollipop.type) option is
130
130
  * not specified, it is inherited from [chart.type](#chart.type).
131
131
  *
132
- * @extends series,plotOptions.lollipop,
132
+ * @extends series,plotOptions.lollipop
133
133
  * @excluding boostThreshold, boostBlending
134
134
  * @product highcharts highstock
135
135
  * @requires highcharts-more