highcharts 10.2.1 → 10.3.1

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 (732) hide show
  1. package/bower.json +1 -1
  2. package/es-modules/Accessibility/Accessibility.js +1 -1
  3. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +9 -6
  4. package/es-modules/Accessibility/Components/LegendComponent.js +36 -32
  5. package/es-modules/Accessibility/Components/RangeSelectorComponent.js +1 -1
  6. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +16 -16
  7. package/es-modules/Accessibility/Options/LangDefaults.js +4 -0
  8. package/es-modules/Core/Axis/Axis.js +42 -32
  9. package/es-modules/Core/Axis/Axis3DComposition.js +501 -0
  10. package/es-modules/Core/Axis/Axis3DDefaults.js +130 -0
  11. package/es-modules/Core/Axis/AxisDefaults.js +20 -7
  12. package/es-modules/Core/Axis/Color/ColorAxis.js +46 -52
  13. package/es-modules/Core/Axis/Color/ColorAxisComposition.js +4 -2
  14. package/es-modules/Core/Axis/NavigatorAxisComposition.js +161 -0
  15. package/es-modules/Core/Axis/OrdinalAxis.js +2 -1
  16. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +1 -1
  17. package/es-modules/Core/Axis/RadialAxis.js +19 -5
  18. package/es-modules/Core/Axis/Tick.js +1 -1
  19. package/es-modules/Core/Axis/Tick3DComposition.js +71 -0
  20. package/es-modules/Core/Chart/Chart.js +16 -20
  21. package/es-modules/Core/Chart/Chart3D.js +4 -4
  22. package/es-modules/Core/Chart/ChartDefaults.js +33 -43
  23. package/es-modules/Core/Chart/GanttChart.js +1 -1
  24. package/es-modules/Core/Chart/MapChart.js +1 -1
  25. package/es-modules/Core/Chart/StockChart.js +11 -28
  26. package/es-modules/Core/{DefaultOptions.js → Defaults.js} +21 -37
  27. package/es-modules/Core/FormatUtilities.js +1 -1
  28. package/es-modules/Core/Globals.js +1 -1
  29. package/es-modules/Core/Legend/Legend.js +114 -110
  30. package/es-modules/Core/Legend/LegendSymbol.js +9 -6
  31. package/es-modules/Core/MSPointer.js +4 -2
  32. package/es-modules/Core/Pointer.js +125 -75
  33. package/es-modules/Core/Renderer/SVG/SVGElement.js +0 -3
  34. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +28 -14
  35. package/es-modules/Core/Series/DataLabel.js +8 -5
  36. package/es-modules/Core/Series/Point.js +38 -22
  37. package/es-modules/Core/Series/Series.js +12 -9
  38. package/es-modules/Core/Series/SeriesDefaults.js +36 -24
  39. package/es-modules/Core/Series/SeriesRegistry.js +2 -2
  40. package/es-modules/Core/Time.js +6 -5
  41. package/es-modules/Core/Tooltip.js +6 -28
  42. package/es-modules/Core/Utilities.js +6 -8
  43. package/es-modules/Extensions/Annotations/Annotation.js +1 -1
  44. package/es-modules/Extensions/Annotations/AnnotationDefaults.js +13 -8
  45. package/es-modules/Extensions/Annotations/MockPoint.js +2 -1
  46. package/es-modules/Extensions/Annotations/NavigationBindings.js +4 -5
  47. package/es-modules/Extensions/Annotations/NavigationBindingsDefaults.js +1 -1
  48. package/es-modules/Extensions/Annotations/Popup/Popup.js +2 -2
  49. package/es-modules/Extensions/Annotations/Popup/PopupAnnotations.js +4 -4
  50. package/es-modules/Extensions/Annotations/Popup/PopupComposition.js +1 -1
  51. package/es-modules/Extensions/Boost/BoostSeries.js +11 -8
  52. package/es-modules/Extensions/Breadcrumbs.js +2 -2
  53. package/es-modules/Extensions/Data.js +2 -2
  54. package/es-modules/Extensions/DataGrouping/ApproximationDefaults.js +157 -0
  55. package/es-modules/Extensions/DataGrouping/ApproximationRegistry.js +35 -0
  56. package/es-modules/Extensions/DataGrouping/DataGrouping.js +469 -0
  57. package/es-modules/Extensions/DataGrouping/DataGroupingAxisComposition.js +174 -0
  58. package/es-modules/Extensions/DataGrouping/DataGroupingDefaults.js +143 -0
  59. package/es-modules/Extensions/DataGrouping/DataGroupingSeriesComposition.js +479 -0
  60. package/es-modules/Extensions/Debugger/Debugger.js +1 -1
  61. package/es-modules/Extensions/DraggablePoints.js +6 -2
  62. package/es-modules/Extensions/Drilldown.js +3 -5
  63. package/es-modules/Extensions/ExportData/ExportData.js +31 -5
  64. package/es-modules/Extensions/Exporting/Exporting.js +47 -60
  65. package/es-modules/Extensions/Exporting/ExportingDefaults.js +22 -24
  66. package/es-modules/Extensions/GeoJSON.js +3 -1
  67. package/es-modules/Extensions/MarkerClusters.js +1 -1
  68. package/es-modules/Extensions/NoDataToDisplay.js +1 -1
  69. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +5 -5
  70. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
  71. package/es-modules/Extensions/Oldie/Oldie.js +3 -3
  72. package/es-modules/Extensions/Oldie/VMLRenderer3D.js +1 -1
  73. package/es-modules/Extensions/OldiePolyfills.js +3 -1
  74. package/es-modules/Extensions/Pane.js +42 -5
  75. package/es-modules/Extensions/ParallelCoordinates.js +5 -1
  76. package/es-modules/Extensions/PatternFill.js +10 -10
  77. package/es-modules/Extensions/SeriesLabel/SeriesLabel.js +2 -2
  78. package/es-modules/Extensions/SeriesLabel/SeriesLabelDefaults.js +4 -0
  79. package/es-modules/Extensions/Sonification/Sonification.js +1 -1
  80. package/es-modules/Extensions/Themes/Avocado.js +1 -1
  81. package/es-modules/Extensions/Themes/BrandDark.js +1 -1
  82. package/es-modules/Extensions/Themes/BrandLight.js +1 -1
  83. package/es-modules/Extensions/Themes/DarkBlue.js +1 -1
  84. package/es-modules/Extensions/Themes/DarkGreen.js +1 -1
  85. package/es-modules/Extensions/Themes/DarkUnica.js +1 -1
  86. package/es-modules/Extensions/Themes/Gray.js +1 -1
  87. package/es-modules/Extensions/Themes/Grid.js +1 -1
  88. package/es-modules/Extensions/Themes/GridLight.js +1 -1
  89. package/es-modules/Extensions/Themes/HighContrastDark.js +1 -1
  90. package/es-modules/Extensions/Themes/HighContrastLight.js +1 -1
  91. package/es-modules/Extensions/Themes/SandSignika.js +1 -1
  92. package/es-modules/Extensions/Themes/Skies.js +1 -1
  93. package/es-modules/Extensions/Themes/Sunset.js +1 -1
  94. package/es-modules/Gantt/Connection.js +5 -5
  95. package/es-modules/Gantt/Pathfinder.js +6 -6
  96. package/es-modules/Maps/MapNavigation.js +1 -1
  97. package/es-modules/Maps/{MapNavigationOptionsDefault.js → MapNavigationDefaults.js} +4 -4
  98. package/es-modules/Maps/MapViewOptionsDefault.js +4 -4
  99. package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +3 -5
  100. package/es-modules/Series/AreaRange/AreaRangePoint.js +6 -10
  101. package/es-modules/Series/AreaRange/AreaRangeSeries.js +59 -48
  102. package/es-modules/Series/BoxPlot/BoxPlotSeries.js +4 -1
  103. package/es-modules/Series/Bubble/BubbleLegendComposition.js +22 -16
  104. package/es-modules/Series/Bubble/BubbleLegendItem.js +17 -21
  105. package/es-modules/Series/Candlestick/CandlestickSeries.js +15 -175
  106. package/es-modules/Series/Candlestick/CandlestickSeriesDefaults.js +179 -0
  107. package/es-modules/Series/Column/ColumnSeries.js +25 -506
  108. package/es-modules/Series/Column/ColumnSeriesDefaults.js +487 -0
  109. package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +40 -36
  110. package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +2 -106
  111. package/es-modules/Series/DependencyWheel/DependencyWheelSeriesDefaults.js +183 -0
  112. package/es-modules/Series/DotPlot/DotPlotSeries.js +11 -12
  113. package/es-modules/Series/DrawPointUtilities.js +2 -14
  114. package/es-modules/Series/Dumbbell/DumbbellPoint.js +5 -4
  115. package/es-modules/Series/Dumbbell/DumbbellSeries.js +11 -7
  116. package/es-modules/Series/ErrorBar/ErrorBarSeries.js +19 -136
  117. package/es-modules/Series/ErrorBar/ErrorBarSeriesDefaults.js +147 -0
  118. package/es-modules/Series/Flags/FlagsPoint.js +2 -3
  119. package/es-modules/Series/Flags/FlagsSeries.js +31 -298
  120. package/es-modules/Series/Flags/FlagsSeriesDefaults.js +295 -0
  121. package/es-modules/Series/Flags/FlagsSymbols.js +96 -71
  122. package/es-modules/Series/HLC/HLCPoint.js +2 -2
  123. package/es-modules/Series/HLC/HLCSeries.js +7 -172
  124. package/es-modules/Series/HLC/HLCSeriesDefaults.js +184 -0
  125. package/es-modules/Series/Heatmap/HeatmapSeries.js +3 -0
  126. package/es-modules/Series/HeikinAshi/HeikinAshiPoint.js +3 -20
  127. package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +78 -139
  128. package/es-modules/Series/HeikinAshi/HeikinAshiSeriesDefaults.js +102 -0
  129. package/es-modules/Series/Item/ItemPoint.js +0 -1
  130. package/es-modules/Series/Item/ItemSeries.js +13 -8
  131. package/es-modules/Series/Line/LineSeries.js +8 -4
  132. package/es-modules/Series/Map/MapPoint.js +19 -1
  133. package/es-modules/Series/Map/MapSeries.js +7 -3
  134. package/es-modules/Series/MapBubble/MapBubbleSeries.js +4 -0
  135. package/es-modules/Series/MapPoint/MapPointPoint.js +0 -5
  136. package/es-modules/Series/MapPoint/MapPointSeries.js +24 -9
  137. package/es-modules/Series/Networkgraph/NetworkgraphSeries.js +2 -5
  138. package/es-modules/Series/Networkgraph/NetworkgraphSeriesDefaults.js +2 -0
  139. package/es-modules/Series/OHLC/OHLCPoint.js +0 -2
  140. package/es-modules/Series/OHLC/OHLCSeries.js +64 -160
  141. package/es-modules/Series/OHLC/OHLCSeriesDefaults.js +151 -0
  142. package/es-modules/Series/Organization/OrganizationPoint.js +0 -2
  143. package/es-modules/Series/Organization/OrganizationSeries.js +96 -469
  144. package/es-modules/Series/Organization/OrganizationSeriesDefaults.js +415 -0
  145. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +3 -10
  146. package/es-modules/Series/PackedBubble/PackedBubbleSeriesDefaults.js +2 -0
  147. package/es-modules/Series/PathUtilities.js +74 -0
  148. package/es-modules/Series/Pie/PieSeries.js +2 -644
  149. package/es-modules/Series/Pie/PieSeriesDefaults.js +660 -0
  150. package/es-modules/Series/PolarComposition.js +233 -15
  151. package/es-modules/Series/Sankey/SankeySeries.js +27 -530
  152. package/es-modules/Series/Sankey/SankeySeriesDefaults.js +522 -0
  153. package/es-modules/Series/Scatter/ScatterSeries.js +2 -172
  154. package/es-modules/Series/Scatter/ScatterSeriesDefaults.js +188 -0
  155. package/es-modules/Series/SolidGauge/SolidGaugeSeries.js +12 -182
  156. package/es-modules/Series/SolidGauge/SolidGaugeSeriesDefaults.js +199 -0
  157. package/es-modules/Series/Sunburst/SunburstNode.js +34 -0
  158. package/es-modules/Series/Sunburst/SunburstPoint.js +2 -1
  159. package/es-modules/Series/Sunburst/SunburstSeries.js +3 -1
  160. package/es-modules/Series/Timeline/TimelineSeries.js +2 -231
  161. package/es-modules/Series/Timeline/TimelineSeriesDefaults.js +248 -0
  162. package/es-modules/Series/TreeUtilities.js +1 -2
  163. package/es-modules/Series/Treegraph/TreegraphLayout.js +338 -0
  164. package/es-modules/Series/Treegraph/TreegraphLink.js +92 -0
  165. package/es-modules/Series/Treegraph/TreegraphNode.js +206 -0
  166. package/es-modules/Series/Treegraph/TreegraphPoint.js +175 -0
  167. package/es-modules/Series/Treegraph/TreegraphSeries.js +510 -0
  168. package/es-modules/Series/Treegraph/TreegraphSeriesDefaults.js +231 -0
  169. package/es-modules/Series/Treemap/TreemapNode.js +48 -0
  170. package/es-modules/Series/Treemap/TreemapPoint.js +2 -1
  171. package/es-modules/Series/Treemap/TreemapSeries.js +29 -27
  172. package/es-modules/Series/Variwide/VariwideComposition.js +70 -26
  173. package/es-modules/Series/Variwide/VariwidePoint.js +8 -7
  174. package/es-modules/Series/Variwide/VariwideSeries.js +19 -14
  175. package/es-modules/Series/Vector/VectorSeries.js +2 -2
  176. package/es-modules/Series/Venn/VennSeries.js +14 -0
  177. package/es-modules/Series/Waterfall/WaterfallSeries.js +0 -1
  178. package/es-modules/Series/Windbarb/WindbarbSeries.js +3 -2
  179. package/es-modules/Series/Wordcloud/WordcloudSeries.js +3 -0
  180. package/es-modules/Stock/Indicators/AO/AOIndicator.js +1 -2
  181. package/es-modules/Stock/Indicators/BB/BBIndicator.js +15 -4
  182. package/es-modules/Stock/Indicators/IKH/IKHIndicator.js +21 -18
  183. package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +1 -2
  184. package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +1 -2
  185. package/es-modules/Stock/Indicators/PivotPoints/PivotPointsIndicator.js +1 -1
  186. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +0 -1
  187. package/es-modules/Stock/Indicators/SlowStochastic/SlowStochasticIndicator.js +3 -4
  188. package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +1 -2
  189. package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +6 -7
  190. package/es-modules/{Core → Stock/Navigator}/Navigator.js +112 -686
  191. package/es-modules/Stock/Navigator/NavigatorComposition.js +218 -0
  192. package/es-modules/Stock/Navigator/NavigatorDefaults.js +490 -0
  193. package/es-modules/Stock/Navigator/NavigatorSymbols.js +44 -0
  194. package/es-modules/{Extensions → Stock/RangeSelector}/RangeSelector.js +154 -818
  195. package/es-modules/Stock/RangeSelector/RangeSelectorComposition.js +286 -0
  196. package/es-modules/Stock/RangeSelector/RangeSelectorDefaults.js +521 -0
  197. package/es-modules/{Core → Stock/Scrollbar}/Scrollbar.js +4 -4
  198. package/es-modules/{Core → Stock/Scrollbar}/ScrollbarDefaults.js +1 -1
  199. package/es-modules/Stock/{StockToolbar.js → StockTools/StockToolbar.js} +2 -2
  200. package/es-modules/Stock/{StockTools.js → StockTools/StockTools.js} +3 -3
  201. package/es-modules/Stock/{StockToolsBindings.js → StockTools/StockToolsBindings.js} +3 -3
  202. package/es-modules/Stock/{StockToolsDefaults.js → StockTools/StockToolsDefaults.js} +4 -4
  203. package/es-modules/Stock/{StockToolsGui.js → StockTools/StockToolsGui.js} +4 -4
  204. package/es-modules/Stock/{StockToolsUtilities.js → StockTools/StockToolsUtilities.js} +4 -4
  205. package/es-modules/masters/highcharts-3d.src.js +3 -5
  206. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  207. package/es-modules/masters/highcharts-more.src.js +1 -1
  208. package/es-modules/masters/highcharts.src.js +6 -6
  209. package/es-modules/masters/highmaps.src.js +1 -1
  210. package/es-modules/masters/highstock.src.js +1 -1
  211. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  212. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  213. package/es-modules/masters/indicators/ao.src.js +1 -1
  214. package/es-modules/masters/indicators/apo.src.js +1 -1
  215. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  216. package/es-modules/masters/indicators/aroon.src.js +1 -1
  217. package/es-modules/masters/indicators/atr.src.js +1 -1
  218. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  219. package/es-modules/masters/indicators/cci.src.js +1 -1
  220. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  221. package/es-modules/masters/indicators/cmf.src.js +1 -1
  222. package/es-modules/masters/indicators/cmo.src.js +1 -1
  223. package/es-modules/masters/indicators/dema.src.js +1 -1
  224. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  225. package/es-modules/masters/indicators/dmi.src.js +1 -1
  226. package/es-modules/masters/indicators/dpo.src.js +1 -1
  227. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  228. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  229. package/es-modules/masters/indicators/indicators.src.js +1 -1
  230. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  231. package/es-modules/masters/indicators/klinger.src.js +1 -1
  232. package/es-modules/masters/indicators/macd.src.js +1 -1
  233. package/es-modules/masters/indicators/mfi.src.js +1 -1
  234. package/es-modules/masters/indicators/momentum.src.js +1 -1
  235. package/es-modules/masters/indicators/natr.src.js +1 -1
  236. package/es-modules/masters/indicators/obv.src.js +1 -1
  237. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  238. package/es-modules/masters/indicators/ppo.src.js +1 -1
  239. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  240. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  241. package/es-modules/masters/indicators/psar.src.js +1 -1
  242. package/es-modules/masters/indicators/regressions.src.js +1 -1
  243. package/es-modules/masters/indicators/roc.src.js +1 -1
  244. package/es-modules/masters/indicators/rsi.src.js +1 -1
  245. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  246. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  247. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  248. package/es-modules/masters/indicators/tema.src.js +1 -1
  249. package/es-modules/masters/indicators/trendline.src.js +1 -1
  250. package/es-modules/masters/indicators/trix.src.js +1 -1
  251. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  252. package/es-modules/masters/indicators/vwap.src.js +1 -1
  253. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  254. package/es-modules/masters/indicators/wma.src.js +1 -1
  255. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  256. package/es-modules/masters/modules/accessibility.src.js +1 -1
  257. package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
  258. package/es-modules/masters/modules/annotations.src.js +1 -1
  259. package/es-modules/masters/modules/arc-diagram.src.js +1 -1
  260. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  261. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  262. package/es-modules/masters/modules/boost.src.js +1 -1
  263. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  264. package/es-modules/masters/modules/bullet.src.js +1 -1
  265. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  266. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  267. package/es-modules/masters/modules/cylinder.src.js +1 -1
  268. package/es-modules/masters/modules/data.src.js +1 -1
  269. package/es-modules/masters/modules/datagrouping.src.js +11 -3
  270. package/es-modules/masters/modules/debugger.src.js +1 -1
  271. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  272. package/es-modules/masters/modules/dotplot.src.js +1 -1
  273. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  274. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  275. package/es-modules/masters/modules/drilldown.src.js +1 -1
  276. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  277. package/es-modules/masters/modules/export-data.src.js +1 -1
  278. package/es-modules/masters/modules/exporting.src.js +1 -1
  279. package/es-modules/masters/modules/full-screen.src.js +1 -1
  280. package/es-modules/masters/modules/funnel.src.js +1 -1
  281. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  282. package/es-modules/masters/modules/gantt.src.js +9 -5
  283. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  284. package/es-modules/masters/modules/heatmap.src.js +1 -1
  285. package/es-modules/masters/modules/heikinashi.src.js +5 -2
  286. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  287. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  288. package/es-modules/masters/modules/item-series.src.js +1 -1
  289. package/es-modules/masters/modules/lollipop.src.js +1 -1
  290. package/es-modules/masters/modules/map.src.js +1 -1
  291. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  292. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  293. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  294. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  295. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  296. package/es-modules/masters/modules/oldie.src.js +1 -1
  297. package/es-modules/masters/modules/organization.src.js +1 -1
  298. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  299. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  300. package/es-modules/masters/modules/pareto.src.js +1 -1
  301. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  302. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  303. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  304. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  305. package/es-modules/masters/modules/sankey.src.js +1 -1
  306. package/es-modules/masters/modules/series-label.src.js +1 -1
  307. package/es-modules/masters/modules/series-on-point.src.js +1 -1
  308. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  309. package/es-modules/masters/modules/sonification.src.js +1 -1
  310. package/es-modules/masters/modules/static-scale.src.js +1 -1
  311. package/es-modules/masters/modules/stock-tools.src.js +4 -4
  312. package/es-modules/masters/modules/stock.src.js +17 -11
  313. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  314. package/es-modules/masters/modules/sunburst.src.js +1 -1
  315. package/es-modules/masters/modules/tilemap.src.js +1 -1
  316. package/es-modules/masters/modules/timeline.src.js +1 -1
  317. package/es-modules/masters/modules/treegraph.src.js +13 -0
  318. package/es-modules/masters/modules/treegrid.src.js +1 -1
  319. package/es-modules/masters/modules/treemap.src.js +1 -1
  320. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  321. package/es-modules/masters/modules/variwide.src.js +5 -2
  322. package/es-modules/masters/modules/vector.src.js +1 -1
  323. package/es-modules/masters/modules/venn.src.js +1 -1
  324. package/es-modules/masters/modules/windbarb.src.js +1 -1
  325. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  326. package/es-modules/masters/modules/xrange.src.js +1 -1
  327. package/es-modules/masters/themes/avocado.src.js +1 -1
  328. package/es-modules/masters/themes/brand-dark.src.js +1 -1
  329. package/es-modules/masters/themes/brand-light.src.js +1 -1
  330. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  331. package/es-modules/masters/themes/dark-green.src.js +1 -1
  332. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  333. package/es-modules/masters/themes/gray.src.js +1 -1
  334. package/es-modules/masters/themes/grid-light.src.js +1 -1
  335. package/es-modules/masters/themes/grid.src.js +1 -1
  336. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  337. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  338. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  339. package/es-modules/masters/themes/skies.src.js +1 -1
  340. package/es-modules/masters/themes/sunset.src.js +1 -1
  341. package/highcharts-3d.js +97 -98
  342. package/highcharts-3d.js.map +1 -1
  343. package/highcharts-3d.src.js +476 -449
  344. package/highcharts-gantt.js +811 -808
  345. package/highcharts-gantt.js.map +1 -1
  346. package/highcharts-gantt.src.js +14619 -14112
  347. package/highcharts-more.d.ts +0 -8
  348. package/highcharts-more.js +208 -201
  349. package/highcharts-more.js.map +1 -1
  350. package/highcharts-more.src.d.ts +0 -8
  351. package/highcharts-more.src.js +679 -289
  352. package/highcharts.d.ts +30739 -6156
  353. package/highcharts.js +590 -589
  354. package/highcharts.js.map +1 -1
  355. package/highcharts.src.d.ts +30739 -6156
  356. package/highcharts.src.js +1988 -1799
  357. package/highmaps.js +759 -757
  358. package/highmaps.js.map +1 -1
  359. package/highmaps.src.js +2339 -2077
  360. package/highstock.js +802 -794
  361. package/highstock.js.map +1 -1
  362. package/highstock.src.js +12349 -11416
  363. package/indicators/acceleration-bands.js +1 -1
  364. package/indicators/acceleration-bands.src.js +1 -1
  365. package/indicators/accumulation-distribution.js +1 -1
  366. package/indicators/accumulation-distribution.src.js +1 -1
  367. package/indicators/ao.js +6 -6
  368. package/indicators/ao.js.map +1 -1
  369. package/indicators/ao.src.js +4 -3
  370. package/indicators/apo.js +1 -1
  371. package/indicators/apo.src.js +1 -1
  372. package/indicators/aroon-oscillator.js +1 -1
  373. package/indicators/aroon-oscillator.src.js +1 -1
  374. package/indicators/aroon.js +1 -1
  375. package/indicators/aroon.src.js +1 -1
  376. package/indicators/atr.js +1 -1
  377. package/indicators/atr.src.js +1 -1
  378. package/indicators/bollinger-bands.js +1 -1
  379. package/indicators/bollinger-bands.js.map +1 -1
  380. package/indicators/bollinger-bands.src.js +16 -5
  381. package/indicators/cci.js +1 -1
  382. package/indicators/cci.src.js +1 -1
  383. package/indicators/chaikin.js +1 -1
  384. package/indicators/chaikin.src.js +1 -1
  385. package/indicators/cmf.js +1 -1
  386. package/indicators/cmf.src.js +1 -1
  387. package/indicators/cmo.d.ts +17 -0
  388. package/indicators/cmo.js +1 -1
  389. package/indicators/cmo.src.d.ts +17 -0
  390. package/indicators/cmo.src.js +1 -1
  391. package/indicators/dema.js +1 -1
  392. package/indicators/dema.src.js +1 -1
  393. package/indicators/disparity-index.d.ts +17 -0
  394. package/indicators/disparity-index.js +1 -1
  395. package/indicators/disparity-index.src.d.ts +17 -0
  396. package/indicators/disparity-index.src.js +1 -1
  397. package/indicators/dmi.d.ts +17 -0
  398. package/indicators/dmi.js +1 -1
  399. package/indicators/dmi.src.d.ts +17 -0
  400. package/indicators/dmi.src.js +1 -1
  401. package/indicators/dpo.js +1 -1
  402. package/indicators/dpo.src.js +1 -1
  403. package/indicators/ichimoku-kinko-hyo.js +14 -14
  404. package/indicators/ichimoku-kinko-hyo.js.map +1 -1
  405. package/indicators/ichimoku-kinko-hyo.src.js +22 -19
  406. package/indicators/indicators-all.js +198 -199
  407. package/indicators/indicators-all.js.map +1 -1
  408. package/indicators/indicators-all.src.js +63 -57
  409. package/indicators/indicators.js +13 -13
  410. package/indicators/indicators.js.map +1 -1
  411. package/indicators/indicators.src.js +1 -15
  412. package/indicators/keltner-channels.js +1 -1
  413. package/indicators/keltner-channels.src.js +1 -1
  414. package/indicators/klinger.d.ts +17 -0
  415. package/indicators/klinger.js +12 -12
  416. package/indicators/klinger.js.map +1 -1
  417. package/indicators/klinger.src.d.ts +17 -0
  418. package/indicators/klinger.src.js +4 -3
  419. package/indicators/macd.js +1 -1
  420. package/indicators/macd.js.map +1 -1
  421. package/indicators/macd.src.js +4 -3
  422. package/indicators/mfi.js +1 -1
  423. package/indicators/mfi.src.js +1 -1
  424. package/indicators/momentum.js +1 -1
  425. package/indicators/momentum.src.js +1 -1
  426. package/indicators/natr.js +1 -1
  427. package/indicators/natr.src.js +1 -1
  428. package/indicators/obv.d.ts +17 -0
  429. package/indicators/obv.js +1 -1
  430. package/indicators/obv.src.d.ts +17 -0
  431. package/indicators/obv.src.js +1 -1
  432. package/indicators/pivot-points.js +2 -2
  433. package/indicators/pivot-points.js.map +1 -1
  434. package/indicators/pivot-points.src.js +2 -2
  435. package/indicators/ppo.js +1 -1
  436. package/indicators/ppo.src.js +1 -1
  437. package/indicators/price-channel.js +1 -1
  438. package/indicators/price-channel.src.js +1 -1
  439. package/indicators/price-envelopes.js +1 -1
  440. package/indicators/price-envelopes.src.js +1 -1
  441. package/indicators/psar.js +1 -1
  442. package/indicators/psar.src.js +1 -1
  443. package/indicators/regressions.js +1 -1
  444. package/indicators/regressions.src.js +1 -1
  445. package/indicators/roc.js +1 -1
  446. package/indicators/roc.src.js +1 -1
  447. package/indicators/rsi.js +1 -1
  448. package/indicators/rsi.src.js +1 -1
  449. package/indicators/slow-stochastic.js +5 -5
  450. package/indicators/slow-stochastic.js.map +1 -1
  451. package/indicators/slow-stochastic.src.js +6 -5
  452. package/indicators/stochastic.js +1 -1
  453. package/indicators/stochastic.src.js +1 -1
  454. package/indicators/supertrend.js +7 -7
  455. package/indicators/supertrend.js.map +1 -1
  456. package/indicators/supertrend.src.js +4 -3
  457. package/indicators/tema.js +1 -1
  458. package/indicators/tema.src.js +1 -1
  459. package/indicators/trendline.js +1 -1
  460. package/indicators/trendline.src.js +1 -1
  461. package/indicators/trix.js +1 -1
  462. package/indicators/trix.src.js +1 -1
  463. package/indicators/volume-by-price.js +17 -17
  464. package/indicators/volume-by-price.js.map +1 -1
  465. package/indicators/volume-by-price.src.js +9 -8
  466. package/indicators/vwap.js +1 -1
  467. package/indicators/vwap.src.js +1 -1
  468. package/indicators/williams-r.js +1 -1
  469. package/indicators/williams-r.src.js +1 -1
  470. package/indicators/wma.js +1 -1
  471. package/indicators/wma.src.js +1 -1
  472. package/indicators/zigzag.js +1 -1
  473. package/indicators/zigzag.src.js +1 -1
  474. package/modules/accessibility.js +214 -213
  475. package/modules/accessibility.js.map +1 -1
  476. package/modules/accessibility.src.js +991 -835
  477. package/modules/annotations-advanced.js +16 -16
  478. package/modules/annotations-advanced.js.map +1 -1
  479. package/modules/annotations-advanced.src.js +29 -24
  480. package/modules/annotations.js +91 -91
  481. package/modules/annotations.js.map +1 -1
  482. package/modules/annotations.src.js +29 -24
  483. package/modules/arc-diagram.d.ts +17 -0
  484. package/modules/arc-diagram.js +15 -15
  485. package/modules/arc-diagram.js.map +1 -1
  486. package/modules/arc-diagram.src.d.ts +17 -0
  487. package/modules/arc-diagram.src.js +6 -6
  488. package/modules/arrow-symbols.js +1 -1
  489. package/modules/arrow-symbols.src.js +1 -1
  490. package/modules/boost-canvas.js +19 -19
  491. package/modules/boost-canvas.js.map +1 -1
  492. package/modules/boost-canvas.src.js +13 -8
  493. package/modules/boost.js +37 -37
  494. package/modules/boost.js.map +1 -1
  495. package/modules/boost.src.js +13 -8
  496. package/modules/broken-axis.js +1 -1
  497. package/modules/broken-axis.src.js +1 -1
  498. package/modules/bullet.js +1 -1
  499. package/modules/bullet.src.js +1 -1
  500. package/modules/coloraxis.js +25 -24
  501. package/modules/coloraxis.js.map +1 -1
  502. package/modules/coloraxis.src.js +77 -58
  503. package/modules/current-date-indicator.js +1 -1
  504. package/modules/current-date-indicator.src.js +1 -1
  505. package/modules/cylinder.js +1 -1
  506. package/modules/cylinder.src.js +1 -1
  507. package/modules/data.js +27 -27
  508. package/modules/data.js.map +1 -1
  509. package/modules/data.src.js +3 -3
  510. package/modules/datagrouping.d.ts +31 -0
  511. package/modules/datagrouping.js +23 -21
  512. package/modules/datagrouping.js.map +1 -1
  513. package/modules/datagrouping.src.d.ts +31 -0
  514. package/modules/datagrouping.src.js +921 -640
  515. package/modules/debugger.js +3 -3
  516. package/modules/debugger.js.map +1 -1
  517. package/modules/debugger.src.js +2 -2
  518. package/modules/dependency-wheel.js +12 -12
  519. package/modules/dependency-wheel.js.map +1 -1
  520. package/modules/dependency-wheel.src.js +191 -108
  521. package/modules/dotplot.js +6 -6
  522. package/modules/dotplot.js.map +1 -1
  523. package/modules/dotplot.src.js +10 -13
  524. package/modules/drag-panes.js +1 -1
  525. package/modules/drag-panes.src.js +1 -1
  526. package/modules/draggable-points.js +5 -5
  527. package/modules/draggable-points.js.map +1 -1
  528. package/modules/draggable-points.src.js +7 -3
  529. package/modules/drilldown.js +37 -37
  530. package/modules/drilldown.js.map +1 -1
  531. package/modules/drilldown.src.js +5 -6
  532. package/modules/dumbbell.js +17 -17
  533. package/modules/dumbbell.js.map +1 -1
  534. package/modules/dumbbell.src.js +27 -22
  535. package/modules/export-data.js +26 -25
  536. package/modules/export-data.js.map +1 -1
  537. package/modules/export-data.src.js +33 -6
  538. package/modules/exporting.js +36 -35
  539. package/modules/exporting.js.map +1 -1
  540. package/modules/exporting.src.js +81 -88
  541. package/modules/full-screen.js +1 -1
  542. package/modules/full-screen.src.js +1 -1
  543. package/modules/funnel.js +1 -1
  544. package/modules/funnel.src.js +1 -1
  545. package/modules/funnel3d.js +1 -1
  546. package/modules/funnel3d.src.js +1 -1
  547. package/modules/gantt.js +221 -219
  548. package/modules/gantt.js.map +1 -1
  549. package/modules/gantt.src.js +12842 -12524
  550. package/modules/grid-axis.js +1 -1
  551. package/modules/grid-axis.src.js +1 -1
  552. package/modules/heatmap.js +40 -40
  553. package/modules/heatmap.js.map +1 -1
  554. package/modules/heatmap.src.js +80 -58
  555. package/modules/heikinashi.d.ts +17 -0
  556. package/modules/heikinashi.js +9 -8
  557. package/modules/heikinashi.js.map +1 -1
  558. package/modules/heikinashi.src.d.ts +17 -0
  559. package/modules/heikinashi.src.js +192 -165
  560. package/modules/histogram-bellcurve.js +1 -1
  561. package/modules/histogram-bellcurve.src.js +1 -1
  562. package/modules/hollowcandlestick.d.ts +17 -0
  563. package/modules/hollowcandlestick.js +1 -1
  564. package/modules/hollowcandlestick.src.d.ts +17 -0
  565. package/modules/hollowcandlestick.src.js +1 -1
  566. package/modules/item-series.js +12 -12
  567. package/modules/item-series.js.map +1 -1
  568. package/modules/item-series.src.js +14 -10
  569. package/modules/lollipop.js +1 -1
  570. package/modules/lollipop.src.js +1 -1
  571. package/modules/map.js +172 -171
  572. package/modules/map.js.map +1 -1
  573. package/modules/map.src.js +194 -121
  574. package/modules/marker-clusters.js +2 -2
  575. package/modules/marker-clusters.js.map +1 -1
  576. package/modules/marker-clusters.src.js +2 -2
  577. package/modules/networkgraph.js +8 -8
  578. package/modules/networkgraph.js.map +1 -1
  579. package/modules/networkgraph.src.js +5 -6
  580. package/modules/no-data-to-display.js +4 -4
  581. package/modules/no-data-to-display.js.map +1 -1
  582. package/modules/no-data-to-display.src.js +2 -2
  583. package/modules/offline-exporting.js +4 -4
  584. package/modules/offline-exporting.js.map +1 -1
  585. package/modules/offline-exporting.src.js +7 -7
  586. package/modules/oldie-polyfills.js +7 -7
  587. package/modules/oldie-polyfills.js.map +1 -1
  588. package/modules/oldie-polyfills.src.js +9 -7
  589. package/modules/oldie.js +30 -30
  590. package/modules/oldie.js.map +1 -1
  591. package/modules/oldie.src.js +5 -5
  592. package/modules/organization.js +18 -16
  593. package/modules/organization.js.map +1 -1
  594. package/modules/organization.src.js +659 -495
  595. package/modules/overlapping-datalabels.js +1 -1
  596. package/modules/overlapping-datalabels.src.js +1 -1
  597. package/modules/parallel-coordinates.js +10 -10
  598. package/modules/parallel-coordinates.js.map +1 -1
  599. package/modules/parallel-coordinates.src.js +6 -2
  600. package/modules/pareto.js +1 -1
  601. package/modules/pareto.src.js +1 -1
  602. package/modules/pathfinder.js +31 -31
  603. package/modules/pathfinder.js.map +1 -1
  604. package/modules/pathfinder.src.js +19 -23
  605. package/modules/pattern-fill.js +2 -2
  606. package/modules/pattern-fill.js.map +1 -1
  607. package/modules/pattern-fill.src.js +11 -11
  608. package/modules/price-indicator.js +1 -1
  609. package/modules/price-indicator.src.js +1 -1
  610. package/modules/pyramid3d.js +1 -1
  611. package/modules/pyramid3d.src.js +1 -1
  612. package/modules/sankey.js +33 -32
  613. package/modules/sankey.js.map +1 -1
  614. package/modules/sankey.src.js +571 -550
  615. package/modules/series-label.js +17 -17
  616. package/modules/series-label.js.map +1 -1
  617. package/modules/series-label.src.js +7 -3
  618. package/modules/series-on-point.d.ts +17 -0
  619. package/modules/series-on-point.js +1 -1
  620. package/modules/series-on-point.src.d.ts +17 -0
  621. package/modules/series-on-point.src.js +1 -1
  622. package/modules/solid-gauge.js +11 -10
  623. package/modules/solid-gauge.js.map +1 -1
  624. package/modules/solid-gauge.src.js +220 -192
  625. package/modules/sonification.js +2 -2
  626. package/modules/sonification.js.map +1 -1
  627. package/modules/sonification.src.js +2 -2
  628. package/modules/static-scale.js +1 -1
  629. package/modules/static-scale.src.js +1 -1
  630. package/modules/stock-tools.js +59 -59
  631. package/modules/stock-tools.js.map +1 -1
  632. package/modules/stock-tools.src.js +19 -21
  633. package/modules/stock.d.ts +26 -6
  634. package/modules/stock.js +212 -205
  635. package/modules/stock.js.map +1 -1
  636. package/modules/stock.src.d.ts +26 -6
  637. package/modules/stock.src.js +11361 -10617
  638. package/modules/streamgraph.js +1 -1
  639. package/modules/streamgraph.src.js +1 -1
  640. package/modules/sunburst.js +75 -73
  641. package/modules/sunburst.js.map +1 -1
  642. package/modules/sunburst.src.js +133 -57
  643. package/modules/tilemap.js +1 -1
  644. package/modules/tilemap.src.js +1 -1
  645. package/modules/timeline.js +18 -18
  646. package/modules/timeline.js.map +1 -1
  647. package/modules/timeline.src.js +257 -233
  648. package/modules/treegraph.d.ts +17 -0
  649. package/modules/treegraph.js +44 -0
  650. package/modules/treegraph.js.map +1 -0
  651. package/modules/treegraph.src.d.ts +17 -0
  652. package/modules/treegraph.src.js +1829 -0
  653. package/modules/treegrid.js +2 -2
  654. package/modules/treegrid.js.map +1 -1
  655. package/modules/treegrid.src.js +2 -3
  656. package/modules/treemap.js +54 -53
  657. package/modules/treemap.js.map +1 -1
  658. package/modules/treemap.src.js +90 -52
  659. package/modules/variable-pie.js +1 -1
  660. package/modules/variable-pie.src.js +1 -1
  661. package/modules/variwide.js +12 -12
  662. package/modules/variwide.js.map +1 -1
  663. package/modules/variwide.src.js +158 -106
  664. package/modules/vector.js +1 -1
  665. package/modules/vector.src.js +3 -3
  666. package/modules/venn.js +31 -31
  667. package/modules/venn.js.map +1 -1
  668. package/modules/venn.src.js +17 -16
  669. package/modules/windbarb.js +15 -15
  670. package/modules/windbarb.js.map +1 -1
  671. package/modules/windbarb.src.js +41 -4
  672. package/modules/wordcloud.js +23 -23
  673. package/modules/wordcloud.js.map +1 -1
  674. package/modules/wordcloud.src.js +6 -15
  675. package/modules/xrange.js +1 -1
  676. package/modules/xrange.src.js +1 -1
  677. package/package.json +1 -1
  678. package/themes/avocado.js +2 -3
  679. package/themes/avocado.js.map +1 -1
  680. package/themes/avocado.src.js +2 -2
  681. package/themes/brand-dark.d.ts +22 -0
  682. package/themes/brand-dark.js +3 -3
  683. package/themes/brand-dark.js.map +1 -1
  684. package/themes/brand-dark.src.d.ts +22 -0
  685. package/themes/brand-dark.src.js +2 -2
  686. package/themes/brand-light.d.ts +22 -0
  687. package/themes/brand-light.js +2 -2
  688. package/themes/brand-light.js.map +1 -1
  689. package/themes/brand-light.src.d.ts +22 -0
  690. package/themes/brand-light.src.js +2 -2
  691. package/themes/dark-blue.js +2 -2
  692. package/themes/dark-blue.js.map +1 -1
  693. package/themes/dark-blue.src.js +2 -2
  694. package/themes/dark-green.js +2 -2
  695. package/themes/dark-green.js.map +1 -1
  696. package/themes/dark-green.src.js +2 -2
  697. package/themes/dark-unica.js +2 -2
  698. package/themes/dark-unica.js.map +1 -1
  699. package/themes/dark-unica.src.js +2 -2
  700. package/themes/gray.js +2 -2
  701. package/themes/gray.js.map +1 -1
  702. package/themes/gray.src.js +2 -2
  703. package/themes/grid-light.js +2 -2
  704. package/themes/grid-light.js.map +1 -1
  705. package/themes/grid-light.src.js +2 -2
  706. package/themes/grid.js +2 -2
  707. package/themes/grid.js.map +1 -1
  708. package/themes/grid.src.js +2 -2
  709. package/themes/high-contrast-dark.d.ts +22 -0
  710. package/themes/high-contrast-dark.js +2 -2
  711. package/themes/high-contrast-dark.js.map +1 -1
  712. package/themes/high-contrast-dark.src.d.ts +22 -0
  713. package/themes/high-contrast-dark.src.js +2 -2
  714. package/themes/high-contrast-light.d.ts +22 -0
  715. package/themes/high-contrast-light.js +2 -2
  716. package/themes/high-contrast-light.js.map +1 -1
  717. package/themes/high-contrast-light.src.d.ts +22 -0
  718. package/themes/high-contrast-light.src.js +2 -2
  719. package/themes/sand-signika.js +2 -2
  720. package/themes/sand-signika.js.map +1 -1
  721. package/themes/sand-signika.src.js +2 -2
  722. package/themes/skies.js +2 -2
  723. package/themes/skies.js.map +1 -1
  724. package/themes/skies.src.js +2 -2
  725. package/themes/sunset.js +2 -2
  726. package/themes/sunset.js.map +1 -1
  727. package/themes/sunset.src.js +2 -2
  728. package/es-modules/Core/Axis/Axis3D.js +0 -612
  729. package/es-modules/Core/Axis/NavigatorAxis.js +0 -159
  730. package/es-modules/Core/Axis/Tick3D.js +0 -68
  731. package/es-modules/Extensions/DataGrouping.js +0 -1177
  732. package/es-modules/Stock/Indicators/SMA/SMAComposition.js +0 -12
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highcharts JS v10.2.1 (2022-08-29)
2
+ * @license Highcharts JS v10.3.1 (2022-10-31)
3
3
  * Organization chart series type
