@ntlab/ntjs-assets 2.0.21 → 2.0.22

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 (402) hide show
  1. package/assets/js/cdn.json +1 -1
  2. package/assets/js/highcharts/css/highcharts.css +74 -0
  3. package/assets/js/highcharts/es-modules/Accessibility/Components/LegendComponent.js +1 -1
  4. package/assets/js/highcharts/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +1 -1
  5. package/assets/js/highcharts/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +9 -2
  6. package/assets/js/highcharts/es-modules/Core/Axis/Axis.js +25 -15
  7. package/assets/js/highcharts/es-modules/Core/Axis/AxisDefaults.js +3 -2
  8. package/assets/js/highcharts/es-modules/Core/Axis/Color/ColorAxis.js +1 -1
  9. package/assets/js/highcharts/es-modules/Core/Axis/Color/ColorAxisDefaults.js +2 -2
  10. package/assets/js/highcharts/es-modules/Core/Axis/GridAxis.js +1 -1
  11. package/assets/js/highcharts/es-modules/Core/Axis/OrdinalAxis.js +1 -1
  12. package/assets/js/highcharts/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +10 -0
  13. package/assets/js/highcharts/es-modules/Core/Axis/RadialAxis.js +19 -113
  14. package/assets/js/highcharts/es-modules/Core/Axis/RadialAxisDefaults.js +128 -0
  15. package/assets/js/highcharts/es-modules/Core/Axis/Tick.js +9 -13
  16. package/assets/js/highcharts/es-modules/Core/Chart/Chart.js +21 -17
  17. package/assets/js/highcharts/es-modules/Core/Chart/ChartDefaults.js +4 -2
  18. package/assets/js/highcharts/es-modules/Core/Chart/StockChart.js +5 -9
  19. package/assets/js/highcharts/es-modules/Core/Defaults.js +180 -91
  20. package/assets/js/highcharts/es-modules/Core/Renderer/SVG/SVGElement.js +50 -28
  21. package/assets/js/highcharts/es-modules/Core/Renderer/SVG/SVGLabel.js +6 -3
  22. package/assets/js/highcharts/es-modules/Core/Renderer/SVG/SVGRenderer.js +38 -80
  23. package/assets/js/highcharts/es-modules/Core/Renderer/SVG/Symbols.js +9 -5
  24. package/assets/js/highcharts/es-modules/Core/Series/DataLabel.js +17 -10
  25. package/assets/js/highcharts/es-modules/Core/Series/Point.js +4 -3
  26. package/assets/js/highcharts/es-modules/Core/Series/Series.js +24 -15
  27. package/assets/js/highcharts/es-modules/Core/Series/SeriesDefaults.js +15 -0
  28. package/assets/js/highcharts/es-modules/Core/Templating.js +4 -1
  29. package/assets/js/highcharts/es-modules/Core/Tooltip.js +17 -55
  30. package/assets/js/highcharts/es-modules/Core/Utilities.js +16 -0
  31. package/assets/js/highcharts/es-modules/Data/Converters/CSVConverter.js +1 -1
  32. package/assets/js/highcharts/es-modules/Data/DataCursor.js +34 -16
  33. package/assets/js/highcharts/es-modules/Data/DataPool.js +1 -1
  34. package/assets/js/highcharts/es-modules/Extensions/Annotations/Controllables/Controllable.js +3 -0
  35. package/assets/js/highcharts/es-modules/Extensions/Annotations/Controllables/ControllableLabel.js +0 -3
  36. package/assets/js/highcharts/es-modules/Extensions/Annotations/Controllables/ControllablePath.js +0 -3
  37. package/assets/js/highcharts/es-modules/Extensions/Annotations/EventEmitter.js +6 -6
  38. package/assets/js/highcharts/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +2 -0
  39. package/assets/js/highcharts/es-modules/Extensions/Annotations/Types/CrookedLine.js +1 -0
  40. package/assets/js/highcharts/es-modules/Extensions/Annotations/Types/Fibonacci.js +4 -2
  41. package/assets/js/highcharts/es-modules/Extensions/Annotations/Types/FibonacciTimeZones.js +2 -1
  42. package/assets/js/highcharts/es-modules/Extensions/Annotations/Types/InfinityLine.js +2 -1
  43. package/assets/js/highcharts/es-modules/Extensions/Annotations/Types/Measure.js +4 -3
  44. package/assets/js/highcharts/es-modules/Extensions/Annotations/Types/Pitchfork.js +11 -5
  45. package/assets/js/highcharts/es-modules/Extensions/Annotations/Types/TimeCycles.js +2 -1
  46. package/assets/js/highcharts/es-modules/Extensions/Annotations/Types/Tunnel.js +4 -2
  47. package/assets/js/highcharts/es-modules/Extensions/Annotations/Types/VerticalLine.js +2 -1
  48. package/assets/js/highcharts/es-modules/Extensions/Boost/BoostChart.js +11 -3
  49. package/assets/js/highcharts/es-modules/Extensions/Boost/BoostSeries.js +7 -4
  50. package/assets/js/highcharts/es-modules/Extensions/Boost/WGLRenderer.js +11 -2
  51. package/assets/js/highcharts/es-modules/Extensions/Data.js +3 -3
  52. package/assets/js/highcharts/es-modules/Extensions/DataGrouping/DataGroupingSeriesComposition.js +1 -0
  53. package/assets/js/highcharts/es-modules/Extensions/DownloadURL.js +3 -0
  54. package/assets/js/highcharts/es-modules/Extensions/DragPanes/AxisResizer.js +1 -2
  55. package/assets/js/highcharts/es-modules/Extensions/DraggablePoints/DragDropProps.js +17 -0
  56. package/assets/js/highcharts/es-modules/Extensions/DraggablePoints/DraggablePoints.js +1 -0
  57. package/assets/js/highcharts/es-modules/Extensions/Drilldown/Drilldown.js +14 -14
  58. package/assets/js/highcharts/es-modules/Extensions/Exporting/Exporting.js +13 -18
  59. package/assets/js/highcharts/es-modules/Extensions/Exporting/ExportingDefaults.js +8 -6
  60. package/assets/js/highcharts/es-modules/Extensions/OfflineExporting/OfflineExporting.js +38 -30
  61. package/assets/js/highcharts/es-modules/Extensions/Pane/PaneDefaults.js +11 -0
  62. package/assets/js/highcharts/es-modules/Extensions/RegexLimits.js +1 -0
  63. package/assets/js/highcharts/es-modules/Extensions/ScrollablePlotArea.js +19 -17
  64. package/assets/js/highcharts/es-modules/Extensions/Themes/BrandDark.js +13 -1
  65. package/assets/js/highcharts/es-modules/Maps/MapNavigation.js +5 -3
  66. package/assets/js/highcharts/es-modules/Maps/MapView.js +5 -5
  67. package/assets/js/highcharts/es-modules/Maps/Projection.js +39 -20
  68. package/assets/js/highcharts/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +10 -231
  69. package/assets/js/highcharts/es-modules/Series/ArcDiagram/ArcDiagramSeriesDefaults.js +245 -0
  70. package/assets/js/highcharts/es-modules/Series/Area/AreaSeries.js +2 -222
  71. package/assets/js/highcharts/es-modules/Series/Area/AreaSeriesDefaults.js +239 -0
  72. package/assets/js/highcharts/es-modules/Series/AreaRange/AreaRangeSeries.js +0 -133
  73. package/assets/js/highcharts/es-modules/Series/AreaRange/AreaRangeSeriesDefaults.js +273 -0
  74. package/assets/js/highcharts/es-modules/Series/BoxPlot/BoxPlotSeries.js +36 -38
  75. package/assets/js/highcharts/es-modules/Series/Bubble/BubbleSeries.js +17 -6
  76. package/assets/js/highcharts/es-modules/Series/Candlestick/CandlestickSeries.js +9 -11
  77. package/assets/js/highcharts/es-modules/Series/ColorMapComposition.js +28 -4
  78. package/assets/js/highcharts/es-modules/Series/Column/ColumnDataLabel.js +1 -1
  79. package/assets/js/highcharts/es-modules/Series/Column/ColumnSeries.js +25 -30
  80. package/assets/js/highcharts/es-modules/Series/DataModifyComposition.js +26 -2
  81. package/assets/js/highcharts/es-modules/Series/DotPlot/DotPlotSeries.js +37 -27
  82. package/assets/js/highcharts/es-modules/Series/DotPlot/DotPlotSeriesDefaults.js +3 -2
  83. package/assets/js/highcharts/es-modules/Series/Dumbbell/DumbbellSeries.js +1 -39
  84. package/assets/js/highcharts/es-modules/Series/Dumbbell/DumbbellSeriesDefaults.js +29 -0
  85. package/assets/js/highcharts/es-modules/Series/Flags/FlagsSeries.js +2 -1
  86. package/assets/js/highcharts/es-modules/Series/GeoHeatmap/GeoHeatmapSeries.js +3 -10
  87. package/assets/js/highcharts/es-modules/Series/HLC/HLCSeries.js +4 -5
  88. package/assets/js/highcharts/es-modules/Series/MapLine/MapLineSeriesDefaults.js +7 -6
  89. package/assets/js/highcharts/es-modules/Series/MapPoint/MapPointSeriesDefaults.js +17 -11
  90. package/assets/js/highcharts/es-modules/Series/Networkgraph/NetworkgraphSeriesDefaults.js +1 -1
  91. package/assets/js/highcharts/es-modules/Series/Networkgraph/ReingoldFruchtermanLayout.js +1 -1
  92. package/assets/js/highcharts/es-modules/Series/OHLC/OHLCSeries.js +3 -5
  93. package/assets/js/highcharts/es-modules/Series/Organization/OrganizationSeries.js +17 -19
  94. package/assets/js/highcharts/es-modules/Series/Organization/OrganizationSeriesDefaults.js +1 -1
  95. package/assets/js/highcharts/es-modules/Series/PackedBubble/PackedBubbleLayout.js +3 -3
  96. package/assets/js/highcharts/es-modules/Series/PackedBubble/PackedBubbleSeries.js +3 -3
  97. package/assets/js/highcharts/es-modules/Series/PackedBubble/PackedBubbleSeriesDefaults.js +0 -1
  98. package/assets/js/highcharts/es-modules/Series/Pyramid/PyramidSeriesDefaults.js +3 -3
  99. package/assets/js/highcharts/es-modules/Series/Sankey/SankeySeries.js +5 -6
  100. package/assets/js/highcharts/es-modules/Series/Sankey/SankeySeriesDefaults.js +1 -1
  101. package/assets/js/highcharts/es-modules/Series/SeriesOnPointComposition.js +2 -2
  102. package/assets/js/highcharts/es-modules/Series/Sunburst/SunburstSeriesDefaults.js +1 -1
  103. package/assets/js/highcharts/es-modules/Series/Treegraph/TreegraphLink.js +12 -7
  104. package/assets/js/highcharts/es-modules/Series/Treegraph/TreegraphSeries.js +8 -9
  105. package/assets/js/highcharts/es-modules/Series/Treemap/TreemapSeries.js +8 -8
  106. package/assets/js/highcharts/es-modules/Series/Treemap/TreemapSeriesDefaults.js +1 -1
  107. package/assets/js/highcharts/es-modules/Series/Variwide/VariwideSeries.js +4 -4
  108. package/assets/js/highcharts/es-modules/Series/Venn/VennSeriesDefaults.js +2 -2
  109. package/assets/js/highcharts/es-modules/Series/Waterfall/WaterfallSeries.js +11 -12
  110. package/assets/js/highcharts/es-modules/Series/XRange/XRangeSeries.js +4 -4
  111. package/assets/js/highcharts/es-modules/Stock/Navigator/Navigator.js +2 -5
  112. package/assets/js/highcharts/es-modules/Stock/Navigator/NavigatorDefaults.js +11 -0
  113. package/assets/js/highcharts/es-modules/Stock/Navigator/NavigatorSymbols.js +9 -10
  114. package/assets/js/highcharts/es-modules/Stock/RangeSelector/RangeSelector.js +162 -187
  115. package/assets/js/highcharts/es-modules/Stock/RangeSelector/RangeSelectorComposition.js +32 -74
  116. package/assets/js/highcharts/es-modules/Stock/Scrollbar/Scrollbar.js +6 -7
  117. package/assets/js/highcharts/es-modules/masters/highcharts-more.src.js +2 -0
  118. package/assets/js/highcharts/highcharts-3d.js +1 -1
  119. package/assets/js/highcharts/highcharts-3d.src.js +1 -1
  120. package/assets/js/highcharts/highcharts-gantt.js +3 -3
  121. package/assets/js/highcharts/highcharts-gantt.src.js +2008 -906
  122. package/assets/js/highcharts/highcharts-more.js +2 -2
  123. package/assets/js/highcharts/highcharts-more.src.js +234 -313
  124. package/assets/js/highcharts/highcharts.js +3 -3
  125. package/assets/js/highcharts/highcharts.src.js +743 -616
  126. package/assets/js/highcharts/highmaps.js +3 -3
  127. package/assets/js/highcharts/highmaps.src.js +862 -673
  128. package/assets/js/highcharts/highstock.js +3 -3
  129. package/assets/js/highcharts/highstock.src.js +1016 -935
  130. package/assets/js/highcharts/indicators/acceleration-bands.js +1 -1
  131. package/assets/js/highcharts/indicators/acceleration-bands.src.js +1 -1
  132. package/assets/js/highcharts/indicators/accumulation-distribution.js +1 -1
  133. package/assets/js/highcharts/indicators/accumulation-distribution.src.js +1 -1
  134. package/assets/js/highcharts/indicators/ao.js +1 -1
  135. package/assets/js/highcharts/indicators/ao.src.js +1 -1
  136. package/assets/js/highcharts/indicators/apo.js +1 -1
  137. package/assets/js/highcharts/indicators/apo.src.js +1 -1
  138. package/assets/js/highcharts/indicators/aroon-oscillator.js +1 -1
  139. package/assets/js/highcharts/indicators/aroon-oscillator.src.js +1 -1
  140. package/assets/js/highcharts/indicators/aroon.js +1 -1
  141. package/assets/js/highcharts/indicators/aroon.src.js +1 -1
  142. package/assets/js/highcharts/indicators/atr.js +1 -1
  143. package/assets/js/highcharts/indicators/atr.src.js +1 -1
  144. package/assets/js/highcharts/indicators/bollinger-bands.js +1 -1
  145. package/assets/js/highcharts/indicators/bollinger-bands.src.js +1 -1
  146. package/assets/js/highcharts/indicators/cci.js +1 -1
  147. package/assets/js/highcharts/indicators/cci.src.js +1 -1
  148. package/assets/js/highcharts/indicators/chaikin.js +1 -1
  149. package/assets/js/highcharts/indicators/chaikin.src.js +1 -1
  150. package/assets/js/highcharts/indicators/cmf.js +1 -1
  151. package/assets/js/highcharts/indicators/cmf.src.js +1 -1
  152. package/assets/js/highcharts/indicators/cmo.js +1 -1
  153. package/assets/js/highcharts/indicators/cmo.src.js +1 -1
  154. package/assets/js/highcharts/indicators/dema.js +1 -1
  155. package/assets/js/highcharts/indicators/dema.src.js +1 -1
  156. package/assets/js/highcharts/indicators/disparity-index.js +1 -1
  157. package/assets/js/highcharts/indicators/disparity-index.src.js +1 -1
  158. package/assets/js/highcharts/indicators/dmi.js +1 -1
  159. package/assets/js/highcharts/indicators/dmi.src.js +1 -1
  160. package/assets/js/highcharts/indicators/dpo.js +1 -1
  161. package/assets/js/highcharts/indicators/dpo.src.js +1 -1
  162. package/assets/js/highcharts/indicators/ichimoku-kinko-hyo.js +1 -1
  163. package/assets/js/highcharts/indicators/ichimoku-kinko-hyo.src.js +1 -1
  164. package/assets/js/highcharts/indicators/indicators-all.js +1 -1
  165. package/assets/js/highcharts/indicators/indicators-all.src.js +1 -1
  166. package/assets/js/highcharts/indicators/indicators.js +1 -1
  167. package/assets/js/highcharts/indicators/indicators.src.js +1 -1
  168. package/assets/js/highcharts/indicators/keltner-channels.js +1 -1
  169. package/assets/js/highcharts/indicators/keltner-channels.src.js +1 -1
  170. package/assets/js/highcharts/indicators/klinger.js +1 -1
  171. package/assets/js/highcharts/indicators/klinger.src.js +1 -1
  172. package/assets/js/highcharts/indicators/macd.js +1 -1
  173. package/assets/js/highcharts/indicators/macd.src.js +1 -1
  174. package/assets/js/highcharts/indicators/mfi.js +1 -1
  175. package/assets/js/highcharts/indicators/mfi.src.js +1 -1
  176. package/assets/js/highcharts/indicators/momentum.js +1 -1
  177. package/assets/js/highcharts/indicators/momentum.src.js +1 -1
  178. package/assets/js/highcharts/indicators/natr.js +1 -1
  179. package/assets/js/highcharts/indicators/natr.src.js +1 -1
  180. package/assets/js/highcharts/indicators/obv.js +1 -1
  181. package/assets/js/highcharts/indicators/obv.src.js +1 -1
  182. package/assets/js/highcharts/indicators/pivot-points.js +1 -1
  183. package/assets/js/highcharts/indicators/pivot-points.src.js +1 -1
  184. package/assets/js/highcharts/indicators/ppo.js +1 -1
  185. package/assets/js/highcharts/indicators/ppo.src.js +1 -1
  186. package/assets/js/highcharts/indicators/price-channel.js +1 -1
  187. package/assets/js/highcharts/indicators/price-channel.src.js +1 -1
  188. package/assets/js/highcharts/indicators/price-envelopes.js +1 -1
  189. package/assets/js/highcharts/indicators/price-envelopes.src.js +1 -1
  190. package/assets/js/highcharts/indicators/psar.js +1 -1
  191. package/assets/js/highcharts/indicators/psar.src.js +1 -1
  192. package/assets/js/highcharts/indicators/regressions.js +1 -1
  193. package/assets/js/highcharts/indicators/regressions.src.js +1 -1
  194. package/assets/js/highcharts/indicators/roc.js +1 -1
  195. package/assets/js/highcharts/indicators/roc.src.js +1 -1
  196. package/assets/js/highcharts/indicators/rsi.js +1 -1
  197. package/assets/js/highcharts/indicators/rsi.src.js +1 -1
  198. package/assets/js/highcharts/indicators/slow-stochastic.js +1 -1
  199. package/assets/js/highcharts/indicators/slow-stochastic.src.js +1 -1
  200. package/assets/js/highcharts/indicators/stochastic.js +1 -1
  201. package/assets/js/highcharts/indicators/stochastic.src.js +1 -1
  202. package/assets/js/highcharts/indicators/supertrend.js +1 -1
  203. package/assets/js/highcharts/indicators/supertrend.src.js +1 -1
  204. package/assets/js/highcharts/indicators/tema.js +1 -1
  205. package/assets/js/highcharts/indicators/tema.src.js +1 -1
  206. package/assets/js/highcharts/indicators/trendline.js +1 -1
  207. package/assets/js/highcharts/indicators/trendline.src.js +1 -1
  208. package/assets/js/highcharts/indicators/trix.js +1 -1
  209. package/assets/js/highcharts/indicators/trix.src.js +1 -1
  210. package/assets/js/highcharts/indicators/volume-by-price.js +1 -1
  211. package/assets/js/highcharts/indicators/volume-by-price.src.js +1 -1
  212. package/assets/js/highcharts/indicators/vwap.js +1 -1
  213. package/assets/js/highcharts/indicators/vwap.src.js +1 -1
  214. package/assets/js/highcharts/indicators/williams-r.js +1 -1
  215. package/assets/js/highcharts/indicators/williams-r.src.js +1 -1
  216. package/assets/js/highcharts/indicators/wma.js +1 -1
  217. package/assets/js/highcharts/indicators/wma.src.js +1 -1
  218. package/assets/js/highcharts/indicators/zigzag.js +1 -1
  219. package/assets/js/highcharts/indicators/zigzag.src.js +1 -1
  220. package/assets/js/highcharts/modules/accessibility.js +2 -2
  221. package/assets/js/highcharts/modules/accessibility.src.js +39 -28
  222. package/assets/js/highcharts/modules/annotations-advanced.js +2 -2
  223. package/assets/js/highcharts/modules/annotations-advanced.src.js +46 -31
  224. package/assets/js/highcharts/modules/annotations.js +2 -2
  225. package/assets/js/highcharts/modules/annotations.src.js +12 -15
  226. package/assets/js/highcharts/modules/arc-diagram.js +2 -2
  227. package/assets/js/highcharts/modules/arc-diagram.src.js +258 -233
  228. package/assets/js/highcharts/modules/arrow-symbols.js +1 -1
  229. package/assets/js/highcharts/modules/arrow-symbols.src.js +1 -1
  230. package/assets/js/highcharts/modules/boost-canvas.js +2 -2
  231. package/assets/js/highcharts/modules/boost-canvas.src.js +30 -10
  232. package/assets/js/highcharts/modules/boost.js +2 -2
  233. package/assets/js/highcharts/modules/boost.src.js +30 -10
  234. package/assets/js/highcharts/modules/broken-axis.js +1 -1
  235. package/assets/js/highcharts/modules/broken-axis.src.js +1 -1
  236. package/assets/js/highcharts/modules/bullet.js +1 -1
  237. package/assets/js/highcharts/modules/bullet.src.js +1 -1
  238. package/assets/js/highcharts/modules/coloraxis.js +2 -2
  239. package/assets/js/highcharts/modules/coloraxis.src.js +4 -4
  240. package/assets/js/highcharts/modules/current-date-indicator.js +1 -1
  241. package/assets/js/highcharts/modules/current-date-indicator.src.js +1 -1
  242. package/assets/js/highcharts/modules/cylinder.js +1 -1
  243. package/assets/js/highcharts/modules/cylinder.src.js +1 -1
  244. package/assets/js/highcharts/modules/data-tools.js +2 -2
  245. package/assets/js/highcharts/modules/data-tools.src.js +37 -19
  246. package/assets/js/highcharts/modules/data.js +1 -1
  247. package/assets/js/highcharts/modules/data.src.js +4 -4
  248. package/assets/js/highcharts/modules/datagrouping.js +2 -2
  249. package/assets/js/highcharts/modules/datagrouping.src.js +2 -1
  250. package/assets/js/highcharts/modules/debugger.js +1 -1
  251. package/assets/js/highcharts/modules/debugger.src.js +1 -1
  252. package/assets/js/highcharts/modules/dependency-wheel.js +1 -1
  253. package/assets/js/highcharts/modules/dependency-wheel.src.js +1 -1
  254. package/assets/js/highcharts/modules/dotplot.js +2 -2
  255. package/assets/js/highcharts/modules/dotplot.src.js +41 -30
  256. package/assets/js/highcharts/modules/drag-panes.js +2 -2
  257. package/assets/js/highcharts/modules/drag-panes.src.js +2 -3
  258. package/assets/js/highcharts/modules/draggable-points.js +2 -2
  259. package/assets/js/highcharts/modules/draggable-points.src.js +19 -1
  260. package/assets/js/highcharts/modules/drilldown.js +2 -2
  261. package/assets/js/highcharts/modules/drilldown.src.js +15 -15
  262. package/assets/js/highcharts/modules/dumbbell.js +2 -2
  263. package/assets/js/highcharts/modules/dumbbell.src.js +31 -40
  264. package/assets/js/highcharts/modules/export-data.js +2 -2
  265. package/assets/js/highcharts/modules/export-data.src.js +4 -1
  266. package/assets/js/highcharts/modules/exporting.js +2 -2
  267. package/assets/js/highcharts/modules/exporting.src.js +22 -25
  268. package/assets/js/highcharts/modules/flowmap.js +1 -1
  269. package/assets/js/highcharts/modules/flowmap.src.js +1 -1
  270. package/assets/js/highcharts/modules/full-screen.js +1 -1
  271. package/assets/js/highcharts/modules/full-screen.src.js +1 -1
  272. package/assets/js/highcharts/modules/funnel.js +2 -2
  273. package/assets/js/highcharts/modules/funnel.src.js +4 -4
  274. package/assets/js/highcharts/modules/funnel3d.js +1 -1
  275. package/assets/js/highcharts/modules/funnel3d.src.js +1 -1
  276. package/assets/js/highcharts/modules/gantt.js +2 -2
  277. package/assets/js/highcharts/modules/gantt.src.js +1266 -291
  278. package/assets/js/highcharts/modules/geoheatmap.js +1 -1
  279. package/assets/js/highcharts/modules/geoheatmap.src.js +4 -11
  280. package/assets/js/highcharts/modules/grid-axis.js +2 -2
  281. package/assets/js/highcharts/modules/grid-axis.src.js +2 -2
  282. package/assets/js/highcharts/modules/heatmap.js +2 -2
  283. package/assets/js/highcharts/modules/heatmap.src.js +32 -9
  284. package/assets/js/highcharts/modules/heikinashi.js +1 -1
  285. package/assets/js/highcharts/modules/heikinashi.src.js +1 -1
  286. package/assets/js/highcharts/modules/histogram-bellcurve.js +1 -1
  287. package/assets/js/highcharts/modules/histogram-bellcurve.src.js +1 -1
  288. package/assets/js/highcharts/modules/hollowcandlestick.js +1 -1
  289. package/assets/js/highcharts/modules/hollowcandlestick.src.js +1 -1
  290. package/assets/js/highcharts/modules/item-series.js +1 -1
  291. package/assets/js/highcharts/modules/item-series.src.js +1 -1
  292. package/assets/js/highcharts/modules/lollipop.js +1 -1
  293. package/assets/js/highcharts/modules/lollipop.src.js +1 -1
  294. package/assets/js/highcharts/modules/map.js +2 -2
  295. package/assets/js/highcharts/modules/map.src.js +120 -58
  296. package/assets/js/highcharts/modules/marker-clusters.js +1 -1
  297. package/assets/js/highcharts/modules/marker-clusters.src.js +1 -1
  298. package/assets/js/highcharts/modules/mouse-wheel-zoom.js +1 -1
  299. package/assets/js/highcharts/modules/mouse-wheel-zoom.src.js +1 -1
  300. package/assets/js/highcharts/modules/navigator.js +2 -2
  301. package/assets/js/highcharts/modules/navigator.src.js +28 -24
  302. package/assets/js/highcharts/modules/networkgraph.js +2 -2
  303. package/assets/js/highcharts/modules/networkgraph.src.js +3 -3
  304. package/assets/js/highcharts/modules/no-data-to-display.js +1 -1
  305. package/assets/js/highcharts/modules/no-data-to-display.src.js +1 -1
  306. package/assets/js/highcharts/modules/offline-exporting.js +2 -2
  307. package/assets/js/highcharts/modules/offline-exporting.src.js +43 -32
  308. package/assets/js/highcharts/modules/organization.js +2 -2
  309. package/assets/js/highcharts/modules/organization.src.js +19 -21
  310. package/assets/js/highcharts/modules/overlapping-datalabels.js +1 -1
  311. package/assets/js/highcharts/modules/overlapping-datalabels.src.js +1 -1
  312. package/assets/js/highcharts/modules/parallel-coordinates.js +1 -1
  313. package/assets/js/highcharts/modules/parallel-coordinates.src.js +1 -1
  314. package/assets/js/highcharts/modules/pareto.js +1 -1
  315. package/assets/js/highcharts/modules/pareto.src.js +1 -1
  316. package/assets/js/highcharts/modules/pathfinder.js +1 -1
  317. package/assets/js/highcharts/modules/pathfinder.src.js +1 -1
  318. package/assets/js/highcharts/modules/pattern-fill.js +1 -1
  319. package/assets/js/highcharts/modules/pattern-fill.src.js +1 -1
  320. package/assets/js/highcharts/modules/pictorial.js +1 -1
  321. package/assets/js/highcharts/modules/pictorial.src.js +1 -1
  322. package/assets/js/highcharts/modules/price-indicator.js +1 -1
  323. package/assets/js/highcharts/modules/price-indicator.src.js +1 -1
  324. package/assets/js/highcharts/modules/pyramid3d.js +1 -1
  325. package/assets/js/highcharts/modules/pyramid3d.src.js +1 -1
  326. package/assets/js/highcharts/modules/sankey.js +2 -2
  327. package/assets/js/highcharts/modules/sankey.src.js +7 -8
  328. package/assets/js/highcharts/modules/series-label.js +1 -1
  329. package/assets/js/highcharts/modules/series-label.src.js +1 -1
  330. package/assets/js/highcharts/modules/series-on-point.js +2 -2
  331. package/assets/js/highcharts/modules/series-on-point.src.js +3 -3
  332. package/assets/js/highcharts/modules/solid-gauge.js +1 -1
  333. package/assets/js/highcharts/modules/solid-gauge.src.js +1 -1
  334. package/assets/js/highcharts/modules/sonification.js +2 -2
  335. package/assets/js/highcharts/modules/sonification.src.js +4 -1
  336. package/assets/js/highcharts/modules/static-scale.js +1 -1
  337. package/assets/js/highcharts/modules/static-scale.src.js +1 -1
  338. package/assets/js/highcharts/modules/stock-tools.js +2 -2
  339. package/assets/js/highcharts/modules/stock-tools.src.js +3 -3
  340. package/assets/js/highcharts/modules/stock.js +2 -2
  341. package/assets/js/highcharts/modules/stock.src.js +274 -320
  342. package/assets/js/highcharts/modules/streamgraph.js +1 -1
  343. package/assets/js/highcharts/modules/streamgraph.src.js +1 -1
  344. package/assets/js/highcharts/modules/sunburst.js +2 -2
  345. package/assets/js/highcharts/modules/sunburst.src.js +39 -16
  346. package/assets/js/highcharts/modules/tiledwebmap.js +1 -1
  347. package/assets/js/highcharts/modules/tiledwebmap.src.js +1 -1
  348. package/assets/js/highcharts/modules/tilemap.js +1 -1
  349. package/assets/js/highcharts/modules/tilemap.src.js +1 -1
  350. package/assets/js/highcharts/modules/timeline.js +1 -1
  351. package/assets/js/highcharts/modules/timeline.src.js +1 -1
  352. package/assets/js/highcharts/modules/treegraph.js +2 -2
  353. package/assets/js/highcharts/modules/treegraph.src.js +21 -17
  354. package/assets/js/highcharts/modules/treegrid.js +2 -2
  355. package/assets/js/highcharts/modules/treegrid.src.js +2 -2
  356. package/assets/js/highcharts/modules/treemap.js +2 -2
  357. package/assets/js/highcharts/modules/treemap.src.js +38 -15
  358. package/assets/js/highcharts/modules/variable-pie.js +1 -1
  359. package/assets/js/highcharts/modules/variable-pie.src.js +1 -1
  360. package/assets/js/highcharts/modules/variwide.js +2 -2
  361. package/assets/js/highcharts/modules/variwide.src.js +5 -5
  362. package/assets/js/highcharts/modules/vector.js +1 -1
  363. package/assets/js/highcharts/modules/vector.src.js +1 -1
  364. package/assets/js/highcharts/modules/venn.js +1 -1
  365. package/assets/js/highcharts/modules/venn.src.js +3 -3
  366. package/assets/js/highcharts/modules/windbarb.js +1 -1
  367. package/assets/js/highcharts/modules/windbarb.src.js +1 -1
  368. package/assets/js/highcharts/modules/wordcloud.js +1 -1
  369. package/assets/js/highcharts/modules/wordcloud.src.js +1 -1
  370. package/assets/js/highcharts/modules/xrange.js +2 -2
  371. package/assets/js/highcharts/modules/xrange.src.js +5 -5
  372. package/assets/js/highcharts/standalone-navigator.js +2 -2
  373. package/assets/js/highcharts/standalone-navigator.src.js +769 -638
  374. package/assets/js/highcharts/themes/avocado.js +1 -1
  375. package/assets/js/highcharts/themes/avocado.src.js +1 -1
  376. package/assets/js/highcharts/themes/brand-dark.js +2 -2
  377. package/assets/js/highcharts/themes/brand-dark.src.js +14 -2
  378. package/assets/js/highcharts/themes/brand-light.js +1 -1
  379. package/assets/js/highcharts/themes/brand-light.src.js +1 -1
  380. package/assets/js/highcharts/themes/dark-blue.js +1 -1
  381. package/assets/js/highcharts/themes/dark-blue.src.js +1 -1
  382. package/assets/js/highcharts/themes/dark-green.js +1 -1
  383. package/assets/js/highcharts/themes/dark-green.src.js +1 -1
  384. package/assets/js/highcharts/themes/dark-unica.js +1 -1
  385. package/assets/js/highcharts/themes/dark-unica.src.js +1 -1
  386. package/assets/js/highcharts/themes/gray.js +1 -1
  387. package/assets/js/highcharts/themes/gray.src.js +1 -1
  388. package/assets/js/highcharts/themes/grid-light.js +1 -1
  389. package/assets/js/highcharts/themes/grid-light.src.js +1 -1
  390. package/assets/js/highcharts/themes/grid.js +1 -1
  391. package/assets/js/highcharts/themes/grid.src.js +1 -1
  392. package/assets/js/highcharts/themes/high-contrast-dark.js +1 -1
  393. package/assets/js/highcharts/themes/high-contrast-dark.src.js +1 -1
  394. package/assets/js/highcharts/themes/high-contrast-light.js +1 -1
  395. package/assets/js/highcharts/themes/high-contrast-light.src.js +1 -1
  396. package/assets/js/highcharts/themes/sand-signika.js +1 -1
  397. package/assets/js/highcharts/themes/sand-signika.src.js +1 -1
  398. package/assets/js/highcharts/themes/skies.js +1 -1
  399. package/assets/js/highcharts/themes/skies.src.js +1 -1
  400. package/assets/js/highcharts/themes/sunset.js +1 -1
  401. package/assets/js/highcharts/themes/sunset.src.js +1 -1
  402. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highcharts JS v11.4.1 (2024-04-04)