4
4
  *
5
5
  * (c) 2019-2021 Torstein Honsi
@@ -111,14 +111,12 @@
111
111
  _this.series = void 0;
112
112
  _this.toNode = void 0;
113
113
  return _this;
114
- /* eslint-enable valid-jsdoc */
115
114
  }
116
115
  /* *
117
116
  *
118
117
  * Functions
119
118
  *
120
119
  * */
121
- /* eslint-disable valid-jsdoc */
122
120
  /**
123
121
  * All nodes in an org chart are equal width.
124
122
  * @private
@@ -178,9 +176,521 @@
178
176
  *
179
177
  * */
180
178
 
181
- return OrganizationPoint;
179
+ return OrganizationPoint;
180
+ });
181
+ _registerModule(_modules, 'Series/Organization/OrganizationSeriesDefaults.js', [], function () {
182
+ /* *
183
+ *
184
+ * Organization chart module
185
+ *
186
+ * (c) 2018-2021 Torstein Honsi
187
+ *
188
+ * License: www.highcharts.com/license
189
+ *
190
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
191
+ *
192
+ * */
193
+ /* *
194
+ *
195
+ * API Options
196
+ *
197
+ * */
198
+ /**
199
+ * An organization chart is a diagram that shows the structure of an
200
+ * organization and the relationships and relative ranks of its parts and
201
+ * positions.
202
+ *
203
+ * @sample highcharts/demo/organization-chart/
204
+ * Organization chart
205
+ * @sample highcharts/series-organization/horizontal/
206
+ * Horizontal organization chart
207
+ * @sample highcharts/series-organization/borderless
208
+ * Borderless design
209
+ * @sample highcharts/series-organization/center-layout
210
+ * Centered layout
211
+ *
212
+ * @extends plotOptions.sankey
213
+ * @excluding allowPointSelect, curveFactor, dataSorting
214
+ * @since 7.1.0
215
+ * @product highcharts
216
+ * @requires modules/organization
217
+ * @optionparent plotOptions.organization
218
+ */
219
+ var OrganizationSeriesDefaults = {
220
+ /**
221
+ * The border color of the node cards.
222
+ *
223
+ * @type {Highcharts.ColorString}
224
+ */
225
+ borderColor: "#666666" /* Palette.neutralColor60 */,
226
+ /**
227
+ * The border radius of the node cards.
228
+ *
229
+ * @private
230
+ */
231
+ borderRadius: 3,
232
+ /**
233
+ * Radius for the rounded corners of the links between nodes. This
234
+ * option is now deprecated,
235
+ and moved to
236
+ * [link.radius](#plotOptions.organization.link.radius).
237
+ *
238
+ * @sample highcharts/series-organization/link-options
239
+ * Square links
240
+ *
241
+ * @deprecated
242
+ * @apioption series.organization.linkRadius
243
+ */
244
+ /**
245
+ * Link Styling options
246
+ * @since 10.3.0
247
+ * @product highcharts
248
+ */
249
+ link: {
250
+ /**
251
+ * Modifier of the shape of the curved link. Works best for values
252
+ * between 0 and 1,
253
+ where 0 is a straight line,
254
+ and 1 is a shape
255
+ * close to the default one.
256
+ *
257
+ * @default 0.5
258
+ * @type {number}
259
+ * @since 10.3.0
260
+ * @product highcharts
261
+ * @apioption series.organization.link.offset
262
+ */
263
+ /**
264
+ * The color of the links between nodes.
265
+ *
266
+ * @type {Highcharts.ColorString}
267
+ */
268
+ color: "#666666" /* Palette.neutralColor60 */,
269
+ /**
270
+ * The line width of the links connecting nodes,
271
+ in pixels.
272
+ *
273
+ * @sample highcharts/series-organization/link-options
274
+ * Square links
275
+ */
276
+ lineWidth: 1,
277
+ /**
278
+ * Radius for the rounded corners of the links between nodes.
279
+ * Works for `default` link type.
280
+ *
281
+ * @sample highcharts/series-organization/link-options
282
+ * Square links
283
+ */
284
+ radius: 10,
285
+ /**
286
+ * Type of the link shape.
287
+ *
288
+ * @sample highcharts/series-organization/different-link-types
289
+ * Different link types
290
+ *
291
+ * @declare Highcharts.OrganizationLinkTypeValue
292
+ * @type {'default' | 'curved' | 'straight'}
293
+ * @default 'default'
294
+ * @product highcharts
295
+ */
296
+ type: 'default'
297
+ },
298
+ borderWidth: 1,
299
+ /**
300
+ * @declare Highcharts.SeriesOrganizationDataLabelsOptionsObject
301
+ *
302
+ * @private
303
+ */
304
+ dataLabels: {
305
+ /* eslint-disable valid-jsdoc */
306
+ /**
307
+ * A callback for defining the format for _nodes_ in the
308
+ * organization chart. The `nodeFormat` option takes precedence
309
+ * over `nodeFormatter`.
310
+ *
311
+ * In an organization chart,
312
+ the `nodeFormatter` is a quite complex
313
+ * function of the available options,
314
+ striving for a good default
315
+ * layout of cards with or without images. In organization chart,
316
+ * the data labels come with `useHTML` set to true,
317
+ meaning they
318
+ * will be rendered as true HTML above the SVG.
319
+ *
320
+ * @sample highcharts/series-organization/datalabels-nodeformatter
321
+ * Modify the default label format output
322
+ *
323
+ * @type {Highcharts.SeriesSankeyDataLabelsFormatterCallbackFunction}
324
+ * @since 6.0.2
325
+ */
326
+ nodeFormatter: function () {
327
+ var outerStyle = {
328
+ width: '100%',
329
+ height: '100%',
330
+ display: 'flex',
331
+ 'flex-direction': 'row',
332
+ 'align-items': 'center',
333
+ 'justify-content': 'center'
334
+ },
335
+ imageStyle = {
336
+ 'max-height': '100%',
337
+ 'border-radius': '50%'
338
+ },
339
+ innerStyle = {
340
+ width: '100%',
341
+ padding: 0,
342
+ 'text-align': 'center',
343
+ 'white-space': 'normal'
344
+ },
345
+ nameStyle = {
346
+ margin: 0
347
+ },
348
+ titleStyle = {
349
+ margin: 0
350
+ },
351
+ descriptionStyle = {
352
+ opacity: 0.75,
353
+ margin: '5px'
354
+ };
355
+ // eslint-disable-next-line valid-jsdoc
356
+ /**
357
+ * @private
358
+ */
359
+ function styleAttr(style) {
360
+ return Object.keys(style).reduce(function (str, key) {
361
+ return str + key + ':' + style[key] + ';';
362
+ }, 'style="') + '"';
363
+ }
364
+ var _a = this.point,
365
+ description = _a.description,
366
+ image = _a.image,
367
+ title = _a.title;
368
+ if (image) {
369
+ imageStyle['max-width'] = '30%';
370
+ innerStyle.width = '70%';
371
+ }
372
+ // PhantomJS doesn't support flex, roll back to absolute
373
+ // positioning
374
+ if (this
375
+ .series.chart.renderer.forExport) {
376
+ outerStyle.display = 'block';
377
+ innerStyle.position = 'absolute';
378
+ innerStyle.left = image ? '30%' : 0;
379
+ innerStyle.top = 0;
380
+ }
381
+ var html = '<div ' + styleAttr(outerStyle) + '>';
382
+ if (image) {
383
+ html += '<img src="' + image + '" ' +
384
+ styleAttr(imageStyle) + '>';
385
+ }
386
+ html += '<div ' + styleAttr(innerStyle) + '>';
387
+ if (this.point.name) {
388
+ html += '<h4 ' + styleAttr(nameStyle) + '>' +
389
+ this.point.name + '</h4>';
390
+ }
391
+ if (title) {
392
+ html += '<p ' + styleAttr(titleStyle) + '>' +
393
+ (title || '') + '</p>';
394
+ }
395
+ if (description) {
396
+ html += '<p ' + styleAttr(descriptionStyle) + '>' +
397
+ description + '</p>';
398
+ }
399
+ html += '</div>' +
400
+ '</div>';
401
+ return html;
402
+ },
403
+ /* eslint-enable valid-jsdoc */
404
+ style: {
405
+ /** @internal */
406
+ fontWeight: 'normal',
407
+ /** @internal */
408
+ fontSize: '13px'
409
+ },
410
+ useHTML: true
411
+ },
412
+ /**
413
+ * The indentation in pixels of hanging nodes, nodes which parent has
414
+ * [layout](#series.organization.nodes.layout) set to `hanging`.
415
+ *
416
+ * @private
417
+ */
418
+ hangingIndent: 20,
419
+ /**
420
+ * Defines the indentation of a `hanging` layout parent's children.
421
+ * Possible options:
422
+ *
423
+ * - `inherit` (default): Only the first child adds the indentation,
424
+ * children of a child with indentation inherit the indentation.
425
+ * - `cumulative`: All children of a child with indentation add its
426
+ * own indent. The option may cause overlapping of nodes.
427
+ * Then use `shrink` option:
428
+ * - `shrink`: Nodes shrink by the
429
+ * [hangingIndent](#plotOptions.organization.hangingIndent)
430
+ * value until they reach the
431
+ * [minNodeLength](#plotOptions.organization.minNodeLength).
432
+ *
433
+ * @sample highcharts/series-organization/hanging-cumulative
434
+ * Every indent increases the indentation
435
+ *
436
+ * @sample highcharts/series-organization/hanging-shrink
437
+ * Every indent decreases the nodes' width
438
+ *
439
+ * @type {Highcharts.OrganizationHangingIndentTranslationValue}
440
+ * @since 10.0.0
441
+ * @default inherit
442
+ *
443
+ * @private
444
+ */
445
+ hangingIndentTranslation: 'inherit',
446
+ /**
447
+ *
448
+ * The color of the links between nodes. This option is moved to
449
+ * [link.color](#plotOptions.organization.link.color).
450
+ *
451
+ * @type {Highcharts.ColorString}
452
+ * @deprecated
453
+ * @apioption series.organization.linkColor
454
+ * @private
455
+ */
456
+ /**
457
+ * The line width of the links connecting nodes, in pixels. This option
458
+ * is now deprecated and moved to the
459
+ * [link.radius](#plotOptions.organization.link.lineWidth).
460
+ *
461
+ * @sample highcharts/series-organization/link-options
462
+ * Square links
463
+ *
464
+ * @deprecated
465
+ * @apioption series.organization.linkLineWidth
466
+ * @private
467
+ */
468
+ /**
469
+ * In a horizontal chart, the minimum width of the **hanging** nodes
470
+ * only, in pixels. In a vertical chart, the minimum height of the
471
+ * **haning** nodes only, in pixels too.
472
+ *
473
+ * Note: Used only when
474
+ * [hangingIndentTranslation](#plotOptions.organization.hangingIndentTranslation)
475
+ * is set to `shrink`.
476
+ *
477
+ * @see [nodeWidth](#plotOptions.organization.nodeWidth)
478
+ *
479
+ * @private
480
+ */
481
+ minNodeLength: 10,
482
+ /**
483
+ * In a horizontal chart, the width of the nodes in pixels. Note that
484
+ * most organization charts are vertical, so the name of this option
485
+ * is counterintuitive.
486
+ *
487
+ * @see [minNodeLength](#plotOptions.organization.minNodeLength)
488
+ *
489
+ * @private
490
+ */
491
+ nodeWidth: 50,
492
+ tooltip: {
493
+ nodeFormat: '{point.name}<br>{point.title}<br>{point.description}'
494
+ }
495
+ };
496
+ /**
497
+ * An `organization` series. If the [type](#series.organization.type) option is
498
+ * not specified, it is inherited from [chart.type](#chart.type).
499
+ *
500
+ * @extends series,plotOptions.organization
501
+ * @exclude dataSorting, boostThreshold, boostBlending
502
+ * @product highcharts
503
+ * @requires modules/sankey
504
+ * @requires modules/organization
505
+ * @apioption series.organization
506
+ */
507
+ /**
508
+ * @type {Highcharts.SeriesOrganizationDataLabelsOptionsObject|Array<Highcharts.SeriesOrganizationDataLabelsOptionsObject>}
509
+ * @product highcharts
510
+ * @apioption series.organization.data.dataLabels
511
+ */
512
+ /**
513
+ * A collection of options for the individual nodes. The nodes in an org chart
514
+ * are auto-generated instances of `Highcharts.Point`, but options can be
515
+ * applied here and linked by the `id`.
516
+ *
517
+ * @extends series.sankey.nodes
518
+ * @type {Array<*>}
519
+ * @product highcharts
520
+ * @apioption series.organization.nodes
521
+ */
522
+ /**
523
+ * Individual data label for each node. The options are the same as
524
+ * the ones for [series.organization.dataLabels](#series.organization.dataLabels).
525
+ *
526
+ * @type {Highcharts.SeriesOrganizationDataLabelsOptionsObject|Array<Highcharts.SeriesOrganizationDataLabelsOptionsObject>}
527
+ *
528
+ * @apioption series.organization.nodes.dataLabels
529
+ */
530
+ /**
531
+ * The job description for the node card, will be inserted by the default
532
+ * `dataLabel.nodeFormatter`.
533
+ *
534
+ * @sample highcharts/demo/organization-chart
535
+ * Org chart with job descriptions
536
+ *
537
+ * @type {string}
538
+ * @product highcharts
539
+ * @apioption series.organization.nodes.description
540
+ */
541
+ /**
542
+ * An image for the node card, will be inserted by the default
543
+ * `dataLabel.nodeFormatter`.
544
+ *
545
+ * @sample highcharts/demo/organization-chart
546
+ * Org chart with images
547
+ *
548
+ * @type {string}
549
+ * @product highcharts
550
+ * @apioption series.organization.nodes.image
551
+ */
552
+ /**
553
+ * Layout for the node's children. If `hanging`, this node's children will hang
554
+ * below their parent, allowing a tighter packing of nodes in the diagram.
555
+ *
556
+ * Note: Since @next version, the `hanging` layout is set by default for
557
+ * children of a parent using `hanging` layout.
558
+ *
559
+ * @sample highcharts/demo/organization-chart
560
+ * Hanging layout
561
+ *
562
+ * @type {Highcharts.SeriesOrganizationNodesLayoutValue}
563
+ * @default normal
564
+ * @product highcharts
565
+ * @apioption series.organization.nodes.layout
566
+ */
567
+ /**
568
+ * The job title for the node card, will be inserted by the default
569
+ * `dataLabel.nodeFormatter`.
570
+ *
571
+ * @sample highcharts/demo/organization-chart
572
+ * Org chart with job titles
573
+ *
574
+ * @type {string}
575
+ * @product highcharts
576
+ * @apioption series.organization.nodes.title
577
+ */
578
+ /**
579
+ * An array of data points for the series. For the `organization` series
580
+ * type, points can be given in the following way:
581
+ *
582
+ * An array of objects with named values. The following snippet shows only a
583
+ * few settings, see the complete options set below. If the total number of data
584
+ * points exceeds the series' [turboThreshold](#series.area.turboThreshold),
585
+ * this option is not available.
586
+ *
587
+ * ```js
588
+ * data: [{
589
+ * from: 'Category1',
590
+ * to: 'Category2',
591
+ * weight: 2
592
+ * }, {
593
+ * from: 'Category1',
594
+ * to: 'Category3',
595
+ * weight: 5
596
+ * }]
597
+ * ```
598
+ *
599
+ * @type {Array<*>}
600
+ * @extends series.sankey.data
601
+ * @product highcharts
602
+ * @apioption series.organization.data
603
+ */
604
+ ''; // keeps doclets above in JS file
605
+ /* *
606
+ *
607
+ * Default Export
608
+ *
609
+ * */
610
+
611
+ return OrganizationSeriesDefaults;
612
+ });
613
+ _registerModule(_modules, 'Series/PathUtilities.js', [], function () {
614
+ /* *
615
+ *
616
+ * (c) 2010-2022 Pawel Lysy
617
+ *
618
+ * License: www.highcharts.com/license
619
+ *
620
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
621
+ *
622
+ * */
623
+ /* *
624
+ *
625
+ * Functions
626
+ *
627
+ * */
628
+ /**
629
+ * General function to apply corner radius to a path
630
+ * @private
631
+ */
632
+ function curvedPath(path, r) {
633
+ var d = [];
634
+ for (var i = 0; i < path.length; i++) {
635
+ var x = path[i][1];
636
+ var y = path[i][2];
637
+ if (typeof x === 'number' && typeof y === 'number') {
638
+ // moveTo
639
+ if (i === 0) {
640
+ d.push(['M', x, y]);
641
+ }
642
+ else if (i === path.length - 1) {
643
+ d.push(['L', x, y]);
644
+ // curveTo
645
+ }
646
+ else if (r) {
647
+ var prevSeg = path[i - 1];
648
+ var nextSeg = path[i + 1];
649
+ if (prevSeg && nextSeg) {
650
+ var x1 = prevSeg[1],
651
+ y1 = prevSeg[2],
652
+ x2 = nextSeg[1],
653
+ y2 = nextSeg[2];
654
+ // Only apply to breaks
655
+ if (typeof x1 === 'number' &&
656
+ typeof x2 === 'number' &&
657
+ typeof y1 === 'number' &&
658
+ typeof y2 === 'number' &&
659
+ x1 !== x2 &&
660
+ y1 !== y2) {
661
+ var directionX = x1 < x2 ? 1 : -1,
662
+ directionY = y1 < y2 ? 1 : -1;
663
+ d.push([
664
+ 'L',
665
+ x - directionX * Math.min(Math.abs(x - x1), r),
666
+ y - directionY * Math.min(Math.abs(y - y1), r)
667
+ ], [
668
+ 'C',
669
+ x,
670
+ y,
671
+ x,
672
+ y,
673
+ x + directionX * Math.min(Math.abs(x - x2), r),
674
+ y + directionY * Math.min(Math.abs(y - y2), r)
675
+ ]);
676
+ }
677
+ }
678
+ // lineTo
679
+ }
680
+ else {
681
+ d.push(['L', x, y]);
682
+ }
683
+ }
684
+ }
685
+ return d;
686
+ }
687
+ var PathUtilities = {
688
+ curvedPath: curvedPath
689
+ };
690
+
691
+ return PathUtilities;
182
692
  });