2
+ * @license Highcharts JS v11.4.3 (2024-05-22)
3
3
  *
4
4
  * Standalone navigator module
5
5
  *
@@ -480,6 +480,15 @@
480
480
  * @since 6.0.0
481
481
  */
482
482
  width: 7,
483
+ /**
484
+ * Border radius of the handles.
485
+ *
486
+ * @sample {highstock} stock/navigator/handles-border-radius/
487
+ * Border radius on the navigator handles.
488
+ *
489
+ * @since 11.4.2
490
+ */
491
+ borderRadius: 0,
483
492
  /**
484
493
  * Height for handles.
485
494
  *
@@ -791,6 +800,7 @@
791
800
  tickLength: 0,
792
801
  lineWidth: 0,
793
802
  gridLineColor: "#e6e6e6" /* Palette.neutralColor10 */,
803
+ id: 'navigator-x-axis',
794
804
  gridLineWidth: 1,
795
805
  tickPixelInterval: 200,
796
806
  labels: {
@@ -844,6 +854,7 @@
844
854
  startOnTick: false,
845
855
  endOnTick: false,
846
856
  minPadding: 0.1,
857
+ id: 'navigator-y-axis',
847
858
  maxPadding: 0.1,
848
859
  labels: {
849
860
  enabled: false
@@ -882,7 +893,7 @@
882
893
 
883
894
  return NavigatorDefaults;
884
895
  });