183
- _registerModule(_modules, 'Series/Organization/OrganizationSeries.js', [_modules['Series/Organization/OrganizationPoint.js'], _modules['Core/Series/SeriesRegistry.js'], _modules['Core/Utilities.js']], function (OrganizationPoint, SeriesRegistry, U) {
693
+ _registerModule(_modules, 'Series/Organization/OrganizationSeries.js', [_modules['Series/Organization/OrganizationPoint.js'], _modules['Series/Organization/OrganizationSeriesDefaults.js'], _modules['Core/Series/SeriesRegistry.js'], _modules['Series/PathUtilities.js'], _modules['Core/Utilities.js']], function (OrganizationPoint, OrganizationSeriesDefaults, SeriesRegistry, PathUtilities, U) {
184
694
  /* *
185
695
  *
186
696
  * Organization chart module
@@ -212,8 +722,7 @@
212
722
  var css = U.css,
213
723
  extend = U.extend,
214
724
  merge = U.merge,
215
- pick = U.pick,
216
- wrap = U.wrap;
725
+ pick = U.pick;
217
726
  /* *
218
727
  *
219
728
  * Class
@@ -236,7 +745,11 @@
236
745
  * */
237
746
  var _this = _super !== null && _super.apply(this,
238
747
  arguments) || this;
239
- /* eslint-enable valid-jsdoc */
748
+ /* *
749
+ *
750
+ * Static Functions
751
+ *
752
+ * */
240
753
  /* *
241
754
  *
242
755
  * Properties
@@ -248,72 +761,6 @@
248
761
  return _this;
249
762
  /* eslint-enable valid-jsdoc */
250
763
  }
251
- /* *
252
- *
253
- * Static Functions
254
- *
255
- * */
256
- /* eslint-disable valid-jsdoc */
257
- /**
258
- * General function to apply corner radius to a path - can be lifted to
259
- * renderer or utilities if we need it elsewhere.
260
- * @private
261
- */
262
- OrganizationSeries.curvedPath = function (path, r) {
263
- var d = [];
264
- for (var i = 0; i < path.length; i++) {
265
- var x = path[i][1];
266
- var y = path[i][2];
267
- if (typeof x === 'number' && typeof y === 'number') {
268
- // moveTo
269
- if (i === 0) {
270
- d.push(['M', x, y]);
271
- }
272
- else if (i === path.length - 1) {
273
- d.push(['L', x, y]);
274
- // curveTo
275
- }
276
- else if (r) {
277
- var prevSeg = path[i - 1];
278
- var nextSeg = path[i + 1];
279
- if (prevSeg && nextSeg) {
280
- var x1 = prevSeg[1],
281
- y1 = prevSeg[2],
282
- x2 = nextSeg[1],
283
- y2 = nextSeg[2];
284
- // Only apply to breaks
285
- if (typeof x1 === 'number' &&
286
- typeof x2 === 'number' &&
287
- typeof y1 === 'number' &&
288
- typeof y2 === 'number' &&
289
- x1 !== x2 &&
290
- y1 !== y2) {
291
- var directionX = x1 < x2 ? 1 : -1,
292
- directionY = y1 < y2 ? 1 : -1;
293
- d.push([
294
- 'L',
295
- x - directionX * Math.min(Math.abs(x - x1), r),
296
- y - directionY * Math.min(Math.abs(y - y1), r)
297
- ], [
298
- 'C',
299
- x,
300
- y,
301
- x,
302
- y,
303
- x + directionX * Math.min(Math.abs(x - x2), r),
304
- y + directionY * Math.min(Math.abs(y - y2), r)
305
- ]);
306
- }
307
- }
308
- // lineTo
309
- }
310
- else {
311
- d.push(['L', x, y]);
312
- }
313
- }
314
- }
315
- return d;
316
- };
317
764
  /* *
318
765
  *
319
766
  * Functions
@@ -322,14 +769,15 @@
322
769
  /* eslint-disable valid-jsdoc */
323
770
  OrganizationSeries.prototype.alignDataLabel = function (point, dataLabel, options) {
324
771
  // Align the data label to the point graphic
325
- if (options.useHTML) {
326
- var width_1 = point.shapeArgs.width,
327
- height_1 = point.shapeArgs.height,
772
+ var shapeArgs = point.shapeArgs;
773
+ if (options.useHTML && shapeArgs) {
774
+ var width_1 = shapeArgs.width || 0,
775
+ height_1 = shapeArgs.height || 0,
328
776
  padjust = (this.options.borderWidth +
329
777
  2 * this.options.dataLabels.padding);
330
778
  if (this.chart.inverted) {
331
779
  width_1 = height_1;
332
- height_1 = point.shapeArgs.width;
780
+ height_1 = shapeArgs.width || 0;
333
781
  }
334
782
  height_1 -= padjust;
335
783
  width_1 -= padjust;
@@ -351,12 +799,7 @@
351
799
  }
352
800
  // The getBBox function is used in `alignDataLabel` to align
353
801
  // inside the box
354
- dataLabel.getBBox = function () {
355
- return {
356
- width: width_1,
357
- height: height_1
358
- };
359
- };
802
+ dataLabel.getBBox = function () { return ({ width: width_1, height: height_1, x: 0, y: 0 }); };
360
803
  // Overwrite dataLabel dimensions (#13100).
361
804
  dataLabel.width = width_1;
362
805
  dataLabel.height = height_1;
@@ -367,27 +810,57 @@
367
810
  var node = _super.prototype.createNode.call(this,
368
811
  id);
369
812
  // All nodes in an org chart are equal width
370
- node.getSum = function () {
371
- return 1;
372
- };
813
+ node.getSum = function () { return 1; };
373
814
  return node;
374
815
  };
375
816
  OrganizationSeries.prototype.pointAttribs = function (point, state) {
376
- var series = this, attribs = SankeySeries.prototype.pointAttribs.call(series, point, state), level = point.isNode ? point.level : point.fromNode.level, levelOptions = series.mapOptionsToLevel[level || 0] || {}, options = point.options, stateOptions = (levelOptions.states &&
377
- levelOptions.states[state]) || {}, values = ['borderRadius', 'linkColor', 'linkLineWidth', 'linkOpacity']
378
- .reduce(function (obj, key) {
379
- obj[key] = pick(stateOptions[key], options[key], levelOptions[key], series.options[key]);
380
- return obj;
381
- }, {});
817
+ var series = this,
818
+ attribs = SankeySeries.prototype.pointAttribs.call(series,
819
+ point,
820
+ state),
821
+ level = point.isNode ? point.level : point.fromNode.level,
822
+ levelOptions = series.mapOptionsToLevel[level || 0] || {},
823
+ options = point.options,
824
+ stateOptions = (levelOptions.states &&
825
+ levelOptions.states[state]) ||
826
+ {},
827
+ borderRadius = pick(stateOptions.borderRadius,
828
+ options.borderRadius,
829
+ levelOptions.borderRadius,
830
+ series.options.borderRadius),
831
+ linkColor = pick(stateOptions.linkColor,
832
+ options.linkColor,
833
+ levelOptions.linkColor,
834
+ series.options.linkColor,
835
+ stateOptions.link && stateOptions.link.color,
836
+ options.link && options.link.color,
837
+ levelOptions.link && levelOptions.link.color,
838
+ series.options.link && series.options.link.color),
839
+ linkLineWidth = pick(stateOptions.linkLineWidth,
840
+ options.linkLineWidth,
841
+ levelOptions.linkLineWidth,
842
+ series.options.linkLineWidth,
843
+ stateOptions.link && stateOptions.link.lineWidth,
844
+ options.link && options.link.lineWidth,
845
+ levelOptions.link && levelOptions.link.lineWidth,
846
+ series.options.link && series.options.link.lineWidth),
847
+ linkOpacity = pick(stateOptions.linkOpacity,
848
+ options.linkOpacity,
849
+ levelOptions.linkOpacity,
850
+ series.options.linkOpacity,
851
+ stateOptions.link && stateOptions.link.linkOpacity,
852
+ options.link && options.link.linkOpacity,
853
+ levelOptions.link && levelOptions.link.linkOpacity,
854
+ series.options.link && series.options.link.linkOpacity);
382
855
  if (!point.isNode) {
383
- attribs.stroke = values.linkColor;
384
- attribs['stroke-width'] = values.linkLineWidth;
385
- attribs.opacity = values.linkOpacity;
856
+ attribs.stroke = linkColor;
857
+ attribs['stroke-width'] = linkLineWidth;
858
+ attribs.opacity = linkOpacity;
386
859
  delete attribs.fill;
387
860
  }
388
861
  else {
389
- if (values.borderRadius) {
390
- attribs.r = values.borderRadius;
862
+ if (borderRadius) {
863
+ attribs.r = borderRadius;
391
864
  }
392
865
  }
393
866
  return attribs;
@@ -395,62 +868,98 @@
395
868
  OrganizationSeries.prototype.translateLink = function (point) {
396
869
  var fromNode = point.fromNode,
397
870
  toNode = point.toNode,
398
- crisp = Math.round(this.options.linkLineWidth) % 2 / 2,
399
- x1 = Math.floor(fromNode.shapeArgs.x +
400
- fromNode.shapeArgs.width) + crisp,
401
- y1 = Math.floor(fromNode.shapeArgs.y +
402
- fromNode.shapeArgs.height / 2) + crisp,
403
- x2 = Math.floor(toNode.shapeArgs.x) + crisp,
404
- y2 = Math.floor(toNode.shapeArgs.y +
405
- toNode.shapeArgs.height / 2) + crisp,
406
- xMiddle,
407
- hangingIndent = this.options.hangingIndent,
408
- toOffset = toNode.options.offset,
409
- percentOffset = /%$/.test(toOffset) && parseInt(toOffset, 10),
410
- inverted = this.chart.inverted;
411
- if (inverted) {
412
- x1 -= fromNode.shapeArgs.width;
413
- x2 += toNode.shapeArgs.width;
414
- }
415
- xMiddle = Math.floor(x2 +
416
- (inverted ? 1 : -1) *
417
- (this.colDistance - this.nodeWidth) / 2) + crisp;
418
- // Put the link on the side of the node when an offset is given. HR
419
- // node in the main demo.
420
- if (percentOffset &&
421
- (percentOffset >= 50 || percentOffset <= -50)) {
422
- xMiddle = x2 = Math.floor(x2 + (inverted ? -0.5 : 0.5) *
423
- toNode.shapeArgs.width) + crisp;
424
- y2 = toNode.shapeArgs.y;
425
- if (percentOffset > 0) {
426
- y2 += toNode.shapeArgs.height;
871
+ linkWidth = pick(this.options.linkLineWidth,
872
+ this.options.link.lineWidth),
873
+ crisp = (Math.round(linkWidth) % 2) / 2,
874
+ factor = pick(this.options.link.offset, 0.5),
875
+ type = pick(point.options.link && point.options.link.type,
876
+ this.options.link.type);
877
+ if (fromNode.shapeArgs && toNode.shapeArgs) {
878
+ var x1 = Math.floor((fromNode.shapeArgs.x || 0) +
879
+ (fromNode.shapeArgs.width || 0)) + crisp,
880
+ y1 = Math.floor((fromNode.shapeArgs.y || 0) +
881
+ (fromNode.shapeArgs.height || 0) / 2) + crisp,
882
+ x2 = Math.floor(toNode.shapeArgs.x || 0) + crisp,
883
+ y2 = Math.floor((toNode.shapeArgs.y || 0) +
884
+ (toNode.shapeArgs.height || 0) / 2) + crisp,
885
+ xMiddle = void 0,
886
+ hangingIndent = this.options.hangingIndent,
887
+ toOffset = toNode.options.offset,
888
+ percentOffset = /%$/.test(toOffset) && parseInt(toOffset, 10),
889
+ inverted = this.chart.inverted;
890
+ if (inverted) {
891
+ x1 -= (fromNode.shapeArgs.width || 0);
892
+ x2 += (toNode.shapeArgs.width || 0);
427
893
  }
428
- }
429
- if (toNode.hangsFrom === fromNode) {
430
- if (this.chart.inverted) {
431
- y1 = Math.floor(fromNode.shapeArgs.y +
432
- fromNode.shapeArgs.height -
433
- hangingIndent / 2) + crisp;
434
- y2 = (toNode.shapeArgs.y +
435
- toNode.shapeArgs.height);
894
+ xMiddle = this.colDistance ?
895
+ Math.floor(x2 +
896
+ ((inverted ? 1 : -1) *
897
+ (this.colDistance - this.nodeWidth)) /
898
+ 2) + crisp :
899
+ Math.floor((x2 + x1) / 2) + crisp;
900
+ // Put the link on the side of the node when an offset is given. HR
901
+ // node in the main demo.
902
+ if (percentOffset &&
903
+ (percentOffset >= 50 || percentOffset <= -50)) {
904
+ xMiddle = x2 = Math.floor(x2 + (inverted ? -0.5 : 0.5) *
905
+ (toNode.shapeArgs.width || 0)) + crisp;
906
+ y2 = toNode.shapeArgs.y || 0;
907
+ if (percentOffset > 0) {
908
+ y2 += toNode.shapeArgs.height || 0;
909
+ }
910
+ }
911
+ if (toNode.hangsFrom === fromNode) {
912
+ if (this.chart.inverted) {
913
+ y1 = Math.floor((fromNode.shapeArgs.y || 0) +
914
+ (fromNode.shapeArgs.height || 0) -
915
+ hangingIndent / 2) + crisp;
916
+ y2 = ((toNode.shapeArgs.y || 0) +
917
+ (toNode.shapeArgs.height || 0));
918
+ }
919
+ else {
920
+ y1 = Math.floor((fromNode.shapeArgs.y || 0) +
921
+ hangingIndent / 2) + crisp;
922
+ }
923
+ xMiddle = x2 = Math.floor((toNode.shapeArgs.x || 0) +
924
+ (toNode.shapeArgs.width || 0) / 2) + crisp;
925
+ }
926
+ point.plotX = xMiddle;
927
+ point.plotY = (y1 + y2) / 2;
928
+ point.shapeType = 'path';
929
+ if (type === 'straight') {
930
+ point.shapeArgs = {
931
+ d: [
932
+ ['M', x1, y1],
933
+ ['L', x2, y2]
934
+ ]
935
+ };
936
+ }
937
+ else if (type === 'curved') {
938
+ var offset = Math.abs(x2 - x1) * factor * (inverted ? -1 : 1);
939
+ point.shapeArgs = {
940
+ d: [
941
+ ['M', x1, y1],
942
+ ['C', x1 + offset, y1, x2 - offset, y2, x2, y2]
943
+ ]
944
+ };
436
945
  }
437
946
  else {
438
- y1 = Math.floor(fromNode.shapeArgs.y +
439
- hangingIndent / 2) + crisp;
947
+ point.shapeArgs = {
948
+ d: PathUtilities.curvedPath([
949
+ ['M', x1, y1],
950
+ ['L', xMiddle, y1],
951
+ ['L', xMiddle, y2],
952
+ ['L', x2, y2]
953
+ ], pick(this.options.linkRadius, this.options.link.radius))
954
+ };
440
955
  }
441
- xMiddle = x2 = Math.floor(toNode.shapeArgs.x +
442
- toNode.shapeArgs.width / 2) + crisp;
956
+ point.dlBox = {
957
+ x: (x1 + x2) / 2,
958
+ y: (y1 + y2) / 2,
959
+ height: linkWidth,
960
+ width: 0
961
+ };
443
962
  }
444
- point.plotY = 1;
445
- point.shapeType = 'path';
446
- point.shapeArgs = {
447
- d: OrganizationSeries.curvedPath([
448
- ['M', x1, y1],
449
- ['L', xMiddle, y1],
450
- ['L', xMiddle, y2],
451
- ['L', x2, y2]
452
- ], this.options.linkRadius)
453
- };
454
963
  };
455
964
  OrganizationSeries.prototype.translateNode = function (node, column) {
456
965
  SankeySeries.prototype.translateNode.call(this, node, column);
@@ -491,238 +1000,7 @@
491
1000
  shapeArgs.width :
492
1001
  shapeArgs.height;
493
1002
  };
494
- /**
495
- * An organization chart is a diagram that shows the structure of an
496
- * organization and the relationships and relative ranks of its parts and
497
- * positions.
498
- *
499
- * @sample highcharts/demo/organization-chart/
500
- * Organization chart
501
- * @sample highcharts/series-organization/horizontal/
502
- * Horizontal organization chart
503
- * @sample highcharts/series-organization/borderless
504
- * Borderless design
505
- * @sample highcharts/series-organization/center-layout
506
- * Centered layout
507
- *
508
- * @extends plotOptions.sankey
509
- * @excluding allowPointSelect, curveFactor, dataSorting
510
- * @since 7.1.0
511
- * @product highcharts
512
- * @requires modules/organization
513
- * @optionparent plotOptions.organization
514
- *
515
- * @private
516
- */
517
- OrganizationSeries.defaultOptions = merge(SankeySeries.defaultOptions, {
518
- /**
519
- * The border color of the node cards.
520
- *
521
- * @type {Highcharts.ColorString}
522
- *
523
- * @private
524
- */
525
- borderColor: "#666666" /* Palette.neutralColor60 */,
526
- /**
527
- * The border radius of the node cards.
528
- *
529
- * @private
530
- */
531
- borderRadius: 3,
532
- /**
533
- * Radius for the rounded corners of the links between nodes.
534
- *
535
- * @sample highcharts/series-organization/link-options
536
- * Square links
537
- *
538
- * @private
539
- */
540
- linkRadius: 10,
541
- borderWidth: 1,
542
- /**
543
- * @declare Highcharts.SeriesOrganizationDataLabelsOptionsObject
544
- *
545
- * @private
546
- */
547
- dataLabels: {
548
- /* eslint-disable valid-jsdoc */
549
- /**
550
- * A callback for defining the format for _nodes_ in the
551
- * organization chart. The `nodeFormat` option takes precedence
552
- * over `nodeFormatter`.
553
- *
554
- * In an organization chart, the `nodeFormatter` is a quite complex
555
- * function of the available options, striving for a good default
556
- * layout of cards with or without images. In organization chart,
557
- * the data labels come with `useHTML` set to true, meaning they
558
- * will be rendered as true HTML above the SVG.
559
- *
560
- * @sample highcharts/series-organization/datalabels-nodeformatter
561
- * Modify the default label format output
562
- *
563
- * @type {Highcharts.SeriesSankeyDataLabelsFormatterCallbackFunction}
564
- * @since 6.0.2
565
- */
566
- nodeFormatter: function () {
567
- var outerStyle = {
568
- width: '100%',
569
- height: '100%',
570
- display: 'flex',
571
- 'flex-direction': 'row',
572
- 'align-items': 'center',
573
- 'justify-content': 'center'
574
- },
575
- imageStyle = {
576
- 'max-height': '100%',
577
- 'border-radius': '50%'
578
- },
579
- innerStyle = {
580
- width: '100%',
581
- padding: 0,
582
- 'text-align': 'center',
583
- 'white-space': 'normal'
584
- },
585
- nameStyle = {
586
- margin: 0
587
- },
588
- titleStyle = {
589
- margin: 0
590
- },
591
- descriptionStyle = {
592
- opacity: 0.75,
593
- margin: '5px'
594
- };
595
- // eslint-disable-next-line valid-jsdoc
596
- /**
597
- * @private
598
- */
599
- function styleAttr(style) {
600
- return Object.keys(style).reduce(function (str, key) {
601
- return str + key + ':' + style[key] + ';';
602
- }, 'style="') + '"';
603
- }
604
- if (this.point.image) {
605
- imageStyle['max-width'] = '30%';
606
- innerStyle.width = '70%';
607
- }
608
- // PhantomJS doesn't support flex, roll back to absolute
609
- // positioning
610
- if (this.series.chart.renderer.forExport) {
611
- outerStyle.display = 'block';
612
- innerStyle.position = 'absolute';
613
- innerStyle.left = this.point.image ? '30%' : 0;
614
- innerStyle.top = 0;
615
- }
616
- var html = '<div ' + styleAttr(outerStyle) + '>';
617
- if (this.point.image) {
618
- html += '<img src="' + this.point.image + '" ' +
619
- styleAttr(imageStyle) + '>';
620
- }
621
- html += '<div ' + styleAttr(innerStyle) + '>';
622
- if (this.point.name) {
623
- html += '<h4 ' + styleAttr(nameStyle) + '>' +
624
- this.point.name + '</h4>';
625
- }
626
- if (this.point.title) {
627
- html += '<p ' + styleAttr(titleStyle) + '>' +
628
- (this.point.title || '') + '</p>';
629
- }
630
- if (this.point.description) {
631
- html += '<p ' + styleAttr(descriptionStyle) + '>' +
632
- this.point.description + '</p>';
633
- }
634
- html += '</div>' +
635
- '</div>';
636
- return html;
637
- },
638
- /* eslint-enable valid-jsdoc */
639
- style: {
640
- /** @internal */
641
- fontWeight: 'normal',
642
- /** @internal */
643
- fontSize: '13px'
644
- },
645
- useHTML: true
646
- },
647
- /**
648
- * The indentation in pixels of hanging nodes, nodes which parent has
649
- * [layout](#series.organization.nodes.layout) set to `hanging`.
650
- *
651
- * @private
652
- */
653
- hangingIndent: 20,
654
- /**
655
- * Defines the indentation of a `hanging` layout parent's children.
656
- * Possible options:
657
- *
658
- * - `inherit` (default): Only the first child adds the indentation,
659
- * children of a child with indentation inherit the indentation.
660
- * - `cumulative`: All children of a child with indentation add its
661
- * own indent. The option may cause overlapping of nodes.
662
- * Then use `shrink` option:
663
- * - `shrink`: Nodes shrink by the
664
- * [hangingIndent](#plotOptions.organization.hangingIndent)
665
- * value until they reach the
666
- * [minNodeLength](#plotOptions.organization.minNodeLength).
667
- *
668
- * @sample highcharts/series-organization/hanging-cumulative
669
- * Every indent increases the indentation
670
- *
671
- * @sample highcharts/series-organization/hanging-shrink
672
- * Every indent decreases the nodes' width
673
- *
674
- * @type {Highcharts.OrganizationHangingIndentTranslationValue}
675
- * @since 10.0.0
676
- * @default inherit
677
- *
678
- * @private
679
- */
680
- hangingIndentTranslation: 'inherit',
681
- /**
682
- * The color of the links between nodes.
683
- *
684
- * @type {Highcharts.ColorString}
685
- *
686
- * @private
687
- */
688
- linkColor: "#666666" /* Palette.neutralColor60 */,
689
- /**
690
- * The line width of the links connecting nodes, in pixels.
691
- *
692
- * @sample highcharts/series-organization/link-options
693
- * Square links
694
- *
695
- * @private
696
- */
697
- linkLineWidth: 1,
698
- /**
699
- * In a horizontal chart, the minimum width of the **hanging** nodes
700
- * only, in pixels. In a vertical chart, the minimum height of the
701
- * **haning** nodes only, in pixels too.
702
- *
703
- * Note: Used only when
704
- * [hangingIndentTranslation](#plotOptions.organization.hangingIndentTranslation)
705
- * is set to `shrink`.
706
- *
707
- * @see [nodeWidth](#plotOptions.organization.nodeWidth)
708
- *
709
- * @private
710
- */
711
- minNodeLength: 10,
712
- /**
713
- * In a horizontal chart, the width of the nodes in pixels. Note that
714
- * most organization charts are vertical, so the name of this option
715
- * is counterintuitive.
716
- *
717
- * @see [minNodeLength](#plotOptions.organization.minNodeLength)
718
- *
719
- * @private
720
- */
721
- nodeWidth: 50,
722
- tooltip: {
723
- nodeFormat: '{point.name}<br>{point.title}<br>{point.description}'
724
- }
725
- });
1003
+ OrganizationSeries.defaultOptions = merge(SankeySeries.defaultOptions, OrganizationSeriesDefaults);
726
1004
  return OrganizationSeries;
727
1005
  }(SankeySeries));
728
1006
  extend(OrganizationSeries.prototype, {
@@ -754,120 +1032,6 @@
754
1032
  * @typedef {"inherit"|"cumulative"|"shrink"} Highcharts.OrganizationHangingIndentTranslationValue
755
1033
  */
756
1034
  ''; // detach doclets above
757
- /* *
758
- *
759
- * API Options
760
- *
761
- * */
762
- /**
763
- * An `organization` series. If the [type](#series.organization.type) option is
764
- * not specified, it is inherited from [chart.type](#chart.type).
765
- *
766
- * @extends series,plotOptions.organization
767
- * @exclude dataSorting, boostThreshold, boostBlending
768
- * @product highcharts
769
- * @requires modules/sankey
770
- * @requires modules/organization
771
- * @apioption series.organization
772
- */
773
- /**
774
- * @type {Highcharts.SeriesOrganizationDataLabelsOptionsObject|Array<Highcharts.SeriesOrganizationDataLabelsOptionsObject>}
775
- * @product highcharts
776
- * @apioption series.organization.data.dataLabels
777
- */
778
- /**
779
- * A collection of options for the individual nodes. The nodes in an org chart
780
- * are auto-generated instances of `Highcharts.Point`, but options can be
781
- * applied here and linked by the `id`.
782
- *
783
- * @extends series.sankey.nodes
784
- * @type {Array<*>}
785
- * @product highcharts
786
- * @apioption series.organization.nodes
787
- */
788
- /**
789
- * Individual data label for each node. The options are the same as
790
- * the ones for [series.organization.dataLabels](#series.organization.dataLabels).
791
- *
792
- * @type {Highcharts.SeriesOrganizationDataLabelsOptionsObject|Array<Highcharts.SeriesOrganizationDataLabelsOptionsObject>}
793
- *
794
- * @apioption series.organization.nodes.dataLabels
795
- */
796
- /**
797
- * The job description for the node card, will be inserted by the default
798
- * `dataLabel.nodeFormatter`.
799
- *
800
- * @sample highcharts/demo/organization-chart
801
- * Org chart with job descriptions
802
- *
803
- * @type {string}
804
- * @product highcharts
805
- * @apioption series.organization.nodes.description
806
- */
807
- /**
808
- * An image for the node card, will be inserted by the default
809
- * `dataLabel.nodeFormatter`.
810
- *
811
- * @sample highcharts/demo/organization-chart
812
- * Org chart with images
813
- *
814
- * @type {string}
815
- * @product highcharts
816
- * @apioption series.organization.nodes.image
817
- */
818
- /**
819
- * Layout for the node's children. If `hanging`, this node's children will hang
820
- * below their parent, allowing a tighter packing of nodes in the diagram.
821
- *
822
- * Note: Since @next version, the `hanging` layout is set by default for
823
- * children of a parent using `hanging` layout.
824
- *
825
- * @sample highcharts/demo/organization-chart
826
- * Hanging layout
827
- *
828
- * @type {Highcharts.SeriesOrganizationNodesLayoutValue}
829
- * @default normal
830
- * @product highcharts
831
- * @apioption series.organization.nodes.layout
832
- */
833
- /**
834
- * The job title for the node card, will be inserted by the default
835
- * `dataLabel.nodeFormatter`.
836
- *
837
- * @sample highcharts/demo/organization-chart
838
- * Org chart with job titles
839
- *
840
- * @type {string}
841
- * @product highcharts
842
- * @apioption series.organization.nodes.title
843
- */
844
- /**
845
- * An array of data points for the series. For the `organization` series
846
- * type, points can be given in the following way:
847
- *
848
- * An array of objects with named values. The following snippet shows only a
849
- * few settings, see the complete options set below. If the total number of data
850
- * points exceeds the series' [turboThreshold](#series.area.turboThreshold),
851
- * this option is not available.
852
- *
853
- * ```js
854
- * data: [{
855
- * from: 'Category1',
856
- * to: 'Category2',
857
- * weight: 2
858
- * }, {
859
- * from: 'Category1',
860
- * to: 'Category3',
861
- * weight: 5
862
- * }]
863
- * ```
864
- *
865
- * @type {Array<*>}
866
- * @extends series.sankey.data
867
- * @product highcharts
868
- * @apioption series.organization.data
869
- */
870
- ''; // adds doclets above to transpiled file
871
1035
 
872
1036
  return OrganizationSeries;
873
1037
  });