885
- _registerModule(_modules, 'Stock/Navigator/NavigatorSymbols.js', [], function () {
896
+ _registerModule(_modules, 'Stock/Navigator/NavigatorSymbols.js', [_modules['Core/Renderer/SVG/Symbols.js'], _modules['Core/Utilities.js']], function (rect, U) {
886
897
  /* *
887
898
  *
888
899
  * (c) 2010-2024 Torstein Honsi
@@ -892,6 +903,7 @@
892
903
  * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
893
904
  *
894
905
  * */
906
+ const { relativeLength } = U;
895
907
  /* *
896
908
  *
897
909
  * Constants
@@ -902,18 +914,14 @@
902
914
  * @private
903
915
  */
904
916
  function navigatorHandle(_x, _y, width, height, options = {}) {
905
- const halfWidth = options.width ? options.width / 2 : width, markerPosition = Math.round(halfWidth / 3) + 0.5;
917
+ const halfWidth = options.width ? options.width / 2 : width, markerPosition = 1.5, r = relativeLength(options.borderRadius || 0, Math.min(halfWidth * 2, height));
906
918
  height = options.height || height;
907
919
  return [
908
- ['M', -halfWidth - 1, 0.5],
909
- ['L', halfWidth, 0.5],
910
- ['L', halfWidth, height + 0.5],
911
- ['L', -halfWidth - 1, height + 0.5],
912
- ['L', -halfWidth - 1, 0.5],
913
- ['M', -markerPosition, 4],
914
- ['L', -markerPosition, height - 3],
915
- ['M', markerPosition - 1, 4],
916
- ['L', markerPosition - 1, height - 3]
920
+ ['M', -markerPosition, height / 2 - 3.5],
921
+ ['L', -markerPosition, height / 2 + 4.5],
922
+ ['M', markerPosition - 1, height / 2 - 3.5],
923
+ ['L', markerPosition - 1, height / 2 + 4.5],
924
+ ...rect.rect(-halfWidth - 1, 0.5, halfWidth * 2 + 1, height, { r })
917
925
  ];
918
926
  }
919
927
  /* *
@@ -1466,7 +1474,7 @@
1466
1474
  *
1467
1475
  * */
1468
1476
  const { defaultOptions } = D;
1469
- const { addEvent, correctFloat, defined, destroyObjectProperties, fireEvent, merge, pick, removeEvent } = U;
1477
+ const { addEvent, correctFloat, crisp, defined, destroyObjectProperties, fireEvent, merge, pick, removeEvent } = U;
1470
1478
  /* *
1471
1479
  *
1472
1480
  * Constants
@@ -1698,9 +1706,8 @@
1698
1706
  rect.attr(rect.crisp({
1699
1707
  x: -0.5,
1700
1708
  y: -0.5,
1701
- // +1 to compensate for crispifying in rect method
1702
- width: size + 1,
1703
- height: size + 1,
1709
+ width: size,
1710
+ height: size,
1704
1711
  r: options.buttonBorderRadius
1705
1712
  }, rect.strokeWidth()));
1706
1713
  // Button arrow
@@ -1910,8 +1917,8 @@
1910
1917
  const trackBorderWidth = scroller.trackBorderWidth =
1911
1918
  scroller.track.strokeWidth();
1912
1919
  scroller.track.attr({
1913
- x: -trackBorderWidth % 2 / 2,
1914
- y: -trackBorderWidth % 2 / 2
1920
+ x: -crisp(0, trackBorderWidth),
1921
+ y: -crisp(0, trackBorderWidth)
1915
1922
  });
1916
1923
  // Draw the scrollbar itself
1917
1924
  scroller.scrollbarGroup = renderer.g().add(group);
@@ -1945,7 +1952,7 @@
1945
1952
  });
1946
1953
  }
1947
1954
  scroller.scrollbarStrokeWidth = scroller.scrollbar.strokeWidth();
1948
- scroller.scrollbarGroup.translate(-scroller.scrollbarStrokeWidth % 2 / 2, -scroller.scrollbarStrokeWidth % 2 / 2);
1955
+ scroller.scrollbarGroup.translate(-crisp(0, scroller.scrollbarStrokeWidth), -crisp(0, scroller.scrollbarStrokeWidth));
1949
1956
  // Draw the buttons:
1950
1957
  scroller.drawScrollbarButton(0);
1951
1958
  scroller.drawScrollbarButton(1);
@@ -2947,8 +2954,6 @@
2947
2954
  ordinal: baseXaxis.options.ordinal,
2948
2955
  overscroll: baseXaxis.options.overscroll
2949
2956
  }, navigatorOptions.xAxis, {
2950
- id: 'navigator-x-axis',
2951
- yAxis: 'navigator-y-axis',
2952
2957
  type: 'datetime',
2953
2958
  index: xAxisIndex,
2954
2959
  isInternal: true,
@@ -2967,7 +2972,6 @@
2967
2972
  height: height
2968
2973
  }), 'xAxis');
2969
2974
  navigator.yAxis = new Axis(chart, merge(navigatorOptions.yAxis, {
2970
- id: 'navigator-y-axis',
2971
2975
  alignTicks: false,
2972
2976
  offset: 0,
2973
2977
  index: yAxisIndex,
@@ -3119,8 +3123,8 @@
3119
3123
  linkedTo: null,
3120
3124
  group: 'nav',
3121
3125
  padXAxis: false,
3122
- xAxis: 'navigator-x-axis',
3123
- yAxis: 'navigator-y-axis',
3126
+ xAxis: this.navigatorOptions.xAxis?.id,
3127
+ yAxis: this.navigatorOptions.yAxis?.id,
3124
3128
  showInLegend: false,
3125
3129
  stacking: void 0,
3126
3130
  isInternal: true,
@@ -1,9 +1,9 @@
1
1
  !/**
2
- * Highcharts JS v11.4.1 (2024-04-04)
2
+ * Highcharts JS v11.4.3 (2024-05-22)
3
3
  *
4
4
  * Force directed graph module
5
5
  *
6
6
  * (c) 2010-2024 Torstein Honsi
7
7
  *
8
8
  * License: www.highcharts.com/license
9
- */function(t){"object"==typeof module&&module.exports?(t.default=t,module.exports=t):"function"==typeof define&&define.amd?define("highcharts/modules/networkgraph",["highcharts"],function(e){return t(e),t.Highcharts=e,t}):t("undefined"!=typeof Highcharts?Highcharts:void 0)}(function(t){"use strict";var e=t?t._modules:{};function i(t,e,i,s){t.hasOwnProperty(e)||(t[e]=s.apply(null,i),"function"==typeof CustomEvent&&window.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:e,module:t[e]}})))}i(e,"Series/DragNodesComposition.js",[e["Core/Globals.js"],e["Core/Utilities.js"]],function(t,e){let{composed:i}=t,{addEvent:s,pushUnique:o}=e;function r(){let t,e,i;let o=this;o.container&&(t=s(o.container,"mousedown",t=>{let r=o.hoverPoint;r&&r.series&&r.series.hasDraggableNodes&&r.series.options.draggable&&(r.series.onMouseDown(r,t),e=s(o.container,"mousemove",t=>r&&r.series&&r.series.onMouseMove(r,t)),i=s(o.container.ownerDocument,"mouseup",t=>(e(),i(),r&&r.series&&r.series.onMouseUp(r,t))))})),s(o,"destroy",function(){t()})}return{compose:function(t){o(i,"DragNodes")&&s(t,"load",r)},onMouseDown:function(t,e){let i=this.chart.pointer?.normalize(e)||e;t.fixedPosition={chartX:i.chartX,chartY:i.chartY,plotX:t.plotX,plotY:t.plotY},t.inDragMode=!0},onMouseMove:function(t,e){if(t.fixedPosition&&t.inDragMode){let i,s;let o=this.chart,r=o.pointer?.normalize(e)||e,n=t.fixedPosition.chartX-r.chartX,a=t.fixedPosition.chartY-r.chartY,h=o.graphLayoutsLookup;(Math.abs(n)>5||Math.abs(a)>5)&&(i=t.fixedPosition.plotX-n,s=t.fixedPosition.plotY-a,o.isInsidePlot(i,s)&&(t.plotX=i,t.plotY=s,t.hasDragged=!0,this.redrawHalo(t),h.forEach(t=>{t.restartSimulation()})))}},onMouseUp:function(t){t.fixedPosition&&(t.hasDragged&&(this.layout.enableSimulation?this.layout.start():this.chart.redraw()),t.inDragMode=t.hasDragged=!1,this.options.fixedDraggable||delete t.fixedPosition)},redrawHalo:function(t){t&&this.halo&&this.halo.attr({d:t.haloPath(this.options.states.hover.halo.size)})}}}),i(e,"Series/GraphLayoutComposition.js",[e["Core/Animation/AnimationUtilities.js"],e["Core/Globals.js"],e["Core/Utilities.js"]],function(t,e,i){let{setAnimation:s}=t,{composed:o}=e,{addEvent:r,pushUnique:n}=i;function a(){this.graphLayoutsLookup&&(this.graphLayoutsLookup.forEach(t=>{t.updateSimulation()}),this.redraw())}function h(){this.graphLayoutsLookup&&(this.graphLayoutsLookup.forEach(t=>{t.updateSimulation(!1)}),this.redraw())}function l(){this.graphLayoutsLookup&&this.graphLayoutsLookup.forEach(t=>{t.stop()})}function d(){let t,e=!1,i=i=>{i.maxIterations--&&isFinite(i.temperature)&&!i.isStable()&&!i.enableSimulation&&(i.beforeStep&&i.beforeStep(),i.step(),t=!1,e=!0)};if(this.graphLayoutsLookup){for(s(!1,this),this.graphLayoutsLookup.forEach(t=>t.start());!t;)t=!0,this.graphLayoutsLookup.forEach(i);e&&this.series.forEach(t=>{t&&t.layout&&t.render()})}}return{compose:function(t){n(o,"GraphLayout")&&(r(t,"afterPrint",a),r(t,"beforePrint",h),r(t,"predraw",l),r(t,"render",d))},integrations:{},layouts:{}}}),i(e,"Series/NodesComposition.js",[e["Core/Series/SeriesRegistry.js"],e["Core/Utilities.js"]],function(t,e){var i;let{series:{prototype:s,prototype:{pointClass:{prototype:o}}}}=t,{defined:r,extend:n,find:a,merge:h,pick:l}=e;return function(t){function e(){return this.data=[].concat(this.points||[],this.nodes),s.destroy.apply(this,arguments)}function i(){this.nodes&&(this.nodes.forEach(t=>{t.destroy()}),this.nodes.length=0),s.setData.apply(this,arguments)}function d(t){let e=arguments,i=this.isNode?this.linksTo.concat(this.linksFrom):[this.fromNode,this.toNode];"select"!==t&&i.forEach(t=>{t&&t.series&&(o.setState.apply(t,e),!t.isNode&&(t.fromNode.graphic&&o.setState.apply(t.fromNode,e),t.toNode&&t.toNode.graphic&&o.setState.apply(t.toNode,e)))}),o.setState.apply(this,e)}function p(t,e,i,s){let r=this.series.options.nodes,n=this.series.options.data,a=n&&n.length||0,d=n&&n[this.index];if(o.update.call(this,t,!this.isNode&&e,i,s),this.isNode){let t=(r||[]).reduce((t,e,i)=>this.id===e.id?i:t,-1),s=h(r&&r[t]||{},n&&n[this.index]||{});n&&(d?n[this.index]=d:n.length=a),r?t>=0?r[t]=s:r.push(s):this.series.options.nodes=[s],l(e,!0)&&this.series.chart.redraw(i)}}t.compose=function(t,s){let o=t.prototype,r=s.prototype;return o.setNodeState=d,o.setState=d,o.update=p,r.destroy=e,r.setData=i,s},t.createNode=function(t){let e=this.pointClass,i=(t,e)=>a(t,t=>t.id===e),s=i(this.nodes,t),o;if(!s){o=this.options.nodes&&i(this.options.nodes,t);let r=new e(this,n({className:"highcharts-node",isNode:!0,id:t,y:1},o));r.linksTo=[],r.linksFrom=[],r.getSum=function(){let t=0,e=0;return r.linksTo.forEach(e=>{t+=e.weight||0}),r.linksFrom.forEach(t=>{e+=t.weight||0}),Math.max(t,e)},r.offset=function(t,e){let i=0;for(let s=0;s<r[e].length;s++){if(r[e][s]===t)return i;i+=r[e][s].weight}},r.hasShape=function(){let t=0;return r.linksTo.forEach(e=>{e.outgoing&&t++}),!r.linksTo.length||t!==r.linksTo.length},r.index=this.nodes.push(r)-1,s=r}return s.formatPrefix="node",s.name=s.name||s.options.id||"",s.mass=l(s.options.mass,s.options.marker&&s.options.marker.radius,this.options.marker&&this.options.marker.radius,4),s},t.destroy=e,t.generatePoints=function(){let t=this.chart,e={};s.generatePoints.call(this),this.nodes||(this.nodes=[]),this.colorCounter=0,this.nodes.forEach(t=>{t.linksFrom.length=0,t.linksTo.length=0,t.level=t.options.level}),this.points.forEach(i=>{r(i.from)&&(e[i.from]||(e[i.from]=this.createNode(i.from)),e[i.from].linksFrom.push(i),i.fromNode=e[i.from],t.styledMode?i.colorIndex=l(i.options.colorIndex,e[i.from].colorIndex):i.color=i.options.color||e[i.from].color),r(i.to)&&(e[i.to]||(e[i.to]=this.createNode(i.to)),e[i.to].linksTo.push(i),i.toNode=e[i.to]),i.name=i.name||i.id},this),this.nodeLookup=e},t.setNodeState=d,t.updateNode=p}(i||(i={})),i}),i(e,"Series/Networkgraph/NetworkgraphPoint.js",[e["Series/NodesComposition.js"],e["Core/Series/SeriesRegistry.js"],e["Core/Utilities.js"]],function(t,e,i){let{series:{prototype:s,prototype:{pointClass:o}}}=e,{addEvent:r,css:n,defined:a,extend:h,pick:l}=i;class d extends o{destroy(){return this.isNode&&this.linksFrom.concat(this.linksTo).forEach(function(t){t.destroyElements&&t.destroyElements()}),this.series.layout.removeElementFromCollection(this,this.series.layout[this.isNode?"nodes":"links"]),o.prototype.destroy.apply(this,arguments)}getDegree(){let t=this.isNode?this.linksFrom.length+this.linksTo.length:0;return 0===t?1:t}getLinkAttributes(){let t=this.series.options.link,e=this.options;return{"stroke-width":l(e.width,t.width),stroke:e.color||t.color,dashstyle:e.dashStyle||t.dashStyle,opacity:l(e.opacity,t.opacity,1)}}getLinkPath(){let t=this.fromNode,e=this.toNode;return t.plotX>e.plotX&&(t=this.toNode,e=this.fromNode),[["M",t.plotX||0,t.plotY||0],["L",e.plotX||0,e.plotY||0]]}getMass(){let t=this.fromNode.mass,e=this.toNode.mass,i=t+e;return{fromNode:1-t/i,toNode:1-e/i}}constructor(t,e,i){super(t,e,i),this.series.options.draggable&&!this.series.chart.styledMode&&(r(this,"mouseOver",function(){n(this.series.chart.container,{cursor:"move"})}),r(this,"mouseOut",function(){n(this.series.chart.container,{cursor:"default"})}))}isValid(){return!this.isNode||a(this.id)}redrawLink(){let t;let e=this.getLinkPath();if(this.graphic){this.shapeArgs={d:e},this.series.chart.styledMode||(t=this.series.pointAttribs(this),this.graphic.attr(t),(this.dataLabels||[]).forEach(function(e){e&&e.attr({opacity:t.opacity})})),this.graphic.animate(this.shapeArgs);let i=e[0],s=e[1];"M"===i[0]&&"L"===s[0]&&(this.plotX=(i[1]+s[1])/2,this.plotY=(i[2]+s[2])/2)}}remove(t,e){let i=this.series,o=i.options.nodes||[],r,n=o.length;if(this.isNode){for(i.points=[],[].concat(this.linksFrom).concat(this.linksTo).forEach(function(t){(r=t.fromNode.linksFrom.indexOf(t))>-1&&t.fromNode.linksFrom.splice(r,1),(r=t.toNode.linksTo.indexOf(t))>-1&&t.toNode.linksTo.splice(r,1),s.removePoint.call(i,i.data.indexOf(t),!1,!1)}),i.points=i.data.slice(),i.nodes.splice(i.nodes.indexOf(this),1);n--;)if(o[n].id===this.options.id){i.options.nodes.splice(n,1);break}this&&this.destroy(),i.isDirty=!0,i.isDirtyData=!0,t&&i.chart.redraw(t)}else i.removePoint(i.data.indexOf(this),t,e)}renderLink(){let t;this.graphic||(this.graphic=this.series.chart.renderer.path(this.getLinkPath()).addClass(this.getClassName(),!0).add(this.series.group),this.series.chart.styledMode||(t=this.series.pointAttribs(this),this.graphic.attr(t),(this.dataLabels||[]).forEach(function(e){e&&e.attr({opacity:t.opacity})})))}}return h(d.prototype,{setState:t.setNodeState}),d}),i(e,"Series/Networkgraph/NetworkgraphSeriesDefaults.js",[],function(){return{stickyTracking:!1,inactiveOtherPoints:!0,marker:{enabled:!0,states:{inactive:{opacity:.3,animation:{duration:50}}}},states:{inactive:{linkOpacity:.3,animation:{duration:50}}},dataLabels:{formatter:function(){return this.key},linkFormatter:function(){return this.point.fromNode.name+"<br>"+this.point.toNode.name},linkTextPath:{enabled:!0},textPath:{enabled:!1},style:{transition:"opacity 2000ms"},defer:!0,animation:{defer:1e3}},link:{color:"rgba(100, 100, 100, 0.5)",width:1},draggable:!0,layoutAlgorithm:{initialPositions:"circle",initialPositionRadius:1,enableSimulation:!1,theta:.5,maxSpeed:10,approximation:"none",type:"reingold-fruchterman",integration:"euler",maxIterations:1e3,gravitationalConstant:.0625,friction:-.981},showInLegend:!1}}),i(e,"Series/Networkgraph/EulerIntegration.js",[],function(){return{attractive:function(t,e,i,s){let o=t.getMass(),r=i.x/s*e,n=i.y/s*e;t.fromNode.fixedPosition||(t.fromNode.dispX-=r*o.fromNode/t.fromNode.degree,t.fromNode.dispY-=n*o.fromNode/t.fromNode.degree),t.toNode.fixedPosition||(t.toNode.dispX+=r*o.toNode/t.toNode.degree,t.toNode.dispY+=n*o.toNode/t.toNode.degree)},attractiveForceFunction:function(t,e){return t*t/e},barycenter:function(){let t=this.options.gravitationalConstant,e=this.barycenter.xFactor,i=this.barycenter.yFactor;this.nodes.forEach(function(s){if(!s.fixedPosition){let o=s.getDegree(),r=o*(1+o/2);s.dispX+=(e-s.plotX)*t*r/s.degree,s.dispY+=(i-s.plotY)*t*r/s.degree}})},getK:function(t){return Math.pow(t.box.width*t.box.height/t.nodes.length,.3)},integrate:function(t,e){e.dispX+=e.dispX*t.options.friction,e.dispY+=e.dispY*t.options.friction;let i=e.temperature=t.vectorLength({x:e.dispX,y:e.dispY});0!==i&&(e.plotX+=e.dispX/i*Math.min(Math.abs(e.dispX),t.temperature),e.plotY+=e.dispY/i*Math.min(Math.abs(e.dispY),t.temperature))},repulsive:function(t,e,i,s){t.dispX+=i.x/s*e/t.degree,t.dispY+=i.y/s*e/t.degree},repulsiveForceFunction:function(t,e){return e*e/t}}}),i(e,"Series/Networkgraph/QuadTreeNode.js",[],function(){class t{constructor(t){this.body=!1,this.isEmpty=!1,this.isInternal=!1,this.nodes=[],this.box=t,this.boxSize=Math.min(t.width,t.height)}divideBox(){let e=this.box.width/2,i=this.box.height/2;this.nodes[0]=new t({left:this.box.left,top:this.box.top,width:e,height:i}),this.nodes[1]=new t({left:this.box.left+e,top:this.box.top,width:e,height:i}),this.nodes[2]=new t({left:this.box.left+e,top:this.box.top+i,width:e,height:i}),this.nodes[3]=new t({left:this.box.left,top:this.box.top+i,width:e,height:i})}getBoxPosition(t){let e=t.plotX<this.box.left+this.box.width/2,i=t.plotY<this.box.top+this.box.height/2;return e?i?0:3:i?1:2}insert(e,i){let s;this.isInternal?this.nodes[this.getBoxPosition(e)].insert(e,i-1):(this.isEmpty=!1,this.body?i?(this.isInternal=!0,this.divideBox(),!0!==this.body&&(this.nodes[this.getBoxPosition(this.body)].insert(this.body,i-1),this.body=!0),this.nodes[this.getBoxPosition(e)].insert(e,i-1)):((s=new t({top:e.plotX||NaN,left:e.plotY||NaN,width:.1,height:.1})).body=e,s.isInternal=!1,this.nodes.push(s)):(this.isInternal=!1,this.body=e))}updateMassAndCenter(){let t=0,e=0,i=0;if(this.isInternal){for(let s of this.nodes)s.isEmpty||(t+=s.mass,e+=s.plotX*s.mass,i+=s.plotY*s.mass);e/=t,i/=t}else this.body&&(t=this.body.mass,e=this.body.plotX,i=this.body.plotY);this.mass=t,this.plotX=e,this.plotY=i}}return t}),i(e,"Series/Networkgraph/QuadTree.js",[e["Series/Networkgraph/QuadTreeNode.js"]],function(t){return class{constructor(e,i,s,o){this.box={left:e,top:i,width:s,height:o},this.maxDepth=25,this.root=new t(this.box),this.root.isInternal=!0,this.root.isRoot=!0,this.root.divideBox()}calculateMassAndCenter(){this.visitNodeRecursive(null,null,function(t){t.updateMassAndCenter()})}insertNodes(t){for(let e of t)this.root.insert(e,this.maxDepth)}visitNodeRecursive(t,e,i){let s;if(t||(t=this.root),t===this.root&&e&&(s=e(t)),!1!==s){for(let o of t.nodes){if(o.isInternal){if(e&&(s=e(o)),!1===s)continue;this.visitNodeRecursive(o,e,i)}else o.body&&e&&e(o.body);i&&i(o)}t===this.root&&i&&i(t)}}}}),i(e,"Series/Networkgraph/VerletIntegration.js",[],function(){return{attractive:function(t,e,i){let s=t.getMass(),o=-i.x*e*this.diffTemperature,r=-i.y*e*this.diffTemperature;t.fromNode.fixedPosition||(t.fromNode.plotX-=o*s.fromNode/t.fromNode.degree,t.fromNode.plotY-=r*s.fromNode/t.fromNode.degree),t.toNode.fixedPosition||(t.toNode.plotX+=o*s.toNode/t.toNode.degree,t.toNode.plotY+=r*s.toNode/t.toNode.degree)},attractiveForceFunction:function(t,e){return(e-t)/t},barycenter:function(){let t=this.options.gravitationalConstant||0,e=(this.barycenter.xFactor-(this.box.left+this.box.width)/2)*t,i=(this.barycenter.yFactor-(this.box.top+this.box.height)/2)*t;this.nodes.forEach(function(t){t.fixedPosition||(t.plotX-=e/t.mass/t.degree,t.plotY-=i/t.mass/t.degree)})},getK:function(t){return Math.pow(t.box.width*t.box.height/t.nodes.length,.5)},integrate:function(t,e){let i=-t.options.friction,s=t.options.maxSpeed,o=e.prevX,r=e.prevY,n=(e.plotX+e.dispX-o)*i,a=(e.plotY+e.dispY-r)*i,h=Math.abs,l=h(n)/(n||1),d=h(a)/(a||1),p=l*Math.min(s,Math.abs(n)),u=d*Math.min(s,Math.abs(a));e.prevX=e.plotX+e.dispX,e.prevY=e.plotY+e.dispY,e.plotX+=p,e.plotY+=u,e.temperature=t.vectorLength({x:p,y:u})},repulsive:function(t,e,i){let s=e*this.diffTemperature/t.mass/t.degree;t.fixedPosition||(t.plotX+=i.x*s,t.plotY+=i.y*s)},repulsiveForceFunction:function(t,e){return(e-t)/t*(e>t?1:0)}}}),i(e,"Series/Networkgraph/ReingoldFruchtermanLayout.js",[e["Series/Networkgraph/EulerIntegration.js"],e["Core/Globals.js"],e["Series/GraphLayoutComposition.js"],e["Series/Networkgraph/QuadTree.js"],e["Core/Utilities.js"],e["Series/Networkgraph/VerletIntegration.js"]],function(t,e,i,s,o,r){let{win:n}=e,{clamp:a,defined:h,isFunction:l,fireEvent:d,pick:p}=o;class u{constructor(){this.box={},this.currentStep=0,this.initialRendering=!0,this.links=[],this.nodes=[],this.series=[],this.simulation=!1}static compose(e){i.compose(e),i.integrations.euler=t,i.integrations.verlet=r,i.layouts["reingold-fruchterman"]=u}init(t){this.options=t,this.nodes=[],this.links=[],this.series=[],this.box={x:0,y:0,width:0,height:0},this.setInitialRendering(!0),this.integration=i.integrations[t.integration],this.enableSimulation=t.enableSimulation,this.attractiveForce=p(t.attractiveForce,this.integration.attractiveForceFunction),this.repulsiveForce=p(t.repulsiveForce,this.integration.repulsiveForceFunction),this.approximation=t.approximation}updateSimulation(t){this.enableSimulation=p(t,this.options.enableSimulation)}start(){let t=this.series,e=this.options;this.currentStep=0,this.forces=t[0]&&t[0].forces||[],this.chart=t[0]&&t[0].chart,this.initialRendering&&(this.initPositions(),t.forEach(function(t){t.finishedAnimating=!0,t.render()})),this.setK(),this.resetSimulation(e),this.enableSimulation&&this.step()}step(){let t=this.series;for(let t of(this.currentStep++,"barnes-hut"===this.approximation&&(this.createQuadTree(),this.quadTree.calculateMassAndCenter()),this.forces||[]))this[t+"Forces"](this.temperature);if(this.applyLimits(),this.temperature=this.coolDown(this.startTemperature,this.diffTemperature,this.currentStep),this.prevSystemTemperature=this.systemTemperature,this.systemTemperature=this.getSystemTemperature(),this.enableSimulation){for(let e of t)e.chart&&e.render();this.maxIterations--&&isFinite(this.temperature)&&!this.isStable()?(this.simulation&&n.cancelAnimationFrame(this.simulation),this.simulation=n.requestAnimationFrame(()=>this.step())):(this.simulation=!1,this.series.forEach(t=>{d(t,"afterSimulation")}))}}stop(){this.simulation&&n.cancelAnimationFrame(this.simulation)}setArea(t,e,i,s){this.box={left:t,top:e,width:i,height:s}}setK(){this.k=this.options.linkLength||this.integration.getK(this)}addElementsToCollection(t,e){for(let i of t)-1===e.indexOf(i)&&e.push(i)}removeElementFromCollection(t,e){let i=e.indexOf(t);-1!==i&&e.splice(i,1)}clear(){this.nodes.length=0,this.links.length=0,this.series.length=0,this.resetSimulation()}resetSimulation(){this.forcedStop=!1,this.systemTemperature=0,this.setMaxIterations(),this.setTemperature(),this.setDiffTemperature()}restartSimulation(){this.simulation?this.resetSimulation():(this.setInitialRendering(!1),this.enableSimulation?this.start():this.setMaxIterations(1),this.chart&&this.chart.redraw(),this.setInitialRendering(!0))}setMaxIterations(t){this.maxIterations=p(t,this.options.maxIterations)}setTemperature(){this.temperature=this.startTemperature=Math.sqrt(this.nodes.length)}setDiffTemperature(){this.diffTemperature=this.startTemperature/(this.options.maxIterations+1)}setInitialRendering(t){this.initialRendering=t}createQuadTree(){this.quadTree=new s(this.box.left,this.box.top,this.box.width,this.box.height),this.quadTree.insertNodes(this.nodes)}initPositions(){let t=this.options.initialPositions;if(l(t))for(let e of(t.call(this),this.nodes))h(e.prevX)||(e.prevX=e.plotX),h(e.prevY)||(e.prevY=e.plotY),e.dispX=0,e.dispY=0;else"circle"===t?this.setCircularPositions():this.setRandomPositions()}setCircularPositions(){let t;let e=this.box,i=this.nodes,s=2*Math.PI/(i.length+1),o=i.filter(function(t){return 0===t.linksTo.length}),r={},n=this.options.initialPositionRadius,a=t=>{for(let e of t.linksFrom||[])r[e.toNode.id]||(r[e.toNode.id]=!0,h.push(e.toNode),a(e.toNode))},h=[];for(let t of o)h.push(t),a(t);if(h.length)for(let t of i)-1===h.indexOf(t)&&h.push(t);else h=i;for(let i=0,o=h.length;i<o;++i)(t=h[i]).plotX=t.prevX=p(t.plotX,e.width/2+n*Math.cos(i*s)),t.plotY=t.prevY=p(t.plotY,e.height/2+n*Math.sin(i*s)),t.dispX=0,t.dispY=0}setRandomPositions(){let t;let e=this.box,i=this.nodes,s=i.length+1,o=t=>{let e=t*t/Math.PI;return e-Math.floor(e)};for(let r=0,n=i.length;r<n;++r)(t=i[r]).plotX=t.prevX=p(t.plotX,e.width*o(r)),t.plotY=t.prevY=p(t.plotY,e.height*o(s+r)),t.dispX=0,t.dispY=0}force(t,...e){this.integration[t].apply(this,e)}barycenterForces(){this.getBarycenter(),this.force("barycenter")}getBarycenter(){let t=0,e=0,i=0;for(let s of this.nodes)e+=s.plotX*s.mass,i+=s.plotY*s.mass,t+=s.mass;return this.barycenter={x:e,y:i,xFactor:e/t,yFactor:i/t},this.barycenter}barnesHutApproximation(t,e){let i,s;let o=this.getDistXY(t,e),r=this.vectorLength(o);return t!==e&&0!==r&&(e.isInternal?e.boxSize/r<this.options.theta&&0!==r?(s=this.repulsiveForce(r,this.k),this.force("repulsive",t,s*e.mass,o,r),i=!1):i=!0:(s=this.repulsiveForce(r,this.k),this.force("repulsive",t,s*e.mass,o,r))),i}repulsiveForces(){if("barnes-hut"===this.approximation)for(let t of this.nodes)this.quadTree.visitNodeRecursive(null,e=>this.barnesHutApproximation(t,e));else{let t,e,i;for(let s of this.nodes)for(let o of this.nodes)s===o||s.fixedPosition||(i=this.getDistXY(s,o),0!==(e=this.vectorLength(i))&&(t=this.repulsiveForce(e,this.k),this.force("repulsive",s,t*o.mass,i,e)))}}attractiveForces(){let t,e,i;for(let s of this.links)s.fromNode&&s.toNode&&(t=this.getDistXY(s.fromNode,s.toNode),0!==(e=this.vectorLength(t))&&(i=this.attractiveForce(e,this.k),this.force("attractive",s,i,t,e)))}applyLimits(){for(let t of this.nodes){if(t.fixedPosition)return;this.integration.integrate(this,t),this.applyLimitBox(t,this.box),t.dispX=0,t.dispY=0}}applyLimitBox(t,e){let i=t.radius;t.plotX=a(t.plotX,e.left+i,e.width-i),t.plotY=a(t.plotY,e.top+i,e.height-i)}coolDown(t,e,i){return t-e*i}isStable(){return 1e-5>Math.abs(this.systemTemperature-this.prevSystemTemperature)||this.temperature<=0}getSystemTemperature(){let t=0;for(let e of this.nodes)t+=e.temperature;return t}vectorLength(t){return Math.sqrt(t.x*t.x+t.y*t.y)}getDistR(t,e){let i=this.getDistXY(t,e);return this.vectorLength(i)}getDistXY(t,e){let i=t.plotX-e.plotX,s=t.plotY-e.plotY;return{x:i,y:s,absX:Math.abs(i),absY:Math.abs(s)}}}return u}),i(e,"Series/SimulationSeriesUtilities.js",[e["Core/Utilities.js"],e["Core/Animation/AnimationUtilities.js"]],function(t,e){let{merge:i,syncTimeout:s}=t,{animObject:o}=e;return{initDataLabels:function(){let t=this.options.dataLabels;if(!this.dataLabelsGroup){let e=this.initDataLabelsGroup();return!this.chart.styledMode&&t?.style&&e.css(t.style),e.attr({opacity:0}),this.visible&&e.show(),e}return this.dataLabelsGroup.attr(i({opacity:1},this.getPlotBox("data-labels"))),this.dataLabelsGroup},initDataLabelsDefer:function(){let t=this.options.dataLabels;t?.defer&&this.options.layoutAlgorithm?.enableSimulation?s(()=>{this.deferDataLabels=!1},t?o(t.animation).defer:0):this.deferDataLabels=!1}}}),i(e,"Series/Networkgraph/NetworkgraphSeries.js",[e["Series/DragNodesComposition.js"],e["Series/GraphLayoutComposition.js"],e["Core/Globals.js"],e["Series/Networkgraph/NetworkgraphPoint.js"],e["Series/Networkgraph/NetworkgraphSeriesDefaults.js"],e["Series/NodesComposition.js"],e["Series/Networkgraph/ReingoldFruchtermanLayout.js"],e["Core/Series/SeriesRegistry.js"],e["Series/SimulationSeriesUtilities.js"],e["Core/Utilities.js"]],function(t,e,i,s,o,r,n,a,h,l){let{noop:d}=i,{series:p,seriesTypes:{column:{prototype:u},line:{prototype:c}}}=a,{initDataLabels:f,initDataLabelsDefer:m}=h,{addEvent:g,defined:y,extend:b,merge:x,pick:N}=l;class k extends p{constructor(){super(...arguments),this.deferDataLabels=!0}static compose(e){t.compose(e),n.compose(e)}deferLayout(){let t=this.options.layoutAlgorithm,i=this.chart.options.chart,s,o=this.chart.graphLayoutsStorage,r=this.chart.graphLayoutsLookup;this.visible&&(o||(this.chart.graphLayoutsStorage=o={},this.chart.graphLayoutsLookup=r=[]),(s=o[t.type])||(t.enableSimulation=y(i.forExport)?!i.forExport:t.enableSimulation,o[t.type]=s=new e.layouts[t.type],s.init(t),r.splice(s.index,0,s)),this.layout=s,s.setArea(0,0,this.chart.plotWidth,this.chart.plotHeight),s.addElementsToCollection([this],s.series),s.addElementsToCollection(this.nodes,s.nodes),s.addElementsToCollection(this.points,s.links))}destroy(){this.layout&&this.layout.removeElementFromCollection(this,this.layout.series),r.destroy.call(this)}drawDataLabels(){let t;if(this.deferDataLabels)return;let e=this.options.dataLabels;e?.textPath&&(t=e.textPath),p.prototype.drawDataLabels.call(this,this.nodes),e?.linkTextPath&&(e.textPath=e.linkTextPath),p.prototype.drawDataLabels.call(this,this.data),e?.textPath&&(e.textPath=t)}generatePoints(){let t,e;for(r.generatePoints.apply(this,arguments),this.options.nodes&&this.options.nodes.forEach(function(t){this.nodeLookup[t.id]||(this.nodeLookup[t.id]=this.createNode(t.id))},this),e=this.nodes.length-1;e>=0;e--)(t=this.nodes[e]).degree=t.getDegree(),t.radius=N(t.marker&&t.marker.radius,this.options.marker&&this.options.marker.radius,0),this.nodeLookup[t.id]||t.remove();this.data.forEach(function(t){t.formatPrefix="link"}),this.indexateNodes()}getPointsCollection(){return this.nodes||[]}indexateNodes(){this.nodes.forEach(function(t,e){t.index=e})}init(t,e){return super.init(t,e),m.call(this),g(this,"updatedData",()=>{this.layout&&this.layout.stop()}),g(this,"afterUpdate",()=>{this.nodes.forEach(t=>{t&&t.series&&t.resolveColor()})}),g(this,"afterSimulation",function(){this.deferDataLabels=!1,this.drawDataLabels()}),this}markerAttribs(t,e){let i=p.prototype.markerAttribs.call(this,t,e);return y(t.plotY)||(i.y=0),i.x=(t.plotX||0)-(i.width||0)/2,i}pointAttribs(t,e){let i=e||t&&t.state||"normal",s=this.options.states[i],o=p.prototype.pointAttribs.call(this,t,i);return t&&!t.isNode&&(o=t.getLinkAttributes(),s&&(o={stroke:s.linkColor||o.stroke,dashstyle:s.linkDashStyle||o.dashstyle,opacity:N(s.linkOpacity,o.opacity),"stroke-width":s.linkColor||o["stroke-width"]})),o}render(){let t=this.points,e=this.chart.hoverPoint,i=[];this.points=this.nodes,c.render.call(this),this.points=t,t.forEach(function(t){t.fromNode&&t.toNode&&(t.renderLink(),t.redrawLink())}),e&&e.series===this&&this.redrawHalo(e),this.chart.hasRendered&&!this.options.dataLabels.allowOverlap&&(this.nodes.concat(this.points).forEach(function(t){t.dataLabel&&i.push(t.dataLabel)}),this.chart.hideOverlappingLabels(i))}setState(t,e){e?(this.points=this.nodes.concat(this.data),p.prototype.setState.apply(this,arguments),this.points=this.data):p.prototype.setState.apply(this,arguments),this.layout.simulation||t||this.render()}translate(){this.processedXData||this.processData(),this.generatePoints(),this.deferLayout(),this.nodes.forEach(function(t){t.isInside=!0,t.linksFrom.forEach(function(t){t.shapeType="path",t.y=1})})}}return k.defaultOptions=x(p.defaultOptions,o),b(k.prototype,{pointClass:s,animate:void 0,directTouch:!0,drawGraph:void 0,forces:["barycenter","repulsive","attractive"],hasDraggableNodes:!0,isCartesian:!1,noSharedTooltip:!0,pointArrayMap:["from","to"],requireSorting:!1,trackerGroups:["group","markerGroup","dataLabelsGroup"],initDataLabels:f,buildKDTree:d,createNode:r.createNode,drawTracker:u.drawTracker,onMouseDown:t.onMouseDown,onMouseMove:t.onMouseMove,onMouseUp:t.onMouseUp,redrawHalo:t.redrawHalo}),a.registerSeriesType("networkgraph",k),k}),i(e,"masters/modules/networkgraph.src.js",[e["Core/Globals.js"],e["Series/Networkgraph/NetworkgraphSeries.js"]],function(t,e){return e.compose(t.Chart),t})});
9
+ */function(t){"object"==typeof module&&module.exports?(t.default=t,module.exports=t):"function"==typeof define&&define.amd?define("highcharts/modules/networkgraph",["highcharts"],function(e){return t(e),t.Highcharts=e,t}):t("undefined"!=typeof Highcharts?Highcharts:void 0)}(function(t){"use strict";var e=t?t._modules:{};function i(t,e,i,s){t.hasOwnProperty(e)||(t[e]=s.apply(null,i),"function"==typeof CustomEvent&&window.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:e,module:t[e]}})))}i(e,"Series/DragNodesComposition.js",[e["Core/Globals.js"],e["Core/Utilities.js"]],function(t,e){let{composed:i}=t,{addEvent:s,pushUnique:o}=e;function r(){let t,e,i;let o=this;o.container&&(t=s(o.container,"mousedown",t=>{let r=o.hoverPoint;r&&r.series&&r.series.hasDraggableNodes&&r.series.options.draggable&&(r.series.onMouseDown(r,t),e=s(o.container,"mousemove",t=>r&&r.series&&r.series.onMouseMove(r,t)),i=s(o.container.ownerDocument,"mouseup",t=>(e(),i(),r&&r.series&&r.series.onMouseUp(r,t))))})),s(o,"destroy",function(){t()})}return{compose:function(t){o(i,"DragNodes")&&s(t,"load",r)},onMouseDown:function(t,e){let i=this.chart.pointer?.normalize(e)||e;t.fixedPosition={chartX:i.chartX,chartY:i.chartY,plotX:t.plotX,plotY:t.plotY},t.inDragMode=!0},onMouseMove:function(t,e){if(t.fixedPosition&&t.inDragMode){let i,s;let o=this.chart,r=o.pointer?.normalize(e)||e,n=t.fixedPosition.chartX-r.chartX,a=t.fixedPosition.chartY-r.chartY,h=o.graphLayoutsLookup;(Math.abs(n)>5||Math.abs(a)>5)&&(i=t.fixedPosition.plotX-n,s=t.fixedPosition.plotY-a,o.isInsidePlot(i,s)&&(t.plotX=i,t.plotY=s,t.hasDragged=!0,this.redrawHalo(t),h.forEach(t=>{t.restartSimulation()})))}},onMouseUp:function(t){t.fixedPosition&&(t.hasDragged&&(this.layout.enableSimulation?this.layout.start():this.chart.redraw()),t.inDragMode=t.hasDragged=!1,this.options.fixedDraggable||delete t.fixedPosition)},redrawHalo:function(t){t&&this.halo&&this.halo.attr({d:t.haloPath(this.options.states.hover.halo.size)})}}}),i(e,"Series/GraphLayoutComposition.js",[e["Core/Animation/AnimationUtilities.js"],e["Core/Globals.js"],e["Core/Utilities.js"]],function(t,e,i){let{setAnimation:s}=t,{composed:o}=e,{addEvent:r,pushUnique:n}=i;function a(){this.graphLayoutsLookup&&(this.graphLayoutsLookup.forEach(t=>{t.updateSimulation()}),this.redraw())}function h(){this.graphLayoutsLookup&&(this.graphLayoutsLookup.forEach(t=>{t.updateSimulation(!1)}),this.redraw())}function l(){this.graphLayoutsLookup&&this.graphLayoutsLookup.forEach(t=>{t.stop()})}function d(){let t,e=!1,i=i=>{i.maxIterations--&&isFinite(i.temperature)&&!i.isStable()&&!i.enableSimulation&&(i.beforeStep&&i.beforeStep(),i.step(),t=!1,e=!0)};if(this.graphLayoutsLookup){for(s(!1,this),this.graphLayoutsLookup.forEach(t=>t.start());!t;)t=!0,this.graphLayoutsLookup.forEach(i);e&&this.series.forEach(t=>{t&&t.layout&&t.render()})}}return{compose:function(t){n(o,"GraphLayout")&&(r(t,"afterPrint",a),r(t,"beforePrint",h),r(t,"predraw",l),r(t,"render",d))},integrations:{},layouts:{}}}),i(e,"Series/NodesComposition.js",[e["Core/Series/SeriesRegistry.js"],e["Core/Utilities.js"]],function(t,e){var i;let{series:{prototype:s,prototype:{pointClass:{prototype:o}}}}=t,{defined:r,extend:n,find:a,merge:h,pick:l}=e;return function(t){function e(){return this.data=[].concat(this.points||[],this.nodes),s.destroy.apply(this,arguments)}function i(){this.nodes&&(this.nodes.forEach(t=>{t.destroy()}),this.nodes.length=0),s.setData.apply(this,arguments)}function d(t){let e=arguments,i=this.isNode?this.linksTo.concat(this.linksFrom):[this.fromNode,this.toNode];"select"!==t&&i.forEach(t=>{t&&t.series&&(o.setState.apply(t,e),!t.isNode&&(t.fromNode.graphic&&o.setState.apply(t.fromNode,e),t.toNode&&t.toNode.graphic&&o.setState.apply(t.toNode,e)))}),o.setState.apply(this,e)}function p(t,e,i,s){let r=this.series.options.nodes,n=this.series.options.data,a=n&&n.length||0,d=n&&n[this.index];if(o.update.call(this,t,!this.isNode&&e,i,s),this.isNode){let t=(r||[]).reduce((t,e,i)=>this.id===e.id?i:t,-1),s=h(r&&r[t]||{},n&&n[this.index]||{});n&&(d?n[this.index]=d:n.length=a),r?t>=0?r[t]=s:r.push(s):this.series.options.nodes=[s],l(e,!0)&&this.series.chart.redraw(i)}}t.compose=function(t,s){let o=t.prototype,r=s.prototype;return o.setNodeState=d,o.setState=d,o.update=p,r.destroy=e,r.setData=i,s},t.createNode=function(t){let e=this.pointClass,i=(t,e)=>a(t,t=>t.id===e),s=i(this.nodes,t),o;if(!s){o=this.options.nodes&&i(this.options.nodes,t);let r=new e(this,n({className:"highcharts-node",isNode:!0,id:t,y:1},o));r.linksTo=[],r.linksFrom=[],r.getSum=function(){let t=0,e=0;return r.linksTo.forEach(e=>{t+=e.weight||0}),r.linksFrom.forEach(t=>{e+=t.weight||0}),Math.max(t,e)},r.offset=function(t,e){let i=0;for(let s=0;s<r[e].length;s++){if(r[e][s]===t)return i;i+=r[e][s].weight}},r.hasShape=function(){let t=0;return r.linksTo.forEach(e=>{e.outgoing&&t++}),!r.linksTo.length||t!==r.linksTo.length},r.index=this.nodes.push(r)-1,s=r}return s.formatPrefix="node",s.name=s.name||s.options.id||"",s.mass=l(s.options.mass,s.options.marker&&s.options.marker.radius,this.options.marker&&this.options.marker.radius,4),s},t.destroy=e,t.generatePoints=function(){let t=this.chart,e={};s.generatePoints.call(this),this.nodes||(this.nodes=[]),this.colorCounter=0,this.nodes.forEach(t=>{t.linksFrom.length=0,t.linksTo.length=0,t.level=t.options.level}),this.points.forEach(i=>{r(i.from)&&(e[i.from]||(e[i.from]=this.createNode(i.from)),e[i.from].linksFrom.push(i),i.fromNode=e[i.from],t.styledMode?i.colorIndex=l(i.options.colorIndex,e[i.from].colorIndex):i.color=i.options.color||e[i.from].color),r(i.to)&&(e[i.to]||(e[i.to]=this.createNode(i.to)),e[i.to].linksTo.push(i),i.toNode=e[i.to]),i.name=i.name||i.id},this),this.nodeLookup=e},t.setNodeState=d,t.updateNode=p}(i||(i={})),i}),i(e,"Series/Networkgraph/NetworkgraphPoint.js",[e["Series/NodesComposition.js"],e["Core/Series/SeriesRegistry.js"],e["Core/Utilities.js"]],function(t,e,i){let{series:{prototype:s,prototype:{pointClass:o}}}=e,{addEvent:r,css:n,defined:a,extend:h,pick:l}=i;class d extends o{destroy(){return this.isNode&&this.linksFrom.concat(this.linksTo).forEach(function(t){t.destroyElements&&t.destroyElements()}),this.series.layout.removeElementFromCollection(this,this.series.layout[this.isNode?"nodes":"links"]),o.prototype.destroy.apply(this,arguments)}getDegree(){let t=this.isNode?this.linksFrom.length+this.linksTo.length:0;return 0===t?1:t}getLinkAttributes(){let t=this.series.options.link,e=this.options;return{"stroke-width":l(e.width,t.width),stroke:e.color||t.color,dashstyle:e.dashStyle||t.dashStyle,opacity:l(e.opacity,t.opacity,1)}}getLinkPath(){let t=this.fromNode,e=this.toNode;return t.plotX>e.plotX&&(t=this.toNode,e=this.fromNode),[["M",t.plotX||0,t.plotY||0],["L",e.plotX||0,e.plotY||0]]}getMass(){let t=this.fromNode.mass,e=this.toNode.mass,i=t+e;return{fromNode:1-t/i,toNode:1-e/i}}constructor(t,e,i){super(t,e,i),this.series.options.draggable&&!this.series.chart.styledMode&&(r(this,"mouseOver",function(){n(this.series.chart.container,{cursor:"move"})}),r(this,"mouseOut",function(){n(this.series.chart.container,{cursor:"default"})}))}isValid(){return!this.isNode||a(this.id)}redrawLink(){let t;let e=this.getLinkPath();if(this.graphic){this.shapeArgs={d:e},this.series.chart.styledMode||(t=this.series.pointAttribs(this),this.graphic.attr(t),(this.dataLabels||[]).forEach(function(e){e&&e.attr({opacity:t.opacity})})),this.graphic.animate(this.shapeArgs);let i=e[0],s=e[1];"M"===i[0]&&"L"===s[0]&&(this.plotX=(i[1]+s[1])/2,this.plotY=(i[2]+s[2])/2)}}remove(t,e){let i=this.series,o=i.options.nodes||[],r,n=o.length;if(this.isNode){for(i.points=[],[].concat(this.linksFrom).concat(this.linksTo).forEach(function(t){(r=t.fromNode.linksFrom.indexOf(t))>-1&&t.fromNode.linksFrom.splice(r,1),(r=t.toNode.linksTo.indexOf(t))>-1&&t.toNode.linksTo.splice(r,1),s.removePoint.call(i,i.data.indexOf(t),!1,!1)}),i.points=i.data.slice(),i.nodes.splice(i.nodes.indexOf(this),1);n--;)if(o[n].id===this.options.id){i.options.nodes.splice(n,1);break}this&&this.destroy(),i.isDirty=!0,i.isDirtyData=!0,t&&i.chart.redraw(t)}else i.removePoint(i.data.indexOf(this),t,e)}renderLink(){let t;this.graphic||(this.graphic=this.series.chart.renderer.path(this.getLinkPath()).addClass(this.getClassName(),!0).add(this.series.group),this.series.chart.styledMode||(t=this.series.pointAttribs(this),this.graphic.attr(t),(this.dataLabels||[]).forEach(function(e){e&&e.attr({opacity:t.opacity})})))}}return h(d.prototype,{setState:t.setNodeState}),d}),i(e,"Series/Networkgraph/NetworkgraphSeriesDefaults.js",[],function(){return{stickyTracking:!1,inactiveOtherPoints:!0,marker:{enabled:!0,states:{inactive:{opacity:.3,animation:{duration:50}}}},states:{inactive:{linkOpacity:.3,animation:{duration:50}}},dataLabels:{formatter:function(){return this.key},linkFormatter:function(){return this.point.fromNode.name+"<br>"+this.point.toNode.name},linkTextPath:{enabled:!0},textPath:{enabled:!1},style:{transition:"opacity 2000ms"},defer:!0,animation:{defer:1e3}},link:{color:"rgba(100, 100, 100, 0.5)",width:1},draggable:!0,layoutAlgorithm:{initialPositions:"circle",initialPositionRadius:1,enableSimulation:!1,theta:.5,maxSpeed:10,approximation:"none",type:"reingold-fruchterman",integration:"euler",maxIterations:1e3,gravitationalConstant:.0625,friction:-.981},showInLegend:!1}}),i(e,"Series/Networkgraph/EulerIntegration.js",[],function(){return{attractive:function(t,e,i,s){let o=t.getMass(),r=i.x/s*e,n=i.y/s*e;t.fromNode.fixedPosition||(t.fromNode.dispX-=r*o.fromNode/t.fromNode.degree,t.fromNode.dispY-=n*o.fromNode/t.fromNode.degree),t.toNode.fixedPosition||(t.toNode.dispX+=r*o.toNode/t.toNode.degree,t.toNode.dispY+=n*o.toNode/t.toNode.degree)},attractiveForceFunction:function(t,e){return t*t/e},barycenter:function(){let t=this.options.gravitationalConstant,e=this.barycenter.xFactor,i=this.barycenter.yFactor;this.nodes.forEach(function(s){if(!s.fixedPosition){let o=s.getDegree(),r=o*(1+o/2);s.dispX+=(e-s.plotX)*t*r/s.degree,s.dispY+=(i-s.plotY)*t*r/s.degree}})},getK:function(t){return Math.pow(t.box.width*t.box.height/t.nodes.length,.3)},integrate:function(t,e){e.dispX+=e.dispX*t.options.friction,e.dispY+=e.dispY*t.options.friction;let i=e.temperature=t.vectorLength({x:e.dispX,y:e.dispY});0!==i&&(e.plotX+=e.dispX/i*Math.min(Math.abs(e.dispX),t.temperature),e.plotY+=e.dispY/i*Math.min(Math.abs(e.dispY),t.temperature))},repulsive:function(t,e,i,s){t.dispX+=i.x/s*e/t.degree,t.dispY+=i.y/s*e/t.degree},repulsiveForceFunction:function(t,e){return e*e/t}}}),i(e,"Series/Networkgraph/QuadTreeNode.js",[],function(){class t{constructor(t){this.body=!1,this.isEmpty=!1,this.isInternal=!1,this.nodes=[],this.box=t,this.boxSize=Math.min(t.width,t.height)}divideBox(){let e=this.box.width/2,i=this.box.height/2;this.nodes[0]=new t({left:this.box.left,top:this.box.top,width:e,height:i}),this.nodes[1]=new t({left:this.box.left+e,top:this.box.top,width:e,height:i}),this.nodes[2]=new t({left:this.box.left+e,top:this.box.top+i,width:e,height:i}),this.nodes[3]=new t({left:this.box.left,top:this.box.top+i,width:e,height:i})}getBoxPosition(t){let e=t.plotX<this.box.left+this.box.width/2,i=t.plotY<this.box.top+this.box.height/2;return e?i?0:3:i?1:2}insert(e,i){let s;this.isInternal?this.nodes[this.getBoxPosition(e)].insert(e,i-1):(this.isEmpty=!1,this.body?i?(this.isInternal=!0,this.divideBox(),!0!==this.body&&(this.nodes[this.getBoxPosition(this.body)].insert(this.body,i-1),this.body=!0),this.nodes[this.getBoxPosition(e)].insert(e,i-1)):((s=new t({top:e.plotX||NaN,left:e.plotY||NaN,width:.1,height:.1})).body=e,s.isInternal=!1,this.nodes.push(s)):(this.isInternal=!1,this.body=e))}updateMassAndCenter(){let t=0,e=0,i=0;if(this.isInternal){for(let s of this.nodes)s.isEmpty||(t+=s.mass,e+=s.plotX*s.mass,i+=s.plotY*s.mass);e/=t,i/=t}else this.body&&(t=this.body.mass,e=this.body.plotX,i=this.body.plotY);this.mass=t,this.plotX=e,this.plotY=i}}return t}),i(e,"Series/Networkgraph/QuadTree.js",[e["Series/Networkgraph/QuadTreeNode.js"]],function(t){return class{constructor(e,i,s,o){this.box={left:e,top:i,width:s,height:o},this.maxDepth=25,this.root=new t(this.box),this.root.isInternal=!0,this.root.isRoot=!0,this.root.divideBox()}calculateMassAndCenter(){this.visitNodeRecursive(null,null,function(t){t.updateMassAndCenter()})}insertNodes(t){for(let e of t)this.root.insert(e,this.maxDepth)}visitNodeRecursive(t,e,i){let s;if(t||(t=this.root),t===this.root&&e&&(s=e(t)),!1!==s){for(let o of t.nodes){if(o.isInternal){if(e&&(s=e(o)),!1===s)continue;this.visitNodeRecursive(o,e,i)}else o.body&&e&&e(o.body);i&&i(o)}t===this.root&&i&&i(t)}}}}),i(e,"Series/Networkgraph/VerletIntegration.js",[],function(){return{attractive:function(t,e,i){let s=t.getMass(),o=-i.x*e*this.diffTemperature,r=-i.y*e*this.diffTemperature;t.fromNode.fixedPosition||(t.fromNode.plotX-=o*s.fromNode/t.fromNode.degree,t.fromNode.plotY-=r*s.fromNode/t.fromNode.degree),t.toNode.fixedPosition||(t.toNode.plotX+=o*s.toNode/t.toNode.degree,t.toNode.plotY+=r*s.toNode/t.toNode.degree)},attractiveForceFunction:function(t,e){return(e-t)/t},barycenter:function(){let t=this.options.gravitationalConstant||0,e=(this.barycenter.xFactor-(this.box.left+this.box.width)/2)*t,i=(this.barycenter.yFactor-(this.box.top+this.box.height)/2)*t;this.nodes.forEach(function(t){t.fixedPosition||(t.plotX-=e/t.mass/t.degree,t.plotY-=i/t.mass/t.degree)})},getK:function(t){return Math.pow(t.box.width*t.box.height/t.nodes.length,.5)},integrate:function(t,e){let i=-t.options.friction,s=t.options.maxSpeed,o=e.prevX,r=e.prevY,n=(e.plotX+e.dispX-o)*i,a=(e.plotY+e.dispY-r)*i,h=Math.abs,l=h(n)/(n||1),d=h(a)/(a||1),p=l*Math.min(s,Math.abs(n)),u=d*Math.min(s,Math.abs(a));e.prevX=e.plotX+e.dispX,e.prevY=e.plotY+e.dispY,e.plotX+=p,e.plotY+=u,e.temperature=t.vectorLength({x:p,y:u})},repulsive:function(t,e,i){let s=e*this.diffTemperature/t.mass/t.degree;t.fixedPosition||(t.plotX+=i.x*s,t.plotY+=i.y*s)},repulsiveForceFunction:function(t,e){return(e-t)/t*(e>t?1:0)}}}),i(e,"Series/Networkgraph/ReingoldFruchtermanLayout.js",[e["Series/Networkgraph/EulerIntegration.js"],e["Core/Globals.js"],e["Series/GraphLayoutComposition.js"],e["Series/Networkgraph/QuadTree.js"],e["Core/Utilities.js"],e["Series/Networkgraph/VerletIntegration.js"]],function(t,e,i,s,o,r){let{win:n}=e,{clamp:a,defined:h,isFunction:l,fireEvent:d,pick:p}=o;class u{constructor(){this.box={},this.currentStep=0,this.initialRendering=!0,this.links=[],this.nodes=[],this.series=[],this.simulation=!1}static compose(e){i.compose(e),i.integrations.euler=t,i.integrations.verlet=r,i.layouts["reingold-fruchterman"]=u}init(t){this.options=t,this.nodes=[],this.links=[],this.series=[],this.box={x:0,y:0,width:0,height:0},this.setInitialRendering(!0),this.integration=i.integrations[t.integration],this.enableSimulation=t.enableSimulation,this.attractiveForce=p(t.attractiveForce,this.integration.attractiveForceFunction),this.repulsiveForce=p(t.repulsiveForce,this.integration.repulsiveForceFunction),this.approximation=t.approximation}updateSimulation(t){this.enableSimulation=p(t,this.options.enableSimulation)}start(){let t=this.series,e=this.options;this.currentStep=0,this.forces=t[0]&&t[0].forces||[],this.chart=t[0]&&t[0].chart,this.initialRendering&&(this.initPositions(),t.forEach(function(t){t.finishedAnimating=!0,t.render()})),this.setK(),this.resetSimulation(e),this.enableSimulation&&this.step()}step(){let t=this.series;for(let t of(this.currentStep++,"barnes-hut"===this.approximation&&(this.createQuadTree(),this.quadTree.calculateMassAndCenter()),this.forces||[]))this[t+"Forces"](this.temperature);if(this.applyLimits(),this.temperature=this.coolDown(this.startTemperature,this.diffTemperature,this.currentStep),this.prevSystemTemperature=this.systemTemperature,this.systemTemperature=this.getSystemTemperature(),this.enableSimulation){for(let e of t)e.chart&&e.render();this.maxIterations--&&isFinite(this.temperature)&&!this.isStable()?(this.simulation&&n.cancelAnimationFrame(this.simulation),this.simulation=n.requestAnimationFrame(()=>this.step())):(this.simulation=!1,this.series.forEach(t=>{d(t,"afterSimulation")}))}}stop(){this.simulation&&n.cancelAnimationFrame(this.simulation)}setArea(t,e,i,s){this.box={left:t,top:e,width:i,height:s}}setK(){this.k=this.options.linkLength||this.integration.getK(this)}addElementsToCollection(t,e){for(let i of t)-1===e.indexOf(i)&&e.push(i)}removeElementFromCollection(t,e){let i=e.indexOf(t);-1!==i&&e.splice(i,1)}clear(){this.nodes.length=0,this.links.length=0,this.series.length=0,this.resetSimulation()}resetSimulation(){this.forcedStop=!1,this.systemTemperature=0,this.setMaxIterations(),this.setTemperature(),this.setDiffTemperature()}restartSimulation(){this.simulation?this.resetSimulation():(this.setInitialRendering(!1),this.enableSimulation?this.start():this.setMaxIterations(1),this.chart&&this.chart.redraw(),this.setInitialRendering(!0))}setMaxIterations(t){this.maxIterations=p(t,this.options.maxIterations)}setTemperature(){this.temperature=this.startTemperature=Math.sqrt(this.nodes.length)}setDiffTemperature(){this.diffTemperature=this.startTemperature/(this.options.maxIterations+1)}setInitialRendering(t){this.initialRendering=t}createQuadTree(){this.quadTree=new s(this.box.left,this.box.top,this.box.width,this.box.height),this.quadTree.insertNodes(this.nodes)}initPositions(){let t=this.options.initialPositions;if(l(t))for(let e of(t.call(this),this.nodes))h(e.prevX)||(e.prevX=e.plotX),h(e.prevY)||(e.prevY=e.plotY),e.dispX=0,e.dispY=0;else"circle"===t?this.setCircularPositions():this.setRandomPositions()}setCircularPositions(){let t;let e=this.box,i=this.nodes,s=2*Math.PI/(i.length+1),o=i.filter(function(t){return 0===t.linksTo.length}),r={},n=this.options.initialPositionRadius,a=t=>{for(let e of t.linksFrom||[])r[e.toNode.id]||(r[e.toNode.id]=!0,h.push(e.toNode),a(e.toNode))},h=[];for(let t of o)h.push(t),a(t);if(h.length)for(let t of i)-1===h.indexOf(t)&&h.push(t);else h=i;for(let i=0,o=h.length;i<o;++i)(t=h[i]).plotX=t.prevX=p(t.plotX,e.width/2+n*Math.cos(i*s)),t.plotY=t.prevY=p(t.plotY,e.height/2+n*Math.sin(i*s)),t.dispX=0,t.dispY=0}setRandomPositions(){let t;let e=this.box,i=this.nodes,s=i.length+1,o=t=>{let e=t*t/Math.PI;return e-Math.floor(e)};for(let r=0,n=i.length;r<n;++r)(t=i[r]).plotX=t.prevX=p(t.plotX,e.width*o(r)),t.plotY=t.prevY=p(t.plotY,e.height*o(s+r)),t.dispX=0,t.dispY=0}force(t,...e){this.integration[t].apply(this,e)}barycenterForces(){this.getBarycenter(),this.force("barycenter")}getBarycenter(){let t=0,e=0,i=0;for(let s of this.nodes)e+=s.plotX*s.mass,i+=s.plotY*s.mass,t+=s.mass;return this.barycenter={x:e,y:i,xFactor:e/t,yFactor:i/t},this.barycenter}barnesHutApproximation(t,e){let i,s;let o=this.getDistXY(t,e),r=this.vectorLength(o);return t!==e&&0!==r&&(e.isInternal?e.boxSize/r<this.options.theta&&0!==r?(s=this.repulsiveForce(r,this.k),this.force("repulsive",t,s*e.mass,o,r),i=!1):i=!0:(s=this.repulsiveForce(r,this.k),this.force("repulsive",t,s*e.mass,o,r))),i}repulsiveForces(){if("barnes-hut"===this.approximation)for(let t of this.nodes)this.quadTree.visitNodeRecursive(null,e=>this.barnesHutApproximation(t,e));else{let t,e,i;for(let s of this.nodes)for(let o of this.nodes)s===o||s.fixedPosition||(i=this.getDistXY(s,o),0!==(e=this.vectorLength(i))&&(t=this.repulsiveForce(e,this.k),this.force("repulsive",s,t*o.mass,i,e)))}}attractiveForces(){let t,e,i;for(let s of this.links)s.fromNode&&s.toNode&&(t=this.getDistXY(s.fromNode,s.toNode),0!==(e=this.vectorLength(t))&&(i=this.attractiveForce(e,this.k),this.force("attractive",s,i,t,e)))}applyLimits(){for(let t of this.nodes)t.fixedPosition||(this.integration.integrate(this,t),this.applyLimitBox(t,this.box),t.dispX=0,t.dispY=0)}applyLimitBox(t,e){let i=t.radius;t.plotX=a(t.plotX,e.left+i,e.width-i),t.plotY=a(t.plotY,e.top+i,e.height-i)}coolDown(t,e,i){return t-e*i}isStable(){return 1e-5>Math.abs(this.systemTemperature-this.prevSystemTemperature)||this.temperature<=0}getSystemTemperature(){let t=0;for(let e of this.nodes)t+=e.temperature;return t}vectorLength(t){return Math.sqrt(t.x*t.x+t.y*t.y)}getDistR(t,e){let i=this.getDistXY(t,e);return this.vectorLength(i)}getDistXY(t,e){let i=t.plotX-e.plotX,s=t.plotY-e.plotY;return{x:i,y:s,absX:Math.abs(i),absY:Math.abs(s)}}}return u}),i(e,"Series/SimulationSeriesUtilities.js",[e["Core/Utilities.js"],e["Core/Animation/AnimationUtilities.js"]],function(t,e){let{merge:i,syncTimeout:s}=t,{animObject:o}=e;return{initDataLabels:function(){let t=this.options.dataLabels;if(!this.dataLabelsGroup){let e=this.initDataLabelsGroup();return!this.chart.styledMode&&t?.style&&e.css(t.style),e.attr({opacity:0}),this.visible&&e.show(),e}return this.dataLabelsGroup.attr(i({opacity:1},this.getPlotBox("data-labels"))),this.dataLabelsGroup},initDataLabelsDefer:function(){let t=this.options.dataLabels;t?.defer&&this.options.layoutAlgorithm?.enableSimulation?s(()=>{this.deferDataLabels=!1},t?o(t.animation).defer:0):this.deferDataLabels=!1}}}),i(e,"Series/Networkgraph/NetworkgraphSeries.js",[e["Series/DragNodesComposition.js"],e["Series/GraphLayoutComposition.js"],e["Core/Globals.js"],e["Series/Networkgraph/NetworkgraphPoint.js"],e["Series/Networkgraph/NetworkgraphSeriesDefaults.js"],e["Series/NodesComposition.js"],e["Series/Networkgraph/ReingoldFruchtermanLayout.js"],e["Core/Series/SeriesRegistry.js"],e["Series/SimulationSeriesUtilities.js"],e["Core/Utilities.js"]],function(t,e,i,s,o,r,n,a,h,l){let{noop:d}=i,{series:p,seriesTypes:{column:{prototype:u},line:{prototype:c}}}=a,{initDataLabels:f,initDataLabelsDefer:m}=h,{addEvent:g,defined:y,extend:b,merge:x,pick:N}=l;class k extends p{constructor(){super(...arguments),this.deferDataLabels=!0}static compose(e){t.compose(e),n.compose(e)}deferLayout(){let t=this.options.layoutAlgorithm,i=this.chart.options.chart,s,o=this.chart.graphLayoutsStorage,r=this.chart.graphLayoutsLookup;this.visible&&(o||(this.chart.graphLayoutsStorage=o={},this.chart.graphLayoutsLookup=r=[]),(s=o[t.type])||(t.enableSimulation=y(i.forExport)?!i.forExport:t.enableSimulation,o[t.type]=s=new e.layouts[t.type],s.init(t),r.splice(s.index,0,s)),this.layout=s,s.setArea(0,0,this.chart.plotWidth,this.chart.plotHeight),s.addElementsToCollection([this],s.series),s.addElementsToCollection(this.nodes,s.nodes),s.addElementsToCollection(this.points,s.links))}destroy(){this.layout&&this.layout.removeElementFromCollection(this,this.layout.series),r.destroy.call(this)}drawDataLabels(){let t;if(this.deferDataLabels)return;let e=this.options.dataLabels;e?.textPath&&(t=e.textPath),p.prototype.drawDataLabels.call(this,this.nodes),e?.linkTextPath&&(e.textPath=e.linkTextPath),p.prototype.drawDataLabels.call(this,this.data),e?.textPath&&(e.textPath=t)}generatePoints(){let t,e;for(r.generatePoints.apply(this,arguments),this.options.nodes&&this.options.nodes.forEach(function(t){this.nodeLookup[t.id]||(this.nodeLookup[t.id]=this.createNode(t.id))},this),e=this.nodes.length-1;e>=0;e--)(t=this.nodes[e]).degree=t.getDegree(),t.radius=N(t.marker&&t.marker.radius,this.options.marker&&this.options.marker.radius,0),this.nodeLookup[t.id]||t.remove();this.data.forEach(function(t){t.formatPrefix="link"}),this.indexateNodes()}getPointsCollection(){return this.nodes||[]}indexateNodes(){this.nodes.forEach(function(t,e){t.index=e})}init(t,e){return super.init(t,e),m.call(this),g(this,"updatedData",()=>{this.layout&&this.layout.stop()}),g(this,"afterUpdate",()=>{this.nodes.forEach(t=>{t&&t.series&&t.resolveColor()})}),g(this,"afterSimulation",function(){this.deferDataLabels=!1,this.drawDataLabels()}),this}markerAttribs(t,e){let i=p.prototype.markerAttribs.call(this,t,e);return y(t.plotY)||(i.y=0),i.x=(t.plotX||0)-(i.width||0)/2,i}pointAttribs(t,e){let i=e||t&&t.state||"normal",s=this.options.states[i],o=p.prototype.pointAttribs.call(this,t,i);return t&&!t.isNode&&(o=t.getLinkAttributes(),s&&(o={stroke:s.linkColor||o.stroke,dashstyle:s.linkDashStyle||o.dashstyle,opacity:N(s.linkOpacity,o.opacity),"stroke-width":s.linkColor||o["stroke-width"]})),o}render(){let t=this.points,e=this.chart.hoverPoint,i=[];this.points=this.nodes,c.render.call(this),this.points=t,t.forEach(function(t){t.fromNode&&t.toNode&&(t.renderLink(),t.redrawLink())}),e&&e.series===this&&this.redrawHalo(e),this.chart.hasRendered&&!this.options.dataLabels.allowOverlap&&(this.nodes.concat(this.points).forEach(function(t){t.dataLabel&&i.push(t.dataLabel)}),this.chart.hideOverlappingLabels(i))}setState(t,e){e?(this.points=this.nodes.concat(this.data),p.prototype.setState.apply(this,arguments),this.points=this.data):p.prototype.setState.apply(this,arguments),this.layout.simulation||t||this.render()}translate(){this.processedXData||this.processData(),this.generatePoints(),this.deferLayout(),this.nodes.forEach(function(t){t.isInside=!0,t.linksFrom.forEach(function(t){t.shapeType="path",t.y=1})})}}return k.defaultOptions=x(p.defaultOptions,o),b(k.prototype,{pointClass:s,animate:void 0,directTouch:!0,drawGraph:void 0,forces:["barycenter","repulsive","attractive"],hasDraggableNodes:!0,isCartesian:!1,noSharedTooltip:!0,pointArrayMap:["from","to"],requireSorting:!1,trackerGroups:["group","markerGroup","dataLabelsGroup"],initDataLabels:f,buildKDTree:d,createNode:r.createNode,drawTracker:u.drawTracker,onMouseDown:t.onMouseDown,onMouseMove:t.onMouseMove,onMouseUp:t.onMouseUp,redrawHalo:t.redrawHalo}),a.registerSeriesType("networkgraph",k),k}),i(e,"masters/modules/networkgraph.src.js",[e["Core/Globals.js"],e["Series/Networkgraph/NetworkgraphSeries.js"]],function(t,e){return e.compose(t.Chart),t})});
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highcharts JS v11.4.1 (2024-04-04)
2
+ * @license Highcharts JS v11.4.3 (2024-05-22)
3
3
  *
4
4
  * Force directed graph module
5
5
  *
@@ -1310,7 +1310,7 @@
1310
1310
  *
1311
1311
  * @type {Array<Object|Array|number>}
1312
1312
  * @extends series.line.data
1313
- * @excluding drilldown,marker,x,y,draDrop
1313
+ * @excluding drilldown,marker,x,y,dragDrop
1314
1314
  * @sample {highcharts} highcharts/chart/reflow-true/
1315
1315
  * Numerical values
1316
1316
  * @sample {highcharts} highcharts/series/data-array-of-arrays/
@@ -2625,7 +2625,7 @@
2625
2625
  const nodes = this.nodes;
2626
2626
  for (const node of nodes) {
2627
2627
  if (node.fixedPosition) {
2628
- return;
2628
+ continue;
2629
2629
  }
2630
2630
  this.integration.integrate(this, node);
2631
2631
  this.applyLimitBox(node, this.box);
@@ -1,5 +1,5 @@
1
1
  !/**
2
- * Highcharts JS v11.4.1 (2024-04-04)
2
+ * Highcharts JS v11.4.3 (2024-05-22)
3
3
  *
4
4
  * Plugin for displaying a message when there is no data visible in chart.
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highcharts JS v11.4.1 (2024-04-04)
2
+ * @license Highcharts JS v11.4.3 (2024-05-22)
3
3
  *
4
4
  * Plugin for displaying a message when there is no data visible in chart.
5
5
  *
@@ -1,9 +1,9 @@
1
1
  !/**
2
- * Highcharts JS v11.4.1 (2024-04-04)
2
+ * Highcharts JS v11.4.3 (2024-05-22)
3
3
  *
4
4
  * Client side exporting module
5
5
  *
6
6
  * (c) 2015-2024 Torstein Honsi / Oystein Moseng
7
7
  *
8
8
  * License: www.highcharts.com/license
9
- */function(t){"object"==typeof module&&module.exports?(t.default=t,module.exports=t):"function"==typeof define&&define.amd?define("highcharts/modules/offline-exporting",["highcharts","highcharts/modules/exporting"],function(e){return t(e),t.Highcharts=e,t}):t("undefined"!=typeof Highcharts?Highcharts:void 0)}(function(t){"use strict";var e=t?t._modules:{};function o(t,e,o,n){t.hasOwnProperty(e)||(t[e]=n.apply(null,o),"function"==typeof CustomEvent&&window.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:e,module:t[e]}})))}o(e,"Extensions/DownloadURL.js",[e["Core/Globals.js"]],function(t){let{isSafari:e,win:o,win:{document:n}}=t,i=o.URL||o.webkitURL||o;function r(t){let e=t.replace(/filename=.*;/,"").match(/data:([^;]*)(;base64)?,([0-9A-Za-z+/]+)/);if(e&&e.length>3&&o.atob&&o.ArrayBuffer&&o.Uint8Array&&o.Blob&&i.createObjectURL){let t=o.atob(e[3]),n=new o.ArrayBuffer(t.length),r=new o.Uint8Array(n);for(let e=0;e<r.length;++e)r[e]=t.charCodeAt(e);return i.createObjectURL(new o.Blob([r],{type:e[1]}))}}return{dataURLtoBlob:r,downloadURL:function(t,i){let l=o.navigator,a=n.createElement("a");if("string"!=typeof t&&!(t instanceof String)&&l.msSaveOrOpenBlob){l.msSaveOrOpenBlob(t,i);return}t=""+t;let s=/Edge\/\d+/.test(l.userAgent);if((e&&"string"==typeof t&&0===t.indexOf("data:application/pdf")||s||t.length>2e6)&&!(t=r(t)||""))throw Error("Failed to convert to blob");if(void 0!==a.download)a.href=t,a.download=i,n.body.appendChild(a),a.click(),n.body.removeChild(a);else try{if(!o.open(t,"chart"))throw Error("Failed to open window")}catch{o.location.href=t}}}}),o(e,"Extensions/OfflineExporting/OfflineExportingDefaults.js",[],function(){return{libURL:"https://code.highcharts.com/11.4.1/lib/",menuItemDefinitions:{downloadPNG:{textKey:"downloadPNG",onclick:function(){this.exportChartLocal()}},downloadJPEG:{textKey:"downloadJPEG",onclick:function(){this.exportChartLocal({type:"image/jpeg"})}},downloadSVG:{textKey:"downloadSVG",onclick:function(){this.exportChartLocal({type:"image/svg+xml"})}},downloadPDF:{textKey:"downloadPDF",onclick:function(){this.exportChartLocal({type:"application/pdf"})}}}}}),o(e,"Extensions/OfflineExporting/OfflineExporting.js",[e["Core/Renderer/HTML/AST.js"],e["Core/Chart/Chart.js"],e["Core/Defaults.js"],e["Extensions/DownloadURL.js"],e["Extensions/Exporting/Exporting.js"],e["Core/Globals.js"],e["Core/HttpUtilities.js"],e["Extensions/OfflineExporting/OfflineExportingDefaults.js"],e["Core/Utilities.js"]],function(t,e,o,n,i,r,l,a,s){var c;let{defaultOptions:d}=o,{downloadURL:f}=n,{doc:g,win:h}=r,{ajax:p}=l,{addEvent:u,error:m,extend:y,fireEvent:x,merge:b}=s;return t.allowedAttributes.push("data-z-index","fill-opacity","filter","rx","ry","stroke-dasharray","stroke-linejoin","stroke-opacity","text-anchor","transform","version","viewBox","visibility","xmlns","xmlns:xlink"),t.allowedTags.push("desc","clippath","g"),function(e){function o(t,o){let n=this,l=b(n.options.exporting,t),a=function(t){!1===l.fallbackToExportServer?l.error?l.error(l,t):m(28,!0):n.exportChart(l)};if(r.isMS&&n.styledMode&&!i.inlineAllowlist.length&&i.inlineAllowlist.push(/^blockSize/,/^border/,/^caretColor/,/^color/,/^columnRule/,/^columnRuleColor/,/^cssFloat/,/^cursor/,/^fill$/,/^fillOpacity/,/^font/,/^inlineSize/,/^length/,/^lineHeight/,/^opacity/,/^outline/,/^parentRule/,/^rx$/,/^ry$/,/^stroke/,/^textAlign/,/^textAnchor/,/^textDecoration/,/^transform/,/^vectorEffect/,/^visibility/,/^x$/,/^y$/),r.isMS&&("application/pdf"===l.type||n.container.getElementsByTagName("image").length&&"image/svg+xml"!==l.type)||"application/pdf"===l.type&&[].some.call(n.container.getElementsByTagName("image"),function(t){let e=t.getAttribute("href");return""!==e&&"string"==typeof e&&0!==e.indexOf("data:")})){a(Error("Image type not supported for this chart/browser."));return}n.getSVGForLocalExport(l,o||{},a,function(t){t.indexOf("<foreignObject")>-1&&"image/svg+xml"!==l.type&&(r.isMS||"application/pdf"===l.type)?a(Error("Image type not supported for charts with embedded HTML")):e.downloadSVGLocal(t,y({filename:n.getFilename()},l),a,()=>x(n,"exportChartLocalSuccess"))})}function n(t,e){let o=g.getElementsByTagName("head")[0],n=g.createElement("script");n.type="text/javascript",n.src=t,n.onload=e,n.onerror=function(){m("Error loading script "+t)},o.appendChild(n)}function l(t,o,n,i){let r=this,l=t=>r.sanitizeSVG(t,f),a=()=>{h&&m===p&&i(l(d.innerHTML))},s=(t,e,o)=>{++m,o.imageElement.setAttributeNS("http://www.w3.org/1999/xlink","href",t),a()},c,d,f,g=null,h,p=0,m=0;r.unbindGetSVG=u(r,"getSVG",t=>{f=t.chartCopy.options,p=(h=(d=t.chartCopy.container.cloneNode(!0))&&d.getElementsByTagName("image")||[]).length}),r.getSVGForExport(t,o);try{if(!h||!h.length){i(l(d.innerHTML));return}for(let o=0;o<h.length;o++)(g=(c=h[o]).getAttributeNS("http://www.w3.org/1999/xlink","href"))?e.imageToDataUrl(g,"image/png",{imageElement:c},t.scale,s,n,n,n):(m++,c.parentNode.removeChild(c),o--,a())}catch(t){n(t)}r.unbindGetSVG()}function s(t,o,n,i,r,l,a,s,c){let d=new h.Image,f,p=()=>{setTimeout(function(){let e;let l=g.createElement("canvas"),s=l.getContext&&l.getContext("2d");try{if(s){l.height=d.height*i,l.width=d.width*i,s.drawImage(d,0,0,l.width,l.height);try{e=l.toDataURL(o),r(e,o,n,i)}catch(e){f(t,o,n,i)}}else a(t,o,n,i)}finally{c&&c(t,o,n,i)}},e.loadEventDeferDelay)},u=()=>{s(t,o,n,i),c&&c(t,o,n,i)};f=()=>{d=new h.Image,f=l,d.crossOrigin="Anonymous",d.onload=p,d.onerror=u,d.src=t},d.onload=p,d.onerror=u,d.src=t}function c(t){let o=h.navigator.userAgent,n=o.indexOf("WebKit")>-1&&0>o.indexOf("Chrome");try{if(!n&&-1===t.indexOf("<foreignObject"))return e.domurl.createObjectURL(new h.Blob([t],{type:"image/svg+xml;charset-utf-16"}))}catch(t){}return"data:image/svg+xml;charset=UTF-8,"+encodeURIComponent(t)}function w(t,e,o,n){let i=(Number(t.getAttribute("width"))+2*e)*o,r=(Number(t.getAttribute("height"))+2*e)*o,l=new h.jspdf.jsPDF(r>i?"p":"l","pt",[i,r]);[].forEach.call(t.querySelectorAll('*[visibility="hidden"]'),function(t){t.parentNode.removeChild(t)});let a=t.querySelectorAll("linearGradient");for(let t=0;t<a.length;t++){let e=a[t].querySelectorAll("stop"),o=0;for(;o<e.length&&"0"===e[o].getAttribute("offset")&&"0"===e[o+1].getAttribute("offset");)e[o].remove(),o++}[].forEach.call(t.querySelectorAll("tspan"),t=>{"​"===t.textContent&&(t.textContent=" ",t.setAttribute("dx",-5))}),l.svg(t,{x:0,y:0,width:i,height:r,removeInvalid:!0}).then(()=>n(l.output("datauristring")))}e.CanVGRenderer={},e.domurl=h.URL||h.webkitURL||h,e.loadEventDeferDelay=r.isMS?150:0,e.compose=function(t){let e=t.prototype;return e.exportChartLocal||(e.getSVGForLocalExport=l,e.exportChartLocal=o,b(!0,d.exporting,a)),t},e.downloadSVGLocal=function(o,i,r,l){let a=g.createElement("div"),u=i.type||"image/png",m=(i.filename||"chart")+"."+("image/svg+xml"===u?"svg":u.split("/")[1]),y=i.scale||1,x,b,v,E=i.libURL||d.exporting.libURL,C=!0,L=i.pdfFont;E="/"!==E.slice(-1)?E+"/":E;let S=(t,e)=>{let o,n;let i=(t,e)=>{h.jspdf.jsPDF.API.events.push(["initialized",function(){this.addFileToVFS(t,e),this.addFont(t,"HighchartsFont",t),this.getFontList().HighchartsFont||this.setFont("HighchartsFont")}])};L&&(n=t.textContent||"",!/[^\u0000-\u007F\u200B]+/.test(n))&&(L=void 0);let r=["normal","italic","bold","bolditalic"],l=()=>{let t=r.shift();if(!t)return e();let n=L&&L[t];n?p({url:n,responseType:"blob",success:(e,n)=>{let r=new FileReader;r.onloadend=function(){if("string"==typeof this.result){let e=this.result.split(",")[1];i(t,e),"normal"===t&&(o=e)}l()},r.readAsDataURL(n.response)},error:l}):(o&&i(t,o),l())};l()},j=()=>{let e,n;t.setElementHTML(a,o);let i=a.getElementsByTagName("text"),s=function(t,e){let o=t;for(;o&&o!==a;){if(o.style[e]){let n=o.style[e];"fontSize"===e&&/em$/.test(n)&&(n=Math.round(16*parseFloat(n))+"px"),t.style[e]=n;break}o=o.parentNode}};[].forEach.call(i,function(t){for(["fontFamily","fontSize"].forEach(e=>{s(t,e)}),t.style.fontFamily=L&&L.normal?"HighchartsFont":String(t.style.fontFamily&&t.style.fontFamily.split(" ").splice(-1)),e=t.getElementsByTagName("title"),[].forEach.call(e,function(e){t.removeChild(e)}),n=t.getElementsByClassName("highcharts-text-outline");n.length>0;)t.removeChild(n[0])});let c=a.querySelector("svg");c&&S(c,()=>{w(c,0,y,t=>{try{f(t,m),l&&l()}catch(t){r(t)}})})};if("image/svg+xml"===u)try{void 0!==h.MSBlobBuilder?((b=new h.MSBlobBuilder).append(o),x=b.getBlob("image/svg+xml")):x=c(o),f(x,m),l&&l()}catch(t){r(t)}else"application/pdf"===u?h.jspdf&&h.jspdf.jsPDF?j():(C=!0,n(E+"jspdf.js",function(){n(E+"svg2pdf.js",j)})):(x=c(o),v=function(){try{e.domurl.revokeObjectURL(x)}catch(t){}},s(x,u,{},y,function(t){try{f(t,m),l&&l()}catch(t){r(t)}},function(){let t=g.createElement("canvas"),e=t.getContext("2d"),i=o.match(/^<svg[^>]*width\s*=\s*\"?(\d+)\"?[^>]*>/)[1]*y,a=o.match(/^<svg[^>]*height\s*=\s*\"?(\d+)\"?[^>]*>/)[1]*y,s=function(){h.canvg.Canvg.fromString(e,o).start();try{f(h.navigator.msSaveOrOpenBlob?t.msToBlob():t.toDataURL(u),m),l&&l()}catch(t){r(t)}finally{v()}};t.width=i,t.height=a,h.canvg?s():(C=!0,n(E+"canvg.js",function(){s()}))},r,r,function(){C&&v()}))},e.getScript=n,e.imageToDataUrl=s,e.svgToDataUrl=c,e.svgToPdf=w}(c||(c={})),c}),o(e,"masters/modules/offline-exporting.src.js",[e["Core/Globals.js"],e["Extensions/DownloadURL.js"],e["Extensions/OfflineExporting/OfflineExporting.js"]],function(t,e,o){return t.dataURLtoBlob=t.dataURLtoBlob||e.dataURLtoBlob,t.downloadSVGLocal=o.downloadSVGLocal,t.downloadURL=t.downloadURL||e.downloadURL,o.compose(t.Chart),t})});
9
+ */function(t){"object"==typeof module&&module.exports?(t.default=t,module.exports=t):"function"==typeof define&&define.amd?define("highcharts/modules/offline-exporting",["highcharts","highcharts/modules/exporting"],function(e){return t(e),t.Highcharts=e,t}):t("undefined"!=typeof Highcharts?Highcharts:void 0)}(function(t){"use strict";var e=t?t._modules:{};function o(t,e,o,n){t.hasOwnProperty(e)||(t[e]=n.apply(null,o),"function"==typeof CustomEvent&&window.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:e,module:t[e]}})))}o(e,"Extensions/DownloadURL.js",[e["Core/Globals.js"]],function(t){let{isSafari:e,win:o,win:{document:n}}=t,i=o.URL||o.webkitURL||o;function r(t){let e=t.replace(/filename=.*;/,"").match(/data:([^;]*)(;base64)?,([0-9A-Za-z+/]+)/);if(e&&e.length>3&&o.atob&&o.ArrayBuffer&&o.Uint8Array&&o.Blob&&i.createObjectURL){let t=o.atob(e[3]),n=new o.ArrayBuffer(t.length),r=new o.Uint8Array(n);for(let e=0;e<r.length;++e)r[e]=t.charCodeAt(e);return i.createObjectURL(new o.Blob([r],{type:e[1]}))}}return{dataURLtoBlob:r,downloadURL:function(t,i){let l=o.navigator,a=n.createElement("a");if("string"!=typeof t&&!(t instanceof String)&&l.msSaveOrOpenBlob){l.msSaveOrOpenBlob(t,i);return}if(t=""+t,l.userAgent.length>1e3)throw Error("Input too long");let s=/Edge\/\d+/.test(l.userAgent);if((e&&"string"==typeof t&&0===t.indexOf("data:application/pdf")||s||t.length>2e6)&&!(t=r(t)||""))throw Error("Failed to convert to blob");if(void 0!==a.download)a.href=t,a.download=i,n.body.appendChild(a),a.click(),n.body.removeChild(a);else try{if(!o.open(t,"chart"))throw Error("Failed to open window")}catch{o.location.href=t}}}}),o(e,"Extensions/OfflineExporting/OfflineExportingDefaults.js",[],function(){return{libURL:"https://code.highcharts.com/11.4.3/lib/",menuItemDefinitions:{downloadPNG:{textKey:"downloadPNG",onclick:function(){this.exportChartLocal()}},downloadJPEG:{textKey:"downloadJPEG",onclick:function(){this.exportChartLocal({type:"image/jpeg"})}},downloadSVG:{textKey:"downloadSVG",onclick:function(){this.exportChartLocal({type:"image/svg+xml"})}},downloadPDF:{textKey:"downloadPDF",onclick:function(){this.exportChartLocal({type:"application/pdf"})}}}}}),o(e,"Extensions/OfflineExporting/OfflineExporting.js",[e["Core/Renderer/HTML/AST.js"],e["Core/Chart/Chart.js"],e["Core/Defaults.js"],e["Extensions/DownloadURL.js"],e["Extensions/Exporting/Exporting.js"],e["Core/Globals.js"],e["Core/HttpUtilities.js"],e["Extensions/OfflineExporting/OfflineExportingDefaults.js"],e["Core/Utilities.js"]],function(t,e,o,n,i,r,l,a,s){var c;let{defaultOptions:d}=o,{downloadURL:f}=n,{doc:g,win:h}=r,{ajax:p}=l,{addEvent:u,error:m,extend:y,fireEvent:x,merge:w}=s;return t.allowedAttributes.push("data-z-index","fill-opacity","filter","rx","ry","stroke-dasharray","stroke-linejoin","stroke-opacity","text-anchor","transform","version","viewBox","visibility","xmlns","xmlns:xlink"),t.allowedTags.push("desc","clippath","g"),function(e){function o(t,o){let n=this,l=w(n.options.exporting,t),a=function(t){!1===l.fallbackToExportServer?l.error?l.error(l,t):m(28,!0):n.exportChart(l)};if(r.isMS&&n.styledMode&&!i.inlineAllowlist.length&&i.inlineAllowlist.push(/^blockSize/,/^border/,/^caretColor/,/^color/,/^columnRule/,/^columnRuleColor/,/^cssFloat/,/^cursor/,/^fill$/,/^fillOpacity/,/^font/,/^inlineSize/,/^length/,/^lineHeight/,/^opacity/,/^outline/,/^parentRule/,/^rx$/,/^ry$/,/^stroke/,/^textAlign/,/^textAnchor/,/^textDecoration/,/^transform/,/^vectorEffect/,/^visibility/,/^x$/,/^y$/),r.isMS&&("application/pdf"===l.type||n.container.getElementsByTagName("image").length&&"image/svg+xml"!==l.type)||"application/pdf"===l.type&&[].some.call(n.container.getElementsByTagName("image"),function(t){let e=t.getAttribute("href");return""!==e&&"string"==typeof e&&0!==e.indexOf("data:")})){a(Error("Image type not supported for this chart/browser."));return}n.getSVGForLocalExport(l,o||{},a,function(t){t.indexOf("<foreignObject")>-1&&"image/svg+xml"!==l.type&&(r.isMS||"application/pdf"===l.type)?a(Error("Image type not supported for charts with embedded HTML")):e.downloadSVGLocal(t,y({filename:n.getFilename()},l),a,()=>x(n,"exportChartLocalSuccess"))})}function n(t,e){let o=g.getElementsByTagName("head")[0],n=g.createElement("script");n.type="text/javascript",n.src=t,n.onload=e,n.onerror=function(){m("Error loading script "+t)},o.appendChild(n)}function l(t,o,n,i){let r=this,l=t=>r.sanitizeSVG(t,f),a=()=>{h&&m===p&&i(l(d.innerHTML))},s=(t,e,o)=>{++m,o.imageElement.setAttributeNS("http://www.w3.org/1999/xlink","href",t),a()},c,d,f,g=null,h,p=0,m=0;r.unbindGetSVG=u(r,"getSVG",t=>{f=t.chartCopy.options,p=(h=(d=t.chartCopy.container.cloneNode(!0))&&d.getElementsByTagName("image")||[]).length}),r.getSVGForExport(t,o);try{if(!h||!h.length){i(l(d.innerHTML));return}for(let o=0;o<h.length;o++)(g=(c=h[o]).getAttributeNS("http://www.w3.org/1999/xlink","href"))?e.imageToDataUrl(g,"image/png",{imageElement:c},t.scale,s,n,n,n):(m++,c.parentNode.removeChild(c),o--,a())}catch(t){n(t)}r.unbindGetSVG()}function s(t,o,n,i,r,l,a,s,c){let d=new h.Image,f,p=()=>{setTimeout(function(){let e;let l=g.createElement("canvas"),s=l.getContext&&l.getContext("2d");try{if(s){l.height=d.height*i,l.width=d.width*i,s.drawImage(d,0,0,l.width,l.height);try{e=l.toDataURL(o),r(e,o,n,i)}catch(e){f(t,o,n,i)}}else a(t,o,n,i)}finally{c&&c(t,o,n,i)}},e.loadEventDeferDelay)},u=()=>{s(t,o,n,i),c&&c(t,o,n,i)};f=()=>{d=new h.Image,f=l,d.crossOrigin="Anonymous",d.onload=p,d.onerror=u,d.src=t},d.onload=p,d.onerror=u,d.src=t}function c(t){let o=h.navigator.userAgent,n=o.indexOf("WebKit")>-1&&0>o.indexOf("Chrome");try{if(!n&&-1===t.indexOf("<foreignObject"))return e.domurl.createObjectURL(new h.Blob([t],{type:"image/svg+xml;charset-utf-16"}))}catch(t){}return"data:image/svg+xml;charset=UTF-8,"+encodeURIComponent(t)}function b(t,e,o,n){let i=(Number(t.getAttribute("width"))+2*e)*o,r=(Number(t.getAttribute("height"))+2*e)*o,l=new h.jspdf.jsPDF(r>i?"p":"l","pt",[i,r]);[].forEach.call(t.querySelectorAll('*[visibility="hidden"]'),function(t){t.parentNode.removeChild(t)});let a=t.querySelectorAll("linearGradient");for(let t=0;t<a.length;t++){let e=a[t].querySelectorAll("stop"),o=0;for(;o<e.length&&"0"===e[o].getAttribute("offset")&&"0"===e[o+1].getAttribute("offset");)e[o].remove(),o++}[].forEach.call(t.querySelectorAll("tspan"),t=>{"​"===t.textContent&&(t.textContent=" ",t.setAttribute("dx",-5))}),l.svg(t,{x:0,y:0,width:i,height:r,removeInvalid:!0}).then(()=>n(l.output("datauristring")))}e.CanVGRenderer={},e.domurl=h.URL||h.webkitURL||h,e.loadEventDeferDelay=r.isMS?150:0,e.compose=function(t){let e=t.prototype;return e.exportChartLocal||(e.getSVGForLocalExport=l,e.exportChartLocal=o,w(!0,d.exporting,a)),t},e.downloadSVGLocal=function(o,i,r,l){let a=g.createElement("div"),u=i.type||"image/png",m=(i.filename||"chart")+"."+("image/svg+xml"===u?"svg":u.split("/")[1]),y=i.scale||1,x,w,v,E=i.libURL||d.exporting.libURL,C=!0,L=i.pdfFont;E="/"!==E.slice(-1)?E+"/":E;let S=(t,e)=>{let o,n;let i=(t,e)=>{h.jspdf.jsPDF.API.events.push(["initialized",function(){this.addFileToVFS(t,e),this.addFont(t,"HighchartsFont",t),this.getFontList().HighchartsFont||this.setFont("HighchartsFont")}])};L&&(n=t.textContent||"",!/[^\u0000-\u007F\u200B]+/.test(n))&&(L=void 0);let r=["normal","italic","bold","bolditalic"],l=()=>{let t=r.shift();if(!t)return e();let n=L&&L[t];n?p({url:n,responseType:"blob",success:(e,n)=>{let r=new FileReader;r.onloadend=function(){if("string"==typeof this.result){let e=this.result.split(",")[1];i(t,e),"normal"===t&&(o=e)}l()},r.readAsDataURL(n.response)},error:l}):(o&&i(t,o),l())};l()},j=()=>{let e,n;t.setElementHTML(a,o);let i=a.getElementsByTagName("text"),s=function(t,e){let o=t;for(;o&&o!==a;){if(o.style[e]){let n=o.style[e];"fontSize"===e&&/em$/.test(n)&&(n=Math.round(16*parseFloat(n))+"px"),t.style[e]=n;break}o=o.parentNode}};[].forEach.call(i,function(t){for(["fontFamily","fontSize"].forEach(e=>{s(t,e)}),t.style.fontFamily=L&&L.normal?"HighchartsFont":String(t.style.fontFamily&&t.style.fontFamily.split(" ").splice(-1)),e=t.getElementsByTagName("title"),[].forEach.call(e,function(e){t.removeChild(e)}),n=t.getElementsByClassName("highcharts-text-outline");n.length>0;)t.removeChild(n[0])});let c=a.querySelector("svg");c&&S(c,()=>{b(c,0,y,t=>{try{f(t,m),l&&l()}catch(t){r(t)}})})};if("image/svg+xml"===u)try{void 0!==h.MSBlobBuilder?((w=new h.MSBlobBuilder).append(o),x=w.getBlob("image/svg+xml")):x=c(o),f(x,m),l&&l()}catch(t){r(t)}else"application/pdf"===u?h.jspdf&&h.jspdf.jsPDF?j():(C=!0,n(E+"jspdf.js",function(){n(E+"svg2pdf.js",j)})):(x=c(o),v=function(){try{e.domurl.revokeObjectURL(x)}catch(t){}},s(x,u,{},y,function(t){try{f(t,m),l&&l()}catch(t){r(t)}},function(){if(o.length>1e8)throw Error("Input too long");let t=g.createElement("canvas"),e=t.getContext("2d"),i=o.match(/^<svg[^>]*\s{,1000}width\s{,1000}=\s{,1000}\"?(\d+)\"?[^>]*>/),a=o.match(/^<svg[^>]*\s{0,1000}height\s{,1000}=\s{,1000}\"?(\d+)\"?[^>]*>/);if(e&&i&&a){let s=+i[1]*y,c=+a[1]*y,d=()=>{h.canvg.Canvg.fromString(e,o).start();try{f(h.navigator.msSaveOrOpenBlob?t.msToBlob():t.toDataURL(u),m),l&&l()}catch(t){r(t)}finally{v()}};t.width=s,t.height=c,h.canvg?d():(C=!0,n(E+"canvg.js",d))}},r,r,function(){C&&v()}))},e.getScript=n,e.imageToDataUrl=s,e.svgToDataUrl=c,e.svgToPdf=b}(c||(c={})),c}),o(e,"masters/modules/offline-exporting.src.js",[e["Core/Globals.js"],e["Extensions/DownloadURL.js"],e["Extensions/OfflineExporting/OfflineExporting.js"]],function(t,e,o){return t.dataURLtoBlob=t.dataURLtoBlob||e.dataURLtoBlob,t.downloadSVGLocal=o.downloadSVGLocal,t.downloadURL=t.downloadURL||e.downloadURL,o.compose(t.Chart),t})});
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highcharts JS v11.4.1 (2024-04-04)
2
+ * @license Highcharts JS v11.4.3 (2024-05-22)
3
3
  *
4
4
  * Client side exporting module
5
5
  *
@@ -115,6 +115,9 @@
115
115
  return;
116
116
  }
117
117
  dataURL = '' + dataURL;
118
+ if (nav.userAgent.length > 1000 /* RegexLimits.shortLimit */) {
119
+ throw new Error('Input too long');
120
+ }
118
121
  const // Some browsers have limitations for data URL lengths. Try to convert
119
122
  // to Blob or fall back. Edge always needs that blob.
120
123
  isOldEdgeBrowser = /Edge\/\d+/.test(nav.userAgent),
@@ -177,7 +180,7 @@
177
180
  *
178
181
  * */
179
182
  const OfflineExportingDefaults = {
180
- libURL: 'https://code.highcharts.com/11.4.1/lib/',
183
+ libURL: 'https://code.highcharts.com/11.4.3/lib/',
181
184
  // When offline-exporting is loaded, redefine the menu item definitions
182
185
  // related to download.
183
186
  menuItemDefinitions: {
@@ -522,41 +525,49 @@
522
525
  failCallback(e);
523
526
  }
524
527
  }, function () {
528
+ if (svg.length > 100000000 /* RegexLimits.svgLimit */) {
529
+ throw new Error('Input too long');
530
+ }
525
531
  // Failed due to tainted canvas
526
532
  // Create new and untainted canvas
527
- const canvas = doc.createElement('canvas'), ctx = canvas.getContext('2d'), imageWidth = svg.match(/^<svg[^>]*width\s*=\s*\"?(\d+)\"?[^>]*>/)[1] * scale, imageHeight = svg.match(/^<svg[^>]*height\s*=\s*\"?(\d+)\"?[^>]*>/)[1] * scale, downloadWithCanVG = function () {
528
- const v = win.canvg.Canvg.fromString(ctx, svg);
529
- v.start();
530
- try {
531
- downloadURL(win.navigator.msSaveOrOpenBlob ?
532
- canvas.msToBlob() :
533
- canvas.toDataURL(imageType), filename);
534
- if (successCallback) {
535
- successCallback();
533
+ const canvas = doc.createElement('canvas'), ctx = canvas.getContext('2d'), matchedImageWidth = svg.match(
534
+ // eslint-disable-next-line max-len
535
+ /^<svg[^>]*\s{,1000}width\s{,1000}=\s{,1000}\"?(\d+)\"?[^>]*>/), matchedImageHeight = svg.match(
536
+ // eslint-disable-next-line max-len
537
+ /^<svg[^>]*\s{0,1000}height\s{,1000}=\s{,1000}\"?(\d+)\"?[^>]*>/);
538
+ if (ctx && matchedImageWidth && matchedImageHeight) {
539
+ const imageWidth = +matchedImageWidth[1] * scale, imageHeight = +matchedImageHeight[1] * scale, downloadWithCanVG = () => {
540
+ const v = win.canvg.Canvg.fromString(ctx, svg);
541
+ v.start();
542
+ try {
543
+ downloadURL(win.navigator.msSaveOrOpenBlob ?
544
+ canvas.msToBlob() :
545
+ canvas.toDataURL(imageType), filename);
546
+ if (successCallback) {
547
+ successCallback();
548
+ }
536
549
  }
550
+ catch (e) {
551
+ failCallback(e);
552
+ }
553
+ finally {
554
+ finallyHandler();
555
+ }
556
+ };
557
+ canvas.width = imageWidth;
558
+ canvas.height = imageHeight;
559
+ if (win.canvg) {
560
+ // Use preloaded canvg
561
+ downloadWithCanVG();
537
562
  }
538
- catch (e) {
539
- failCallback(e);
540
- }
541
- finally {
542
- finallyHandler();
563
+ else {
564
+ // Must load canVG first.
565
+ // Don't destroy the object URL yet since we are
566
+ // doing things asynchronously. A cleaner solution
567
+ // would be nice, but this will do for now.
568
+ objectURLRevoke = true;
569
+ getScript(libURL + 'canvg.js', downloadWithCanVG);
543
570
  }
544
- };
545
- canvas.width = imageWidth;
546
- canvas.height = imageHeight;
547
- if (win.canvg) {
548
- // Use preloaded canvg
549
- downloadWithCanVG();
550
- }
551
- else {
552
- // Must load canVG first. // Don't destroy the object
553
- // URL yet since we are doing things asynchronously. A
554
- // cleaner solution would be nice, but this will do for
555
- // now.
556
- objectURLRevoke = true;
557
- getScript(libURL + 'canvg.js', function () {
558
- downloadWithCanVG();
559
- });
560
571
  }
561
572
  },
562
573
  // No canvas support
@@ -1,8 +1,8 @@
1
1
  !/**
2
- * Highcharts JS v11.4.1 (2024-04-04)
2
+ * Highcharts JS v11.4.3 (2024-05-22)
3
3
  * Organization chart series type
4
4
  *
5
5
  * (c) 2019-2024 Torstein Honsi
6
6
  *
7
7
  * License: www.highcharts.com/license
8
- */function(t){"object"==typeof module&&module.exports?(t.default=t,module.exports=t):"function"==typeof define&&define.amd?define("highcharts/modules/organization",["highcharts","highcharts/modules/sankey"],function(e){return t(e),t.Highcharts=e,t}):t("undefined"!=typeof Highcharts?Highcharts:void 0)}(function(t){"use strict";var e=t?t._modules:{};function i(t,e,i,n){t.hasOwnProperty(e)||(t[e]=n.apply(null,i),"function"==typeof CustomEvent&&window.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:e,module:t[e]}})))}i(e,"Series/Organization/OrganizationPoint.js",[e["Core/Series/SeriesRegistry.js"],e["Core/Utilities.js"]],function(t,e){let{sankey:{prototype:{pointClass:i}}}=t.seriesTypes,{defined:n,find:s,pick:o}=e;return class extends i{constructor(t,e,i){super(t,e,i),this.isNode||(this.dataLabelOnNull=!0,this.formatPrefix="link")}getSum(){return 1}setNodeColumn(){super.setNodeColumn();let t=this,e=t.getFromNode().fromNode;if(!n(t.options.column)&&0!==t.linksTo.length&&e&&"hanging"===e.options.layout){let i=-1,n;t.options.layout=o(t.options.layout,"hanging"),t.hangsFrom=e,s(e.linksFrom,(e,n)=>{let s=e.toNode===t;return s&&(i=n),s});for(let s=0;s<e.linksFrom.length;++s)(n=e.linksFrom[s]).toNode.id===t.id?s=e.linksFrom.length:i+=function t(e){let i=e.linksFrom.length;return e.linksFrom.forEach(e=>{e.id===e.toNode.linksTo[0].id?i+=t(e.toNode):i--}),i}(n.toNode);t.column=(t.column||0)+i}}}}),i(e,"Series/Organization/OrganizationSeriesDefaults.js",[],function(){return{borderColor:"#666666",borderRadius:3,link:{color:"#666666",lineWidth:1,radius:10,type:"default"},borderWidth:1,dataLabels:{nodeFormatter:function(){let t={width:"100%",height:"100%",display:"flex","flex-direction":"row","align-items":"center","justify-content":"center"},e={"max-height":"100%","border-radius":"50%"},i={width:"100%",padding:0,"text-align":"center","white-space":"normal"};function n(t){return Object.keys(t).reduce(function(e,i){return e+i+":"+t[i]+";"},'style="')+'"'}let{description:s,image:o,title:r}=this.point;o&&(e["max-width"]="30%",i.width="70%"),this.series.chart.renderer.forExport&&(t.display="block",i.position="absolute",i.left=o?"30%":0,i.top=0);let a="<div "+n(t)+">";return o&&(a+='<img src="'+o+'" '+n(e)+">"),a+="<div "+n(i)+">",this.point.name&&(a+="<h4 "+n({margin:0})+">"+this.point.name+"</h4>"),r&&(a+="<p "+n({margin:0})+">"+(r||"")+"</p>"),s&&(a+="<p "+n({opacity:.75,margin:"5px"})+">"+s+"</p>"),a+="</div></div>"},style:{fontWeight:"normal",fontSize:"0.9em"},useHTML:!0,linkTextPath:{attributes:{startOffset:"95%",textAnchor:"end"}}},hangingIndent:20,hangingIndentTranslation:"inherit",hangingSide:"left",minNodeLength:10,nodeWidth:50,tooltip:{nodeFormat:"{point.name}<br>{point.title}<br>{point.description}"}}}),i(e,"Series/PathUtilities.js",[],function(){function t(t,e){let i=[];for(let n=0;n<t.length;n++){let s=t[n][1],o=t[n][2];if("number"==typeof s&&"number"==typeof o){if(0===n)i.push(["M",s,o]);else if(n===t.length-1)i.push(["L",s,o]);else if(e){let r=t[n-1],a=t[n+1];if(r&&a){let t=r[1],n=r[2],h=a[1],l=a[2];if("number"==typeof t&&"number"==typeof h&&"number"==typeof n&&"number"==typeof l&&t!==h&&n!==l){let r=t<h?1:-1,a=n<l?1:-1;i.push(["L",s-r*Math.min(Math.abs(s-t),e),o-a*Math.min(Math.abs(o-n),e)],["C",s,o,s,o,s+r*Math.min(Math.abs(s-h),e),o+a*Math.min(Math.abs(o-l),e)])}}}else i.push(["L",s,o])}}return i}return{applyRadius:t,getLinkPath:{default:function(e){let{x1:i,y1:n,x2:s,y2:o,width:r=0,inverted:a=!1,radius:h,parentVisible:l}=e,d=[["M",i,n],["L",i,n],["C",i,n,i,o,i,o],["L",i,o],["C",i,n,i,o,i,o],["L",i,o]];return l?t([["M",i,n],["L",i+r*(a?-.5:.5),n],["L",i+r*(a?-.5:.5),o],["L",s,o]],h):d},straight:function(t){let{x1:e,y1:i,x2:n,y2:s,width:o=0,inverted:r=!1,parentVisible:a}=t;return a?[["M",e,i],["L",e+o*(r?-1:1),s],["L",n,s]]:[["M",e,i],["L",e,s],["L",e,s]]},curved:function(t){let{x1:e,y1:i,x2:n,y2:s,offset:o=0,width:r=0,inverted:a=!1,parentVisible:h}=t;return h?[["M",e,i],["C",e+o,i,e-o+r*(a?-1:1),s,e+r*(a?-1:1),s],["L",n,s]]:[["M",e,i],["C",e,i,e,s,e,s],["L",n,s]]}}}}),i(e,"Series/Organization/OrganizationSeries.js",[e["Series/Organization/OrganizationPoint.js"],e["Series/Organization/OrganizationSeriesDefaults.js"],e["Core/Series/SeriesRegistry.js"],e["Series/PathUtilities.js"],e["Core/Utilities.js"]],function(t,e,i,n,s){let{sankey:o}=i.seriesTypes,{css:r,extend:a,isNumber:h,merge:l,pick:d}=s;class p extends o{alignDataLabel(t,e,i){let n=t.shapeArgs;if(i.useHTML&&n){let t=this.options.borderWidth+2*this.options.dataLabels.padding,i=n.width||0,s=n.height||0;this.chart.inverted&&(i=s,s=n.width||0),s-=t,i-=t;let o=e.text;o&&(r(o.element.parentNode,{width:i+"px",height:s+"px"}),r(o.element,{left:0,top:0,width:"100%",height:"100%",overflow:"hidden"})),e.getBBox=()=>({width:i,height:s,x:0,y:0}),e.width=i,e.height=s}super.alignDataLabel.apply(this,arguments)}createNode(t){let e=super.createNode.call(this,t);return e.getSum=()=>1,e}pointAttribs(t,e){let i=o.prototype.pointAttribs.call(this,t,e),n=t.isNode?t.level:t.fromNode.level,s=this.mapOptionsToLevel[n||0]||{},r=t.options,a=s.states&&s.states[e]||{},l=d(a.borderRadius,r.borderRadius,s.borderRadius,this.options.borderRadius),p=d(a.linkColor,r.linkColor,s.linkColor,this.options.linkColor,a.link&&a.link.color,r.link&&r.link.color,s.link&&s.link.color,this.options.link&&this.options.link.color),g=d(a.linkLineWidth,r.linkLineWidth,s.linkLineWidth,this.options.linkLineWidth,a.link&&a.link.lineWidth,r.link&&r.link.lineWidth,s.link&&s.link.lineWidth,this.options.link&&this.options.link.lineWidth),u=d(a.linkOpacity,r.linkOpacity,s.linkOpacity,this.options.linkOpacity,a.link&&a.link.linkOpacity,r.link&&r.link.linkOpacity,s.link&&s.link.linkOpacity,this.options.link&&this.options.link.linkOpacity);return t.isNode?h(l)&&(i.r=l):(i.stroke=p,i["stroke-width"]=g,i.opacity=u,delete i.fill),i}translateLink(t){let e=this.chart,i=this.options,s=t.fromNode,o=t.toNode,r=d(i.linkLineWidth,i.link.lineWidth),a=Math.round(r)%2/2,h=d(i.link.offset,.5),l=d(t.options.link&&t.options.link.type,i.link.type);if(s.shapeArgs&&o.shapeArgs){let p=i.hangingIndent,g="right"===i.hangingSide,u=o.options.offset,f=/%$/.test(u)&&parseInt(u,10),c=e.inverted,k=Math.floor((s.shapeArgs.x||0)+(s.shapeArgs.width||0))+a,m=Math.floor((s.shapeArgs.y||0)+(s.shapeArgs.height||0)/2)+a,y=Math.floor(o.shapeArgs.x||0)+a,L=Math.floor((o.shapeArgs.y||0)+(o.shapeArgs.height||0)/2)+a,b;if(c&&(k-=s.shapeArgs.width||0,y+=o.shapeArgs.width||0),b=this.colDistance?Math.floor(y+(c?1:-1)*(this.colDistance-this.nodeWidth)/2)+a:Math.floor((y+k)/2)+a,f&&(f>=50||f<=-50)&&(b=y=Math.floor(y+(c?-.5:.5)*(o.shapeArgs.width||0))+a,L=o.shapeArgs.y||0,f>0&&(L+=o.shapeArgs.height||0)),o.hangsFrom===s&&(e.inverted?(m=g?Math.floor((s.shapeArgs.y||0)+p/2)+a:Math.floor((s.shapeArgs.y||0)+(s.shapeArgs.height||0)-p/2)+a,L=g?(o.shapeArgs.y||0)+p/2:(o.shapeArgs.y||0)+(o.shapeArgs.height||0)):m=Math.floor((s.shapeArgs.y||0)+p/2)+a,b=y=Math.floor((o.shapeArgs.x||0)+(o.shapeArgs.width||0)/2)+a),t.plotX=b,t.plotY=(m+L)/2,t.shapeType="path","straight"===l)t.shapeArgs={d:[["M",k,m],["L",y,L]]};else if("curved"===l){let e=Math.abs(y-k)*h*(c?-1:1);t.shapeArgs={d:[["M",k,m],["C",k+e,m,y-e,L,y,L]]}}else t.shapeArgs={d:n.applyRadius([["M",k,m],["L",b,m],["L",b,L],["L",y,L]],d(i.linkRadius,i.link.radius))};t.dlBox={x:(k+y)/2,y:(m+L)/2,height:r,width:0}}}translateNode(t,e){super.translateNode(t,e);let i=this.chart,n=this.options,s=Math.max(Math.round(t.getSum()*this.translationFactor),n.minLinkWidth||0),o="right"===n.hangingSide,r=n.hangingIndent||0,a=n.hangingIndentTranslation,h=n.minNodeLength||10,d=Math.round(this.nodeWidth),p=t.shapeArgs,g=i.inverted?-1:1,u=t.hangsFrom;if(u){if("cumulative"===a)for(p.height-=r,i.inverted&&!o&&(p.y-=g*r);u;)p.y+=(o?1:g)*r,u=u.hangsFrom;else if("shrink"===a)for(;u&&p.height>r+h;)p.height-=r,(!i.inverted||o)&&(p.y+=r),u=u.hangsFrom;else p.height-=r,(!i.inverted||o)&&(p.y+=r)}t.nodeHeight=i.inverted?p.width:p.height,t.shapeArgs&&!t.hangsFrom&&(t.shapeArgs=l(t.shapeArgs,{x:(t.shapeArgs.x||0)+d/2-(t.shapeArgs.width||0)/2,y:(t.shapeArgs.y||0)+s/2-(t.shapeArgs.height||0)/2}))}drawDataLabels(){let t=this.options.dataLabels;if(t.linkTextPath&&t.linkTextPath.enabled)for(let t of this.points)t.options.dataLabels=l(t.options.dataLabels,{useHTML:!1});super.drawDataLabels()}}return p.defaultOptions=l(o.defaultOptions,e),a(p.prototype,{pointClass:t}),i.registerSeriesType("organization",p),p}),i(e,"masters/modules/organization.src.js",[e["Core/Globals.js"]],function(t){return t})});
8
+ */function(t){"object"==typeof module&&module.exports?(t.default=t,module.exports=t):"function"==typeof define&&define.amd?define("highcharts/modules/organization",["highcharts","highcharts/modules/sankey"],function(e){return t(e),t.Highcharts=e,t}):t("undefined"!=typeof Highcharts?Highcharts:void 0)}(function(t){"use strict";var e=t?t._modules:{};function i(t,e,i,n){t.hasOwnProperty(e)||(t[e]=n.apply(null,i),"function"==typeof CustomEvent&&window.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:e,module:t[e]}})))}i(e,"Series/Organization/OrganizationPoint.js",[e["Core/Series/SeriesRegistry.js"],e["Core/Utilities.js"]],function(t,e){let{sankey:{prototype:{pointClass:i}}}=t.seriesTypes,{defined:n,find:s,pick:o}=e;return class extends i{constructor(t,e,i){super(t,e,i),this.isNode||(this.dataLabelOnNull=!0,this.formatPrefix="link")}getSum(){return 1}setNodeColumn(){super.setNodeColumn();let t=this,e=t.getFromNode().fromNode;if(!n(t.options.column)&&0!==t.linksTo.length&&e&&"hanging"===e.options.layout){let i=-1,n;t.options.layout=o(t.options.layout,"hanging"),t.hangsFrom=e,s(e.linksFrom,(e,n)=>{let s=e.toNode===t;return s&&(i=n),s});for(let s=0;s<e.linksFrom.length;++s)(n=e.linksFrom[s]).toNode.id===t.id?s=e.linksFrom.length:i+=function t(e){let i=e.linksFrom.length;return e.linksFrom.forEach(e=>{e.id===e.toNode.linksTo[0].id?i+=t(e.toNode):i--}),i}(n.toNode);t.column=(t.column||0)+i}}}}),i(e,"Series/Organization/OrganizationSeriesDefaults.js",[],function(){return{borderColor:"#666666",borderRadius:3,link:{color:"#666666",lineWidth:1,radius:10,type:"default"},borderWidth:1,dataLabels:{nodeFormatter:function(){let t={width:"100%",height:"100%",display:"flex","flex-direction":"row","align-items":"center","justify-content":"center"},e={"max-height":"100%","border-radius":"50%"},i={width:"100%",padding:0,"text-align":"center","white-space":"normal"};function n(t){return Object.keys(t).reduce(function(e,i){return e+i+":"+t[i]+";"},'style="')+'"'}let{description:s,image:o,title:r}=this.point;o&&(e["max-width"]="30%",i.width="70%"),this.series.chart.renderer.forExport&&(t.display="block",i.position="absolute",i.left=o?"30%":0,i.top=0);let a="<div "+n(t)+">";return o&&(a+='<img src="'+o+'" '+n(e)+">"),a+="<div "+n(i)+">",this.point.name&&(a+="<h4 "+n({margin:0})+">"+this.point.name+"</h4>"),r&&(a+="<p "+n({margin:0})+">"+(r||"")+"</p>"),s&&(a+="<p "+n({opacity:.75,margin:"5px"})+">"+s+"</p>"),a+="</div></div>"},style:{fontWeight:"normal",fontSize:"0.9em"},useHTML:!0,linkTextPath:{attributes:{startOffset:"95%",textAnchor:"end"}}},hangingIndent:20,hangingIndentTranslation:"inherit",hangingSide:"left",minNodeLength:10,nodeWidth:50,tooltip:{nodeFormat:"{point.name}<br>{point.title}<br>{point.description}"}}}),i(e,"Series/PathUtilities.js",[],function(){function t(t,e){let i=[];for(let n=0;n<t.length;n++){let s=t[n][1],o=t[n][2];if("number"==typeof s&&"number"==typeof o){if(0===n)i.push(["M",s,o]);else if(n===t.length-1)i.push(["L",s,o]);else if(e){let r=t[n-1],a=t[n+1];if(r&&a){let t=r[1],n=r[2],h=a[1],l=a[2];if("number"==typeof t&&"number"==typeof h&&"number"==typeof n&&"number"==typeof l&&t!==h&&n!==l){let r=t<h?1:-1,a=n<l?1:-1;i.push(["L",s-r*Math.min(Math.abs(s-t),e),o-a*Math.min(Math.abs(o-n),e)],["C",s,o,s,o,s+r*Math.min(Math.abs(s-h),e),o+a*Math.min(Math.abs(o-l),e)])}}}else i.push(["L",s,o])}}return i}return{applyRadius:t,getLinkPath:{default:function(e){let{x1:i,y1:n,x2:s,y2:o,width:r=0,inverted:a=!1,radius:h,parentVisible:l}=e,d=[["M",i,n],["L",i,n],["C",i,n,i,o,i,o],["L",i,o],["C",i,n,i,o,i,o],["L",i,o]];return l?t([["M",i,n],["L",i+r*(a?-.5:.5),n],["L",i+r*(a?-.5:.5),o],["L",s,o]],h):d},straight:function(t){let{x1:e,y1:i,x2:n,y2:s,width:o=0,inverted:r=!1,parentVisible:a}=t;return a?[["M",e,i],["L",e+o*(r?-1:1),s],["L",n,s]]:[["M",e,i],["L",e,s],["L",e,s]]},curved:function(t){let{x1:e,y1:i,x2:n,y2:s,offset:o=0,width:r=0,inverted:a=!1,parentVisible:h}=t;return h?[["M",e,i],["C",e+o,i,e-o+r*(a?-1:1),s,e+r*(a?-1:1),s],["L",n,s]]:[["M",e,i],["C",e,i,e,s,e,s],["L",n,s]]}}}}),i(e,"Series/Organization/OrganizationSeries.js",[e["Series/Organization/OrganizationPoint.js"],e["Series/Organization/OrganizationSeriesDefaults.js"],e["Core/Series/SeriesRegistry.js"],e["Series/PathUtilities.js"],e["Core/Utilities.js"]],function(t,e,i,n,s){let{sankey:o}=i.seriesTypes,{css:r,crisp:a,extend:h,isNumber:l,merge:d,pick:p}=s;class g extends o{alignDataLabel(t,e,i){let n=t.shapeArgs;if(i.useHTML&&n){let t=this.options.borderWidth+2*this.options.dataLabels.padding,i=n.width||0,s=n.height||0;this.chart.inverted&&(i=s,s=n.width||0),s-=t,i-=t;let o=e.text;o&&(r(o.element.parentNode,{width:i+"px",height:s+"px"}),r(o.element,{left:0,top:0,width:"100%",height:"100%",overflow:"hidden"})),e.getBBox=()=>({width:i,height:s,x:0,y:0}),e.width=i,e.height=s}super.alignDataLabel.apply(this,arguments)}createNode(t){let e=super.createNode.call(this,t);return e.getSum=()=>1,e}pointAttribs(t,e){let i=o.prototype.pointAttribs.call(this,t,e),n=t.isNode?t.level:t.fromNode.level,s=this.mapOptionsToLevel[n||0]||{},r=t.options,a=s.states&&s.states[e]||{},h=p(a.borderRadius,r.borderRadius,s.borderRadius,this.options.borderRadius),d=p(a.linkColor,r.linkColor,s.linkColor,this.options.linkColor,a.link&&a.link.color,r.link&&r.link.color,s.link&&s.link.color,this.options.link&&this.options.link.color),g=p(a.linkLineWidth,r.linkLineWidth,s.linkLineWidth,this.options.linkLineWidth,a.link&&a.link.lineWidth,r.link&&r.link.lineWidth,s.link&&s.link.lineWidth,this.options.link&&this.options.link.lineWidth),u=p(a.linkOpacity,r.linkOpacity,s.linkOpacity,this.options.linkOpacity,a.link&&a.link.linkOpacity,r.link&&r.link.linkOpacity,s.link&&s.link.linkOpacity,this.options.link&&this.options.link.linkOpacity);return t.isNode?l(h)&&(i.r=h):(i.stroke=d,i["stroke-width"]=g,i.opacity=u,delete i.fill),i}translateLink(t){let e=this.chart,i=this.options,s=t.fromNode,o=t.toNode,r=p(i.linkLineWidth,i.link.lineWidth,0),h=p(i.link.offset,.5),l=p(t.options.link&&t.options.link.type,i.link.type);if(s.shapeArgs&&o.shapeArgs){let d=i.hangingIndent,g="right"===i.hangingSide,u=o.options.offset,f=/%$/.test(u)&&parseInt(u,10),c=e.inverted,k=a((s.shapeArgs.x||0)+(s.shapeArgs.width||0),r),m=a((s.shapeArgs.y||0)+(s.shapeArgs.height||0)/2,r),y=a(o.shapeArgs.x||0,r),L=a((o.shapeArgs.y||0)+(o.shapeArgs.height||0)/2,r),b;if(c&&(k-=s.shapeArgs.width||0,y+=o.shapeArgs.width||0),b=this.colDistance?a(y+(c?1:-1)*(this.colDistance-this.nodeWidth)/2,r):a((y+k)/2,r),f&&(f>=50||f<=-50)&&(b=y=a(y+(c?-.5:.5)*(o.shapeArgs.width||0),r),L=o.shapeArgs.y||0,f>0&&(L+=o.shapeArgs.height||0)),o.hangsFrom===s&&(e.inverted?(m=g?a((s.shapeArgs.y||0)+d/2,r):a((s.shapeArgs.y||0)+(s.shapeArgs.height||0)-d/2,r),L=g?(o.shapeArgs.y||0)+d/2:(o.shapeArgs.y||0)+(o.shapeArgs.height||0)):m=a((s.shapeArgs.y||0)+d/2,r),b=y=a((o.shapeArgs.x||0)+(o.shapeArgs.width||0)/2,r)),t.plotX=b,t.plotY=(m+L)/2,t.shapeType="path","straight"===l)t.shapeArgs={d:[["M",k,m],["L",y,L]]};else if("curved"===l){let e=Math.abs(y-k)*h*(c?-1:1);t.shapeArgs={d:[["M",k,m],["C",k+e,m,y-e,L,y,L]]}}else t.shapeArgs={d:n.applyRadius([["M",k,m],["L",b,m],["L",b,L],["L",y,L]],p(i.linkRadius,i.link.radius))};t.dlBox={x:(k+y)/2,y:(m+L)/2,height:r,width:0}}}translateNode(t,e){super.translateNode(t,e);let i=this.chart,n=this.options,s=Math.max(Math.round(t.getSum()*this.translationFactor),n.minLinkWidth||0),o="right"===n.hangingSide,r=n.hangingIndent||0,a=n.hangingIndentTranslation,h=n.minNodeLength||10,l=Math.round(this.nodeWidth),p=t.shapeArgs,g=i.inverted?-1:1,u=t.hangsFrom;if(u){if("cumulative"===a)for(p.height-=r,i.inverted&&!o&&(p.y-=g*r);u;)p.y+=(o?1:g)*r,u=u.hangsFrom;else if("shrink"===a)for(;u&&p.height>r+h;)p.height-=r,(!i.inverted||o)&&(p.y+=r),u=u.hangsFrom;else p.height-=r,(!i.inverted||o)&&(p.y+=r)}t.nodeHeight=i.inverted?p.width:p.height,t.shapeArgs&&!t.hangsFrom&&(t.shapeArgs=d(t.shapeArgs,{x:(t.shapeArgs.x||0)+l/2-(t.shapeArgs.width||0)/2,y:(t.shapeArgs.y||0)+s/2-(t.shapeArgs.height||0)/2}))}drawDataLabels(){let t=this.options.dataLabels;if(t.linkTextPath&&t.linkTextPath.enabled)for(let t of this.points)t.options.dataLabels=d(t.options.dataLabels,{useHTML:!1});super.drawDataLabels()}}return g.defaultOptions=d(o.defaultOptions,e),h(g.prototype,{pointClass:t}),i.registerSeriesType("organization",g),g}),i(e,"masters/modules/organization.src.js",[e["Core/Globals.js"]],function(t){return t})});